Skip to content

v0.20.0 (BREAKING CHANGES, ACTION REQUIRED)

Compare
Choose a tag to compare
@alexjustesen alexjustesen released this 07 Jun 12:14
· 98 commits to main since this release
50b4a00

Warning

This release requires you to change your container's image and make changes to your environment variables for Speedtest Tracker to continue to function and receive updates.

Important

If you have an problem which resulted from this release please open an issue with as much detail as possible, if you have a question or need clarification use the linked discussion topic.

Action Items

With the switch to using environment variables for the application's general settings action is required to update your environment. Below are all the changes that you might need to make.

🐋 Docker image

To get this update and future updates you will need to switch to using LSIO's images, as of v0.20.0 I am no longer building mine. Details on how to switch can be found here #1117.

🔑 Application key

The app key is no longer generated when you start the container and should always be set in your environment variables. You can generate a key here: https://speedtest-tracker.dev.

- APP_KEY= # use the entire base64 string including the "base64" prefix

⏰ Timezone

I think I finally have a better solution for handling timezones, especially for those of you that like to watch the world burn and your database isn't set to UTC.

My database is set to my local timezone

Set APP_TIMEZONE AND DISPLAY_TIMEZONE to your local timezone, this ensures the application writes the correct timestamp to the database and then displays it.

This was tested with both MySQL and Postgres with the container's TZ set to the same timezone.

- APP_TIMEZONE=America/New_York
- DISPLAY_TIMEZONE=America/New_York

My database is set to UTC / I don't know or use SQLite

Set DISPLAY_TIMEZONE to your local timezone, this ensures the application will display timestamps correctly.

- DISPLAY_TIMEZONE=America/New_York

🐇 Speedtests

Speedtest settings have also been moved to environment variables, SPEEDTEST_SCHEDULE, SPEEDTEST_SERVERS and optionally PRUNE_RESULTS_OLDER_THAN should be added to your configuration.

- SPEEDTEST_SCHEDULE= # can be represented as a cron schedule same as before.
- SPEEDTEST_SERVERS= # you can add one or many servers separated by a comma (i.e. "123456,654321,987654").
- PRUNE_RESULTS_OLDER_THAN=0 # the default is 0 which disables result pruning, this value is in days.

How do I find a list of servers now?

There is a new CLI command in the container that you can run which will return a list of the "best" speedtest servers based on your location. To get the list follow the steps below:

  1. Open a terminal into the running speedtest container
  2. Navigate to the app directory cd app/www
  3. Run php artisan app:ookla-list-servers or provide a search term as the first argument php artisan app:ookla-list-servers "frontier"
  4. Using the list provided you can add the server IDs to the SPEEDTEST_SERVERS environment variable

I am working on a centralized, searchable and community driven list of servers which will be available later this summer.

What's New

What's Changed

Full Changelog: v0.19.0...v0.20.0