Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Improve infrastructure #102

@masklinn

Description

@masklinn
  • improve test matrix and configuration
    • add 3.9 and 3.10
    • add pypy
    • maybe add 3.11 alpha? Might be useful as a smoke test at least
    • reorganise in order to have a single CI for all stable implementations to avoid configuration churn (wrt branch protection), in the current state any addition or removal of a python target has to be impacted there
  • investigate ymyzk/tox-gh-actions (or possibly tox's homegrown but that's only for the yet-to-be-released tox 4), a gh action has been defined for CI but it duplicates the tox file (which I haven't updated and may be broken in part or whole), this duplication seems like a shame
    cancelling this, probably less useful now that the wheel / release actions are wedded so hard to GHA
  • test both regex and yaml implementations, otherwise yaml bitrots (cf Open UA_PARSER_YAML as binary #99)
  • add benches? needs a benchmarking dataset (cf ParseUserAgent, ParseOS and ParseDevice are not using the cache #97), also not sure it's acceptable to run on GHA, it's technically possible (free plans allow 20 concurrent jobs and up to 6h per job) but it might quickly stray into abuse, look further into this
  • prop testing (hypothesis)?
  • fuzzing? not sure there's really enough actual code execution for this to be useful, though it might be able to uncover redos issues in the base set('s interaction with Python's standard regex engine), the two tools I could find for coverage-guided fuzzing are pythonfuzz (by gitlab) and atheris (by google)
  • look at coverage, this may be useless for the same reasons as above

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions