Skip to content

2025.3.0

Choose a tag to compare

@eliaspr eliaspr released this 14 Oct 17:51
· 92 commits to main since this release
2275182

Caution

Please review the migration notes below before upgrading to 2025.3.0

Major Changes

  • Added planning realms. They can be used to manage team applications and organize tournaments.
  • Added an image storage implementation to store images in an Azure Blob Storage container.
  • Improved UX on tournament configuration page, especially regarding the groups/teams section.
  • Users now have to log in using a dedicated login name instead of their email address which is now optional.
  • Users can no longer update their own name and email address. This must now be done by an administrator.

Further Changes & Fixes

  • Added an application version banner visible to logged in administrators. This banner notifies you if a new turnierplan.NET version is available.
  • Added new layout and styling for the login and change password pages.
  • Fixed several incorrect HTML page titles.
  • Improved client-side token validity check resulting in no more unnecessary login prompts.
  • Improved display of charts on the statistics page using a different chart library.
  • Issued access tokens now have a shorter lifetime by default. The artificial delay present in the token refresh endpoint has been removed.
  • Removed all limitations on string lengths and increased the image upload size to 8MB. API keys can now be issued for up to 365 days.
  • Renamed the tournament images to be more generic (now: primary logo, secondary logo and banner image instead of organizer logo, sponsor logo and sponsor banner).
  • The match tiles on the match tree page are no longer clickable if he user has no write permission.
  • To rename an organization, you now have to have the owner role.
  • Updated how external links are displayed on public tournament page.

Migrating from 2025.2.0

  • Due to a technical change related to the receipts document configuration, the Show sponsor logo property (which now has a different name) is reset to off for any existing receipts documents.
  • As stated above, users now have a dedicated login name they must use to log in instead of their email address. Upon migration, the login name is set to the current user email for all users.
  • The TurnierplanClientOptions class in the Turnierplan.Adapter NuGet package no longer contains the UserAgent, DisableIdVerification and DisableVersionVerification properties. Update your usages accordingly.

