Skip to content

Releases: Bubobubobubobubo/sardine

v0.4.0

18 Jul 22:54
e9e1434
Compare
Choose a tag to compare

Hello everyone. It's been a long time since Sardine received an official update. I'm taking advantage of a refactoring we've undertaken with @thegamecracks to set the record straight. This version is Sardine v0.4.0 that sums up all the changes that happened on the repo since last december.

Project structure and refactoring

Sardine is now a complex project. You need the library for sure but you also need a code editor to play efficiently and that release is bringing a lot on that side. Part of the internal refactoring is the consequence of how the project has naturally evolved in the few past months.

  • Sardine is the main repository. It contains the Sardine Library but also the Sardine Documentation.
    • The documentation is automatically built on every commit, allowing small edits and encouraging contributions.
  • Sardine Web is now a separate repository. It contains the default text editor.
    • once installed, the editor will be available through the sardine web command, just like before.
  • Sardine VSCode is another option for those who prefer an editor that is easy to setup and configure.

The project structure has evolved a lot. Sardine is now split between sardine, the interpreter, and sardine_core, the Python library imported by that interpreter for each session. As stated above, the client and server folders that previously contained the web editor are now gone and live happily in their own repository. There are new dependencies to account for the introduction of a fork of Vortex.

New features

What's Changed

Read more

v0.2.1

14 Dec 02:11
Compare
Choose a tag to compare

Summary

This release introduces multiple improvements to runners/players and adds support for CPython 3.11, and is also the first release to come out on PyPI as the sardine-system package!

Users migrating from v0.2.0 or earlier will need to uninstall the sardine package, due to the name being changed.

Changelog

  • Fixed Sardine not being properly packaged with the appropriate fishery and sardine modules

  • Improved interval calculations of AsyncRunner to reduce drifting over a long runtime

  • Fixed the sleep() function not affecting senders like they used to (#128)

  • Updated players to use a persistent iterator counter, allowing patterns of the same length to be pushed without abruptly starting from the beginning (#130)

  • Increased tolerances for BaseClock.get_beat_time() to mitigate potential "double/rapid iterations" occurring particularly on unix systems (#134)

  • Updated dependencies so users no longer have to go through compilation of C++ extensions

    3.11 support was previously not possible due to the original LinkPython package not being compilable on 3.11. C++ build tools were also required because both LinkPython and python-rtmidi did not have any prebuilt wheels uploaded for 3.10 - 3.11. With the current solution now, installing Sardine on both 3.10 and 3.11 can be achieved without having to download any build tools to compile the two packages from source.

All commits made since v0.2.0: v0.2.0...v0.2.1

v0.2.0

08 Dec 23:22
e5191ba
Compare
Choose a tag to compare

This version is a complete Sardine rewrite. See #122 for the complete changelog. Many thanks to @thegamecracks for the work done on the core sardine internals.

What's Changed

Full Changelog: v0.1.0...v0.2.0

v0.1.0

08 Dec 22:35
fbb3174
Compare
Choose a tag to compare

This is the last version of Sardine v0.1.0 before the rewrite. It has been released for archival purposes.