v0.12.0rc1
Pre-release
Pre-release
·
33 commits
to release/v0.12.0
since this release
What's Changed
- SEP-774: Add GitHub Pull Request template by @yyyyyyyan in #365
- SEP-662: Modify CSRF Token Refresh Logic for SPA Compatibility by @peter-o-addo in #367
- SEP-752: Upgrade presidio-analyzer and presidio-anonymizer to 2.2.361 by @yyyyyyyan in #366
- SEP-789 Update metrics naming to use enum values by @cortiz-percona in #383
- SEP-790 Add regex for incremental backup directory format by @cortiz-percona in #382
- SEP-765: Label-based CI merge gate by @yyyyyyyan in #372
- Bump version to v0.10.3 by @yyyyyyyan in #386
- SEP-799: Enable uvicorn autoreload for local/dev by @yyyyyyyan in #377
- SEP-802 Ability to use internal container registries by @cezmunsta in #385
- SEP-804: Add OPTIONAL_DEFAULT_TRUE SnippetSudoOption by @yyyyyyyan in #380
- SEP-794: Dynamic form defaults for PMM collector by @yyyyyyyan in #374
- SEP-793: PMM collector cleanup and Python 3.9 compat by @yyyyyyyan in #373
- SEP-792: Use Pydantic SecretStr to mask secrets by @yyyyyyyan in #369
- SEP-791: Rename FileMetadataResponse to FileMetadata by @yyyyyyyan in #368
- SEP-749: Make PBM credentials path configurable by @peter-o-addo in #356
- SEP-400: Enable ALL Restore Options by @peter-o-addo in #313
- SEP-785: Extract PMMRemoteAPI to shared client module by @yyyyyyyan in #391
- SEP-798: Rename Snippets Manager page heading by @yyyyyyyan in #390
- SEP-803: Snippet/Dipper preview content leaks outside the highlight container by @peter-o-addo in #387
- SEP-579: Change types in app/core/utils/fields.py to use constraints instead of Field by @peter-o-addo in #379
- SEP-795: Download button stuck on 'Preparing download' after file download starts by @peter-o-addo in #376
- SEP-826: Set up inventory test infrastructure by @yyyyyyyan in #399
- SEP-835: Add tests for Celery task execution layer by @yyyyyyyan in #414
- SEP-837: Add tests for periodic tasks subsystem by @yyyyyyyan in #413
- SEP-827: Add comprehensive node route tests for inventory API by @yyyyyyyan in #404
- SEP-828: Add service route tests for inventory by @yyyyyyyan in #403
- SEP-830: Add table and summary route tests for inventory by @yyyyyyyan in #402
- SEP-832: Add unit tests for tasks data models and validation by @yyyyyyyan in #412
- SEP-834: Expand integration tests for tasks API routes by @yyyyyyyan in #411
- SEP-838: Add tests for tasks execution subsystem by @yyyyyyyan in #410
- SEP-836: Add unit tests for app/tasks/deps.py by @yyyyyyyan in #409
- SEP-831: Add inventory model and configuration tests by @yyyyyyyan in #400
- SEP-839: Add tests for tasks config, anonymizer config, and DB utilities by @yyyyyyyan in #408
- SEP-829: Add schema route tests for inventory by @yyyyyyyan in #405
- SEP-833: Add unit tests for Tasks CRUD managers by @yyyyyyyan in #407
- SEP-850: Add unit tests for core Pydantic utilities by @yyyyyyyan in #419
- SEP-805: Replace label-based CI gating with paths-filter by @yyyyyyyan in #392
- SEP-563: Fix truncated Mydumper backup logs by @yyyyyyyan in #393
- SEP-807: Use signed URLs for artifact downloads by @yyyyyyyan in #397
- SEP-852: Add unit tests for SEP static file utilities by @yyyyyyyan in #416
- SEP-851: Add unit tests for tasks anonymizer logic by @yyyyyyyan in #417
- SEP-848: Add unit tests for sync exceptions and MySQL payload by @yyyyyyyan in #420
- SEP-849: Add unit tests for SEP dependency injection layer by @yyyyyyyan in #421
- SEP-846: Add unit tests for SEP CRUD managers and route handlers by @yyyyyyyan in #422
- SEP-847: Add unit tests for SEP snippets models and utilities by @yyyyyyyan in #424
- SEP-844: Add unit tests for SEP Celery module by @yyyyyyyan in #418
- SEP-845: Add unit tests for Nomad execution models by @yyyyyyyan in #423
- SEP-732: Add addlicense pre-commit hook and backfill copyright headers by @yyyyyyyan in #406
- SEP-806: Fix global JSON deserializer eagerly converting Task.data by @yyyyyyyan in #381
- SEP-777: Define alert template YAML schema and loader by @yyyyyyyan in #394
- SEP-858: Lazy-load settings singletons by @yyyyyyyan in #427
- SEP-424: Add next execution column to periodic tasks table by @yyyyyyyan in #428
- SEP-857: Add FOOTER_TEMPLATE to SEPSettings docstring and tests by @yyyyyyyan in #426
- SEP-778: Add alerting methods to PMMRemoteAPI by @yyyyyyyan in #395
- SEP-533: Scheduling tasks is confusing when using cron mode by @peter-o-addo in #401
- SEP-854. Parameter help causes parsing error in SEP for mysql_version.sh by @cortiz-percona in #434
- SEP-841 Permission issue in mysql_log_extractor.sh when reading MySQL error log by @cortiz-percona in #431
- SEP-853 Update parameter types in mysql_query_tuning script by @cortiz-percona in #433
- SEP-800 IO/CPU/load/memory utilization alert snippet by @crimethinking in #384
- SEP-801
TimeDriftPMMAgentsalert snippet by @crimethinking in #378 - SEP-693 Filter binary log files for all backup source types by @cortiz-percona in #318
- SEP-696 XB restore keeps .zst files after decompress by @cortiz-percona in #321
- SEP-698 Binlog PITR restore with
BINLOG_RESTORE_EXTRA_ARGSby @cortiz-percona in #323 - SEP-731: Upgrade celery to 5.6.2 to fix credential leakage by @yyyyyyyan in #441
- SEP-863 Update Redis container definition by @cezmunsta in #439
- SEP-869: Set minimum coverage threshold in CI by @yyyyyyyan in #450
- SEP-870: Support NO_COLOR convention in installer script by @yyyyyyyan in #451
- SEP-876 Integrate auto-updating PR branch base into GitHub Actions by @crimethinking in #452
- SEP-602: Include RDS instances in the inventory sync process by @peter-o-addo in #398
- SEP-779: Build alert templates list page with service filter tabs by @yyyyyyyan in #437
- SEP-878 Improve on auto-updating PR branch base by @crimethinking in #453
- SEP-699 World-writable permissions on backup logs and files by @cortiz-percona in #324
- SEP-861: Validate StrImportableAttribute fields at startup by @yyyyyyyan in #435
- SEP-822: Mydumper + Upload fails for file permissions in upload.log if XB backup was executed first by @peter-o-addo in #454
- SEP-821: Backups S3 information is not available in Edit page by @peter-o-addo in #446
- SEP-880 Use fine grained access token to auto-update PR branch base by @crimethinking in #459
- SEP-881: Update dependencies by @yyyyyyyan in #461
- SEP-811: Replace CSRF with OWASP Signed Double-Submit Cookie by @yyyyyyyan in #462
- SEP-780: Add push-to-PMM for alert templates by @yyyyyyyan in #455
- SEP-781: Add PagerDuty contact point management widget by @yyyyyyyan in #456
- SEP-867: Add strict_executor_matching setting by @yyyyyyyan in #448
- SEP-782: Implement periodic alert rules backup by @yyyyyyyan in #457
- SEP-813: Display inventory node names in execution target dropdowns by @yyyyyyyan in #442
- SEP-868: Replace eager schema/table loading with AJAX dropdowns by @yyyyyyyan in #449
- SEP-877: Update installer plugin lists by @yyyyyyyan in #465
- SEP-891: Fix core CSS dark mode visibility issues by @yyyyyyyan in #470
- SEP-895: Fix page-specific hardcoded colors for dark mode by @yyyyyyyan in #471
- SEP-892: Make syntax highlighting theme-aware for dark mode by @yyyyyyyan in #472
- SEP-888: Fix login page not displaying error messages by @yyyyyyyan in #473
- SEP-889: Fix partially unclickable navbar dropdown items by @yyyyyyyan in #474
- SEP-764: pt-osc pre-checks do not execute in the selected database host by @peter-o-addo in #463
- SEP-746: Backup log in running section stop displaying information after a few seconds by @peter-o-addo in #460
- SEP-733: Improve TaskDataNotFoundInExecutorException handler in Tasks API by @peter-o-addo in #388
- SEP-900 Schedule auto PR update action to run once a day only by @crimethinking in #481
- SEP-884: Qualify builder image reference with localhost/ by @yyyyyyyan in #466
- SEP-893: Theme Simple Datatables CSS for dark mode by @yyyyyyyan in #468
- SEP-894: Fix dark mode for flash messages, confirm modal, and saved-task containers by @yyyyyyyan in #469
- SEP-897: Bootstrap CHANGELOG.md with backfilled release history by @yyyyyyyan in #476
- SEP-748 NodeAgentDown alert snippet by @crimethinking in #464
- SEP-812
PostgreSQLLockConflicts/CommitRateLow/TooManyConnectionsalert snippets by @crimethinking in #389 - SEP-885: Fix sub-app lifespan not running in standalone mode by @yyyyyyyan in #467
- SEP-449 Snippets for ProxySQL - Status by @cortiz-percona in #326
- SEP-446 Snippets for ProxySQL - Logs by @cortiz-percona in #327
- SEP-906: Bump pygments package by @peter-o-addo in #486
- SEP-904: Add Alert Troubleshooting plugin with index page by @yyyyyyyan in #487
- SEP-914 Initialize SEP report plugin with boilerplates and HTML/CSS templates by @crimethinking in #489
- SEP-915 Add Jinja convert functions for template by @crimethinking in #490
- SEP-930: Bump aiohttp into v3.13.4 by @peter-o-addo in #492
- SEP-856: Collapse YAML frontmatter in snippet preview by @yyyyyyyan in #425
- SEP-709: Add parameter groups for snippet execution forms by @yyyyyyyan in #443
- SEP-562: Chain backup task executions by @yyyyyyyan in #396
- SEP-737: Replace snippet form tooltips with info icons by @yyyyyyyan in #444
- SEP-866: Add contextual logging with correlation ID propagation by @yyyyyyyan in #445
- SEP-931: Upgrade Pygments to 2.20.0 and remove CVE ignore by @yyyyyyyan in #496
- Update CHANGELOG for v0.11.0 by @yyyyyyyan in #499
- Bump dev version to v0.12.0.dev0 by @yyyyyyyan in #497
- SEP-883: Command injection via backup_source in restore payload _symlink_to_real() by @peter-o-addo in #480
- SEP-810: pt-osc, recursio-method DSN doesn't have validation/default value by @peter-o-addo in #482
- SEP-379: Don't wait for task to finish on task_history_logs_event_stream by @peter-o-addo in #488
- SEP-711: Collect events from Nomad jobs by @peter-o-addo in #483
- SEP-896: Skip :vX.Y image tag push for RC builds by @yyyyyyyan in #475
- SEP-898: Add Makefile release targets for RC and stable by @yyyyyyyan in #477
- SEP-929: Add configurable uvicorn extra reload paths by @yyyyyyyan in #491
- SEP-937: Move PMMSettings connection/auth fields to core config by @yyyyyyyan in #501
- SEP-717: Review snippets for passthrough arguments by @peter-o-addo in #485
- SEP-942 Add --authfile support to engine container pull via EXTRA_ARGS in sep_installer.sh by @cortiz-percona in #507
- SEP-918: Migrate report.css to design token system by @nachodd in #500
- SEP-936: Remove dead CSS rules copy-pasted from alters templates by @nachodd in #502
- SEP-917: replace hardcoded styles values in favor of CSS variables by @nachodd in #503
- SEP-919: Replace hardcoded colors in snippets-details.css with design tokens by @nachodd in #506
- SEP-905: Add alert troubleshooting detail page with AJAX snippet execution by @yyyyyyyan in #498
- SEP-908 Add support for backup upload to GS Bucket by @cortiz-percona in #484
- SEP-920: Add test coverage for backup_pg plugin routes by @marcuscruz-percona in #508
- SEP-943: Replace pip-audit GHA job with Dependabot security alerts by @yyyyyyyan in #512
- SEP-860
PostgreSQLReplicationLag/ExporterError/Wraparoundalert snippets by @crimethinking in #432 - SEP-808 StaleBackup/StaleUpload/StaleBackupLog/StaleUploadLog/BackupFailed alert snippets by @crimethinking in #447
- SEP-687 Add a lockfile to mydumper payload by @maxbube in #312
- SEP-842
PostgreSQLIsDown/Uptime/IdleInTransaction/TransactionDuration/TooManyLocksAcquiredalert snippets by @crimethinking in #415 - SEP-859
PostgreSQLDeadlocks/ArchiveFailedalert snippets by @crimethinking in #430 - SEP-862 MongoDB alert snippets by @crimethinking in #438
- SEP-864 MySQL alert snippets by @crimethinking in #440
- SEP-921: Add JSON API endpoints for checksum tasks by @marcuscruz-percona in #509
- SEP-923: implement standardized CRUD pagination by @marcuscruz-percona in #518
- Bump actions/labeler from 5.0.0 to 6.0.1 by @dependabot[bot] in #514
- Bump dorny/paths-filter from 3.0.2 to 4.0.1 by @dependabot[bot] in #515
- Bump actions/github-script from 8 to 9 by @dependabot[bot] in #516
- Bump actions/checkout from 4.2.2 to 6.0.2 by @dependabot[bot] in #517
- SEP-899: Add GitHub Actions release workflow by @yyyyyyyan in #478
- SEP-977: Auto-apply skip-test label to Dependabot action-bump PRs by @yyyyyyyan in #519
- SEP-816: Reduce execution_request write amplification by @yyyyyyyan in #429
- SEP-939: Auto-assign PRs to author on creation by @peter-o-addo in #511
- SEP-503: Alert for inventory sync fail by @peter-o-addo in #510
- SEP-796: Add Celery backend and register inventory-sync as system task by @yyyyyyyan in #436
- SEP-986: Optimize
xtrabackup_payloadfor Nomad payload size limit by @crimethinking in #531 - SEP-590: Make dev dependencies optional by @crimethinking in #527
- Bump actions/checkout from 4.2.2 to 6.0.2 by @dependabot[bot] in #533
- SEP-909: Task history items remain stuck in RUNNING status after Nomad job completes by @peter-o-addo in #505
- SEP-938: Add pre-commit and CI validation for Nomad payload size by @crimethinking in #528
- SEP-989: Further optimize
xtrabackup_payloadfor Nomad payload size limit by @crimethinking in #538 - SEP-990: Address GitHub Actions
setup-pythondeprecation by @crimethinking in #539 - SEP-913 GAS report feature port by @crimethinking in #513
- SEP-991: Fix bandit issue at report plugin by @peter-o-addo in #541
- SEP-818: Index taskhistory.execution_request scalar keys for dispatch dedup by @yyyyyyyan in #535
- SEP-932: Add database connectivity check endpoint by @yyyyyyyan in #523
- SEP-941: Add PR coverage comment workflow with diff coverage by @yyyyyyyan in #534
- SEP-992: Add ci-success aggregator job to close skipped-check loophole by @yyyyyyyan in #542
- SEP-491: Add PMM annotations for task lifecycle by @yyyyyyyan in #530
- SEP-924: Add pagination to inventory list routes by @yyyyyyyan in #520
- SEP-928: Allow selecting a specific syncer in the Inventory Sync workflow by @yyyyyyyan in #540
- fix: update pytest to 9.0.3 (CVE-2025-71176) by @Copilot in #532
- SEP-925: Add pagination to tasks list routes by @yyyyyyyan in #521
- SEP-882: Auto-resolve PagerDuty alerts on backup success by @yyyyyyyan in #522
- SEP-988: Convert taskhistory.execution_request to JSONB and refactor dispatch dedup by @yyyyyyyan in #537
- SEP-935: Pre-execution Nomad connectivity check by @yyyyyyyan in #525
- SEP-933: Add manual connectivity check button in inventory by @yyyyyyyan in #524
- SEP-934: Auto connectivity check on task creation by @yyyyyyyan in #526
- SEP-817: Move task logs into a dedicated taskhistory_log table by @yyyyyyyan in #536
- Bump python-multipart from 0.0.22 to 0.0.26 by @dependabot[bot] in #545
- SEP-993: Introduce changelog fragments workflow to prevent CHANGELOG.md conflicts by @yyyyyyyan in #544
- SEP-995: Make connectivity check optional on task creation by @yyyyyyyan in #547
- SEP-996: Show coverage evolution in PR coverage report comments by @yyyyyyyan in #546
- SEP-997: Cross-tag alert snippets with per-alert service_type by @yyyyyyyan in #549
- SEP-994: Speed up GitHub Actions CI for pull requests by @crimethinking in #548
- SEP-1001: Fix Coverage (main) workflow by setting POETRY env var by @yyyyyyyan in #552
- SEP-998: Allow admins to approve snippets in batch by @yyyyyyyan in #550
- SEP-1000: Fire Jira version-create/release webhooks from release script by @yyyyyyyan in #553
- SEP-1003: Install WeasyPrint system libraries in Docker runtime image by @yyyyyyyan in #554
New Contributors
- @nachodd made their first contribution in #500
- @marcuscruz-percona made their first contribution in #508
- @dependabot[bot] made their first contribution in #514
Full Changelog: v0.10.2...v0.12.0rc1