Skip to content

Modernize python scripts packaging, python versioning  #3350

@bollwyvl

Description

@bollwyvl

Hi folks, thanks for the antlrverse!

The current use of scripts in the PythonX runtimes makes it harder to generate otherwise-solid cross-platform downstream packages that have different constraints than e.g. PyPI. Adopting a newer approach, would look like:

    entry_points={
        'console_scripts': [
            "pygrun=some-importable.some-module:some-method"
        ]
    },

and would means that...

  • the functionality would move either into antlr4-pythonX-runtime.pygrun:main or some other thing
  • the .bat wrapper script would no longer be needed
  • downstreams could reason more about the generated files and where to put them
    • selfishly, for conda-forge, this would mean going from a matrix of 20+ builds to a single build.

Furthermore, as the description suggests a bottom python pin, formally declaring this would further improve the metadata for both pip users and others.

    python_requires='>=3.7',

Thanks again!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions