fix: drop broken using meosType = MeosType; alias in tydef.hpp#161
fix: drop broken using meosType = MeosType; alias in tydef.hpp#161estebanzimanyi wants to merge 4 commits into
using meosType = MeosType; alias in tydef.hpp#161Conversation
`meosType` (lower-case) is the **pre-consolidation** MEOS type name; `MeosType` (upper-case) is the **post-consolidation** target that the upstream rename sweep has not yet reached. The current vcpkg pin (`vcpkg_ports/meos/portfile.cmake` REF f11b7443ee98…) is still pre-consolidation: `meos/include/temporal/meos_catalog.h` line 121 declares the typedef as `} meosType;` and every MEOS API uses the lower-case spelling. MobilityDuck's source code consistently uses `meosType` to match — `grep -rn '\bMeosType\b' src/` finds the name only on the alias line and its comment, nowhere else. c8cad6d added `using meosType = MeosType;` as a forward-looking bridge for the eventual consolidation bump. That bridge points at `MeosType`, which the current pin does NOT yet expose, so it breaks every PR's Linux arm64 build with: /duckdb_build_dir/src/include/tydef.hpp:18:18: error: ‘MeosType’ does not name a type; did you mean ‘meosType’? The fix is to drop the premature alias and replace the misleading comment with one that documents the pre/post-consolidation distinction and the resume path for the next pin bump — at that point a reviewer can either restore the bridge (this time it'll be valid because `MeosType` will exist) or sweep the MobilityDuck source from `meosType` to `MeosType` in a single PR. Unblocks every in-flight PR's Linux arm64 build: MobilityDB#126, MobilityDB#130, MobilityDB#149, MobilityDB#158, MobilityDB#159, MobilityDB#160, plus the entire `feat/*_port_core` extended-type stack (MobilityDB#148/MobilityDB#150/MobilityDB#151/MobilityDB#153/MobilityDB#155/MobilityDB#156).
4119a7d to
cf36886
Compare
Reviewer's quickstart — ~2 minutesWhat this PR does in one sentence: removes one line ( Files to read (1 file, 1 line removed):
Naming context (for clarity, not action):
Smoke verification (Linux arm64 CI): already SUCCESS on this PR's most recent run. Linux amd64 FAILURE was a transient Why it's safe to merge: no-op for MobilityDuck's own code (which uses When the MEOS pin is bumped past consolidation (future PR): either restore the bridge ( |
…MobilityDB#136) Cherry-picked from open PR MobilityDB#136 (commit 9e1d7a6) so this PR's CI goes green before MobilityDB#136 lands. When MobilityDB#136 reaches main, the rebase will collapse this commit to a no-op and it will drop out. --- original commit body --- Pre-stage icu extension for amd64 docker tests LoadInternal calls ExtensionHelper::AutoLoadExtension(db, "icu") so the Europe/Brussels timezone option is honoured. Inside the linux_amd64 test docker container there is no network egress and the local extension directory is empty, so the autoload fails. Copy the icu.duckdb_extension that was just built locally (declared in extension_config.cmake) into the expected path before running the unittester.
…en PR MobilityDB#140) On macOS LP64 and Wasm/emscripten, int64 (long) and int64_t (long long) are the same width but distinct types, so clang rejects passing bigint_to_set where a Set *(*)(int64_t) is expected as a non-type template arg. Cherry- picked from open PR MobilityDB#140 (a8b1755) so this PR goes green on osx_amd64, osx_arm64, and wasm_mvp before MobilityDB#140 lands. The cast is a no-op on Linux, where int64 and int64_t are both long. When MobilityDB#140 reaches main the rebase collapses this commit to a no-op.
… PR MobilityDB#161) Cherry-picked from open PR MobilityDB#161 so this PR's CI compiles against the vcpkg-installed MEOS, which exposes 'meosType' (pre-consolidation) not 'MeosType'. When MobilityDB#161 reaches main, this commit collapses to a no-op on rebase.
… PR MobilityDB#161) Cherry-picked from open PR MobilityDB#161 so this PR's CI compiles against the vcpkg-installed MEOS, which exposes 'meosType' (pre-consolidation) not 'MeosType'. When MobilityDB#161 reaches main, this commit collapses to a no-op on rebase.
… PR MobilityDB#161) Cherry-picked from open PR MobilityDB#161 so this PR's CI compiles against the vcpkg-installed MEOS, which exposes 'meosType' (pre-consolidation) not 'MeosType'. When MobilityDB#161 reaches main, this commit collapses to a no-op on rebase.
… PR MobilityDB#161) Cherry-picked from open PR MobilityDB#161 so this PR's CI compiles against the vcpkg-installed MEOS, which exposes 'meosType' (pre-consolidation) not 'MeosType'. When MobilityDB#161 reaches main, this commit collapses to a no-op on rebase.
The stage_icu helper mapped only the Linux uname values, so on the macOS arm64 test runner uname -m returned "arm64" and the icu extension was copied to .duckdb/extensions/v1.4.4/arm64 instead of .../osx_arm64, where DuckDB's autoload looks. The hub fallback is not reliably resolvable on that runner, so the osx_arm64 Test step failed to load the extension. Map the OS and architecture to the DuckDB platform string (linux_amd64, linux_arm64, osx_amd64, osx_arm64) so the locally built icu is staged at the path autoload expects on every tested platform; the Linux mapping is unchanged. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
High-leverage 1-file fix unblocking every in-flight PR's Linux arm64 build.
The bug
src/include/tydef.hpp:18reads:using meosType = MeosType;This was added in c8cad6d ("Pre-existing build issue surfaced when the headers were touched — vcpkg's MEOS now exposes
MeosTypeinstead ofmeosType…") on the assumption that the pinned MEOS exposed the upper-case spelling. That assumption is no longer true.The pinned MEOS (
vcpkg_ports/meos/portfile.cmakeREFf11b7443ee98…) exposesmeosType(lower-case) viameos/include/temporal/meos_catalog.h:So the alias resolves
using meosType = MeosType;whereMeosTypedoesn't exist → every PR's Linux arm64 build dies with:Confirmation that MobilityDuck doesn't actually need
MeosTypeMeosTypeis referenced only by the alias line and its comment. Every other call-site uses the lower-casemeosType(which MEOS already provides):The fix
Delete the alias line and replace its comment with one that explains the current state (so future MEOS-pin bumps don't re-introduce the same bug). Zero behavioural change to MobilityDuck.
Impact: unblocks the whole open-PR backlog
Every Linux arm64 build currently fails identically — this includes:
feat/*_port_coreextended-type stack…all of which would build green once this merges.
Refs
Unblocks #126, #130, #149, #158, #159, #160 + the
*_port_corestack.