Releases: JOJ0/discodos
DiscoDOS v2.0
New & Breaking Changes
- Introduce CLI frontend rewrite based on Click by @JOJ0 in #17
- The new CLI main command is now
dsc
disco
is still existing for reference but is not maintained anymore- There are 2 reasons for the rewrite
- I prefer to maintain a Click-based CLI rather than an argparser-based one.
- There was a naming conflict with an Ubuntu package. See #15
- The new CLI main command is now
- Fix docs (CLI rewrite), fix rtd build, state AcousticBrainz shutdown in README by @JOJ0 in #20
- Docs have been updated to state the new
dsc
command but might occassionally be still outdated in that matter. - Since AcousticBrainz was shut down, key and BPM fetching does not work anymore.
- There are still loads of notes about AcousticBrainz in the docs, those are not updated yet. Help wanted!
- Docs have been updated to state the new
Notes
- Builds for Windows and macOS are not provided anymore, please install from git: https://discodos.readthedocs.io/en/latest/CONTRIBUTION.html#install-development-version
- Full Changelog: v1.1...v2.0
DiscoDOS v1.1
New
-
*Brainz matching (
-z/-zz
option ofimport
,search
andmix
subcommands): New options--skip-unmatched/-s
--force/-f
giving more customization possibilites for these longrunning processes. -
The
--resume
option of theimport
subcommand is now available as--offset
as well, which better reflects what it does when used in combo with aforementioned new options. -
New subcommend
disco stats
giving several counts of releases and tracks in the DiscoBASE, *Brainz match results, tracks used in mixes, and so on. -
New
disco mix
option--format
, providing a way to directly pass to the CLI table rendering module (tabulate) what displaying-style should be used. E.g this way even html output can be rendered: Trydisco mix <mixname> --format html
-
A graphical version of DiscoDOS is available as a preview. Check out the
qtgui
branch if interested. Install requirements viapip install -r gui_requirements.txt
and launchgui.py
. Thanks a lot to @D8bp8Ags for getting this started, providing a very good basis of a QT based GUI, helping and motivating me to learn a little PyQT programming already and supporting the DiscoDOS project overall. Very much appreciated! Thanks again!
Improved
- Internal overhaul: PEP8 linting as good as possible in many parts of the code.
- Splitting up classes into smaller modules for code readability.
- New class TableDefaults in view_common module, providing a smarter way to handle CLI column headers. This actually was introduced to better handle defaults of TableViews of the QT-GUI in development but then was advanced to support both GUI and CLI things.
- Loads of more improvements related to QT-GUI development that made it into master already.
Fixes
- Fixes and improvements in test suites: test_collection, test_mix, test_config.
- Some fixes in github actions pipelines.
- Fix a bug where content of CLI table cells (like album names, track names, etc.) was not displayed correctly (cut off too early)
Notes
- Installation and upgrade guides: https://discodos.readthedocs.io/en/latest/INSTALLATION.html
- The macOS version was built an macOS 10.5. Catalina and thus requires at least that version. It is tested with
bash
as the default shell. Please report problems encountered withzsh
. - The Windows version was not tested but is supposed to run on Windows 10 and higher versions. File a github issue in case of problems. I'm happy to help.
- Any other OS: Install from git directly: https://discodos.readthedocs.io/en/latest/CONTRIBUTION.html#install-development-version
DiscoDOS v1.0.1
Fixes
-
When Discogs search didn't get any results (either invoked via
disco search <searchterm>
ordisco mix <mixname> -a <searchterm>
or any other way) one of the following two errors were shown to the user. All the requested operations were working properly but especially on macOS it caused an ugly popup message - this is fixed now.- AttributeError: bool object has no attribute pages
- TypeError: can only concatenate str (not "int") to str
-
Also when Discogs search didn't find anything, before above errors were shown, a tiny ERROR message about a "non-existent list index" was shown to the user. The error was already catched and handled but is useless to the user anyway, thus it is not shown anymore.
View all release notes: https://github.com/JOJ0/discodos/releases
DiscoDOS v1.0.0
DiscoDOS 1.0 is finally released!
New
- Update full releases (rather than single tracks or whole mixes)
- Discogs update:
search -u all
- *Brainz update:
search -z all
- Discogs update:
- DiscoDOS got a website: https://discodos.jojotodos.net
- All documentation is generated with Sphinx and hosted on https://discodos.readthedocs.org.
- Prior docs from github markdown files included
- New autogenerated "Commands Reference" section
- And a lot more fixes and improvements to docs
- Testsuite is run automatically on pushes to master branch using github actions
- Release process automations
- Fully automated generation of Windows package using github actions
- Improvements in generation of macOS package (posix_pack.sh). Has to be executed on local machine because github actions doesn't support running on "older" macOS versions
- Autogeneration of github release when a new tag is pushed
Improved
- Longer Artist/Track/Release names in mix tracklist view are now split into several lines rather than just 2 lines. The default breaking point is fixed to 16 characters and might be configurable in future versions.
- Http Error handling in Discogs update and *Brainz matching is now even more robust. This especially improves long-running *Brainz matching processes.
- Some additional counters are shown in final *Brainz match stats
- Testsuite code style: formatting/linting towards PEP8 compliance
Fixes
- Fix off by one errors when resuming long running processes (e.g Brainz matching)
- Fix "Can't fetch ... Track not existing on Discogs... error" - this happened when user asked for tracks to be matched that where not updated with Track names from Discogs. Now if unavailable Discogs will just be asked on the fly.
- Fix --resume silently ignored when given options combination is actually not yet supported or supposed to work together
- Testsuite fixes: test_collection, test_mix, test_brainz now working well again
- Many fixes and refactoring in macOS packaging and initial installation magic
Deprecated
- Packaging of a self-contained Linux version was dropped with this release - Almost any Linux comes with a supported Python version. Please install DiscoDOS as a Python package or use version 1.0_rc2 that is included in Debian/Ubuntu based distros via
apt-get install discodos
DiscoDOS v1.0.0-rc4
This is an autogenerated DiscoDOS pre-release.
Final release coming soon...
DiscoDOS v1.0_rc3
This release is all about making installation and configuration as native as possible on Windows and macOS.
- Windows: Download installer - run - use Start Menu entries to launch DiscoDOS and view Documentation.
- macOS: Download .dmg file - doubleclick - Drag and drop DiscoDOS.app to Applications - doubleclick to launch
Release Notes:
- No separate installation program needed anymore: Just: Install - Run - Essential configuration steps run automatically
- The token necessary to access the user's Discogs collection is now asked by
disco
interactively. No need to edit a configuration file anymore. - DiscoDOS' files are kept in a place fitting well with what a Windows/macOS user would expect (Home folder - Documents - DiscoDOS).
Builds:
- Windows package was built on a Windows 10 machine (should be compatible with lower Windows versions too)
- macOS package was built on a macOS High Sierra 10.13. machine (is not compatible with lower macOS versions - in case you are running an older macOS, please reach out to me (open an issue). I will try to find a way to package on an older machine)
DiscoDOS v1.0_rc2
This second release candidate was primarily created for packaging DiscoDOS into Debian Linux. It turned out that some of those changes appear useful in Windows and macOS packages as well.
This is a source only release though - for Windows and macOS packages please get rc3 above.
This release (v1.0_rc2) will, if all goes well, be available in Debian GNU/Linux unstable distribution and be installable simply doing apt install discodos
. Debian is the basis for a lot of other distros too and hopefully DiscoDOS will make it in those soon. My hopes are up for Ubuntu's October release (20.10) and thus its "childs" Linux Mint, Ubuntu Studio, etc..
Release notes:
- The separate DiscoDOS setup program vanished, which simplifies installation:
- All necessary setup-steps run automatically when disco command is launched the first time (download - unzip - run - done)
- All the setup program functionality was moved to a subcommand of disco, which, if necessary, can still be launched by the user "on demand" (run "disco setup")
- Loads of documentation was added/updated/improved (README.md, MANUAL.md, INSTALLATION.md, CONTRIBUTION.md)
- disco mix command:
- Fix use mix-names multiple times
- discosync command:
- Fix ordering of available backups in restore and show commands
- Changes under the hood:
- Proper python packaging using setuptools & pbr - eases installation from source and was necessary for Debian packaging
- Fixes in logger initialization
- The "Discogs API library module" is now taken from the newly found project "joalla" (https://github.com/joalla/discogs_client)
DiscoDOS v1.0-rc1
DiscoDOS 1.0 first "release candidate"
Installation instructions: https://github.com/JOJ0/discodos/blob/master/INSTALLATION.md
Find the right package for your operating system by clicking on "Assets" below.
Packages were built on the following OS-versions. DiscoDOS most probably will require at least these versions to run properly:
- Windows 10 (build 18363)
- maOS 10.13.6
- Ubuntu Linux 18.04.4 LTS
Please report back wether it runs on your system or not. Thanks a lot for your help!