mirror of
https://github.com/suitenumerique/docs.git
synced 2026-10-14 12:15:27 +02:00
Added - 👷(ci) lint, typecheck, build and test the collaboration server (yhub) #2757 - 👷(ci) check the load-test tooling: swarm, canary, k6 and dashboards #2757 - 👷(ci) cancel the superseded runs of a pull request #2757 - ✨(backend) add mention endpoint with cooldown-limited email notification #2447 - 🚩(setting) add feature flag on Duplicate with Children #2721 - 💄(frontend) redesign 404 error standalone page #2696 - 💄(frontend) redesign 403 access denied page #2720 - ✨(frontend) duplicate with subdocuments #2584 - ✨(frontend) add markdown download option #2608 - ✨(frontend) turn pasted doc links into interlinks #2713 - ✨(helm) allow disallowing search engine indexing per instance #2694 - ✨(backend) expose the attachment max size in the config endpoint #2577 - ✨(frontend) warn before uploading an attachment over the size limit #2577 - ✨(loadtest) add a websocket load generator for the collaboration server #2556 - ✨(loadtest) add k6 scenarios for the page-open sequence and the heavy endpoints #2556 - ✨(loadtest) add browser canaries measuring what a user feels under load #2556 - ✨(loadtest) add the grafana dashboards of the load-test campaign, valkey included #2556 - 📝(documentation) add the load-testing guide #2556 - 🔧(helm) run grafana with those dashboards in the dev cluster, in place of the prometheus console #2556 - ✨(backend) measure the calls to yhub and to the converters, the database pool and the celery queue #2556 - ✨(backend) add a `LoadTest` configuration and its `loadtest` application, minting sessions for load tests #2556 - ✨(collaboration) add opt-in prometheus metrics to yhub, server and worker, protected by a bearer token #2556 - ✨(collaboration) report yhub errors to sentry, configured through `SENTRY_*` #2556 - ✨(backend) add opt-in prometheus metrics on `/metrics`, protected by a bearer token #2556 - ✨(helm) add a dedicated ingress for the prometheus metrics of the backend and of yhub #2556 - ✨(helm) add a ServiceMonitor and a PodMonitor per component whose metrics are enabled, and `backend.metrics.enabled` #2556 - 🔧(helm) scrape the metrics of the dev cluster with a trimmed kube-prometheus-stack and the ServiceMonitors of the chart #2556 - 🔧(helm) serve the example console of django-prometheus on the dev Prometheus #2556 - ✨(backend) add a service generating cached RS256 JWT tokens #2556 - ✨(backend) publish the JWT public key on a JWKS endpoint #2556 - 🔧(dev) generate the JWT signing key when bootstrapping the dev stack #2556 - ✨(collaboration) add an admin reset-connections endpoint on yhub #2556 - ✨(collaboration) add a create-ydoc endpoint on yhub #2556 - ✨(collaboration) soft-migrate legacy S3 documents into yhub #2556 - ✨(collaboration) replay legacy s3 version history into yhub #2556 - ✨(backend) add a service to call the yhub REST API #2556 - ✨(backend) call YHubService to seed initial document content #2556 - ✨(collaboration) add a get-ydoc endpoint on yhub #2556 - ✨(backend) duplicate a document through the collaboration server #2556 - ✨(backend) serve `documents/{id}/formatted-content/` from yhub #2556 - ✨(collaboration) notify the backend when the worker persists new content #2556 - ✨(collaboration) let a user read the document's editing history #2556 - ✨(frontend) fall back to http polling when the websocket cannot be opened. #2556 - 🔧(collaboration) make the version-history granularity configurable through `COLLABORATION_VERSION_GRANULARITY_MS` #2556 - ✨(frontend) keep a local copy of documents, so they open and stay editable offline #2556 Changed - 🛂(backend) let users allowed to comment list each other's accesses #2447 - ♻️(collaboration) migrate the collaboration server from hocuspocus to yhub #2556 - 💥(y-provider) y-provider becomes converter-only #2556 - 💥(backend) move the resource server JWKS from `/api/{version}/jwks` to `/external_api/{version}/jwks` #2556 - 🔧(collaboration) adapt docker stack for development purpose #2556 - 🔧(helm) run a valkey for the backend and one for yhub in dev and feature #2556 - 💄(frontend) redesign 401 error standalone page #2716 Fixed - 🐛(documentation) fix minio port and keycloak realm in the k8s guide #2751 - 🐛(collaboration) bound the calls yhub makes to the backend with a timeout, `YHUB_BACKEND_REQUEST_TIMEOUT_MS`, 5s by default #2753 - 🐛(backend) compensate document duplication failures #2755 - 🐛(frontend) open search results in a new tab with ctrl/cmd+click #2719 - 🐛(docker) pull minio images from pgsty #2739 - 🐛(backend) retry the duplicate of a document on a tree path collision #2726 - 🐛(frontend) keep caption and alignment when replacing an image #2730 - 🐛(backend) reset the collaboration connections on every access change #2725 - ⚡️(backend) coalesce and pace the resets of collaboration connections #2725 - 🐛(frontend) clear callout background on Backspace #2052 - 🐛(export) keep image aspect ratio in PDF columns #2670 - 🐛(frontend) fix redirect after deleting a document #2706 - 🐛(frontend) keep documents draggable with a mouse when zoomed #2727 - 📝(docs) fix markdown typo in installation README #2766 - 🐛(i18n) export locale correctly #2750 - 🐛(frontend) keep login and logout out of the service worker cache #2771 - 🐛(frontend) reduce PostHog volume from web vitals and opt_in spam #2701 - 🐛(frontend) stop reconnecting to the websocket based on the status code #2556 - 🐛(frontend) stop the service worker from caching the collaboration server's rest api #2556 Removed - 🔥(backend) remove the unused `CollaborationService` #2556 - 💥(backend) remove the `documents/{id}/can-edit/` endpoint #2556 - 💥(backend) remove the `documents/{id}/content/` endpoint #2556 - 🔥(backend) remove the document version endpoints. #2556 - 🔥(backend) remove `Document.content` #2556 Security - 🔒️(collaboration) stop read-only users from sharing their cursor #2556