Skip to content

Comments

Task: Release Candidate v.2.3.0#546

Merged
jonrandahl merged 228 commits intopreprodfrom
dev
Jan 5, 2026
Merged

Task: Release Candidate v.2.3.0#546
jonrandahl merged 228 commits intopreprodfrom
dev

Conversation

@jonrandahl
Copy link
Contributor

@jonrandahl jonrandahl commented Dec 12, 2025

Version 2.3.0 changes

This pull request introduces several infrastructure and configuration updates,
focusing on modernising dependencies to remove known vulnerabilities, improving
development tooling like docker image build, and enhancing code style consistency via linting improvements.

What's changed

  • Upgraded myriad of dependencies, both in Ruby on Rails and Vue/Javascript, to remove or reduce known vulnerabilities
  • Upgraded Node.js version from 22 to 24 and Bundler from 2.7.1 to 2.7.2 .
  • Updated Yarn to 4.12.0 in .yarnrc.yml
  • Refactored the Dockerfile for better layering, asset build logging, and reduced image size
  • Streamlined installation of Ruby gems and Node modules with improved logging
  • Overhauled .rubocop.yml to inherit from rubocop-rails-omakase
  • Added increased stricter and more consistent style rules for both rails and vue codebases
  • Removed the custom .eslintrc.js and .eslintignore for more modern approach
    via the flat config approach
  • Updated the pre-commit hook to use rubocop -a (autocorrect) instead of -A
    (unsafe autocorrect), which is safer for code changes
  • Added METRICS_PORT to .env.development for local monitoring

Additional changes:

  • Rewrote the CHANGELOG.md from v2.0.0 to follow the Keep a Changelog format, which added clearer version history, grouped changes by type (Added/Changed/Fixed/Removed), and improved readability for ongoing releases.

jonrandahl and others added 30 commits October 21, 2025 10:39
- Moves log level configuration before logger setup so the level is applied correctly.
- Initialises structured logging only when running at debug to reduce noisy test output.
- Cleans up test environment logging config.
- Switches project changelog to Keep a Changelog with SemVer.
- Merges and tidies historical release notes.
- Adds entry noting improved test logging and log level handling.
- Normalises style and clarifies wording across entries.
- Only for v2 or greater changes
chore: reduce test log noise and standardise changelog

### Changed
- Adjusts test environment logging to respect the configured level and
cut noise unless debugging
- Rewrites the changelog to follow Keep a Changelog with semantic
version sections
- Notes the test logging behaviour under unreleased updates
- Add explicit lower bounds for dependency versions
- Resolve warnings about open-ended version constraints
- Use consistent format for specifying version requirements
- Bump rails suite and related gems to new major/minor releases
- Adjust versions of all rails dependencies to keep compatibility
- Add new dependency for text editing support
- Align minimum dependency versions for affected gems
- Bump essential libraries for better support and fixes
- Update utility gems like json, mail, marcel, and minitest family
- Add or upgrade low-level dependencies like tsort, rake, rdoc and logger
- Upgrade third-party libraries for security and support
- Update numerous utility, networking, and builder libraries
- Patch test dependencies and minor libraries
- Refresh top-level dependency metadata for new versions
- Align library version specifiers for updated gems
- Ensure ranges agree with installed set
- Raises logging tool version to 2.2.0 for improved compatibility
- Updates structured data gem to 2.16.0
- Bump faraday to 2.14.0 with new dependency constraints
- Update faraday-net_http to 3.4.2 and require a newer net-http
- Expand faraday-follow_redirects requirement to allow any 0.x version
- Update dependency versions for consistency with gem updates
- Bump server and metrics dependencies to latest compatible versions
- Ensure compatibility by avoiding a specific unsupported release
- Improve reliability and performance through updated dependencies
- Restore the minimal version for HTTP redirect handling
- Update templating engine to version 7.0.2
- Update related integration to version 3.0.0
- Keep gem alignment with core framework requirements
- Update minimum and recommended version to 0.4.0
- Ensure dependency requirements are clear and up to date
- Add user-facing message before running linting
- Enable safe auto-correction of code style issues
- Make linting task more informative and user friendly
- Remove all rubocop:disable, ::enable, and code/line disables
- Clean up test and rake files for better readability
- Avoid inline code style suppression within methods and classes
- Improve logging code style for readability
- Split long log lines into multi-line calls
- Adjust parameter passing for better maintenance
- Update string interpolation and presence checks
- Replace complex nested ternary with concise Ruby idioms
- Replace non-nil checks with Ruby literal idioms where possible
- Remove unnecessary rubocop disables
- Simplify perform_query signature and return value assignment
- Replace double quotes with single quotes where possible
- Use fetch and present? idiom for environment variables
- Standardise file and environment variable access
- Use single quotes for Ruby requires across binstubs
- Consistently set up environment variables and Gemfile
- Remove redundant error handling structure
- Remove deprecated and commented-out configuration settings
- Maintain clarity by eliminating unused code and warnings
- Add proper whitespace around conditional operators
- Use idiomatic Ruby spacing for ternary expressions
- Fix potential operator precedence errors
- Replace deprecated global variable with preferred one
- Improve code clarity and style
- Replace presence check with a nil check for clarity
- Prevents possible errors when the environment variable is set but blank
- Replace project name variable with short name in linting message
- Remove unnecessary dependency from linting task
- Exclude additional development directories from code analysis
- Prevent unnecessary linting in generated or binary paths
- Tidy up linter configuration for consistency
- Add inline disable for rubocop Rails/Output on debug logging lines
- Clarify intent for direct console output for debugging in dev environment
- Include capybara linting plugin in configuration
- Add corresponding development gem dependency with proper grouping
- Refactor gem groups for clarity and maintainability
- Reorder gems by usage domain with added inline documentation
- No behavioural impact to existing workflow
jonrandahl and others added 24 commits December 11, 2025 10:39
- in runtime: application uses __APP_VERSION__ directly (no function calls, no async, no HTTP)
refactor: extract head into a partial, inject app version at build time,
and improve Vue app mounting logic

- Refactors head markup into a reusable partial for maintainability
- Injects application version directly at build time via build tooling
- Ensures Vue app only attempts to mount if appropriate element exists,
reducing frontend console errors
- Normalises root path for router setup to improve navigation handling
- Updates environment variable ignore rules for consistency
- resolves `error  '__APP_VERSION__' is not defined  no-undef`
- resolves `warning  Prop 'indicator' requires default value to be set  vue/require-default-prop`
- resolves `'Spring::Client::Run#verify_server_version': Error connecting to Spring server (RuntimeError)`
chore: improve developer workflow and code consistency

- Stops Spring before tests to prevent stale state in CI
- Sets a default for optional indicator prop to ensure no undefined
errors
- Simplifies environment variable handling for the root path
- Adds the app version as a writable global for linting purposes
- Standardises function spacing for style consistency
@jonrandahl jonrandahl marked this pull request as ready for review January 5, 2026 14:45
@jonrandahl jonrandahl self-assigned this Jan 5, 2026
@jonrandahl
Copy link
Contributor Author

To note: The next UKHPI update is scheduled for the 21st of January 2026

Copy link
Contributor

@joescottdave joescottdave left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@jonrandahl jonrandahl merged commit 17b6c95 into preprod Jan 5, 2026
4 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants