- Re-add responsive font sizing for
:root
inwwdtm-theme
with a range of 14px and 16.5px
- Remove responsive font sizing for
:root
inwwdtm-theme
- Upgrade ruff from 0.7.0 to 0.7.4
- Rename "Best Of Repeats" to "Repeat Best Ofs" pages and routes
- Add a redirect for
/shows/best-of-repeats
to point to/shows/repeat-best-ofs
- Upgrade wwdtm from 2.13.0 to 2.14.0
- Add missing tests for Best Of, Repeat Best Of and Repeat Shows pages
- Adding Best Of, Best Of Repeat and Repeat Shows pages
- Initial support for Python 3.13
- Upgrade wwdtm from 2.12.1.post0 to 2.13.0
- Upgrade black from 24.8.0 to 24.10.0
- Upgrade ruff from 0.6.9 to 0.7.0
- Increase minimum pytest version from 8.0 to 8.3 in
pyproject.toml
- Add
py313
totool.black.target-version
- Replace all references of
named_tuple=
in database cursors todictionary=
due to cursors usingNamedTuple
being marked for deprecation in future versions of MySQL Connector/Python
- Upgrade wwdtm from 2.11.0 to 2.12.1.post0
- Upgrade black from 24.4.2 to 24.8.0
- Upgrade pytest from 8.1.2 to 8.3.3
- Upgrade ruff from 0.6.7 to 0.6.9
- Add initial pytest coverage reporting using
pytest-cov
, which can be generated by running:pytest --cov=app tests/
- Fix ordering of locations due to a bug found in
wwdtm
version 2.10.1 - Change ordering of locations for
/locations/all
to respect the value ofsettings.sort_by_venue
inconfig.json
- Fix issue where "N/A" is not shown when a location does not have any recordings
- Upgrade wwdtm from 2.10.1 to 2.11.0
- Upgrade ruff from 0.5.1 to 0.6.7
- This non-release does not include any application changes. The version number presented by the application will still be 6.0.1.
- Removal of the
serve
NPM package as it is not used and one of its dependencies requires a package that has a high severity vulnerability.
- Fix an error caused by checking the wrong variable for
panelists.routes.details()
- Update generated Bootstrap CSS with latest changes
- Set
max-locals
to 20 for Pylint
- This non-release does not include any application changes. The version number presented by the application will still be 6.0.0.
- Contents of the
scss
directory has now been migrated to a new Git repository, wwdtm-themes andscss
is now a Git submodule reference.
- Frontend code refactor due to switching from Materialize to Bootstrap
- Replacing Materialize frontend toolkit with Bootstrap
- Replacing Materialize Icons with Bootstrap Icons
- Refactor the frontend structure to use Bootstrap frontend components and conventions
- Include the required IBM Plex web fonts with the application to remove use of Google Fonts
- User interface changes
- Change the behavior of the main navigation to combine navigation links into a single list that are listed in the top navbar on
xl
screen size or in an off-canvas side nav on smaller screens - Improve legibility and readability in font size changes and increased color contrast when using the dark mode color theme
- Include a color theme toggle in the main navigation to allow the reader to switch the theme on-the-fly
- Remove the rightwards arrow included after links in the main section of the page
- Change wording of Appearances and Recordings in respective details pages and provide additional information via Bootstrap tooltip
- Add Bootstrap tooltip to Not My Job guest scoring exception marker
- Render show description and notes text as Markdown
- De-emphasize the DB ID badge by changing the background color to blend in, instead of contrasting, with the background
- Remove "Home" from all navigational breadcrumbs
- Remove zero-padded dates from navigational breadcrumbs
- Change the behavior of the main navigation to combine navigation links into a single list that are listed in the top navbar on
- Fix warnings and errors reported by pylint
- Fix an issue where
use_decimal_scores
was not being passed through to the recent shows view - Add an experimental
block_ai_scrapers
config key that will block known AI scraping and crawling bots (default: false)
- Upgrade gunicorn from 22.0.0 to 23.0.0
- Replace Materialize CSS 1.2.2 with Bootstrap 5.3.3
- Existing Materialize CSS and JS files will be preserved to prevent cached versions of the application from breaking
- Materialize-related files will be removed in a future minor release
- Update references to GitHub repository to point to stats.wwdt.me instead of
stats.wwdt.me_v5
.
- Move web analytics tags out of
base.html
intohead.html
- Add Umami
script
tag to errors base template
- Correct Umami
script
tag properties
- Add support for Umami web analytics via
settings.umami_analytics
config object with the following keys:
Config Key | Description |
---|---|
_enabled |
Set value to true to enable adding Umami script tag (default: false ) |
url |
URL of the Umami analytics script |
data_website_id |
Umami Site ID |
data_auto_track |
Set value to false to disable auto event tracking (default: true ) |
data_host_url |
Override the location where Umami data is sent to |
data_domains |
Comma-delimited list of domains where the Umami script should be active |
- Upgrade wwdtm 2.10.0 to 2.10.1
- Upgrade ruff from 0.3.6 to 0.5.1
- Upgrade black from 24.3.0 to 24.4.2
- Upgrade pytest from 8.1.1 to 8.1.2
- Change the footer font color to remove alpha transparency to improve readability
- Add support for host, panelist and scorekeeper preferred pronouns via a label (aka tag) next to the corresponding ID label in their details page
- Upgrade wwdtm from 2.9.1 to 2.10.0, which requires Wait Wait Stats Database version 4.7 or higher
- Add a link next to the location coordinates that scrolls down to the location map in single location details view
- Change the z-index for the map control area to
500
to prevent the controls from appearing over slide-out navigation or pop-up menus - Update styles for Leaflet to inherit font-family used for the rest of the application (IBM Plex Sans)
- This version requires version 4.6.1 of the Wait Wait Stats Database, which includes a new
ww_postal_abbreviations
table that is required - Adding a new section to the location details page that displays a map using Leaflet.js, OpenStreetMap and location longitude/latitude coordinates
- Add a new config key
settings.display_location_map
with a default offalse
as a feature flag for the above new feature - Move the city and state from the
h2
heading to a new "Located In" field - Display full state, province or territory name rather than two-letter abbreviation in locations list or in show details page
- Display decimal latitude/latitude coordinates in location details page with DMS coordinates in a tooltip
- Add PNG, SVG and Apple touch icon versions of the application's favicon
- Adding Leaflet.js 1.9.4
- Upgrade wwdtm from 2.8.2 to 2.9.1
- Upgrade wwdtm from 2.8.1 to 2.8.2
- Upgrade flask from 3.0.0 to 3.0.3
- Upgrade gunicorn from 21.2.0 to 22.0.0
- Upgrade ruff from 0.1.13 to 0.3.6
- Upgrade pytest from 7.4.4 to 8.1.1
- Upgrade black from 23.12.1 to 24.3.0
- Upgrade wwdtm from 2.8.0 to 2.8.1, which includes fixing an issue of panelists not being sorted by their decimal scores properly
- Add support for GitHub sponsorship link in the side pop-out nav, dropdown nav menu and in the footer by way of the
settings.github_sponsor_url
config key - Change the how render and version information is rendered on screens with a width less than 1200px to align left rather than right
- Add support for new show URL field from the Wait Wait Stats Database, which is used in place of the
/s/
redirect link if there is a value stored for a particular show - Add support for Patreon link in the side pop-out nav, dropdown nav menu and in the footer by way of the
settings.patreon_url
config key
- Upgrade wwdtm from 2.7.0 to 2.8.0
- Add type hints for a majority of the return types for routes and utility modules
- Replace use of
typing.Optional
andtyping.Union
with the with the conventions documented in PEP-484 and PEP-604 - Change handling of
time_zone
configuration value to prevent use ofpytz.timezone()
in function arguments
- Upgrade wwdtm from 2.6.1 to 2.7.0, which includes:
- Upgrade numpy from 1.26.0 to 1.26.3
- Upgrade Markdown from 3.5.1 to 3.5.2
- Switch to Ruff for code linting and formatting (with the help of Black)
- Upgrade pytest from 7.4.3 to 7.4.4
- Upgrade black from 23.11.0 to 23.12.1
- Update the copyright block at the top of each file to remove
coding
line and to include the appropriate SPDX license identifier
- Upgrade wwdtm from 2.6.0 to 2.6.1
- Add support for rendering multiple Bluff the Listener segment results for a given show
- Upgrade wwdtm from 2.5.0 to 2.6.0, which requires Wait Wait Stats Database version 4.4 or higher
- Upgrade Markdown from 3.4.3 to 3.5.1
- Fix CSS for list and list item rendering within the show notes
- Remove unneeded slash in an empty tag for the Materialize CSS include
Starting with version 5.7.0, support for all versions of Python prior to 3.10 have been deprecated.
- Replace
dateutil.parser.parse
withdatetime.datetime.strptime
- Upgrade wwdtm from 2.4.0 to 2.5.0, which drops supports for Python versions prior to 3.10 and includes:
- Upgrade MySQL Connector/Python from 8.0.33 to 8.2.0
- Upgrade numpy from 1.24.4 to 1.26.0
- Upgrade black from 23.10.1 to 23.11.0
- Remove
py38
andpy39
fromtool.black
inpyproject.toml
- Upgrade Flask from 2.3.2 to 3.0.0
- Upgrade gunicorn from 20.1.0 to 21.2.0
- Upgrade pycodestyle from 2.11.0 to 2.11.1
- Upgrade pytest from 7.4.0 to 7.4.3
- Upgrade black from 23.7.0 to 23.10.1
- Upgrade wwdtm from 2.3.0 to 2.4.0
- Add support for displaying panelist Lightning Fill-in-the-Blank starting score and correct answers stored in the corresponding new table columns. This is handled via version 2.3.0 of the
wwdtm
library and depends on setting theuse_decimal_scores
setting in theconfig.json
application configuration file.
- Upgrade wwdtm from 2.2.0 to 2.3.0
- Add support for displaying panelist decimal scores stored in a new table column in the Wait Wait Stats Database instead of the standard integer scores. This is handled via version 2.2.0 of the
wwdtm
library and a newuse_decimal_scores
setting in theconfig.json
application configuration file. By default, the value will be set tofalse
and must be changed totrue
, and the appropriate changes have been deployed to the Wait Wait Stats Database. - Increase the number of digits displayed after the decimal point for certain panelist statistics from 4 to 5
- Upgrade wwdtm from 2.1.0 to 2.2.0, which also includes:
- Upgrade NumPy from 1.23.2 to 1.24.3
- Upgrade black from 23.3.0 to 23.7.0
- Upgrade flake8 from 6.0.0 to 6.1.0
- Upgrade pycodestyle from 2.10.0 to 2.11.0
- Upgrade pytest from 7.3.1 to 7.4.0
- Revamping of the formatting and styles when printing pages from the site to reduce wasted whitespace and other tweaks, including:
- Adding site title at the top of the document
- Update the guest, host, location, panelist, scorekeeper and show info blocks to mimic a two-column layout
- Change the
main
block to not cause the footer to be pushed to a new page - Render the collection lists in a more compact manner
- Correct a few
color
values for a few types of links
- Add
settings.sort_by_venue
configuration setting that is used to determine whether to sort the locations by venue name or by state and city for the/locations
. Defaults tofalse
, which matches the previous behavior.
- Upgrade Flask from 2.2.3 to 2.3.2
- Upgrade wwdtm from 2.0.9 to 2.1.0
- Upgrade wwdtm from 2.0.8 to 2.0.9, which also includes the following changes:
- Upgrade MySQL Connector/Python from 8.0.31 to 8.0.33
- Upgrade NumPy from 1.23.4 to 1.24.2
- Upgrade python-slugify from 6.1.2 to 8.0.1
- Upgrade pytz from 2022.6 to 2023.3
- Upgrade Markdown from 3.4.1 to 3.4.3
- Removed python-dateutil as an explicit requirement as it is being pulled in by the wwdtm package
- Move pytest configuration from
pytest.ini
intopyproject.toml
- Upgrade flake8 from 5.0.4 to 6.0.0
- Upgrade pycodestyle from 2.9.1 to 2.10.0
- Upgrade pytest from 7.2.0 to 7.3.1
- Upgrade black from 22.10.0 to 23.3.0
- Upgrade Materialize from 1.2.1 to 1.2.2
- Upgrade Flask from 2.2.2 to 2.2.3
- Upgrade Werkzeug from 2.2.2 to 2.2.3 to fix a security vulnerability
- Updating copyright year for code files under
tests
- Upgrade Materialize from 1.1.0 to 1.2.1
- Updating copyright year for all code files and add copyright block to
static/css/style.css
andstatic/js/init.js
- Continue refactoring how application and database connection settings are loaded and setting default values
- Upgrade wwdtm from 2.0.7 to 2.0.8, which also includes the following changes:
- Upgrade MySQL Connector/Python from 8.0.30 to 8.0.31
- Upgrade NumPy from 1.23.2 to 1.23.4
- Upgrade python-slugify from 5.0.2 to 6.1.2
- Upgrade pytz from 2022.2.1 to 2022.6
- Upgrade Flask from 2.2.0 to 2.2.2
- Upgrade Werkzeug from 2.2.1 to 2.2.2
- Upgrade flake8 from 4.0.1 to 5.0.4
- Upgrade pycodestyle from 2.8.0 to 2.9.1
- Upgrade pytest from 7.1.2 to 7.2.0
- Upgrade black from 22.6.0 to 22.10.0
- Update the URL in footer to use HTTPS instead of HTTP
- Use
dict.get(key, default_value)
inapp/__init__.py
to get/set configuration values in order to avoid application startup errors if configuration keys are not set.- Default value for
time_zone
isUTC
- Default values for any URL is an empty string
- Default value for
- Adding
mastodon_url
andmastodon_user
configuration keys in thesettings
section of the config file. - If the
mastodon_url
andmastodon_user
keys contain a value, insert a link withrel="me"
attribute for profile link validation.
- Fix an issue where the
time_zone
configuration value was being assigned tosettings_config
twice, instead of being assigned to bothsettings_config
anddatabase_config
- Upgrade wwdtm from 2.0.5 to 2.0.7, which also includes the following changes:
- Upgrade MySQL Connector/Python from 8.0.28 to 8.0.30
- Upgrade NumPy from 1.22.3 to 1.23.2
- Upgrade pytz from 2022.1 to 2022.2.1
- Upgrade Flask to 2.2.0
- Upgrade Werkzeug from 2.1.2 to 2.2.1
- Upgrade Markdown from 3.3.6 to 3.4.1
- Relocate templates from under
app/templates
to the newly createdtemplates
directory within each section (e.g.:app/shows/templates/shows
)- The templates directory structure will match the new Blueprints structure used in reports.wwdt.me_v2
- Update guests, hosts, locations, panelists, scorekeepers and shows routes and redirects so that canonical routes now have a trailing slash and requests made without a trailing slash will get redirected
- Upgrade pytest from 6.2.5 to 7.1.2
- Add type hinting to pytest scripts
- Upgrade Black from 22.1.0 to 22.6.0
- Change Black
target-version
to removepy36
andpy37
, and addpy310
- Upgrade Materialize from 1.1.0-alpha to 1.1.0
- Upgrade Flask from 2.1.1 to 2.1.3
- Set Werkzeug version to 2.1.2
- Version 2.2.0 includes a breaking change regarding route parsing and handling
- Upgrade wwdtm from 2.0.2 to 2.0.5
- Upgrade Flask from 2.0.2 to 2.1.1
- Upgrade pytz from 2021.3 to 2022.1
- Change "API Docs" links on the site to read "API"
- Update the Site History page to include version 5.0
- Update the link to the GitHub repository
- Replace (lib)wwdtm 1.2.x with wwdtm 2.0.2
- Upgrade Flask from 2.0.1 to 2.0.2
- Upgrade Materialize from 1.0.0 to 1.1.0-alpha
- Complete restructuring of the Flask application to use Blueprints design pattern
- Convert the application from using uWSGI to serve the application to Gunicorn to match the changes made with the Wait Wait Stats API
- Adding tests by way of
pytest