Skip to content

Releases: a-catgirl-dev/encore

v0.2.0-canary.4: we are back

13 Mar 00:39

Choose a tag to compare

Pre-release

how long was i out?

highlights

  • added shuffling
  • configuring keybindings and volume levels
  • multiple looping modes (song, playlist)
  • minor bugfixes, mostly pertaining to synchronisation
  • removed herobrine

What's Changed

Full Changelog: v0.2.0-canary.3...v0.2.0-canary.4

canary 3 :fire:

07 Feb 23:26

Choose a tag to compare

canary 3 :fire: Pre-release
Pre-release

oh, how long was i out for?

ever since mpris, i've been able to dogfood encore a lot more. development might get faster, or it may not1. time will tell.

Highlights

  • Mpris support added. You may now control Encore via media keys (and also see what song is playing). #33
  • Bug fixes. It has been such a long time, that i've forgot them. (looping, premature exit... and probably a bit more)
  • mp3 memory leak fixed... this makes the binary larger because we stopped using minimp3 lib. #30
  • Refactors. A lot of them.

What's Changed

  • fix: fix passing multiple audio files as args by @WilliamAnimate in #18
  • fix: looping doesn't work, but now it does by @WilliamAnimate in #19
  • Arguments feature update by @WilliamAnimate in #28
  • fix memory leak pertaining to mp3 decoding by @WilliamAnimate in #30
  • Fix premature exit by @WilliamAnimate in #31
  • feat(v0.2.0-canary.3): mpris/media control by @WilliamAnimate in #34
  • Threading abstraction by @WilliamAnimate in #37

Important

Windows support has been deprecated in favor of usable and good alternatives such as MacOS and Linux2. See my rationale below3.

Full Changelog: v0.2.0-canary.2...v0.2.0-canary.3

  1. lmao, obviously it'll get slower, i have math this semester and it is no joke.

  2. Not GNU/Linux... i am referring to Linux in general; Encore does not need the GNU Coreutils to run.

  3. Windows has always been a major hazard for Encore. On the very first commit that added Windows CI, the build doesn't work. I had to create a custom override to not use minimp3 when building for Windows. I also had to revert one of the changes that somehow exclusively broke Windows, whereas MacOS and Linux still works.

v0.2.0-canary.2 - "the boring update"

13 Nov 04:22

Choose a tag to compare

Pre-release

school and life are fundamentally incompatible.1 That's why this update is extremely underwhelming (little work on my side)

Total code changes are rather large. This canary ver. updates to the latest version of rodio (v0.20.1)

echotune rebranded to Encore! If you use the configuration feature, rename ~/.config/echotune -> ~/.config/encore,. etc.

What's Changed

  • Continuous integration by @pparaxan in #12
  • Updated Rodio
  • Passing in multiple audio files as parameters is now allowed in b8ae267
    Encore can now be used like encore /path-to-audio1.mp3 /path-to-audio2.mp3 and it'll automagically switch to playlist mode.
  • Rebranded from echotune to Encore.

New Contributors

Full Changelog: v0.1.0-rc3...v0.2.0-canary.2

  1. Imagine being told, to write a full monologue about a book in ancient "english". You are expected to memorize the entire thing, bring costumes and props, and you have 4 days to work on it. the same course, you have to read your independent study novels, and answer questions. That takes you two days. So you've got two days to do all of that. And its not a drama/theatre arts course. Its English.2

  2. My school calls the usage of AI when not permitted "academic dishonesty", but when you give people only four days total (two days realistically), to work on something, you're just guaranteeing the usage of some sort of AI to write the script.

v0.2.0-canary.1

05 Nov 01:26

Choose a tag to compare

v0.2.0-canary.1 Pre-release
Pre-release

the v0.2.0 release cycle has begun. a bunch of small changes, but has long reaching impacts.

What's Changed

  • refactor receive system by @WilliamAnimate in #9
    this change improves performance, reduces power consumption and lowers system overhead of the echotune application and reduces perceived latency by reducing latency (literally). echotune versions ^0.1.0 spin and try to check if any values has been received every 50ms, essentially busy-waiting. The new solution does not busy-wait and blocks threads.
  • update input system by @WilliamAnimate in #13
    allows echotune to be built for windows by not depending on unix-specific APIs, and also makes the input part of the code way more clear
  • refactored some code, like moving macros to macros.rs in 3442f1b
  • fixes broken upwards scrolling and semi-janky bottom scrolling in 7d0504e
  • windows is now supported, albeit the legacy cmd.exe application does not support escape codes and windows terminal is really slow.1
  • readme changes to better advertise echotune to you ;)

Special thanks

@pparaxan wrote the CI system that has been merged into the mommy branch in #12!

Note

