From 2471647155d92ddc532b78264ca5ba9a18eec600 Mon Sep 17 00:00:00 2001 From: "Joshua Uhalt, Ph.D." Date: Mon, 28 Sep 2026 17:38:45 -0400 Subject: [PATCH 1/4] Scale the update prompt with the display The update prompt and progress window set AutoScaleMode.Dpi without base dimensions, so at 125% and 150% their text grew while the fixed sizes did not, cutting off "Download & Restart". Give both 96-DPI base dimensions, as About has, and let the prompt's buttons grow to fit their labels. The harness gains an `update` surface to check it. Found during v0.8.0-rc.1 certification (#85). Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 1 + ManualCertification/V04Demo/Program.cs | 15 +++++++++++++-- ManuscriptPipeline/Forms/UpdateProgressForm.vb | 2 ++ ManuscriptPipeline/Forms/UpdatePromptForm.vb | 15 +++++++++++---- 4 files changed, 27 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 564247f..0f6c5a6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,7 @@ v0.8.0-rc.1 is available on the Preview channel. Development is tracked in [PR # ### Fixed - A second launch of PaperRoute brings the open window forward instead of opening another window on the same library, where a save in one could overwrite the other ([#77](https://github.com/JUhalt/PaperRoute-Tracker/issues/77)). +- The update prompt and its progress window scale with the display, so **Download & Restart** shows its full label at 125% and 150% (found during v0.8.0-rc.1 certification, [#85](https://github.com/JUhalt/PaperRoute-Tracker/issues/85)). The prompt comes from the installed version, so the fix applies to updates offered from v0.8 onward. ### Storage diff --git a/ManualCertification/V04Demo/Program.cs b/ManualCertification/V04Demo/Program.cs index ca97d12..8a34180 100644 --- a/ManualCertification/V04Demo/Program.cs +++ b/ManualCertification/V04Demo/Program.cs @@ -8,7 +8,7 @@ namespace PaperRoute.V04Demo; internal static class Program { private const string Usage = "PaperRoute workflow manual demo\n\n" + - "Surfaces: vault (default), readiness, packet, packet-new, file, file-new, notes, submission, responses, workflow, board, publications, fill, about, route\n" + + "Surfaces: vault (default), readiness, packet, packet-new, file, file-new, notes, submission, responses, workflow, board, publications, fill, about, route, update\n" + "Options: --minimum, --primary, --empty (vault/readiness/board), --integrity (populated vault only), --dark or --system, --help\n\n" + "Default surfaces discard manuscript changes when the window closes.\n" + "workflow and board save only in a new disposable temporary session.\n" + @@ -27,7 +27,7 @@ private static void Main(string[] args) return; } - var surfaces = new[] { "vault", "readiness", "packet", "packet-new", "file", "file-new", "notes", "submission", "responses", "workflow", "board", "publications", "fill", "about", "route" }; + var surfaces = new[] { "vault", "readiness", "packet", "packet-new", "file", "file-new", "notes", "submission", "responses", "workflow", "board", "publications", "fill", "about", "route", "update" }; var positional = args.Where(argument => !argument.StartsWith("--")).ToArray(); var surface = positional.FirstOrDefault()?.ToLowerInvariant() ?? "vault"; var minimum = args.Contains("--minimum", StringComparer.OrdinalIgnoreCase); @@ -86,6 +86,17 @@ private static void Main(string[] args) return; } + if (surface == "update") + { + var notes = "# PaperRoute Tracker v0.8.1 (fictional)\n\nA fictional update for display checks; nothing is downloaded.\n\n" + + "## Fixed\n\n- The update prompt scales with the display, so its buttons show their full labels at 125% and 150%."; + using var prompt = new UpdatePromptForm("0.8.0", "0.8.1", "Stable", notes); + prompt.Text += " [DEMO - nothing is downloaded]"; + ConfigureDisplayEvidence(prompt, primary); + prompt.ShowDialog(); + return; + } + if (surface == "route") { using var route = RouteMapDemo.Create(); diff --git a/ManuscriptPipeline/Forms/UpdateProgressForm.vb b/ManuscriptPipeline/Forms/UpdateProgressForm.vb index 8ca58cf..c3f8239 100644 --- a/ManuscriptPipeline/Forms/UpdateProgressForm.vb +++ b/ManuscriptPipeline/Forms/UpdateProgressForm.vb @@ -29,6 +29,8 @@ Namespace Forms Me.StartPosition = FormStartPosition.CenterParent Me.FormBorderStyle = FormBorderStyle.FixedDialog Me.ControlBox = False + ' Sizes below are at 96 DPI and scale with the display. + Me.AutoScaleDimensions = New SizeF(96.0F, 96.0F) Me.ClientSize = New Size(500, 165) Me.Font = New Font("Segoe UI", 10.0F) Me.AutoScaleMode = AutoScaleMode.Dpi diff --git a/ManuscriptPipeline/Forms/UpdatePromptForm.vb b/ManuscriptPipeline/Forms/UpdatePromptForm.vb index b44c876..da3866f 100644 --- a/ManuscriptPipeline/Forms/UpdatePromptForm.vb +++ b/ManuscriptPipeline/Forms/UpdatePromptForm.vb @@ -39,6 +39,10 @@ Namespace Forms Me.FormBorderStyle = FormBorderStyle.FixedDialog Me.MaximizeBox = False Me.MinimizeBox = False + ' Sizes below are at 96 DPI and scale with the display; without the + ' base dimensions the text grew at 125% and 150% but the dialog and + ' its buttons did not, cutting off "Download & Restart". + Me.AutoScaleDimensions = New SizeF(96.0F, 96.0F) Me.ClientSize = New Size(620, 500) Me.Font = New Font("Segoe UI", 10.0F) Me.AutoScaleMode = AutoScaleMode.Dpi @@ -100,15 +104,18 @@ Namespace Forms Dim btnInstall As New Button With { .Text = "Download && Restart", - .Width = 165, - .Height = 38, + .AutoSize = True, + .AutoSizeMode = AutoSizeMode.GrowOnly, + .MinimumSize = New Size(165, 38), + .Padding = New Padding(10, 0, 10, 0), .DialogResult = DialogResult.OK } Dim btnLater As New Button With { .Text = "Later", - .Width = 95, - .Height = 38, + .AutoSize = True, + .AutoSizeMode = AutoSizeMode.GrowOnly, + .MinimumSize = New Size(95, 38), .DialogResult = DialogResult.Cancel } From 379583aa01a1b294a7c390f98f2311227c9f7808 Mon Sep 17 00:00:00 2001 From: "Joshua Uhalt, Ph.D." Date: Mon, 28 Sep 2026 17:42:33 -0400 Subject: [PATCH 2/4] Add journal and researcher metrics to the v0.9 plan (#87, #91) Co-Authored-By: Claude Opus 5.5 --- ROADMAP.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ROADMAP.md b/ROADMAP.md index 6a268ab..e2fa0aa 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -341,8 +341,9 @@ Offline: Connected, optional, and started by the user: - **[#86 Online services](https://github.com/JUhalt/PaperRoute-Tracker/issues/86)** — one local-first rule, one settings page, and a **Work offline** switch. -- **[#87 Journal facts from open indexes](https://github.com/JUhalt/PaperRoute-Tracker/issues/87)** — DOAJ (CC0), OpenAlex, and sharing-policy records: publisher, fees, review type, typical turnaround, and links to the journal's aims and scope, author instructions, and editorial board. +- **[#87 Journal facts from open indexes](https://github.com/JUhalt/PaperRoute-Tracker/issues/87)** — DOAJ (CC0), OpenAlex, and sharing-policy records: publisher, fees, review type, typical turnaround, and links to the journal's aims and scope, author instructions, and editorial board; open citation metrics (2-year mean citedness, h-index, i10-index) fetched from OpenAlex, and proprietary ones (Impact Factor, CiteScore, SJR, SNIP) recorded by the researcher with source and year. Never a combined prestige score. - **[#88 Journals that publish work like yours](https://github.com/JUhalt/PaperRoute-Tracker/issues/88)** — suggestions backed by recently published papers that match keywords you review; never scores or predictions. +- **[#91 Your citations](https://github.com/JUhalt/PaperRoute-Tracker/issues/91)** — the researcher's own citation record from open data, on request: citations, h-index, i10-index, g-index, m-quotient, and field-weighted citation impact per published manuscript, each with its source, date, and definition. - **[#84 Optional AI assistant](https://github.com/JUhalt/PaperRoute-Tracker/issues/84)** (with [#29](https://github.com/JUhalt/PaperRoute-Tracker/issues/29)) — off by default, with your own key or a local model: decision letters to reviewer comments, author guidelines to readiness checklists, drafting help, and fit summaries grounded in #88's evidence. --- From a403868237903a10d645949439a7bdada50ae625 Mon Sep 17 00:00:00 2001 From: "Joshua Uhalt, Ph.D." Date: Mon, 28 Sep 2026 19:00:48 -0400 Subject: [PATCH 3/4] Add a report surface to the certification harness The real Pipeline Report dialog on the fictional board library, saving to %TEMP%\PaperRoute-Report-Demo.html so the saved page can be checked in a browser (#85). Co-Authored-By: Claude Opus 5.5 --- ManualCertification/V04Demo/Program.cs | 24 ++++++++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/ManualCertification/V04Demo/Program.cs b/ManualCertification/V04Demo/Program.cs index 8a34180..53fb0df 100644 --- a/ManualCertification/V04Demo/Program.cs +++ b/ManualCertification/V04Demo/Program.cs @@ -8,7 +8,7 @@ namespace PaperRoute.V04Demo; internal static class Program { private const string Usage = "PaperRoute workflow manual demo\n\n" + - "Surfaces: vault (default), readiness, packet, packet-new, file, file-new, notes, submission, responses, workflow, board, publications, fill, about, route, update\n" + + "Surfaces: vault (default), readiness, packet, packet-new, file, file-new, notes, submission, responses, workflow, board, publications, fill, about, route, update, report\n" + "Options: --minimum, --primary, --empty (vault/readiness/board), --integrity (populated vault only), --dark or --system, --help\n\n" + "Default surfaces discard manuscript changes when the window closes.\n" + "workflow and board save only in a new disposable temporary session.\n" + @@ -27,7 +27,7 @@ private static void Main(string[] args) return; } - var surfaces = new[] { "vault", "readiness", "packet", "packet-new", "file", "file-new", "notes", "submission", "responses", "workflow", "board", "publications", "fill", "about", "route", "update" }; + var surfaces = new[] { "vault", "readiness", "packet", "packet-new", "file", "file-new", "notes", "submission", "responses", "workflow", "board", "publications", "fill", "about", "route", "update", "report" }; var positional = args.Where(argument => !argument.StartsWith("--")).ToArray(); var surface = positional.FirstOrDefault()?.ToLowerInvariant() ?? "vault"; var minimum = args.Contains("--minimum", StringComparer.OrdinalIgnoreCase); @@ -86,6 +86,26 @@ private static void Main(string[] args) return; } + if (surface == "report") + { + // The real Pipeline Report dialog on the fictional board library; + // Save Report writes %TEMP%\PaperRoute-Report-Demo.html. + var sessionRoot = Path.Combine(Path.GetTempPath(), + "PaperRoute-Report-Demo-" + Guid.NewGuid().ToString("N")); + StorageEnvironment.ConfigureIsolatedSessionRoot(sessionRoot); + BoardDemo.CreateSamples(sessionRoot); + var library = new ManuscriptRepository().Load(); + var today = DateTime.Today; + using var report = new ReportForm("Pipeline Report", "PaperRoute-Pipeline-demo.html", library, + (chosen, deadlines) => ReportService.PipelineReport(chosen, today, "DEMO Research Group", deadlines)); + var saved = Path.Combine(Path.GetTempPath(), "PaperRoute-Report-Demo.html"); + report.SavePathPrompt = () => saved; + report.Text += " [DEMO - fictional library]"; + ConfigureDisplayEvidence(report, primary); + report.ShowDialog(); + return; + } + if (surface == "update") { var notes = "# PaperRoute Tracker v0.8.1 (fictional)\n\nA fictional update for display checks; nothing is downloaded.\n\n" + From 23b5b351e7b7dafca52175aebf3d1f22257c8ce2 Mon Sep 17 00:00:00 2001 From: "Joshua Uhalt, Ph.D." Date: Mon, 28 Sep 2026 19:00:52 -0400 Subject: [PATCH 4/4] Prepare PaperRoute v0.8.0 Stable - Version 0.8.0 with Stable notes in docs/releases/0.8.0.md, including the update prompt scaling fix found during rc.1 certification. - README, ROADMAP, CHANGELOG, and UPGRADE_NOTES describe v0.8.0 as the current Stable release; v0.9 Journal Choice & Guidance is next. Co-Authored-By: Claude Opus 5.5 --- CHANGELOG.md | 4 +-- ManuscriptPipeline/ManuscriptPipeline.vbproj | 2 +- README.md | 16 ++++++------ ROADMAP.md | 8 +++--- UPGRADE_NOTES.md | 4 +-- docs/releases/0.8.0.md | 26 ++++++++++++++++++++ 6 files changed, 43 insertions(+), 17 deletions(-) create mode 100644 docs/releases/0.8.0.md diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f6c5a6..56ae437 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,9 @@ All notable changes to PaperRoute Tracker will be documented here. -## [Unreleased] — v0.8 Insights & Reports +## [0.8.0] - 2026-09-28 -v0.8.0-rc.1 is available on the Preview channel. Development is tracked in [PR #80](https://github.com/JUhalt/PaperRoute-Tracker/pull/80) and the [v0.8 milestone](https://github.com/JUhalt/PaperRoute-Tracker/milestone/10); certification in [#85](https://github.com/JUhalt/PaperRoute-Tracker/issues/85). +PaperRoute v0.8.0 — **Route Analytics & Reports** — was released on September 28, 2026 from [PR #80](https://github.com/JUhalt/PaperRoute-Tracker/pull/80) and [PR #90](https://github.com/JUhalt/PaperRoute-Tracker/pull/90), after the v0.8.0-rc.1 Preview. Certification is recorded in [#85](https://github.com/JUhalt/PaperRoute-Tracker/issues/85). v0.8 upgrades the library to Schema 8. ### Added diff --git a/ManuscriptPipeline/ManuscriptPipeline.vbproj b/ManuscriptPipeline/ManuscriptPipeline.vbproj index 4571ff5..f69ee5b 100644 --- a/ManuscriptPipeline/ManuscriptPipeline.vbproj +++ b/ManuscriptPipeline/ManuscriptPipeline.vbproj @@ -1,7 +1,7 @@ - 0.8.0-rc.1 + 0.8.0 0.8.0.0 0.8.0.0 PaperRouteTracker diff --git a/README.md b/README.md index 9ad65d7..3697e47 100644 --- a/README.md +++ b/README.md @@ -16,12 +16,12 @@ PaperRoute Tracker helps researchers manage manuscripts from idea through submis ## Current status -- **Stable:** [v0.7.0 — Deadline Center](https://github.com/JUhalt/PaperRoute-Tracker/releases/tag/v0.7.0) puts everything that needs action, and when, on one **Deadlines** page, and adds a **publication check** that runs only when you ask. See the [release notes](docs/releases/0.7.0.md) and the [user guide](docs/USER_GUIDE.md). -- **Preview:** [v0.8.0-rc.1 — Route Analytics & Reports](https://github.com/JUhalt/PaperRoute-Tracker/releases/tag/v0.8.0-rc.1) draws each **route map** to scale, colored by who held the manuscript and when, and adds an **Insights** page with your own journal history and turnaround, shareable **reports**, and **work types and tags**. It upgrades the library to Schema 8; read the [release notes](docs/releases/0.8.0-rc.1.md) and [upgrade notes](UPGRADE_NOTES.md) before trying it. +- **Stable:** [v0.8.0 — Route Analytics & Reports](https://github.com/JUhalt/PaperRoute-Tracker/releases/tag/v0.8.0) draws each **route map** to scale, colored by who held the manuscript and when, and adds an **Insights** page with your own journal history and turnaround, shareable **reports**, and **work types and tags**. See the [release notes](docs/releases/0.8.0.md) and the [user guide](docs/USER_GUIDE.md). +- **Next:** [v0.9 — Journal Choice & Guidance](https://github.com/JUhalt/PaperRoute-Tracker/milestone/13): a journal shortlist for each manuscript, an offline guide to choosing a journal, journal facts from open indexes, a teaching example library, and optional AI help, all under one local-first rule. -v0.7 moves the library to Schema 7 and v0.8 to Schema 8. An older version cannot open a library that a newer one has upgraded, so keep a backup made with your current version before upgrading. The [upgrade notes](UPGRADE_NOTES.md) explain the save and compatibility boundaries. +v0.8 moves the library to Schema 8, which v0.7 cannot open, so keep a backup made with v0.7 before upgrading. The [upgrade notes](UPGRADE_NOTES.md) explain the save and compatibility boundaries. -**New to PaperRoute?** Start with the [PaperRoute User Guide](https://github.com/JUhalt/PaperRoute-Tracker/blob/v0.7.0/docs/USER_GUIDE.md) for a Quick Start, feature tour, and task-oriented "How do I...?" reference. +**New to PaperRoute?** Start with the [PaperRoute User Guide](https://github.com/JUhalt/PaperRoute-Tracker/blob/v0.8.0/docs/USER_GUIDE.md) for a Quick Start, feature tour, and task-oriented "How do I...?" reference.

The PaperRoute board: pipeline cards with stage, what needs attention, target journal, and each manuscript's route so far (fictional sample data) @@ -36,13 +36,13 @@ v0.7 moves the library to Schema 7 and v0.8 to Schema 8. An older version cannot - **Search, stage filtering, and sorting** across the manuscript library. - **Visual Route View** showing submissions, decisions, revisions, and reroutes in order. - **Version History** with immutable managed snapshots, linked files, or metadata-only versions associated with submissions, decisions, and revision rounds. -- **Work types and colored tags** (v0.8 Preview) to sort articles from preprints, posters, and chapters, and to group work your own way. +- **Work types and colored tags** to sort articles from preprints, posters, and chapters, and to group work your own way.

The Deadlines page: overdue, today, next 7 days, later, and undated items, each with its own actions (fictional sample data)

-### Learn from your routes (v0.8 Preview) +### Learn from your routes - **Route maps** draw a manuscript's whole route to scale, colored by who held it (the journal, you, or production), with every decision and resubmission numbered and explained. They show a student, or a researcher looking back, how much of publishing is waiting and how much is work. - **Insights** from your own records: median time to a first decision and to acceptance, your history with each journal, and every published route side by side from day 0. Missing dates are left out, never estimated. @@ -208,8 +208,8 @@ PaperRoute is an independent, open-source project. Its implementation, local-fir | **Released** | v0.5 — Reviewer Response Workflow | Response matrix, drafting, and Markdown export | | **Released** | v0.6 — Workspace | One window, manuscript pages, one save step, calmer design | | **Released** | v0.7 — Deadline Center | Everything that needs action, and when; the publication check | -| **Preview** | [v0.8 — Route Analytics & Reports](https://github.com/JUhalt/PaperRoute-Tracker/milestone/10) | Route maps, your own turnaround data, reports, types and tags | -| | [v0.9 — Journal Choice & Guidance](https://github.com/JUhalt/PaperRoute-Tracker/milestone/13) | Choosing a journal, journal facts, a teaching example, optional AI help | +| **Released** | v0.8 — Route Analytics & Reports | Route maps, your own turnaround data, reports, types and tags | +| **Now** | [v0.9 — Journal Choice & Guidance](https://github.com/JUhalt/PaperRoute-Tracker/milestone/13) | Choosing a journal, journal facts, a teaching example, optional AI help | | | [v0.9.1 — 1.0 Hardening](https://github.com/JUhalt/PaperRoute-Tracker/milestone/11) | Onboarding, accessibility, recovery, certification | | **Goal** | [v1.0 — Trusted Research Workflow](https://github.com/JUhalt/PaperRoute-Tracker/milestone/12) | "I trust this application with my research workflow." | diff --git a/ROADMAP.md b/ROADMAP.md index e2fa0aa..45565ca 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -53,8 +53,8 @@ Targets are directional rather than promises. Data integrity, migrations, backup | **v0.5** | Reviewer Response Workflow ✅ | What did the journal ask me to change, and how am I responding? | | **v0.6** | Workspace UI ✅ | Can I find and act on everything from one calm, uncluttered workspace? | | **v0.7** | Deadline Center ✅ | What requires action, and when? | -| **v0.8** | **Route Analytics & Reports — Preview** | What does this publication journey show me—and how can I communicate it? | -| **v0.9** | Journal Choice & Guidance | Where should this manuscript go, what will that journal ask of me, and how does someone new learn the route? | +| **v0.8** | Route Analytics & Reports ✅ | What does this publication journey show me—and how can I communicate it? | +| **v0.9** | **Journal Choice & Guidance — next** | Where should this manuscript go, what will that journal ask of me, and how does someone new learn the route? | | **v0.9.1** | 1.0 Hardening | Is the entire workflow polished, resilient, and certifiable? | | **v1.0** | Trusted Research Workflow | Would I trust this with my real publication pipeline? | @@ -306,7 +306,7 @@ PaperRoute v0.7.0 was released on September 28, 2026 from [PR #78](https://githu --- -# v0.8 Route Analytics & Reports +## COMPLETE — v0.8 Route Analytics & Reports Milestone: **[v0.8.0 — Route Analytics & Reports](https://github.com/JUhalt/PaperRoute-Tracker/milestone/10)** @@ -319,7 +319,7 @@ Derive transparent local analytics and print-friendly route reports from the sam - **[#64 Work types and colored tags](https://github.com/JUhalt/PaperRoute-Tracker/issues/64)** — the dimensions reports, CV exports, and the board can filter and group by. Existing records migrate with an unspecified type rather than an inferred one. - **[#82 Route map](https://github.com/JUhalt/PaperRoute-Tracker/issues/82)** — each route drawn to scale, colored by who held it (the journal, the author, or production), with every event numbered and explained, and every route side by side on Insights. It shows a student, or a researcher looking back, how much of publishing is waiting and how much is work. -Every slice is complete in [PR #80](https://github.com/JUhalt/PaperRoute-Tracker/pull/80). v0.8.0-rc.1 is the Preview candidate; certification is tracked in [#85](https://github.com/JUhalt/PaperRoute-Tracker/issues/85). +PaperRoute v0.8.0 was released on September 28, 2026 from [PR #80](https://github.com/JUhalt/PaperRoute-Tracker/pull/80) and [PR #90](https://github.com/JUhalt/PaperRoute-Tracker/pull/90), after the v0.8.0-rc.1 Preview. It moved the library to Schema 8 with a marker-only upgrade. Certification (published assets, the live updater from v0.7.0, the installed Schema 8 upgrade, a clean install, and native display checks) is recorded in [#85](https://github.com/JUhalt/PaperRoute-Tracker/issues/85). --- diff --git a/UPGRADE_NOTES.md b/UPGRADE_NOTES.md index 508b046..3145ce3 100644 --- a/UPGRADE_NOTES.md +++ b/UPGRADE_NOTES.md @@ -21,7 +21,7 @@ Use **Settings → Backup Library...** to create a portable backup. In v0.5 and ## Moving from v0.7 to v0.8 -PaperRoute v0.8 adds route maps, the Insights page, shareable reports, and work types and tags. **v0.8.0-rc.1 is a Preview; v0.7.0 remains the current Stable release.** v0.8 upgrades the library to **Schema 8**, which adds work types, tags, and tag colors. +PaperRoute v0.8 adds route maps, the Insights page, shareable reports, and work types and tags. **v0.8.0 is the current Stable release.** v0.8 upgrades the library to **Schema 8**, which adds work types, tags, and tag colors. Before upgrading, create a portable ZIP backup with v0.7 (**Settings → Backup Library...**) and keep it separately. @@ -35,7 +35,7 @@ After upgrading: ## Moving from v0.6 to v0.7 -PaperRoute v0.7 replaces the Reminders page with **Deadlines** and adds the publication check. **v0.7.0 is the current Stable release.** It upgrades the library to **Schema 7**, which remembers possible publications you have reviewed. +PaperRoute v0.7 replaces the Reminders page with **Deadlines** and adds the publication check. It upgrades the library to **Schema 7**, which remembers possible publications you have reviewed. Before upgrading, create a portable ZIP backup with v0.6 (**Settings → Backup Library...**) and keep it separately. diff --git a/docs/releases/0.8.0.md b/docs/releases/0.8.0.md new file mode 100644 index 0000000..ee9fea7 --- /dev/null +++ b/docs/releases/0.8.0.md @@ -0,0 +1,26 @@ +# PaperRoute Tracker v0.8.0 — Route Analytics & Reports + +PaperRoute v0.8.0 shows what your publication routes have taken: each route drawn to scale, your own history with each journal, and reports to share with a supervisor or coauthor. Everything is calculated on your computer from your own records. It follows the v0.8.0-rc.1 Preview. + +## Included + +- **Route maps.** A manuscript's Route opens on its whole route drawn to scale, from first submission to publication (or to today). Each stretch is colored by who held it: the journal, you (revising or rerouting), or production. Journals are named above their stretches, and every event is numbered and explained underneath, such as "Desk rejected, Jan 12: 7 days after submission" or "Resubmitted, Jun 10: after 69 days of revising". Time the record does not assign is hatched as not recorded, never estimated. +- **Insights** (Ctrl+5), a new page: + - Across the top: your manuscripts and submissions, the median time to a first decision, and the median time from first submission to acceptance, each with the number of records behind it. + - **Your Journals:** submissions, outcomes, and turnaround with each journal you have used. + - **Your Routes:** journals, revision rounds, and days to acceptance and publication for each submitted manuscript. + - **Route Map:** every published route lined up at day 0, with the median time to publication and how much of it was spent with journals, revising, and in production. Work not yet published can be included, drawn to today. +- **Your history with a journal** appears in one line when you select it on the Journals page. +- **Reports to share.** **Pipeline Report...** summarizes the manuscripts you choose; **Route Report...** (a manuscript's **⋯** menu) shows one route in full. Both are previewed, then saved as a single web page to print or save as PDF. They never include notes, correspondence, reviewer comments, file paths, or contact details. +- **Work types and tags.** Give each manuscript a type (journal article, preprint, conference paper or abstract, poster, book chapter, thesis, other) and your own colored tags on its Overview. Tags show on board cards and in the Library, and both are searchable. Imports set the type only when the source states it. CV export can group by type. +- **One window per library.** Opening PaperRoute again brings the open window forward instead of starting a second copy that could overwrite the first one's saves. +- **Shortcuts.** Ctrl+5 opens Insights; Import & Export moves to Ctrl+6. +- **Fixed since rc.1.** The update prompt and its progress window scale with the display, so **Download & Restart** shows its full label at 125% and 150%. The prompt comes from the installed version, so this applies to updates offered from v0.8 onward. + +## Before upgrading + +v0.8 upgrades the library to **Schema 8**, which adds work types, tags, and tag colors. The upgrade validates your library and changes only the schema marker; manuscript data, managed files, and automatic backups stay byte-for-byte, and every manuscript starts with no type and no tags. **v0.7 cannot open a library after v0.8 has used it**, so make a portable backup with v0.7 first (**Settings → Backup Library...**) and keep it. The [upgrade notes](https://github.com/JUhalt/PaperRoute-Tracker/blob/v0.8.0/UPGRADE_NOTES.md) explain the details. + +## Verification + +Every automated test passes, with none skipped. The published assets, the live updater from v0.7.0, the Schema 8 upgrade on a synthetic library, a clean install, and the new screens at 100%, 125%, and 150% in Light and Dark are recorded in [#85](https://github.com/JUhalt/PaperRoute-Tracker/issues/85).