Changelog History
Page 1
-
v4.4.0 Changes
June 10, 2020π This new version of Koel comes with several new features, bug fixes, and improvements, most notably:
π Feature: You can now upload directly from the web interface if logged in as an admin and have set the media path. Just choose "Upload" from the sidebar menu and drag media files or folders into the drop zone.
Under the hood, Koel will upload your media files into a
%media_path%/ __KOEL_UPLOADS__
folder on the server and update the client's data on the fly. Notice that this feature is still in beta, so please let us know if you encounter any problems.π Feature: You can upload new artist images and album covers by dragging a file into the artist/album item, like this:
π Improvement: Artist/album view mode switch now uses proper radio buttons instead of
<span>
's/<div>
's.π Improvement: Playlists are now ordered properly in the sidebar
π Fix: Songs should now be queued in the correct displayed order when Alt/Option-click the play button
π Fix: Album/artist list screens should now properly initialize infinite scrolling
π Fix: The "Add Lyrics" link is now not available if there's no song in play
π Fix: webpack now emits properly-hashed chunk names in production builds
π Improvement: The whole JavaScript codebase has been converted into TypeScript.
β¬οΈ Upgrade
π Make a backup
β Run these commands
git pull git checkout v4.4.0 git submodule update --init --recursive composer install php artisan koel:init
β¬οΈ Downgrade
βͺ Restore your backup.
-
v4.3.1 Changes
April 23, 2020β‘οΈ v4.3.1 fixes the bug of Koel playing with no sound on iOS, along with the ability to trigger updating lyrics right from the Lyrics panel. To upgrade:
- Create a backup
Run these commands
git pull git checkout v4.3.1 git submodule update --init --recursive composer install php artisan koel:init
-
v4.3.0 Changes
April 21, 2020π The next minor version of Koel, which comes with new features, improvements, and bug fixes and usual. And, in case you haven't noticed, Koel now has its own domain!
π New Features and Improvements
- π Media thumbnail moved to the play button (or "play orb" if you will)
- Reduce the progress bar's height. Its click area (along with that of other controls) is actually increased, allowing easier interaction
- Song items on homepage now react to context menu and drag-drop actions
- You can now play a song list in the current order by clicking the "All" button while pressing the Alt (Option) key
- You can now right-click anywhere on the footer while a song is playing (or paused/stopped) for contextual commands
- π Speaking of context menus, now they have a dark theme that matches better with the overall interface
π Fixes
- Hotkeys (F, space etc.) now work even when the progress bar has focus
- Remote control app is now back
- π Fixed a racing condition that might cause logging in to fail with valid credentials
- For development, hot-reloading now works again
β¬οΈ To upgrade:
- Create a backup
Run these commands
git pull git checkout v4.3.0 git submodule update --init --recursive composer install php artisan koel:init
-
v4.2.2 Changes
December 02, 2019π This version includes several bug fixes and improvements:
- π Fixed an issue with SongStartedPlaying event dispatching
- π Fixed and improve (global) hotkey integration
- The volume control is now shown on hover only, saving some space
- A "download current song" button is added into the footer bar
β¬οΈ To upgrade:
- Create a backup
Run these commands
git pull git checkout v4.2.2 git submodule update --init --recursive composer install php artisan koel:init
-
v4.2.1 Changes
November 29, 2019This is a bug fix version. Specifically:
- π The bottom support bar now respects user preferences
- π
manifest.json.example
is added. To enable PWA support for Koel, copy this file intomanifest.json
and modify its content accordingly.
β¬οΈ To upgrade:
- Create a backup
Run these commands
git pull git checkout v4.2.1 git submodule update --init --recursive composer install php artisan koel:init
-
v4.2.0 Changes
November 28, 2019This version comes with several changes and improvements:
- π The problem with context menu being off-screen is now fixed
- Queuing already queued song(s) now behaves correctly
- The translucent, blurred album art overlay is now an option in the Profile screen. Consider turning it off if you notice high CPU usage.
- Koel should now be compatible with Node 12.x
- π¨ As usual, more optimization and refactoring underneath
β¬οΈ To upgrade:
- Create a backup
Run these commands
git pull git checkout v4.2.0 git submodule update --init --recursive composer install php artisan koel:init
-
v4.1.1 Changes
October 26, 2019π This version comes with a couple of fixes and improvements, most notably:
- π Fixed the bug where koel is broken on mobile browsers (#1111)
- β Added the ability to change the admin password from console with
php artisan koel:admin:change-password
- π¨ More tests, refactorings, and optimizations on the client side
β¬οΈ To upgrade:
- Create a backup
Run these commands
git pull git checkout v4.1.1 git submodule update --init --recursive composer install php artisan koel:init
π Aaaand it's done! See you next time!
-
v4.1.0 Changes
October 09, 2019This version comes with several changes:
- β¬οΈ Downgrade getID3 to
^1.9
to fix an annoying regression (#1078) - π Make
DB_DATABASE
config forsqlite-persistent
driver absolute (technically this is a breaking change, but it's simple enough to migrate so I'm not bumping a major version) (#1099) - Songs are now counted as "played" only after a 25% threshold (i.e. if you've listened past 1 minute of a 4-minute song) (#1087)
- π Fix a bug with Albums/Artists screens not scrollable on extra-large screens (#1086)
- π A couple of bug fixes and performance improvements
β¬οΈ To upgrade:
- Create a backup
Run these commands
git pull git checkout v4.1.0 git submodule update --init --recursive composer install php artisan koel:init
If you're using
sqlite-persistent
driver, replace the value ofDB_DATABASE
in.env
file with the full path to your database file.π That's it! See you next time!
- β¬οΈ Downgrade getID3 to
-
v4.0.0 Changes
September 10, 2019β¬οΈ Here you go, the long-due 4th major version of Koel! This version comes with a LOT of changes, fixes, and improvements, as you may have expected. But before you get too excited and jump ahead with the upgrade, one important thing:
Koel now requires PHP >= 7.1.3
β¬οΈ Yes. Koel v4.0.0 is developed on top of Laravel v5.8.x, which requires PHP 7.1.3 and up. So if your PHP version is lower than that, you'll need to upgrade it prior to proceeding. Also:
Koel's codebase now makes use of Git submodules
In an effort to unify the code between the web and the desktop app versions of Koel, I've extracted the interface (the client code, written in Vue) into its own repository (a submodule). Essentially, this only means you'll need to run a slightly different command to init or update the codebase, so fear not.
π Changes
So what's new? Well, quite a few. This version of Koel comes with:
An accessibility overhaul. Koel is now much, much more friendly to visual-impaired users.
The back-end part rewritten almost from scratch for better code quality ( 9.81 on Scrutinizer currently), readability, and maintainability
π API docs, finally!
Smart playlists! You can now specify a set of rules (title must include a certain word and/or length must be greater than 10 minutes cough Dream Theater cough for example) and your playlist will contain only songs that meet the rule(s).
A dedicated, centralized "Recently Played" list. Previously, this list only consisted of up to 7 last played songs on the current device. Now Koel remembers all songs you've played β no matter what device they were played on β and put them in a first-class "Recently Played" playlist.
An extra cool visualizer.
I'll leave it to you to figure out how to toggle it, though ;)
A more attractive and consistent equalizer.
β‘οΈ Global hotkeys being more, erm, global. You don't need to set focus into Koel before triggering the hotkeys anymore. And if you use Chrome, media keys are supported truly globally, which means you don't even need to have the browser window focused to control Koel.
On-demand playlist loading. A playlist's content is now only loaded and populated if you select it in the sidebar or enter its URL directly. This means a lighter and faster bootup time for Koel.
π Sorting supported in Queue screen, because why not
π Code splitting from scratch. Most of Koel's client components are now loaded on demand, which greatly improves loading time and performance.
A zoom control for the Lyrics pane, allowing you to zoom the text in and out to cater for your visual needs
An "About" dialog
π PWA support
π Better error handling during installation. If the artisan
koel:init
command fails for any reason at any step, Koel will stop and let you know instead of silently moving ahead like before.More consistent auto-playing
π Support for SQLite (thanks @SahAssar!)
HTTPS working properly behind reverse proxies
π¨ Countless refactors, bug fixes, and minor improvements. Truly countless.
β¬οΈ Upgrade
To upgrade, first make a backup of your database and the application code. I know I always said that, but this time it's even more critical because hey, we have a major version here folks! Better be safe than sorry.
Then, after the backup is done , execute these commands from the root directory:
git pull
git checkout v4.0.0
β‘οΈ 3.git submodule update --init --recursive
composer install
php artisan koel:init
- That's about it. Expected more? Sorry to disappoint.
When Things Go Southβ¦
βͺ β¦restore your backup.
Till next time!
-
v3.7.2 Changes
January 28, 2018π This is to bump the version, which I forgot to do in the previous release :(. To update:
git fetch git checkout v3.7.2