Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

py10x-fin-base-cxx (cxxfin import)

Native extension for py10x-fin-base. Dist name is py10x-fin-base-cxx; the import module remains cxxfin. Install py10x-fin-base (not this package directly). Built with pybind11 and scikit-build-core.

Architecture

  • cxxfin.cpp — pybind11 module source; PYBIND11_MODULE name is cxxfin
  • generate_stubs.py — post-build stub generation; promotes py10x_kernel to RTLD_GLOBAL before importing cxxfin so that BTraitable typeinfo is visible (macOS flat namespace requirement)
  • Headers fetched from cxx10x at the exact git commit matching the installed py10x_kernel binary (version string contains the hash)

Subclassing py10x_kernel types

py10x_kernel is built with CXX_VISIBILITY_PRESET default so its vtables and typeinfo are exported. On import it promotes itself to RTLD_GLOBAL via dladdr + dlopen(RTLD_NOW | RTLD_GLOBAL | RTLD_NOLOAD), making its symbols visible to subsequently loaded extension modules. py10x_kernel must be imported before cxxfin — this holds in normal usage since it is always loaded as part of the py10x-core import chain.

Incremental, automatic rebuild

cxxfin on is automatically rebuilt on import cxxfin whenever the sources changed.

Clean rebuild

Needed when changing build structure, e.g. adding source files, editing CMakeLists.txt):

uv pip uninstall py10x-fin-base-cxx
rm -rf .venv/py10x-build/cxxfin
uv sync --reinstall-package py10x-fin-base-cxx
  • uv pip uninstall py10x-fin-base-cxx — removes the editable finder from site-packages, which otherwise intercepts import cxxfin during stub generation and causes a circular rebuild failure
  • rm -rf .venv/py10x-build/cxxfin — wipes the stale CMake cache
  • uv sync --reinstall-package py10x-fin-base-cxx — rebuilds and reinstalls from scratch

Normal development (edit C++ source → run) does not require this; the editable rebuild fires automatically on import.

Debug build

cxxfin builds Release by default. For Debug build, set the build type via scikit-build-core's env override and re-run uv sync, for example:

SKBUILD_CMAKE_BUILD_TYPE=Debug uv sync --reinstall-package py10x-fin-base-cxx

The build type is fixed at sync time (baked into the editable install along with the build-dir), so switching is just another sync — SKBUILD_CMAKE_BUILD_TYPE=Debug uv sync --reinstall-package py10x-fin-base-cxx for Debug, plain uv sync --reinstall-package py10x-fin-base-cxx for Release. Because each type has its own tree under .venv/py10x-build/cxxfin/<Debug|Release>/, switching does not rebuild from scratch.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-win_amd64.whl (86.3 kB view details)

Uploaded CPython 3.12Windows x86-64

py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-manylinux_2_34_x86_64.whl (99.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-macosx_13_0_universal2.whl (164.8 kB view details)

Uploaded CPython 3.12macOS 13.0+ universal2 (ARM64, x86-64)

py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-win_amd64.whl (85.6 kB view details)

Uploaded CPython 3.11Windows x86-64

py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-manylinux_2_34_x86_64.whl (99.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-macosx_13_0_universal2.whl (164.5 kB view details)

Uploaded CPython 3.11macOS 13.0+ universal2 (ARM64, x86-64)

File details

Details for the file py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 9af0c5bd2e61e6d1e1df6d1721a8aba1e39c6dfd57d65180ff33e2c83d5b5b4b
MD5 6e62d69934bf80f4f4c35c6ee6fc15c2
BLAKE2b-256 e7c24c34d45dec20db1de15f414005014ae9a1f9791b79b682ff89da78a16040

See more details on using hashes here.

Provenance

The following attestation bundles were made for py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-win_amd64.whl:

Publisher: finbase_wheel.yml on 10x-software/xx-fin-domain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 472205d27ddf17b879e2b8c82809afbf0274c3775db25f6321e42f9dffe9006f
MD5 963a5053ab0515f4c626e7804d9c4d7e
BLAKE2b-256 2ed6320d141d2931846eb087a05672f03732bb326b3cd56b3a47a79581d83293

See more details on using hashes here.

Provenance

The following attestation bundles were made for py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-manylinux_2_34_x86_64.whl:

Publisher: finbase_wheel.yml on 10x-software/xx-fin-domain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-macosx_13_0_universal2.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-macosx_13_0_universal2.whl
Algorithm Hash digest
SHA256 a039f2cac0840600eb0d301286c2192ac2ce5cea3f2b1811d63800b680c309c5
MD5 9604bc41d2683210b70b7fde8e34f81a
BLAKE2b-256 5cdf13ef79a249cb5c6b3a26b3e1492310b98814f35be3ca306e56ce4dad5b67

See more details on using hashes here.

Provenance

The following attestation bundles were made for py10x_fin_base_cxx-0.1.0rc1-cp312-cp312-macosx_13_0_universal2.whl:

Publisher: finbase_wheel.yml on 10x-software/xx-fin-domain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 7d21fced21ac7b1c4f85be289d24b97fb01df8fe348b1a0861c3621c449349c6
MD5 0e2ce94982e9c13496b3bee813698259
BLAKE2b-256 6e014da61368dbbe11f31cacc7d11fd82d3ca4bf0748409a71e6b1e4be7ca102

See more details on using hashes here.

Provenance

The following attestation bundles were made for py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-win_amd64.whl:

Publisher: finbase_wheel.yml on 10x-software/xx-fin-domain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 cd0f71c38953bdd3e97770796a86839b18948c2c3df997ff25dcbf67d054a886
MD5 9238466db2f17a4af127fe0194162800
BLAKE2b-256 6ab6b4b7118daa90a71d7b6560441aa48eb3022bf66781583b7a21c40e29be72

See more details on using hashes here.

Provenance

The following attestation bundles were made for py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-manylinux_2_34_x86_64.whl:

Publisher: finbase_wheel.yml on 10x-software/xx-fin-domain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-macosx_13_0_universal2.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-macosx_13_0_universal2.whl
Algorithm Hash digest
SHA256 d0c7e3132cdce0afbd25932d1a4566b16a7b5f7a305969b97cf5ff93310a6800
MD5 8c76361237cfe81cb237ae9780b19d56
BLAKE2b-256 3683eb2b8b192eae925da42448c96ffb704337fe9eb0c425b0d6ba1eeb2a70c6

See more details on using hashes here.

Provenance

The following attestation bundles were made for py10x_fin_base_cxx-0.1.0rc1-cp311-cp311-macosx_13_0_universal2.whl:

Publisher: finbase_wheel.yml on 10x-software/xx-fin-domain

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page