Skip to content

Releases: hydrabank/songfish

πŸ”– 2.0 - The 2022 Summer Update

18 Jun 01:31
64ba514
Compare
Choose a tag to compare

Hello, everyone! It has been a very long time since I've last updated Songfish. The 2022 Summer Update - or, by its' more informal name, the Translation Update: Part 1 - is a relatively minor yet monumental update for the future of Songfish and new features coming to it. While there were plans for versioning scheme changes during the early stages of this update's development, these plans have ultimately been scrapped due to the increased complexity of migrating away from semVer and the design of the new scheme in general.

Localizations: what's this about?

As all of you may have observed in this repository's commit history, I have been preparing for a large update to Songfish since January - internationalization. While I could have finished this update sooner, there were multiple factors which played a role in why I've decided to delay this update; a combination of new projects, myself finishing school, contracts for other companies, along with other factors in my own personal life. However, the primary reason why I've waited so long is so I could properly work with new Discord localization features - Discord.js had not been updated in some time with these necessary additions. Now that most of these required features have been included in the 13.7/13.8 branches, I have decided to release 2.0 in order to prepare for new upcoming updates.

At the moment, six languages have been partially translated - English, French, German, Portuguese, Turkish, and Arabic. Five of these six languages can be accessed as of right now, with the sixth (Arabic) currently not accessible (awaiting Arabic locales for Discord). While five are currently accessible, only English/Portuguese and Turkish are accurate; While French is sort of accurate, my sub-par writing and comprehension skills result in strings that do not make sense or sound gramatically broken - German is in an unknown state at the moment, as it has been translated by GitHub's Copilot AI.

As for localization progress - while most commands have been mostly translated, there are still a few that have not been completely translated. At the moment, this includes play/playnext - arguably the most important commands for Songfish (and any music bot in general). While 2.0 will not include translations for these commands at launch, 2.1 will complete any remaining incomplete strings.

Why is Songfish bumping to version 2?

Another major discrepancy that all of you may have noticed is the lack of any meaningful architectural change for a major version bump. While this update does not bring any aforementioned architectural changes, it is an essential stepping stone as version 3 will be a major overhaul and possibly a complete rewrite of the entire bot. The codebase is currently a complete mess due to the addition of new features that dramatically reshape the bot in ways that its' base architecture is currently not designed to handle, along with myself being lazy in general with the implementation, structure, and cleanliness of my code. The 2022 Summer Update and the second part of the Translation Update will build a base architecture for what will eventually be version 3, as LocalizationManager will be an essential part of the new codebase and how users interact with the bot in general. Adding new translations and pre-implementing these systems will allow us to get some of the most time-consuming work out of the way and will also help with monitoring translation quality.

Major commits and issues (in a sort-of chronological order)

Commits / changelog

  • Add LocalizationManager and initial strings (73b0d67)
  • Add Neverland's Portuguese translations (#1)
  • Add Mustafa's Turkish translations (#3)
  • Add Lavalink debug for errors (c5dee2d)
  • Bump most existing dependencies to latest (e9ed1ab)
  • Polish currently-existing translations and add some new minor translations (f110525)
  • Polish the aforementioned LocalizationManager (4b3cb63)
  • Implement i18n for most commands (b58c0c5)
  • Versioning tag (ec7c03e)

Unresolved Issues

  • Complete remaining commands that have yet to be localized (ETA: when it's ready, possibly this autumn?)
  • Lavalink issues in production environment (#4)

What's next?

I have lots planned for Songfish, especially with version 3. However, I don't plan to develop and release these new features and the massive overhaul in the immediately-near future due to things going on with my day-job and personal life. However, I plan to start work on version 3 once Discord.js version 14 is finalized and drops in the (hopefully) near-future.

Merci beaucoup for using Songfish, everyone. Au revoir for now, mes amies.

22.0.1.0-pre1

07 Jan 06:32
Compare
Choose a tag to compare
22.0.1.0-pre1 Pre-release
Pre-release

Full Changelog: 1.1.1...22.0.1.0-pre1

πŸ”–πŸ› 1.1.1: Simple oversight caused Songfish to not recognise Spotify songs in certain conditions

01 Nov 01:20
Compare
Choose a tag to compare

Changelog

A minor hotfix. If a Spotify track is the first audio queued up in a guild, and the audio is sourced from Deezer, the audio will not have the isSpotify property attributed to it. This oversight was fixed for YouTube-sourced audio, but was not added to Deezer-sourced songs. This has been fixed in 1.1.1.

πŸ”– 1.1.0: Spotify (beta)!

01 Nov 01:13
Compare
Choose a tag to compare

Changelogs

  • Add preliminary Spotify support (Limitations: Spotify tracks only for now; playlist, artist, and album support is coming in the future)
  • Minor improvements with error handling
  • Other QoL features and fixes (queue length)

πŸ”– Initial release

12 Oct 03:46
Compare
Choose a tag to compare
1.0.0

πŸ”– Forgot to mention, this is the first official release of Songfish!