Skip to main content

('Self-contained library to deal with metadata in Enthought-specific eggs',)

Project description

https://travis-ci.org/enthought/okonomiyaki.png?branch=master

Okonomiyaki is an experimental library aimed at consolidating a lot of our low-level code used for Enthought’s eggs.

The library contains code for the following:

  • producing EDM and enpkg-compatible egg from a tree + metadata

  • object models for eggs metadata, as well as versions and platform representations

It works on both python 2 and 3, and pypy. It is expected to work on pretty much any compliant python implementation.

Examples

Version parsing

To parse versions:

from okonomiyaki.versions import EnpkgVersion
# Every Version class has a from_string constructor
v1 = EnpkgVersion.from_string("1.3.3-1")
v2 = EnpkgVersion.from_string("1.3.2-3")

assert v1 > v2

Version instances are designed to be immutable, and to be used as keys in dictionaries.

Platform parsing

To parse epd platform strings (rh5-64, rh6_x86_64, etc.) consistently:

from okonomiyaki.platforms import EPDPlatform
# Internal representation is normalized.
rh5_new_name = EPDPlatform.from_string("rh5-x86_64")
rh5_old_name = EPDPlatform.from_string("rh5-64")

assert rh5_old_name == rh5_new_name

As for Version instances, EPDPlatform instances are designed to be immutable and to be used as keys in dictionaries.

Egg metadata

To parse Enthought eggs:

from okonomiyaki.file_formats import EggMetadata

# Only works for Enthought eggs
metadata = EggMetadata.from_egg("numpy-1.10.1-1.egg")
print(metadata.metadata_version)
print(metadata.name)
print(metadata.version)

This will take care of a lot of low-level, legacy details you don’t want to know about.

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

okonomiyaki-1.1.0.tar.gz (464.1 kB view details)

Uploaded Source

Built Distribution

okonomiyaki-1.1.0-py2.py3-none-any.whl (522.8 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file okonomiyaki-1.1.0.tar.gz.

File metadata

  • Download URL: okonomiyaki-1.1.0.tar.gz
  • Upload date:
  • Size: 464.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.5 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.15

File hashes

Hashes for okonomiyaki-1.1.0.tar.gz
Algorithm Hash digest
SHA256 5cd633ce06952bb5234befb9dc2d4f39182bc1d0444b8d3b4b99c7d11629a3d8
MD5 91ab24a36ae09f6a83b26b4c555d364c
BLAKE2b-256 2eced4f2ca2b5387d612f15a10beede4ea9d418de163ab8db54f3decd8fd5c2a

See more details on using hashes here.

File details

Details for the file okonomiyaki-1.1.0-py2.py3-none-any.whl.

File metadata

  • Download URL: okonomiyaki-1.1.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 522.8 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/38.2.5 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.15

File hashes

Hashes for okonomiyaki-1.1.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 0feb8aace3d6791d49e98936fea1978c35b2d7ad545ad95f573061356eec9cac
MD5 734976fee37cc91b35fd9eb235ae07b6
BLAKE2b-256 b2253961fc90b96758ceb3a06bfd798dbfd332e7d7a9aa595cb0ab58ca76c58c

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