Commit Graph

2522 Commits

Author SHA1 Message Date
Sophist
fcd417c790 Increase statusbar update frequency...
... to match 100ms used elsewhere.
2014-02-27 17:00:45 +00:00
Michael Wiencek
d41995f5ed Move sip.setapi calls to picard/tagger.py
They are currently in ./tagger.py. Which means they will never get
called unless you're using ./tagger.py to start Picard.
2014-02-23 19:21:20 -06:00
Michael Wiencek
2fe5d29094 Catch all exceptions that would cause an option to not convert 2014-02-22 23:15:12 -06:00
Michael Wiencek
fa66e9f88d Merge branch 'no-qstring-qvariant' 2014-02-22 23:02:29 -06:00
Michael Wiencek
32b522617b Fix invalid syntax from af3e4d62 2014-02-22 23:01:06 -06:00
Michael Wiencek
995965ceb0 Merge branch 'no-qstring-qvariant' of github.com:mwiencek/picard into no-qstring-qvariant
Conflicts:
	picard/ui/options/cover.py
2014-02-22 22:54:36 -06:00
Michael Wiencek
ef0146ee3a Merge branch 'master' into no-qstring-qvariant
Conflicts:
	.gitignore
	picard/util/cdrom.py
	picard/webservice.py
	setup.py
2014-02-22 22:51:29 -06:00
Michael Wiencek
eeaafd57eb Merge pull request #218 from Sophist-UK/sophist_add_work_tag
Add Work Tag ...
2014-02-22 22:23:04 -06:00
Laurent Monin
afe49eae14 Merge pull request #219 from Freso/update-pos
Update translations from Transifex.
2014-02-22 15:31:58 +01:00
Frederik "Freso" S. Olesen
a4f5be9f1a Update translations from Transifex.
Using `python2 setup.py get_po_files`
2014-02-22 14:30:02 +01:00
Laurent Monin
d0c2e07ee4 Merge pull request #198 from JonnyJD/always_default_drive
PICARD-123: actually use default drive on Mac
2014-02-21 09:30:29 +01:00
Sophist
6430cbc0e6 Add News notice of the change 2014-02-12 19:18:24 +00:00
Sophist
af3e4d6288 Add Work Tag ...
See http://forums.musicbrainz.org/viewtopic.php?pid=24929 for
requirements discussion.
2014-02-11 18:18:44 +00:00
Laurent Monin
b020cac612 Revert "Set preferred releases to "Digital Media" and "[Worldwide]" by default."
This reverts commit 2886d102a3.

See comments at 2886d102a3
2014-02-07 17:49:40 +01:00
Wieland Hoffmann
a67ae02ce8 Add a missing re import
This is used by the code checking whether to ignore a to-be-loaded
directory.
2014-02-03 15:52:21 +01:00
Wieland Hoffmann
b5711e7208 Merge branch 'master' of github.com:musicbrainz/picard 2014-02-02 20:24:22 +01:00
Wieland Hoffmann
69556c9bd5 Use getopt.gnu_getopt
If you were ever annoyed by starting Picard from the console with a
specific folder, noticing you forgot the `-d`, stopping Picard, pressing
arrow-up, adding the `-d` to the end of the line, only to notice that
this didn't help at all, this commit is for you because now the option
parsing doesn't stop after the first thing that's not an option.
2014-02-02 20:22:24 +01:00
Laurent Monin
a23c020e01 Merge pull request #213 from zas/defaults
Attempt to provide better defaults for the average user
2014-01-28 23:26:48 -08:00
Johannes Dewender
1e0272d426 Merge branch 'master' into always_default_drive
Conflicts:
	NEWS.txt