this tag was made on the staging branch instead of being merged onto master/main/trunk/god/prod/mommy. this is possibly not standard practice. /shrug

Full Changelog: v0.1.0-rc3...v0.2.0-canary.1

p.s. i forgot to update the version in cargo.toml again... silly me >~<

  1. who would've thought windows terminal is slow? the same machine running linux takes only ~50us to redraw but windows terminal takes almost >=1000us (1ms)

floating point imprecision is NO MORE :fire: :fire:

02 Nov 20:29

Choose a tag to compare

i asked bob the builder to fix my FPU and he said "i can't fix that bug prone idiomatic piece of shit trash"...

so instead of fixing it properly i just round it up

Full Changelog: v0.1.0-rc2...v0.1.0-rc3

fix high severity bug in v0.1.0-rc1

01 Nov 23:44

Choose a tag to compare

title says it all. fix high severity bug in v0.1.0-rc1

the fix requires changes on multiple repositories that i've forked. see the submodules. the security vulnerability should not have affected echotune at all, but my cargo-audit audit doesn't look as nice with the vulnerability.

see release https://github.com/WilliamAnimate/echotune/releases/tag/v0.1.0-rc1

Full Changelog: v0.1.0-rc1...v0.1.0-rc2

v0.1.0-rc1

01 Nov 22:37

Choose a tag to compare

echotune v0.1.0-rc1 before HLX announcement thats crazy

What's Changed

  • refactor: use in-house solution for determing file formats by @WilliamAnimate in #5
  • add Rodio as submodule by @WilliamAnimate in #7
  • fix(crashes): crashes pertaining to underflows by @WilliamAnimate in #8

Okay let a human write what's changed

  • i edited the source code
  • i edited how dependencies are handled slightly, namely, make rodio a submodule instead of cloning from a remote repo
  • i ditched the file-format crate because its big
  • i reduced echotune's binary size "ten fold" (~512 kb -> 277kb)
  • fixed all crashes1
  • removed herobrine
  • added madeline from celeste2

Important

this says rc1 but its not actually very stable.

Important

the attached Cargo.lock file should be used if building fails. I've removed it from the tree because merge conflicts suck.

Caution

This copy of echotune is vulnerable to slice-deque's CVE-2021-29938! Make sure you build echotune with panic="abort" set in Cargo.toml, to be exempt from stack unwinding double free problem.
EDIT: upon further inspection, we're exempt from this problem: RustAudio/rodio#456. I will try to fix this so cargo-audit doesn't scream.

EDIT 2: the aforementioned CVE has been fixed in v0.1.0-rc2.

Full Changelog: v0.1.0-canary-4...v0.1.0-rc1

  1. depends on how you define a crash in the Rust Programming Language

  2. well, no, not really. i didn't.3

  3. wtf, a footnote inside a footnote? is this even allowed?4 well who cares, but i'll do it in ^0.2.0 maybe

  4. excerpt from a footnote from the https://www.philippdettmer.net/immune book

v0.1.0-canary-4

19 Oct 01:50

Choose a tag to compare

v0.1.0-canary-4 Pre-release
Pre-release

"all known bugs fixed"

What's Changed

  • feat: run audio on main thread by @WilliamAnimate in #2
  • Improve playlist parsing by @WilliamAnimate in #3
  • fix a bug where after the last song in the playlist has been played, it will not switch away from alt buffer by @WilliamAnimate in 3b56a2f
  • and other small refactors by @WilliamAnimate in [obama giving obama a medal meme]..,.

"New" "Contributors" (repo owner)

  • @WilliamAnimate made their "first contribution" in #2

Full Changelog: v0.1.0-canary-3...v0.1.0-canary-4

hotfix for v0.1.0-canary-2

11 Oct 19:13

Choose a tag to compare

Pre-release

fixes echotune always exiting after playing one song bug. a related .patch file is available below that can be applied to commit 2b64c7d1a129e1c316843209e8e0e90871122073 or v0.1.0-canary-2

(silly me forgor to change Cargo.toml hehe too late tho)

v0.1.0-canary-2

11 Oct 01:15

Choose a tag to compare

v0.1.0-canary-2 Pre-release
Pre-release

we've got echotune v0.1.0-canary-2 before gta 6 💀 🔥

what's new?

  • volume controls;
  • seeking (revolutionary, i know);
  • automatically exiting upon finishing playlist or song;
  • single song mode (pass the only argument to an audio file);
  • documentation;
  • a ton of code refactoring;
  • and more i've probably forgot. consult the git log leading up to this monumental event of canary 2 actually dropping before i drop dead

fixed

a ton of crashes (panics) pertaining to playlist out of bounds read

Full Changelog: v0.1.0-canary-1...v0.1.0-canary-2