Skip to main content

A microlibrary that defines a Json type alias for Python.

Project description

jsonalias

A microlibrary that defines a Json type alias for Python.

This README is longer than the library

Seriously, this is all the code:

from typing import Dict, List, Union

Json = Union[Dict[str, "Json"], List["Json"], str, int, float, bool, None]

If we only supported Python >= 3.10, it would fit on one line:

Json = dict[str, 'Json'] | list['Json'] | str | int | float | bool | None

Then why make a library out of it?

I want to use this type alias in multiple projects and it's just about long enough to be annoying.

This alias should probably get added to the Python typing module. If it does and I haven't put a big notice on this README, please open a PR.

Example

from jsonalias import Json

d: Json = {"foo": ["bar", {"x": "y"}]}

It's not working please help???

Make sure you're using mypy >= 0.981 and running with the --enable-recursive-aliases flag.

Special Thanks

GitHub user wbolster for this comment notifying us that mypy could now do JSON.

Project details


Download files

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

Source Distribution

jsonalias-0.1.2.tar.gz (2.6 kB view details)

Uploaded Source

Built Distribution

jsonalias-0.1.2-py3-none-any.whl (2.8 kB view details)

Uploaded Python 3

File details

Details for the file jsonalias-0.1.2.tar.gz.

File metadata

  • Download URL: jsonalias-0.1.2.tar.gz
  • Upload date:
  • Size: 2.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.9.13 Linux/5.15.57-2-MANJARO

File hashes

Hashes for jsonalias-0.1.2.tar.gz
Algorithm Hash digest
SHA256 e397874a4a13b45c500565703dc71bd42011efde0570246de7a92d284610ac4c
MD5 936fa75edcabac87b890042c393005ec
BLAKE2b-256 2adf59ca5f3319dc6d432d79303242f4c9fc50412de36d61de0f697d757faaba

See more details on using hashes here.

File details

Details for the file jsonalias-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: jsonalias-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 2.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.9.13 Linux/5.15.57-2-MANJARO

File hashes

Hashes for jsonalias-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0dece9b199f6aa9a6a2dcfa81d233f5673a9227b66ab16425c39eebf4b45bb94
MD5 0052df9a0c8d60dbe02f61d7e7cf97af
BLAKE2b-256 cdb7490d6c62692be5f458c133196586ae4be6dd03604b246a7360654f1237f9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page