Releases: lsst-sqre/mobu
14.2.1
What's Changed
- Force rubin-nublado-client >= 8.6.0 by @athornton in #435
Full Changelog: 14.2.0...14.2.1
14.2.0
New features
- Add SIAv2 QuerySet runner which uses pyvo.search to query the dp0.2 SIAv2 Service
Bug fixes
- CI jobs will now run all notebooks included in the PR, not just the ones changed in the latest commit. This fixes the case where the latest commit only fixes one of multiple bad notebooks in a PR, but passes the Mobu CI check.
What's Changed
- DM-49117: CI - Run all notebooks in PR by @fajpunk in #433
- DM-46672: always checkout refs, never files by @fajpunk in #430
- DM-48792: Create new QuerySet runner for SIAv2 by @stvoutsin in #400
- Prepare 14.2.0 release by @fajpunk in #434
Full Changelog: 14.1.0...14.2.0
14.1.0
New features
-
All time durations in business configurations can now be given as human-readable durations with suffixes such as
h
,m
, ands
. For example,5m30s
indicates a duration of five minutes and thirty seconds, or 330 seconds. -
Add
log_monkeys_to_file
config option to choose whether to write monkey logs to files or console. -
Add
start_batch_size
andstart_batch_wait
flock config parameters to allow starting monkeys in a more slow and controlled way.
Bug fixes
-
When starting a flock, create user tokens simultaneously (up to the limit of the httpx connection pool size of 100) rather than serially.
-
Fix jitter calculations in Nublado businesses.
-
Notebook repos are only cloned once per process (and once per refresh request), instead of once per monkey. This should speed up how fast NotebookRunner flocks start, especially in load testing usecases.
Other changes
- Modify TAPBusiness to use pyvo run_async instead of using submit_job and polling
What's Changed
- Change TAP async to use run_async from pyvo instead of submit_job and polling by @stvoutsin in #399
- DM-48825: Properly close async generators by @rra in #401
- DM-48838: Create Gafaelfawr tokens in parallel by @rra in #403
- DM-48798: Config option to disable monkeys logging to file by @fajpunk in #406
- DM-48977: Update to Python 3.13 by @rra in #408
- DM-48977: Update Dockerfile to use uv by @rra in #409
- DM-48977: Switch to new Python type variable syntax by @rra in #410
- DM-48977: Add override annotations where appropriate by @rra in #411
- DM-48977: Use HumanTimedelta for all business durations by @rra in #412
- DM-48977: Use datetime.now instead of current_datetime by @rra in #413
- DM-48977: Move dependencies to pyproject.toml by @rra in #414
- DM-48977: Move model_config to the start of classes by @rra in #415
- DM-48977: Rename Configuration to Config by @rra in #416
- DM-48977: Remove unneeded Black configuration by @rra in #417
- DM-48977: Treat the Slack alert webhook as a secret by @rra in #418
- DM-48977: Update GitHub Actions and tox dependencies by @rra in #419
- DM-48977: Use Safir helper for monkeyflocker help by @rra in #420
- DM-48977: Use .jinja extension for the scriv template by @rra in #421
- DM-48977: Remove unneeded warning exclusion by @rra in #422
- DM-48977: Add docs-linkcheck target and fix issues by @rra in #423
- DM-48977: Avoid underscores in URLs by @rra in #424
- DM-48977: Avoid noqa markers for empty business methods by @rra in #425
- DM-48941: Only check out notebook repos once by @fajpunk in #407
- DM-49032: Bump nublado client for websockets bugfix by @fajpunk in #427
- DM-49009: Stagered monkey start by @fajpunk in #426
- Prepare 14.1.0 release by @fajpunk in #429
Full Changelog: 14.0.0...14.1.0
14.0.0
Backwards-incompatible changes
- Instrument tracing and exception handling with Sentry. All timings are now calculated with Sentry tracing functionality, and all Slack notifications for errors come from Sentry instead of the Safir
SlackException
machinery.
New features
- Send an app metrics event for EmptyLoop iterations
Other changes
- Remove the limit from the autostart
aiojobs
Scheduler
. Attempts to start a job past the limit resulted in jobs silently never starting. There are no cases where we would want to limit the autostart concurrency, so a limit is not needed.
What's Changed
- U/fe/1 by @frossie in #392
- Docs minor fixup by @frossie in #393
- DM-48101: Sentry for notifications and timings by @fajpunk in #391
- DM-48628: Add app metric event to EmptyLoop by @fajpunk in #396
- DM-48697: No autostart concurrency limit by @fajpunk in #397
- Release 14.0.0 by @fajpunk in #398
New Contributors
Full Changelog: 13.2.0...14.0.0
13.2.0
What's Changed
- DM-47811: Fixes to address FAST001 and FAST002 ruff rules and update-deps #232 by @stvoutsin in #385
- DM-47389: app metrics by @fajpunk in #387
- DM-47389: Release 13.2.0 by @fajpunk in #388
New Contributors
- @stvoutsin made their first contribution in #385
Full Changelog: 13.0.1...13.2.0
13.0.1
What's Changed
- Update nublado client to fix XSRF issues by @athornton in #382
- Release 13.0.1 by @athornton in #383
Full Changelog: 13.0.0...13.0.1
13.0.0
Backwards-incompatible changes
- All app config, including autostart config (and excluding secrets, which still come from env vars) now comes from a single YAML file, provisioned by a single
ConfigMap
in Phalanx.
What's Changed
- DM-45394: Config from a single YAML file (except secrets) by @fajpunk in #380
- DM-45394: Release 13.0.0 by @fajpunk in #381
Full Changelog: 12.0.2...13.0.0
12.0.2
What's Changed
- adopt newer rubin-nublado-client with better exception reporting by @athornton in #379
Full Changelog: 12.0.1...12.0.2
12.0.1
What's Changed
- Be more cautious about cell 'id' by @athornton in #377
- prepare 12.0.1 by @athornton in #378
Full Changelog: 12.0.0...12.0.1
12.0.0
What's Changed
- Bump python from 3.12.4-slim-bookworm to 3.12.5-slim-bookworm by @dependabot in #368
- DM-46018: Update dependencies, use shared Ruff configuration by @rra in #369
- Bump python from 3.12.5-slim-bookworm to 3.12.6-slim-bookworm by @dependabot in #371
- Bump python from 3.12.6-slim-bookworm to 3.12.7-slim-bookworm by @dependabot in #372
- tickets/DM-46480: adopt shared rubin-nublado-client by @athornton in #374
- finish business by @athornton in #375
- Prepare for 12.0.0 release by @athornton in #376
Full Changelog: 11.0.0...12.0.0