fastnumparse 0.0.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- fastnumparse-0.0.1/.github/workflows/pypi.yml +80 -0
- fastnumparse-0.0.1/.github/workflows/testpypi.yml +80 -0
- fastnumparse-0.0.1/.gitignore +31 -0
- fastnumparse-0.0.1/AGENTS.md +2 -0
- fastnumparse-0.0.1/CMakeLists.txt +48 -0
- fastnumparse-0.0.1/LICENSE +21 -0
- fastnumparse-0.0.1/PKG-INFO +151 -0
- fastnumparse-0.0.1/README.md +123 -0
- fastnumparse-0.0.1/assets/csv_float_244768x3.7z +0 -0
- fastnumparse-0.0.1/assets/csv_float_24608x3.7z +0 -0
- fastnumparse-0.0.1/assets/csv_int_1689166x2.7z +0 -0
- fastnumparse-0.0.1/assets/csv_int_2854577x3.7z +0 -0
- fastnumparse-0.0.1/assets/noncsv_char_2854577.7z +0 -0
- fastnumparse-0.0.1/assets/noncsv_int_244761.7z +0 -0
- fastnumparse-0.0.1/benchmarks/benchmark_csv.py +231 -0
- fastnumparse-0.0.1/benchmarks/benchmark_from_string_buffer_csv.py +301 -0
- fastnumparse-0.0.1/dep/fast_float/CMakeLists.txt +4 -0
- fastnumparse-0.0.1/dep/fast_float/fast_float/fast_float.h +3913 -0
- fastnumparse-0.0.1/dep/nanothread/.gitignore +23 -0
- fastnumparse-0.0.1/dep/nanothread/.gitmodules +3 -0
- fastnumparse-0.0.1/dep/nanothread/CMakeLists.txt +110 -0
- fastnumparse-0.0.1/dep/nanothread/LICENSE +26 -0
- fastnumparse-0.0.1/dep/nanothread/README.md +270 -0
- fastnumparse-0.0.1/dep/nanothread/ext/cmake-defaults/CMakeLists.txt +310 -0
- fastnumparse-0.0.1/dep/nanothread/ext/cmake-defaults/README.md +31 -0
- fastnumparse-0.0.1/dep/nanothread/include/nanothread/nanothread.h +652 -0
- fastnumparse-0.0.1/dep/nanothread/src/nanothread.cpp +678 -0
- fastnumparse-0.0.1/dep/nanothread/src/park.cpp +195 -0
- fastnumparse-0.0.1/dep/nanothread/src/park.h +92 -0
- fastnumparse-0.0.1/dep/nanothread/src/queue.cpp +705 -0
- fastnumparse-0.0.1/dep/nanothread/src/queue.h +368 -0
- fastnumparse-0.0.1/dep/nanothread/tests/CMakeLists.txt +22 -0
- fastnumparse-0.0.1/dep/nanothread/tests/test_01.c +55 -0
- fastnumparse-0.0.1/dep/nanothread/tests/test_02.cpp +56 -0
- fastnumparse-0.0.1/dep/nanothread/tests/test_03.cpp +76 -0
- fastnumparse-0.0.1/dep/nanothread/tests/test_04.cpp +71 -0
- fastnumparse-0.0.1/dep/nanothread/tests/test_05.cpp +85 -0
- fastnumparse-0.0.1/dep/nanothread/tests/test_06.cpp +511 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.appveyor.yml +35 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.clang-format +38 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.clang-tidy +79 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.cmake-format.yaml +73 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.codespell-ignore-lines +24 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.gitattributes +1 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/CODEOWNERS +9 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/CONTRIBUTING.md +388 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/ISSUE_TEMPLATE/bug-report.yml +61 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/ISSUE_TEMPLATE/config.yml +8 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/dependabot.yml +15 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/labeler.yml +13 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/labeler_merged.yml +8 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/matchers/pylint.json +32 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/pull_request_template.md +19 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/workflows/ci.yml +1241 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/workflows/configure.yml +92 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/workflows/emscripten.yaml +30 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/workflows/format.yml +60 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/workflows/labeler.yml +25 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/workflows/pip.yml +120 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.github/workflows/upstream.yml +116 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.gitignore +46 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.pre-commit-config.yaml +156 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/.readthedocs.yml +20 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/CMakeLists.txt +378 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/LICENSE +29 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/MANIFEST.in +6 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/README.rst +181 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/SECURITY.md +13 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/Doxyfile +21 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/_static/css/custom.css +3 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/chrono.rst +81 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/custom.rst +93 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/eigen.rst +310 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/functional.rst +109 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/index.rst +43 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/overview.rst +170 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/stl.rst +249 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/cast/strings.rst +296 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/classes.rst +1335 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/embedding.rst +262 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/exceptions.rst +401 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/functions.rst +614 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/misc.rst +429 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/pycpp/index.rst +13 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/pycpp/numpy.rst +453 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/pycpp/object.rst +286 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/pycpp/utilities.rst +155 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/advanced/smart_ptrs.rst +174 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/basics.rst +314 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/benchmark.py +89 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/benchmark.rst +95 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/changelog.rst +3285 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/classes.rst +555 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/cmake/index.rst +8 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/compiling.rst +726 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/conf.py +369 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/faq.rst +352 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/index.rst +48 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/installing.rst +105 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/limitations.rst +68 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/pybind11-logo.png +0 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/pybind11_vs_boost_python1.png +0 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/pybind11_vs_boost_python1.svg +427 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/pybind11_vs_boost_python2.png +0 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/pybind11_vs_boost_python2.svg +427 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/reference.rst +130 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/release.rst +143 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/requirements.in +6 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/requirements.txt +275 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/docs/upgrade.rst +594 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/attr.h +690 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/buffer_info.h +208 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/cast.h +1855 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/chrono.h +225 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/common.h +2 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/complex.h +74 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/class.h +767 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/common.h +1287 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/cpp_conduit.h +77 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/descr.h +172 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/exception_translation.h +71 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/init.h +436 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/internals.h +766 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/type_caster_base.h +1195 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/typeid.h +65 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/detail/value_and_holder.h +77 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/eigen/common.h +9 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/eigen/matrix.h +715 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/eigen/tensor.h +515 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/eigen.h +12 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/embed.h +313 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/eval.h +156 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/functional.h +149 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/gil.h +219 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/gil_safe_call_once.h +100 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/iostream.h +265 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/numpy.h +2139 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/operators.h +202 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/options.h +92 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/pybind11.h +2978 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/pytypes.h +2606 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/stl/filesystem.h +124 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/stl.h +448 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/stl_bind.h +822 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/type_caster_pyobject_ptr.h +61 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/include/pybind11/typing.h +242 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/noxfile.py +107 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/pybind11/__init__.py +19 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/pybind11/__main__.py +86 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/pybind11/_version.py +12 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/pybind11/commands.py +39 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/pybind11/py.typed +0 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/pybind11/setup_helpers.py +500 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/pyproject.toml +87 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/setup.cfg +43 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/setup.py +149 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/CMakeLists.txt +604 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/conftest.py +224 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/constructor_stats.h +322 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/cross_module_gil_utils.cpp +111 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/cross_module_interleaved_error_already_set.cpp +54 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/eigen_tensor_avoid_stl_array.cpp +16 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/env.py +31 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/exo_planet_c_api.cpp +103 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/exo_planet_pybind11.cpp +19 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/extra_python_package/pytest.ini +0 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/extra_python_package/test_files.py +299 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/extra_setuptools/pytest.ini +0 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/extra_setuptools/test_setuphelper.py +153 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/home_planet_very_lonely_traveler.cpp +13 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/local_bindings.h +92 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/object.h +205 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/pybind11_cross_module_tests.cpp +149 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/pybind11_tests.cpp +131 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/pybind11_tests.h +98 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/pyproject.toml +21 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/pytest.ini +23 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/requirements.txt +13 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_async.cpp +25 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_async.py +31 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_buffers.cpp +271 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_buffers.py +237 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_builtin_casters.cpp +387 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_builtin_casters.py +532 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_call_policies.cpp +113 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_call_policies.py +249 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_callbacks.cpp +280 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_callbacks.py +230 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_chrono.cpp +81 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_chrono.py +207 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_class.cpp +656 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_class.py +503 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/CMakeLists.txt +80 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/embed.cpp +23 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/installed_embed/CMakeLists.txt +28 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/installed_function/CMakeLists.txt +39 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/installed_target/CMakeLists.txt +46 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/main.cpp +6 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/subdirectory_embed/CMakeLists.txt +47 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/subdirectory_function/CMakeLists.txt +41 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/subdirectory_target/CMakeLists.txt +47 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cmake_build/test.py +10 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_const_name.cpp +55 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_const_name.py +31 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_constants_and_functions.cpp +158 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_constants_and_functions.py +58 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_copy_move.cpp +544 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_copy_move.py +140 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cpp_conduit.cpp +22 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cpp_conduit.py +162 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cpp_conduit_traveler_bindings.h +47 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_cpp_conduit_traveler_types.h +25 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_custom_type_casters.cpp +217 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_custom_type_casters.py +124 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_custom_type_setup.cpp +41 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_custom_type_setup.py +50 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_docstring_options.cpp +129 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_docstring_options.py +66 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eigen_matrix.cpp +443 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eigen_matrix.py +816 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eigen_tensor.cpp +18 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eigen_tensor.inl +338 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eigen_tensor.py +290 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_embed/CMakeLists.txt +54 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_embed/catch.cpp +43 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_embed/external_module.cpp +20 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_embed/test_interpreter.cpp +488 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_embed/test_interpreter.py +16 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_embed/test_trampoline.py +18 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_enum.cpp +133 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_enum.py +270 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eval.cpp +118 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eval.py +52 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_eval_call.py +5 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_exceptions.cpp +388 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_exceptions.h +13 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_exceptions.py +434 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_factory_constructors.cpp +430 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_factory_constructors.py +518 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_gil_scoped.cpp +144 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_gil_scoped.py +249 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_iostream.cpp +126 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_iostream.py +297 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_kwargs_and_defaults.cpp +325 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_kwargs_and_defaults.py +428 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_local_bindings.cpp +106 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_local_bindings.py +259 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_methods_and_attributes.cpp +492 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_methods_and_attributes.py +539 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_modules.cpp +125 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_modules.py +118 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_multiple_inheritance.cpp +341 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_multiple_inheritance.py +495 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_numpy_array.cpp +547 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_numpy_array.py +672 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_numpy_dtypes.cpp +641 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_numpy_dtypes.py +448 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_numpy_vectorize.cpp +107 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_numpy_vectorize.py +268 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_opaque_types.cpp +77 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_opaque_types.py +60 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_operator_overloading.cpp +281 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_operator_overloading.py +153 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_pickling.cpp +194 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_pickling.py +95 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_python_multiple_inheritance.cpp +45 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_python_multiple_inheritance.py +36 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_pytypes.cpp +989 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_pytypes.py +1092 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_sequences_and_iterators.cpp +600 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_sequences_and_iterators.py +267 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_smart_ptr.cpp +476 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_smart_ptr.py +317 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_stl.cpp +549 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_stl.py +383 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_stl_binders.cpp +275 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_stl_binders.py +395 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_tagbased_polymorphic.cpp +148 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_tagbased_polymorphic.py +30 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_thread.cpp +66 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_thread.py +49 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_type_caster_pyobject_ptr.cpp +167 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_type_caster_pyobject_ptr.py +122 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_type_caster_std_function_specializations.cpp +46 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_type_caster_std_function_specializations.py +15 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_union.cpp +22 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_union.py +10 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_unnamed_namespace_a.cpp +38 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_unnamed_namespace_a.py +36 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_unnamed_namespace_b.cpp +13 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_unnamed_namespace_b.py +7 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_vector_unique_ptr_member.cpp +54 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_vector_unique_ptr_member.py +16 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_virtual_functions.cpp +592 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/test_virtual_functions.py +463 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/valgrind-numpy-scipy.supp +140 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tests/valgrind-python.supp +117 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/FindCatch.cmake +76 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/FindEigen3.cmake +86 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/FindPythonLibsNew.cmake +310 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/JoinPaths.cmake +23 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/check-style.sh +44 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/cmake_uninstall.cmake.in +23 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/codespell_ignore_lines_from_errors.py +40 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/libsize.py +38 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/make_changelog.py +92 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/pybind11.pc.in +7 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/pybind11Common.cmake +455 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/pybind11Config.cmake.in +233 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/pybind11GuessPythonExtSuffix.cmake +86 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/pybind11NewTools.cmake +341 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/pybind11Tools.cmake +239 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/pyproject.toml +3 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/setup_global.py.in +63 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/setup_main.py.in +44 -0
- fastnumparse-0.0.1/dep/pybind11/2.13.6/tools/test-pybind11GuessPythonExtSuffix.cmake +161 -0
- fastnumparse-0.0.1/docs/publish.md +161 -0
- fastnumparse-0.0.1/docs/temp.txt +0 -0
- fastnumparse-0.0.1/pyproject.toml +68 -0
- fastnumparse-0.0.1/src/fastnumparse/CMakeLists.txt +58 -0
- fastnumparse-0.0.1/src/fastnumparse/__init__.py +17 -0
- fastnumparse-0.0.1/src/fastnumparse/_fastnumparse.pyi +24 -0
- fastnumparse-0.0.1/src/fastnumparse/fastnumparse.cpp +1036 -0
- fastnumparse-0.0.1/src/fastnumparse/fastnumparse.h +50 -0
- fastnumparse-0.0.1/src/fastnumparse/py.typed +1 -0
- fastnumparse-0.0.1/testapp/CMakeLists.txt +33 -0
- fastnumparse-0.0.1/testapp/main.cpp +117 -0
- fastnumparse-0.0.1/tests/test_import.py +15 -0
- fastnumparse-0.0.1/tools/gendata.py +126 -0
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
name: Build and publish to PyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
release:
|
|
6
|
+
types: [published]
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
build-wheels:
|
|
10
|
+
name: Build wheels on ${{ matrix.os }}
|
|
11
|
+
runs-on: ${{ matrix.os }}
|
|
12
|
+
permissions:
|
|
13
|
+
contents: read
|
|
14
|
+
strategy:
|
|
15
|
+
fail-fast: false
|
|
16
|
+
matrix:
|
|
17
|
+
os:
|
|
18
|
+
- ubuntu-latest
|
|
19
|
+
- windows-latest
|
|
20
|
+
- macos-15-intel
|
|
21
|
+
- macos-14
|
|
22
|
+
|
|
23
|
+
steps:
|
|
24
|
+
- name: Check out repository
|
|
25
|
+
uses: actions/checkout@v6
|
|
26
|
+
with:
|
|
27
|
+
persist-credentials: false
|
|
28
|
+
|
|
29
|
+
- name: Build and test wheels
|
|
30
|
+
uses: pypa/cibuildwheel@v4.2.0
|
|
31
|
+
|
|
32
|
+
- name: Store wheels
|
|
33
|
+
uses: actions/upload-artifact@v4
|
|
34
|
+
with:
|
|
35
|
+
name: cibw-wheels-${{ matrix.os }}
|
|
36
|
+
path: wheelhouse/*.whl
|
|
37
|
+
if-no-files-found: error
|
|
38
|
+
|
|
39
|
+
build-sdist:
|
|
40
|
+
name: Build source distribution
|
|
41
|
+
runs-on: ubuntu-latest
|
|
42
|
+
permissions:
|
|
43
|
+
contents: read
|
|
44
|
+
|
|
45
|
+
steps:
|
|
46
|
+
- name: Check out repository
|
|
47
|
+
uses: actions/checkout@v6
|
|
48
|
+
with:
|
|
49
|
+
persist-credentials: false
|
|
50
|
+
|
|
51
|
+
- name: Build source distribution
|
|
52
|
+
run: pipx run build --sdist
|
|
53
|
+
|
|
54
|
+
- name: Store source distribution
|
|
55
|
+
uses: actions/upload-artifact@v4
|
|
56
|
+
with:
|
|
57
|
+
name: cibw-sdist
|
|
58
|
+
path: dist/*.tar.gz
|
|
59
|
+
if-no-files-found: error
|
|
60
|
+
|
|
61
|
+
publish-pypi:
|
|
62
|
+
name: Publish distributions to PyPI
|
|
63
|
+
needs: [build-wheels, build-sdist]
|
|
64
|
+
runs-on: ubuntu-latest
|
|
65
|
+
environment:
|
|
66
|
+
name: pypi
|
|
67
|
+
url: https://pypi.org/project/fastnumparse/
|
|
68
|
+
permissions:
|
|
69
|
+
id-token: write
|
|
70
|
+
|
|
71
|
+
steps:
|
|
72
|
+
- name: Download distributions
|
|
73
|
+
uses: actions/download-artifact@v6
|
|
74
|
+
with:
|
|
75
|
+
pattern: cibw-*
|
|
76
|
+
path: dist
|
|
77
|
+
merge-multiple: true
|
|
78
|
+
|
|
79
|
+
- name: Publish to PyPI
|
|
80
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
name: Build and publish to TestPyPI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
workflow_dispatch:
|
|
5
|
+
|
|
6
|
+
jobs:
|
|
7
|
+
build-wheels:
|
|
8
|
+
name: Build wheels on ${{ matrix.os }}
|
|
9
|
+
runs-on: ${{ matrix.os }}
|
|
10
|
+
permissions:
|
|
11
|
+
contents: read
|
|
12
|
+
strategy:
|
|
13
|
+
fail-fast: false
|
|
14
|
+
matrix:
|
|
15
|
+
os:
|
|
16
|
+
- ubuntu-latest
|
|
17
|
+
- windows-latest
|
|
18
|
+
- macos-15-intel
|
|
19
|
+
- macos-14
|
|
20
|
+
|
|
21
|
+
steps:
|
|
22
|
+
- name: Check out repository
|
|
23
|
+
uses: actions/checkout@v6
|
|
24
|
+
with:
|
|
25
|
+
persist-credentials: false
|
|
26
|
+
|
|
27
|
+
- name: Build and test wheels
|
|
28
|
+
uses: pypa/cibuildwheel@v4.2.0
|
|
29
|
+
|
|
30
|
+
- name: Store wheels
|
|
31
|
+
uses: actions/upload-artifact@v4
|
|
32
|
+
with:
|
|
33
|
+
name: cibw-wheels-${{ matrix.os }}
|
|
34
|
+
path: wheelhouse/*.whl
|
|
35
|
+
if-no-files-found: error
|
|
36
|
+
|
|
37
|
+
build-sdist:
|
|
38
|
+
name: Build source distribution
|
|
39
|
+
runs-on: ubuntu-latest
|
|
40
|
+
permissions:
|
|
41
|
+
contents: read
|
|
42
|
+
|
|
43
|
+
steps:
|
|
44
|
+
- name: Check out repository
|
|
45
|
+
uses: actions/checkout@v6
|
|
46
|
+
with:
|
|
47
|
+
persist-credentials: false
|
|
48
|
+
|
|
49
|
+
- name: Build source distribution
|
|
50
|
+
run: pipx run build --sdist
|
|
51
|
+
|
|
52
|
+
- name: Store source distribution
|
|
53
|
+
uses: actions/upload-artifact@v4
|
|
54
|
+
with:
|
|
55
|
+
name: cibw-sdist
|
|
56
|
+
path: dist/*.tar.gz
|
|
57
|
+
if-no-files-found: error
|
|
58
|
+
|
|
59
|
+
publish-testpypi:
|
|
60
|
+
name: Publish distributions to TestPyPI
|
|
61
|
+
needs: [build-wheels, build-sdist]
|
|
62
|
+
runs-on: ubuntu-latest
|
|
63
|
+
environment:
|
|
64
|
+
name: testpypi
|
|
65
|
+
url: https://test.pypi.org/project/fastnumparse/
|
|
66
|
+
permissions:
|
|
67
|
+
id-token: write
|
|
68
|
+
|
|
69
|
+
steps:
|
|
70
|
+
- name: Download distributions
|
|
71
|
+
uses: actions/download-artifact@v6
|
|
72
|
+
with:
|
|
73
|
+
pattern: cibw-*
|
|
74
|
+
path: dist
|
|
75
|
+
merge-multiple: true
|
|
76
|
+
|
|
77
|
+
- name: Publish to TestPyPI
|
|
78
|
+
uses: pypa/gh-action-pypi-publish@release/v1
|
|
79
|
+
with:
|
|
80
|
+
repository-url: https://test.pypi.org/legacy/
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
.vscode/*
|
|
2
|
+
.vscode/
|
|
3
|
+
.vs/
|
|
4
|
+
__pycache__/
|
|
5
|
+
*.py[cod]
|
|
6
|
+
.pytest_cache/
|
|
7
|
+
.ruff_cache/
|
|
8
|
+
.mypy_cache/
|
|
9
|
+
.idea/
|
|
10
|
+
.DS_Store
|
|
11
|
+
Thumbs.db
|
|
12
|
+
|
|
13
|
+
# external/*
|
|
14
|
+
|
|
15
|
+
/build/*
|
|
16
|
+
/buildvs/*
|
|
17
|
+
/build2/*
|
|
18
|
+
/build_debug/*
|
|
19
|
+
/build_release/*
|
|
20
|
+
/install/*
|
|
21
|
+
/Testing/*
|
|
22
|
+
/data
|
|
23
|
+
/temp
|
|
24
|
+
|
|
25
|
+
# Python virtual environments and build artifacts
|
|
26
|
+
.venv/
|
|
27
|
+
venv/
|
|
28
|
+
/dist
|
|
29
|
+
/wheelhouse/
|
|
30
|
+
*.egg-info/
|
|
31
|
+
/docs/tmp_*
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
cmake_minimum_required(VERSION 3.15...4.4)
|
|
2
|
+
|
|
3
|
+
set(FASTNUMPARSE_PROJECT_NAME "fastnumparse")
|
|
4
|
+
set(FASTNUMPARSE_PROJECT_VERSION "0.0.1")
|
|
5
|
+
|
|
6
|
+
# scikit-build-core defines these variables when building a Python package.
|
|
7
|
+
# Keep standalone CMake configuration usable for IDEs and local development.
|
|
8
|
+
if(DEFINED SKBUILD_PROJECT_NAME)
|
|
9
|
+
set(FASTNUMPARSE_PROJECT_NAME "${SKBUILD_PROJECT_NAME}")
|
|
10
|
+
endif()
|
|
11
|
+
if(DEFINED SKBUILD_PROJECT_VERSION)
|
|
12
|
+
set(FASTNUMPARSE_PROJECT_VERSION "${SKBUILD_PROJECT_VERSION}")
|
|
13
|
+
endif()
|
|
14
|
+
|
|
15
|
+
project(
|
|
16
|
+
${FASTNUMPARSE_PROJECT_NAME}
|
|
17
|
+
VERSION ${FASTNUMPARSE_PROJECT_VERSION}
|
|
18
|
+
LANGUAGES CXX
|
|
19
|
+
)
|
|
20
|
+
|
|
21
|
+
set(
|
|
22
|
+
FASTNUMPARSE_RUNTIME_OUTPUT_DIRECTORY
|
|
23
|
+
"${CMAKE_BINARY_DIR}/bin/$<CONFIG>"
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
set(PYBIND11_FINDPYTHON ON)
|
|
27
|
+
set(NANOTHREAD_STATIC ON)
|
|
28
|
+
add_subdirectory(dep/fast_float EXCLUDE_FROM_ALL)
|
|
29
|
+
add_subdirectory(dep/nanothread EXCLUDE_FROM_ALL)
|
|
30
|
+
add_subdirectory(dep/pybind11/2.13.6 EXCLUDE_FROM_ALL)
|
|
31
|
+
|
|
32
|
+
add_subdirectory(src/fastnumparse)
|
|
33
|
+
|
|
34
|
+
set(FASTNUMPARSE_BUILD_TESTAPP_DEFAULT ON)
|
|
35
|
+
if(SKBUILD)
|
|
36
|
+
set(FASTNUMPARSE_BUILD_TESTAPP_DEFAULT OFF)
|
|
37
|
+
endif()
|
|
38
|
+
|
|
39
|
+
option(
|
|
40
|
+
FASTNUMPARSE_BUILD_TESTAPP
|
|
41
|
+
"Build the fastnumparse C++ test application"
|
|
42
|
+
${FASTNUMPARSE_BUILD_TESTAPP_DEFAULT}
|
|
43
|
+
)
|
|
44
|
+
|
|
45
|
+
if(FASTNUMPARSE_BUILD_TESTAPP)
|
|
46
|
+
enable_testing()
|
|
47
|
+
add_subdirectory(testapp)
|
|
48
|
+
endif()
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 AndrewChan2022
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: fastnumparse
|
|
3
|
+
Version: 0.0.1
|
|
4
|
+
Summary: Fast number parsing for NumPy, powered by C++.
|
|
5
|
+
Keywords: numpy,number-parsing,parser
|
|
6
|
+
Author: AndrewChan2022
|
|
7
|
+
License-Expression: MIT
|
|
8
|
+
License-File: LICENSE
|
|
9
|
+
Classifier: Development Status :: 3 - Alpha
|
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
|
11
|
+
Classifier: Programming Language :: Python :: 3 :: Only
|
|
12
|
+
Classifier: Programming Language :: C++
|
|
13
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
14
|
+
Classifier: Typing :: Typed
|
|
15
|
+
Project-URL: Homepage, https://github.com/AndrewChan2022/fastnumparse
|
|
16
|
+
Project-URL: Repository, https://github.com/AndrewChan2022/fastnumparse
|
|
17
|
+
Project-URL: Issues, https://github.com/AndrewChan2022/fastnumparse/issues
|
|
18
|
+
Requires-Python: >=3.10
|
|
19
|
+
Requires-Dist: numpy>=1.23
|
|
20
|
+
Provides-Extra: dev
|
|
21
|
+
Requires-Dist: build>=1.2.2; extra == "dev"
|
|
22
|
+
Requires-Dist: cibuildwheel<5,>=4.2; extra == "dev"
|
|
23
|
+
Requires-Dist: mypy>=1.11; extra == "dev"
|
|
24
|
+
Requires-Dist: py7zr<2,>=1.0; extra == "dev"
|
|
25
|
+
Requires-Dist: pytest>=8; extra == "dev"
|
|
26
|
+
Requires-Dist: twine>=6; extra == "dev"
|
|
27
|
+
Description-Content-Type: text/markdown
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
# fastnumparse
|
|
31
|
+
|
|
32
|
+
Fast number parsing for NumPy, powered by C++.
|
|
33
|
+
|
|
34
|
+
> [!NOTE]
|
|
35
|
+
> This project is in its initial scaffolding stage; the public parsing API has
|
|
36
|
+
> not been defined yet.
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
## install
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
pip install fastnumparse
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## usage
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
for csv-like data, with row * col, with sep=" " and comment ="#"
|
|
50
|
+
|
|
51
|
+
```txt
|
|
52
|
+
1.694992566108704e+01 4.373334741592407e+01 1.491762180328369e+02 # comment
|
|
53
|
+
1.875837993621826e+01 4.405829811096191e+01 1.520713310241699e+02
|
|
54
|
+
1.766352510452271e+01 4.732764196395874e+01 1.513219413757324e+02
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
```python
|
|
58
|
+
import fastnumparse as fnp
|
|
59
|
+
|
|
60
|
+
path = "csv_data.txt"
|
|
61
|
+
raw_buffer = open(path, "rb").read()
|
|
62
|
+
values, _ = fnp.from_string_buffer_csv(
|
|
63
|
+
raw_buffer,
|
|
64
|
+
offset=0,
|
|
65
|
+
dtype=np.float64,
|
|
66
|
+
comment="#",
|
|
67
|
+
max_rows = 3,
|
|
68
|
+
column_count=3,
|
|
69
|
+
ndmin=2, # 2: return 2d array, 0~1: return 1d array
|
|
70
|
+
max_threads=16,
|
|
71
|
+
)
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
for noncsv data, each row unkown number count, with sep=" " and comment ="#", and with an end char
|
|
76
|
+
```txt
|
|
77
|
+
15 780721 655221
|
|
78
|
+
955795 127489 609646 896903 101275 343792 898984
|
|
79
|
+
699394 898633 781093 1361969 631076 899312 898945 899053 780575 149987
|
|
80
|
+
}
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
import fastnumparse as fnp
|
|
86
|
+
|
|
87
|
+
path = "noncsv_data.txt"
|
|
88
|
+
raw_buffer = open(path, "rb").read()
|
|
89
|
+
values, _ = fnp.from_string_buffer_noncsv(
|
|
90
|
+
raw_buffer,
|
|
91
|
+
offset=0,
|
|
92
|
+
dtype=np.int64,
|
|
93
|
+
comment="#",
|
|
94
|
+
end_char="}",
|
|
95
|
+
nelement=20,
|
|
96
|
+
max_threads=16,
|
|
97
|
+
)
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
|
|
101
|
+
## Development setup
|
|
102
|
+
|
|
103
|
+
Create and activate a virtual environment, then install the project in editable
|
|
104
|
+
mode with its development dependencies:
|
|
105
|
+
|
|
106
|
+
```console
|
|
107
|
+
python -m pip install -e ".[dev]"
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
This compiles the C++ extension with CMake and pybind11. Run the tests with:
|
|
111
|
+
|
|
112
|
+
```console
|
|
113
|
+
python tools/gendata.py
|
|
114
|
+
python -m pytest
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
`tools/gendata.py` extracts the compressed test and benchmark datasets from
|
|
118
|
+
`assets/` into the ignored `data/` directory. Pass `--force` to replace files
|
|
119
|
+
that have already been extracted.
|
|
120
|
+
|
|
121
|
+
## Build distribution artifacts
|
|
122
|
+
|
|
123
|
+
```console
|
|
124
|
+
python -m build
|
|
125
|
+
python -m twine check dist/*
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## publish to PyPI
|
|
129
|
+
|
|
130
|
+
The source distribution can be uploaded to PyPI directly. Platform wheels must
|
|
131
|
+
be built separately for each supported operating system and Python version;
|
|
132
|
+
`cibuildwheel` is included in the development dependencies for that purpose.
|
|
133
|
+
|
|
134
|
+
See [docs/publish.md](docs/publish.md) for the complete cibuildwheel and
|
|
135
|
+
TestPyPI Trusted Publishing workflow.
|
|
136
|
+
|
|
137
|
+
And here is simple operation
|
|
138
|
+
- on github, click action, then choose the workflow to publish
|
|
139
|
+
- Build and publish to TestPyPI
|
|
140
|
+
- Build and publish to PyPI
|
|
141
|
+
|
|
142
|
+
## limited
|
|
143
|
+
|
|
144
|
+
- comment only support # now
|
|
145
|
+
- delimiter only support space now
|
|
146
|
+
|
|
147
|
+
## Acknowledgements
|
|
148
|
+
|
|
149
|
+
- [nanothread](https://github.com/mitsuba-renderer/nanothread) for light tbb style parallel_for
|
|
150
|
+
- [fast_float](https://github.com/fastfloat/fast_float) for fast string to float
|
|
151
|
+
- [pybind11](https://github.com/pybind/pybind11) for python binding
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
|
|
2
|
+
# fastnumparse
|
|
3
|
+
|
|
4
|
+
Fast number parsing for NumPy, powered by C++.
|
|
5
|
+
|
|
6
|
+
> [!NOTE]
|
|
7
|
+
> This project is in its initial scaffolding stage; the public parsing API has
|
|
8
|
+
> not been defined yet.
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
## install
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
pip install fastnumparse
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## usage
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
for csv-like data, with row * col, with sep=" " and comment ="#"
|
|
22
|
+
|
|
23
|
+
```txt
|
|
24
|
+
1.694992566108704e+01 4.373334741592407e+01 1.491762180328369e+02 # comment
|
|
25
|
+
1.875837993621826e+01 4.405829811096191e+01 1.520713310241699e+02
|
|
26
|
+
1.766352510452271e+01 4.732764196395874e+01 1.513219413757324e+02
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
```python
|
|
30
|
+
import fastnumparse as fnp
|
|
31
|
+
|
|
32
|
+
path = "csv_data.txt"
|
|
33
|
+
raw_buffer = open(path, "rb").read()
|
|
34
|
+
values, _ = fnp.from_string_buffer_csv(
|
|
35
|
+
raw_buffer,
|
|
36
|
+
offset=0,
|
|
37
|
+
dtype=np.float64,
|
|
38
|
+
comment="#",
|
|
39
|
+
max_rows = 3,
|
|
40
|
+
column_count=3,
|
|
41
|
+
ndmin=2, # 2: return 2d array, 0~1: return 1d array
|
|
42
|
+
max_threads=16,
|
|
43
|
+
)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
for noncsv data, each row unkown number count, with sep=" " and comment ="#", and with an end char
|
|
48
|
+
```txt
|
|
49
|
+
15 780721 655221
|
|
50
|
+
955795 127489 609646 896903 101275 343792 898984
|
|
51
|
+
699394 898633 781093 1361969 631076 899312 898945 899053 780575 149987
|
|
52
|
+
}
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
```python
|
|
57
|
+
import fastnumparse as fnp
|
|
58
|
+
|
|
59
|
+
path = "noncsv_data.txt"
|
|
60
|
+
raw_buffer = open(path, "rb").read()
|
|
61
|
+
values, _ = fnp.from_string_buffer_noncsv(
|
|
62
|
+
raw_buffer,
|
|
63
|
+
offset=0,
|
|
64
|
+
dtype=np.int64,
|
|
65
|
+
comment="#",
|
|
66
|
+
end_char="}",
|
|
67
|
+
nelement=20,
|
|
68
|
+
max_threads=16,
|
|
69
|
+
)
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
## Development setup
|
|
74
|
+
|
|
75
|
+
Create and activate a virtual environment, then install the project in editable
|
|
76
|
+
mode with its development dependencies:
|
|
77
|
+
|
|
78
|
+
```console
|
|
79
|
+
python -m pip install -e ".[dev]"
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
This compiles the C++ extension with CMake and pybind11. Run the tests with:
|
|
83
|
+
|
|
84
|
+
```console
|
|
85
|
+
python tools/gendata.py
|
|
86
|
+
python -m pytest
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
`tools/gendata.py` extracts the compressed test and benchmark datasets from
|
|
90
|
+
`assets/` into the ignored `data/` directory. Pass `--force` to replace files
|
|
91
|
+
that have already been extracted.
|
|
92
|
+
|
|
93
|
+
## Build distribution artifacts
|
|
94
|
+
|
|
95
|
+
```console
|
|
96
|
+
python -m build
|
|
97
|
+
python -m twine check dist/*
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
## publish to PyPI
|
|
101
|
+
|
|
102
|
+
The source distribution can be uploaded to PyPI directly. Platform wheels must
|
|
103
|
+
be built separately for each supported operating system and Python version;
|
|
104
|
+
`cibuildwheel` is included in the development dependencies for that purpose.
|
|
105
|
+
|
|
106
|
+
See [docs/publish.md](docs/publish.md) for the complete cibuildwheel and
|
|
107
|
+
TestPyPI Trusted Publishing workflow.
|
|
108
|
+
|
|
109
|
+
And here is simple operation
|
|
110
|
+
- on github, click action, then choose the workflow to publish
|
|
111
|
+
- Build and publish to TestPyPI
|
|
112
|
+
- Build and publish to PyPI
|
|
113
|
+
|
|
114
|
+
## limited
|
|
115
|
+
|
|
116
|
+
- comment only support # now
|
|
117
|
+
- delimiter only support space now
|
|
118
|
+
|
|
119
|
+
## Acknowledgements
|
|
120
|
+
|
|
121
|
+
- [nanothread](https://github.com/mitsuba-renderer/nanothread) for light tbb style parallel_for
|
|
122
|
+
- [fast_float](https://github.com/fastfloat/fast_float) for fast string to float
|
|
123
|
+
- [pybind11](https://github.com/pybind/pybind11) for python binding
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|