Some checks failed
repo hygiene / hygiene (push) Has been cancelled
- Fork portallist_flow_adaptive_view at ecf5a572 is 1 ahead / 0 behind upstream dev abd70f47 (Aug 15); extra commit restores test/gltf/csg re-exports - Hard-reset nigig-dev-reexports from stale 2c5cd97 to ecf5a572 and force-pushed so both tracking branches are current - Pinned rev stays ecf5a572 in map + pdf-makepad Cargo.toml (no bump needed) - Document baseline strategy: nigig-map/makepad_map as control surface tracking upstream widgets/src/map, not enabling map feature in nigig-rider for rendering; upstream routing (map_nav/geodata/route app) stays separate from widget (valhalla vs map_nav decision) - Note periodic diff workflow for packed-vertex, LOD, dissolve, growing-archive watcher improvements
41 lines
3.9 KiB
Markdown
41 lines
3.9 KiB
Markdown
# Makepad Fork Sync — 2026-08-16
|
|
|
|
## Summary
|
|
Fork `https://gitdab.com/andodeki/makepad` was verified against upstream `makepad/makepad` `dev`.
|
|
|
|
- **Upstream dev HEAD**: `abd70f4716ca` (2026-08-15, Update README.md)
|
|
- **Fork `portallist_flow_adaptive_view` HEAD before sync**: `ecf5a572ab62a1c1598909971f602f99083671cc` (fix(widgets): restore fork-local test/gltf/csg re-exports)
|
|
- **Result**: fork was **1 ahead, 0 behind** upstream. No upstream commits to merge. The `1 ahead` is the fork-only fix that restores `widgets/Cargo.toml` + `widgets/src/lib.rs` re-exports for `test`/`gltf`/`csg` lost during the `abd70f4` merge. Without it `nigig-pdf-makepad` fails with `makepad-widgets does not have feature test`.
|
|
|
|
## Actions taken (this sync)
|
|
1. Fetched `upstream/dev` into `/tmp/makepad-fork`.
|
|
2. Compared `portallist_flow_adaptive_view` vs `upstream/dev`: `1 ahead / 0 behind` → no merge needed.
|
|
3. Compared `nigig-dev-reexports` (old tip `2c5cd97a`) vs `portallist_flow_adaptive_view`. The old branch was 2 months behind and had diverged (still contained `apps/arcade` deletions etc). Hard-reset `nigig-dev-reexports` to `portallist_flow_adaptive_view` tip `ecf5a572` so both tracking branches are identical and current.
|
|
4. Force-pushed `nigig-dev-reexports` to origin with `--force-with-lease`.
|
|
|
|
```
|
|
git checkout nigig-dev-reexports
|
|
git reset --hard portallist_flow_adaptive_view
|
|
git push origin nigig-dev-reexports --force-with-lease
|
|
```
|
|
|
|
## Pinned `rev` in nigig-org
|
|
`crates/apps/map/Cargo.toml` and `crates/apps/pdf/pdf-makepad/Cargo.toml` both pin
|
|
`rev = "ecf5a572ab62a1c1598909971f602f99083671cc"` which is now the tip of both fork branches. **No bump needed** this cycle.
|
|
|
|
Next sync: re-run `REVIEWS` workflow §0.1 checks:
|
|
```bash
|
|
curl -sL "https://gitdab.com/api/v1/repos/andodeki/makepad/branches" | python3 -c "import json,sys;[print(b['name'], b['commit']['id'][:12]) for b in json.load(sys.stdin)]"
|
|
curl -sL "https://api.github.com/repos/makepad/makepad/commits?sha=dev&per_page=5" | python3 -c "import json,sys;[print(c['sha'][:12], c['commit']['committer']['date'][:10], c['commit']['message'].splitlines()[0][:70]) for c in json.load(sys.stdin)]"
|
|
grep -h "makepad-widgets" crates/apps/pdf/pdf-makepad/Cargo.toml crates/apps/map/Cargo.toml
|
|
```
|
|
|
|
## Nigig-map baseline strategy
|
|
- **Do not enable** `makepad-widgets` `maps` feature in `nigig-rider` to render Makepad's `MapView` directly. Keep it only if `NigigMapView` registration still depends on it (comment in `nigig-rider/Cargo.toml` warns silent `book.rs` failure without it). Long-term goal is `nigig-map` owns `NigigMapView` and the feature can be dropped.
|
|
- **`nigig-map` is the control surface**: `crates/apps/map/src/makepad_map/` is a baseline copy of `makepad/widgets/src/map/` (copied at `d82756a`, currently reconciled to latest `abd70f47` + local adaptation fixes for imports and `super::` paths). Improvements from upstream are cherry-picked there, not by switching the app to the upstream widget.
|
|
- **Upstream routing capabilities** (`apps/route` + `libs/map_nav`, `libs/geodata`, `libs/makepad_ai`) are **not** part of `widgets/src/map`. They live in separate crates/apps. Tracking them is a separate decision: either vendor `map_nav`/`geodata` into `nigig-map` or keep routing in `valhalla-*` crates (current choice). This sync confirmed `nigig-map/makepad_map` is byte-identical to upstream `widgets/src/map` modulo the 4 local adaptation patches (icons path, `super::` rewrites, direct `makepad-fast-inflate`/`mbtile-reader` crates, `DrawVector` import).
|
|
|
|
## Review follow-up (improving map crate)
|
|
- Keep `nigig-map` 6-subsystem split (`viewport`, `cache`, `scheduler`, `renderer`, `label_state`, `tile_decode`/`tile_disk`) as in `map-rewrite-plan.md`.
|
|
- Periodically diff `/tmp/makepad-fork/widgets/src/map/` vs `crates/apps/map/src/makepad_map/` (`diff -r` + `git log -- widgets/src/map`) and port only the passes that matter (packed vertex 12-slot, fringe split, LOD rings, ordered-dither dissolve, growing-archive watcher).
|
|
|