Skip to main content

EDN format reader and writer in Python

Project description

edn_format

Implements the EDN format in Python.

Build Status PyPI version

Installation

pip install edn_format

Usage

>>> import edn_format
>>> edn_format.dumps({1, 2, 3})
'#{1 2 3}'
>>> edn_format.loads("[1 true nil]")
[1, True, None]

In general, edn_format.loads(edn_format.dumps(obj)) == obj. If this is false, it may be a bug.

See tests.py for full details.

Caveats

All features of EDN have been implemented, including custom tagged elements.

However, I personally don't use this in production, even though many users do, esp. the active contributors below.

Contributors

Special thanks to the following contributors for making this library usable:

Local Dev

# 1. One-time: Install Vagrant
#
# macOS
# Install Homebrew from https://brew.sh
# brew cask install virtualbox vagrant
#
# All OSes
# Install from https://www.vagrantup.com/downloads.html

# 2. One-time: Install Vagrant plugin
vagrant plugin install vagrant-vbguest

# 3. This is all you need
vagrant up

# 4. To access the dev environment via ssh
vagrant ssh
cd /vagrant
# To run tests
python tests.py
# To check Python warnings
python -Wall -c 'import edn_format'
# Code style
flake8 --max-line-length=100 --exclude=parsetab.py .

Contributor Notes

To release a new version:

  1. Ensure you have setup GPG and twine
  2. Bump up the version number in setup.py, e.g. 0.6.3
  3. Create a git tag: git tag -s v0.6.3 -m 'Version 0.6.3' (use signed tags)
  4. Verify git tag: git tag -v v0.6.3
  5. Push git tag: git push origin master --tags
  6. Clean your dist/ directory if it already exists
  7. Package the release: python setup.py sdist bdist_wheel
  8. Check the package: twine check dist/*
  9. Upload the package: twine upload dist/*

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

edn_format-0.6.4.tar.gz (16.7 kB view details)

Uploaded Source

Built Distribution

edn_format-0.6.4-py2-none-any.whl (12.4 kB view details)

Uploaded Python 2

File details

Details for the file edn_format-0.6.4.tar.gz.

File metadata

  • Download URL: edn_format-0.6.4.tar.gz
  • Upload date:
  • Size: 16.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.4

File hashes

Hashes for edn_format-0.6.4.tar.gz
Algorithm Hash digest
SHA256 c5c748c57034acbaecbb08e7f5d955fbcdcb0454c2c3b6cdd247cc5afeca1f6b
MD5 d06690067a5d889809fb089768b3ab87
BLAKE2b-256 3d5b44ee10f83d1644504d1fb8e2f60f9d66b2e9f823d27240165ee8973f1a86

See more details on using hashes here.

File details

Details for the file edn_format-0.6.4-py2-none-any.whl.

File metadata

  • Download URL: edn_format-0.6.4-py2-none-any.whl
  • Upload date:
  • Size: 12.4 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.8.0 tqdm/4.29.1 CPython/3.7.4

File hashes

Hashes for edn_format-0.6.4-py2-none-any.whl
Algorithm Hash digest
SHA256 540c92e1c39133004341f6da92ba77710abdbb6228ad6b012d3258d0a1aa53b4
MD5 88e6baafc902ec21c773424f7c1e4d79
BLAKE2b-256 e66bdbd9dcee8fb4387095488c9e58c19c24c331baf7bc783584d1ec2f9eb623

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