Merge pull request 'v20260104-20-changelog-0-1-16' (#34) from v20260104-20-changelog-0-1-16 into main
Reviewed-on: #34
This commit is contained in:
commit
effdc3fe00
@ -1 +1 @@
|
|||||||
backupchecks-v20260104-19-restoredto15-reports-html-layout-gap-fix
|
v20260104-20-changelog-0-1-16
|
||||||
|
|||||||
@ -8,6 +8,37 @@ def changelog_page():
|
|||||||
|
|
||||||
changelog = {
|
changelog = {
|
||||||
"completed_summary": [
|
"completed_summary": [
|
||||||
|
{
|
||||||
|
"version": "0.1.16",
|
||||||
|
"overview": [
|
||||||
|
"This release significantly expands and stabilizes the reporting functionality, focusing on configurability, correctness, and richer output formats..",
|
||||||
|
],
|
||||||
|
"categories": [
|
||||||
|
{
|
||||||
|
"category": "Key Highlights",
|
||||||
|
"items": [
|
||||||
|
{
|
||||||
|
"title": None,
|
||||||
|
"details": [
|
||||||
|
"Reports are now job-aggregated instead of object-level, making them suitable for high-level status reviews.",
|
||||||
|
"Full report lifecycle management was added, including secure deletion and reliable refresh behavior.",
|
||||||
|
"Introduced advanced reporting foundations with configurable report definitions (columns, filters, layout, charts).",
|
||||||
|
"Added support for multiple export formats: CSV, HTML, and PDF, including graphical HTML previews and basic PDF charts.",
|
||||||
|
"Implemented extensive column selection across Summary, Snapshot, and Jobs views, with drag-and-drop ordering and persistence.",
|
||||||
|
"Added job-level aggregated metrics, including per-job success rates and charts over the selected period.",
|
||||||
|
"Improved filtering to exclude informational (non-backup) jobs and allow selection by backup software and type.",
|
||||||
|
"Ensured success rate and total runs calculations are correct and consistently based only on selected run statuses.",
|
||||||
|
"Added Customer as a selectable column and improved multi-customer report clarity.",
|
||||||
|
"Introduced configurable HTML/PDF content scope (Customers, Jobs, or both).",
|
||||||
|
"Fixed numerous stability issues (loading states, NameErrors, missing imports, endpoint collisions, JS errors).",
|
||||||
|
"Improved HTML report layout, table rendering, column labeling, sorting logic, and visual consistency.",
|
||||||
|
"Cleaned up column metadata, removed deprecated/duplicate options, and added migration logic to fix existing configurations.",
|
||||||
|
],
|
||||||
|
}
|
||||||
|
],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"version": "0.1.15",
|
"version": "0.1.15",
|
||||||
"overview": [
|
"overview": [
|
||||||
|
|||||||
@ -1,344 +1,26 @@
|
|||||||
## v20260103-01-reports-jobs-delete
|
|
||||||
|
|
||||||
- Changed report output to aggregate results per job instead of listing individual objects, making reports more suitable for high-level job status review.
|
|
||||||
- Updated report generation logic to build snapshots and summaries based on job runs.
|
|
||||||
- Added the ability to delete reports, including removal of all associated report data.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-02-reports-delete
|
|
||||||
|
|
||||||
- Added the ability to delete reports from the Reports overview.
|
|
||||||
- Introduced a Delete action per report, available to authorized roles (admin/operator/reporter).
|
|
||||||
- Implemented backend deletion handling and automatic refresh of the reports list after removal.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-03-reports-loading-fix
|
|
||||||
|
|
||||||
- Fixed an issue where the Reports page remained stuck on “Loading…”.
|
|
||||||
- Ensured reports are rendered correctly when the page is loaded, even if the client-side API call fails.
|
|
||||||
- Fixed customer selection components on the Reports pages that could remain in a loading state.
|
|
||||||
- Improved robustness of report data handling to prevent rendering issues caused by invalid or missing customer references.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-04-reports-default-period-fix
|
|
||||||
|
|
||||||
- Fixed a NameError on the Reports page by adding the missing get_default_report_period helper.
|
|
||||||
- Ensured a default reporting period is always available to prevent the Reports view from failing during load.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-05-reports-date-import-fix
|
|
||||||
|
|
||||||
- Fixed a crash on the Reports page caused by missing datetime imports.
|
|
||||||
- Added the required `date` and `timedelta` imports to prevent a NameError when determining the default report period.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-06-reports-delete-button-fix
|
|
||||||
|
|
||||||
- Fixed an issue where the Delete button on the Reports page did not perform any action.
|
|
||||||
- Resolved a JavaScript block/brace error that prevented the delete handler from executing.
|
|
||||||
- Ensured the DELETE API call is correctly triggered and the reports list is refreshed after deletion.
|
|
||||||
- Restored correct CSS classes for the server-rendered Delete button to ensure proper binding.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-07-reports-advanced-reporting-foundation
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
- Introduced configurable report definitions to support advanced reporting options.
|
|
||||||
- Reports can now store selected columns, chart preferences, filters, and layout settings as structured configuration data.
|
|
||||||
- Extended Reports API to read and write report configuration data.
|
|
||||||
|
|
||||||
### Added
|
|
||||||
- Database migration adding `report_config` field to report definitions.
|
|
||||||
- New API endpoint to expose available report columns grouped by category for report configuration.
|
|
||||||
- New statistics endpoint providing aggregated KPI data and chart-ready datasets for reports.
|
|
||||||
- Foundation for graphical report rendering (charts and summaries) alongside tabular data.
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
- Ensured report deletion flow remains compatible with extended report definition handling.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-08-reports-stats-endpoint-fix
|
|
||||||
|
|
||||||
- Fixed application startup crash caused by duplicate registration of the `api_reports_stats` endpoint.
|
|
||||||
- Removed the redundant `/api/reports/<report_id>/stats` route definition to ensure the endpoint is registered only once.
|
|
||||||
- Restored proper Gunicorn boot sequence by resolving Flask endpoint name collision.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-09-reports-column-selection-ui
|
|
||||||
|
|
||||||
- Added extended report configuration options when creating a report, allowing users to select which columns are included.
|
|
||||||
- Introduced grouped column selection for Summary and Snapshot views, aligned with the reporting proposal.
|
|
||||||
- Implemented drag-and-drop ordering for selected report columns.
|
|
||||||
- Persisted selected columns per report so configurations are reused consistently.
|
|
||||||
- Updated report rendering to dynamically display data based on the configured columns instead of fixed defaults.
|
|
||||||
- Extended reports columns metadata endpoint to support configurable and future report metrics.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-10-reports-summary-columns-metadata
|
|
||||||
|
|
||||||
- Added missing column definitions for **Summary** reports to the reports columns metadata endpoint.
|
|
||||||
- Enabled column selection in the **Report content** UI for Summary-based reports.
|
|
||||||
- Corrected the **Missed** column mapping to use `missed_count` for Summary views instead of snapshot-specific fields.
|
|
||||||
- Ensured column metadata is consistent between backend and frontend to allow future graphical output.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-11-reports-view-raw-columns-fix
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
- Fixed the **View raw** action in Reports by correcting a broken JavaScript function call that prevented raw data from loading.
|
|
||||||
- Extended the Reports backend to always include column metadata (`columns_meta`) in the response.
|
|
||||||
- Updated the Reports UI to use embedded column metadata as a fallback, ensuring column selection is available even when an API fetch fails.
|
|
||||||
- Improved column metadata loading logic to only fetch metadata when it is not already present in the report payload.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-12-reports-columns-selector-init-fix
|
|
||||||
|
|
||||||
- Fixed /api/reports/columns to always return the column metadata payload (removed incorrect indentation that prevented a response for authorized users).
|
|
||||||
- Ensured the “New report” page always initializes the column selector by providing the initial customers payload to the frontend (prevents JS initialization issues that could stop the column lists from rendering).
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-13-reports-edit-and-view-raw-fix
|
|
||||||
|
|
||||||
- Added the ability to edit existing reports via a dedicated edit view.
|
|
||||||
- Reused the report configuration form for both creating and editing reports.
|
|
||||||
- Fixed the "View raw" functionality so raw report data can be viewed again.
|
|
||||||
- Resolved an HTML rendering issue causing an extra ">" character above the Name column.
|
|
||||||
- Improved the reports list to correctly display the report type instead of incorrect metadata.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-14-reports-percentage-2-decimals
|
|
||||||
|
|
||||||
- Limited percentage values in reports to a maximum of two decimal places.
|
|
||||||
- Applied consistent rounding for percentage fields across:
|
|
||||||
- Report summary views
|
|
||||||
- KPI and trend data outputs
|
|
||||||
- CSV export generation
|
|
||||||
- Improved readability and consistency of reported percentage values.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-15-reports-customer-column
|
|
||||||
|
|
||||||
- Added **Customer** as a selectable column in report configuration.
|
|
||||||
- Ensured customer name is included and visible when multiple customers are selected.
|
|
||||||
- Updated summary and raw data views to correctly display customer information across multi-customer reports.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-16-reports-snapshot-columns-runid-remark-toggle
|
|
||||||
|
|
||||||
- Added `run_id` and `remark` to the Snapshot report column metadata.
|
|
||||||
- Enabled toggling visibility of `run_id` and `remark` via the column selector.
|
|
||||||
- Removed forced default visibility so these columns can be fully disabled by the user.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-17-reports-job-filters-exclude-info-jobs
|
|
||||||
|
|
||||||
- Excluded informational jobs (such as License Key and other non-backup jobs) from all report outputs.
|
|
||||||
- Added configurable filters to reports to select which backup jobs are included.
|
|
||||||
- Added configurable filters to reports to select which backup types are included.
|
|
||||||
- Ensured selected job and type filters are consistently applied to snapshot and summary reports.
|
|
||||||
- Improved report relevance by limiting output to meaningful backup-related data only.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-18-reports-job-filter-selectbox-size-6-rows
|
|
||||||
|
|
||||||
- Updated the report selection UI to make the “Backup software” and “Backup type” select boxes equal in size.
|
|
||||||
- Both select boxes are now displayed with a fixed height of 6 visible rows for consistent layout and improved usability.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-19-reports-output-format-html
|
|
||||||
|
|
||||||
- Added "HTML" as an output format option next to CSV and PDF in the report definition form.
|
|
||||||
- Enabled generic report export to support CSV, HTML and PDF outputs.
|
|
||||||
- Implemented an HTML export preview with a graphical layout (summary cards + charts) to validate report styling.
|
|
||||||
- Implemented a basic PDF export with summary and a simple success-rate trend chart.
|
|
||||||
- Updated the Reports overview to use the new generic export endpoint (no longer hardcoded to export.csv).
|
|
||||||
- Added ReportLab dependency for PDF generation.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260103-20-reports-export-html-open-new-tab
|
|
||||||
|
|
||||||
- Fixed report export logic so the selected output format is always respected.
|
|
||||||
- Ensured the export URL explicitly includes the chosen format parameter (CSV, PDF, HTML).
|
|
||||||
- Changed HTML report handling to open in a new browser tab instead of triggering a file download.
|
|
||||||
- Enabled proper inline rendering of HTML reports to support graphical preview and layout validation.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-01-reports-output-format-save-fix
|
|
||||||
|
|
||||||
- Fixed an issue where the selected report output format (HTML/PDF) was not persisted when saving or editing a report.
|
|
||||||
- The report update endpoint now correctly stores the chosen output_format instead of always reverting to CSV.
|
|
||||||
- Added validation and normalization for output_format values during report creation and update.
|
|
||||||
- Ensured that selecting HTML as output no longer results in CSV being generated or downloaded.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-02-reports-html-content-and-success-rate-basis
|
|
||||||
|
|
||||||
- Added a configurable report content option for HTML/PDF output: Customers, Jobs, or Customers + Jobs.
|
|
||||||
- Improved single-customer HTML reports to display job-level details instead of only a customer summary.
|
|
||||||
- Updated success rate calculation to be based solely on the selected status columns.
|
|
||||||
- Excluded non-selected statuses (such as Missed runs) from success rate calculations to avoid distorted results.
|
|
||||||
- Aligned success rate logic consistently across HTML output, PDF summaries, and report statistics.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-03-reports-html-view-selection-fix
|
|
||||||
|
|
||||||
- Fixed HTML report generation to correctly respect the selected report view.
|
|
||||||
- When "Summary" is selected, the HTML output now renders the summary content instead of the snapshot with individual runs.
|
|
||||||
- Prevented unintended fallback to Snapshot view when generating HTML reports.
|
|
||||||
- Improved default behavior for single-customer summary reports to ensure a meaningful summary is displayed.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-04-reports-html-jobs-table-fix
|
|
||||||
|
|
||||||
- Fixed HTML report rendering where only charts were shown and no data rows appeared.
|
|
||||||
- Restored the jobs table below the charts in HTML reports for single-customer selections.
|
|
||||||
- Ensured the latest snapshot per job is displayed correctly in the HTML output.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-05-reports-html-jobs-columns-selection
|
|
||||||
|
|
||||||
- Added configurable column selection for the Jobs table in report create/edit views.
|
|
||||||
- Exposed all Jobs table columns as selectable options instead of using fixed/hardcoded columns.
|
|
||||||
- Ensured the HTML report Jobs table only renders columns explicitly selected in the report configuration.
|
|
||||||
- Aligned Jobs table rendering logic with Snapshot and Summary column selection behavior.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-06-reports-html-jobs-summary-success-rate
|
|
||||||
|
|
||||||
- Restored the **Text** column label in the report column selector (previously shown as Object).
|
|
||||||
- Added job-level metrics to the Jobs view, including total runs, success, warning, failed, missed counts, and success rate.
|
|
||||||
- Made **success rate per job** selectable as a column in job-based reports.
|
|
||||||
- Changed the HTML Jobs section from showing the **latest snapshot per job** to an **aggregated summary per job** over the selected reporting period.
|
|
||||||
- Removed the “Latest snapshot per job” subtitle from HTML reports.
|
|
||||||
- Added a **per-job success rate chart** to the HTML report to visualize backup performance per job.
|
|
||||||
- Prevented job status from being presented as a summary value, as it represents a momentary state rather than a stable metric.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-07-reports-html-export-fix-json
|
|
||||||
|
|
||||||
### Fixed
|
|
||||||
- Resolved Internal Server Error when downloading HTML reports.
|
|
||||||
- Fixed an `UnboundLocalError` caused by an uninitialized `_json` variable in the HTML export response.
|
|
||||||
- Replaced usage of `_json` with a consistent `json.dumps(...)` call using the top-level JSON import.
|
|
||||||
- Ensured stable HTML report export handling across all report download actions.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-08-reports-html-total-runs-and-jobs-table-fix
|
|
||||||
|
|
||||||
- Fixed **Total runs** calculation to only include the selected run statuses. Non-selected statuses (such as missed runs) are no longer counted.
|
|
||||||
- Aligned **daily trend totals** with the selected status columns to ensure consistency with success rate calculations.
|
|
||||||
- Fixed **Jobs table column headers** so the correct labels are displayed instead of placeholder keys (e.g. `{jobs_th}`).
|
|
||||||
- Improved **Jobs table sorting** to follow a logical hierarchy: Customer > Backup software > Backup type > Job name > Object, depending on the selected columns.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-09-reports-html-total-runs-selection-and-jobs-text-column-remove
|
|
||||||
|
|
||||||
- Fixed “Total runs” to only sum the selected status counters (e.g. excluding missed when it’s not selected), instead of using the raw total that included missed runs.
|
|
||||||
- Removed the duplicate “Text” column from the Jobs report view by excluding `object_name` from the Jobs column set and Jobs defaults.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-10-reports-html-export-fix-stats-view-and-total-runs
|
|
||||||
|
|
||||||
### Changed
|
|
||||||
- Fixed an internal server error when downloading HTML reports by correctly passing the selected view to the stats builder and stats API endpoint.
|
|
||||||
- Updated the Total runs calculation in the HTML summary to only count run statuses that are selected in the active view.
|
|
||||||
- Prevented non-selected statuses (such as missed) from being included in the Total runs calculation.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-11-reports-jobs-remove-text-column-option
|
|
||||||
|
|
||||||
- Removed the “Text” column from the Jobs column selection in Reports.
|
|
||||||
- Cleaned up column metadata so the “Text” option no longer appears in the Reports UI.
|
|
||||||
- Ensured consistency between selectable columns and rendered report output.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-12-reports-object-name-job-name-columns-fix
|
|
||||||
|
|
||||||
- Added the missing `object_name` column to the available report columns and labeled it as "Job name" for Summary/Snapshot/Jobs.
|
|
||||||
- Fixed column selection behavior so an explicitly saved empty selection stays empty (defaults are only applied when the view has no configured selection).
|
|
||||||
- Updated the raw data table and HTML export to show a clear “No columns selected” message when all columns are disabled, instead of still rendering default data.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-13-reports-jobs-deduplicate-job-name-column
|
|
||||||
|
|
||||||
- Unified `object_name` and `job_name` into a single logical column labeled "Job name".
|
|
||||||
- Removed duplicate "Job name" entries from available and selected column lists in Summary, Snapshot, and Jobs views.
|
|
||||||
- Added migration logic to automatically clean up existing report configurations containing duplicate job name columns.
|
|
||||||
- Ensured report rendering strictly follows the selected columns; when no columns are selected, no table data is shown.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-14-reports-stats-total-runs-success-rate-fix
|
|
||||||
|
|
||||||
- Fixed incorrect Total runs calculation by only counting selected run statuses.
|
|
||||||
- Corrected Success rate calculation to be based on Success / (Success + Failed).
|
|
||||||
- Prevented non-selected statuses (such as Missed) from affecting totals and percentages.
|
|
||||||
- Ensured consistency between displayed counts and calculated percentages in reports.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-15-reports-html-layout-gap-fix
|
|
||||||
|
|
||||||
- Fixed visual gaps in generated HTML report cards by ensuring card headers follow the rounded corners.
|
|
||||||
- Added overflow clipping on report cards so header/background are properly contained within the card border radius.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-16-reports-html-trend-size-match
|
|
||||||
|
|
||||||
- Adjusted the HTML report layout so the **Success rate trend** chart has the same size as the **Status distribution** chart.
|
|
||||||
- Both charts now use an equal column width and consistent canvas height to prevent visual layout gaps.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-17-reports-html-trend-match-status-size
|
|
||||||
|
|
||||||
- Restored the original size of the **Status distribution** chart.
|
|
||||||
- Adjusted the **Success rate trend** chart to match the exact size of the Status distribution chart.
|
|
||||||
- Aligned both charts to use the same column width and fixed canvas height to ensure a consistent layout without gaps.
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
## v20260104-19-reports-html-trend-visual-alignment-fix
|
|
||||||
|
|
||||||
- Aligned the **Success rate trend** card visually with the **Status distribution** card.
|
|
||||||
- Disabled the legend and aspect ratio on the Success rate trend chart so it fully utilizes the available card height.
|
|
||||||
- Kept the Status distribution chart unchanged to preserve its correct size.
|
|
||||||
- Ensured both highlighted cards are consistent with the overall report layout.
|
|
||||||
|
|
||||||
================================================================================================================================================
|
================================================================================================================================================
|
||||||
|
## v0.1.16
|
||||||
|
|
||||||
|
This release significantly expands and stabilizes the reporting functionality, focusing on configurability, correctness, and richer output formats.
|
||||||
|
|
||||||
|
### Key Highlights
|
||||||
|
- Reports are now **job-aggregated** instead of object-level, making them suitable for high-level status reviews.
|
||||||
|
- Full **report lifecycle management** was added, including secure deletion and reliable refresh behavior.
|
||||||
|
- Introduced **advanced reporting foundations** with configurable report definitions (columns, filters, layout, charts).
|
||||||
|
- Added support for **multiple export formats**: CSV, HTML, and PDF, including graphical HTML previews and basic PDF charts.
|
||||||
|
- Implemented extensive **column selection** across Summary, Snapshot, and Jobs views, with drag-and-drop ordering and persistence.
|
||||||
|
- Added **job-level aggregated metrics**, including per-job success rates and charts over the selected period.
|
||||||
|
- Improved **filtering** to exclude informational (non-backup) jobs and allow selection by backup software and type.
|
||||||
|
- Ensured **success rate and total runs calculations** are correct and consistently based only on selected run statuses.
|
||||||
|
- Added **Customer** as a selectable column and improved multi-customer report clarity.
|
||||||
|
- Introduced configurable **HTML/PDF content scope** (Customers, Jobs, or both).
|
||||||
|
- Fixed numerous **stability issues** (loading states, NameErrors, missing imports, endpoint collisions, JS errors).
|
||||||
|
- Improved HTML report layout, table rendering, column labeling, sorting logic, and visual consistency.
|
||||||
|
- Cleaned up column metadata, removed deprecated/duplicate options, and added migration logic to fix existing configurations.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
## v0.1.15
|
## v0.1.15
|
||||||
|
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
v0.1.15
|
v0.1.16
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user