scientific-computing-system 2.2.13__tar.gz → 2.2.14__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.
- scientific_computing_system-2.2.14/.github/workflows/dependency-review.yml +19 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/pypi-release-policy.yml +28 -4
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/release.yml +4 -1
- scientific_computing_system-2.2.14/.github/workflows/scorecard.yml +37 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/tests.yml +3 -1
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/CHANGELOG.md +10 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/CITATION.cff +2 -2
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/PKG-INFO +9 -9
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/README.md +8 -8
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/SECURITY.md +2 -2
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/codemeta.json +1 -1
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/package.json +1 -1
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/pyproject.toml +1 -1
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/_version.py +2 -2
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/diffeq/solvers.py +15 -4
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/math_utils/linalg.py +3 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/optimization/minimize.py +8 -1
- scientific_computing_system-2.2.14/tests/test_hardening_20261023.py +40 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_release_contract.py +19 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/benchmarks.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/bot-reviewer.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/changelog.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/cli-package-smoke.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/codeql.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/npm-publish.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.github/workflows/pr-automation.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/.gitignore +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/CONTRIBUTING.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/LICENSE +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/benchmarks/results.json +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/benchmarks/robust_runner.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/benchmarks/run_benchmarks.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/bin/scs.js +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/dashboard/app.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/ARCHITECTURE.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/CASE_STUDY_HUBBLE.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/CASE_STUDY_QUANTUM_ML.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/api.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/assets/icon.svg +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/assets/logo.svg +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/benchmarks.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/checks/verify_provenance_claims.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/cookbook.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/getting-started.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/index.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/maintenance.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/ml_reference.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/related.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/research-workflows.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/stylesheets/extra.css +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tour_of_numerical_methods.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/core_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/data_analysis_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/diffeq_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/fft2_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/graph_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/hypothesis_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/hypothesis_tests_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/hypothesis_with_stats_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/knowledge_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/linalg_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/math_utils_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/ml_advanced_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/ml_and_viz_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/ml_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/modeling_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/montecarlo_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/nlp_attention_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/nlp_bpe_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/nlp_mini_gpt_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/nlp_viz.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/numerical_integration_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/optimization_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/pandas_io_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/pca_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/probability_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/quantum_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/quick_start.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/scientific_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/signals_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/stats_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/stiff_ode_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/time_series_demo.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/why-pure-python.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/core_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/data_analysis_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/diffeq_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/discovery_pipeline_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/ensemble_showcase.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/fft2_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/graph_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/hypothesis_custom_generator.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/hypothesis_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/hypothesis_tests_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/hypothesis_with_stats_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/interpolate_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/knowledge_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/linalg_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/math_utils_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/ml_and_viz_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/modeling_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/montecarlo_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/nlp_attention_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/nlp_bpe_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/nlp_mini_gpt_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/nlp_viz_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/numerical_integration_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/optimization_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/pca_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/pde_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/plot_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/plotting_notebook.ipynb +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/probability_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/quantum_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/scientific_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/signals_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/stats_demo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/examples/tour_of_numerical_methods.ipynb +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/index.js +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/mkdocs.yml +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/npm.test.js +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/paper.bib +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/paper.md +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/requirements-build.lock +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/requirements-dev.lock +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/requirements.lock +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/check_release_toolchain.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/check_version_discipline.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/check_version_lockstep.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/publish.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/verify_cli_install.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/verify_cookbook.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/verify_ml_reference.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/scripts/verify_release_integrity.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/__main__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/_paths.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/bayes/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/bayes/conjugate.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/causal.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/cli/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/cli/__main__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/cli/_exit_codes.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/cli/_handlers.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/cli/_parser.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/cli/_style.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/cli/_system_info.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/core/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/core/_numeric.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/core/models.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_analysis/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_analysis/dataset.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_analysis/loader.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_analysis/pandas_io.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_analysis/transform.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_analysis/viz.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_io/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_io/scientific.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/data_io/streaming.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/diffeq/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/diffeq/_implicit.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/diffeq/symplectic.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/fractals/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/fractals/sets.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/genetics/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/genetics/sequence.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/graph/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/graph/algorithms.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/hypothesis/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/hypothesis/evaluator.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/hypothesis/generator.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/hypothesis/mining.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/infotheory/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/infotheory/measures.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/interpolate/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/knowledge/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/knowledge/graph.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/knowledge/notes.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/knowledge/retrieval.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/math_utils/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/math_utils/calculus.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/math_utils/special.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/math_utils/svd.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/boosting.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/clustering.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/decomposition.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/ensemble.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/linear_models.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/metrics.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/model_selection.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/naive_bayes.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/neighbors.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/neural.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/preprocessing.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/tree.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/ml/voting.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/modeling/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/modeling/_base.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/modeling/_nodes.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/modeling/expression.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/modeling/fitting.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/modeling/model.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/modeling/solver.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/montecarlo/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/montecarlo/markov.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/montecarlo/methods.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/attention.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/autograd/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/autograd/_grad.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/autograd/ops.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/autograd/tensor.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/bpe.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/data.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/embed.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/layers.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/model.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/optim.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/training.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/nlp/viz.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/numerical_integration/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/numerical_integration/quadrature.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/optimization/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/optimization/_metaheuristics.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/optimization/constrained.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/pde/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/plot/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/plot/_backend.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/plot/charts.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/probability/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/probability/_advanced.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/probability/distributions.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/probability/extra_distributions.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/provenance/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/provenance/manifest.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/py.typed +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/quantum/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/quantum/circuit.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/quantum/multi_qubit.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/quantum/simulator.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/scientific/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/scientific/constants.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/scientific/formulas.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/sensitivity.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/signals/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/signals/filters.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/signals/processing.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/signals/stft.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/signals/wavelet.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/_distributions.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/bootstrap.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/descriptive.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/hypothesis_tests.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/multiple_testing.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/nonparametric.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/power.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/regression.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/stats/time_series.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/tools/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/tools/adapters.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/tools/registry.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/uncertainty/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/uncertainty/propagation.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/units/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/units/core.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/validation/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/validation/adequacy.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/validation/checks.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/validation/drift.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/validation/report.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/wavelets/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/wavelets/haar.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/workflow/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/workflow/engine.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/workflow/gates.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/workflow/orchestrator.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/workflow/selection.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/workflow/tooling.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/workflow/types.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/__init__.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/conftest.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_advanced_fitting.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_completion_coverage.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_guard_coverage.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_hardening.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_hardening_c1.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_hardening_c2.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_hardening_c3.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_hardening_c4.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_hardening_coverage.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_audit_hardening_h1.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_bayes_v2.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_benchmarks.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_bootstrap.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_causal.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_cli.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_cli_color.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_cli_exit_codes.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_cli_extended.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_cli_system_info.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_codemeta_version_lockstep.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_constrained_opt.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_core.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_data_analysis.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_data_analysis_lazy_bridge.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_data_analysis_pandas_io.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_data_io.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_data_io_optional_backends.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_data_io_scientific.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_dataset.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_dev_numpy_pin_contract.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_diffeq.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_diffeq_implicit.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_domain_validation.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_edge_misc_numerical.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_edge_ml_quantum_linalg.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_edge_nlp.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_edge_quantum_evaluator_cli.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_edge_stats_optimization_signals.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_extra_distributions.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_fft2.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_fitting_bootstrap.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_fractals.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_genetics.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_graph.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_hardening_privacy_provenance.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_hypothesis.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_hypothesis_engine.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_hypothesis_mining.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_hypothesis_tests.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_infotheory.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_interpolate.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_knowledge.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_layering.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_linalg_extended.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_linalg_qr_cholesky.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_markov.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_math_utils.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_boosting.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_clustering.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_ensemble.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_knn.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_linreg.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_logreg.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_metrics.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_model_selection.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_naive_bayes.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_pca.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_preprocessing.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_tree.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_viz.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_ml_voting.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_modeling.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_modeling_fit_validation.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_montecarlo.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_multi_qubit.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_attention.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_autograd.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_bpe.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_embed.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_layers.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_model.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_training.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_nlp_viz.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_numerical_integration.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_numerical_invariants.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_numerical_oracles.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_optimization.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_optimization_metaheuristics.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_path_confinement.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_pde.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_plot_charts.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_plot_lazy.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_power.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_probability.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_probability_advanced.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_property_invariants.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_protocol_placeholders.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_provenance.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_provenance_audit_hardening.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_provenance_claims.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_public_api.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_quantum.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_readme_badges.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_readme_surface.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_release_toolchain.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_retrieval.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_runtime_dependency_graph.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_scientific.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_seed_hygiene.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_selection_audit_hardening.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_sensitivity.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_sensitivity_global.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_signals.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_signals_filters.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_special_invariants.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_special_numerics.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_statistical_audit.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_stats.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_stats_audit_coverage.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_stats_multiple_testing.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_stats_nonparametric.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_stats_time_series.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_stft.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_streaming_analytics.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_svd.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_symplectic.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_tool_adapters.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_tools_registry.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_uncertainty.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_units.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_adequacy.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_advanced.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_bounds_nonfinite_regression.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_derived_moments_overflow.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_derived_tolerance_overflow.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_drift.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_nonfinite_thresholds_regression.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_validation_ood_stable_and_coverage.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_verify_release_integrity.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_wavelet.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_wavelets_v2.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_workflow.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_workflow_gates.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_workflow_orchestrator.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_workflow_orchestrator_blocked_review.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_workflow_selection.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_workflow_selection_coverage.py +0 -0
- {scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/tests/test_workflow_tooling.py +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
name: Dependency review
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
pull_request:
|
|
5
|
+
branches: [main]
|
|
6
|
+
|
|
7
|
+
permissions:
|
|
8
|
+
contents: read
|
|
9
|
+
pull-requests: write
|
|
10
|
+
|
|
11
|
+
jobs:
|
|
12
|
+
dependency-review:
|
|
13
|
+
runs-on: ubuntu-latest
|
|
14
|
+
steps:
|
|
15
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
16
|
+
- uses: actions/dependency-review-action@a1d282b36b6f3519aa1f3fc636f609c47dddb294 # v5.0.0
|
|
17
|
+
with:
|
|
18
|
+
fail-on-severity: high
|
|
19
|
+
comment-summary-in-pr: on-failure
|
|
@@ -64,18 +64,41 @@ jobs:
|
|
|
64
64
|
echo "version=$version" >> "$GITHUB_OUTPUT"
|
|
65
65
|
echo "tag=v$version" >> "$GITHUB_OUTPUT"
|
|
66
66
|
|
|
67
|
+
# The policy check also runs on a push that touches the release
|
|
68
|
+
# workflow, which can land before the version has been released (the
|
|
69
|
+
# 2.2.13 merge did exactly that). A missing release is not a policy
|
|
70
|
+
# violation: there is nothing to check yet, and the workflow_run trigger
|
|
71
|
+
# re-runs this job after the Release workflow creates it.
|
|
72
|
+
- name: Resolve matching GitHub Release
|
|
73
|
+
id: release_state
|
|
74
|
+
env:
|
|
75
|
+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
76
|
+
RELEASE_TAG: ${{ steps.release.outputs.tag }}
|
|
77
|
+
shell: bash
|
|
78
|
+
run: |
|
|
79
|
+
set -euo pipefail
|
|
80
|
+
if release_id="$(gh api "repos/$GITHUB_REPOSITORY/releases/tags/$RELEASE_TAG" --jq '.id' 2>&1)"; then
|
|
81
|
+
echo "exists=true" >> "$GITHUB_OUTPUT"
|
|
82
|
+
echo "release_id=$release_id" >> "$GITHUB_OUTPUT"
|
|
83
|
+
elif grep -q "HTTP 404" <<<"$release_id"; then
|
|
84
|
+
echo "exists=false" >> "$GITHUB_OUTPUT"
|
|
85
|
+
echo "GitHub Release $RELEASE_TAG does not exist yet; nothing to enforce."
|
|
86
|
+
else
|
|
87
|
+
echo "::error::Could not resolve GitHub Release $RELEASE_TAG: $release_id"
|
|
88
|
+
exit 1
|
|
89
|
+
fi
|
|
90
|
+
|
|
67
91
|
- name: Remove forbidden wheel and sdist assets from matching GitHub Release
|
|
92
|
+
if: steps.release_state.outputs.exists == 'true'
|
|
68
93
|
env:
|
|
69
94
|
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
70
95
|
RELEASE_TAG: ${{ steps.release.outputs.tag }}
|
|
96
|
+
RELEASE_ID: ${{ steps.release_state.outputs.release_id }}
|
|
71
97
|
shell: bash
|
|
72
98
|
run: |
|
|
73
99
|
set -euo pipefail
|
|
74
|
-
release_id="$(
|
|
75
|
-
gh api "repos/$GITHUB_REPOSITORY/releases/tags/$RELEASE_TAG" --jq '.id'
|
|
76
|
-
)"
|
|
77
100
|
asset_ids="$(
|
|
78
|
-
gh api --paginate "repos/$GITHUB_REPOSITORY/releases/$
|
|
101
|
+
gh api --paginate "repos/$GITHUB_REPOSITORY/releases/$RELEASE_ID/assets" \
|
|
79
102
|
--jq '.[] | select((.name | endswith(".whl")) or (.name | endswith(".tar.gz"))) | .id'
|
|
80
103
|
)"
|
|
81
104
|
if [ -z "$asset_ids" ]; then
|
|
@@ -88,6 +111,7 @@ jobs:
|
|
|
88
111
|
fi
|
|
89
112
|
|
|
90
113
|
- name: Verify public PyPI and asset-free GitHub Release policy
|
|
114
|
+
if: steps.release_state.outputs.exists == 'true'
|
|
91
115
|
env:
|
|
92
116
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
93
117
|
RELEASE_VERSION: ${{ steps.release.outputs.version }}
|
|
@@ -167,7 +167,10 @@ jobs:
|
|
|
167
167
|
previous_tag="$tag"
|
|
168
168
|
break
|
|
169
169
|
fi
|
|
170
|
-
|
|
170
|
+
# Sort by version, not tag creation date: tags backfilled for older
|
|
171
|
+
# versions are created later, so -creatordate would pick e.g. v2.2.6
|
|
172
|
+
# as the base for v2.2.13 and weaken the version-discipline diff.
|
|
173
|
+
done < <(git tag --merged HEAD --sort=-v:refname --list 'v*')
|
|
171
174
|
if [ -n "$previous_tag" ]; then
|
|
172
175
|
base="$(git rev-list -n 1 "$previous_tag")"
|
|
173
176
|
echo "Previous release: $previous_tag ($base)"
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
name: OpenSSF Scorecard
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
branch_protection_rule:
|
|
5
|
+
schedule:
|
|
6
|
+
- cron: "30 1 * * 6"
|
|
7
|
+
push:
|
|
8
|
+
branches: [main]
|
|
9
|
+
|
|
10
|
+
permissions: read-all
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
analysis:
|
|
14
|
+
name: Scorecard analysis
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
permissions:
|
|
17
|
+
security-events: write
|
|
18
|
+
id-token: write
|
|
19
|
+
contents: read
|
|
20
|
+
actions: read
|
|
21
|
+
steps:
|
|
22
|
+
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
23
|
+
with:
|
|
24
|
+
persist-credentials: false
|
|
25
|
+
- uses: ossf/scorecard-action@fa7117db83c52d787ae5a89f350999701505d78e # v2.5.0
|
|
26
|
+
with:
|
|
27
|
+
results_file: results.sarif
|
|
28
|
+
results_format: sarif
|
|
29
|
+
publish_results: true
|
|
30
|
+
- uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
|
|
31
|
+
with:
|
|
32
|
+
name: scorecard-sarif
|
|
33
|
+
path: results.sarif
|
|
34
|
+
retention-days: 5
|
|
35
|
+
- uses: github/codeql-action/upload-sarif@24c54180a607b1449ed407dd24f251e4e9147c8d # v4.38.3
|
|
36
|
+
with:
|
|
37
|
+
sarif_file: results.sarif
|
|
@@ -13,7 +13,9 @@ on:
|
|
|
13
13
|
- 'CONTRIBUTING.md'
|
|
14
14
|
- 'LICENSE'
|
|
15
15
|
- 'SECURITY.md'
|
|
16
|
-
|
|
16
|
+
# No 'docs/**' here: deploy-docs runs inside this workflow on main
|
|
17
|
+
# pushes, so ignoring docs-only pushes meant documentation changes
|
|
18
|
+
# merged to main were never deployed.
|
|
17
19
|
pull_request:
|
|
18
20
|
branches: [main]
|
|
19
21
|
|
|
@@ -19,6 +19,16 @@ a git tag in this repository or on `origin` (checked with `git ls-remote --tags`
|
|
|
19
19
|
Any retroactive `v2.2.6` or `v2.2.7` tag should point at those commits. This note records
|
|
20
20
|
what the history supports; it does not claim that a tag exists.
|
|
21
21
|
|
|
22
|
+
## [v2.2.14] - 2026-10-23
|
|
23
|
+
|
|
24
|
+
### Input validation and supply-chain transparency
|
|
25
|
+
|
|
26
|
+
- Reject non-square and non-rectangular matrices in `determinant` with a normalised `ValueError` instead of leaking an index error from the elimination loop.
|
|
27
|
+
- Report a vanishing Newton gradient as `converged=False` instead of silently returning success.
|
|
28
|
+
- Require every ODE right-hand-side derivative to match the initial-state length, and report the expected and actual lengths instead of letting an implicit broadcast hide the bug.
|
|
29
|
+
- Add Dependabot, OpenSSF Scorecard and dependency review workflows with SHA-pinned actions, and add a citation file so tooling can resolve package metadata.
|
|
30
|
+
- Bump synchronized package metadata to 2.2.14 as required by the version-discipline gate for `src/cds/` changes.
|
|
31
|
+
|
|
22
32
|
## [v2.2.13] - 2026-10-21
|
|
23
33
|
|
|
24
34
|
### Release packaging, CI and documentation accuracy
|
|
@@ -5,7 +5,7 @@ title: "scientific-computing-system"
|
|
|
5
5
|
# Keep `version` in lockstep with pyproject.toml [project].version and
|
|
6
6
|
# src/cds/_version.py. scripts/check_version_discipline.py and
|
|
7
7
|
# scripts/check_version_lockstep.py enforce this.
|
|
8
|
-
version: 2.2.
|
|
8
|
+
version: 2.2.14
|
|
9
9
|
authors:
|
|
10
10
|
- name: "Furox-Art"
|
|
11
11
|
email: "furkanarkn1451@gmail.com"
|
|
@@ -50,5 +50,5 @@ preferred-citation:
|
|
|
50
50
|
authors:
|
|
51
51
|
- name: "Furox-Art"
|
|
52
52
|
year: 2026
|
|
53
|
-
version: 2.2.
|
|
53
|
+
version: 2.2.14
|
|
54
54
|
url: "https://github.com/Furox-Art/scientific-computing-system"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: scientific-computing-system
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.14
|
|
4
4
|
Summary: A pure-Python computational science platform for numerical methods, modeling, validation, uncertainty, scientific workflows, dimensional analysis, and optional research-data backends. Zero runtime dependencies.
|
|
5
5
|
Project-URL: Homepage, https://github.com/Furox-Art/scientific-computing-system
|
|
6
6
|
Project-URL: Repository, https://github.com/Furox-Art/scientific-computing-system
|
|
@@ -145,21 +145,21 @@ The import name is **`cds`** (the distribution is `scientific-computing-system`)
|
|
|
145
145
|
| **PyPI** (the library) | `pip install scientific-computing-system` | The actual Python package. Zero runtime dependencies. This is what you want. |
|
|
146
146
|
| **npm** (a launcher shim) | `npm i -g scientific-computing-system` | A thin Node wrapper that runs `python -m cds`. It ships no Python and needs the Python distribution installed so that `python -m cds` resolves. |
|
|
147
147
|
|
|
148
|
-
At the time of writing (2026-10-22), both registries' latest versions are 2.2.
|
|
148
|
+
At the time of writing (2026-10-22), both registries' latest versions are 2.2.13,
|
|
149
149
|
but they are not published in lockstep and are **not** equally verifiable:
|
|
150
150
|
|
|
151
151
|
- **PyPI** — carries a **PEP 740 provenance attestation** (Sigstore-signed,
|
|
152
152
|
binding the file digest to the publishing workflow). Verified on 2.2.3,
|
|
153
|
-
2.2.4, 2.2.5, 2.2.6, 2.2.8, 2.2.11 and 2.2.
|
|
154
|
-
return 404 from the per-file provenance endpoint, so "every release
|
|
155
|
-
attestations were enabled" would be false.
|
|
153
|
+
2.2.4, 2.2.5, 2.2.6, 2.2.8, 2.2.11, 2.2.12 and 2.2.13. The 2.2.7 wheel and
|
|
154
|
+
sdist return 404 from the per-file provenance endpoint, so "every release
|
|
155
|
+
since attestations were enabled" would be false.
|
|
156
156
|
- **npm** — carries a **Sigstore attestation as of 2.2.3**, minted by npm's
|
|
157
157
|
OIDC trusted publisher (the registry serves both an npm publish attestation
|
|
158
158
|
and a SLSA provenance v1 bundle for that tarball). 1.0.0 through 2.2.2
|
|
159
159
|
predate the publisher registration and have none, so pin 2.2.3 or newer. npm
|
|
160
160
|
has no 2.2.7, 2.2.8 or 2.2.11 at all: its 2.2.x line is 2.2.0 through 2.2.6
|
|
161
|
-
plus 2.2.12, which is how the latest versions can match while the
|
|
162
|
-
do not. npm also exposes `dist.integrity` (sha512), which is a content pin,
|
|
161
|
+
plus 2.2.12 and 2.2.13, which is how the latest versions can match while the
|
|
162
|
+
histories do not. npm also exposes `dist.integrity` (sha512), which is a content pin,
|
|
163
163
|
not proof of origin, and `dist.signatures`, which is npm's registry transport
|
|
164
164
|
signature, not build provenance.
|
|
165
165
|
|
|
@@ -211,7 +211,7 @@ The authoritative per-module list is the [API reference](https://furox-art.githu
|
|
|
211
211
|
|
|
212
212
|
### Runnable examples and the dashboard
|
|
213
213
|
|
|
214
|
-
- **[`examples/`](examples/)** —
|
|
214
|
+
- **[`examples/`](examples/)** — 34 runnable scripts and notebooks (32 `.py`, 2
|
|
215
215
|
`.ipynb`), each self-contained and dependency-free unless noted. Every tutorial
|
|
216
216
|
page in the docs has a matching example.
|
|
217
217
|
- **[`dashboard/app.py`](dashboard/app.py)** — a Streamlit dashboard:
|
|
@@ -277,7 +277,7 @@ The package installs a `cds` command with 13 subcommands:
|
|
|
277
277
|
|
|
278
278
|
```console
|
|
279
279
|
$ cds --version
|
|
280
|
-
System version 2.2.
|
|
280
|
+
System version 2.2.14
|
|
281
281
|
$ cds constants # physical constants table
|
|
282
282
|
```
|
|
283
283
|
|
|
@@ -49,21 +49,21 @@ The import name is **`cds`** (the distribution is `scientific-computing-system`)
|
|
|
49
49
|
| **PyPI** (the library) | `pip install scientific-computing-system` | The actual Python package. Zero runtime dependencies. This is what you want. |
|
|
50
50
|
| **npm** (a launcher shim) | `npm i -g scientific-computing-system` | A thin Node wrapper that runs `python -m cds`. It ships no Python and needs the Python distribution installed so that `python -m cds` resolves. |
|
|
51
51
|
|
|
52
|
-
At the time of writing (2026-10-22), both registries' latest versions are 2.2.
|
|
52
|
+
At the time of writing (2026-10-22), both registries' latest versions are 2.2.13,
|
|
53
53
|
but they are not published in lockstep and are **not** equally verifiable:
|
|
54
54
|
|
|
55
55
|
- **PyPI** — carries a **PEP 740 provenance attestation** (Sigstore-signed,
|
|
56
56
|
binding the file digest to the publishing workflow). Verified on 2.2.3,
|
|
57
|
-
2.2.4, 2.2.5, 2.2.6, 2.2.8, 2.2.11 and 2.2.
|
|
58
|
-
return 404 from the per-file provenance endpoint, so "every release
|
|
59
|
-
attestations were enabled" would be false.
|
|
57
|
+
2.2.4, 2.2.5, 2.2.6, 2.2.8, 2.2.11, 2.2.12 and 2.2.13. The 2.2.7 wheel and
|
|
58
|
+
sdist return 404 from the per-file provenance endpoint, so "every release
|
|
59
|
+
since attestations were enabled" would be false.
|
|
60
60
|
- **npm** — carries a **Sigstore attestation as of 2.2.3**, minted by npm's
|
|
61
61
|
OIDC trusted publisher (the registry serves both an npm publish attestation
|
|
62
62
|
and a SLSA provenance v1 bundle for that tarball). 1.0.0 through 2.2.2
|
|
63
63
|
predate the publisher registration and have none, so pin 2.2.3 or newer. npm
|
|
64
64
|
has no 2.2.7, 2.2.8 or 2.2.11 at all: its 2.2.x line is 2.2.0 through 2.2.6
|
|
65
|
-
plus 2.2.12, which is how the latest versions can match while the
|
|
66
|
-
do not. npm also exposes `dist.integrity` (sha512), which is a content pin,
|
|
65
|
+
plus 2.2.12 and 2.2.13, which is how the latest versions can match while the
|
|
66
|
+
histories do not. npm also exposes `dist.integrity` (sha512), which is a content pin,
|
|
67
67
|
not proof of origin, and `dist.signatures`, which is npm's registry transport
|
|
68
68
|
signature, not build provenance.
|
|
69
69
|
|
|
@@ -115,7 +115,7 @@ The authoritative per-module list is the [API reference](https://furox-art.githu
|
|
|
115
115
|
|
|
116
116
|
### Runnable examples and the dashboard
|
|
117
117
|
|
|
118
|
-
- **[`examples/`](examples/)** —
|
|
118
|
+
- **[`examples/`](examples/)** — 34 runnable scripts and notebooks (32 `.py`, 2
|
|
119
119
|
`.ipynb`), each self-contained and dependency-free unless noted. Every tutorial
|
|
120
120
|
page in the docs has a matching example.
|
|
121
121
|
- **[`dashboard/app.py`](dashboard/app.py)** — a Streamlit dashboard:
|
|
@@ -181,7 +181,7 @@ The package installs a `cds` command with 13 subcommands:
|
|
|
181
181
|
|
|
182
182
|
```console
|
|
183
183
|
$ cds --version
|
|
184
|
-
System version 2.2.
|
|
184
|
+
System version 2.2.14
|
|
185
185
|
$ cds constants # physical constants table
|
|
186
186
|
```
|
|
187
187
|
|
|
@@ -128,7 +128,7 @@ repository's publish workflows mints an attestation on each channel:
|
|
|
128
128
|
- **PyPI** — Trusted Publisher: owner `Furox-Art`, repository
|
|
129
129
|
`scientific-computing-system`, workflow `release.yml`, environment `pypi`.
|
|
130
130
|
Exercised since 2.2.1. The per-file provenance endpoint returned 200 for the
|
|
131
|
-
published files of 2.2.1–2.2.6, 2.2.8, 2.2.11 and 2.2.
|
|
131
|
+
published files of 2.2.1–2.2.6, 2.2.8, 2.2.11, 2.2.12 and 2.2.13 on 2026-10-22;
|
|
132
132
|
2.2.7 returns 404 for both its wheel and sdist.
|
|
133
133
|
- **npm** — Trusted Publisher: owner `Furox-Art`, repository
|
|
134
134
|
`scientific-computing-system`, workflow `npm-publish.yml`, environment `npm`.
|
|
@@ -191,7 +191,7 @@ In particular, `sympy_verify_identity()` passes caller-provided symbolic strings
|
|
|
191
191
|
|
|
192
192
|
1. **Pin the package version** in reproducible environments, for example `pip install "scientific-computing-system==X.Y.Z"` with the exact release you have evaluated, rather than an unconstrained range. Deliberately no concrete version is written here: a pinned example goes stale at the next release and readers copy it regardless, so take the number from the [release notes](https://github.com/Furox-Art/scientific-computing-system/releases) for the release you are deploying, and record it in your own lockfile or constraints file.
|
|
193
193
|
2. **Install only the optional extras you need.** Fewer third-party packages reduce supply-chain and compatibility surface.
|
|
194
|
-
3. **Verify provenance for high-assurance use.** For PyPI, fetch the PEP 740 bundle from `/integrity/<project>/<version>/<filename>/provenance` and confirm its `subject` digest equals the `sha256` PyPI publishes for that file.
|
|
194
|
+
3. **Verify provenance for high-assurance use.** For PyPI, fetch the PEP 740 bundle from `/integrity/<project>/<version>/<filename>/provenance` and confirm its `subject` digest equals the `sha256` PyPI publishes for that file. npm publishes are attested from `2.2.3` onward; for versions without an attestation, `dist.integrity` is an integrity pin, not provenance. See [Distribution channels and provenance](#distribution-channels-and-provenance).
|
|
195
195
|
4. **Treat optional backend inputs as backend inputs.** Do not pass hostile symbolic expressions or untrusted scientific files without the validation/sandboxing appropriate to SymPy, HDF5, NetCDF, or the relevant backend.
|
|
196
196
|
5. **Keep the environment current.** Review dependency updates and run vulnerability auditing against the exact environment deployed.
|
|
197
197
|
6. **Do not use the library as the sole validation layer for safety-critical conclusions.** Independent domain validation remains necessary.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"@context": "https://doi.org/10.5063/schema/codemeta-2.0",
|
|
3
3
|
"@type": "SoftwareSourceCode",
|
|
4
4
|
"name": "scientific-computing-system",
|
|
5
|
-
"version": "2.2.
|
|
5
|
+
"version": "2.2.14",
|
|
6
6
|
"description": "Pure-Python computational science platform for numerical methods, modeling, validation, uncertainty, and scientific workflows. Zero runtime dependencies. This is the front door; scientific-computing-system-2.0 is the NumPy build of the same work.",
|
|
7
7
|
"license": "https://spdx.org/licenses/MIT",
|
|
8
8
|
"codeRepository": "https://github.com/Furox-Art/scientific-computing-system",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "scientific-computing-system",
|
|
3
|
-
"version": "2.2.
|
|
3
|
+
"version": "2.2.14",
|
|
4
4
|
"description": "Scientific Computing System launcher - a thin Node wrapper that forwards to the pure-Python `cds` CLI. This npm package ships NO Python code: it requires the Python distribution to be installed (`pip install scientific-computing-system`), otherwise `scs` exits non-zero with an actionable message.",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"bin": {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
# Distribution name. Formerly published as "cognitive-discovery-system";
|
|
3
3
|
# the import name stays `cds`. Keep the old PyPI project alive as an alias.
|
|
4
4
|
name = "scientific-computing-system"
|
|
5
|
-
version = "2.2.
|
|
5
|
+
version = "2.2.14"
|
|
6
6
|
description = "A pure-Python computational science platform for numerical methods, modeling, validation, uncertainty, scientific workflows, dimensional analysis, and optional research-data backends. Zero runtime dependencies."
|
|
7
7
|
readme = "README.md"
|
|
8
8
|
license = "MIT"
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/_version.py
RENAMED
|
@@ -5,5 +5,5 @@ from __future__ import annotations
|
|
|
5
5
|
|
|
6
6
|
__all__ = ["__version__", "version", "__version_tuple__", "version_tuple"]
|
|
7
7
|
|
|
8
|
-
__version__ = version = "2.2.
|
|
9
|
-
__version_tuple__ = version_tuple = (2, 2,
|
|
8
|
+
__version__ = version = "2.2.14"
|
|
9
|
+
__version_tuple__ = version_tuple = (2, 2, 14)
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/src/cds/diffeq/solvers.py
RENAMED
|
@@ -267,6 +267,17 @@ def rk45(
|
|
|
267
267
|
return ODESolution(t=t_vals, y=y_vals, method="rk45", steps=steps)
|
|
268
268
|
|
|
269
269
|
|
|
270
|
+
def _checked_derivative(
|
|
271
|
+
f: Callable[[float, list[float]], list[float]], t: float, y: list[float], n: int
|
|
272
|
+
) -> list[float]:
|
|
273
|
+
dy = f(t, y)
|
|
274
|
+
if len(dy) != n:
|
|
275
|
+
raise ValueError(
|
|
276
|
+
f"ODE right-hand side returned {len(dy)} derivative(s) for a state of length {n}"
|
|
277
|
+
)
|
|
278
|
+
return dy
|
|
279
|
+
|
|
280
|
+
|
|
270
281
|
def solve_system(
|
|
271
282
|
f: Callable[[float, list[float]], list[float]],
|
|
272
283
|
t0: float,
|
|
@@ -296,13 +307,13 @@ def solve_system(
|
|
|
296
307
|
while (t_end - t) * direction > LOOP_EPSILON:
|
|
297
308
|
h = direction * min(dt, abs(t_end - t))
|
|
298
309
|
|
|
299
|
-
k1 = f
|
|
310
|
+
k1 = _checked_derivative(f, t, y, n)
|
|
300
311
|
y_tmp = [y[i] + h * k1[i] / 2 for i in range(n)]
|
|
301
|
-
k2 = f
|
|
312
|
+
k2 = _checked_derivative(f, t + h / 2, y_tmp, n)
|
|
302
313
|
y_tmp = [y[i] + h * k2[i] / 2 for i in range(n)]
|
|
303
|
-
k3 = f
|
|
314
|
+
k3 = _checked_derivative(f, t + h / 2, y_tmp, n)
|
|
304
315
|
y_tmp = [y[i] + h * k3[i] for i in range(n)]
|
|
305
|
-
k4 = f
|
|
316
|
+
k4 = _checked_derivative(f, t + h, y_tmp, n)
|
|
306
317
|
|
|
307
318
|
y = [y[i] + (h / 6) * (k1[i] + 2 * k2[i] + 2 * k3[i] + k4[i]) for i in range(n)]
|
|
308
319
|
t = t + h
|
|
@@ -120,6 +120,9 @@ def determinant(m: Matrix) -> float:
|
|
|
120
120
|
n = len(m)
|
|
121
121
|
if n == 0:
|
|
122
122
|
return 1.0
|
|
123
|
+
rows, cols = _require_rectangular(m, "matrix")
|
|
124
|
+
if rows != cols:
|
|
125
|
+
raise ValueError(f"determinant requires a square matrix (got {rows}x{cols})")
|
|
123
126
|
if n == 1:
|
|
124
127
|
return m[0][0]
|
|
125
128
|
|
|
@@ -226,7 +226,12 @@ def newton_method(
|
|
|
226
226
|
dfx = _compute_gradient(f, x, h_base)
|
|
227
227
|
|
|
228
228
|
if abs(dfx) < NEAR_ZERO:
|
|
229
|
-
|
|
229
|
+
return OptResult(
|
|
230
|
+
x=x,
|
|
231
|
+
value=f(x),
|
|
232
|
+
iterations=i,
|
|
233
|
+
converged=False,
|
|
234
|
+
)
|
|
230
235
|
x -= fx / dfx
|
|
231
236
|
return OptResult(
|
|
232
237
|
x=x,
|
|
@@ -401,6 +406,8 @@ def line_search(
|
|
|
401
406
|
max_iter: iteration limit
|
|
402
407
|
"""
|
|
403
408
|
phi = (math.sqrt(5) - 1) / 2
|
|
409
|
+
if a > b:
|
|
410
|
+
raise ValueError(f"line_search requires a <= b (got a={a}, b={b})")
|
|
404
411
|
for i in range(max_iter):
|
|
405
412
|
if abs(b - a) < tol:
|
|
406
413
|
mid = (a + b) / 2
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"""Regressions for shape/iteration/length validation in numerical primitives."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
import pytest
|
|
6
|
+
|
|
7
|
+
from cds.diffeq.solvers import solve_system
|
|
8
|
+
from cds.math_utils.linalg import determinant
|
|
9
|
+
from cds.optimization.minimize import line_search, newton_method
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def test_determinant_rejects_rectangular_matrix() -> None:
|
|
13
|
+
with pytest.raises(ValueError, match="square"):
|
|
14
|
+
determinant([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
def test_determinant_rejects_ragged_matrix() -> None:
|
|
18
|
+
with pytest.raises(ValueError, match="ragged"):
|
|
19
|
+
determinant([[1.0, 2.0], [3.0]])
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
def test_newton_reports_actual_iterations_when_derivative_vanishes() -> None:
|
|
23
|
+
result = newton_method(lambda x: 1.0, 0.0, max_iter=500)
|
|
24
|
+
assert result.converged is False
|
|
25
|
+
assert result.iterations == 0
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def test_line_search_rejects_inverted_bounds() -> None:
|
|
29
|
+
with pytest.raises(ValueError, match="a <= b"):
|
|
30
|
+
line_search(lambda x: x * x, 1.0, 0.0)
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
def test_solve_system_rejects_short_derivative() -> None:
|
|
34
|
+
with pytest.raises(ValueError, match="state of length 2"):
|
|
35
|
+
solve_system(lambda t, y: [1.0], 0.0, [0.0, 0.0], 1.0, dt=0.5)
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
def test_solve_system_rejects_long_derivative() -> None:
|
|
39
|
+
with pytest.raises(ValueError, match="state of length 1"):
|
|
40
|
+
solve_system(lambda t, y: [1.0, 2.0], 0.0, [0.0], 1.0, dt=0.5)
|
|
@@ -131,6 +131,15 @@ def test_release_workflow_rechecks_version_discipline_before_build() -> None:
|
|
|
131
131
|
assert "scripts/check_version_discipline.py" in release
|
|
132
132
|
|
|
133
133
|
|
|
134
|
+
def test_previous_release_tag_is_selected_by_version_not_creation_date() -> None:
|
|
135
|
+
release = _text(RELEASE_WORKFLOW)
|
|
136
|
+
assert "--sort=-v:refname" in release, (
|
|
137
|
+
"the previous release must be the highest reachable version tag; "
|
|
138
|
+
"backfilled tags sort as newest by creatordate"
|
|
139
|
+
)
|
|
140
|
+
assert "--sort=-creatordate" not in release
|
|
141
|
+
|
|
142
|
+
|
|
134
143
|
def test_current_public_version_metadata_is_synchronized() -> None:
|
|
135
144
|
match = re.search(
|
|
136
145
|
r'^version\s*=\s*["\']([^"\']+)["\']',
|
|
@@ -243,6 +252,16 @@ def test_release_policy_never_downloads_released_distributions() -> None:
|
|
|
243
252
|
assert "verify_release_integrity.py" in policy
|
|
244
253
|
|
|
245
254
|
|
|
255
|
+
def test_release_policy_noops_when_the_release_does_not_exist_yet() -> None:
|
|
256
|
+
policy = _text(REGISTRY_WORKFLOW)
|
|
257
|
+
# A push that touches the release workflow can land before the version is
|
|
258
|
+
# released. The policy job must treat that as "nothing to enforce" instead
|
|
259
|
+
# of failing on the 404, and must still run once the release exists.
|
|
260
|
+
assert "Resolve matching GitHub Release" in policy
|
|
261
|
+
assert "exists=false" in policy
|
|
262
|
+
assert policy.count("steps.release_state.outputs.exists == 'true'") == 2
|
|
263
|
+
|
|
264
|
+
|
|
246
265
|
def test_release_policy_removes_forbidden_distribution_assets() -> None:
|
|
247
266
|
registry = _text(REGISTRY_WORKFLOW)
|
|
248
267
|
assert "Remove forbidden wheel and sdist assets from matching GitHub Release" in registry
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/benchmarks/results.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/ARCHITECTURE.md
RENAMED
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/CASE_STUDY_HUBBLE.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/assets/icon.svg
RENAMED
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/assets/logo.svg
RENAMED
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/benchmarks.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/getting-started.md
RENAMED
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/maintenance.md
RENAMED
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/ml_reference.md
RENAMED
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/research-workflows.md
RENAMED
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/stylesheets/extra.css
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/ml_demo.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/nlp_viz.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{scientific_computing_system-2.2.13 → scientific_computing_system-2.2.14}/docs/tutorials/pca_demo.md
RENAMED
|
File without changes
|