home.social

#labeille — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #labeille, aggregated by home.social.

  1. labeille Package Registry stats

    Top 3.15 Blockers (364 packages):
    * PyO3 / Rust / maturin: 111
    * C extension build failures: 108
    * pydantic-core (transitive PyO3): 69
    * numpy / scipy / meson: 43

    Once PyO3 adds 3.15 support, ~180 more packages will unlock (PyO3 direct + pydantic-core transitive)

    Skip Reasons (418 packages):
    * Monorepo subpackage (Azure, GCloud, etc.): 214
    * No test suite found: 70
    * No source repository: 52
    * Type stub packages: 42

    #Python #CPython #JIT #registry #labeille

  2. labeille Package Registry stats

    We've grown the registry: github.com/devdanzin/labeille/

    * Total packages: 1,500
    * Enriched (information collected and present): 1,500 (100%)
    * Fully runnable on CPython 3.15: 654 (43.6%)
    * Skipped (no tests, monorepo, etc.): 418 (27.9%)
    * 3.15-specific blockers (skip_versions): 364 (24.3%)
    * pytest: 95.1% (1,427 packages)
    * unittest: 4.8% (72 packages)
    * GitHub: 96.4% of repos
    * Same JIT crash found in 7 packages

    #Python #CPython #JIT #debugging #registry #labeille

  3. labeille runs test suites from popular PyPI packages against a JIT-enabled CPython build and catches crashes: segfaults, assertion failures, etc.

    If all of requests, flask, attrs, etc. pass their tests under the JIT, that shows the JIT is working. If one crashes, there's a bug with a reproducer. We've found one crash so far: github.com/python/cpython/issu

    This requires curating a local package registry with repo URLs, install and test commands, etc.

    #Python #CPython #JIT #fuzzing #labeille #testing

  4. labeille runs test suites from popular PyPI packages against a JIT-enabled CPython build and catches crashes: segfaults, assertion failures, etc.

    If all of requests, flask, attrs, etc. pass their tests under the JIT, that shows the JIT is working. If one crashes, there's a bug with a reproducer. We've found one crash so far: github.com/python/cpython/issu

    This requires curating a local package registry with repo URLs, install and test commands, etc.

    #Python #CPython #JIT #fuzzing #labeille #testing

  5. labeille runs test suites from popular PyPI packages against a JIT-enabled CPython build and catches crashes: segfaults, assertion failures, etc.

    If all of requests, flask, attrs, etc. pass their tests under the JIT, that shows the JIT is working. If one crashes, there's a bug with a reproducer. We've found one crash so far: github.com/python/cpython/issu

    This requires curating a local package registry with repo URLs, install and test commands, etc.

    #Python #CPython #JIT #fuzzing #labeille #testing

  6. labeille runs test suites from popular PyPI packages against a JIT-enabled CPython build and catches crashes: segfaults, assertion failures, etc.

    If all of requests, flask, attrs, etc. pass their tests under the JIT, that shows the JIT is working. If one crashes, there's a bug with a reproducer. We've found one crash so far: github.com/python/cpython/issu

    This requires curating a local package registry with repo URLs, install and test commands, etc.

    #Python #CPython #JIT #fuzzing #labeille #testing

  7. labeille runs test suites from popular PyPI packages against a JIT-enabled CPython build and catches crashes: segfaults, assertion failures, etc.

    If all of requests, flask, attrs, etc. pass their tests under the JIT, that shows the JIT is working. If one crashes, there's a bug with a reproducer. We've found one crash so far: github.com/python/cpython/issu

    This requires curating a local package registry with repo URLs, install and test commands, etc.

    #Python #CPython #JIT #fuzzing #labeille #testing

  8. I've been working on a new Python tool: labeille. Its main purpose is to look for CPython JIT crashes by running real world test suites.

    github.com/devdanzin/labeille

    But it's grown a feature that might interest more people: benchmarking using PyPI packages.

    How does that work?

    labeille allows you to run test suites in 2 different configurations. Say, with coverage on and off, or memray on and off. Here's an example:

    gist.github.com/devdanzin/6352

    #Python #labeille #fuzzing #JIT #PyPI #benchmarking

  9. I've been working on a new Python tool: labeille. Its main purpose is to look for CPython JIT crashes by running real world test suites.

    github.com/devdanzin/labeille

    But it's grown a feature that might interest more people: benchmarking using PyPI packages.

    How does that work?

    labeille allows you to run test suites in 2 different configurations. Say, with coverage on and off, or memray on and off. Here's an example:

    gist.github.com/devdanzin/6352

    #Python #labeille #fuzzing #JIT #PyPI #benchmarking

  10. I've been working on a new Python tool: labeille. Its main purpose is to look for CPython JIT crashes by running real world test suites.

    github.com/devdanzin/labeille

    But it's grown a feature that might interest more people: benchmarking using PyPI packages.

    How does that work?

    labeille allows you to run test suites in 2 different configurations. Say, with coverage on and off, or memray on and off. Here's an example:

    gist.github.com/devdanzin/6352

    #Python #labeille #fuzzing #JIT #PyPI #benchmarking