Commit graph

3838 commits

Author SHA1 Message Date
Šarūnas Nejus
550a9a82b1
Fix mb_artistid, mb_albumartistid, albumtype diff issue 2024-12-14 21:39:47 +00:00
Šarūnas Nejus
7be8f9c97a
Update CI config, minimum ruff version, docs and add changelog note 2024-12-10 06:10:03 +00:00
Šarūnas Nejus
71eb1bca68
Release: create tag right after commit version update 2024-12-10 05:51:13 +00:00
Šarūnas Nejus
ed3a53f2fe
Exclude plugin tests, include all files from MANIFEST.in 2024-12-10 05:51:09 +00:00
Edgars Supe
09360259cc lyrics: Fallback to plain lyrics if synced not available 2024-12-07 19:08:37 +02:00
RollingStar
40987902df
Update main.rst 2024-12-04 19:56:57 -05:00
RollingStar
eafae03560
Merge branch 'beetbox:master' into arm-info 2024-12-04 19:56:26 -05:00
snejus
f92c0ec8b1 Increment version to 2.2.0 2024-12-02 06:56:49 +00:00
Šarūnas Nejus
27d66d4b36
Change zero documentation mentions of genre to genres (#5486)
I've spent 2 hours troubleshooting why none of my music had genre tag.
It was because the single `genre`, without `s` doesn't seem to cover any
good ganre tags... at least it didn't on my opus files

looking at the code:
7ecd86101e/mediafile.py (L1669-L2167)
i don't honestly know why anyone created the single `ganre` field in the
first place
2024-12-02 02:21:08 +00:00
Šarūnas Nejus
f5a02462b1
Fixup changelog rst formatting for this and prev version 2024-11-26 15:45:58 +00:00
Šarūnas Nejus
9c4d4d9632
Include test files, manual to sdist 2024-11-26 15:38:13 +00:00
InvisibleFunction
32e9e58a35 Fix SACD Imports 2024-11-22 22:33:09 -05:00
RollingStar
79d7d48fe0
ARM footnotes 2024-11-22 17:43:52 -05:00
RollingStar
5f4fe21237
Update docs/guides/main.rst
Co-authored-by: Šarūnas Nejus <snejus@protonmail.com>
2024-11-22 17:38:07 -05:00
Andrew Rogl
ec4b26f986 Update changelog 2024-11-22 18:07:18 +10:00
Andrew Rogl
f0f77aa741 Update related window files to match 3.8 2024-11-22 18:04:43 +10:00
Šarūnas Nejus
176661bbf8
Changelog notes need to go under Unreleased 2024-11-22 07:18:14 +00:00
Šarūnas Nejus
6444111cde
bitesize to good first issue: Update changelog.rst (#5477) 2024-11-22 05:05:39 +00:00
Šarūnas Nejus
65e935bee5
Perform a regex substitution in the substitute plugin (#5357)
This utilises regex substitution in the substitute plugin. The previous
approach only used regex to match the pattern, then replaced it with a
static string. This change allows more complex substitutions, where the
output depends on the input.

### Example use case
Say we want to keep only the first artist of a multi-artist credit, as
in the following list:
```
Neil Young & Crazy Horse -> Neil Young
Michael Hurley, The Holy Modal Rounders, Jeffrey Frederick & The Clamtones -> Michael Hurley
James Yorkston and the Athletes -> James Yorkston
````
This would previously have required three separate rules, one for each
resulting artist. By using a regex substitution, we can get the desired
behaviour in a single rule:
```yaml
substitute:
  ^(.*?)(,| &| and).*: \1
```
(Capture the text until the first `,` ` &` or ` and`, then use that
capture group as the output)

### Notes
I've kept the previous behaviour of only applying the first matching
rule, but I'm not 100% sure it's the ideal approach.
I can imagine both cases where you want to apply several rules in
sequence and cases where you want to stop after the first match.
2024-11-22 05:02:50 +00:00
snejus
bc16ed1817 Increment version to 2.1.0 2024-11-22 01:50:28 +00:00
Šarūnas Nejus
aa0db049a5
Release: fix bumping the version in the changelog 2024-11-22 01:32:15 +00:00
RollingStar
82e8171d4a
Update changelog.rst 2024-11-17 18:55:16 -05:00
Šarūnas Nejus
7e9f7fc8de
Improve ListenBrainz error handling and simplify playlist handling (#5480)
Fixes #5459
2024-11-13 14:11:53 +00:00
adamharder3
a98cf47c06
Update docs/changelog.rst
Co-authored-by: Šarūnas Nejus <snejus@protonmail.com>
2024-11-11 10:43:31 -05:00
Alok Saboo
24115167d3 Merge remote-tracking branch 'upstream/master' into lb_error 2024-11-10 20:23:34 -05:00
Adam Harder
8448d8b4be changelog 2024-11-06 23:27:18 -05:00
Mateusz Soszyński
f7a34f1703
turns out single genres wasnt enough yet 2024-10-27 03:47:35 +01:00
Mateusz Soszyński
56d183300e
change to genres 2024-10-27 03:41:41 +01:00
Joseph Bushell
2e6e1809e3 Update docs/changelog.rst
Co-authored-by: Šarūnas Nejus <snejus@protonmail.com>
2024-10-26 18:18:06 +01:00
Alok Saboo
c49de7afe6 Update changelog.rst 2024-10-25 10:53:26 -04:00
RollingStar
fdb678cd1a
bitesize to good first issue: Update changelog.rst 2024-10-20 11:49:41 -04:00
Nicholas Boyd Isacsson
ffdc3f73ab Revert configuration format changes 2024-10-14 22:54:38 +02:00
RollingStar
97b785e31c
ARM install instructions 2024-10-13 12:31:37 -04:00
Nicholas Boyd Isacsson
48c7435780 Fix code-blocks 2024-10-12 16:20:25 +02:00
Nicholas Boyd Isacsson
195644fc46 Refactor according to review comments 2024-10-12 15:34:05 +02:00
Šarūnas Nejus
d3955bac65
Update Tekstowo backend to fetch lyrics directly
- Refactored Tekstowo backend to fetch lyrics directly from song pages.
- Added `encode` method to convert artist and title to their URL format,
  where non-alphanumeric characters are replaced with underscores.
- Removed the now redundant search functionality and associated tests.
- Simplified `extract_lyrics` method to directly parse lyrics without
  any checks.
2024-10-12 02:14:18 +01:00
Nicholas Boyd Isacsson
913d51af5c Preserve rule order in substitute configuration 2024-10-05 15:51:41 +02:00
Nicholas Boyd Isacsson
65096c425a Update changelog and documentation 2024-10-05 15:51:41 +02:00
Karl Besser
71b5a9651c Add reference to ftintitle plugin in changelog
Add references to the ftintitle plugin for the bug fixes #5441 and #5436
that are related to this plugin.
2024-09-30 10:20:29 -05:00
Karl-Ludwig Besser
ab86b2d1e8
Merge branch 'beetbox:master' into fix_false_positive_ftintitle 2024-09-30 10:17:19 -05:00
Andrew Rogl
04ee04150a
Reworked #4709 after latest release (#5447)
Fixes #4709 SQL use of Double Quoted Strings.
2024-09-30 10:28:15 +01:00
Karl Besser
85fc8e50cf Add changelog about fixing false positives in "feat. X" detection 2024-09-26 17:24:47 -04:00
Karl Besser
5aa96aad17 Add changelog entry about new "feat. X" matching 2024-09-23 12:31:02 -04:00
Arav K.
d3bc27a58f [changelog] Note 'platformdirs' integration 2024-09-20 23:27:36 +02:00
Konstantin
796c9addfb
Fixes TypeError in the Discogs plugin (#5415)
Handles the case when discogs return `None` for format descriptions.

---------

Co-authored-by: Šarūnas Nejus <snejus@protonmail.com>
2024-09-19 21:27:16 +01:00
Šarūnas Nejus
c13f0f2f6e
Deezer: Improve requests error handling (#5421)
This PR adds gracefully handling requests error in teh Deezer plugin.
2024-09-17 18:52:42 +01:00
Šarūnas Nejus
5785522170
fetchart: defer file removal config option evaluation (#5244)
Defer the evaluation of the source file removal options (`import.delete`
and `import.move`) to the point where the fetchart plugin is actually
called instead of only evaluating those configuration options on plugin
initialization.
This is to allow other plugins (such as the
[ytimport](https://github.com/mgoltzsche/beets-ytimport/blob/v1.8.1/beetsplug/ytimport/__init__.py#L194)
plugin) to invoke the import directly (within the same python process;
implicitly invoking the fetchart plugin) with temporarily overwritten
configuration options.

Addresses
https://github.com/beetbox/beets/issues/5167#issuecomment-2106465172
2024-09-16 11:44:46 +01:00
Alok Saboo
f57dc66444 Deezer: Improve requests error handling
## Description

This PR adds gracefully handling requests error in teh Deezer plugin. Right now, it errors out when it receives error:

```bash
Traceback (most recent call last):
  File "/home/arsaboo/.local/bin/beet", line 8, in <module>
    sys.exit(main())
             ^^^^^^
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/ui/__init__.py", line 1865, in main
    _raw_main(args)
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/ui/__init__.py", line 1852, in _raw_main
    subcommand.func(lib, suboptions, subargs)
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/ui/commands.py", line 1395, in import_func
    import_files(lib, paths, query)
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/ui/commands.py", line 1326, in import_files
    session.run()
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/importer.py", line 360, in run
    pl.run_parallel(QUEUE_SIZE)
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/util/pipeline.py", line 447, in run_parallel
    raise exc_info[1].with_traceback(exc_info[2])
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/util/pipeline.py", line 312, in run
    out = self.coro.send(msg)
          ^^^^^^^^^^^^^^^^^^^
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/util/pipeline.py", line 195, in coro
    func(*(args + (task,)))
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/importer.py", line 1497, in lookup_candidates
    task.lookup_candidates()
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/importer.py", line 688, in lookup_candidates
    artist, album, prop = autotag.tag_album(
                          ^^^^^^^^^^^^^^^^^^
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/autotag/match.py", line 548, in tag_album
    for matched_candidate in hooks.album_candidates(
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/plugins.py", line 593, in decorated
    for v in generator(*args, **kwargs):
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/autotag/hooks.py", line 759, in album_candidates
    yield from plugins.candidates(items, artist, album, va_likely, extra_tags)
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/plugins.py", line 390, in candidates
    yield from plugin.candidates(
               ^^^^^^^^^^^^^^^^^^
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beets/plugins.py", line 772, in candidates
    results = self._search_api(query_type="album", filters=query_filters)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/arsaboo/.local/lib/python3.12/site-packages/beetsplug/deezer.py", line 282, in _search_api
    response.raise_for_status()
  File "/home/arsaboo/.local/lib/python3.12/site-packages/requests/models.py", line 1024, in raise_for_status
    raise HTTPError(http_error_msg, response=self)
requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: https://api.deezer.com/search/album?q=album%3A%22Y+Hate+%3F%22+artist%3A%22Parmish+Verma%22
```

## To Do

- [ ] Documentation. (If you've added a new command-line flag, for example, find the appropriate page under `docs/` to describe it.)
- [x] Changelog. (Add an entry to `docs/changelog.rst` to the bottom of one of the lists near the top of the document.)
- [ ] Tests. (Very much encouraged but not strictly required.)
2024-09-15 11:34:29 -04:00
Arav K.
0a985fdfb4 [doc/reference/config] Re-write explanation for 'overwrite_null'
See: <https://github.com/beetbox/beets/pull/5373#discussion_r1702848037>
2024-09-12 14:26:50 +02:00
Arav K.
c668dfae71 Document 'overwrite_null'
Solves #5314.
2024-09-12 14:26:50 +02:00
Šarūnas Nejus
54b2435c72
Update dependencies and do not install reflink on Windows for tests (#5407)
See my comment under #5406 for context

> The build on win32 is failing to install reflink because it's [only
supported until Python
3.7](https://gitlab.com/rubdos/pyreflink/-/blob/master/setup.py?ref_type=heads).
>
> I will address this in a separate PR and rebase this one accordingly
once the fix is merged.
>
> Note: this issue popped up now because I added a new requests-mock
dependency which invalidated cached dependencies.
2024-09-08 12:31:02 +01:00
J0J0 Todos
98f4a88923
ftintitle: New customization option to keep feature in artist field (#5356) 2024-09-06 13:41:15 +02:00
Tânio Scherer
0b067e9f5b Create a new template function: capitalize
Update documentation

Update changelog
2024-09-05 23:00:50 -03:00
Karl-Ludwig Besser
39acba5200
Merge branch 'master' into ftintitle_keep_artist 2024-09-05 12:32:20 +02:00
Karl Besser
aa891d21d4 Add example use case of keep_artist option to docs
Update the documentation of the new `keep_in_artist` option, adding an
example use case.
2024-09-05 12:15:53 +02:00
Šarūnas Nejus
c2d9bcf767
Update dead link in reflink docs 2024-09-04 19:06:55 +01:00
ThinkChaos
65f2285dd3
fix(import): don't throw away album flexible fields
As noted by 5bf4e3d92f, MusicBrainz
external IDs (`*_album_id`) were only saved for items and not albums.
This commit addresses that by copying `AlbumInfo` fields to the `Album`,
i.e. what's saved in the DB.
This is similar to how `TrackInfo` fields are copied to `Item` instances
except the copying is done at a different time since we only get an
`Album` much later in the import flow.
2024-08-26 13:06:28 -04:00
Šarūnas Nejus
e3776f1910
autobpm: Do not import 'beat' subpackage immediately to improve startup time 2024-08-19 22:44:16 +01:00
Šarūnas Nejus
5b5c564a69
autobpm: Add a new beat_track_kwargs configuration option to autobpm 2024-08-19 22:44:16 +01:00
Šarūnas Nejus
49cae5ca23
autobpm: Fix the issue with tempo being a numpy array 2024-08-19 22:44:16 +01:00
Šarūnas Nejus
03cf567a90
autobpm: Add autobpm extra and update the docs
Given that librosa has been introducing breaking changes like there's no
tomorrow, use '^' version specifier to only allow updating the patch
version.
2024-08-19 22:44:16 +01:00
Arav K.
657fffd5b7 [docs/team] Add '@bal-e' 2024-07-31 23:24:18 +02:00
Serene
e33b513161
Remove beets.util.confit (#5334) 2024-07-21 10:29:01 +10:00
Karl Besser
a11b557a6d Fix typo in docs 2024-07-10 13:05:58 -04:00
Karl Besser
acb4680c72 Add keep_in_artist option to ftintitle documentation 2024-07-09 23:55:33 -04:00
Karl Besser
43304a9eaa Add keep_artist_in_title to changelog 2024-07-09 23:53:12 -04:00
HomerHaddock
bdf9eb2a26 Change changelog to reflect fix to #4815 2024-07-07 23:23:22 -06:00
Arav K.
9a6245a593 Note the removal of beets.util.confit in the changelog 2024-06-26 02:11:57 +02:00
Max Goltzsche
90f0ae2d93
fetchart: defer file removal config option eval
Defer the evaluation of the source file removal options (`import.delete` and `import.move`) to the point where the fetchart plugin is actually called instead of only evaluating those configuration options on plugin initialization.
This is to allow other plugins (such as the [ytimport](https://github.com/mgoltzsche/beets-ytimport/blob/v1.8.1/beetsplug/ytimport/__init__.py#L194) plugin) to invoke the import directly (within the same python process; implicitly invoking the fetchart plugin) with temporarily overwritten configuration options.

Relates to https://github.com/beetbox/beets/issues/5167#issuecomment-2106465172
2024-06-26 01:53:04 +02:00
Serene
de0742b9d6
Merge branch 'master' into bug-fetchart-resize-logic-fix 2024-06-25 14:30:39 +10:00
Šarūnas Nejus
4e06b59b60
Filter albums by tracks fields and vice versa (#5327)
Fixes #4360

This PR enables querying albums by track fields and tracks by album
fields, and speeds up querying albums by `path` field.

It originally was part of #5240, however we found that the changes
related to the flexible attributes caused degradation in performance. So
this PR contains the first part of #5240 which joined `items` and
`albums` tables in queries.
2024-06-25 02:04:45 +01:00
Arkadiy Illarionov
859072ee9e Use typing_extensions only when needed
Self was added in Python 3.11
TypeAlias was added in Python 3.10
2024-06-22 16:02:24 +03:00
Šarūnas Nejus
981a61bd56
Add support for filtering relations 2024-06-21 15:05:29 +01:00
Šarūnas Nejus
2800a323a2
Revert "Make queries fast, filter all flexible attributes (#5240)"
This reverts commit 143b9202f3, reversing
changes made to 8508a57d77.
2024-06-19 21:51:44 +01:00
Šarūnas Nejus
2f80ff07e4
Add a changelog note and a mention in queries.rst 2024-06-16 23:44:07 +01:00
Serene
8a28fd5707
Remove the beet executable and update shebangs (#5303)
## Description

This is a very simple PR, just removing the (apparently unused) `beet`
executable from the repository and substituting `bin/env python` for
`bin/python3` where possible.

Fixes #4604.
2024-06-15 11:11:50 +10:00
Šarūnas Nejus
a3721fea81
Check all Python files when poetry.lock changes 2024-06-14 20:12:19 +01:00
Arav K.
8b3890bb4d [changelog] note the removal of the 'beet' script 2024-06-14 14:55:06 +02:00
Šarūnas Nejus
d7bf28deed
Replace setup.py packaging by Poetry (#5266)
Migrate `beets` package configuration to Poetry which nowadays seems to
be the gold standard.

I have been using Poetry since 2019 and I have mostly been happy a happy
user: it makes local dev setup easy and has the tools I need to maintain
python packages day to day, including reliable dependency resolution,
versioning and publishing to Pypi.

It's a user-friendly tool, so it should make it more straightforward for
contributors to setup and navigate the codebase, and ultimately,
hopefully facilitate more frequent releases!

Since poetry manages local virtual environment, we do not have much need
for tox any more. Therefore, it was replaced by a task runner
`poethepoet`. Type `poe` in the project directory to see the available
commands.

- [x] Documentation. (If you've added a new command-line flag, for
example, find the appropriate page under `docs/` to describe it.)
- [x] Changelog. (Add an entry to `docs/changelog.rst` to the bottom of
one of the lists near the top of the document.)
- [x] Tests. (Very much encouraged but not strictly required.)
2024-06-12 10:59:24 +01:00
Šarūnas Nejus
c2a13ee4b1
Format docs/conf.py 2024-06-11 15:22:58 +01:00
Leonardo Santos
a7169d0645 small grammar corrections 2024-06-10 20:18:58 -03:00
Šarūnas Nejus
a4ed6ab62a
Document the changes 2024-06-10 13:46:27 +01:00
Šarūnas Nejus
7bbd215efc
Update all docs with Poetry 2024-06-10 13:10:16 +01:00
Serene
f01d80902b
Fix reflink: "auto" option (#5288) 2024-06-10 20:20:21 +10:00
Leo Nikkilä
7bcca193d5 Fix reflink: "auto" option
The docs say:

> The `auto` option uses reflinks when possible and falls back to plain
> copying when necessary.

I've been using this option for a while, and recently discovered that
despite the option, copying fails between two BTRFS filesystems with:

    Error: OS/filesystem does not support reflinks. during link of paths /mnt/fs1/file, /mnt/fs2/file

I tracked this down to how the configuration is handled in the importer.
2024-06-08 01:26:24 +03:00
Šarūnas Nejus
3e5e1eca87
release.py: simplify bumping the version
Additionally, update the 'in progress' header in the changelog: instead
of using a specific version number, simply say 'Unreleased' since we do
not know in advance what version will the changes be eventually
released.

This also simplifies latest changelog retrieval.
2024-06-07 09:01:44 +01:00
Šarūnas Nejus
0aa361e6c8
Remove support for Python 3.7 in the build and docs 2024-06-05 04:41:02 +01:00
Kirill A. Korinsky
d8ea474764
Update changelog.rst 2024-06-03 13:28:47 +02:00
Serene
731acd848c
Add timeout argument to all requests calls (#5262) 2024-06-02 14:44:28 +10:00
Serene-Arc
6edd80a1d5
Fix changelog version 2024-05-30 14:21:30 +10:00
Serene-Arc
33ab22db8c Increment version numbers to 2.0.0 2024-05-30 04:05:25 +00:00
Lev Gorodetskiy
53d72c14ea
Update changelog 2024-05-25 12:28:08 -03:00
Serene
7543a351ed
Merge pull request #5184 from freddiewanah/master
Enhancement: Refactor Test Code for Efficiency and Quality
2024-04-21 09:06:38 +10:00
J0J0 Todos
d510177820
Merge pull request #5121 from mgoltzsche/generate-playlist-item-attributes 2024-04-20 08:04:32 +02:00
Max Goltzsche
2e9308f713
docs: mention autogenre plugin 2024-04-20 05:33:48 +02:00
Max Goltzsche
2821eac973
docs: add smartplaylist example config and m3u 2024-04-20 05:33:20 +02:00
ktetzlaff
b47635dc29 Prefer VISUAL environment variable over EDITOR
When unix tools make use of an external editor, they typically check the
environment variable VISUAL and fall back to EDITOR. This commit adds the
additional check for VISUAL to the existing EDITOR check (where VISUAL is
preferred over EDITOR).
2024-04-14 12:15:30 +02:00
Serene
125f26fdb1
Merge pull request #5160 from Dr-Blank/bug-unimported-failing-to-ignore-subdirectories 2024-04-14 12:58:53 +10:00
Max Goltzsche
3c6309fe22
docs: mention Beetstream and webrouter plugins
Also, moves the webm3u plugin link from tne interoperability section to the "Other Plugins" section of the documentation.
2024-04-13 04:55:43 +02:00
Max Goltzsche
883bbb3e4b
smartplaylist: rename output format m3u8 to extm3u 2024-04-13 04:55:43 +02:00
Max Goltzsche
c0afd3eb3c
smartplaylist: allow exporting item fields
Allow generating extm3u playlists so that they contain additional item fields such as the `id`.

The feature is required by the mgoltzsche/beets-webm3u plugin (M3U server) to transform playlists using a request based item URI template which may require additional fields such as the `id`, e.g. `beets:library:track;$id`.
2024-04-13 04:55:37 +02:00
Dr-Blank
c3e922e2d2
missing changelog for #5153 2024-04-11 14:12:46 -04:00
Dr-Blank
ada2f80de6
add changelog entry for bug-fix 2024-04-11 13:05:46 -04:00
Dr-Blank
640c9613c0
add changelog for bug fix 2024-04-11 13:01:04 -04:00
freddiewanah
52271bc093 update changelog 2024-04-10 15:57:37 +02:00
InvisibleFunction
33c8ae7a4b Update in response to comments 2024-03-07 09:11:54 -05:00
InvisibleFunction
94e294581b Update Changelog 2024-03-06 09:12:58 -05:00
Serene
3548e35360
Merge pull request #5122 from Bobo1239/master
convert: Correctly identify WAVE format as lossless
2024-03-02 09:05:53 +10:00
Boris-Chengbiao Zhou
47ba590999 convert: Correctly identify WAVE format as lossless
Seems like this entry was added before mediafile gained support for WAVE
files in commit 832f3d. Adjust it to fix detection.
2024-03-01 17:58:26 +01:00
Serene
fa8b1201c3
Merge pull request #5103 from Josef-Friedrich/remove-unused-functions
Remove unused functions
2024-03-01 15:59:31 +10:00
Serene
35e8eb985f
Merge pull request #5058 from arsaboo/lb
Add initial version of the Listenbrainz plugin
2024-03-01 15:51:50 +10:00
J0J0 Todos
dae525741b
Merge pull request #5096 from raspbeguy/alpine 2024-02-21 13:33:46 +01:00
Josef Friedrich
7abaa2da98 Document change in the changelog.rst 2024-02-12 09:56:24 +01:00
raspbeguy
258e52af5b
Add alpine instructions 2024-02-06 09:19:17 +01:00
Serene
ddb34de72a
Merge pull request #5081 from mthies-unibi/zsh-completion-fixes
Fixes zsh completion dependency on specific awk/sed/sqlite3 versions and settings
2024-01-17 21:43:21 +10:00
Michael Thies
35af8d363a added changelog entry 2024-01-17 10:36:56 +01:00
Lars Kruse
508d28f66b tests: move reusable test-related modules into the beets package
External Python packages interfacing beets may want to use an in-memory
beets library instance for testing beets-related code.
The `TestHelper` class is very helpful for this purpose.
Previously `TestHelper` was located in the `test/` directory.
Now it is part of `beets` itself (`beets.test.helper.TestHelper`) and
can be easily imported.
2024-01-15 19:40:57 +01:00
Alok Saboo
ce023a3c53 Revert unwanted commits 2023-12-25 17:14:45 -05:00
Alok Saboo
7838e70d41 Revert "Merge remote-tracking branch 'upstream/master' into lb"
This reverts commit 6bfe26642c, reversing
changes made to 9b8dbe8055.
2023-12-23 12:25:22 -05:00
Alok Saboo
6bfe26642c Merge remote-tracking branch 'upstream/master' into lb 2023-12-23 12:19:30 -05:00
Alok Saboo
a88591824c Add lastimport changelog 2023-12-23 10:32:26 -05:00
Alok Saboo
d5a237912a Add listenbrainz to index 2023-12-21 12:22:12 -05:00
Alok Saboo
4541644961 Updated docs 2023-12-21 11:57:14 -05:00
Alok Saboo
7f4da6e023 Update changelog.rst 2023-12-20 10:46:35 -05:00
Max Goltzsche
6b929c6e72
web: fix range request support
Do not let the web plugin overwrite the Content-Length header with the full file length since flask/werkzeug sets the requested range's/chunk's size when handling a range request.
This allows to play large audio/opus files using e.g. a browser/firefox or gstreamer/mopidy without making a reverse-proxy/nginx emulate range request support and hide range-related headers from the backend.
2023-12-20 01:23:13 +01:00
RollingStar
d927262bd5
Merge branch 'master' into master 2023-12-17 10:48:31 -05:00
RollingStar
9f958b886e
Update docs/changelog.rst
Co-authored-by: J0J0 Todos <2733783+JOJ0@users.noreply.github.com>
2023-12-17 10:47:41 -05:00
Adrian Sampson
3ea4a0ba46
Merge pull request #5050 from Maxr1998/abort-on-template-field-conflicts
beetsplug: Error out on conflicts in template functions
2023-12-16 10:51:14 -05:00
Maxr1998
e64ee0b0cd
beetsplug: Error out on conflicts in template functions
Raises an exception if multiple plugins provide template functions for the same field.

Closes #5002, supersedes #5003.
2023-12-16 16:38:32 +01:00
Max Goltzsche
58e5b02929
smartplaylist: add --uri-format option
Beets web API already allows remote players to access audio files but it doesn't provide a way to expose the playlists defined using the smartplaylist plugin.
Now the smartplaylist plugin provides an option to generate ID-based item URIs/URLs instead of paths.
Once playlists are generated this way, they can be served using a regular HTTP server such as nginx.

To provide sufficient flexibility for various ways of integrating beets remotely (e.g. beets API, beets API with context path, AURA API, mopidy resource URI, etc), the new option has been defined as a template with an `$id` placeholder (assuming each remote integration requires a different path schema but they all rely on using the beets item `id` as identifier/path segment).

To prevent local path-related plugin configuration from leaking into a HTTP URL-based playlist generation (invoked with CLI option in addition to the local playlists generated into another directory), setting the new option makes the plugin ignore the other path-related options `prefix`, `relative_to`, `forward_slash` and `urlencode`.

Usage examples:
* `beet splupdate --uri-format 'http://beets:8337/item/$id/file'` (for beets web API)
* `beet splupdate --uri-format 'http://beets:8337/aura/tracks/$id/audio'` (for AURA API)

(While it was already possible to generate playlists containing HTTP URLs previously using the `prefix` option, it did not allow to generate ID-based URLs pointing to the beets web API but required to expose the audio files using a web server directly and refer to them using their file system `$path`.)

Relates to #5037
2023-12-16 05:37:27 +01:00
Max Goltzsche
385c05f98e
smartplaylist: change option --extm3u to --output
The boolean flags `--extm3u` and `--no-extm3u` are replaced with a string option `--output=m3u|m3u8`.
This reduces the amount of options and allows to evolve the CLI to support more playlist output formats in the future (e.g. JSON) without polluting the CLI at that point.
2023-12-16 00:23:03 +01:00
Maxr1998
6e5bcbc070
advancedrewrite: Add note about quoting issues to docs 2023-12-15 17:14:00 +01:00
Adrian Sampson
1efd67cb82
Merge pull request #5044 from Maxr1998/advancedrewrite-rewrite
advancedrewrite: Support simple syntax and improve advanced syntax
2023-12-15 09:34:25 -05:00
Serene
618af1511e
Merge pull request #5047 from mgoltzsche/expose-smartplaylist-cli-opts
smartplaylist: expose config as CLI options
2023-12-15 14:44:46 +10:00
Max Goltzsche
222b3a34f9
smartplaylist: expose config as CLI options
Add CLI options to `splupdate` command:
* `--playlist-dir`, `-d`
* `--relative-to`
* `--prefix`
* `--urlencode`
* `--forward-slash`
* `--pretend-paths`
2023-12-15 03:51:27 +01:00
J0J0 Todos
bf6eb04827
Merge pull request #5034 from beetbox/YES_NO_COLOR 2023-12-14 23:37:56 +01:00
Max Goltzsche
b07a2e42f4
smartplaylist: add extm3u/extinf/m3u8 support
This is to be able to display meaningful metadata and search a playlist within a player without having to load the linked audio files of a playlist.
2023-12-14 01:46:14 +01:00
Maxr1998
4b1c7dd8be
Specify new advancedrewrite configuration in docs 2023-12-13 11:25:27 +01:00
David Logie
fd795c9da6 Add changelog entry for #5028. 2023-12-12 09:03:17 +00:00
J0J0 Todos
c1a232ec7b Fix some changelog entries 2023-12-11 11:01:54 +01:00
Adrian Sampson
0604aeadc1
Merge pull request #5022 from mgoltzsche/expose-incremental-skip-later-opt
expose incremental_skip_later as cli option
2023-12-10 11:45:36 -05:00
J0J0 Todos
e5d10004ae
Merge pull request #4807 from doronbehar/mbsubmit-improvements
mbsubmit: Add picard `PromptChoice`
2023-12-06 13:08:20 +01:00
Doron Behar
9357448bde mbsubmit: document new prompt choices 2023-12-05 19:21:38 +02:00
Max Goltzsche
177f284d40
expose incremental_skip_later as cli option
Closes #4958
2023-12-05 01:03:22 +01:00
Max Goltzsche
8a3b9acdee
expose import.quiet_fallback as cli option 2023-12-04 22:56:25 +01:00
Alok Saboo
79216e1f64 Update changelog.rst 2023-12-04 10:37:06 -05:00
RollingStar
ae8866f85c
Update changelog.rst for config_default 2023-12-04 01:43:54 -05:00
Adrian Sampson
df2d6ae753
Merge branch 'master' into deezer_error 2023-12-02 13:49:16 -05:00
Adrian Sampson
85268ad061
Merge pull request #5013 from arsaboo/spotify_error
Spotify: Add 502 error handling
2023-12-02 13:35:08 -05:00
Alok Saboo
079936c826 Merge remote-tracking branch 'upstream/master' into deezer_error 2023-12-01 08:40:58 -05:00
Serene
c4c82e908e
Merge pull request #5007 from Serene-Arc/track_change_info
Revert line change behaviour when importing tracks
2023-12-01 09:07:17 +10:00
Alok Saboo
51c017ab6f Update changelog.rst 2023-11-28 10:04:04 -05:00
Alok Saboo
7e2f9b5333 Merge remote-tracking branch 'upstream/master' into deezer_error 2023-11-26 11:53:27 -05:00
Serene-Arc
2892be9892 Add changelog entry 2023-11-24 15:24:58 +10:00
Serene-Arc
fc5a9030e6 Add more detail to option 2023-11-24 13:55:27 +10:00
Alok Saboo
e5df18c981 Merge remote-tracking branch 'upstream/master' into deezer_error 2023-11-23 09:40:21 -05:00
Alok Saboo
39fd14cec7 Update changelog.rst 2023-11-16 12:28:56 -05:00
Alok Saboo
f636167bd0
Update docs/changelog.rst
Co-authored-by: J0J0 Todos <2733783+JOJ0@users.noreply.github.com>
2023-11-15 10:13:56 -05:00
Alok Saboo
c21e736811 Update changelog.rst 2023-11-12 09:46:48 -05:00
Alok Saboo
263796d194 Update changelog.rst 2023-11-11 21:33:18 -05:00
Alok Saboo
e9bfeee9e7 Update changelog.rst 2023-11-11 21:28:27 -05:00
jeff
7b0f5fb3f3 Add config option to prefer synced lyrics over plain 2023-11-05 11:26:33 -05:00
jeff
e14982cad7 Add LRCLIB as a provider for the lyrics plugin 2023-11-05 11:26:33 -05:00
Alok Saboo
a5f4599cd3 Update changelog.rst 2023-11-01 18:04:43 -04:00
J0J0 Todos
d80d45974b Transparent background logo for docs
Exchange the white-bg logo with a transparent-bg version, to ensure
Sphinx pydata theme also looks well when switched to dark
mode.
2023-10-29 10:30:33 +01:00
Serene-Arc
c2c2ff638e Integrate code of conduct 2023-10-27 21:55:13 +10:00
Adrian Sampson
6655760732
Merge pull request #4974 from fhchl/master 2023-10-26 10:09:07 -04:00
fhchl
e1818e1851
Update changelog.rst 2023-10-26 10:07:18 +02:00
Adrian Sampson
37f12bfa49
Fix capitalization 2023-10-25 15:11:03 -04:00
Adrian Sampson
94d75a759f
Merge branch 'master' into add-ytimport-plugin-link 2023-10-25 15:00:37 -04:00
Adrian Sampson
a2d6819276
Merge pull request #4972 from henges/henges/discogs-fetchart
discogs: Populate `cover_art_url` attribute
2023-10-25 14:51:33 -04:00
Adrian Sampson
6e11bb5267
Remove an errant space 2023-10-25 14:14:51 -04:00
J0J0 Todos
af6258301c Add beets.css customizing Sphinx theme "pydata"
- Set static path and css file in Sphinx config.
- Codebox style to black/white
- Secondary color to beetroot red
- Inline code color to beetroot green
- Leave primary color (pydata teal), difficult to read with beetroot
  green. Works well with beetroot red actually.
- Leave some notes on colors in beets.css for reference.
2023-10-23 12:09:55 +02:00
J0J0 Todos
c1e2b34aa2 Rename assets/ to _static/ (logo, css, custom Sphinx stuff) 2023-10-23 10:12:19 +02:00
J0J0 Todos
4dc1f251d7 Revert "Set and configure Sphinx theme book"
This reverts commit 71873b66de.

Revert back to using "pydata" theme. Keep this in the history, just in
case we reconsider to using "book".
2023-10-23 09:53:56 +02:00
J0J0 Todos
71873b66de Set and configure Sphinx theme book
- Reduce base font a bit by custom.css
- Collapse nav
- Title "beets" below logo
2023-10-23 09:51:52 +02:00
J0J0 Todos
957a6e445c Set and configure Sphinx theme "pydata"
- Collapse nav
- Add title "beets" next to small logo on top left
2023-10-23 09:51:52 +02:00
J0J0 Todos
ff7d5f7c3a Set and configure Sphinx theme "readthedocs"
- Sticky Nnavigation (default but make sure)
- Top left area white, to fit with beets logo background
- Title "beets"
- Logo only false, we want to see title
- Version true, we want to see which beets version we are looking at
- Issue: The latter two are invisible, would require custom CSS!!!
2023-10-23 09:51:52 +02:00
J0J0 Todos
9e972fe8ae Set and configure Sphinx theme "alabaster"
- Fixed sidebar
- Sidebar collapse (default but make sure)
2023-10-23 09:51:52 +02:00
J0J0 Todos
8260427168 Fix all occurences of Discourse to GH-Discussions
and rephrase a little if required. Often "our forums" was stated. Mostly
I tried to use the wording "discussion board" throughout and (almost) never used
the term "GitHub Discussions"
2023-10-23 09:51:52 +02:00
J0J0 Todos
a6032cdaa9 Add beets logo to docs
and leave html_static_path commented out in conf.py as a reminder. We
might need it if builds via readthedocs require it.
2023-10-23 09:51:36 +02:00
U-LAPTOP-4EP3DB2K\alexa
e9574bdc21 Add documentation 2023-10-22 20:55:38 +08:00
Max Goltzsche
9dd0c6cea9
docs: add link to ytimport plugin to docs 2023-10-22 05:06:00 +02:00
Serene-Arc
a6e5201ff3 Apply formatting tools to all files
This is 'the big one', which touches every file so that it all conforms
to the given standard.
2023-10-22 09:53:18 +10:00
Alok Saboo
f79fd64aeb Simplify loop and update changelog entry 2023-10-21 16:16:51 -04:00
Alok Saboo
ee42f79b25 Update retry logic 2023-10-21 09:43:01 -04:00
Alok Saboo
66bf0023ea Merge remote-tracking branch 'upstream/master' into spotify_timeout 2023-10-15 09:36:54 -04:00
Maxr1998
7207699b1a
Add advancedrewrite plugin to changelog 2023-10-14 15:00:57 +02:00
Maxr1998
0a4c8e4952
Add advanced rewrite plugin
This plugin allows rewriting fields based on a given library query. This can be helpful, for example, when an artist was renamed but you'd like to keep their older releases under their old name, or if you have a single track from a Various Artists release and want to have it included with the original artist.
2023-10-14 15:00:57 +02:00
J0J0 Todos
05236d75cf Changelog for #3721 "UI overhaul" and new section
"Major new features:" similar to what we had with 1.6.0.
2023-10-14 10:43:12 +02:00
J0J0 Todos
dfcf256d1e Add anchor at "UI options" in docs
to make linking to it possible.
2023-10-14 10:43:12 +02:00
J0J0 Todos
18dc6dbc73 Fix ref-links in ui:length_diff_thresh docs 2023-10-14 10:43:12 +02:00
J0J0 Todos
5898736c0a Provide a working example in ui:import docs
Instead of just stating config_default.yaml's values, provide a copy/paste-able
example that changes _all_ the values and still kind of works (visually).
2023-10-14 10:43:12 +02:00
J0J0 Todos
81c10a6f5e Improve ui:import description in docs 2023-10-14 10:43:12 +02:00
Serene-Arc
d875fee722 Add text for docs section 2023-10-14 10:43:12 +02:00
J0J0 Todos
d1166c8efc Add length_diff_thresh description and ref-links
to config reference docs.
2023-10-14 10:43:12 +02:00
J0J0 Todos
5d500223b3 Draft docs update for UI code-overhaul 2023-10-14 10:43:12 +02:00
Alok Saboo
dc6def34a7 Update changelog.rst 2023-10-09 09:30:08 -04:00
Alok Saboo
391b95b912 Update changelog.rst 2023-10-09 09:29:21 -04:00
AdrienCos
96b89e77f6 Fix the error with CAA where no image would be downloaded when thumbnails are missing 2023-10-07 23:14:03 +02:00
AdrienCos
e7105a9763 Fix the error with CAA where the pre-sized thumbs of release groups would be ignored 2023-10-07 21:25:02 +02:00
J0J0 Todos
e10b955a93
Merge pull request #4897 from JOJ0/doc_knowledge_owners
New main docs chapter "Team"
2023-10-03 12:47:10 +02:00
J0J0 Todos
19ef31c6c5 Fix typo and add another member to the page 2023-10-03 12:03:06 +02:00
Adrian Sampson
b822fe0f5c
Merge pull request #4923 from tandy-1000/autobpm
Add autobpm plugin
2023-10-02 15:56:23 -04:00
tandy1000
7961cf3aaa Add autobpm plugin
This plugin uses librosa to automatically calculate the BPM for a track.
It is based on the keyfinder plugin, and rounds the BPM to an int.

Co-authored-by: Adrian Sampson <adrian@radbox.org>
2023-09-30 16:25:06 +01:00
Kian-Meng Ang
873a91c541 Fix typos
Found via `codespell -S ./test/rsrc,genres.txt -L
caf,fo,ue,searchin,crashers,crasher,te,skool,egal,nothin`
2023-09-25 12:52:26 +08:00
Serene
7736ae7634
Merge pull request #4906 from Serene-Arc/poisoned_db_fix 2023-09-23 18:53:53 +10:00
Serene-Arc
7f2dfb770d Update changelog entry 2023-09-23 18:53:39 +10:00
Hiroto Kaku
0f770b6dde
Add beets-mpd-utils plugin 2023-09-21 15:56:15 -04:00
J0J0 Todos
e9dd345601 Fixate sidebar in docs Alabaster theme
This is a quickfix to get back the behaviour we previously had with the
readthedocs theme. There could be adjusted and fixed more, but postpone that
and do in a proper PR.
2023-09-21 07:23:51 +02:00
Adrian Sampson
c15ccb16bf
Merge pull request #4900 from fracai/4326-scrub-no-rewrite
4326 scrub should not restore on import if "write" is disabled
2023-09-16 12:47:07 -04:00
Serene-Arc
08b5b9fdc7 Add changelog entry 2023-09-13 12:32:51 +10:00
Adrian Sampson
cd0f2b1aa3
Merge pull request #4899 from fracai/update-field-exclusions
Support excluding fields with update command
2023-09-12 11:18:29 -04:00
J0J0 Todos
36ea6f0777
Merge pull request #4898 from tianon/typos 2023-09-10 09:52:04 +02:00
Arno Hautala
c3a4356773 changelog 2023-09-09 22:15:07 -04:00
Arno Hautala
6b8a5cdcbc changelog 2023-09-09 10:34:38 -04:00
Arno Hautala
aff9f6e313 documentation 2023-09-09 10:31:33 -04:00
Tianon Gravi
db8a81a721 Fix minor "cover_art_arl" typos in changelog 2023-09-09 00:57:53 -07:00
Jesse Bannon
f72261e44f
Add support for artists and albumartists multi-valued tags (#4743)
Adds the following fields with id3v2.4 multi-valued tag support to autotag:
    - artists, artists_sort, artists_credit
    - albumartists, albumartists_sort, albumartists_credit
    - mb_artistids, mb_albumartistids

MusicBrainz support to populate + write the above multi-valued tags by default. Can be toggled to use id3v2.3 or id3v2.4 tags via the existing beets configuration option `id3v23`.

Big thanks to @JOJ0, @OxygenCobalt, @arsaboo for testing + @sampsyo for the initial code review .
2023-09-09 09:46:26 +02:00
J0J0 Todos
c185b4fba5 Final take on rewording rewrite plugin docs
on whether it modifies metadata or not. Let's also leave a link to the issue
here to make it superclear and researchable for anyone stumbling across it.

Also suggest the substitute plugin as an alternative.
2023-09-08 19:24:34 +02:00
J0J0 Todos
f18d974310 Rough draft of new docs main chapter Team 2023-09-07 08:53:39 +02:00
J0J0 Todos
6e983d8615 Fix title underline in substitute plugin docs 2023-08-31 08:59:36 +02:00
J0J0 Todos
54efb279ff Try to clarify the bevhavior of the rewrite plugin
in the plugin docs as was discovered in #2786 (Metadata being modified).
2023-08-31 08:45:05 +02:00
J0J0 Todos
442a535b3e Add substitute plugin to the docs' plugins index 2023-08-31 08:27:33 +02:00
J0J0 Todos
a7e02461ee Add changelog for substitute plugin
While rebasing master into this feature branch I removed fdaniele85's
original version(s) of the changelog to make conflict resolvement
easier. This is a slightly extended version of the latest version I
found in the original commits.
2023-08-31 08:04:24 +02:00
Daniele Ferone
20c1a3e8a0 Wording fix in substitute plugin docs 2023-08-31 07:17:37 +02:00
Daniele Ferone
bd568ad817 Changed docs of substitute plugin 2023-08-31 07:09:12 +02:00
Daniele Ferone
249b420b19 Added plugin 2023-08-31 07:07:09 +02:00
Sam Caldwell
fbd179f44a docs[embyupdate]: add docs for userid option 2023-08-24 20:12:04 -07:00
J0J0 Todos
62859f4389
Merge pull request #4823 from JOJ0/album_flex_streamline
Streamline album attributes modification behaviour and allow override via CLI
2023-08-23 09:14:26 +02:00
J0J0 Todos
ef5c4de225 Add docs for duplicate_verbose_prompt option in #4866 2023-08-23 07:55:26 +02:00
J0J0 Todos
cd2db68d07 Add changelog for #4866 2023-08-23 07:55:20 +02:00
J0J0 Todos
9616afd339 Fixes in docs for #4823
as suggested by @sampsyo.

Co-authored-by: Adrian Sampson <adrian@radbox.org>
2023-08-23 06:36:39 +02:00
J0J0 Todos
31cd0ecb4e Add docs for mod -a --noinherit option
and further clarify `mod -a` docs:
Even though e39dcfc002 and the linked discussion
already does a very good job on clarifying what is actually happening when `mod
-a` is issued, this commit adds further details about the difference between
the album query and what is actually modified.
2023-08-23 06:36:39 +02:00
J0J0 Todos
7b49b8680c Add changelog for #4823 2023-08-23 06:36:29 +02:00
Adrian Sampson
49846e7851
lyrics: Bypass None values in Google backend
Fixes #4875.
2023-08-13 18:52:39 -04:00
Benedikt
f75dc3d2c1
Merge pull request #4871 from luzpaz/typos
Fix various typos
2023-08-10 17:58:15 +02:00
luzpaz
8419149c7a
Fix various typos 2023-08-09 21:26:15 -04:00
Martin Weinelt
c2118a8b9c
Fix compatibility with pillow 10
The `ANTIALIAS` attribute has long been deprecated, and was finally
removed in pillow 10.0.

The recommendation is to migrate to `Resampling.LANCZOS` instead.
2023-08-07 22:19:21 +02:00
J0J0 Todos
411350cf2a Add changelog for #4863 2023-07-27 07:56:50 +02:00
J0J0 Todos
c481670f1b Add docs for new importfeeds list format in #4863 2023-07-27 07:56:14 +02:00
J0J0 Todos
09378e122c Add docs for subsonicupdate features in #4862 2023-07-27 07:41:50 +02:00
J0J0 Todos
c34385fce7 Add changelog for #4862 2023-07-27 07:41:50 +02:00
J0J0 Todos
409db2e6c1 Add changelog for #4861 2023-07-25 08:10:14 +02:00
J0J0 Todos
c03bd26e3a
Merge pull request #4854 from JOJ0/discogs_single_album_refactor
Support providing album information on singleton imports via Discogs
2023-07-25 06:23:27 +02:00
J0J0 Todos
a374977953 Append album to singleton disambiguation string
- New config option for the importer 'singleton_album_disambig' lets
  users choose whether they want to display [album names] in the list of
  candidates. Enabled by default but ony applicable if the candidate provides
  an album attribute.
- Add docs describing the new option and which source plugins currently support
  it.
2023-07-21 08:30:37 +02:00
J0J0 Todos
70cbe3c8ff Quickfix format in ref docs external_ids chapter 2023-07-21 06:59:36 +02:00
J0J0 Todos
1e050e2703 Add singleton matching info to Discogs plugin docs
PR #4854
2023-07-20 09:12:42 +02:00
J0J0 Todos
d61b7c9a42 Add changelog for #4854 2023-07-20 09:12:42 +02:00
Alok Saboo
a4bde2af8b Add changelog entry for bugfix 2023-07-12 20:13:10 -04:00
Alok Saboo
272d01103c
Update docs/changelog.rst
Co-authored-by: Adrian Sampson <adrian@radbox.org>
2023-07-12 16:15:08 -04:00
Alok Saboo
edda4a588d Add changelog and docs 2023-07-10 08:32:29 -04:00
Sefa Eyeoglu
11c13a8ea0
Add imagick 7.1.1-12 support to changelog
Signed-off-by: Sefa Eyeoglu <contact@scrumplex.net>
2023-07-05 18:33:08 +02:00
Sunny
edd4f9a4f5
Point URL to specific plugin 2023-06-27 15:33:11 +02:00
Sunny
76932962f8
Add beets-more to community plugins 2023-06-27 10:25:26 +02:00
fence
3f31876b33 add change log entry 2023-06-26 21:21:48 +02:00
Jan Müller
8c6c2f0083 Update changelog.rst 2023-06-14 23:01:48 +02:00
Adrian Sampson
fc51a9327c
Merge pull request #4809 from beetbox/releasegroup_title-field
Store the release group's title.
2023-06-04 09:03:43 -07:00
David Logie
7ec93d6049 Store the release group's title.
beets does not currently store the "canonical" release group title,
only each release's title and disambiguation. Oddly, beets does store
the release group disambiguation.

Without this there is no way to determine a release group's title
without separately querying a data source.
2023-06-04 12:20:06 +01:00
Adrian Sampson
0e446fd16a
Simplify wording a bit 2023-06-03 14:59:25 -07:00
Pieter Lenaerts
12db5fc4c9 Reverting dicussions extlink
Discussions on github can be referenced as issues. The discussions
extlink was therefore not needed.
2023-06-03 08:20:00 +02:00
Pieter Lenaerts
1411510d55 Elaborated multidisc FAQ with github discussions extlink 2023-06-03 08:14:36 +02:00
Adrian Sampson
5aae612f45
Merge pull request #4805 from arsaboo/tidal_import
Allow importing Tidal album id from MusicBrainz
2023-05-30 15:42:47 -07:00
Alok Saboo
95898a3055 Revert changelog 2023-05-27 16:06:46 -04:00
Alok Saboo
b74388b233 Update changelog.rst 2023-05-27 15:04:50 -04:00
Alok Saboo
e7e1498aaf Update changelog.rst 2023-05-27 14:38:05 -04:00
Alok Saboo
a5df4b95ea Update MB docs 2023-05-27 14:11:07 -04:00
Alok Saboo
de2ff058a6 Update changelog.rst 2023-05-27 14:07:33 -04:00
Alok Saboo
c0bae4e5c0 Update changelog.rst 2023-05-26 08:48:25 -04:00
Alok Saboo
1ed41d3bce Update changelog.rst 2023-05-25 13:59:32 -04:00
Alok Saboo
b1b31f7fb4 Remove archived plugin 2023-05-21 16:29:35 -04:00
Adrian Sampson
9527a07767
Merge pull request #4786 from arsaboo/youtube
Add Youtube to the community plugins list
2023-05-13 13:35:28 -04:00
Adrian Sampson
eb361af84e
Caps fix 2023-05-13 13:34:10 -04:00
Alok Saboo
f655cd24c2 Add youtube tag source 2023-05-12 09:58:04 -04:00
Alok Saboo
e4c669adcd Address review comments. 2023-05-11 20:12:32 -04:00
Alok Saboo
ec9ab3a045 extend underline 2023-05-02 09:13:54 -04:00
Alok Saboo
141c8247d2 Update fetchart.rst 2023-05-02 09:11:57 -04:00
Alok Saboo
b0540411e1 Update docs 2023-05-02 08:57:05 -04:00
Alok Saboo
1c21821f4a Added changelog and additional error handling 2023-05-02 08:22:54 -04:00
Alok Saboo
731015b6d5 Update docs 2023-04-28 11:05:26 -04:00
Alok Saboo
718f682d76 Update changelog.rst 2023-04-28 08:57:29 -04:00
J0J0 Todos
997e8a8440 Fix m3u8 wikipedia link in convert plugin docs 2023-04-21 22:12:17 +02:00
J0J0 Todos
f6b0311221
Merge pull request #4719 from arsaboo/embedart_url
Added option to embedart using an image URL [small PR]
2023-04-21 21:52:04 +02:00
Alok Saboo
d48eab9ac1 Updated language 2023-04-21 07:58:37 -04:00
J0J0 Todos
1bde0dabf2 Add changelog for #4735 2023-04-11 07:11:20 +02:00
Alok Saboo
023f3d7df7 Merge remote-tracking branch 'upstream/master' into embedart_url 2023-04-09 15:11:21 -04:00
Šarūnas Nejus
d05c34ec4e
Merge pull request #4741 from snejus/use-regex-for-path-lookup
Perform regex and `bareasc` lookups using SQL

- Define a custom function which performs regex lookups natively in SQL. This improves
performance of lookups like beet list path::hello.
- Define a SQL function which runs unidecode for the bareasc lookups
2023-04-09 19:27:30 +01:00
Alok Saboo
4d39b4037a Merge remote-tracking branch 'upstream/master' into embedart_url 2023-04-09 13:59:42 -04:00
Šarūnas Nejus
b5b1afbfff
Also perform bareasc queries in SQL 2023-04-09 18:43:33 +01:00
Šarūnas Nejus
0f1b5d6f7c
Perform regex lookup in SQL
This improves performance of some string field lookups, for example
`beet list path::aa`
2023-04-09 18:43:32 +01:00
Alok Saboo
23b42e80e2 Merge remote-tracking branch 'upstream/master' into embedart_url 2023-04-08 21:07:41 -04:00
Šarūnas Nejus
724b06a77d
Define SingletonQuery to perform filtering through SQL
This slightly speeds up the queries and there's a nice side-effect where
`singleton:1` and `singleton:0` now work fine!

This is ultimately building towards replacing as many python-only
queries with SQL equivalents.
2023-04-08 06:15:04 +01:00
Adrian Sampson
6955c53349
Merge pull request #4730 from elyang0214/master
Enforced utf-8 encoding on imported files
2023-04-07 12:19:19 -07:00
J0J0 Todos
8705457d24
Merge pull request #4399 from JOJ0/convert_playlist
convert: New feature "Write m3u playlist to destination folder"
2023-04-03 07:21:06 +02:00
J0J0 Todos
94784c2c29 convert: playlist: Documentation overhaul 2023-04-02 21:14:50 +02:00
elyang0214
09de7909ce Merge branch 'master' of https://github.com/elyang0214/beets 2023-04-02 11:14:52 -04:00
elyang0214
b3b26efe88 Updated documentation to be less redundant in docs/referece/cli.rst and more accurate in docs/changelog.rst. 2023-04-02 11:13:53 -04:00
elyang0214
fbd665a417
Merge branch 'beetbox:master' into master 2023-04-02 11:06:13 -04:00
Adrian Sampson
c4a62fc248
Merge branch 'master' into archive_mtime 2023-04-01 15:33:35 -07:00
J0J0 T
a1baf9e94b convert: playlist: Fix rst linter error in docs
Fix "inline empasis start string without endstring" error in docs.
2023-03-29 07:46:08 +02:00