Releases: owlcms/owlcms4
51.0.6
Important
- You should test all releases, with actual data, several days before a competition.
-
Fixes
- 51.0.6 Fix: "Score" columns that were being displayed on the scoreboard when they should not have.
- 51.0.6 Age Group configuration drop down now respects the "local files only" setting.
- 51.0.5: Fix missing name on multi age-group scoreboard
- 51.0.4: Out-of-competition marker was being displayed falsely on attempt board.
- 51.0.3: Fix for inability to load the registration file depending on what columns are present in the database.
- 51.0.1: Fixed Final Package error when computing GAMX coefficients.
-
Publicresults
- When a user opens a scoreboard and a timer is running, the timer is now immediately synchronized
- If the publicresults application is restarted, and sessions are in a break, the remaining time is now immediately synchronized
-
Score-based Rankings
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Example: create categories where all Masters in the same age group compete together in a category, from 0 to 999 kg bodyweight, based on their SM(H)F score.
- Example: All youth in a given age group compete against one another based on Sinclair.
- Note: Use the
Score
templates the Session or Competition eligibility category reports to get the rankings and award medals. The Medals Excel sheets and and displays do not support scoring systems at present. Scores-*.xlsx
templates can be used as a simple Final package. Category rankings by the age-group scoring system -- defaults to TOTAL. The Best Lifter page uses the global scoring system selected for the competition. Team scores are based on the age-group scoring system.
- Huebner "Age Factors" are now supported. These multiplicative factors adjust the total based on age and body weight for athletes aged under 20 and under 115kg.
- Note: the body weight is interpolated, whereas the current on-line calculator from Huebner does rounding. The online calculator is meant to be updated to also use interpolation.
- Huebner GAMX scoring system now supported
- This scoring system aims to provide compatibility between men and women scores
- There can be both the open bodyweight age groups and the normal age groups in the same meet. Just assign the desired ranking method to each age group.
- The results scoreboard shows a Score and Rank column when a scoring system is selected for any of the age groups.
- The TOTAL is used as score for groups that do not have a Scoring System.
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
-
Fix: Start Book Data Entry Spreadsheet now works when there are no athletes entered.
For other recent changes, see version 50 release notes
51.0.5
Important
- You should test all releases, with actual data, several days before a competition.
-
Fixes
- 51.0.5: Fix missing name on multi age-group scoreboard
- 51.0.4: Out-of-competition marker was being displayed falsely on attempt board.
- 51.0.3: Fix for inability to load the registration file depending on what columns are present in the database.
- 51.0.1: Fixed Final Package error when computing GAMX coefficients.
-
Publicresults
- When a user opens a scoreboard and a timer is running, the timer is now immediately synchronized
- If the publicresults application is restarted, and sessions are in a break, the remaining time is now immediately synchronized
-
Score-based Rankings
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Example: create categories where all Masters in the same age group compete together in a category, from 0 to 999 kg bodyweight, based on their SM(H)F score.
- Example: All youth in a given age group compete against one another based on Sinclair.
- Note: Use the
Score
templates the Session or Competition eligibility category reports to get the rankings and award medals. The Medals Excel sheets and and displays do not support scoring systems at present. Scores-*.xlsx
templates can be used as a simple Final package. Category rankings by the age-group scoring system -- defaults to TOTAL. The Best Lifter page uses the global scoring system selected for the competition. Team scores are based on the age-group scoring system.
- Huebner "Age Factors" are now supported. These multiplicative factors adjust the total based on age and body weight for athletes aged under 20 and under 115kg.
- Note: the body weight is interpolated, whereas the current on-line calculator from Huebner does rounding. The online calculator is meant to be updated to also use interpolation.
- Huebner GAMX scoring system now supported
- This scoring system aims to provide compatibility between men and women scores
- There can be both the open bodyweight age groups and the normal age groups in the same meet. Just assign the desired ranking method to each age group.
- The results scoreboard shows a Score and Rank column when a scoring system is selected for any of the age groups.
- The TOTAL is used as score for groups that do not have a Scoring System.
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
-
Fix: Start Book Data Entry Spreadsheet now works when there are no athletes entered.
For other recent changes, see version 50 release notes
51.0.4
Important
- You should test all releases, with actual data, several days before a competition.
-
Fixes
- 51.0.4: Out-of-competition marker was being displayed falsely on attempt board.
- 51.0.3: Fix for inability to load the registration file depending on what columns are present in the database.
- 51.0.1: Fixed Final Package error when computing GAMX coefficients.
-
Publicresults
- When a user opens a scoreboard and a timer is running, the timer is now immediately synchronized
- If the publicresults application is restarted, and sessions are in a break, the remaining time is now immediately synchronized
-
Score-based Rankings
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Example: create categories where all Masters in the same age group compete together in a category, from 0 to 999 kg bodyweight, based on their SM(H)F score.
- Example: All youth in a given age group compete against one another based on Sinclair.
- Note: Use the
Score
templates the Session or Competition eligibility category reports to get the rankings and award medals. The Medals Excel sheets and and displays do not support scoring systems at present. Scores-*.xlsx
templates can be used as a simple Final package. Category rankings by the age-group scoring system -- defaults to TOTAL. The Best Lifter page uses the global scoring system selected for the competition. Team scores are based on the age-group scoring system.
- Huebner "Age Factors" are now supported. These multiplicative factors adjust the total based on age and body weight for athletes aged under 20 and under 115kg.
- Note: the body weight is interpolated, whereas the current on-line calculator from Huebner does rounding. The online calculator is meant to be updated to also use interpolation.
- Huebner GAMX scoring system now supported
- This scoring system aims to provide compatibility between men and women scores
- There can be both the open bodyweight age groups and the normal age groups in the same meet. Just assign the desired ranking method to each age group.
- The results scoreboard shows a Score and Rank column when a scoring system is selected for any of the age groups.
- The TOTAL is used as score for groups that do not have a Scoring System.
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
-
Fix: Start Book Data Entry Spreadsheet now works when there are no athletes entered.
For other recent changes, see version 50 release notes
51.0.3
Important
- You should test all releases, with actual data, several days before a competition.
-
Fixes
- 51.0.3: Fix for inability to load the registration file depending on what columns are present in the database.
- 51.0.1: Fixed Final Package error when computing GAMX coefficients.
-
Publicresults
- When a user opens a scoreboard and a timer is running, the timer is now immediately synchronized
- If the publicresults application is restarted, and sessions are in a break, the remaining time is now immediately synchronized
-
Score-based Rankings
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Example: create categories where all Masters in the same age group compete together in a category, from 0 to 999 kg bodyweight, based on their SM(H)F score.
- Example: All youth in a given age group compete against one another based on Sinclair.
- Note: Use the
Score
templates the Session or Competition eligibility category reports to get the rankings and award medals. The Medals Excel sheets and and displays do not support scoring systems at present. Scores-*.xlsx
templates can be used as a simple Final package. Category rankings by the age-group scoring system -- defaults to TOTAL. The Best Lifter page uses the global scoring system selected for the competition. Team scores are based on the age-group scoring system.
- Huebner "Age Factors" are now supported. These multiplicative factors adjust the total based on age and body weight for athletes aged under 20 and under 115kg.
- Note: the body weight is interpolated, whereas the current on-line calculator from Huebner does rounding. The online calculator is meant to be updated to also use interpolation.
- Huebner GAMX scoring system now supported
- This scoring system aims to provide compatibility between men and women scores
- There can be both the open bodyweight age groups and the normal age groups in the same meet. Just assign the desired ranking method to each age group.
- The results scoreboard shows a Score and Rank column when a scoring system is selected for any of the age groups.
- The TOTAL is used as score for groups that do not have a Scoring System.
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
-
Fix: Start Book Data Entry Spreadsheet now works when there are no athletes entered.
For other recent changes, see version 50 release notes
51.0.2
Important
- You should test all releases, with actual data, several days before a competition.
-
Fixes
- 50.0.1: Fixed Final Package error when computing GAMX coefficients.
-
Publicresults
- When a user opens a scoreboard and a timer is running, the timer is now immediately synchronized
- If the publicresults application is restarted, and sessions are in a break, the remaining time is now immediately synchronized
-
Score-based Rankings
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Example: create categories where all Masters in the same age group compete together in a category, from 0 to 999 kg bodyweight, based on their SM(H)F score.
- Example: All youth in a given age group compete against one another based on Sinclair.
- Note: Use the
Score
templates the Session or Competition eligibility category reports to get the rankings and award medals. The Medals Excel sheets and and displays do not support scoring systems at present. Scores-*.xlsx
templates can be used as a simple Final package. Category rankings by the age-group scoring system -- defaults to TOTAL. The Best Lifter page uses the global scoring system selected for the competition. Team scores are based on the age-group scoring system.
- Huebner "Age Factors" are now supported. These multiplicative factors adjust the total based on age and body weight for athletes aged under 20 and under 115kg.
- Note: the body weight is interpolated, whereas the current on-line calculator from Huebner does rounding. The online calculator is meant to be updated to also use interpolation.
- Huebner GAMX scoring system now supported
- This scoring system aims to provide compatibility between men and women scores
- There can be both the open bodyweight age groups and the normal age groups in the same meet. Just assign the desired ranking method to each age group.
- The results scoreboard shows a Score and Rank column when a scoring system is selected for any of the age groups.
- The TOTAL is used as score for groups that do not have a Scoring System.
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
-
Fix: Start Book Data Entry Spreadsheet now works when there are no athletes entered.
For other recent changes, see version 50 release notes
51.0.1
Important
- You should test all releases, with actual data, several days before a competition.
- Publicresults
- When a user opens a scoreboard and a timer is running, the timer is now immediately synchronized
- If the publicresults application is restarted, and sessions are in a break, the remaining time is now immediately synchronized
- Score-based Rankings
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Example: create categories where all Masters in the same age group compete together in a category, from 0 to 999 kg bodyweight, based on their SM(H)F score.
- Example: All youth in a given age group compete against one another based on Sinclair.
- Note: Use the
Score
templates the Session or Competition eligibility category reports to get the rankings and award medals. The Medals Excel sheets and and displays do not support scoring systems at present. Scores-*.xlsx
templates can be used as a simple Final package. Category rankings by the age-group scoring system -- defaults to TOTAL. The Best Lifter page uses the global scoring system selected for the competition. Team scores are based on the age-group scoring system.
- Huebner "Age Factors" are now supported. These multiplicative factors adjust the total based on age and body weight for athletes aged under 20 and under 115kg.
- Note: the body weight is interpolated, whereas the current on-line calculator from Huebner does rounding. The online calculator is meant to be updated to also use interpolation.
- Huebner GAMX scoring system now supported
- This scoring system aims to provide compatibility between men and women scores
- There can be both the open bodyweight age groups and the normal age groups in the same meet. Just assign the desired ranking method to each age group.
- The results scoreboard shows a Score and Rank column when a scoring system is selected for any of the age groups.
- The TOTAL is used as score for groups that do not have a Scoring System.
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Fix: Start Book Data Entry Spreadsheet now works when there are no athletes entered.
For other recent changes, see version 50 release notes
51.0.0
Important
- You should test all releases, with actual data, several days before a competition.
- Publicresults
- When a user opens a scoreboard and a timer is running, the timer is now immediately synchronized
- If the publicresults application is restarted, and sessions are in a break, the remaining time is now immediately synchronized
- Score-based Rankings
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Example: create categories where all Masters in the same age group compete together in a category, from 0 to 999 kg bodyweight, based on their SM(H)F score.
- Example: All youth in a given age group compete against one another based on Sinclair.
- Note: Use the
Score
templates the Session or Competition eligibility category reports to get the rankings and award medals. The Medals Excel sheets and and displays do not support scoring systems at present. Scores-*.xlsx
templates can be used as a simple Final package. Category rankings by the age-group scoring system -- defaults to TOTAL. The Best Lifter page uses the global scoring system selected for the competition. Team scores are based on the age-group scoring system.
- Huebner "Age Factors" are now supported. These multiplicative factors adjust the total based on age and body weight for athletes aged under 20 and under 115kg.
- Note: the body weight is interpolated, whereas the current on-line calculator from Huebner does rounding. The online calculator is meant to be updated to also use interpolation.
- Huebner GAMX scoring system now supported
- This scoring system aims to provide compatibility between men and women scores
- There can be both the open bodyweight age groups and the normal age groups in the same meet. Just assign the desired ranking method to each age group.
- The results scoreboard shows a Score and Rank column when a scoring system is selected for any of the age groups.
- The TOTAL is used as score for groups that do not have a Scoring System.
- Initial support for Age-Based, All-Bodyweights Categories (ABAB), with ranking based on a scoring system. See Score-based Rankings in the documentation.
- Fix: Start Book Data Entry Spreadsheet now works when there are no athletes entered.
For other recent changes, see version 50 release notes
50.0.0
Version 50.0.0
Important
- You should test all releases, with actual data, several days before a competition.
- New: Marshal and announcer usability improvements
-
The notification is synchronized with the appearance of the athlete's name on the attempt board to respect TCRR rules.
-
The information update in the announcer grid now allows announcing the total as soon as the decision is made.
-
Declarations are no longer shown to the speaker by default. The speaker can show/hide the declaration notifications using the ⚙ menu.
-
The marshal screen shows athletes in start order by default. The marshal can unselect this behavior and get lifting order using the ⚙ menu.
-
When the
noLiveLights
feature toggle is present, the decision lights are not shown to the announcer or marshal to prevent premature announcements of decisions. The speaker can override the live lights setting using the ⚙ menu. -
When the
centerAnnouncerNotifications
feature toggle is present, the Announcer notifications are centered and larger. The speaker can override this setting the notifications of not using the ⚙ menu. When the speaker does double duty as marshal in a small meet, this interferes with the grid, so it is not the default.
-
- New: Children's bars
- The bars available (5 / 10 / 15 / 20 / non-standard) can be selected on the Plates and Barbell page.
- The computation of the bar used is made to use the large 2,5 or 5kg bumper plates if available. Collars are not used on light bars. The sturdiest bar is used (for 20kg a 15kg bar with 2.5kg plates will be used instead of a 10kg bar with 5kg plates).
- Non-standard bars can be selected on the Plates and Barbell page. Typically used with old North-American 15lb (~7kg) bars.
- For age groups with children under 12, the 20kg bar is not used. For older age groups where this is desired the 20kg bar can be unselected manually on the Plates and Barbell page.
- If lighter children's bars are used, they will be shown in white/green/yellow on the attempt board according to bar weight. Brown is used for non-standard bars
- The same rules are applied for light Masters loads if the light bars are selected.
- The feature toggle
childrenEquipment
automatically indicates that 5/10 bars and 2,5/5 large plates are available.
- Publicresults session expiry. In previous versions, the instantaneous update feature of the scoreboards caused sessions to stay open forever, leading to out-of-memory errors after a few hours when many users had logged on.
- Sessions are now expired if all scoreboards have been hidden for more than 15 minutes, or if the visible scoreboards have not received an update for 15 minutes. When expired, an expiry notice is given, and button is displayed to reload the expired scoreboard.
- The environment variable
OWLCMS_INACTIVITY_SEC
controls the duration in seconds of the inactivity interval (default = 15 * 60). - The environment variable
OWLCMS_CLEANUP_SEC
controls how often the sessions are checked for inactivity (default = 60)
- Improvements:
- Accept common image formats for flags (
.svg
,.png
,.jpg
,.jpeg
, or.webp
) - Error messages for illegal values in the Registration file (M/F gender and integer numbers)
- Accept common image formats for flags (
- Fixes:
- Attempt board, video medals, video rankings: The current session name or description is no longer shown, since the medals or rankings are often from the previous session.
- Switching languages for the current session was no longer working.
- Server-side sounds
- The timer sounds were no longer being emitted. Changing the sound adapter for the platform seemed to be the triggering cause. Now they should always work.
- The server-side down signal was always being given, even in the default mode where the announcer is just entering flag decisions
- The end-of-session protocol sheet no longer showed the records improved during the session. Now fixed.
- Initial Registration Sheet: Better error messages for wrong gender (not M or F) and illegal numbers
- The medal sheet and the medal display screens now correctly include all the categories where medals can be awarded. Previously, if an athlete had not weighed in, or had been unassigned to a session a category could be considered to still be in progress.
- When using MQTT buttons, duplicate "Start" are now correctly ignored.
- Exporting all records now works even when there are no weighed-in athlete (an irrelevant condition was being tested)
- Records are now imported correctly from a database export. Previously some could be missing, requiring a second import.
- USAW BARS results upload was missing one cell : when results for all sessions are produced, the standard templates clear the session name cell. This is not required for the BARs template
- The local/robi directory was not being populated by the Windows installer (contains the records used for computing Robi coefficients)
- IWF behavior for start numbers is now respected by default
- USAW note: the list of feature toggles to use for National championships is
USAW,athleteCardEntryTotal,explicitTeams,noLiveLights,centerAnnouncerNotifications,childrenEquipment
49.0.8
Version 49.0.8
Important
- You should test all releases, with actual data, several days before a competition.
- (49.0.8) Publicresults: backported the version 50.0.0 version that expires sessions to avoid running out of memory (also fixes issues with publicresults not starting).
- (49.0.7) Cloud usage: fly.io no longer routed requests from the outside world to the applications. Changed the embedded server configuration to listen on all interfaces.
- (49.0.6) Empty groups (no name) could cause page failures
- (49.0.5) Fix: preparation pages would fail if there was no information at all available to infer the category of the athlete.
- (49.0.4) Fix: The ordering used for allocating start numbers should not consider age groups, only bodyweight category
- Now fixed to apply only for Masters competition, or when the option to order weigh-in by age group is selected.
- (49.0.4) For readability, the athlete registration page, competition document page, and weigh-in page now list athletes first by session then by start ordering. The sort order can changed by clicking the "Session" column header.
- (49.0.3) Fix: creating an Age Group interactively by using the Add button on the Edit Age Groups and Categories page had stopped working since version 48.
- (49.0.2) Enhancement: if a session is configured to start in the future, when opening the countdown screen, the default will be to start the introduction at the planned time. It will not be necessary to switch away from the "Duration" setting and not necessary to select the time.
- (49.0.2) Fix: In some rare edge cases, declaring the same value as the automatic progression would produce a denial warning on the marshal card. This would happen when declaring on a 1:00 clock when the declaring athlete had lifted the same as the current athlete on the previous attempt.
- (49.0.2) Fix: Importing a database JSON export that includes a zip for local overrides now applies correctly the zipped overrides.
- (49.0.2) Fix: the
agegroupinfo.formattedRange
now correctly handles situations where athletes have not been assigned an A/B/C annotation. - (49.0.1) Fix: Loading a registration file with English headers now works when the database has another language selected by default.
- (49.0.1) Fix: The current athlete display used for videos would occasionally display the scoreboard status from the previous athlete.
- (49.0.1) Technical: An improved implementation of the athlete and break timers is now enabled by default in this release. In the very unlikely event you want the old behavior back use the
oldTimers
Feature toggle. - Announcer+Marshal
- The previous athlete is now highlighted in blue in the grid. The current and next athletes are also highlighted (yellow and orange, which is the same color convention as on the default scoreboards). Blue is shown when the previous athlete is the current or the next.
- A Notification is received when athletes withdraw from the snatch or the session.
- Announcer
- Refreshing the page correctly keeps the running time and shows the correct colors on the timer buttons. Previously, refreshing the announcer page would reload the group and reset the timer.
- Use the reload button at the top left to reload the athletes from the database.
- Single Referee Mode:
- When selected in the announcer settings (⚙), a decision from any of the 3 refereeing devices or from the announcer is treated as a full decision.
- Announcer+Timekeeper
- The clock can be restarted even if a down signal has been given or a decision is shown. Restarting the clock clears the decisions. This is required if referees mistakenly give reds when the bar has not reached the knees.
- Group Selection
- The announcer sees unfinished sessions first, sorted in ascending time (name if time unavailable)
- Registration pages have session selection sorted in ascending time (or their name if the time is unavailable)
- Results pages have session selection sorted with finished sessions first, most recent first (reverse name if unavailable)
- Weigh-in vs Categories
- When entering the athlete's weight, the program keeps the current registration category and eligibility categories if the new weight is within the eligibility categories, even when it is not the youngest or most specific age group.
- To get the old behavior of automatic selection of the youngest age group, add the
bestMatchCategories
feature switch.
- Jury
- The weight attempted on the previous attempt is now shown, to facilitate filling in a manual protocol sheet.
- New Jury scoreboard highlights the previous athlete with a marker and the same color code as the marshal page
- Scoreboards:
- White is now used for good lifts on all scoreboards (previously some used green)
- The layout now includes vertical spacing between the lifts for better readability.
- Record ordering at the bottom now goes from lowest-aged age group to highest, based on the maximum age of the age group. U13 before U17 before JR before U23 before SR before Open.
- Team flag preview:
- The team membership page now shows the flag for each team, allowing a quick check that all are correctly assigned.
- Documents:
- The Weigh-in Form now includes the participation categories so the coach can sign them off and they can be cross-checked during data entry. This is useful when there are multiple championships with the same categories.
- Additional options to get Session Date/Time for Excel templates: the following values are now available on the session object (for example
${session.localWeighInDay}
would give the short date for weigh-in using the current country settings).- Using the local formatting conventions for dates:
localWeighInDay
,localWeighInHour
,localStartDay
,localStartHour
- Using the international ISO format:
intlWeighInDay
,intlWeighInHour
,intlStartDay
,intlStartHour
- Using the local formatting conventions for dates:
- An awards schedule document is now available from the Results page. It shows after what session the medals for a category can be awarded.
- Added new accessors for use when creating jxls3 templates.
- session.ageGroupInfo.nbAthletes
session.ageGroupInfo.weightClassRange
session.ageGroupInfo.ageGroup.gender (.code, .name etc.)
session.ageGroupInfo.athletesByStartNumber
session.ageGroupInfo.athletesByEntryTotal athlete.ageGroupCodesAsString
(age group codes such as U17, ungendered unless Masters)athlete.score
property for templating -- gets the current score according to the selected global scoring schemeformattedRange
summarizes the body weight categories and subcategories for an age group. Output can be, for example,55 B
if all the athletes are in that case, or55-64 A
if all athletes areA
. If the athletes are not all in the same A/B/C subcategory, they are enumerated:64A, 71B
.- lowestEntryTotal and highestEntryTotal for writing templates.
competition.translatedScoringSystemName
will return the header name for the selected scoring (Sinclair, Robi, ...)
- session.ageGroupInfo.nbAthletes
- Footers for protocols, start lists and final results are now standardized to show the date of production. The headers for final results show the championship and age group when selected.
- Competition Results
- The final package document now excludes unfinished categories by default and obeys the override checkbox when unfinished categories are required.
- By default, categories that are not finished are not included, so the results in the "End of Competition" section can now be produced in preliminary versions during the competition.
- There is now a separate directory for the competition results templates (previously it was the same as the protocol sheets)
- Timing statistics: the number of athletes per session is now correct.
- IWF Start cards show the date at which the session is taking place
- start-of-session documents check for missing start numbers and trigger generation if missing
- computation of medals to be awarded correctly considers all unfinished categories
- Technical
- Event Forwarding and MQTT event propagation refactoring. In previous releases, obsolete forwarders could accidentally be kept when reloading sessions. This would cause the publicresults scoreboard to alternate between out-of-date and current results.
- Performance: Overall rankings for the selected "best lifter" scoring system (for example, the Sinclair score) are only computed if the option to show them on the scoreboard is selected.
49.0.7
Version 49.0.7
Important
- You should test all releases, with actual data, several days before a competition.
- (49.0.7) Cloud usage: fly.io no longer routed requests from the outside world to the applications. Changed the embedded server configuration to listen on all interfaces.
- (49.0.6) Empty groups (no name) could cause page failures
- (49.0.5) Fix: preparation pages would fail if there was no information at all available to infer the category of the athlete.
- (49.0.4) Fix: The ordering used for allocating start numbers should not consider age groups, only bodyweight category
- Now fixed to apply only for Masters competition, or when the option to order weigh-in by age group is selected.
- (49.0.4) For readability, the athlete registration page, competition document page, and weigh-in page now list athletes first by session then by start ordering. The sort order can changed by clicking the "Session" column header.
- (49.0.3) Fix: creating an Age Group interactively by using the Add button on the Edit Age Groups and Categories page had stopped working since version 48.
- (49.0.2) Enhancement: if a session is configured to start in the future, when opening the countdown screen, the default will be to start the introduction at the planned time. It will not be necessary to switch away from the "Duration" setting and not necessary to select the time.
- (49.0.2) Fix: In some rare edge cases, declaring the same value as the automatic progression would produce a denial warning on the marshal card. This would happen when declaring on a 1:00 clock when the declaring athlete had lifted the same as the current athlete on the previous attempt.
- (49.0.2) Fix: Importing a database JSON export that includes a zip for local overrides now applies correctly the zipped overrides.
- (49.0.2) Fix: the
agegroupinfo.formattedRange
now correctly handles situations where athletes have not been assigned an A/B/C annotation. - (49.0.1) Fix: Loading a registration file with English headers now works when the database has another language selected by default.
- (49.0.1) Fix: The current athlete display used for videos would occasionally display the scoreboard status from the previous athlete.
- (49.0.1) Technical: An improved implementation of the athlete and break timers is now enabled by default in this release. In the very unlikely event you want the old behavior back use the
oldTimers
Feature toggle. - Announcer+Marshal
- The previous athlete is now highlighted in blue in the grid. The current and next athletes are also highlighted (yellow and orange, which is the same color convention as on the default scoreboards). Blue is shown when the previous athlete is the current or the next.
- A Notification is received when athletes withdraw from the snatch or the session.
- Announcer
- Refreshing the page correctly keeps the running time and shows the correct colors on the timer buttons. Previously, refreshing the announcer page would reload the group and reset the timer.
- Use the reload button at the top left to reload the athletes from the database.
- Single Referee Mode:
- When selected in the announcer settings (⚙), a decision from any of the 3 refereeing devices or from the announcer is treated as a full decision.
- Announcer+Timekeeper
- The clock can be restarted even if a down signal has been given or a decision is shown. Restarting the clock clears the decisions. This is required if referees mistakenly give reds when the bar has not reached the knees.
- Group Selection
- The announcer sees unfinished sessions first, sorted in ascending time (name if time unavailable)
- Registration pages have session selection sorted in ascending time (or their name if the time is unavailable)
- Results pages have session selection sorted with finished sessions first, most recent first (reverse name if unavailable)
- Weigh-in vs Categories
- When entering the athlete's weight, the program keeps the current registration category and eligibility categories if the new weight is within the eligibility categories, even when it is not the youngest or most specific age group.
- To get the old behavior of automatic selection of the youngest age group, add the
bestMatchCategories
feature switch.
- Jury
- The weight attempted on the previous attempt is now shown, to facilitate filling in a manual protocol sheet.
- New Jury scoreboard highlights the previous athlete with a marker and the same color code as the marshal page
- Scoreboards:
- White is now used for good lifts on all scoreboards (previously some used green)
- The layout now includes vertical spacing between the lifts for better readability.
- Record ordering at the bottom now goes from lowest-aged age group to highest, based on the maximum age of the age group. U13 before U17 before JR before U23 before SR before Open.
- Team flag preview:
- The team membership page now shows the flag for each team, allowing a quick check that all are correctly assigned.
- Documents:
- The Weigh-in Form now includes the participation categories so the coach can sign them off and they can be cross-checked during data entry. This is useful when there are multiple championships with the same categories.
- Additional options to get Session Date/Time for Excel templates: the following values are now available on the session object (for example
${session.localWeighInDay}
would give the short date for weigh-in using the current country settings).- Using the local formatting conventions for dates:
localWeighInDay
,localWeighInHour
,localStartDay
,localStartHour
- Using the international ISO format:
intlWeighInDay
,intlWeighInHour
,intlStartDay
,intlStartHour
- Using the local formatting conventions for dates:
- An awards schedule document is now available from the Results page. It shows after what session the medals for a category can be awarded.
- Added new accessors for use when creating jxls3 templates.
- session.ageGroupInfo.nbAthletes
session.ageGroupInfo.weightClassRange
session.ageGroupInfo.ageGroup.gender (.code, .name etc.)
session.ageGroupInfo.athletesByStartNumber
session.ageGroupInfo.athletesByEntryTotal athlete.ageGroupCodesAsString
(age group codes such as U17, ungendered unless Masters)athlete.score
property for templating -- gets the current score according to the selected global scoring schemeformattedRange
summarizes the body weight categories and subcategories for an age group. Output can be, for example,55 B
if all the athletes are in that case, or55-64 A
if all athletes areA
. If the athletes are not all in the same A/B/C subcategory, they are enumerated:64A, 71B
.- lowestEntryTotal and highestEntryTotal for writing templates.
competition.translatedScoringSystemName
will return the header name for the selected scoring (Sinclair, Robi, ...)
- session.ageGroupInfo.nbAthletes
- Footers for protocols, start lists and final results are now standardized to show the date of production. The headers for final results show the championship and age group when selected.
- Competition Results
- The final package document now excludes unfinished categories by default and obeys the override checkbox when unfinished categories are required.
- By default, categories that are not finished are not included, so the results in the "End of Competition" section can now be produced in preliminary versions during the competition.
- There is now a separate directory for the competition results templates (previously it was the same as the protocol sheets)
- Timing statistics: the number of athletes per session is now correct.
- IWF Start cards show the date at which the session is taking place
- start-of-session documents check for missing start numbers and trigger generation if missing
- computation of medals to be awarded correctly considers all unfinished categories
- Technical
- Event Forwarding and MQTT event propagation refactoring. In previous releases, obsolete forwarders could accidentally be kept when reloading sessions. This would cause the publicresults scoreboard to alternate between out-of-date and current results.
- Performance: Overall rankings for the selected "best lifter" scoring system (for example, the Sinclair score) are only computed if the option to show them on the scoreboard is selected.