Skip to content

Commit 5efdf80

Browse files
committed
temp
1 parent 3f90f81 commit 5efdf80

114 files changed

Lines changed: 38862 additions & 2549 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

crates/weavepy-capi/build.rs

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,11 +238,41 @@ fn main() {
238238
name: "_stockarray",
239239
env_var: "WEAVEPY_CAPI_STOCKARRAY_EXTENSION",
240240
});
241+
// `_stockcython.c` — wave 5 (RFC 0047): a Cython-shaped
242+
// extension that subclasses an extension-defined base and
243+
// reads inherited slots directly off `Py_TYPE(self)` (the
244+
// `inherit_slots` proof), plus the Cython C-API runtime tail.
245+
build_extension(ExtensionBuild {
246+
cc: &cc,
247+
include_dir: &stock_inc,
248+
out_dir: &out_dir,
249+
target_os: &target_os,
250+
suffix,
251+
src: &workspace_root.join("tests/capi_ext/_stockcython.c"),
252+
name: "_stockcython",
253+
env_var: "WEAVEPY_CAPI_STOCKCYTHON_EXTENSION",
254+
});
255+
// `_stockdatetime.c` — wave 5 (RFC 0029): a datetime consumer
256+
// compiled against the real `datetime.h`, exercising
257+
// `PyDateTime_IMPORT`, the inlined `PyDateTime_GET_*` accessor
258+
// macros, the capsule constructors, and the `tp_basicsize`
259+
// size-check — the exact ABI surface pandas' `tslibs` uses.
260+
build_extension(ExtensionBuild {
261+
cc: &cc,
262+
include_dir: &stock_inc,
263+
out_dir: &out_dir,
264+
target_os: &target_os,
265+
suffix,
266+
src: &workspace_root.join("tests/capi_ext/_stockdatetime.c"),
267+
name: "_stockdatetime",
268+
env_var: "WEAVEPY_CAPI_STOCKDATETIME_EXTENSION",
269+
});
241270
}
242271
None => {
243272
println!(
244273
"cargo:warning=stock CPython 3.13 headers not found; \
245-
skipping the _stockabi/_stocktype binary-ABI proof fixtures"
274+
skipping the _stockabi/_stocktype/_stockarray/_stockcython \
275+
binary-ABI proof fixtures"
246276
);
247277
}
248278
}

0 commit comments

Comments
 (0)