Skip to main content

Typing stubs for strictyaml

test stubtest status mypy status pyright status
last commit to gauge activity downloads
License Status: Beta

* Python 3.10 through 3.14

new in 1.7.3.2

narrow typing YAMLChunk._strictparsed YAMLChunk._ruamelparsed; stream typing; tests for compound;

new in 1.7.3.1

verify CommaSeparated and Enum (#3); stubtest workflow and button;

Why?

strictyaml is ignored by the Python community. Instead these are promoted: TOML, Python internal yaml, pyyaml, and pydantic.

None of which strictly validate very likely malicious dangerous user input.

Feel sorry for those who have been mislead to believe, without validating against a schema, the input files are safe.

User input validation critical security issues pop up constantly. In Python at least, some of these can be avoided completely by choosing strictyaml.

History

The strictyaml author had his own ideas on how to test and document Python packages. Regardless agree with him or not, this created a barrier to entry to surmount for both potential contributors and maintainers.

Would argue that barrier, evidently, is too formidable for us average diabolical albeit lazy geniuses.

Then to add insult to injury, the author ascended to another plane of existence, leaving strictyaml unmaintained.

There exists a vacuum where there should be: stubs, pytest test suite, coverage, and Sphinx docs.

Roadmap

These stubs were created without forking strictyaml. And will help downstream authors test their packages. Hopefully lead to strictyaml acceptance by the Python community.

Static type checking performed using both mypy and pyright. With the hope that later strictyaml is forked and pytest test suite is created. So can prove coverage and allow pyright to find coding errors.

Projects

These packages input files are strictly validated against a schema.

If have a package built that is protected by strictyaml, we’d like to hear from you.

strictyaml team

Dave Faulkmore and Muneeb ur Rahman both have made contributions to strictyaml community. Both have skin in the game and would like to see strictyaml project status revived.

If share our passion, throw caution to the wind, say hmm why not?, put the effort towards writing a message, then find the mental fortitude to click the Send button.

Contributing

Create .venv

pyenv versions
mkdir .venv && cd .venv
python -m venv .
cd - &>/dev/null

. .venv/bin/activate
python -m pip install -e ".[dev]"

Run tests

Verbose and show output

make v=1 show=1 check

Quiet and save output to /tmp folder

make check

Run mypy

pytest-mypy-plugins works only with mypy, not pyright.

make premypy

Run pyright

Against stubs

pyright strictyaml-stubs/

Run pre-commit

make pre-commit

Run stubtest

Without this check, a stubs package could confidently provide incorrect type information, leading to false positives or negatives for users.

python -m pip install strictyaml types-strictyaml
stubtest  --mypy-config-file=pyproject.toml --allowlist=stubtest_allowlist.txt strictyaml > /tmp/out.txt

licenses

Lets take legal compliance seriously to show commitment to respect and acknowledge authors.

Creates NOTICE.txt, licenses.json and sbom.json

rm -rf build/lib; cd .tox && tox --root=.. -c ../tox.ini -e notice \
--workdir=. -vvv; cd - &>/dev/null
rm -rf build/lib; cd .tox && tox --root=.. -c ../tox.ini -e sbom \
--workdir=. -vvv; cd - &>/dev/null

LICENSE and NOTICE.txt are essentially the same expect LICENSE is manually maintained.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

types_strictyaml-1.7.3.2.tar.gz (30.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

types_strictyaml-1.7.3.2-py3-none-any.whl (50.0 kB view details)

Uploaded Python 3

File details

Details for the file types_strictyaml-1.7.3.2.tar.gz.

File metadata

  • Download URL: types_strictyaml-1.7.3.2.tar.gz
  • Upload date:
  • Size: 30.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for types_strictyaml-1.7.3.2.tar.gz
Algorithm Hash digest
SHA256 8244d2e588990bf623e5ba43ff34d31511c9f275e593d21bcfeb7efcf2516bda
MD5 c6f752b49d63fd6e62e128bdf9d47c76
BLAKE2b-256 29a6c66a140ca190b5cab6d02b206ad398c2d7ed76971128beef8e737ca8b03d

See more details on using hashes here.

Provenance

The following attestation bundles were made for types_strictyaml-1.7.3.2.tar.gz:

Publisher: release.yml on msftcangoblowm/types-strictyaml

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file types_strictyaml-1.7.3.2-py3-none-any.whl.

File metadata

File hashes

Hashes for types_strictyaml-1.7.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9a9355cc1705a5947bed556579c1a34aee98289c04a622c04bfa47fb7a3356c3
MD5 2f299dbf43bd5bd7f4271961036f9481
BLAKE2b-256 fdac848c6af34e5e0fe4eb69d01c47c1992048232f4c26e44a2730b055f802df

See more details on using hashes here.

Provenance

The following attestation bundles were made for types_strictyaml-1.7.3.2-py3-none-any.whl:

Publisher: release.yml on msftcangoblowm/types-strictyaml

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.7.3.2 This release

2 files

1.7.3.1

2 files

1.7.3.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page