Philipp Wolfer
fa73b7d3e0
For login view use a vertical layout instead of grid layout.
...
May solve PICARD-2320 and likely is a better solution for PICARD-1654
2021-11-20 18:26:10 +01:00
Philipp Wolfer
91be1ba650
PICARD-2325: Show error message on login errors
2021-11-20 18:11:53 +01:00
Laurent Monin
37da61c004
Merge pull request #1956 from zas/dynamic_ab_extractor
...
Introduce new class ABExtractor in order to get extractor dynamically
2021-11-19 11:30:36 +01:00
Laurent Monin
e72c552df0
Re-initialize cache on new entry, keep only one
2021-11-19 09:32:09 +01:00
Laurent Monin
66b63968cd
Introduce new class ABExtractor in order to get extractor dynamically
...
- use a cache to prevent useless version & sha calculations
- based cache key on stat.st_mtime_ns + path
- declare ab_extractor as a property of tagger class
- pass tagger to all methods that needs it
2021-11-18 18:48:16 +01:00
Laurent Monin
189416f46a
Fix AcoustID succesful lookup debug logging
...
- it was logged more than once
- add the number of found recordings
- also log when AcoustID was found, but has no recordings (suggested by @phw)
2021-11-17 17:16:25 +01:00
Philipp Wolfer
353c1a8d01
Merge pull request #1955 from zas/album_opt
...
Album matching optimizations
2021-11-17 17:15:28 +01:00
Laurent Monin
e9f0aec350
Add a TODO about process_events_iter
2021-11-17 16:09:58 +01:00
Laurent Monin
b519d33bff
Make _match_files() a staticmethod with arguments, to ease testing
2021-11-17 16:03:21 +01:00
Laurent Monin
672c2c0733
_match_files(): conversion to list isn't strictly needed
2021-11-17 08:41:43 +01:00
Laurent Monin
0348444e6d
Only define no_match once, its value is constant
2021-11-17 08:26:40 +01:00
Laurent Monin
414a178ab3
Invert test logic and tidy up
2021-11-17 08:25:11 +01:00
Laurent Monin
5db5c57af1
_match_files(): move threshold matching to candidates()
...
- whatever is the best match, it is discarded if it doesn't match the threshold
- best_match will be no_match if none of the candidates matches
- removing candidates based on threshold reduces the number of iterations to find best match
2021-11-16 21:55:36 +01:00
Laurent Monin
55eae2d5a4
find_best_match(): use max() instead of sort_by_similarity()
...
- drop unused `num_results` from `BestMatch` namedtuple
- use `max()` along its `key` and `default` arguments, it is much simpler and faster
2021-11-16 21:37:48 +01:00
Laurent Monin
c737057ca0
Merge pull request #1953 from zas/acoustid_tasks
...
Acoustid tasks
2021-11-15 17:42:57 +01:00
Laurent Monin
8b38180724
stop_analyze(): do not requeue removed files
2021-11-15 15:46:21 +01:00
Laurent Monin
a156a85b73
If file was removed, do not queue or start fingerprint calculation
2021-11-15 15:28:45 +01:00
Laurent Monin
66180ad50f
_lookup_fingerprint(): also pass an AcoustIDTask() object, check file.REMOVED
2021-11-15 15:21:46 +01:00
Laurent Monin
6b0f519913
analyze(): call _fingerprint(task)
2021-11-14 14:13:51 +01:00
Laurent Monin
4b76c47c95
fingerprint(): call new _fingerprint(task)
2021-11-14 14:13:05 +01:00
Laurent Monin
c9ce70a2d7
_on_fpcalc_error(): pass an AcoustIDTask
2021-11-14 14:12:23 +01:00
Laurent Monin
3389d9bc6d
_on_lookup_finished(): pass an AcoustIDTask
2021-11-14 14:01:43 +01:00
Laurent Monin
ac9ede4956
_on_fpcalc_error(): add program & arguments in error message
2021-11-14 12:52:20 +01:00
Laurent Monin
88cb2f2d5d
_on_fpcalc_error(): no need to pass filename, it is unused
2021-11-14 12:50:11 +01:00
Laurent Monin
532abed26c
_on_fpcalc_finished(): pass AcoustIDTask
2021-11-14 12:20:56 +01:00
Laurent Monin
24ac0adbfc
Introduce AcoustIDTask namedtuple
2021-11-14 12:15:55 +01:00
Laurent Monin
7ced4d71fb
Merge pull request #1949 from rdswift/script_editor_loaded_values
...
PICARD-2330: Synchronize changes between script editor and Options dialog
2021-11-12 10:09:00 +01:00
Bob Swift
94365a421a
Synchronize changes between script editor and Options dialog
2021-11-11 17:35:25 -07:00
Philipp Wolfer
1555db3ea8
More remark-lint fixes
2021-11-11 14:23:38 +01:00
Philipp Wolfer
9bf937ceb8
Fix remark-lint issues
2021-11-11 13:38:21 +01:00
Laurent Monin
0d662ed59f
Merge pull request #1948 from zas/rework_linux_read_cdroms
...
_parse_linux_cdrom_info(): optimize a bit
2021-11-11 12:21:16 +01:00
Laurent Monin
c483f8646b
_parse_linux_cdrom_info(): optimize a bit
...
- iterate through f directly, no need of readline()
- look for 'drive name:' prefix first, and if found, look for 'Can play audio:'
- break ASAP
- do not split lines, use startswith() and splice on length
2021-11-11 11:47:28 +01:00
Philipp Wolfer
ee1be2017d
Create codacy-analysis.yml
2021-11-11 11:35:24 +01:00
Philipp Wolfer
85d8b1eb28
cdrom: ensure Linux cdinfo parsing code splits lines correctly
2021-11-11 11:20:30 +01:00
Laurent Monin
7d515367f2
Merge pull request #1946 from phw/refactor_cdrom
...
Refactor picard.util.cdrom
2021-11-11 11:11:03 +01:00
Philipp Wolfer
2ea94a4d21
cdrom: Always test generic implementation
2021-11-11 09:13:09 +01:00
Philipp Wolfer
5e4cac7184
Add generic tests for util.cdrom
2021-11-11 09:12:29 +01:00
Philipp Wolfer
5a292078b7
Refactor cdrom device reading on Linux
...
Simplify code, add tests, get rid of Qt dependency
2021-11-11 09:12:22 +01:00
Philipp Wolfer
1f823fa67b
Refactor util.cdrom to reduce code complexity
2021-11-11 09:10:48 +01:00
Bob Swift
b8efed73a0
Update naming script quick selector after enabling/disabling profiles
2021-11-11 08:17:09 +01:00
Laurent Monin
14ce07756e
Update Copyright headers, with the help of fix-headers.py script
2021-11-10 21:38:54 +01:00
Laurent Monin
82aca65087
Merge pull request #1944 from zas/file_update_rework
...
File.update() rework & testing
2021-11-10 19:08:53 +01:00
Philipp Wolfer
0816eb61bf
Simplify i18n.setup_gettext
2021-11-10 18:45:39 +01:00
Laurent Monin
5b396ea766
Move part of File.update() code to a new generator File._tags_to_update()
...
- test it separately
- override File.supports_tag() for all tests, it ensures consistency
2021-11-10 18:06:01 +01:00
Philipp Wolfer
8d99fb7001
Update NatAlbum.update to match Album.update method signature
2021-11-10 16:39:32 +01:00
Laurent Monin
ca6cee6096
Simplify tests
2021-11-10 16:03:46 +01:00
Philipp Wolfer
23f9ff16ac
remark-lint: allow Github checkboxes
2021-11-10 16:02:31 +01:00
Laurent Monin
f0a5e7aeaf
File.update(): use self.metadata directly, no need of intermediate variable
2021-11-10 15:38:32 +01:00
Philipp Wolfer
2f34f3cd2e
Fixed appx signing
2021-11-10 15:05:56 +01:00
Philipp Wolfer
f22c3ea965
Use SecureString in Windows Powershell packaging script
2021-11-10 14:59:42 +01:00