2014-01-25 11:19:32 +01:00
Laurent Monin
4a471528e2 Merge pull request #215 from zas/safelog
Remove user info from logged urls
2014-01-25 01:01:21 -08:00
Laurent Monin
c64207d073 Remove user info from logged urls
It is a safety measure as users may publish their logs ie. in bug reports.
2014-01-24 09:24:16 +01:00
Laurent Monin
21aa40885e Add new po/countries/*.po files 2014-01-23 16:08:10 +01:00
Laurent Monin
206b6c32a8 Regenerate picard.pot 2014-01-23 16:03:53 +01:00
Laurent Monin
8d688fcb95 Merge pull request #209 from zas/freso_picard_205
PICARD-205: Use a separate gettext domain for country translations

Add new commands to setup.py to handle translation updates
2014-01-23 07:01:59 -08:00
Laurent Monin
cc55dd4b4b _exit() is not needed anymore, use sys.exit() 2014-01-22 16:23:54 +01:00
Laurent Monin
2886d102a3 Set preferred releases to "Digital Media" and "[Worldwide]" by default.
If two releases with same tracklist exists, we want to take digital media over CD (ie),
because most users are tagging digital files from unknown source and don't care
which exact release it is until tracklist is matching.

Worldwide is preferred by default, because if two releases exist with same tracklist
it is more likely it is the worldwide one's than a country-specific one.
2014-01-22 16:15:31 +01:00
Laurent Monin
3f4e8a009f Download cover art by default, one front image only.
Average user is expecting cover art to be shown in such application.
Set default size for CAA images to 500px.
All providers are enabled so the behavior is the same than MusicBrainz website
(which shows cover art from (ie.) Amazon by default).
For CAA, download only approved images by default.
2014-01-22 16:10:35 +01:00
Laurent Monin
6a4b7d6f66 Show cover art box by default.
Average user is expecting cover art to be shown in such application.
2014-01-22 16:07:54 +01:00
Michael Wiencek
01a7d24590 Merge pull request #2 from zas/listoptions
Convert more options to ListOption
2014-01-20 15:35:50 -08:00
Laurent Monin
2b83c27a57 Convert metadata_box_sizes option to IntListOption type
New IntListOption is a ListOption which takes care about converting its elements to int
2014-01-20 10:17:04 +01:00
Laurent Monin
6047debecc Convert caa_image_types option from TextOption to ListOption 2014-01-20 10:15:29 +01:00
Michael Wiencek
fed4022da4 Fix issue related to QSettings saving booleans as strings 2014-01-20 00:04:20 -06:00
Michael Wiencek
b9b6bfe8fb Fix deadlock introduced in c50cdf7 2014-01-19 23:03:40 -06:00
Michael Wiencek
c50cdf7e42 Return the default Option value on TypeError
Apparently Qt saves empty QStringLists as @Invalid, which sip converts
to None in Python. Which throws a TypeError when fed back into list.
2014-01-19 22:50:35 -06:00
Michael Wiencek
e781183297 Add .DS_Store to .gitignore 2014-01-19 22:31:56 -06:00
Michael Wiencek
547475f62b Revert 68bf155, use different solution
68bf155 was overzealous in removing the conversion routines because
although sip does convert the values for us, that doesn't help if the
wrong type is already saved (hence why we're converting it in the
first place...).

This adds back that functionality. To solve the upgrade hook issue,
a `raw_value` method is added to the ConfigSection class so that
`__getitem__` isn't invoked during the upgrade (which is what wrongly
converted the value to begin with).
2014-01-19 22:30:28 -06:00
Michael Wiencek
f75206afdf Merge pull request #1 from zas/listoptions
Improve hooks documentation and debug output, fix few issues
2014-01-18 23:43:05 -08:00
Laurent Monin
0bcb4356f6 Use with open() as statements within generate_file() 2014-01-18 16:01:56 +01:00
Laurent Monin
5c5a5ea51d Output hooks docstrings to log.debug
Example of output:
```
D: 10:57:46 Config upgrade 1.3.0dev1 -> 1.3.0dev2: Option "preserved_tags" is now using comma instead of spaces as tag separator (PICARD-536)
```
2014-01-18 10:59:02 +01:00
Laurent Monin
7ce80a21ea Shorten lines using intermediate variables 2014-01-18 10:54:56 +01:00
Laurent Monin
8d86e61912 Moved info about the change to function's doc
As discussed with @mwiencek, we don't need to expose those to average user,
nor to mark those for translations.
2014-01-18 10:54:56 +01:00
Laurent Monin
3c07627472 Do not try to upgrade option if not needed.
It fixes the following exception, when starting without any pre-existing configuration file:
```
  File "./picard/config_upgrade.py", line 106, in upgrade_to_v1_3_0_dev_3
    _s["preferred_release_countries"].split("  ")
AttributeError: 'list' object has no attribute 'split'
```
2014-01-18 10:32:29 +01:00
Michael Wiencek
f9031211e2 Convert QByteArray to unicode to fix exception 2014-01-17 04:16:44 -06:00
Michael Wiencek
68bf155ef0 Remove type conversion functionality from Options
Automatically converting the type is problematic, because if we change
the type of an option later (imagine str -> list), it'll pass the old
value to the new type constructor before any upgrade hooks are run.
With 6ff1f53, there shouldn't be any need to convert the types anyway
because sip now does that for us.

The 'convert' functionality has been repurposed here for actual format
conversions. As it happens, the only Option that needs that is the
password field (rot13).
2014-01-17 03:58:45 -06:00
Michael Wiencek
bae1672ef1 Fix tests in light of 6ff1f53 2014-01-16 19:38:15 -06:00
Michael Wiencek
6ff1f5350f Nuke QVariant, QString in favor of Python types 2014-01-16 19:18:35 -06:00
Laurent Monin
748d659fb8 Call _exit() instead of raising Exception() 2014-01-16 21:21:06 +01:00
Laurent Monin
fe7d51f069 Use distutils.spawn.spawn() instead of subprocess.call(), simplify code 2014-01-16 21:12:05 +01:00
Laurent Monin
2cfd9aef0a Use distutils.spawn.find_executable to find tx (or tx.exe) 2014-01-16 21:10:56 +01:00
Laurent Monin
f38eedd7a7 Use SystemExit() instance to set code together with message. 2014-01-16 21:08:24 +01:00