{ "info": { "author": "Yago Gonz\u00e1lez", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: DFSG approved", "License :: OSI Approved", "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6" ], "description": "# yamole\n\n[![Build Status](https://travis-ci.org/YagoGG/yamole.svg?branch=master)](https://travis-ci.org/YagoGG/yamole)\n[![PyPI package](https://img.shields.io/pypi/v/yamole.svg)](https://pypi.org/project/yamole)\n\nDig through the JSON references inside a YAML file, the kind of situation\nyou may run into when parsing [OpenAPI](https://www.openapis.org/) files.\n\nThe result is a single, big YAML file with all the references resolved (i.e.\nwith their contents replaced in the corresponding places).\n\nyamole also includes small features that help you parse OpenAPI files, like\ncombining all the elements in an\n[`allOf`](https://swagger.io/docs/specification/data-models/oneof-anyof-allof-not/#allof)\nkey into a single object.\n\n## Installation\n\nyamole is available as a PyPI module, so you can install it using `pip`:\n\n $ pip install yamole\n\n## Usage\n\nUsing yamole is pretty straightforward. The parser is available through the\n`YamoleParser` class:\n\n```python\nwith open('input_file.yaml') as file:\n parser = YamoleParser(file,\n merge_allof=False, # Combine allOfs into single dicts and disable\n # inheritance for \"example\" keys (def: True)\n max_depth=314) # Allow a maximum of 314 nesting levels (def: 1000)\n\noutput_str = parser.dumps()\n\nparser.data['some-key'] # The dict with the parsed file's structure\n```\n\n## Testing\n\nTo test that yamole works properly, you can run:\n\n $ pip install -r requirements.txt\n $ python tests/test.py\n\nThis will run the parser against a specific test case that makes use of all of\nyamole's features, and will compare the result with a fixture\n(`tests/expected.yaml`).\n\n---\n\n(c) 2018 Yago Gonz\u00e1lez. All rights reserved\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "yaml json references parser openapi swagger", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "yamole", "package_url": "https://pypi.org/project/yamole/", "platform": "", "project_url": "https://pypi.org/project/yamole/", "project_urls": { "Source": "https://github.com/YagoGG/yamole/", "Tracker": "https://github.com/YagoGG/yamole/issues" }, "release_url": "https://pypi.org/project/yamole/2.1.6/", "requires_dist": [ "pyyaml" ], "requires_python": "", "summary": "A YAML parser that resolves JSON references", "version": "2.1.6" }, "last_serial": 4663616, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "6d9346e264234428d1d1606e39291b8a", "sha256": "55fb72ba13c5ed5368332a934ef9ced9ce7e68766fe7e7c2363013f5bf6c3a29" }, "downloads": -1, "filename": "yamole-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6d9346e264234428d1d1606e39291b8a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3096, "upload_time": "2018-05-20T18:50:58", "url": "https://files.pythonhosted.org/packages/e9/b4/c21e942c837c43cf7f5b1190169e2ede38008c197ef0046767c5318085be/yamole-1.0.0-py2.py3-none-any.whl" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "52595599175671764a0c6d8989764acf", "sha256": "e9e3cec02407eb576e4018cc101054b314cacaa2c9588320731d9d3c981a05fa" }, "downloads": -1, "filename": "yamole-1.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "52595599175671764a0c6d8989764acf", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3610, "upload_time": "2018-05-21T18:16:53", "url": "https://files.pythonhosted.org/packages/c7/a6/31849fa23d19fc1c09f39a7e140f8e55827cbc50660e9b88bf25bc3ccb23/yamole-1.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "496b8d7aad9f3a373049dd8f2d82e322", "sha256": "91c671f0656936973cd4ab344f0f72cc785d27ed70cc70ef6337807034df4273" }, "downloads": -1, "filename": "yamole-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "496b8d7aad9f3a373049dd8f2d82e322", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3606, "upload_time": "2018-05-21T18:16:54", "url": "https://files.pythonhosted.org/packages/9c/9d/78a44316d34e29678a4c87a95ab18c54ff955e67a206088973390a7c2158/yamole-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b1f47ce6dadf5eb03ca5128c51055812", "sha256": "91bf2735d7d4e603ea4f4ab66cbcd27066d612ba5122ab0f15f213d97927a21a" }, "downloads": -1, "filename": "yamole-1.1.0.tar.gz", "has_sig": false, "md5_digest": "b1f47ce6dadf5eb03ca5128c51055812", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3470, "upload_time": "2018-05-21T18:16:57", "url": "https://files.pythonhosted.org/packages/6a/2d/0a8afe78cf10411c625ec5e6a97af3525c68242228db00fb11c4dcdff3d8/yamole-1.1.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "e430c1985c821d7bac8d87f005d89578", "sha256": "0e8cfd5824d0650ac35a6c337681ea0af632ad3b759d3ee8b96a41410363eb40" }, "downloads": -1, "filename": "yamole-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "e430c1985c821d7bac8d87f005d89578", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3659, "upload_time": "2018-05-21T19:12:26", "url": "https://files.pythonhosted.org/packages/60/58/925f1631748d5f2e3defc6e3c70d8ebc6fe2d985e2ae8f0a229d23ad0ec3/yamole-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5447549bacee75457be0e2882f7cf9c6", "sha256": "da559324782950c9ae5658a746a22be22e4ac4b9c0c13fd98917f9381f8d6b7e" }, "downloads": -1, "filename": "yamole-2.0.0.tar.gz", "has_sig": false, "md5_digest": "5447549bacee75457be0e2882f7cf9c6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3508, "upload_time": "2018-05-21T19:12:27", "url": "https://files.pythonhosted.org/packages/25/ef/158d98c17e8f4641d8a2a33334462985f7a98f1051e094c1b8ce2e8501c0/yamole-2.0.0.tar.gz" } ], "2.0.1": [ { "comment_text": "", "digests": { "md5": "d4015d2bc8651898702d9a1f1703e3ef", "sha256": "e6e56b7977dab74308d43d1593f5e0e9f37d6860dec31d6d00b7f9a93c6b66fb" }, "downloads": -1, "filename": "yamole-2.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "d4015d2bc8651898702d9a1f1703e3ef", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3709, "upload_time": "2018-05-21T19:22:13", "url": "https://files.pythonhosted.org/packages/a2/4d/b4608a6b84b85fad9d6406a9629b8233d6d5ec45394bb0a36967c6ec1572/yamole-2.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "38d92b75b5654f7dc4ea02970d5da83f", "sha256": "91e95f9a7ec07c7a9739f8c7d019865d2bcf1dee2af605dd89ed9a28c9c2990e" }, "downloads": -1, "filename": "yamole-2.0.1.tar.gz", "has_sig": false, "md5_digest": "38d92b75b5654f7dc4ea02970d5da83f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3564, "upload_time": "2018-05-21T19:22:14", "url": "https://files.pythonhosted.org/packages/63/7c/f6bdfd550d20a71a4a005eabd9722ee106266285f662b3c627bec8857bbe/yamole-2.0.1.tar.gz" } ], "2.1.0": [ { "comment_text": "", "digests": { "md5": "94eaef9c06b7f5a005d22aa4fbca87fa", "sha256": "248bdd3e3c3789d71aac6a9fc5150c5d0370185db1ea98907ffdd24d7155a561" }, "downloads": -1, "filename": "yamole-2.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "94eaef9c06b7f5a005d22aa4fbca87fa", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4357, "upload_time": "2018-05-25T20:52:01", "url": "https://files.pythonhosted.org/packages/42/7b/8d36b58d350d7fe98b2b7a3d7778c09a5b623f60ec7fa7fb217b87fc31d9/yamole-2.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "eb3bc5292a88424cf885ca1faa400a45", "sha256": "31a3395205cee8e195da33b0e9baccb77c0762536022c7d0a8f7bdb54d78b467" }, "downloads": -1, "filename": "yamole-2.1.0.tar.gz", "has_sig": false, "md5_digest": "eb3bc5292a88424cf885ca1faa400a45", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4196, "upload_time": "2018-05-25T20:52:03", "url": "https://files.pythonhosted.org/packages/47/de/2b99db6e9dab5719912b736cc3bdcba770f7e564d9dbd26785024ecac1a1/yamole-2.1.0.tar.gz" } ], "2.1.1": [ { "comment_text": "", "digests": { "md5": "9acf4ae04249f76d18d042aed23ab439", "sha256": "d67a68248e73922b839b3a1526feaf1365f8e5291cc88b6d28ce4d09730496a5" }, "downloads": -1, "filename": "yamole-2.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "9acf4ae04249f76d18d042aed23ab439", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4372, "upload_time": "2018-05-25T22:50:56", "url": "https://files.pythonhosted.org/packages/b2/91/5858a4a5692a810290d212260202cdf6199b764a0d5ae91ef86cc9516d25/yamole-2.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4d31cbef4f8f8313add5de8f4f5aed7f", "sha256": "ba311fb81e25a63914c81c08952b81f7abd3c36e607e369051df540296c4d2db" }, "downloads": -1, "filename": "yamole-2.1.1.tar.gz", "has_sig": false, "md5_digest": "4d31cbef4f8f8313add5de8f4f5aed7f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4245, "upload_time": "2018-05-25T22:50:58", "url": "https://files.pythonhosted.org/packages/b5/d2/a5e84c1b5ee25a18a11bbc568d64cc85e81f9a65427b2d94bb08c6f32507/yamole-2.1.1.tar.gz" } ], "2.1.2": [ { "comment_text": "", "digests": { "md5": "158d0e2cef502ab034fc9324fb64319d", "sha256": "e75173948837d6a28944df39c3d9e791d96aae082ed400166e3036c4ffa5a127" }, "downloads": -1, "filename": "yamole-2.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "158d0e2cef502ab034fc9324fb64319d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4374, "upload_time": "2018-05-30T20:00:18", "url": "https://files.pythonhosted.org/packages/55/32/20a7dc1d7a5a98e9838fceee8616c28c075f30235909d06c95794593466a/yamole-2.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a93aa3f35e05977926cfc95b09885fe3", "sha256": "a870fcb54a5b8e9593ab0e3695795d7f8a458b93c84933e021d245aab20d9522" }, "downloads": -1, "filename": "yamole-2.1.2.tar.gz", "has_sig": false, "md5_digest": "a93aa3f35e05977926cfc95b09885fe3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4248, "upload_time": "2018-05-30T20:00:20", "url": "https://files.pythonhosted.org/packages/35/31/5f26891f9107d466a6a6266292238c8524abad40ef63c738ac8e9938a453/yamole-2.1.2.tar.gz" } ], "2.1.3": [ { "comment_text": "", "digests": { "md5": "9b5db1720eaa08a23e582af63d313e09", "sha256": "5951101a1ebcf717e0b4abb8a738cec4b64ca14febf42749d2cc2f6b80a3a115" }, "downloads": -1, "filename": "yamole-2.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "9b5db1720eaa08a23e582af63d313e09", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4387, "upload_time": "2018-06-04T19:53:20", "url": "https://files.pythonhosted.org/packages/ad/57/7666785427711d40d3d57ba8b2a6733a075beb23763f039f0d823b22218d/yamole-2.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "35a7f8760c2b4d3659ea7c6933a0999c", "sha256": "4a921c6cd9ba1cd3200153bc2bbbb847c7229233ea3c5f544756bc0967f8313c" }, "downloads": -1, "filename": "yamole-2.1.3.tar.gz", "has_sig": false, "md5_digest": "35a7f8760c2b4d3659ea7c6933a0999c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4259, "upload_time": "2018-06-04T19:53:21", "url": "https://files.pythonhosted.org/packages/f3/a7/683b1ff9f7cc2cb05e19993ffdd5b325ddb62024e557e6d011cb155ca480/yamole-2.1.3.tar.gz" } ], "2.1.4": [ { "comment_text": "", "digests": { "md5": "697fa54abe50e7ab761e3797ed796e1d", "sha256": "3bb11dba35bd028565585dc7a80832b0f0a5dfa636e6d164837601ab3a50896d" }, "downloads": -1, "filename": "yamole-2.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "697fa54abe50e7ab761e3797ed796e1d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4519, "upload_time": "2018-06-10T20:05:08", "url": "https://files.pythonhosted.org/packages/c9/19/c08ad2236672867167d41d434bd99cd30abdb9b6aa206db51d59085ada47/yamole-2.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "71be6eef265bb186ad391a40711f7ecf", "sha256": "35de5b139fa13f90fcc0f81b388a41c9f10bcc81028b7329401aa250964cb6ad" }, "downloads": -1, "filename": "yamole-2.1.4.tar.gz", "has_sig": false, "md5_digest": "71be6eef265bb186ad391a40711f7ecf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4385, "upload_time": "2018-06-10T20:05:09", "url": "https://files.pythonhosted.org/packages/fd/cf/34b7532398a10f0e4e0c1afb80b71a617c0f1a623d27d4abbe23428ecf28/yamole-2.1.4.tar.gz" } ], "2.1.5": [ { "comment_text": "", "digests": { "md5": "54298560c4881413bf35545f9f2904ea", "sha256": "a9d014bbd62b863e94f37c57761013a7406479b94151310d3e954a420736b71b" }, "downloads": -1, "filename": "yamole-2.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "54298560c4881413bf35545f9f2904ea", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4520, "upload_time": "2018-06-20T22:36:02", "url": "https://files.pythonhosted.org/packages/6d/8b/06e6179598d40cbca0a5027331864d723814932ece5a950f92b287730d43/yamole-2.1.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "11a7948ba8f32a2f2df2df5705ed57ec", "sha256": "96df8d86c6660e5705993ce30d31350f98c1c6a7640c1e599984cd7c965aa35c" }, "downloads": -1, "filename": "yamole-2.1.5.tar.gz", "has_sig": false, "md5_digest": "11a7948ba8f32a2f2df2df5705ed57ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4391, "upload_time": "2018-06-20T22:36:03", "url": "https://files.pythonhosted.org/packages/3a/6f/cdc9af2e0d8caa87c091b2b005d15d796013a3b57a65674afda4077c6e8c/yamole-2.1.5.tar.gz" } ], "2.1.6": [ { "comment_text": "", "digests": { "md5": "c31830f5116def3144ee64b9a5227caf", "sha256": "ea094cc8acee25316c41ab515921253b8dff965e04ac68e922e11bf86aa1cee4" }, "downloads": -1, "filename": "yamole-2.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "c31830f5116def3144ee64b9a5227caf", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4655, "upload_time": "2019-01-05T15:50:01", "url": "https://files.pythonhosted.org/packages/ac/fa/fe7dc05e24ebbe6a539d9328624f9b2fd71723e9adf01d25c717b437fcab/yamole-2.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a12567ae4eb5f62fb81f7e16507e8e50", "sha256": "e9b9af803cd856517a5e0ce2a44820c49b7626c83117118a064622829aa8c5a7" }, "downloads": -1, "filename": "yamole-2.1.6.tar.gz", "has_sig": false, "md5_digest": "a12567ae4eb5f62fb81f7e16507e8e50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4515, "upload_time": "2019-01-05T15:50:03", "url": "https://files.pythonhosted.org/packages/b7/1c/5ebba2ea30b68d95a626c73830de17a585bda6b013726da819269ef4601c/yamole-2.1.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c31830f5116def3144ee64b9a5227caf", "sha256": "ea094cc8acee25316c41ab515921253b8dff965e04ac68e922e11bf86aa1cee4" }, "downloads": -1, "filename": "yamole-2.1.6-py3-none-any.whl", "has_sig": false, "md5_digest": "c31830f5116def3144ee64b9a5227caf", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4655, "upload_time": "2019-01-05T15:50:01", "url": "https://files.pythonhosted.org/packages/ac/fa/fe7dc05e24ebbe6a539d9328624f9b2fd71723e9adf01d25c717b437fcab/yamole-2.1.6-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a12567ae4eb5f62fb81f7e16507e8e50", "sha256": "e9b9af803cd856517a5e0ce2a44820c49b7626c83117118a064622829aa8c5a7" }, "downloads": -1, "filename": "yamole-2.1.6.tar.gz", "has_sig": false, "md5_digest": "a12567ae4eb5f62fb81f7e16507e8e50", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4515, "upload_time": "2019-01-05T15:50:03", "url": "https://files.pythonhosted.org/packages/b7/1c/5ebba2ea30b68d95a626c73830de17a585bda6b013726da819269ef4601c/yamole-2.1.6.tar.gz" } ] }