Releases: uhd-urz/elAPI
A Normal Release
[2.4.3] - 2025-09-22
This is a hotfix release. See the version 2.4.2 changelog below for the new changes.
Fixed
- Fix how type for
ConfigurationValidationargument is validated that affectsbill-teamsplugin
[2.4.2] - 2025-09-22
This release brings some minor bug fixes and improvements.
Added
- elAPI
whoamithat shows information about the eLab user (
see documentation) - New configuration field
async_capacitythat lets you the maximum number of in-flight requests (
see documentation) - Improved
bill-teamsretry strategy that usesasync_capacity
Fixed
Changes
- Replace HTTPX's back-end with
aiohttp. This fixes #162.
In collaboration with @alexander-haller.
The mail plugin release
[2.4.1] - 2025-08-26
Note
This release deprecates support for Python versions 3.9 and 3.10.
This is a hotfix release. See the version 2.4.0 changelog below for the new changes. This hotfix release makes sure that elAPI out-of-the-box is supported on the browser with Pyodide.
Fixed
- Rollback httpx-limiter to version 0.3.0. The version 0.4.0 would break elAPI support on Pyodide (see GH #160)
[2.4.0] - 2025-08-25
Note
This release deprecates support for Python versions 3.9 and 3.10.
This release brings general bug fixes and a few major improvements.
Added
- The
mailbuilt-in plugin that is able to scan logs and send emails based on pre-configured trigger conditions (see documentation) - New configuration field
async_rate_limitthat lets you control requests per second (see documentation) - Global callback mechanisms (GH #156; see "Callback classes")
add_logging_levelto add new logging levels (see documentation)
Fixed
- Fix important bugs in
bill-teamsplugin
Changes
- Deprecate Python versions 3.9 and 3.10 (9778908)
- Improve architecture without breaking APIs (ARCHITECTURE.md)
- Improve
development_mode(GH #156; see "Betterdevelopment_mode")
In collaboration with @alexander-haller.
A hotfix release
Version 2.3.2 is almost identical to 2.3.3. Due to some bad package build, version 2.3.2 had to be yanked from PyPI. The main fix for this release is #151.
[2.3.3] - 2025-06-17
This is a hotfix release.
Fixed
- Bad PyPI publish
[2.3.2] - 2025-06-17
This is a hotfix release.
Fixed
- Newly installed elAPI, without
elapi.ymlconfiguration file aborts (
GH #151)
In collaboration with @alexander-haller.
The example release
[2.3.1] - 2025-05-23
This release brings some minor bug fixes and improvements.
Added
- Added
--include-team-idstobill-teams generate-table - Long-awaited examples/
Fixed
- elAPI re-installations (or new installation) would break
--helpdue to breaking click update (
GH fastapi/typer#1215)
Changes
- Migrated from Poetry from uv (GH #148)
Examples include contribution from @adalka and Philipp Kling. As always, in collaboration with @alexander-haller.
Holiday season 2024 release
[2.3.0] - 2024-12-21
This release mainly revamps and completes the bill-teams plugin that is used for billing eLabFTW usage at the
University of Heidelberg. It also addresses one important issue with third-party
plugins about version Python version mismatch.
Added
- Revamped
bill-teamsplugins withgenerate-tableandregistrycommands - Add
TXTformat support for--formatwherever--formatis supported
Fixed
- Fix response format being incorrectly fallback-ing to
TXT(GH #143) - Fix plugins using packages that use binary builds failing (GH #145)
Changes
- Improved how internal logic for
--exportacting as a both boolean and a string (e.g., a file path) - A third-party plugin that uses a virtual environment must use the same Python version as elAPI's own (GH #146)
In collaboration with @alexander-haller.
End of summer 2024 release
[2.2.0] - 2024-09-04
This release brings some general bugfixes, improvements, and new library APIs.
Added
- New sub-endpoint
/users/{id}/uploads(GH #136) - Better support for third-party plugins (GH #136)
- New
pluginsconfiguration field for plugin-specific settings (GH #136) - Introduce
project_dirto plugin metadata fileelapi_plugin_metadata.yml(GH #136, 191a049) - Aggressive logging support for
elapi.loggers.add_message; addchange_logger_statethat controls logger class
state (4aea161, 5a68585) - New and improved HTTP APIs: shared client support,
SimpleClient,GlobalSharedSession(GH #137) - elAPI specific user-agent string
elAPI/<elAPI version> python-httpx/<HTTPX version>(4bde6cd) - Improved
BaseFormatwithpackage_identifierattribute; better plugin formatter class support (GH #138) - Add
get_active_host_url_without_api_suffixthat complimentsget_active_host(6e42a9c) - Add new elAPI logo (4ca1f1f)
Fixed
- Fix configuration not being validated when
developer_modeis missing (GH #133) - Fix third-party plugins breaking if they used relative imports (GH #134)
Changed
- Disable
--OC/--override-configsupport fordevelopment_mode(GH #136) - All public CLI commands now use
GlobalSharedSession(GH #137) - Use
uvloopinstead of built-inasyncioevent loop forbill-teamsplugin (8c3750b); adduvloopas an optional
dependency touhd-urz - Bump versions of following dependencies and optional dependencies:
richto13.8.0,tenacityto9.0,
python-dateutilto2.9.0.post0
Removed
- Remove
keep_session_argumentparameter from HTTP APIs, which is replaced withshared_clientparameter (GH #137)
In collaboration with @alexander-haller.
Mid-summer 2024 release
[2.1.0] - 2024-07-29
This release brings some general bugfix and improvements.
Added
Fixed
- Fix optional validation causing
TypeErrorfor when elAPI is used inside a script (GH #126) - Fix long JSON text not being shown (GH #128)
- Fix highlighted output breaking
jq(GH #127) - Fix minor bugs (GH #125)
Changed
- Use
__aclose__and__acall__for async HTTP APIs via abstract classAPIRequestinstead of__call__
and__close__(9c640c3) - Always validate configuration, and validate only once (GH #129, 42e0b49)
Removed
- Remove CLI
--formattype optiontext(c5736ed)
In collaboration with @alexander-haller.
Hot-patch release
[2.0.2] - 2024-07-04
Hot-fix for README.md.
Fixed
[2.0.1] - 2024-07-04
Mainly a few hotfixes found during FDM Münster workshop.
Added
INFOmessage for when a plugin metadata file ending in.yamlextension is found (#120)
Fixed
- Fix elAPI plugin metadata file related issues (#118, #119)
- Fix
README.mdPyPI version badge not displaying new version
In collaboration with @alexander-haller.
FDM Münster release
[2.0.0] - 2024-07-03
The first-iteration of our long-awaited 2.0. As always, in collaboration with @alexander-haller ❤️.
Added
- File path support for
--OC,--data,--headers,--query,--file(#112) - Third-party plugin support (#111)
- Third-party plugin support with virtual environments (#114)
Fixed
Changed
- Default
timeoutis increased to90s (52)
Development release: Hot-patch release
[1.0.7.dev8] - 2024-06-26
Part of an important change (making bill-teams plugin
optional !53) unfortunately did not
work as expected. We release a quick fix in this development version.