Agreed-Upon Package Plans:
(Read full Issue thread to see discussion)
Configuration/CI/CD:
(Original Comment)
Here's a list of my suggestions for this package. @jorenham LMK what you agree with.
Configuration/CI/CD:
Docs:
Package layout:
src/
array_api_typing/
__init__.py # defines the public API
_src/ # private API walled garden. Everything here is private and easily worked on by devs w/out public API consequences.
base.py # named whatever we want. no pre-fix underscores.
core.py # named whatever we want. no pre-fix underscores.
Package Contents:
Array. Let's start (pre-release) by not making it parametric, then see what we can do well, e.g. lessons from optype.
- I would actually like to have 2 classes a "minimal" and "full", where the minimal is only
@runtime_checkable
class BaseArray(Protocol): # name TBD
def __array_namespace__(self, ...) -> Namespace: ...
and the full version contains all the attributes and methods.
Namespace
DType, Device, etc.
Agreed-Upon Package Plans:
(Read full Issue thread to see discussion)
Configuration/CI/CD:
pyproject.toml(nosetup.pyorsetup.cfg)uv, including in CIhatchhatch-vcssrc-layoutpytestfor testssybilfor doctests.tox(+tox-uv)left-hooksp-repo-reviewruff(configured in pyproject.toml), not black / isort / pylint / etc.YYYY-MM-minor.bugmain+ branch-per-version format: e.g.main,2023-11.2.1(Original Comment)
Here's a list of my suggestions for this package. @jorenham LMK what you agree with.
Configuration/CI/CD:
pyproject.toml, nosetup.pyorsetup.cfgruff(configured in pyproject.toml), not black / isort / pylint / etc.uv, including in CIhatchandhatch-vcspre-commitDocs:
Package layout:
Package Contents:
Array. Let's start (pre-release) by not making it parametric, then see what we can do well, e.g. lessons from optype.and the full version contains all the attributes and methods.
NamespaceDType,Device, etc.