FormsLang 1.0.0
The first stable release of FormsLang: convert, document, diff and version Oracle Forms modules, and hand the resulting APEX 26.1 application to a pipeline. The CLI, the session file, the export layout and the workbench's local HTTP API are promised stable within 1.x.
Installers
FormsLang_1.0.0_x64-setup.exe— Windows setup (NSIS)FormsLang_1.0.0_x64_en-US.msi— Windows installer (MSI)
Both bundle the engine and nothing else. Opening .fmb files still needs your own licensed Oracle Forms install; Forms2XML .xml files need nothing.
What's new
formslang export <session.db>— the headless twin of the workbench's Export APEX 26.1 button: same exporter, same choices (remembered on the session), same bytes.--jsonfor tooling.formslang apex validate|import <zip>— SQLcl driven from a terminal or CI. Target from flags,FORMSLANG_APEX_CONNECT/FORMSLANG_APEX_USERor Settings; password fromFORMSLANG_APEX_PASSWORD, the OS credential store or a hidden prompt — never a command-line argument. Exit 1 when SQLcl printsAPEXlang Compile Errorswith exit 0.- Deterministic exports — an unchanged session exports byte-identical ZIPs: name-ordered entries, fixed timestamps, one checksum salt per session. Rebuild, cache and diff what was reviewed.
- Export and Import dialogs show the command line that reproduces them, and the export dialog pre-fills the previous export's choices.
docs/ci-cd.md+examples/ci/formslang-apex.yml— the pipeline contract and a complete GitHub Actions workflow (export → validate → import onmain, plus a structuralformslang diffjob on pull requests).MultiLine="true"text items export astextarea.- Oracle Forms homes under
C:\Oracleare found with noORACLE_HOMEset (e.g.C:\Oracle\FR1412). - Multi-user mode as a saved setting in the Settings screen, with the first-Owner status and a terminal shortcut for
formslang auth bootstrap-owner. docs/apex-import-verification.md— the repeatable render-time check through ORDS for the class of defectapex validatecannot see.- README rewritten for 1.0: CLI reference, versioning workflow, CI/CD, complete environment-variable table, architecture map.
Fixed
- A hidden-label item 1 or 2 grid columns wide failed to render in App Builder (
LABEL_COLUMN_SPAN_TOO_BIG); hidden labels now emitlabelColumnSpan: 0.
Full details in CHANGELOG.md.