summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-18 06:33:01 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-18 06:33:01 +0000
commit389d2c46579b35adff7c48dc470f640240948e0a (patch)
treef0997610d7ec23cc87f0c05936f09a010514b9b7
parent46238c18cda79d7fe584eb8122a6b6d9497e2e8a (diff)
automatic import of python-beetcamp
-rw-r--r--.gitignore1
-rw-r--r--python-beetcamp.spec290
-rw-r--r--sources1
3 files changed, 292 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..5aaefb0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/beetcamp-0.16.3.tar.gz
diff --git a/python-beetcamp.spec b/python-beetcamp.spec
new file mode 100644
index 0000000..aaf5e07
--- /dev/null
+++ b/python-beetcamp.spec
@@ -0,0 +1,290 @@
+%global _empty_manifest_terminate_build 0
+Name: python-beetcamp
+Version: 0.16.3
+Release: 1
+Summary: Bandcamp autotagger source for beets (http://beets.io).
+License: GPL-2.0
+URL: https://github.com/snejus/beetcamp
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/66/fe/76e271dabd1f77618d06f90cdbd5ff0ba08e5769ab114567428129c0070f/beetcamp-0.16.3.tar.gz
+BuildArch: noarch
+
+Requires: python3-requests
+Requires: python3-cached-property
+Requires: python3-pycountry
+Requires: python3-beets
+Requires: python3-ordered-set
+
+%description
+[![image](http://img.shields.io/pypi/v/beetcamp.svg)](https://pypi.python.org/pypi/beetcamp)
+[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=snejus_beetcamp&metric=alert_status)](https://sonarcloud.io/dashboard?id=snejus_beetcamp)
+[![Coverage Status](https://coveralls.io/repos/github/snejus/beetcamp/badge.svg?branch=main)](https://coveralls.io/github/snejus/beetcamp?branch=main)
+[ ![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Fsnejus%2Fbeetcamp&count_bg=%23842424&title_bg=%23846060&icon=postwoman.svg&icon_color=%23CF4D4D&title=hits&edge_flat=true)](https://hits.seeyoufarm.com)
+Bandcamp autotagger plugin for [beets]. It mostly focuses on
+- Staying up-to-date with information Bandcamp provide in the JSON metadata
+- Parsing **all possible** (if relevant) metadata from various places
+ - For example, a catalog number given in the release or media description
+- Correctness of the data
+ - For example, determining artist names from various artists releases
+- Compliance with MusicBrainz fields format, to remove the need for pre-processing if, for
+ example, one wishes to upload the metadata to MB.
+Thanks to [unrblt] for [beets-bandcamp] providing the idea and initial implementation.
+[beets]: https://github.com/beetbox/beets
+[unrblt]: https://github.com/unrblt
+[beets-bandcamp]: https://github.com/unrblt/beets-bandcamp
+# Installation
+## Recommended method
+1. Install `beets` with `pipx` so that it's isolated from your system and other projects
+```bash
+pipx install beets
+```
+2. Inject `beetcamp` and other dependencies that you need
+```bash
+pipx inject beets beetcamp [python-mpd2 ...]
+```
+3. Add `bandcamp` to the `plugins` list to your beets configuration file.
+## Otherwise
+Navigate to your `beets` virtual environment and install the plug-in with
+```bash
+ pip install beetcamp
+```
+# CLI
+The plugin exposes some of its functionality through a command-line application `beetcamp`:
+```xml
+usage: beetcamp [-h] [-a] [-l] [-t] [release_url | query]
+Get bandcamp release metadata from the given <release-url> or perform
+bandcamp search with <query>. Anything that does not start with https://
+will be assumed to be a query. Search type flags: -a for albums, -l for
+labels and artists, -t for tracks. By default, all types are searched.
+positional arguments:
+ release_url Release URL, starting with https:// OR
+ query Search query
+options:
+ -h, --help show this help message and exit
+ -a, --album Search albums
+ -l, --label Search labels and artists
+ -t, --track Search tracks
+ -o INDEX, --open INDEX
+ Open search result indexed by INDEX in the browser
+```
+- Use `beetcamp <bandcamp-release-url>` to return release metadata in JSON format.
+- Use `beetcamp [-alt] <query>` to search albums, labels and tracks on Bandcamp and return
+ results in JSON.
+- Search results are indexed - add `-o <index>` in order to open the chosen URL in the browser.
+You can see how the data looks below (the output is prettified with [rich-tables]).
+![image](https://github.com/snejus/beetcamp/blob/fe6ea71a0ab0035d657d13f664de957befb4552c/images/search.png?raw=true)
+[rich-tables]: https://github.com/snejus/rich-tables
+# Configuration
+## Default
+```yaml
+bandcamp:
+ include_digital_only_tracks: true
+ search_max: 2
+ art: yes
+ comments_separator: "\n---\n"
+ exclude_extra_fields: []
+ genre:
+ capitalize: no
+ maximum: 0
+ always_include: []
+ mode: progressive # classical, progressive or psychedelic
+
+%package -n python3-beetcamp
+Summary: Bandcamp autotagger source for beets (http://beets.io).
+Provides: python-beetcamp
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-beetcamp
+[![image](http://img.shields.io/pypi/v/beetcamp.svg)](https://pypi.python.org/pypi/beetcamp)
+[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=snejus_beetcamp&metric=alert_status)](https://sonarcloud.io/dashboard?id=snejus_beetcamp)
+[![Coverage Status](https://coveralls.io/repos/github/snejus/beetcamp/badge.svg?branch=main)](https://coveralls.io/github/snejus/beetcamp?branch=main)
+[ ![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Fsnejus%2Fbeetcamp&count_bg=%23842424&title_bg=%23846060&icon=postwoman.svg&icon_color=%23CF4D4D&title=hits&edge_flat=true)](https://hits.seeyoufarm.com)
+Bandcamp autotagger plugin for [beets]. It mostly focuses on
+- Staying up-to-date with information Bandcamp provide in the JSON metadata
+- Parsing **all possible** (if relevant) metadata from various places
+ - For example, a catalog number given in the release or media description
+- Correctness of the data
+ - For example, determining artist names from various artists releases
+- Compliance with MusicBrainz fields format, to remove the need for pre-processing if, for
+ example, one wishes to upload the metadata to MB.
+Thanks to [unrblt] for [beets-bandcamp] providing the idea and initial implementation.
+[beets]: https://github.com/beetbox/beets
+[unrblt]: https://github.com/unrblt
+[beets-bandcamp]: https://github.com/unrblt/beets-bandcamp
+# Installation
+## Recommended method
+1. Install `beets` with `pipx` so that it's isolated from your system and other projects
+```bash
+pipx install beets
+```
+2. Inject `beetcamp` and other dependencies that you need
+```bash
+pipx inject beets beetcamp [python-mpd2 ...]
+```
+3. Add `bandcamp` to the `plugins` list to your beets configuration file.
+## Otherwise
+Navigate to your `beets` virtual environment and install the plug-in with
+```bash
+ pip install beetcamp
+```
+# CLI
+The plugin exposes some of its functionality through a command-line application `beetcamp`:
+```xml
+usage: beetcamp [-h] [-a] [-l] [-t] [release_url | query]
+Get bandcamp release metadata from the given <release-url> or perform
+bandcamp search with <query>. Anything that does not start with https://
+will be assumed to be a query. Search type flags: -a for albums, -l for
+labels and artists, -t for tracks. By default, all types are searched.
+positional arguments:
+ release_url Release URL, starting with https:// OR
+ query Search query
+options:
+ -h, --help show this help message and exit
+ -a, --album Search albums
+ -l, --label Search labels and artists
+ -t, --track Search tracks
+ -o INDEX, --open INDEX
+ Open search result indexed by INDEX in the browser
+```
+- Use `beetcamp <bandcamp-release-url>` to return release metadata in JSON format.
+- Use `beetcamp [-alt] <query>` to search albums, labels and tracks on Bandcamp and return
+ results in JSON.
+- Search results are indexed - add `-o <index>` in order to open the chosen URL in the browser.
+You can see how the data looks below (the output is prettified with [rich-tables]).
+![image](https://github.com/snejus/beetcamp/blob/fe6ea71a0ab0035d657d13f664de957befb4552c/images/search.png?raw=true)
+[rich-tables]: https://github.com/snejus/rich-tables
+# Configuration
+## Default
+```yaml
+bandcamp:
+ include_digital_only_tracks: true
+ search_max: 2
+ art: yes
+ comments_separator: "\n---\n"
+ exclude_extra_fields: []
+ genre:
+ capitalize: no
+ maximum: 0
+ always_include: []
+ mode: progressive # classical, progressive or psychedelic
+
+%package help
+Summary: Development documents and examples for beetcamp
+Provides: python3-beetcamp-doc
+%description help
+[![image](http://img.shields.io/pypi/v/beetcamp.svg)](https://pypi.python.org/pypi/beetcamp)
+[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=snejus_beetcamp&metric=alert_status)](https://sonarcloud.io/dashboard?id=snejus_beetcamp)
+[![Coverage Status](https://coveralls.io/repos/github/snejus/beetcamp/badge.svg?branch=main)](https://coveralls.io/github/snejus/beetcamp?branch=main)
+[ ![Hits](https://hits.seeyoufarm.com/api/count/incr/badge.svg?url=https%3A%2F%2Fgithub.com%2Fsnejus%2Fbeetcamp&count_bg=%23842424&title_bg=%23846060&icon=postwoman.svg&icon_color=%23CF4D4D&title=hits&edge_flat=true)](https://hits.seeyoufarm.com)
+Bandcamp autotagger plugin for [beets]. It mostly focuses on
+- Staying up-to-date with information Bandcamp provide in the JSON metadata
+- Parsing **all possible** (if relevant) metadata from various places
+ - For example, a catalog number given in the release or media description
+- Correctness of the data
+ - For example, determining artist names from various artists releases
+- Compliance with MusicBrainz fields format, to remove the need for pre-processing if, for
+ example, one wishes to upload the metadata to MB.
+Thanks to [unrblt] for [beets-bandcamp] providing the idea and initial implementation.
+[beets]: https://github.com/beetbox/beets
+[unrblt]: https://github.com/unrblt
+[beets-bandcamp]: https://github.com/unrblt/beets-bandcamp
+# Installation
+## Recommended method
+1. Install `beets` with `pipx` so that it's isolated from your system and other projects
+```bash
+pipx install beets
+```
+2. Inject `beetcamp` and other dependencies that you need
+```bash
+pipx inject beets beetcamp [python-mpd2 ...]
+```
+3. Add `bandcamp` to the `plugins` list to your beets configuration file.
+## Otherwise
+Navigate to your `beets` virtual environment and install the plug-in with
+```bash
+ pip install beetcamp
+```
+# CLI
+The plugin exposes some of its functionality through a command-line application `beetcamp`:
+```xml
+usage: beetcamp [-h] [-a] [-l] [-t] [release_url | query]
+Get bandcamp release metadata from the given <release-url> or perform
+bandcamp search with <query>. Anything that does not start with https://
+will be assumed to be a query. Search type flags: -a for albums, -l for
+labels and artists, -t for tracks. By default, all types are searched.
+positional arguments:
+ release_url Release URL, starting with https:// OR
+ query Search query
+options:
+ -h, --help show this help message and exit
+ -a, --album Search albums
+ -l, --label Search labels and artists
+ -t, --track Search tracks
+ -o INDEX, --open INDEX
+ Open search result indexed by INDEX in the browser
+```
+- Use `beetcamp <bandcamp-release-url>` to return release metadata in JSON format.
+- Use `beetcamp [-alt] <query>` to search albums, labels and tracks on Bandcamp and return
+ results in JSON.
+- Search results are indexed - add `-o <index>` in order to open the chosen URL in the browser.
+You can see how the data looks below (the output is prettified with [rich-tables]).
+![image](https://github.com/snejus/beetcamp/blob/fe6ea71a0ab0035d657d13f664de957befb4552c/images/search.png?raw=true)
+[rich-tables]: https://github.com/snejus/rich-tables
+# Configuration
+## Default
+```yaml
+bandcamp:
+ include_digital_only_tracks: true
+ search_max: 2
+ art: yes
+ comments_separator: "\n---\n"
+ exclude_extra_fields: []
+ genre:
+ capitalize: no
+ maximum: 0
+ always_include: []
+ mode: progressive # classical, progressive or psychedelic
+
+%prep
+%autosetup -n beetcamp-0.16.3
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-beetcamp -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Thu May 18 2023 Python_Bot <Python_Bot@openeuler.org> - 0.16.3-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..018bb4c
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+ea05c7932c081c7425d46a6dd4b0f414 beetcamp-0.16.3.tar.gz