2025.3.0
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
TurnierplanClientOptionsclass in theTurnierplan.AdapterNuGet package no longer contains theUserAgent,DisableIdVerificationandDisableVersionVerificationproperties. 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