Skip to content

Prepare release 2.5.0 - #179

Merged
wimaha merged 2 commits into
mainfrom
release/2.5.0
Oct 19, 2026
Merged

wimaha merged 2 commits into
mainfrom
release/2.5.0

Conversation

@wimaha

@wimaha wimaha commented Oct 19, 2026 •

Copy link
Copy Markdown
Owner

Prepares release 2.5.0, following "Releasing" in CHANGELOG.md.

What

scripts/check-release-docs.sh 2.5.0 passes, and so does go test ./....

After merging

  1. Tag the merge commit on main as 2.5.0 (no v, like 2.4.0) and push the tag. Until then, the link in the README note points to a tag that does not exist yet.
  2. The release workflow checks the docs, then publishes :2.5.0 and :latest.
  3. GitHub release notes: copy the 2.5.0 section of the CHANGELOG.

Highlights of 2.5.0

🤖 Generated with Claude Code

Follows "Releasing" in CHANGELOG.md:
- CHANGELOG: "Unreleased" becomes "2.5.0 - 2026-10-19" with a new, empty
  "Unreleased" above it; missing PR references (#174, #175, #176, #178)
  added to the entries.
- README and docs: every *(unreleased)* marker becomes *(since 2.5.0)*.
- README note at the top points to the README of 2.5.0.

scripts/check-release-docs.sh 2.5.0 passes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

🟡 Merge after the to-dos

This PR only changes docs (CHANGELOG, README, env var docs). No code changes. The risk is in what gets released: 2.5.0 has breaking changes and will become :latest.

Impact on existing users: Users who pull :latest get the breaking changes at once: GET /gen_keys and /remove_keys return 405, failed requests now return result: false (503) where some said true, and cross-site browser requests get 403 (a reverse proxy over plain HTTP may need trustedOrigins).

To-do for the author

  • Confirm you are happy to ship these breaking changes in a minor version (2.5.0) to everyone on :latest. Put the "Breaking" section first in the GitHub release notes.
  • Tag 2.5.0 right after merging. Until then the README link points to a missing tag.

Test before merging: On a real setup, check that evcc vehicle_data and a command still work on the :dev/:pr-179 image, and that the dashboard works behind your reverse proxy.

Technical details

@wimaha

wimaha commented Oct 19, 2026

Copy link
Copy Markdown
Owner Author

Bewusst 2.5.0: alle Änderungen betreffen nur fehlerhafte Requests, undokumentierte Endpunkte oder Browser von fremden Origins; Integrationen wie evcc/HA sind nicht betroffen.

None of the changes affect normal evcc or Home Assistant setups; they only
matter for a dashboard behind a plain-HTTP reverse proxy, scripts calling
the undocumented key endpoints with GET, and requests that actually fail.
The section now says so and lists the trustedOrigins case first.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@wimaha

wimaha commented Oct 19, 2026

Copy link
Copy Markdown
Owner Author

Shipping this as 2.5.0 on purpose. None of the changes touch the routes or JSON that integrations use. Normal evcc or Home Assistant setups need no changes:

  • POST-only key routes: they were never documented and are only called by the dashboard forms, which ship in the same release and already send POST.
  • result: false for failed requests: this fixes false success replies (for example set_charging_amps without a body). Valid requests behave as before.
  • 403 for cross-site browser requests: evcc, HA and curl send no Origin/Sec-Fetch-Site. The only realistic case is a dashboard behind a plain-HTTP reverse proxy, and trustedOrigins covers it.

The CHANGELOG section is now called "Upgrade notes", says this up front and lists the reverse-proxy case first (1d1aafd).

🤖 Addressed by Claude Code

@wimaha
wimaha merged commit 2ab9416 into main Oct 19, 2026
9 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.

1 participant