Commit Graph

98 Commits

Author SHA1 Message Date
JoeLametta
4dc02ec12e Rewrite PathFilter
Added filter options:
- dot (replace leading dot with _)
- posix (replace illegal chars in *nix OSes with _)
- vfat (replace illegal chars in VFAT filesystems with _)
- whitespace (replace all whitespace chars with _)
- printable (replace all non printable ASCII chars with _)

Removed filter options:
- fat (replaced with vfat)
- special

Fixes #313.

Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-02-22 18:01:20 +00:00
JoeLametta
3213241ea5 Merge pull request #461 from neilmayhew/fix/inline-config-comments
Restore the ability to use inline comments in config files
2020-02-04 16:23:55 +01:00
Neil Mayhew
dca9fcb7dc Restore the ability to use inline comments in config files
The ability was lost in the switch to Python 3, because the config
parser module in the standard library changed its defaults.

[Python 2][2]:

> Comments may appear on their own in an otherwise empty line, or
> may be entered in lines holding values or section names.

[Python 3][3]:

> Inline comments can be harmful because they prevent users
> from using the delimiting characters as parts of values.
> That being said, this can be customized.

[2]: https://docs.python.org/2/library/configparser.html#module-ConfigParser
[3]: https://docs.python.org/3/library/configparser.html#supported-ini-file-structure

Signed-off-by: Neil Mayhew <neil@neil.mayhew.name>
2020-02-03 15:01:36 -07:00
JoeLametta
87e75d0f98 Drop 'requests' external dependency
It was only used in a single method and wasn't really needed.

Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-02-03 15:56:07 +00:00
Martin Paul Eve
3a1663dd15 Update docker instructions to use --bind instead of -v. (#454)
* Update docker instructions to use --bind instead of -v.

This is the better and approved option now as `-v` will yield permission errors on some systems.

Signed-off-by: Martin Paul Eve <martin@martineve.com>

* Add requirement for directories to exist

Signed-off-by: Martin Paul Eve <martin@martineve.com>
2020-01-29 12:39:56 +01:00
JoeLametta
7b8a20b22b Merge pull request #450 from ABCbum/develop
Use https and http appropriately when connecting to MusicBrainz
2020-01-29 10:00:35 +01:00
JoeLametta
5eac141b53 README: replace 'pip' commands with 'pip3'
Whipper is Python 3 only since version 0.9.0.

Related to #457.

Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-01-29 08:38:13 +00:00
JoeLametta
553a6de88f Fix typo in README and clarify Docker instructions
Fixes #452.

Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-01-17 15:42:06 +00:00
JoeLametta
1206552bd2 Use https and http appropriately when connecting to MusicBrainz
Fixed some bugs:
- MusicBrainz submit URL always has https as protocol: hardcoded, even when
inappropriate. It's just a graphical issue.
- Whipper appears to always communicate with MusicBrainz using musicbrainzngs
over http. The musicbrainzngs.set_hostname(server).
- `musicbrainzngs.set_hostname(server)` always defaults to http. Since musicbrainzngs
version 0.7 the method `set_hostname` takes an optional argument named `use_https`
(defaults to False) which whipper never passes.

Changed behaviour of `server` option (`musicbrainz` section of whipper's configuration file).
Now it expects an URL with a valid scheme (scheme must be `http` or `http`, empty scheme isn't allowed anymore).
Only the scheme and netloc parts of the URL are taken into account.

Fixes #437.

Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-01-17 15:12:40 +00:00
JoeLametta
9e37219401 Merge pull request #436 from ABCbum/grab-cover-art
Grab cover art from MusicBrainz/Cover Art Archive and add it to the resulting whipper rips
2020-01-14 17:04:53 +01:00
ABCbum
8181cacca5 Update README, dependencies and supporting files for cover art feature
Signed-off-by: ABCbum <kimlong221002@gmail.com>
Co-authored-by: JoeLametta <JoeLametta@users.noreply.github.com>
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-01-14 15:57:34 +00:00
JoeLametta
6a43d7df1a Update copyright year in README
Misc README changes too.

Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-01-10 18:10:12 +00:00
JoeLametta
150f0d5e91 Move inline comment to separate line in example whipper config file
This avoids `%` character interpolation leading to `InterpolationSyntaxError`.
Added a comment explaining this too.

Fixes #443.

Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2020-01-04 15:35:32 +00:00
JoeLametta
d665fe44c4 Fix single wrong line order in README
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-12-29 15:14:24 +00:00
ABCbum
8c41f4ddb3 Update whipper's dependencies
whipper now requires `discid` package - which can be installed through
pip and `discid` relies on libdiscid.

Signed-off-by: ABCbum <kimlong221002@gmail.com>
2019-12-28 12:42:26 +00:00
JoeLametta
c13f541e61 Push whipper release v0.9.0
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-12-04 13:26:33 +00:00
JoeLametta
50c8cbb237 Update README, .travis.yml and Dockerfile for Python 3
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-11-26 18:48:01 +00:00
Andreas Oberritter
8446c290e7 accuraterip-checksum.c: Port to Python 3
Accuraterip-checksum extension will be Python 3 only (JoeLametta).

Co-authored-by: JoeLametta <JoeLametta@users.noreply.github.com>
Signed-off-by: Andreas Oberritter <obi@saftware.de>
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-11-26 18:46:12 +00:00
JoeLametta
db9c44a765 Push whipper v0.8.0 release
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-10-27 13:30:18 +00:00
JoeLametta
948cde7921 Update README
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-10-21 16:00:00 +00:00
JoeLametta
3a74c60344 Update "required dependencies" section in README
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-05-04 10:18:03 +02:00
JoeLametta
8db090c9bf Add Freso to whipper's credits
Signed-off-by: JoeLametta <JoeLametta@users.noreply.github.com>
2019-05-03 19:19:16 +02:00
JoeLametta
7a92650eff Update Docker Hub's repository URL
See #395.
2019-05-03 10:46:24 +02:00
JoeLametta
3a61960e5f Add git/mercurial dependency to the README
Building or running whipper uninstalled requires setuptools-scm (since #370): which depends on git (or mercurial) in order to to its job.

Fixes #386.
2019-04-02 15:27:22 +00:00
Frederik “Freso” S. Olesen
1a1ddd524a README: Update copyright attribution of my own name
Signed-off-by: Frederik “Freso” S. Olesen <freso.dk@gmail.com>
2019-02-13 23:57:11 +01:00
Frederik “Freso” S. Olesen
787dbb91f6 Update copyright statement year range in README
Signed-off-by: Frederik “Freso” S. Olesen <freso.dk@gmail.com>
2019-02-13 23:55:50 +01:00
JoeLametta
f99ffd77fd Require Developer Certificate of Origin sign-off 2019-01-18 12:15:59 +01:00
JoeLametta
7c83670efa Clarify cd-paranoia's package issue
Also updated pycdio/libcdio section

Fixes #347.
2018-12-14 22:14:30 +00:00
JoeLametta
3a569484e3 Discover plugins in system directories too
Fixes #135.
2018-12-14 22:16:13 +01:00
JoeLametta
69bac864ab Raise exception if template has invalid variables
If the template string contains variables which aren't valid for whipper, raise ValueError exception listing all the included unrecognized variables.
I've also corrected the example template configuration lines in the README.

Fixes #279.
2018-11-02 08:05:00 +00:00
JoeLametta
24a0dceb71 Capitalize whipper's team name in README 2018-10-31 08:00:00 +00:00
JoeLametta
f9cb126270 Update README's Docker part with Docker Hub info
Now Docker adopters can use whipper trough Docker Hub's automatically built images.
Thanks to user "anarcat" for proposing and thoroughly explaining how to reach this goal.

Closes #301.
2018-10-27 19:56:26 +02:00
JoeLametta
d25b995e28 Push whipper v0.7.1 release 2018-10-23 08:30:00 +00:00
JoeLametta
a6d2e122e3 Add a requirements.txt file
Fixes #221.
2018-10-23 08:00:00 +00:00
JoeLametta
669b356daa Update README.md
Updated links from JoeLametta to whipper-team
2018-10-21 10:14:01 +02:00
JoeLametta
528b5a18e9 Update README.md
- Updated logger plugins information
- Updated links section (added Matrix)
2018-10-21 08:02:27 +00:00
anarcat
6d7e54f8b2 Fix Docker invocation (#300)
* fix syntax error in Dockerfile

* fix Docker invocation

It makes no sense to pass the `-t` argument twice and we need to tell
Docker where to find the Dockerfile. Also, it makes sense to write the
config file in a standard location. In my tests, I also had to create
the directory by hand otherwise I got this error:

    cdparanoia can defeat the audio cache on this drive.
    Adding drive cache behaviour to configuration file.
    Traceback (most recent call last):
      File "/usr/local/bin/whipper", line 11, in <module>
        load_entry_point('whipper==0.7.0', 'console_scripts', 'whipper')()
      File "/usr/local/lib/python2.7/dist-packages/whipper-0.7.0-py2.7.egg/whipper/command/main.py", line 36, in main
        ret = cmd.do()
      File "/usr/local/lib/python2.7/dist-packages/whipper-0.7.0-py2.7.egg/whipper/command/basecommand.py", line 139, in do
        return self.cmd.do()
      File "/usr/local/lib/python2.7/dist-packages/whipper-0.7.0-py2.7.egg/whipper/command/basecommand.py", line 139, in do
        return self.cmd.do()
      File "/usr/local/lib/python2.7/dist-packages/whipper-0.7.0-py2.7.egg/whipper/command/drive.py", line 63, in do
        info[0], info[1], info[2], t.defeatsCache)
      File "/usr/local/lib/python2.7/dist-packages/whipper-0.7.0-py2.7.egg/whipper/common/config.py", line 115, in setDefeatsCache
        section = self._findOrCreateDriveSection(vendor, model, release)
      File "/usr/local/lib/python2.7/dist-packages/whipper-0.7.0-py2.7.egg/whipper/common/config.py", line 164, in _findOrCreateDriveSection
        self.write()
      File "/usr/local/lib/python2.7/dist-packages/whipper-0.7.0-py2.7.egg/whipper/common/config.py", line 58, in write
        shutil.move(path, self._path)
      File "/usr/lib/python2.7/shutil.py", line 316, in move
        copy2(src, real_dst)
      File "/usr/lib/python2.7/shutil.py", line 144, in copy2
        copyfile(src, dst)
      File "/usr/lib/python2.7/shutil.py", line 97, in copyfile
        with open(dst, 'wb') as fdst:
    IOError: [Errno 13] Permission denied: u'/home/worker/.config/whipper/whipper.conf'

* remove needless tag version

:latest is implicit so it's useless noise as well.

* Update README.md
2018-10-03 15:43:58 +00:00
Thomas McWork
cfcbfd5623 Document Docker usage in the README (#297)
Document Docker usage in the README
2018-10-03 08:07:47 +00:00
Andreas Oberritter
542e071443 switch CDDB implementation to freedb.py from python-audio-tools (#276)
* freedb: Import from python-audio-tools 660ee2c

License: GPL-2.0+

* freedb: Remove unused code and set client name to whipper.

The removed functions depend on other classes of python-audio-tools,
but aren't needed here.

* cddb-py: replace with newer freedb implementation

The last release of cddb-py was 15 years ago. The freedb code taken
from python-audio-tools speaks protocol version 6 (Unicode) and is
compatible to both Python 2 and 3.

* freedb: Don't allow the pedantic CI test to fail
2018-06-08 14:40:56 +00:00
Joe
5db7656ef8 Clarify pre-emphasis reporting implementation
Currently whipper only reports about the pre-emphasis flag value as stored in the TOC.

Related to #275.
2018-05-24 17:29:51 +02:00
Andreas Oberritter
145403705d Switch to PyGObject by default (#271)
* cd/offset: remove unused call to gobject.thread_init()

There are no threads involved.

* task: switch to PyGObject

Python-gobject-2 is deprecated.

* travis: update dependencies for PyGObject and GLib-2.0

* README: Add GObject Introspection
2018-05-24 17:11:37 +02:00
JoeLametta
99bfe41c0a Update Travis CI URL 2018-05-08 08:00:00 +00:00
Joe
1cece638cd Misc README changes
Fixes #229.
2018-04-09 10:31:04 +02:00
Samantha Baldwin
1ba0132948 Small readme cleanups (#250)
* README cleanups

	- remove backwards incompatible changes section
	- add note about adding and running tests for devs
	- remove mention of incomplete man page
	- remove mention of force-pushed non-master branches

* README: one line per shield

* README: table of content updates

* README: remove Credits

* Revert "README: remove Credits"

This reverts commit f2b126c737595e08f4500ea284c8e69b457550cb.
2018-03-22 14:28:32 +01:00
Samantha Baldwin
fd2c56053b read command parameters from config sections (#240)
* read command parameters from config sections

* README: update config file documentation

* README: config example type INI, add comma

* README: clearer and better spelled wording

* README: fix 'delineated' typo
2018-03-07 14:39:29 +01:00
Joe
f6169ae3cb State that whipper isn't just a fork of morituri
First step for #79.
2018-03-03 11:37:08 +01:00
Matthew Ruszczyk
3a7e17f388 Remove references to Copr repository
Whipper is now available from the official Fedora repositories so mentions to the Copr are no longer required.
2018-03-02 14:18:14 -05:00
Samantha Baldwin
c7e8a0f21d credit four major developers by line count 2018-03-01 20:48:29 -05:00
Calum Chisholm
e8fdd868d2 Removed reference to unused "profile = flac" config option (see issue #99) 2018-02-12 10:50:22 +08:00
JoeLametta
8179c3f79e Update README. Fix missing link in CHANGELOG file 2018-02-06 10:00:00 +00:00