Releases: gramps-project/gramps-web-api
v3.2.0
Speedup: request caching 🚀
This release finally introduces server-side caching of requests! Needless to say, it does so in a way that does not compromise the safeguarding of your data, respecting the permissions level of the requesting user.
While you're not editing your tree but "only" browsing it, this should lead to a massively faster browsing experience, as any data that has been requested before will be served from cache rather than having to be recomputed. This will be particularly noticable for costly requests, like DNA matches with relationship information or tree graphs.
The caching is controlled by the new REQUEST_CACHE_CONFIG
configuration option. Note that the default docker image caches requests in a directory under /app/cache/
. If you have modified the volumes from the default docker compose file, please make sure that /app/cache/request_cache
is inside a docker volume.
Telemetry (anonymzed & opt-out) 📡
Starting from this version of Gramps Web API, every 24 hours, a Gramps Web API server will send a small JSON object to an endpoint controlled by the maintainer of Gramps Web with the following information:
- a fully anonymized unique identifier of the server
- a fully anonymized unique identifier of the tree
- a timestamp
This information will be used by the Gramps Web developers to understand the current number of active Gramps Web installations, which is important e.g. to decide about which map tile service to use by default.
You can opt out from this telemetry by setting the config option DISABLE_TELEMETRY
to something trueish, but please don't, as we would like to have more realistic statistics. Thank you!
You can read more about the details in the documentation and leave your feedback on the forum.
Note that the timestamp is stored in a cache controlled by the new PERSISTENT_CACHE_CONFIG
configuration option. The default docker image uses a directory under /app/cache/
for this. If you have modified the volumes from the default docker compose file, please make sure that /app/cache/persistent_cache
is inside a docker volume that is accessible to both the Gramps Web API container and the Celery container, otherwise the telemetry will be sent more often than needed (you can check the logs of your Celery container to check when the telemetry is sent).
New development setup 🔧
To simplify getting started with Gramps Web API development, we have created a new default development setup. It is based on Visual Studio Code and Dev Containers.
This uses containers to set up a standardized, fully featured development environment with all the necessary dependencies and the possibility to spin up a local Gramps Web API instance with an example family tree database with a single command in VS Code, without interfering with your local Gramps installation.
To find out more, check out the new development documentation.
Needless to say, if you already have a working development environment and you don't want to change it, there is no need to switch to dev containers.
Other changes 🩹
- The
/api/events/
endpoint now additionally returns the raw place name in theprofile
(previously, it only returned the formatted place name that depends on the configured place format) - Fixed an error preventing the replacement of missing files in media objects when using object storage (#651)
- Fixed an issue with the search reindex CLI command (#652)
v3.1.0
Speedup: search index updates as background tasks
With this release, adding or updating objects from the web interface should feel much snappier, as the search index update is now done in a background task after the request has returned, rather than blocking the request. This should be particularly noticable when semantic search is enabled.
Improved alternative place names in place profile
@cajturner improved the place profile by adding alternate place names including their dates. This will be the basis of displaying and editing alternative place names in Gramps Web.
v3.0.2
This patch release fixes another issue with revision database migration.
v3.0.1
This release fixes an issue with the upgrade of the revision database: since it does not filter by tree ID when executing the conversion, it can lead to OOM errors for large shared instances.
v3.0.0
Gramps Web API 3.0 based on Gramps 6.0
This is a new major release of Gramps Web API based on Gramps 6.0.
Gramps 6.0 includes a new major release of the Gramps core library, introducing changes to the Gramps database schema. (For experts, one of the most important changes is that Gramps no longer stores family tree objects as binary "blobs", but as human-readable JSON, which makes it even more future-proof and even easier to use with Gramps Web API, which is based on exchanging data in JSON format).
As with every major release of Gramps Web API, upgrading requires additional steps to make sure the database schema upgrade runs smoothly.
Please back up your tree before you upgrade.
Detailed upgrade steps can be found on the Gramps Web documentation site.
v2.9.2
v2.9.1
v2.9.0
This release introduces a new and greatly improved layout for the automated emails that are sent when a new user is registered or when resetting a user's password. They now feature pretty HTML layout when supported by the email client!
In addition, dummy e-mail API endpoint has been added, which will allow implementing an email setup test functionality in the frontend.
Thanks to @DanielMorsch for implementing this!
v2.8.2
v2.8.1
This patch release fixes a regression introduced in v2.8.0 affecting a filter needed for the relationship chart view in Gramps Web.