docs: release notes format and patch notes for v2.0.0-beta to v2.4.0-beta
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
142325730d
commit
30227a1c67
6 files changed
+193
No files matched your search
@@ -0,0 +1,43 @@
|
||||
RenewCMS is no longer a one-person tool. The admin can now invite other people, each with their own account and the exact same access, and everyone can set a display name.
|
||||
|
||||
## New
|
||||
|
||||
**Invite other users**
|
||||
- A new Users page in the back-office lists everyone who can sign in, plus pending and expired invites, with a status badge for each.
|
||||
- Invite user sends an email with a personal link. The link works once and expires after 3 days.
|
||||
- Invited people choose their own username and password on a new Accept invite screen, and land on Home already logged in.
|
||||
- Everyone shares one workspace: same articles, same images, same access.
|
||||
- Registration stays closed to everyone who wasn't invited.
|
||||
- A new invitation email template supports light and dark mode.
|
||||
|
||||
**Display name and profile**
|
||||
- A new Profile page is opened from the account menu at the bottom of the sidebar.
|
||||
- Set an optional display name (up to 60 characters). It replaces your username in the sidebar, the account menu, the Home greeting, the Users list and the emails RenewCMS sends. Clear it to go back to your username.
|
||||
- Send yourself a password reset link from the Profile page.
|
||||
- The account chip now opens a menu with Profile and Log out, and keeps the System, Light and Dark theme choice.
|
||||
|
||||
## Improvements and fixes
|
||||
- Accepting an invite is atomic: two simultaneous requests with the same link can only create one account.
|
||||
- The Accept invite screen shows a retry option instead of a permanent spinner when the invite can't be loaded.
|
||||
- Invite email validation is now the same in the browser and on the server.
|
||||
- The mobile account sheet reports its open state correctly and returns focus to the account chip when it closes.
|
||||
- A failed password reset email is now logged on the server. The response is unchanged.
|
||||
|
||||
## API
|
||||
- `PATCH /v1/user/me` sets the display name.
|
||||
- `GET /v1/auth/me` and `POST /v1/auth/verify` now return `display_name`.
|
||||
- `GET /v1/user/` lists users and invites.
|
||||
- `POST /v1/user/invite` sends an invite and is rate limited.
|
||||
- `GET /v1/auth/invite` and `POST /v1/auth/invite/accept` power the Accept invite screen.
|
||||
|
||||
## Under the hood
|
||||
- Deleting a user now goes through the persistence model.
|
||||
|
||||
## Upgrading
|
||||
- Download the binary for your platform, replace the old one and restart. Your `.env` and SQLite file stay as they are.
|
||||
- The database migrates itself on startup. It adds a `display_name` column to `users` and a new `invites` table. Existing data is untouched. Back up your SQLite file first as a precaution.
|
||||
- Invitation emails need working SMTP settings, like the verification and reset emails already do. No new environment variables.
|
||||
|
||||
## Known limitations
|
||||
- Users and invites can't be removed, revoked or resent yet, and there are no roles: everybody is an equal admin.
|
||||
- Invited addresses that already have an account are rejected. An expired invite can be replaced by sending a new one.
|
||||
Reference in new issue
Block a user