{ "info": { "author": "Ond\u0159ej Nejedl\u00fd", "author_email": "jsmesami@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# Connexion Compose\n\n## Purpose\n\nCreate Connexion schema composed from several files in a nested directory structure.\n\nResulting schema automatically includes common defaults, which you can use or override.\n\nRequires Python 3.6+\n\n## Installation\n\n```\npip install connexion-compose\n```\n\n## Usage\n\n```python\nfrom connexion_compose import compile_schema\n\nspec_dir = 'some/dir'\n\nschema = compile_schema(spec_dir)\n```\n\nThe `compile_schema` function traverses the specification directory and all subdirectories, \ncreating YAML attributes according to the directory structure. \nThe bottom level files are \"headers\" and top level features, usually all contained in headers.py.\n\nFor example, given the following directory structure:\n\n```\n\u251c\u2500\u2500 10-header.yml\n\u251c\u2500\u2500 90-footer.yml\n\u251c\u2500\u2500 definitions\n\u2502 \u2514\u2500\u2500 50-whatever.yml\n\u251c\u2500\u2500 parameters\n\u2502 \u251c\u2500\u2500 10-par1.yml\n\u2502 \u2514\u2500\u2500 20-par2.yml\n\u2514\u2500\u2500 x\n \u2514\u2500\u2500 y\n \u2514\u2500\u2500 z.yml\n```\n\nThe resulting object will correspond to the following YAML input:\n\n```\n[contents of 10-header.yml]\n[contents of 90-footer.yml]\ndefinitions:\n [contents of 50-whatever.yml]\nparameters:\n [contents of 10-par1.yml]\n [contents of 20-par2.yml]\nx:\n y:\n [contents of z.yml]\n```\n\n# Defaults\n\n```yaml\nswagger: '2.0'\ninfo:\n contact: {name: Please add a contact name}\n description: Please add a description\n title: Please add a title\n version: 0.0.0\n x-visibility: unlisted\nbasePath: /\nschemes: [https]\nconsumes: [application/json]\nproduces: [application/json]\nsecurityDefinitions:\n Bearer: {in: header, name: Authorization, type: apiKey}\nsecurity:\n- Bearer: []\ndefinitions:\n Currency: {format: iso_4217, type: string}\n Decimal: {format: decimal, type: string}\n Path: {format: path, type: string}\n Timestamp: {format: rfc_3339, type: string}\n URL: {format: url, type: string}\n UUID: {format: uuid, type: string}\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.com/jsmesami/connexion-compose", "keywords": "connexion swagger schema compose", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "connexion-compose", "package_url": "https://pypi.org/project/connexion-compose/", "platform": "", "project_url": "https://pypi.org/project/connexion-compose/", "project_urls": { "Homepage": "https://gitlab.com/jsmesami/connexion-compose" }, "release_url": "https://pypi.org/project/connexion-compose/0.1.5/", "requires_dist": null, "requires_python": ">=3.6", "summary": "Create Connexion schema composed from several files in a nested directory structure.", "version": "0.1.5" }, "last_serial": 4538973, "releases": { "0.1.4": [ { "comment_text": "", "digests": { "md5": "ac28e222046058ebafc1185699db0dd7", "sha256": "23f42e0ff7e247f86fd8c2c5b19d66023bddbe81e0436fa2ac42c7bd7f6cdece" }, "downloads": -1, "filename": "connexion-compose-0.1.4.tar.gz", "has_sig": false, "md5_digest": "ac28e222046058ebafc1185699db0dd7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4296, "upload_time": "2018-10-14T21:12:04", "url": "https://files.pythonhosted.org/packages/c3/d2/e34a4a3d6ad728268ff1921701a88e05a5bc0df74ed8daa4b0577d4c7e37/connexion-compose-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "433a5767c5aa695770690ec579513844", "sha256": "d89c5025f2a80e22009a18846392498264aa4c342607d590f629386896bdce73" }, "downloads": -1, "filename": "connexion-compose-0.1.5.tar.gz", "has_sig": false, "md5_digest": "433a5767c5aa695770690ec579513844", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4415, "upload_time": "2018-11-28T14:56:48", "url": "https://files.pythonhosted.org/packages/6f/ed/bb9e49794f398e8123ce12f2c403cacddc6e06184eea51af91f4ac6144b0/connexion-compose-0.1.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "433a5767c5aa695770690ec579513844", "sha256": "d89c5025f2a80e22009a18846392498264aa4c342607d590f629386896bdce73" }, "downloads": -1, "filename": "connexion-compose-0.1.5.tar.gz", "has_sig": false, "md5_digest": "433a5767c5aa695770690ec579513844", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 4415, "upload_time": "2018-11-28T14:56:48", "url": "https://files.pythonhosted.org/packages/6f/ed/bb9e49794f398e8123ce12f2c403cacddc6e06184eea51af91f4ac6144b0/connexion-compose-0.1.5.tar.gz" } ] }