Releases: cmu-sei/gameboard-ui
v3.10.0-beta.0
What's Changed
- v3.10.0 by @sei-bstein in #130
Full Changelog: 3.9.6...3.10.0
See the corresponding API Release for more notes.
v3.9.6
v3.9.5
What's Changed
-
Patch to 3.9.4 by @sei-bstein in #128
-
Convert usages of bypassSecurityTrustHtml to sanitize and reworked some template control flows.
-
- For missing toc.json/settings.json
- Resolved an issue that could cause the player presence widget to fail to display for non-sync-start games.
- Gameboard now only looks for settings.json in production environments (or any env that has the settingsJson property of the environment object defined)
- Bump socket.io-parser from 4.2.2 to 4.2.3
Bumps socket.io-parser from 4.2.2 to 4.2.3.
updated-dependencies:
- dependency-name: socket.io-parser
dependency-type: indirect
...
Signed-off-by: dependabot[bot] support@github.com
-
- For missing toc.json/settings.json
- Resolved an issue that could cause the player presence widget to fail to display for non-sync-start games.
- Gameboard now only looks for settings.json in production environments (or any env that has the settingsJson property of the environment object defined)
-
Add eslint, configure rules, and fix critical issues.
-
Allow root-relative imports in gameboard-ui
-
Add custom input component to allow for custom components with ngmodel
-
Update angular to 15.2.5
-
- For missing toc.json/settings.json
- Resolved an issue that could cause the player presence widget to fail to display for non-sync-start games.
- Gameboard now only looks for settings.json in production environments (or any env that has the settingsJson property of the environment object defined)
- Bump socket.io-parser from 4.2.2 to 4.2.3
Bumps socket.io-parser from 4.2.2 to 4.2.3.
updated-dependencies:
- dependency-name: socket.io-parser
dependency-type: indirect
...
Signed-off-by: dependabot[bot] support@github.com
-
- For missing toc.json/settings.json
- Resolved an issue that could cause the player presence widget to fail to display for non-sync-start games.
- Gameboard now only looks for settings.json in production environments (or any env that has the settingsJson property of the environment object defined)
-
Add eslint, configure rules, and fix critical issues.
-
Allow root-relative imports in gameboard-ui
-
Add custom input component to allow for custom components with ngmodel
-
Update angular to 15.2.5
-
Client-side defense for illegal file uploads
-
Improved error handling for illegal mime types. Support area formatting updates.
-
Allow escaped html to render in support tickets.
-
Added a component that allows inline rendering of links while preserving user-entered text. Resolves #204.
-
Revise error message on bad file upload.
Signed-off-by: dependabot[bot] support@github.com
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Full Changelog: 3.9.4...3.9.5
v3.9.4
v3.9.3
What's Changed
- v3.9.3 by @sei-bstein in #123
- See the corresponding API Release for complete changes.
- For missing toc.json/settings.json (#123)
- Resolved an issue that could cause the player presence widget to fail to display for non-sync-start games.
- Gameboard now only looks for settings.json in production environments (or any env that has the settingsJson property of the environment object defined)
Full Changelog: 3.9.2...3.9.3
v3.9.2
What's Changed
- v3.9.2 by @sei-bstein in #122
- Resolved an issue where Cubespace would fail to launch due to mismatched key settings between an authorization client and Gameboard itself
- Resolved an error where Gameboard would look up the synchronization state of non-synchronized games, resulting in a 400-level error.
Full Changelog: 3.9.1...3.9.2
v3.9.1
UI release for Gameboard 3.9.1
v3.9.0
See our full patch notes on the corresponding PR in the Gameboard repository!
What's Changed
- update node and remove commit.txt by @sei-jmattson in #118
- v3.9.0 by @sei-bstein in #116
Full Changelog: 3.8.1...3.9.0
v3.8.1
Gameboard version 3.8.1 contains bug fixes, visual enhancements, and new endpoints for consumers of Gameboard's API.
Bug fixes
- The "View scoreboard" link went missing from the player session component on the game page. It has been returned to its normal location. Resolves Gameboard#133.
- The indicator that informs the user whether a player/team has an active session or not has been restored, along with a change in look and feel. Red means that the session has expired. Yellow means that it hasn't been created yet, and slowly pulsing green means that the session is active. All states have tooltips for easier readability. In the future, we will review options to better support colorblind users. Resolves Gameboard#132.
- Possibly inspired by the "view scoreboard" link's sudden disappearance, "Admin Start" also went missing in the previous release. Fortunately, it followed the scoreboard link home. Resolves Gameboard#131.
- A long-standing bug that prevented a user's held roles from lighting up in user administration (to indicate which roles they hold) has been fixed. Resolves Gameboard#130.
- A tooltip has been added to the "Copy to Markdown" button in the support ticket list to clarify what it does. Resolves Gameboard#129.
- The timer that counts down during a player session was failing to do so. It's back in business. Resolves Gameboard#123.
Enhancements
- The player/team session status light described above now appears on the player list in admin screens to enable admin tracking of player activity.
- In addition to seeding through a seed.json file, users spinning up a new Gameboard installation can optionally seed an admin user via
appsettings.conf
(or through a.values.yaml
file for K8 installations). See Gameboard PR #127 for details. - Gameboard's Swagger page now offers PCKE support.
API Surface
- New endpoints have been added to surface real-time game state information to API consumers. For further details, see this PR. Resolves Gameboard#118.
v3.8.0
Gameboard 3.8.0 contains performance optimizations, bug fixes, and multiple new features. This PR has a corresponding one in the Gameboard project.
New features
- Gameboard now supports
x-api-key
header-based authorization. Admins can issue API keys for any user account on the Users screen in Admin. Resolves #107. - The game enrollment and session commencement process has been improved, receiving some performance optimizations and, most notably, improved differentiation between the "unenroll" and "reset session" commands.
- "Unenroll" is only available before a session has begun, and only for non-manager players in team games. It now removes a single player from the game. Resolves #111.
- "Reset Session" now removes an entire team from the game after they've started session. All record of their session is deleted, including challenge data.
- These functions are available to players in the game lobby screen and to admins on the "Players" screen for a specific game. Note that admins cannot currently unenroll individual players in team games.
- New installations can now be correctly seeded with desired data, including users, games, challenges, and more! Rename the included
seed-data.json.example
file toseed-data.json
to get started. Resolves #106. - Practice mode is now available!
- Support various modes: competition, practice, test
- Admin designates Game as "Practice"
- Public practice challenge browser shows all challenges in practice games.
- Auto session creation in practice mode (sliding window).
- Players can extend/end session.
- Players can see previous sessions in profile/history.
- Admins can toggle modes on player browser.
Bug fixes
- Players can no longer generate certificates for a game unless their score is greater than zero.
- It's no longer possible to set a challenge as a prerequisite for itself. Partially addresses #114, but it's likely that in a future version we'll expand this guard to detect dependency cycles at a deeper level.
Performance improvements
- The Admin -> Users screen now downloads a slimmed-down dataset and loads additional data by request, which should result in faster load times and increased page performance. Resolves #116.
Infrastructure
- An abstraction layer has been added to support the use of additional game engines beyond TopoMojo and to support the Crucible project.
- AutoFixture has been added to the Integration tests project to support better test semantics.
- Gameboard now supports optional HTTP logging. This can be enabled using
app.settings.conf
and setting any of the following optional values:Logging__EnableHttpLogging
Logging__RequestBodyLogLimit
Logging__ResponseBodyLogLimit