Releases: CSCfi/rems
v2.39.1 "Jätkäsaarenlaituri +1"
v2.39 "Jätkäsaarenlaituri"
Additions
- Use
:oidc-use-stateand value:csrf-tokento configure REMS to send a CSRF token instateparameter to the login server and then check its value in the callback. (#3367) - REMS now includes user simulator, which is a developer tool intended for load testing REMS. The initial version is fairly basic and does not have a lot of features, but it can be used to test system performance and stability. See
docs/development.mdfor more details.
Changes
- Create license admin page:
- When creating attachment license, the save button no longer activates until all attachments have been successfully uploaded. (#3292)
- Attachment upload error is indicated by small icon next to the upload button (detailed error is still shown in top of the page).
- Pending attachment upload is indicated by spinner next to the upload button.
- Edit buttons on the administration detail pages are hidden when the user is not permitted to edit, like they are hidden on the list pages already (#2814)
- Update the Docker image and CircleCI build image to latest available Java version (25 and 21, respectively). (#3395)
- Handler can now join an application as a member, and be added as a member. This is to facilitate demos in certain situations rather than a suggested way of using REMS in production. The earlier behaviour where handlers are not permitted to accept invitations can be switched back on under Workflow settings. (#3100)
Fixes
- Resolved issue where workflow voting could not be removed, which caused UI to display raw translation keys due to nil voting values. (#3357)
- Fixed an issue with the application page where the 'Add member' dropdown menu displayed members that already exist in the application. (#1412)
- Document title no longer shows an extra em dash when the localized application title is empty. (#3398)
- Fix audit log API. Technical error from incorrect response. (#3380)
- Fixes to enable JVM 25 support (tolitius/cprop#60, https://clojure.atlassian.net/browse/CLJ-2764)
- Catalogue table had the add/remove cart commands even when not logged in. (#3408)
- Fixed an issue causing the
fix-useridadministration script to break in some edge cases. Additionally, all fixes are now attempted even if one or more fails. (#3383)
v2.38.1 "Välimerenkatu +1"
Fixes
- Fixed bug in user settings cache that caused notification emails to not show up in the UI, API or CLI until modified.
v2.38 "Välimerenkatu"
This release contains major changes to the REMS internal architecture regarding the caching of information. We have improved the caching behavior previously during the year, but now we drop the requirement for REMS to reload the application cache every hour or so. This was problematic, if the reload was slow, because it would stop REMS for a while and could lead to running out of memory. REMS got slower with more data, handlers and so on which made the problem worse.
The fundamental idea is that most information in REMS is cached, and can be served from the cache. We have tried to make this the fastest REMS release by going through all the previously sluggish actions. While this does not change the UI, the API or functionality, it is large enough to warrant this note. The release passes all our tests and has also been manually tested. Before deploying this release, consider doing some additional manual testing for your use cases.
About the REMS performance and test data. We have tested REMS performance using 1000+ catalogue items, 3000+ applications with 20+ largeish events each. The workflow contains 100 handlers each. We also test the forms with 200 fields. With these numbers, REMS performance is fine with any modern server with around 4 GB of memory.
Additions
- Catalogue tree now supports keyboard interactions for ARIA
role="tree". Navigation works with arrow keys and Home/End, tree nodes can be opened/closed with Enter key, and default action (like add to cart) works with Enter key. (#3336)
Changes
- The logging of the simultaneous request count (
rqc:) is now done for the request and response log lines only, and separately. Previously the same value was used for all logging in a request, which could be confusing as the actual request count can change between the lines. - The performance has been improved when there are many handlers. (#3283)
- The error message "shake" animation has been removed. (#3298)
- The collapsible component no longer animates on open/close.
- If REMS is trying to send email, and if the address has an obvious problem, REMS will not try sending it again, but gives up immediately. This should avoid having many hopeless retries, if there is a typo in an email address.
- Form editor performance has been significantly improved. To give rough numbers, the editor now works smoothly with 200 form fields in test data. (#3105)
- The wording about experimental is removed from GA4GH API. It is already used in production. (#3299)
- Licenses are ordered consistently (alphabetically) wherever they appear. (#3302)
Fixes
v2.37 "Laivapojankatu"
Additions
- The "Change Form" function in administration has been expanded to be able to change both forms and workflows. From now on it is called "Update catalogue item". The old
change-formAPI still exists but has been deprecated. (#3271)
Changes
- Invitation links work multiple times. Previously, they were single-use. The invitation token is spent on the first use and it grants the rights then. However, the user may still use the link later for navigating into the application or workflow in question. (#3275)
- Invitation gives a more informative error when handling user tries to join application. (#3291)
v2.36 "Laivapojankuja"
Additions
- (Experimental) Voting options are expanded to have types, i.e. reviewer and handler voting. Use
:enable-voting. (#3257) - Email templates (
:t.email/...) and event translations (:t.applications.events/...) now support named format parameters, and default english localizations have been updated for reference. While REMS moves towards fully supporting named parameters, all translations with index parameters should continue to work. Localizations with many parameters (like emails) have been burdensome to maintain with index parameters, so transitioning into named parameters is highly encouraged. (#3241) - Processing states have been added. Now, in addition to the main states (draft, submitted, returned, approved, ...), the application tracks new "processing states" (i.e, "sub-states"). They can be added to facilitate for example standard bookkeeping of an application or technical integrations. The handler can change an application's processing state, when at least one has been configured in the application's workflow by the owner. Use
:enable-processing-states. (#3259)
Changes
- Form fields in workflow admin pages are re-structured to show most often needed fields first.
v2.35.1 "Selkämerenkatu +1"
v2.35 "Selkämerenkatu"
NB: This release removes the experimental application PDF export API. The non-experimental PDF export API is preferred instead. (#3098)
Additions
- By default administration pages show only "own organization" items. (#2046)
- The command-line use of REMS has been sped up. There are new commands
dev-setupandperf-setupthatdev_db.shuses to start faster (a combination of migrate and data). - Application expiration can be configured with
:application-expiration-process-limitto process a subset of applications instead of everything at once. (#3225) - Show organization in create workflow Forms dropdown (#3230)
- When copying an item, reset the organization, if it's not owned by the user. (#2880)
- Added malware scanning support. When
:malware-scanner-pathis set REMS will scan uploaded attachments and licenses with the executable at the provided path. Enabling:enable-malware-scanner-loggingwill pass the scanner executables output onSTDERRto the REMS application log. (#2905)
Changes
- Application expiration now logs more, and more often. (#3225)
- Catalogue page has been sped up with optimizations. The API supports not joining organization data if not required (
join-organization=false). - Adding a user to blacklist does not reload the full cache anymore. This should make it faster. Also the user is directed to Applications page after delete, not to Catalogue.
- Deleting a (draft) application is now faster because it does not reload the full cache, only update it.
- Editing workflows (e.g. handlers) should now be faster because it does not reload the full cache, only update it.
Fixes
- Big improvements in performance from small improvements in how applications and events are processed and cached. REMS should be able to handle a 100k event DB without breaking a sweat. (#2783)
- Administration dropdown buttons should now respond to clicks more widely, and not only by directly clicking text. (#3167)
- Catalogue item unarchive should no longer fail when form does not exist. (#3217)
- Current page updates correctly. (#3218)
- Fixed faulty check in application expiration that prevents sending expiration notifications for applications, and expiring those applications. (#3225)
v2.34.2 "Santakatu +2"
Fixes
- DUO codes in draft saved event no longer cause schema validation error when
:enable-duoconfig is false.
v2.34.1 "Santakatu +1"
NB: This release contains migrations!
Fixes
- A bug in event selection prevented migration (introduced in v2.34) from applying properly. This release contains a fixed version of that migration.