Full Changelog

  • Bump version to 2025.3.0 by @eliaspr in #79
  • Fix clickable tiles in match tree even if disallowed by rbac by @eliaspr in #80
  • Fix incorrect exception message in IncrementPublicPageViews() method by @eliaspr in #81
  • Update external links on public tournament page by @eliaspr in #84
  • Remove 'IsMigrated' property from tournament entity by @eliaspr in #85
  • Remove string length limitations and loosen other limitations by @eliaspr in #87
  • Increase max image upload size to 8MB by @eliaspr in #88
  • Remove text length validation from frontend by @eliaspr in #89
  • Increase maximum API key validity to 365 days by @eliaspr in #90
  • Add first data model and database migration for planning feature by @eliaspr in #86
  • First UI elements for planning realms along with various fixes by @eliaspr in #91
  • Prevent page reload of DiscardChangesDetector is active by @eliaspr in #97
  • Implement UI for configuring invitation links by @eliaspr in #95
  • Extract share-link component from share-widget by @eliaspr in #102
  • Fix organization delete not working when it has planning realm by @eliaspr in #103
  • Fix html title not updated after renaming org/tournament/venue by @eliaspr in #104
  • Require owner role for renaming organization by @eliaspr in #105
  • Improve how full-width content is displayed with tp-page-frame by @eliaspr in #107
  • Add post/get endpoints for applications and start work on applications UI by @eliaspr in #106
  • Remove 'MaxTeamCount' property from tournament class by @eliaspr in #108
  • Always show 'unsaved changes' even when scrolling down by @eliaspr in #109
  • Implement basic version of invitation link public form by @eliaspr in #100
  • Improve invitation link delete button and fix bug in update planning realm endpoint by @eliaspr in #110
  • Implement applications manager with filter options by @eliaspr in #111
  • Implement UI for editing notes of existing applications by @eliaspr in #113
  • Use ctrl+enter instead of shift+enter for submitting textarea dialog by @eliaspr in #114
  • Rename 'TurnierplanMetadata' class to 'TurnierplanVersion' by @eliaspr in #118
  • Add dialog for creating new applications by @eliaspr in #117
  • Reworked styling & layout of identity pages by @eliaspr in #119
  • Fix incorrect delete behavior in ApplicationTeam entity type configuration by @eliaspr in #120
  • Add option to deactivate invitation links by @eliaspr in #121
  • Fix incorrect page title on create user page by @eliaspr in #123
  • Move nested records in configure tournament endpoint to outer scope by @eliaspr in #124
  • Implement linking mechanism between application teams and tournaments by @eliaspr in #125
  • Implement image storage adapter for Azure Blob Storage by @eliaspr in #126
  • Refactor to-do comments and fix some code smells by @eliaspr in #128
  • Fix incorrect token validity check in 'isLogggedIn' method by @eliaspr in #129
  • Update to Angular 20 along with other npm packages by @eliaspr in #130
  • Migrate to angular standalone components and bootstrapping by @eliaspr in #131
  • Remove shared module and fix client app code smells by @eliaspr in #132
  • Switch to Apache ECharts for displaying charts by @eliaspr in #134
  • Remove 'tools' directory from repository root by @eliaspr in #135
  • Fix missing client app files during publish by @eliaspr in #137
  • Display ids of organizations, folders and tournaments in UI by @eliaspr in #138
  • Use flat folder structure for portal directives by @eliaspr in #139
  • Updated NuGet dependencies and removed Xunit.Combinatorial package by @eliaspr in #140
  • Add tag on rendered HTML pages by @eliaspr in #143
  • Fix duplicated line in EndpointBase by @eliaspr in #145
  • Remove redundant Angular module import in main.ts by @eliaspr in #146
  • Fix authentication interceptor not working without base url by @eliaspr in #147
  • Update proxy.conf.js to include favicon by @eliaspr in #152
  • Improved auth handling and reduced access token lifetime by @eliaspr in #153
  • Remove ConfigureAwait(false) calls by @eliaspr in #156
  • Administrators can modify existing users by @eliaspr in #148
  • Rename repository flags enum and fix some code smells by @eliaspr in #157
  • Add end-to-end test framework using Cypress by @eliaspr in #136
  • Merge e2e job into the 'validate' workflow by @eliaspr in #158
  • Remove obsolete badge from readme by @eliaspr in #159
  • Improve tournament config page with option to include teams from applications by @eliaspr in #142
  • Add confirm modal in delete widget component by @eliaspr in #162
  • Implement application team rename and tournament/application navigation by @eliaspr in #166
  • Add missing markDirty() call in configure tournament page by @eliaspr in #167
  • Fix discard changes detector not working when renaming teams/groups by @eliaspr in #168
  • Add missing 'Async' in method name by @eliaspr in #169
  • Refactored Turnierplan.Adapter, added in-memory database and functional test by @eliaspr in #170
  • Add column for invitation link in applications table by @eliaspr in #171
  • Display app version banner for administrator users by @eliaspr in #172
  • Adapt more generalized names for tournament images by @eliaspr in #173
  • Update dependencies and migrate to ng-openapi-gen v1.0 by @eliaspr in #174
  • Refactor User entity to make email optional and add login ID by @eliaspr in #175
  • Update ng-openapi-gen package and fix Angular build warning by @eliaspr in #177
  • Code style improvements along with some minor fixes by @eliaspr in #178
  • Final login page design for 2025.3 by @eliaspr in #179
  • Add custom labels for application teams by @eliaspr in #180
  • Add copy to clipboard button on applications page by @eliaspr in #181
  • Resolve some code smells by @eliaspr in #182
  • Implement form session ID check and add missing translation by @eliaspr in #183
  • Add e2e test for creating and conducting tournament by @eliaspr in #184
  • Add read-only role for applications along with some fixes by @eliaspr in #185
  • Dependency updates and bug fixes for 2025.3.0 by @eliaspr in #186
  • Administrator badge in header + fix image storage readme section by @eliaspr in #187
  • Don't show 'add application' button user has no write permission by @eliaspr in #188
  • Improvements for planning realm + fixes in angular.json and layout footer by @eliaspr in #193
  • Display labels in select application team dialog by @eliaspr in #196
  • Fix broken identity page layout on small screens by @eliaspr in #198
  • Add cancel button for administration/rbac offcanvas by @eliaspr in #200
  • Add missing middle alignment in some places by @eliaspr in #203
  • Add audit log for application modifications by @eliaspr in #201
  • Improved value display in application change log by @eliaspr in #208
  • Add check to exit early if version downgrade is detected by @eliaspr in #205
  • Updated build workflow to allow minor/patch releases by @eliaspr in #209
  • Improve multi-select-filter when all options are selected by @eliaspr in #210
  • Add option to expand multiple applications by @eliaspr in #211
  • Use in-memory database for running the e2e tests by @eliaspr in #212
  • Allow adding/removing application teams and deleting an application by @eliaspr in #214
  • Add confirmation alert and team count limit when creating application by @eliaspr in #216
  • Save application change logs when linking/unlinking teams by @eliaspr in #217
  • Update NuGet and npm dependencies by @eliaspr in #218
  • Fix applications list completely unusable on small screens by @eliaspr in #219

Full Changelog: 2025.2.0...2025.3.0