okonomiyaki


Nameokonomiyaki JSON
Version 2.0.0 PyPI version JSON
download
home_pagehttps://github.com/enthought/okonomiyaki
SummarySelf-contained library to deal with metadata in Enthought-specific egg and runtime archives
upload_time2024-08-23 15:41:28
maintainerNone
docs_urlNone
authorEnthought Inc.
requires_python>=3.6
licenseBSD-3-Clause
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            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 Python >= 3.6, It is expected to work on pretty
much any compliant python implementation.

Note
----

* Version instances are available without extra dependencies so use ``pip install okonomiyaki``
* Platform instances are available by installing ``pip install okonomiyaki[platforms]``
* Egg metadata and archive tools are available by installing ``pip install okonomiyaki[formats]``
* The full set of functionality, please use ``pip install okonomiyaki[all]``


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.

2024-08-23     2.0.0
--------------------

Enhancements:

* Add support for the ARM and ARM64 architectures in Arch (#458)
* Add support for ARM64 in EPDPlatform 	(#458)
* Add sample runtimes and eggs for the ARM64 architecture (#462, #460)
* Add a constructor for Platform from a dictionary (#410, #472)

Breaking Changes:

* Remove Python 2.x code support. Okonomiyaki now supports running on > 3.6 (#380)
* Remove the "short" attribute from the EPDPlatform instance (#485)
* Remove the LagacyEPDPlatform instance (#485)
* Remove okonomiyaki.recipes submodule (#473)
* Move okonomiyaki.recipes.tests.data files to okonomiyaki.utils.test_data (#473)
* Move dependencies to optional extras (#474)
* default_abi will not fail for Python > 3.11 on windows anymore  (#477)

Bug fixes:

* Fix okonomiyaki cli when it is called with no arguments (#459)
* Drop use of deprecated alias assertRaisesRegexp (#486)
* Skip some tests on unsupported systems (#475)

Maintenance:

* Update Github ci to generate the html coverage report as a downloadable artifact (#457)
* Run tests on MacOS M1 runners (#460)
* Run tests on Python 3.11 (#461)
* Run tests on Python 3.12 (#477)
* Simplify setup.py (#476, #477)

2023-06-29     1.4.0
--------------------

Enhancements:

* Add cp311 dummy runtimes (#349)
* Add cp311 dummy eggs (#453)
* Update the code to guess a Platform instance from the running system (#448)
  - Added a NameKind value for Rocky Linux
  - Debian and RHEL compatible systems are now supported by the "uknown" NameKind
  - Add support for the RH8 platform
* Update the PythonImplementation instance to support cp311 (#451)
* Update okonomiyaki code to not use the deprecated LegacyEPDPlatform instance (#452)

Maintenance:

* Remove old Jenkins CI build setup (#440)
* Update the test matrix on github actions and remove testing for Python 2.7 (#441, #447)
* Move most of the package configuration into the setup.cfg (#450)

Bug fixes:

* Fix the behaviour of the pep245 module and the way it is tested (#441, #447)
* Fix the repr output for PEP440Version and RuntimeVersion (#435, #436)
* Fix error message for unsupported platform combinations (#433)
* Fix permissions in the dummy egg archives (#430)

2021-07-01     1.3.2
--------------------

Bug fixes:

* Fix relative imports (#426)
* Fix compute_abi_tag to support Python 3.8 (#424)

2021-06-29     1.3.1
--------------------

Bug fixes:

* Update dummy eggs to hold the correct abi tag for Python 3.8 (#413)
* Pass the runtime version to the from_epd_string constructor (#414)
* Fix _guess_abi_tag and _guess_abi_from_python to support python 3.8 (#418)

2021-03-21     1.3.0
--------------------

Enhancements:

* Add cp38 dummy runtimes (#387)
* Add cp38 dummy eggs (#395, #398)
* Update default abi functions to support python 3.8 (#390)

Maintenance:

* Enable GitHub actions (#384)
* Fix build badge to point to travis-ci.com (#376)
* Fix path to the okonomiyaki test build project (#379)
* Update script that verifies okonomiyaki can read eds eggs (#396)

Bug fixes:

* Add rh6 and rh7 dummy eggs to setup.py (#369)
* EPDPlatform.pep425_tag will always return 10.6 for macos platforms (#374, #387)
* Fix older dummy windows runtime archives to work with recent EDM (#391, #397)
* EPDPlatform.from_string will always return fixed release versions (#375, #387)


2019-11-08     1.2.0
--------------------

Enhancements:

* Run tests against Centos 7. (#359)

Maintenance:

* Run Travis CI on maintenance and tagged branches. (#352)
* Only test branch builds on Appveyor for master and maintenance branches. (#364)

Bug fixes:

* Add the license to the manifest. (#354)
* Fix platform detection on Centos 7. (#161)
* Fix error when '$' is in the Python runtime prefix. (#309)


2019-09-20     1.1.1
--------------------

Bug fixes:

* Fix name of the 2.7.10 dummy runtime for rh6. (#341)


2019-09-19     1.1.0
--------------------

Enhancements:

* Add dummy test runtimes for python 3.6.5. (#327)
* Add dummy test runtimes for rh7. (#331)
* Add dummy test runtimes for rh6. (#330)
* Add dummy test eggs for rh7. (#329)
* Add dummy test eggs for rh6. (#328)


2019-03-15     1.0.0
--------------------

Enhancements:

* Add ability to parse setuptools eggs and wheels with metadata version 2.1 (#312)

Bug fixes:

* Improve error message when hyphens are used in spec requirement string (#319)
* Fix CI errors with jasonschema and attrs incompatibility (#318)
* Fix Travis CI flake8 errors (#316)


2018-03-12    0.17.4
--------------------

Bug fixes:

* fix test data dummy runtime for python 2.7.9 that contained osx system files. (#304)
* fix test data dummy windows runtimes fix_scripts to support python 2 and python 3. (#303)


2017-12-13    0.17.3
--------------------

Enhancements:

* WheelInfo provides properties for the 'scripts' and 'headers'
  prefix scheme. (#298)


2017-07-20    0.17.2
--------------------

bug fixes:

* skip expected failure test_simple_from_running_python when running
  on osx under python 2.7.x. (#295)


2017-07-19    0.17.1
--------------------

Enhancements:

* streamline travis ci testing. (#286)
* run tests on appveyor and python 3. (#288)

bug fixes:

* fix Runtime.executable value for Python 3 on windows. (#288)
* fix compute_abi_tag/compute_python_tag/compute_platform_tag so that
  they can be used in a frozen app. (#284)


2017-07-03    0.17.0
--------------------

Enhancements:

* compute default ABI for ironpython/jython. (#225)
* add support for CPython 3.6 (#229)
* add support for `PKG-INFO` format 1.2 and 2.0 (#261, #271)
* fix support for attrs >= 17.x
* PackageInfo.from_path may parse PKG-INFO metadata from both wheels and eggs. (#274)
* add WheelInfo class for wheel pep425 tags parsing. (#275)
* add compute_abi_tag/compute_python_tag/compute_platform_tag functions to
  compute PEP 425 tags from arbitrary python executables (#278)
* add some basic examples in the README. (#279)
* add commonly used wheel prefixes to WheelInfo. (#280)

bug fixes:

* fix author_* entries in setup.py. (#235)
* test runtimes should include pythonw.exe (#238)
* fix applies("32")/applies("64") (#244)
* fix permissions for egg metadata written through writestr. (#249)
* fix error handling for platform strings with 'remains'. (#253)
* fix invalid trove classifier in setup.py. (#258)
* mark classes we need hashable as immutable. (#266)
* add (long) description into setup.py. (#272)


2016-06-29    0.16.0
--------------------

This release focused on speeding up EggMetadata, and adding json serialization
for EDM.

Enhancements:

  * update dependency on attr >= 16.0.0, which contains some speedups for
    validators (#220)
  * lazily parse PKG-INFO in EggMedata (#216)
  * test runtimes's dummy pythons output the right string and are of the right
    bitness (#215)
  * test runtimes now contains symlinks on Unix (#214)
  * json serialization for EggMetadata (#213)
  * expose Kind enums to okonomiyaki.runtimes (#204)
  * speedup EggMetadata.from_egg (#203)
  * EPDPlatform.from_epd_string is deprecated in favor of
    EPDPlatform.from_string(#199)
  * EggMetadata.from_egg does not re-open a zipfile 3 times (#195)

Bugs:

  * fix flake8 violations (#218)
  * remove spurious dependency on stevedore (#208)
  * missing enum34 dependency (#196)

2016-04-27   0.15.0:
--------------------

Enhancements:

  * add `platform_abi` field to `EggMetadata`

Bug fixes:

  * raise the correct exception for invalid egg metadata (#156)
  * raise the correct exception for missing metadata in runtimes (#165)

Internal changes:

  * enum34 is used instead of traitlets (#55)
  * traitlets is not used anymore (#56, #115, #145)

2015-12-09   0.14.0:
--------------------

Enhancements:

  * Reject incompatible metadata_version in egg metadata, and add API to easily
    tweak the output's metadata_version (#150)
  * `default_abi` now works for alternative implementations (#149).
  * Exception hierarchy for invalid metadata has been improved for
    finer-grained error messages (#151)

Backward incompatible changes:

  * `default_abi` function now takes 3 arguments (#149).

Bug fixes:

  * update python_tag blacklist to handle wrong metadata (#146)

2015-10-02   0.13.0:
--------------------

Enhancements:

  * `abi` attribute for runtime (#134)
  * `metadata_version` attribute for runtime added (#143)

Backward incompatible changes:

  * `language` attribute from runtime removed (#134)
  * `metadata_version_info` attribute from EggMetadata removed (#143)

Bug fixes:

  * update PKG-INFO blacklist to handle every pypi egg (#141)
  * update platform blacklist to handle wrong metadata for windows eggs w/ C
    extensions and no platform set up (#142)
    (#136).
  * fix round-tripping for PEP386 versions with post part without a dev part
    (#136).

2015-09-28   0.12.0:
--------------------

Improvements:

  * blacklist mechanism for invalid python tag of existing eggs (#127)
  * accept filtre function in egg builders now take two arguments to allow
    filtering on the full content of the archive (#128)

2015-09-14   0.11.0:
--------------------

Improvements:

  * SemanticVersion class added
  * MetadataVersion class added to easily manipulate metadata versions.
  * PEP440Version class added.
  * RuntimeVersion class added to model edm runtime versions
  * IRuntimeMetadata.factory_from_path class function to parse and validate
    runtime packages.
  * __str__ is now implemented for EPDPlatform. The implementation support
    EPDPlatform.from_epd_string(str(epd_platform)) == epd_platform (#117)

2015-00-01   0.10.0:
--------------------

Improvements:

  * EnpkgVersion.from_string now handles versions of the form `1.3.0`, with the
    build number being implicitly 0.
  * EggMetadata.from_egg now handles eggs built for RedHat Enterprise
    Linux 3 (#88).
  * Fix decoding errors when parsing PKG-INFO (#86)
  * Fix parsing of spec/depend for RedHat 3 eggs (#88)
  * Special case invalid requirement 'numpy-1.8.0'

Internals:

  * Remove dependency on six
  * Add support for both '-' and '_' as separators between os and arch in
    platform names for EPDPlatform, i.e. both from_epd_string("rh5-x86_64") and
    from_epd_string("rh5_x86_64") work (#83).
  * Black list mechanism to fix invalid PKG-INFO
  * Black list mechanism to handle platform-specific, any-arch eggs
  * Add special 'private' API for brood to bypass checksum computation in
    EggMetadata and PackageInfo

2015-07-06   0.9.0:
-------------------

Improvements:

  * SetuptoolsEggMetadata now can guess ABI for legacy cases. (#74)
  * use PythonImplementation instances instead of strings to store python tag
    (#75).
  * add okonomiyaki.__version_info__ for easy version comparison (#76).

2015-06-30   0.8.0:
-------------------

New features:

  * New EggRewriter class to create Enthought eggs from setuptools eggs.

Improvements:

  * add EPDPlatform.from_running_python ctor (#62)
  * reject unsupported metadata version in PackageInfo (#63)
  * add support for 'py2' python tag (#64)
  * add support for python 3 in SetuptoolsEggMetadata (#70)

Bug fixes:

  * handle Enthought eggs without PKG-INFO in EggMetadata (#65)
  * fix unicode handling of PKG-INFO and EGG-INFO/spec/summary (#72)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/enthought/okonomiyaki",
    "name": "okonomiyaki",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": null,
    "keywords": null,
    "author": "Enthought Inc.",
    "author_email": "info@enthough.com",
    "download_url": "https://files.pythonhosted.org/packages/cc/ee/dddfa93a4153057a51053fa9d387a947dfcdb399ee7a473d4c844bed5834/okonomiyaki-2.0.0.tar.gz",
    "platform": null,
    "description": "Okonomiyaki is an experimental library aimed at consolidating a lot of our\nlow-level code used for Enthought's eggs.\n\nThe library contains code for the following:\n\n* producing EDM and enpkg-compatible egg from a tree + metadata\n* object models for eggs metadata, as well as versions and platform\n  representations\n\nIt works on Python >= 3.6, It is expected to work on pretty\nmuch any compliant python implementation.\n\nNote\n----\n\n* Version instances are available without extra dependencies so use ``pip install okonomiyaki``\n* Platform instances are available by installing ``pip install okonomiyaki[platforms]``\n* Egg metadata and archive tools are available by installing ``pip install okonomiyaki[formats]``\n* The full set of functionality, please use ``pip install okonomiyaki[all]``\n\n\nExamples\n========\n\nVersion parsing\n---------------\n\nTo parse versions::\n\n     from okonomiyaki.versions import EnpkgVersion\n     # Every Version class has a from_string constructor\n     v1 = EnpkgVersion.from_string(\"1.3.3-1\")\n     v2 = EnpkgVersion.from_string(\"1.3.2-3\")\n\n     assert v1 > v2\n\nVersion instances are designed to be immutable, and to be used as keys in\ndictionaries.\n\nPlatform parsing\n----------------\n\nTo parse epd platform strings (``rh5-64``, ``rh6_x86_64``, etc.) consistently::\n\n    from okonomiyaki.platforms import EPDPlatform\n    # Internal representation is normalized.\n    rh5_new_name = EPDPlatform.from_string(\"rh5-x86_64\")\n    rh5_old_name = EPDPlatform.from_string(\"rh5-64\")\n\n    assert rh5_old_name == rh5_new_name\n\nAs for Version instances, ``EPDPlatform`` instances are designed to be\nimmutable and to be used as keys in dictionaries.\n\nEgg metadata\n------------\n\nTo parse Enthought eggs::\n\n    from okonomiyaki.file_formats import EggMetadata\n\n    # Only works for Enthought eggs\n    metadata = EggMetadata.from_egg(\"numpy-1.10.1-1.egg\")\n    print(metadata.metadata_version)\n    print(metadata.name)\n    print(metadata.version)\n\nThis will take care of a lot of low-level, legacy details you don't want to\nknow about.\n\n2024-08-23     2.0.0\n--------------------\n\nEnhancements:\n\n* Add support for the ARM and ARM64 architectures in Arch (#458)\n* Add support for ARM64 in EPDPlatform \t(#458)\n* Add sample runtimes and eggs for the ARM64 architecture (#462, #460)\n* Add a constructor for Platform from a dictionary (#410, #472)\n\nBreaking Changes:\n\n* Remove Python 2.x code support. Okonomiyaki now supports running on > 3.6 (#380)\n* Remove the \"short\" attribute from the EPDPlatform instance (#485)\n* Remove the LagacyEPDPlatform instance (#485)\n* Remove okonomiyaki.recipes submodule (#473)\n* Move okonomiyaki.recipes.tests.data files to okonomiyaki.utils.test_data (#473)\n* Move dependencies to optional extras (#474)\n* default_abi will not fail for Python > 3.11 on windows anymore  (#477)\n\nBug fixes:\n\n* Fix okonomiyaki cli when it is called with no arguments (#459)\n* Drop use of deprecated alias assertRaisesRegexp (#486)\n* Skip some tests on unsupported systems (#475)\n\nMaintenance:\n\n* Update Github ci to generate the html coverage report as a downloadable artifact (#457)\n* Run tests on MacOS M1 runners (#460)\n* Run tests on Python 3.11 (#461)\n* Run tests on Python 3.12 (#477)\n* Simplify setup.py (#476, #477)\n\n2023-06-29     1.4.0\n--------------------\n\nEnhancements:\n\n* Add cp311 dummy runtimes (#349)\n* Add cp311 dummy eggs (#453)\n* Update the code to guess a Platform instance from the running system (#448)\n  - Added a NameKind value for Rocky Linux\n  - Debian and RHEL compatible systems are now supported by the \"uknown\" NameKind\n  - Add support for the RH8 platform\n* Update the PythonImplementation instance to support cp311 (#451)\n* Update okonomiyaki code to not use the deprecated LegacyEPDPlatform instance (#452)\n\nMaintenance:\n\n* Remove old Jenkins CI build setup (#440)\n* Update the test matrix on github actions and remove testing for Python 2.7 (#441, #447)\n* Move most of the package configuration into the setup.cfg (#450)\n\nBug fixes:\n\n* Fix the behaviour of the pep245 module and the way it is tested (#441, #447)\n* Fix the repr output for PEP440Version and RuntimeVersion (#435, #436)\n* Fix error message for unsupported platform combinations (#433)\n* Fix permissions in the dummy egg archives (#430)\n\n2021-07-01     1.3.2\n--------------------\n\nBug fixes:\n\n* Fix relative imports (#426)\n* Fix compute_abi_tag to support Python 3.8 (#424)\n\n2021-06-29     1.3.1\n--------------------\n\nBug fixes:\n\n* Update dummy eggs to hold the correct abi tag for Python 3.8 (#413)\n* Pass the runtime version to the from_epd_string constructor (#414)\n* Fix _guess_abi_tag and _guess_abi_from_python to support python 3.8 (#418)\n\n2021-03-21     1.3.0\n--------------------\n\nEnhancements:\n\n* Add cp38 dummy runtimes (#387)\n* Add cp38 dummy eggs (#395, #398)\n* Update default abi functions to support python 3.8 (#390)\n\nMaintenance:\n\n* Enable GitHub actions (#384)\n* Fix build badge to point to travis-ci.com (#376)\n* Fix path to the okonomiyaki test build project (#379)\n* Update script that verifies okonomiyaki can read eds eggs (#396)\n\nBug fixes:\n\n* Add rh6 and rh7 dummy eggs to setup.py (#369)\n* EPDPlatform.pep425_tag will always return 10.6 for macos platforms (#374, #387)\n* Fix older dummy windows runtime archives to work with recent EDM (#391, #397)\n* EPDPlatform.from_string will always return fixed release versions (#375, #387)\n\n\n2019-11-08     1.2.0\n--------------------\n\nEnhancements:\n\n* Run tests against Centos 7. (#359)\n\nMaintenance:\n\n* Run Travis CI on maintenance and tagged branches. (#352)\n* Only test branch builds on Appveyor for master and maintenance branches. (#364)\n\nBug fixes:\n\n* Add the license to the manifest. (#354)\n* Fix platform detection on Centos 7. (#161)\n* Fix error when '$' is in the Python runtime prefix. (#309)\n\n\n2019-09-20     1.1.1\n--------------------\n\nBug fixes:\n\n* Fix name of the 2.7.10 dummy runtime for rh6. (#341)\n\n\n2019-09-19     1.1.0\n--------------------\n\nEnhancements:\n\n* Add dummy test runtimes for python 3.6.5. (#327)\n* Add dummy test runtimes for rh7. (#331)\n* Add dummy test runtimes for rh6. (#330)\n* Add dummy test eggs for rh7. (#329)\n* Add dummy test eggs for rh6. (#328)\n\n\n2019-03-15     1.0.0\n--------------------\n\nEnhancements:\n\n* Add ability to parse setuptools eggs and wheels with metadata version 2.1 (#312)\n\nBug fixes:\n\n* Improve error message when hyphens are used in spec requirement string (#319)\n* Fix CI errors with jasonschema and attrs incompatibility (#318)\n* Fix Travis CI flake8 errors (#316)\n\n\n2018-03-12    0.17.4\n--------------------\n\nBug fixes:\n\n* fix test data dummy runtime for python 2.7.9 that contained osx system files. (#304)\n* fix test data dummy windows runtimes fix_scripts to support python 2 and python 3. (#303)\n\n\n2017-12-13    0.17.3\n--------------------\n\nEnhancements:\n\n* WheelInfo provides properties for the 'scripts' and 'headers'\n  prefix scheme. (#298)\n\n\n2017-07-20    0.17.2\n--------------------\n\nbug fixes:\n\n* skip expected failure test_simple_from_running_python when running\n  on osx under python 2.7.x. (#295)\n\n\n2017-07-19    0.17.1\n--------------------\n\nEnhancements:\n\n* streamline travis ci testing. (#286)\n* run tests on appveyor and python 3. (#288)\n\nbug fixes:\n\n* fix Runtime.executable value for Python 3 on windows. (#288)\n* fix compute_abi_tag/compute_python_tag/compute_platform_tag so that\n  they can be used in a frozen app. (#284)\n\n\n2017-07-03    0.17.0\n--------------------\n\nEnhancements:\n\n* compute default ABI for ironpython/jython. (#225)\n* add support for CPython 3.6 (#229)\n* add support for `PKG-INFO` format 1.2 and 2.0 (#261, #271)\n* fix support for attrs >= 17.x\n* PackageInfo.from_path may parse PKG-INFO metadata from both wheels and eggs. (#274)\n* add WheelInfo class for wheel pep425 tags parsing. (#275)\n* add compute_abi_tag/compute_python_tag/compute_platform_tag functions to\n  compute PEP 425 tags from arbitrary python executables (#278)\n* add some basic examples in the README. (#279)\n* add commonly used wheel prefixes to WheelInfo. (#280)\n\nbug fixes:\n\n* fix author_* entries in setup.py. (#235)\n* test runtimes should include pythonw.exe (#238)\n* fix applies(\"32\")/applies(\"64\") (#244)\n* fix permissions for egg metadata written through writestr. (#249)\n* fix error handling for platform strings with 'remains'. (#253)\n* fix invalid trove classifier in setup.py. (#258)\n* mark classes we need hashable as immutable. (#266)\n* add (long) description into setup.py. (#272)\n\n\n2016-06-29    0.16.0\n--------------------\n\nThis release focused on speeding up EggMetadata, and adding json serialization\nfor EDM.\n\nEnhancements:\n\n  * update dependency on attr >= 16.0.0, which contains some speedups for\n    validators (#220)\n  * lazily parse PKG-INFO in EggMedata (#216)\n  * test runtimes's dummy pythons output the right string and are of the right\n    bitness (#215)\n  * test runtimes now contains symlinks on Unix (#214)\n  * json serialization for EggMetadata (#213)\n  * expose Kind enums to okonomiyaki.runtimes (#204)\n  * speedup EggMetadata.from_egg (#203)\n  * EPDPlatform.from_epd_string is deprecated in favor of\n    EPDPlatform.from_string(#199)\n  * EggMetadata.from_egg does not re-open a zipfile 3 times (#195)\n\nBugs:\n\n  * fix flake8 violations (#218)\n  * remove spurious dependency on stevedore (#208)\n  * missing enum34 dependency (#196)\n\n2016-04-27   0.15.0:\n--------------------\n\nEnhancements:\n\n  * add `platform_abi` field to `EggMetadata`\n\nBug fixes:\n\n  * raise the correct exception for invalid egg metadata (#156)\n  * raise the correct exception for missing metadata in runtimes (#165)\n\nInternal changes:\n\n  * enum34 is used instead of traitlets (#55)\n  * traitlets is not used anymore (#56, #115, #145)\n\n2015-12-09   0.14.0:\n--------------------\n\nEnhancements:\n\n  * Reject incompatible metadata_version in egg metadata, and add API to easily\n    tweak the output's metadata_version (#150)\n  * `default_abi` now works for alternative implementations (#149).\n  * Exception hierarchy for invalid metadata has been improved for\n    finer-grained error messages (#151)\n\nBackward incompatible changes:\n\n  * `default_abi` function now takes 3 arguments (#149).\n\nBug fixes:\n\n  * update python_tag blacklist to handle wrong metadata (#146)\n\n2015-10-02   0.13.0:\n--------------------\n\nEnhancements:\n\n  * `abi` attribute for runtime (#134)\n  * `metadata_version` attribute for runtime added (#143)\n\nBackward incompatible changes:\n\n  * `language` attribute from runtime removed (#134)\n  * `metadata_version_info` attribute from EggMetadata removed (#143)\n\nBug fixes:\n\n  * update PKG-INFO blacklist to handle every pypi egg (#141)\n  * update platform blacklist to handle wrong metadata for windows eggs w/ C\n    extensions and no platform set up (#142)\n    (#136).\n  * fix round-tripping for PEP386 versions with post part without a dev part\n    (#136).\n\n2015-09-28   0.12.0:\n--------------------\n\nImprovements:\n\n  * blacklist mechanism for invalid python tag of existing eggs (#127)\n  * accept filtre function in egg builders now take two arguments to allow\n    filtering on the full content of the archive (#128)\n\n2015-09-14   0.11.0:\n--------------------\n\nImprovements:\n\n  * SemanticVersion class added\n  * MetadataVersion class added to easily manipulate metadata versions.\n  * PEP440Version class added.\n  * RuntimeVersion class added to model edm runtime versions\n  * IRuntimeMetadata.factory_from_path class function to parse and validate\n    runtime packages.\n  * __str__ is now implemented for EPDPlatform. The implementation support\n    EPDPlatform.from_epd_string(str(epd_platform)) == epd_platform (#117)\n\n2015-00-01   0.10.0:\n--------------------\n\nImprovements:\n\n  * EnpkgVersion.from_string now handles versions of the form `1.3.0`, with the\n    build number being implicitly 0.\n  * EggMetadata.from_egg now handles eggs built for RedHat Enterprise\n    Linux 3 (#88).\n  * Fix decoding errors when parsing PKG-INFO (#86)\n  * Fix parsing of spec/depend for RedHat 3 eggs (#88)\n  * Special case invalid requirement 'numpy-1.8.0'\n\nInternals:\n\n  * Remove dependency on six\n  * Add support for both '-' and '_' as separators between os and arch in\n    platform names for EPDPlatform, i.e. both from_epd_string(\"rh5-x86_64\") and\n    from_epd_string(\"rh5_x86_64\") work (#83).\n  * Black list mechanism to fix invalid PKG-INFO\n  * Black list mechanism to handle platform-specific, any-arch eggs\n  * Add special 'private' API for brood to bypass checksum computation in\n    EggMetadata and PackageInfo\n\n2015-07-06   0.9.0:\n-------------------\n\nImprovements:\n\n  * SetuptoolsEggMetadata now can guess ABI for legacy cases. (#74)\n  * use PythonImplementation instances instead of strings to store python tag\n    (#75).\n  * add okonomiyaki.__version_info__ for easy version comparison (#76).\n\n2015-06-30   0.8.0:\n-------------------\n\nNew features:\n\n  * New EggRewriter class to create Enthought eggs from setuptools eggs.\n\nImprovements:\n\n  * add EPDPlatform.from_running_python ctor (#62)\n  * reject unsupported metadata version in PackageInfo (#63)\n  * add support for 'py2' python tag (#64)\n  * add support for python 3 in SetuptoolsEggMetadata (#70)\n\nBug fixes:\n\n  * handle Enthought eggs without PKG-INFO in EggMetadata (#65)\n  * fix unicode handling of PKG-INFO and EGG-INFO/spec/summary (#72)\n",
    "bugtrack_url": null,
    "license": "BSD-3-Clause",
    "summary": "Self-contained library to deal with metadata in Enthought-specific egg and runtime archives",
    "version": "2.0.0",
    "project_urls": {
        "Homepage": "https://github.com/enthought/okonomiyaki"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f2d6d41a5628dc2166150b9fa2f7ad812ec3a125aab25d957bf95cd2dbc54ae4",
                "md5": "992910e7eac7847516f107ef4f9b792b",
                "sha256": "9d2b63cb5cbb3288a37c078b4ccda6adc1d6ac2d1c8990572b3de4f767ad72eb"
            },
            "downloads": -1,
            "filename": "okonomiyaki-2.0.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "992910e7eac7847516f107ef4f9b792b",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.6",
            "size": 8346905,
            "upload_time": "2024-08-23T15:41:21",
            "upload_time_iso_8601": "2024-08-23T15:41:21.734212Z",
            "url": "https://files.pythonhosted.org/packages/f2/d6/d41a5628dc2166150b9fa2f7ad812ec3a125aab25d957bf95cd2dbc54ae4/okonomiyaki-2.0.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "cceedddfa93a4153057a51053fa9d387a947dfcdb399ee7a473d4c844bed5834",
                "md5": "1c09a89b06497335b338f7b2ef5182e2",
                "sha256": "8aacccce9266629b7dd5d8f2ec01a4effa2b4d676517349f7933f9742f6f0c4a"
            },
            "downloads": -1,
            "filename": "okonomiyaki-2.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "1c09a89b06497335b338f7b2ef5182e2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 8258686,
            "upload_time": "2024-08-23T15:41:28",
            "upload_time_iso_8601": "2024-08-23T15:41:28.960824Z",
            "url": "https://files.pythonhosted.org/packages/cc/ee/dddfa93a4153057a51053fa9d387a947dfcdb399ee7a473d4c844bed5834/okonomiyaki-2.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-23 15:41:28",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "enthought",
    "github_project": "okonomiyaki",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "lcname": "okonomiyaki"
}
        
Elapsed time: 2.73425s