Commit Graph
21 Commits
Author SHA1 Message Date
Hakan Seven 95bad2a3b2 Fix web folder paths and allow main-only web hotfix deployment 2026-09-13 20:30:12 +03:00
PanosandClaude Opus 5 5f161bb037 Show the exact build in About, Copy Info, REPORT and --version
Builds from main reported only the release version (2026.36) even when
HEAD was hundreds of commits past the tag. build.rs now also emits
OCS_TAG_DISTANCE, OCS_COMMIT_DATE, OCS_BUILD_METADATA and
OCS_FULL_VERSION: a clean checkout of the release tag stays "2026.36",
anything else becomes "2026.36+194.gef189d77", with ".dirty" appended
for uncommitted changes and only the hash when no tag can be counted
from (shallow clone, tarball). OCS_APP_VERSION is unchanged so the
update check, donation gate, User-Agents and window title keep working.

The About dialog gains Build / Commit date / Profile cards, Copy Info,
the REPORT issue template and recovery reports carry the full version,
and `-V`/`--version` print it instead of Cargo's 2026.36.0. Release
workflows check out full history so release binaries see the tag.

Also fixes the build being marked dirty when there is no repository:
diff-index exits 128 there, not 1.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-12 16:19:40 +03:00
Hakan Seven 143703d809 Improve website translations and favicons; disable push workflows 2026-09-07 01:19:39 +03:00
Hakan Seven 4a5adf90a5 Localize website in all supported languages and refresh site icons 2026-09-06 13:32:37 +03:00
Hakan Seven 13afc1479f Automate weekly releases and synchronize application versions 2026-09-05 02:13:20 +03:00
Hakan Seven ffc9a6cc33 docs(readme): split project growth charts 2026-09-02 23:37:43 +03:00
Hakan Seven c465bcf624 feat(web): add SEO landing page 2026-08-22 09:33:38 +03:00
Hakan Seven 5a6ba9dd94 fix(web): use custom domain root 2026-08-14 00:58:53 +03:00
Hakan Seven 3d2848021f feat(readme): combine growth metrics 2026-08-13 21:48:47 +03:00
Hakan SevenandClaude Opus 5 273f482aee refactor: retire the solid3d feature — the web build gets solids too
The feature existed for one reason: truck's mesh and boolean crates reach
`vtkio → xz2 → lzma-sys`, a C library that cannot cross-compile to wasm32. So
the web build dropped it, and with it the Model tab, solid tessellation and
ACIS import — all of which quietly did nothing in the browser.

cadkernel is pure Rust and has no C dependency, so none of that holds any
more. The feature gated exactly two things by the end, `acis_export` and the
save-path sync that calls it, and both are as portable as everything around
them. Removing it means the web build makes primitives, runs booleans, draws
ACIS solids read from a file, and writes them back out as exact geometry — the
same as the desktop build.

Verified against all three: native, `--no-default-features`, and an actual
`wasm32-unknown-unknown` check rather than an assumption about one.

The docs claimed otherwise in four places and are corrected. `tessellation.md`
in particular was organised around whether an entity "goes through truck",
which is no longer a question anything can be asked — the three paths are now
a kernel B-rep mesh, a curve sampled through `entities::curve`, or geometry
emitted directly, and the per-entity table is updated to match.

`index.html` no longer passes `data-cargo-no-default-features`; there are no
features left to turn off.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-10 01:28:25 +03:00
Hakan Seven 0936e6e4df fix(ci): authenticate star history fetch 2026-08-04 12:50:54 +03:00
Hakan Seven 2c01692d63 feat: self-host star history 2026-08-04 12:42:04 +03:00
Hakan Seven 63c8245f98 fix: normalize recent Patreon support 2026-08-04 12:17:21 +03:00
Hakan Seven feb110404c fix(ui): correct supporter data and labels 2026-08-03 22:08:22 +03:00
Hakan Seven b166125529 ci(web): match wasm-bindgen to lockfile 2026-07-31 19:31:16 +03:00
Hakan Seven d4e792b2bc feat(web): persist browser state
Keep settings, aliases, and recent drawings across browser sessions.

Load Start-page videos from a Pages-generated snapshot.
2026-07-29 00:44:00 +03:00
Hakan Seven 28d8246c68 feat(ui): add discussions and semantic theming
Generate web discussion snapshots in CI; native builds use the public
feed and an offline cache.
2026-07-28 11:49:45 +03:00
Hakan Seven e0a2e1ffd3 fix(ci): install web worker bindgen CLI 2026-07-27 01:36:12 +03:00
Hakan SevenandClaude Opus 4.8 0e74a11724 feat(web): show Patreon supporters on the web build too
The browser can't call the Patreon API directly (CORS, and the token
would be exposed in the bundle), so the web build fetches a
pre-generated supporters.json served on the same origin. The Pages
workflow generates it server-side with the token (CI secret) after the
trunk build. Native keeps its live API fetch.

serde_json moves to the shared dependencies so the wasm build can parse
the list.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-02 01:25:24 +03:00
Hakan SevenandClaude Opus 4.8 10f10f992f ci: distinguish the web Pages run name (… Web)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 01:52:19 +03:00
Hakan SevenandClaude Opus 4.8 c56e7864bb ci: deploy the wasm web app to GitHub Pages on each release (issue #45)
Add .github/workflows/pages.yml: on every published release (and manual
dispatch) it builds the web bundle with trunk
(`--public-url /OpenCADStudio/`, no-default-features so no solid3d/C
deps), adds .nojekyll, and publishes dist/ to GitHub Pages. No COOP/COEP
needed since wasm runs single-threaded.

Enable via repo Settings → Pages → Source: GitHub Actions.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 00:59:56 +03:00