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.0rc6-cp312-cp312-win_amd64.whl (87.2 kB view details)

Uploaded CPython 3.12Windows x86-64

py10x_fin_base_cxx-0.1.0rc6-cp312-cp312-manylinux_2_34_x86_64.whl (100.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

py10x_fin_base_cxx-0.1.0rc6-cp312-cp312-macosx_13_0_universal2.whl (165.9 kB view details)

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

py10x_fin_base_cxx-0.1.0rc6-cp311-cp311-win_amd64.whl (86.6 kB view details)

Uploaded CPython 3.11Windows x86-64

py10x_fin_base_cxx-0.1.0rc6-cp311-cp311-manylinux_2_34_x86_64.whl (100.1 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

py10x_fin_base_cxx-0.1.0rc6-cp311-cp311-macosx_13_0_universal2.whl (165.6 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.0rc6-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 44b02a883248b129a2877a4452a8f7a62aa7fe4a6b7ee700a53430f468193d57
MD5 e8820a52ce649439bf2b0a9192f68388
BLAKE2b-256 17211c8fd7cf5a5e5c91ed1d86b09fc2b077f4d8a049ec388bcc609c637a4864

See more details on using hashes here.

Provenance

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

Publisher: finbase_wheel.yml on 10x-software/py10x

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.0rc6-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc6-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 dfee797c2e3d494035802d452b615a15b6cba5deb2aecc680f862294b58373b3
MD5 b6c8f9e4267bc267e54a1b21c2a67021
BLAKE2b-256 64f4ace2f581b56b80a7ee4d95978917e068614b183cad1a07bba5f857e74fda

See more details on using hashes here.

Provenance

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

Publisher: finbase_wheel.yml on 10x-software/py10x

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.0rc6-cp312-cp312-macosx_13_0_universal2.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc6-cp312-cp312-macosx_13_0_universal2.whl
Algorithm Hash digest
SHA256 1cd487956cff909ee9325a9d23752a3bad545bd9af83fad5e6c110c8861ec9e2
MD5 6cb46f3ec49b137932633b0ce2c9204e
BLAKE2b-256 4784300ba501f8db540b6ea278613a7cd060173e00709edadb38ae471060c0c3

See more details on using hashes here.

Provenance

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

Publisher: finbase_wheel.yml on 10x-software/py10x

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.0rc6-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 c2ae88c27c7f4ac1255171ab32f1bf6ee8febe6f5902408df24b2640daa5af56
MD5 48dcc97cf69f38d6440a84135f3c6f52
BLAKE2b-256 159fcf6133aa828c91b6df23c953d7579137232f53cf450e0f50d3073f3f7e3b

See more details on using hashes here.

Provenance

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

Publisher: finbase_wheel.yml on 10x-software/py10x

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.0rc6-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc6-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 900588f54cc2b4c8a09f925c9c9c56e559c9b94d46db69d623132e4207548914
MD5 d2f67af7d20f4c9d9775bbb24d263749
BLAKE2b-256 cfd3b1f04c9438be5c04f9c0689df4075461e1757c68d9493b3daaddb8355af8

See more details on using hashes here.

Provenance

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

Publisher: finbase_wheel.yml on 10x-software/py10x

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.0rc6-cp311-cp311-macosx_13_0_universal2.whl.

File metadata

File hashes

Hashes for py10x_fin_base_cxx-0.1.0rc6-cp311-cp311-macosx_13_0_universal2.whl
Algorithm Hash digest
SHA256 9898e9d755b4016ebe189c603248102f1d5ea07e9d7cdd3e16c92ccbc6dcbc41
MD5 474ffb1c53e6ff89efb76bea601e98a0
BLAKE2b-256 7e668ee05fad34a2e32203f42d3cea3978692cf2c4b267ba7b62624fe5914ee9

See more details on using hashes here.

Provenance

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

Publisher: finbase_wheel.yml on 10x-software/py10x

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