Fixes:
-
Fixed writing polyphonic pressure events in
MidiFileWriter
(#16).Thanks to Jared Boone (@jboone) for the fix.
Project updates:
- Oldest supported Python version is now 3.8.
Project updates:
- Switched from
setuptools
to PEP-517-compatible build setup usinghatchling
. - Removed Python 2 support (now requires Python >= 3.7).
- Removed
six
dependency. - Removed requirements files.
- Converted README, LICENSE and CHANGELOG to Markdown format.
- Added automatic testing and deployment of source distribution and wheel to PyPI via GitHub actions.
Changes:
- Made
track
argument toBaseMidiEventHandler.start_of_track
optional. - Split
MidiFileWriter
into base class and event handler sub-class. Base class handles event serialization and output. MidiSequence
instances now save tempo and time/key signature events.MidiSequence.fromfile
can now accept a custom handler class/instance.- Added command-line script
miditk-mid2syx
. - Updated examples and removed Python 2 compatibility idioms.
Fixes:
- Fixed writing sysex message events in
MidiFileWriter
(#7). - Removed unused
dispatch_controllers
attribute inBaseMidiEventHandler
. - Fixed
MidiSequence
example in readme and added example script. - Minor fixes: removed unused import; added geany project file to git ignores; fixed code formatting issues.
- Reformated code with
black
andisort
.
- Added example script to convert a type 1 MIDI file into a type 0 format file.
- Moved previously private
MidiEvent
class tomiditk.smf.api
module and exposed it inmiditk.smf
module name space and improved and fixed several aspects of theMidiEvent
class. - Fixed parsing of polyphonic pressure events.
- Fixed output for polyphonic pressure events in
PrintingMidiEventHandler
. - Fix time keeping in
ObjectMidiEventHandler
for multi-track files: resetcurrent_time
attribute when new track starts. - Fixed:
BaseMidiEventHandler
used wrong handler method name for sysex messages. - Updated base/dev requirements.
- Fixed missing string formatting args in
PrintingMidiEventHandler.key_signature
method. - Added
example_program_change_map.py
script to examples. - Ensure support for Python 3.7.
- Removed Cython version of
miditk.smf.converters
module (miditk.smf._speedups
).miditk-smf
now only requiressix
. - Fixed
tox.ini
to work on Windows too. - Improved and updated readme file.
Initial release