Skip to content

Commit

Permalink
54.2.0
Browse files Browse the repository at this point in the history
  • Loading branch information
Jean-François Lamy committed Dec 21, 2024
1 parent dce7c88 commit 5ca8b1a
Show file tree
Hide file tree
Showing 6 changed files with 79 additions and 48 deletions.
44 changes: 31 additions & 13 deletions ReleaseNotes.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,37 @@
> [!WARNING]
> **Reminder**
>
> - You should test all releases, with actual data, *several days* before a competition.
- Maintenance log:
- 54.1.0: Removed the "sinclair meet" option, see Score-based Competitions below
- 54.1.0: The program was giving a spurious warning when a late change was made between the time the next weight was displayed and the time the clock started running.

- QMasters
- The QMasters score now uses the updated age factors for 2025

- Score-based Competitions
- Removed the "Sinclair Meet" option from the competition options. You can achieve the same using [score-based medals](https://jflamy.github.io/owlcms4/#/ScoreBasedCompetitions):
- Removed the "Sinclair Meet" option from the competition options. Now replaced by [score-based medals](https://jflamy.github.io/owlcms4/#/ScoreBasedCompetitions). To achieve the same, you can proceed as follows:
- Create SM and SF age groups with ages 0-999 and only the default weight category. Select "Already Gendered"

- Select "Sinclair" or "Q-Points" or what you want as the scoring system.

- Unselect the traditional categories and reallocate athletes.

- You can create separate SM and SF for ages 0-34 and MM and MF for ages 35-999 where MM and MF would have SMHF or Q-masters as scoring system. Or additional YM and YF with Q-youth etc.


- You can also create separate SM and SF for ages 0-34 and MM and MF for ages 35-999. MM and MF would have SMHF or Q-masters as scoring system. Same idea if you want youth categories to be score-based, create additional YM and YF with Q-youth etc.
- Speaker
- The updates to the lifting order grid are now synchronized with the notifications. Previously the progression of an athlete could be visible for a moment, leading the speaker to believe the requested weight was going up to that amount.

- Age Groups and Championships
- It is now possible to edit interactively the age group settings to define the championship in which the age groups belongs
- It is now possible to define Championships interactively
- It is now possible to define that an Age Group awards medals using a scoring system.
- See the documentation for [score-based medals](https://jflamy.github.io/owlcms4/#/ScoreBasedCompetitions)
- When changing age boundaries, or bodyweight boundaries, a confirmation is required if there are athletes already assigned to the age group. This is because the old categories are no longer valid and must be removed. Therefore new categories must be selected for the athletes in the age group, which justifies the need for a confirmation.
- AgeGroups definition files will now accept Sinclair, QMasters, QYouth, and SMHF as input for a scoring system (case does not matter), in addition to the legacy names (BW_Sinclair, QAGE, AGEFACTORS, SMM)
- When editing an athlete's registration data, categories will now be shown in "most specific order". Masters and IWF go before the Open (all ages) categories with bodyweights. Score-based categories with no age and no bodyweight boundaries go last.
- Down Signal and Decisions
- When using the decision display with keyboard (USB/joystick) devices, there was a *very remote* possibility that events could arrive out of order, causing the system to stay stuck on the down signal. Now such reverting updates will be ignored.
- Scoreboards:
- Now correctly display ranks and leaders for categories where medals are given based on a score
- Medals scoreboards and medals reports have now been fixed to handle score-based medals and sessions where both traditional and score-based medals are awarded.
- Changing the medals display shown used for the video stream no longer changes the main screen
- The "public" scoreboard meant to be used in the main room correctly switches during medal ceremonies
- Interim scores: if the feature toggle `interimScores` is present, and an age group is using Sinclair or SM(H)F or Q-points for medals, then a score will be shown during snatch even it there is no total
- Results
- During a competition with both score-based and total-based rankings, from the Competition Results page, using the Eligibility Categories report with the Score template will produce correct interim or final results. Each category will be ranked according to it's scoring system.
- Updated the competition results and the protocol sheets to use the faster jxls3 template processing. The categories are now listed in alphabetical order.
Expand All @@ -40,14 +40,32 @@
- The best athlete system can be selected when producing the results (the default is set in the overall competition rules.) on all three types of documents.
- Templates:
- the athlete's score and ranks in the current category are now obtained by using `${l.categoryScore}` `${l.categoryScoreRank}` (where l is the loop variable giving the current athlete).
- If the current category is not score-based, this is the same as `${l.total}`and the `${l.totalRank}`, so it is always possible to use the `Score` templates for a total-based competition.
- If the current category is not score-based, the score is same as `${l.total}`and the rank is same as `${l.totalRank}`. It is therefore always possible to use the `Score` templates for a total-based competition.
- added new properties
- ageGroup.sortCode and category.sortCodeWithAgeGroup for templates. ageGroup.sortCode uses the code, max and min ages. category.sortCodeWithAgeGroup adds the age group to the sort order - this is used when there are several open championships happening together.
- athlete.gender.translatedGenderCode now returns the translation (for example, W instead of F)
- athlete.sortedCategoriesAsString for use in emergency fixes to SBDE -- ensures main category is the most specific one.
- athlete.sortedCategoriesAsString for fixing SBDE exports such that the main category is the most specific one
- Removed the LEGAL paper size from the list.
- Bar Loading:
- The weight under which collars are not used is now configurable. Default is 40kg.
- The normal grey bar color is used when 15kg bar is used for women or 20kg is used for men, even if the non-standard bar or children loading rules are in effect.
- Added a feature switch "usawCollars" to use collars if available except for U11 and U13 age groups (threshold is ignored)
- Documentation
- Reorganized the structure for running a comp, updated screenshots

- Records
- Exporting current records: It is now possible to export only the latest record for all the loaded records. There are two types of templates: the ones that start with "export" can actually be loaded in the program. The ones that start with "report" have translated column headers are meant for readability -- you can upload them to a Google Sheet for example.
- You can keep a historical master copy of the records by exporting all (which will include the successive improvements to a record). You can reload this at every competition.
- Medals: Medals are ordered by age group.
- Younger age groups first, presented in ascending bodyweight classes
- 15-20 comes before 17-20, with an exception for "all ages" age groups: M85 Masters (85-999) comes before Open (0-999)
- For age groups that have identical age ranges, groups with body weight categories before those that don't (score-based medals will be after the regular medals)
- Other
- IP addresses: if the network is using switches only with no DHCP server reachable, some servers may auto-configure with a link-local (169.254) address. Such addresses were previously hidden and will now be shown in the list.
- Experimental feature to stop or restart the system from the web interface. Currently shown on the home page if the feature switch `manageOwlcms` is present.
- Ages are now always calculated relative to the competition date.



For other recent changes, see [version 52 release notes](https://github.com/owlcms/owlcms4/releases/tag/52.0.6) and [version 53 release notes](https://github.com/owlcms/owlcms4/releases/tag/53.1.0)
4 changes: 2 additions & 2 deletions docs/Downloads.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@ Several options are available for installation, depending on your needs. Additio

| | |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| **Local Setup** <br />This installs the `owlcms` program to run a competition locally, on a master laptop. No internet connection is needed.<ul><li>[Windows Installation Instructions](https://owlcms.github.io/owlcms4/#/LocalWindowsSetup)<li>[Mac/Linux/Raspberry Installation Instructions](https://owlcms.github.io/owlcms4/#/LocalLinuxMacSetup)<li><nobr>[Release Notes](https://github.com/owlcms/owlcms4/releases/tag/54.1.0)</nobr></ul> | <nobr><i class="material-icons" style="transform: translatey(0.30em)">file_download</i> **[Windows Installer](https://github.com/owlcms/owlcms4/releases/download/54.1.0/owlcms_setup_54.1.0.exe)**</nobr><br/><i class="material-icons" style="transform: translatey(0.30em)">file_download</i>[Zip for Mac, Linux or Raspberry](https://github.com/owlcms/owlcms4/releases/download/54.1.0/owlcms_54.1.0.zip) |
| **Cloud-based Setup**<br />This installs the `owlcms` competition management software in the cloud. Good internet access is needed but no local software is needed. The `publicresults` companion program allows individuals to see the scoreboard on their own phone or tablet no matter where they are located.<ul><li>[Fly.io Cloud Installation Instructions](https://owlcms.github.io/owlcms4/#/Fly)</li><li><nobr>[Release Notes](https://github.com/owlcms/owlcms4/releases/tag/54.1.0)</nobr></li></ul> | |
| **Local Setup** <br />This installs the `owlcms` program to run a competition locally, on a master laptop. No internet connection is needed.<ul><li>[Windows Installation Instructions](https://owlcms.github.io/owlcms4/#/LocalWindowsSetup)<li>[Mac/Linux/Raspberry Installation Instructions](https://owlcms.github.io/owlcms4/#/LocalLinuxMacSetup)<li><nobr>[Release Notes](https://github.com/owlcms/owlcms4/releases/tag/54.2.0)</nobr></ul> | <nobr><i class="material-icons" style="transform: translatey(0.30em)">file_download</i> **[Windows Installer](https://github.com/owlcms/owlcms4/releases/download/54.2.0/owlcms_setup_54.2.0.exe)**</nobr><br/><i class="material-icons" style="transform: translatey(0.30em)">file_download</i>[Zip for Mac, Linux or Raspberry](https://github.com/owlcms/owlcms4/releases/download/54.2.0/owlcms_54.2.0.zip) |
| **Cloud-based Setup**<br />This installs the `owlcms` competition management software in the cloud. Good internet access is needed but no local software is needed. The `publicresults` companion program allows individuals to see the scoreboard on their own phone or tablet no matter where they are located.<ul><li>[Fly.io Cloud Installation Instructions](https://owlcms.github.io/owlcms4/#/Fly)</li><li><nobr>[Release Notes](https://github.com/owlcms/owlcms4/releases/tag/54.2.0)</nobr></li></ul> | |
| **Documentation** | [Documentation site](https://owlcms.github.io/owlcms4/#/index) |

Note: the table above matches the repository you are looking at. If you are looking at the stable release documentation, the links will take you to stable releases, and if you are looking at the prerelease documentation, the links will take you to the preliminary release. If you need the other kind, please use the following links:
Expand Down
44 changes: 25 additions & 19 deletions docs/LocalLinuxMacSetup.md
Original file line number Diff line number Diff line change
@@ -1,25 +1,26 @@
## macOS, Linux or RaspberryOS Installation

> Pre-requisite: You may need to perform a simple install prior to installing owlcms. See the [Installing Java](#installing-java) section at the bottom of this page to check.
> Pre-requisite: You may need to install the Java language on your computer before installing owlcms. See [Installing Java](#installing-java) section at the bottom of this page to check.
## Installation

- **Get the installation zip archive**: Get the current **[`owlcms_setup_54.1.0.zip`](https://github.com/owlcms/owlcms4/releases/download/54.1.0/owlcms_setup_54.1.0.zip)** file. Installation files are available as assets at the bottom of each release in the [release repository](https://github.com/owlcms/owlcms4-prerelease/releases/latest) .
- **Get the installation zip archive**: Get the current **[`owlcms_setup_54.2.0.zip`](https://github.com/owlcms/owlcms4/releases/download/54.2.0/owlcms_setup_54.2.0.zip)** file. Installation files are available as assets at the bottom of each release in the [release repository](https://github.com/owlcms/owlcms4-prerelease/releases/latest) .

> Tip: [This page](RaspberryInstall) illustrates the sequence of steps on a RaspberryPI and may help you follow along since the process is similar for the other platforms.
- Double-click on the downloaded zip file, and extract the files to a directory.

- On a Mac We suggest you use `~/owlcms` as the unzipped location.
- We suggest you use `owlcms` in your home directory as the unzip location

- Go to your installation directory where you unzipped owlcms
- Start a terminal window and go to the installation directory where you unzipped owlcms. `~/owlcms` is the shortcut abbreviation for the `owlcms` directory inside your home.

```bash
cd ~/owlcms
java -jar owlcms.jar
```
This will actually start the program. See [Initial Startup](#initial-startup) for how to proceed.
This will start the program. See [Initial Startup](#initial-startup) below for how to proceed further.

If you just want to use dummy data to practice (this will not touch your actual database), click on the grey box to copy this command and paste it.
- If you just want to use dummy data to practice (this will not touch your actual database), you can add the following additional options to the java command to start with demo data and run in memory without touching your data.

```
java -DmemoryMode=true -DinitialData=LARGEGROUP_DEMO -jar owlcms.jar
Expand All @@ -28,36 +29,41 @@

## Initial Startup

When owlcms is started on a laptop, two windows are visible: a command-line window, and an internet browser
When owlcms is started on a laptop, two windows are used: a command-line window, and an internet browser

- The command-line window (typically with a black background) is where the OWLCMS primary web server shows its execution log.
- The terminal (command-line) window (typically with a black background) is where the OWLCMS primary web server shows its execution log. Something like this will be visible to show that all is going well. If you have already started the owlcms program, you may see an error message telling you that you can only have one at a time -- you will need to find the other one and stop it.
![log](img/LocalInstall/log.png)

All the other displays and screens connect to the primary server. <u>You can stop the program by clicking on the x</u> or clicking in the window and typing `Control-C`. The various screens and displays will spin in wait mode until you restart the primary program -- there is normally no need to restart or refresh them.
- Normally, a browser will be opened automatically. If the browser does not open automatically, start a browser and navigate to http://localhost:8080 . The browser will sit there waiting for the program to finish loading the database and become ready.

- Depending on the platform, a browser will be opened automatically (or not). If the browser does not open automatically, navigate to http://localhost:8080
- After the browser page loads, if you look at the top, you will see what address to use when connecting from other laptops

- After the browser opens, if you look at the top, you will see two or more lines that tell you how to open more browsers and connect them to the primary server.
![startup](img/LocalInstall/startup.png)

![060_urls](img\LocalInstall\060_urls.png)
In this example the other laptops on the network would use the address `http://192.168.1.174:8080/` to communicate with the primary server. "(wired)" refers to the fact that the primary laptop is connected via an Ethernet cable to its router -- see [Local Access](EquipmentSetup#local-access-over-a-local-network) for discussion.

In this example the other laptops on the network would use the address `http://192.168.4.1:8080/` to communicate with the primary server. "(wired)" refers to the fact that the primary laptop is connected via an Ethernet wire to its router -- see [Local Access](EquipmentSetup#local-access-over-a-local-network) for discussion. When available, a wired connection is preferred.
> When running a competition with a local router, it is recommended to connect the owlcms server to the router with an Ethernet cable. If a (wired) address is shown, this is the one you should use on the other laptops.
The addresses shown <u>depend on your own specific networking setup</u> and you normally use one of the addresses displayed on the home page.

If none of the addresses listed work, something in your networking setup is preventing access. The most likely cause is a firewall running on the server or on the network, which will need to be disabled.

The address <u>depends on your own specific networking setup</u> and you must use one of the addresses displayed **on your setup.** If none of the addresses listed work, you will need to refer to the persons that set up the networking at your site and on your laptop. A "proxy" or a "firewall", or some other technical configuration may be blocking access, or requiring a different address that the server can't discover.
- All the other displays and screens connect to the primary server. <u>You can stop the program by clicking on the x</u> or clicking in the window and typing `Control-C`. If you stop the program, all the other screens and displays will wait. If you restart the main program, they will notice and reload. Normally there is no need to reload them manually, but there is no harm in doing so.

## Installing Java

Make sure you have a Java17 installed.

- You can type `java -version` in a Terminal window to see if it is installed, and if so, what version you have.

- On RaspberryOS, Java is already installed.
- If Java is missing

- For macOS, see [MacOS Java 17](https://adoptium.net/temurin/releases/?os=mac&package=jre&arch=aarch64&version=17) and download the .pkg file. (Temurin is the code name for one of the free Java releases). Double-click the file.
- For macOS, see [MacOS Java 17](https://adoptium.net/temurin/releases/?os=mac&package=jre&arch=aarch64&version=17) and download the .pkg file. (Temurin is the code name for one of the free Java releases). Double-click the file.
- For Raspberry Pi, Ubuntu and other Debian variants, type

- For Ubuntu and other Debian variants, the following should work.

```bash
sudo apt install default-jre
sudo apt install openjdk-17-jdk
```

- For other Linux distros, see [Linux Java 17](https://adoptium.net/temurin/releases/?os=linux&package=jre&arch=any&version=17) and choose according to the Linux you run
- For other Linux distros, see [Linux Java 17](https://adoptium.net/temurin/releases/?os=linux&package=jre&arch=any&version=17) and choose according to the Linux you run
Loading

0 comments on commit 5ca8b1a

Please sign in to comment.