ProjectEngine v1.2.6 — Internationalization & Stability Update #11
Pinned
TMailletFR
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
v1.2.6 is primarily a stabilization and internationalization release.
It does not introduce a new scheduling engine or major analytics feature. Instead, it focuses on making ProjectEngine more reliable across different Excel environments, cleaning up legacy UI architecture, and resolving compatibility issues reported by users.
A special thank you to the users who tested ProjectEngine outside my own Excel environment and provided detailed feedback. Several of the changes below started directly from those reports.
🌍 Internationalization overhaul
ProjectEngine is no longer structurally dependent on English visible column headers.
The five user-facing tables now use a centralized language-independent schema covering 81 visible columns:
Their actual Excel table headers can now switch physically between English and French without breaking the scheduling engine or its consumers.
The old duplicated localization rows above the Excel tables have been completely removed.
This results in a cleaner workbook layout and removes a significant amount of legacy indexing and localization debt.
📅 Global date display format
A new workbook-wide date display setting is available in SETTINGS:
dd/mm/yyyymm/dd/yyyyyyyy-mm-ddThe setting is independent from the selected interface language.
It changes display formatting only. Excel date values, formulas, calculations, signatures and analytics remain unchanged.
The setting applies across the main visible date surfaces, including WBS, Gantt, S-Curve, Constraints, Event History and Dashboard charts.
🗣️ Safer language lifecycle
Language changes are now explicit and controlled from SETTINGS.
Opening the workbook, running Planning Update, refreshing the S-Curve or rebuilding the Gantt no longer triggers unrelated language mutations.
Each visible area now creates or refreshes its own UI directly in the persisted language instead of relying on broad automatic translation passes.
Constraints also now has its own independent language owner and participates properly in GLOBAL language changes.
📝 Excel LTSC / perpetual compatibility — GitHub #10
ProjectEngine previously relied on Excel's modern threaded-comments VBA API for the WBS onboarding tutorials.
Some perpetual / LTSC Excel builds do not expose this API, which could cause a blocking error.
ProjectEngine now detects that capability before using it.
This means LTSC users no longer have to choose between avoiding the crash and losing the onboarding guidance.
The unsupported branch has been tested deterministically, but native validation on the exact LTSC environment reported in GitHub #10 is still pending user confirmation.
📈 S-Curve cache fix — GitHub #9
The S-Curve chart cache stored its full dynamic source signature inside an Excel Defined Name.
That signature could exceed Excel's 255-character formula-text limit, causing a runtime error after the S-Curve had already been built.
The raw signature is still used internally, but ProjectEngine now persists only a fixed-length versioned key:
SCV1:<SHA-256>The stored key is always 69 ASCII characters.
This removes the 255-character failure and also restores the intended chart-cache behavior:
🔤 VBA encoding hardening
The VBA synchronization pipeline was hardened to prevent French accented characters from being corrupted during import into the VBA editor.
Repository sources remain UTF-8, while imports now use a deterministic Windows-1252 staging step compatible with the VBE.
Final validation found:
🧹 UI and legacy cleanup
Several historical localization layers were removed rather than merely hidden.
The visible Excel tables are now the single authoritative header surface.
The WBS onboarding row remains intact and aligned, while obsolete duplicated title rows were physically removed from:
The migration is guarded and idempotent: unexpected user content prevents automatic deletion instead of being silently removed.
🙌 Community shoutout
A special thank you to the two contributors whose feedback directly shaped this release.
andrerwolff
Andre's testing on a 32-bit English Excel environment exposed the language-dependent formula behavior that triggered the entire internationalization work behind v1.2.6.
What initially looked like a localized compatibility bug ultimately led to a much broader cleanup of:
That original report was therefore the starting point for most of the internationalization and localization architecture delivered in this release.
BekbolatBK
Bekbolat provided two exceptionally detailed bug reports against v1.2.5:
Both reports included reproducible cases, environment details, source-level analysis and likely root causes.
They led directly to:
Thank you both for taking the time to test ProjectEngine outside my own environment and document the failures so precisely. This kind of feedback is exactly what makes an open-source project more robust.
✅ Validation
The release candidate has been validated across:
Validation included:
Final analytics comparison reported no result changes.
Full changelog summary
Thanks to everyone testing ProjectEngine in real-world Excel environments. Reports like these are directly improving the portability, reliability and usability of the project.
This discussion was created from the release ProjectEngine v1.2.6 — Internationalization & Stability Update.
All reactions