Musify

Latest version: v1.2.5

Safety actively analyzes 710445 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 5

1.1.4

Added
-----
* :py:class:`.LocalPlaylist` now allows setting of the ``path`` property
* :py:class:`.LocalLibrary` now allows setting of the ``name`` property. Added ``name`` as an init parameter too.

Changed
-------
* :py:meth:`.LocalLibrary.merge_playlists` now updates the path of new playlists added to the library to be relative
to the library's ``playlist_folder``

1.1.3

Fixed
-----
* When given an empty :py:class:`.M3U` playlist file, produces expected result i.e. an empty playlist.
Previously always added all given tracks to playlist when calling :py:meth:`.M3U.load`

1.1.2

Changed
-------
* :py:meth:`.File.get_filepaths` now ignores hidden files.
* Replace os.makedirs with Pathlib implementation of ``mkdir``q everywhere.

1.1.1

Changed
-------
* Update aiorequestful version to 1.0

1.1.0

Changed
-------
* :py:class:`.ItemDownloadHelper` only ever takes the first field when the singular name of a field is given
and many values are available for that field. e.g. only ever takes the first artist when multiple artists are present
and the requested field is 'artist' and not 'artists'
* :py:class:`.RemoteCollectionLoader` now inherits from :py:class:`.MusifyItem` interface.
The class already implemented all necessary methods for this interface and was always designed
to be an implementation of the :py:class:`.MusifyItem` interface.
* Rename ``print`` method on :py:class:`.MusifyLogger` to :py:meth:`.MusifyLogger.print_line`

Removed
-------
* Implementation of REST API handling including all cache + authorisation implementations.
Separated this off to a `new package <https://github.com/geo-martino/aiorequestful>`_.
* Moved all enum definitions to ``types`` modules and removed all ``enum`` modules.

Documentation
-------------
* Fix references to non-existent packages + add missing packages in API reference index

1.0.2

Added
-----
* Expanded error message on :py:class:`.DynamicProcessor` processor lookup exception.
* Improved logging of bad responses on :py:class:`.RequestHandler`
* ``wait_max`` time to cap wait time between requests for :py:class:`.RequestHandler`
* Add log on :py:class:`.CachedSession` for when either a `cache hit` or a `HTTP request` happens.

Removed
-------
* ``limiter_deduplication`` attribute from print output on :py:class:`.XAutoPF`

Fixed
-----
* Bug in :py:class:`.XMLLibraryParser` which would not read 'Playlists' keys.
* Moved 'check api' logic later when deleting playlists in :py:class:`.RemoteItemChecker`
to ensure API is not checked on close when checker has not actually run.
* :py:class:`.RequestHandler` now handles wait and backoff logic asynchronously.
* Tracks on playlists from the JSON output of :py:class:`.LocalLibrary` now display correctly.
Previously showed 'null' for every track.

Page 3 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.