Skip to content

v0.12.0rc1

Pre-release
Pre-release

Choose a tag to compare

@yyyyyyyan yyyyyyyan released this 16 Apr 23:56
· 33 commits to release/v0.12.0 since this release
afc2119

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 TimeDriftPMMAgents alert 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_ARGS by @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/TooManyConnections alert 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/Wraparound alert 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/TooManyLocksAcquired alert snippets by @crimethinking in #415
  • SEP-859 PostgreSQLDeadlocks/ArchiveFailed alert 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_payload for 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_payload for Nomad payload size limit by @crimethinking in #538
  • SEP-990: Address GitHub Actions setup-python deprecation 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

Full Changelog: v0.10.2...v0.12.0rc1