{ "info": { "author": "Jazeps Basko", "author_email": "jazeps.basko@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "########\nautoboto\n########\n\n============\nInstallation\n============\n\n.. code-block:: shell\n\n pip install autoboto\n\n============\nIntroduction\n============\n\n* Project Status: **Alpha**. You should use this only for ad-hoc queries when exploring\n the AWS. It's for people who roughly know what they want from AWS, but don't want to\n scroll up and down the long (and good) boto3 documentation pages to find out the\n right method and parameter names. We are in the 21st century and for user-facing code,\n the auto-complete should work.\n\n* All response objects are dataclasses.\n\n* All response objects have a ``response_metadata`` which is an unmodified dictionary\n normally returned under the ``ResponseMetadata`` key of the response dictionary.\n\n* Passing nested objects isn't as easy as passing nested dictionaries, but it has benefits.\n\n* The method names are as in boto3, but parameter names have been changed from ``CamelCase``\n to ``snake_case``.\n\n* Custom methods that boto3 does not generate from botocore (for example, ``s3.upload_file``\n are simply delegated to the boto3 client and have no documentation available (for now).\n The parameter names are as in the original methods.\n\n.. code-block:: python\n\n from autoboto.services import s3\n\n s3_client = s3.Client()\n\n for bucket in s3_client.list_buckets().buckets:\n print(bucket.name)\n for obj in s3_client.list_objects_v2(bucket_name=bucket.name).contents:\n print(f\" - {obj.key}\")\n\nYou can also paginate:\n\n.. code-block:: python\n\n for page in s3_client.list_objects_v2(bucket_name=bucket.name).paginate():\n for obj in page.contents:\n print(f\" - {obj.key}\")\n\n\n===============\nCode Generation\n===============\n\n**You don't need to read this section**. It's about how to generate the autoboto code.\n\nWhen you install ``autoboto`` from pypi.org, the package already contains the generated code for all the services\nthat boto3 supports.\n\nIf you want to re-generate the code, you can do so with the included ``botogen``.\n\nCode generation includes importing the generated modules and instantiating the generated client classes.\nFor this to work you will need to have ``AWS_PROFILE`` environment variable pointing too an AWS profile which\nhas ``region`` set.\n\n.. code-block:: shell\n\n python -m botogen --services s3,cloudformation,lambda\n\n\n----------\nComponents\n----------\n\n* ``autoboto`` - package where the generated code is put just before release. Do not add anything there manually.\n All files in this directory may be overwritten.\n* ``botogen`` - the code responsible for autoboto generation\n* ``botogen.autoboto_template`` - contents of this package end up in the generated ``autoboto`` package.\n\n * ``.gitignore`` file under ``botogen/autoboto_template`` instructs git to ignore all files in the directory.\n This is so that the generated code in ``autoboto`` package is never added to version control.\n Therefore, during autoboto development, when you are adding new files to the ``botogen/autoboto_template``,\n you need to add ``-f`` flag to force-add them to git.\n\n* ``botogen.indentist`` - generic Python code generator\n\n\n-------------------\nDirectory Structure\n-------------------\n\n.. code-block:: text\n\n build/ All build artifacts are put here\n\n release/ Release builds happen here\n\n 20180909_135602/ individual release build directory; Added to sys.path\n autoboto/ generated autoboto package; an augmented copy of botogen/autoboto_complete\n core/\n examples/\n services/\n __init__.py\n\n test/ Test builds happen here\n\n 20180909_135330/ individual test build directory; Added to sys.path\n autoboto_20180909_135330/ generated autoboto package; an augmented copy of botogen/autoboto_complete\n core/\n examples/\n services/\n __init__.py\n\n test-packages/ Target directory for test builds -- where the generated\n packages are put after successful completion of a build\n and tests passing on the generated code.\n\n\n* ``build_dir`` -- a temporary directory in which all the build artifacts are generated. In the example above,\n ``build/test/20180909_135330`` and ``build/release/20180909_135602`` are build directories.\n\n* ``target_package`` -- name of the generated target package; used in import statements in the generated code.\n ``autoboto`` when generating the release; ``autoboto_{timestamp}`` in tests.\n\n* ``target_dir`` -- the directory in which to put the target package.\n By default it's the current directory, but in tests it is ``build/test-packages``.\n\n\n-----\nNotes\n-----\n\nDo not use any imports from ``botogen.autoboto_template`` in tests of the generated code\nbecause the generated code does not import from there. Instead, use the dedicated fixtures\n(for which, ironically, the auto-complete won't work).\n\n-----\nTests\n-----\n\n``tests`` directory contains both unit tests and integration tests. For unit tests you don't need an AWS account.\n\n.. code-block:: shell\n\n pytest tests/unit\n\nTo run tests across multiple Python versions, use tox. To run ``tox``, you need to first generate\nthe autoboto package or it will fail.\n\nIf you're using ``pyenv`` and virtualenvs, don't run ``tox`` from within a virtualenv.\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jbasko/autoboto", "keywords": "", "license": "MIT", "maintainer": "Jazeps Basko", "maintainer_email": "jazeps.basko@gmail.com", "name": "autoboto", "package_url": "https://pypi.org/project/autoboto/", "platform": "", "project_url": "https://pypi.org/project/autoboto/", "project_urls": { "Homepage": "https://github.com/jbasko/autoboto" }, "release_url": "https://pypi.org/project/autoboto/0.4.3/", "requires_dist": [ "boto3", "dataclasses", "typing-inspect", "botocore; extra == 'botogen'", "html2text (==2018.1.9); extra == 'botogen'", "wr-profiles (<5.0,>=4.0.0); extra == 'botogen'", "yapf (==0.23.0); extra == 'botogen'" ], "requires_python": ">=3.6.0", "summary": "boto3 with auto-complete and dataclasses not dicts", "version": "0.4.3" }, "last_serial": 4283283, "releases": { "0.0.3": [ { "comment_text": "", "digests": { "md5": "82c0f5b16d47f528d385b2fa28569285", "sha256": "c53aa40c2456cc3afe413f644e5d81004dc2796a4be494c30a72be997e716769" }, "downloads": -1, "filename": "autoboto-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "82c0f5b16d47f528d385b2fa28569285", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3169446, "upload_time": "2018-09-04T23:23:34", "url": "https://files.pythonhosted.org/packages/83/5e/9470190b0e5d27fd14881b3c81768acadceebd9472f2968f0d2cd910feaa/autoboto-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d57974d98cddec4056bd12b594b82c9c", "sha256": "1cf6b283d24f0287cd996b85cd673642aca2bbd227985d712d250ad50353bd05" }, "downloads": -1, "filename": "autoboto-0.0.3.tar.gz", "has_sig": false, "md5_digest": "d57974d98cddec4056bd12b594b82c9c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2983141, "upload_time": "2018-09-04T23:24:00", "url": "https://files.pythonhosted.org/packages/91/ba/f282d7a2abcf3dea0a7803f329fd9fb8ab6bafc1c9e507d3dc2d4166b749/autoboto-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "3b9c78b547d9f5235d632da6555fd1bc", "sha256": "e313d45a4d6fe1af15043b8fd759c6b62631bd345fb4ae3fa0139df07c3b36b5" }, "downloads": -1, "filename": "autoboto-0.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "3b9c78b547d9f5235d632da6555fd1bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3186545, "upload_time": "2018-09-05T23:47:32", "url": "https://files.pythonhosted.org/packages/c6/fc/5570445305e1bcf047d25ff2a515232cf2158787e9b2e26983942296e4bf/autoboto-0.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "aa58ee96f3feb1eea68e253a6711af3e", "sha256": "5d23fef6109d5972cedd5a5e93135e79807ad6ae8f78482f70b986eee10b81dd" }, "downloads": -1, "filename": "autoboto-0.0.4.tar.gz", "has_sig": false, "md5_digest": "aa58ee96f3feb1eea68e253a6711af3e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2997851, "upload_time": "2018-09-05T23:47:59", "url": "https://files.pythonhosted.org/packages/d4/62/aa02d7896ce9078d6d1f9170c8947bd7f29e20ce17dcd0aa26c96ef194e9/autoboto-0.0.4.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "13406aea9bf9062566447c465678df21", "sha256": "11d2fc5e245dbd31c60c3509a9da4411384369fae0c6f1f0292c4e4091192070" }, "downloads": -1, "filename": "autoboto-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "13406aea9bf9062566447c465678df21", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 3243726, "upload_time": "2018-09-07T00:29:29", "url": "https://files.pythonhosted.org/packages/8c/31/31f7085ab8774bf68a27ad5696f7112fdf7af88e69e7940479da915441dd/autoboto-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8d965fefa85c5bd17cbcdaf0e42860f2", "sha256": "85df8d6eb1f7bf8d650d7c58fbe9769bb52269fe3517e59feb9a87e9e902ded6" }, "downloads": -1, "filename": "autoboto-0.1.0.tar.gz", "has_sig": false, "md5_digest": "8d965fefa85c5bd17cbcdaf0e42860f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3051922, "upload_time": "2018-09-07T00:29:58", "url": "https://files.pythonhosted.org/packages/19/bd/f9e43acdaf81d3acd11f71f7201933f54beab75031a242860913e9597b7b/autoboto-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "753ce4a548200cf564391fb6cfe00c73", "sha256": "032fe20f6dfa62e61415278425c0ad6e20a45db8358d0bb70a0ef3f84e48bd0d" }, "downloads": -1, "filename": "autoboto-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "753ce4a548200cf564391fb6cfe00c73", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3222572, "upload_time": "2018-09-09T22:03:24", "url": "https://files.pythonhosted.org/packages/4b/c3/524afa9ca37ebb84d8550930d6b50681588bd600033773adc8f8112180fe/autoboto-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5fe9e6018537a248f5276f0a5992616b", "sha256": "74cb7ddb4d2339031e84b1c26b25bc2e47190b8c51ba5c515d498df865c97d9e" }, "downloads": -1, "filename": "autoboto-0.2.0.tar.gz", "has_sig": false, "md5_digest": "5fe9e6018537a248f5276f0a5992616b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3024946, "upload_time": "2018-09-09T22:03:50", "url": "https://files.pythonhosted.org/packages/7f/04/557b38da1274eb670de4312ec98dd1d1cdb2d1e5d105e8bdecb3491238a6/autoboto-0.2.0.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "2c874bbfdaa0c60deed24b61691d8be1", "sha256": "b35cb847d061a104ced68f3faec2fc474b0c6925d8e09b866180dbb28a2d77e6" }, "downloads": -1, "filename": "autoboto-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2c874bbfdaa0c60deed24b61691d8be1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3222737, "upload_time": "2018-09-10T23:49:31", "url": "https://files.pythonhosted.org/packages/f9/b5/7d1831b682594a5887a312c4f91f97d795322bd738962d6f81b1047cac6e/autoboto-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ecc2c5da4488fe76b612926b1e748cbd", "sha256": "3c84761639a789e6bd37f25d079aa6d6e46640ed81ed9d04acf0a224ddba0611" }, "downloads": -1, "filename": "autoboto-0.2.2.tar.gz", "has_sig": false, "md5_digest": "ecc2c5da4488fe76b612926b1e748cbd", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3025469, "upload_time": "2018-09-10T23:49:58", "url": "https://files.pythonhosted.org/packages/b8/65/5b63fb48fee858e18886061585ea10f2a27eb944b1ae9d32f7fd72b23624/autoboto-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "38bbba1b8e46f355fe7738a109631892", "sha256": "4535c94d4aa1e7e1904d852790918b5df5e7997391834589e1fa141221413cd8" }, "downloads": -1, "filename": "autoboto-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "38bbba1b8e46f355fe7738a109631892", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3362100, "upload_time": "2018-09-14T23:38:35", "url": "https://files.pythonhosted.org/packages/3a/39/3eb749f0de754009997045ae466791eff362ceb9a6108ad2fd8883951a4a/autoboto-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3af05c4f90b2c0aab3fbd64533ab3f2", "sha256": "3e54568e454022bd7747fa00302cb6fbb80a87a641d0cdf8a50f1bb279411a5d" }, "downloads": -1, "filename": "autoboto-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d3af05c4f90b2c0aab3fbd64533ab3f2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3162624, "upload_time": "2018-09-14T23:38:42", "url": "https://files.pythonhosted.org/packages/fe/e3/b1b4c896ac6166b69bdf3fa73b5ecb98b52f9f0e5fbc21f1723a6a6792f7/autoboto-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "18ba8bacc8c182112070bcdf182e12ef", "sha256": "5fb23bb617c51d940621ea4a4e23093393ccff5d801ab4e771aefab6e52e0128" }, "downloads": -1, "filename": "autoboto-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "18ba8bacc8c182112070bcdf182e12ef", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3377261, "upload_time": "2018-09-16T12:53:16", "url": "https://files.pythonhosted.org/packages/dc/15/b6217942a0772bdae4ac6afb185d7b0cd8e4114f17a5419c09753d44e0ec/autoboto-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6258fedc455276a25a409452522e946b", "sha256": "9a4c9f0e27b29ecf013c6ff745fd984cb85a339ccd32977095ecc35fe1c94915" }, "downloads": -1, "filename": "autoboto-0.4.0.tar.gz", "has_sig": false, "md5_digest": "6258fedc455276a25a409452522e946b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3168594, "upload_time": "2018-09-16T12:53:23", "url": "https://files.pythonhosted.org/packages/3b/bd/ce01a912b34232f14ec40ae2b50e222930e1592cbcaf25d83195007f70cb/autoboto-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "7f40b93ae0d20657f351566c7ccb0d33", "sha256": "86817c80f70c441ba47635d04442eea4bdc65b6eed13bdcd4af2fc2d245e2beb" }, "downloads": -1, "filename": "autoboto-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7f40b93ae0d20657f351566c7ccb0d33", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3272823, "upload_time": "2018-09-16T20:25:24", "url": "https://files.pythonhosted.org/packages/da/ac/de4a4a8d9e7dfee1780fa2a91a8d9bd0f36fc20d291640b220a3dc65a554/autoboto-0.4.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "99357b616a02b78aed19a4a7afaead21", "sha256": "d4496ea04792030a2310645db48ca01594df8774d54990c50972c3720b499fc1" }, "downloads": -1, "filename": "autoboto-0.4.1.tar.gz", "has_sig": false, "md5_digest": "99357b616a02b78aed19a4a7afaead21", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3066319, "upload_time": "2018-09-16T20:25:30", "url": "https://files.pythonhosted.org/packages/1a/b9/1729c6fd796261b075699dae0db50d9aef6bc70e3b595a386ff811fbffac/autoboto-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "d168b356eea615d37798bad5fb79a7ed", "sha256": "ccadf0dc6ab54ef1c0b81b21fc280e4d5656b385769fe0fb80610ae13b8e9013" }, "downloads": -1, "filename": "autoboto-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "d168b356eea615d37798bad5fb79a7ed", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3273196, "upload_time": "2018-09-16T21:37:34", "url": "https://files.pythonhosted.org/packages/9a/76/516cf93c99e20e2b9b524ac14a61553d9e53598128437c8315f7ab4af7bd/autoboto-0.4.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c92f8ba456593753b70f17dcc7e30de3", "sha256": "33575cd63c8879d4710c693087a040f5879c26afbbbcea23f84a71ad1349c51f" }, "downloads": -1, "filename": "autoboto-0.4.2.tar.gz", "has_sig": false, "md5_digest": "c92f8ba456593753b70f17dcc7e30de3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3067196, "upload_time": "2018-09-16T21:37:41", "url": "https://files.pythonhosted.org/packages/62/d0/de3fc223fa1d512fd3d66ba729a9bfa9ad56e1b2499a953a5e6eaaabb66d/autoboto-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "4f0051245a13a6fe7a8b0e07aa175f31", "sha256": "41ed0582e3b03ce6b559da8c4c151a8f60f7187edc84c60ebc8d5390cfa3cb9d" }, "downloads": -1, "filename": "autoboto-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "4f0051245a13a6fe7a8b0e07aa175f31", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3273668, "upload_time": "2018-09-18T11:59:03", "url": "https://files.pythonhosted.org/packages/8f/a2/c6ad41d3f87f020a7e74a52051ff47f16a5efdbf158d0df189d818d56219/autoboto-0.4.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "30b49e50b45a5c043aa3ce2245ec1bd3", "sha256": "753b2ce20dba89cc38444a1ea85fedf23ea8dbd6f5ade642543ec549471c9a65" }, "downloads": -1, "filename": "autoboto-0.4.3.tar.gz", "has_sig": false, "md5_digest": "30b49e50b45a5c043aa3ce2245ec1bd3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3067783, "upload_time": "2018-09-18T11:59:16", "url": "https://files.pythonhosted.org/packages/16/a1/43be0ad187064fbedef913913d41bafcb1a49b78e75220bb4ea353544129/autoboto-0.4.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4f0051245a13a6fe7a8b0e07aa175f31", "sha256": "41ed0582e3b03ce6b559da8c4c151a8f60f7187edc84c60ebc8d5390cfa3cb9d" }, "downloads": -1, "filename": "autoboto-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "4f0051245a13a6fe7a8b0e07aa175f31", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6.0", "size": 3273668, "upload_time": "2018-09-18T11:59:03", "url": "https://files.pythonhosted.org/packages/8f/a2/c6ad41d3f87f020a7e74a52051ff47f16a5efdbf158d0df189d818d56219/autoboto-0.4.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "30b49e50b45a5c043aa3ce2245ec1bd3", "sha256": "753b2ce20dba89cc38444a1ea85fedf23ea8dbd6f5ade642543ec549471c9a65" }, "downloads": -1, "filename": "autoboto-0.4.3.tar.gz", "has_sig": false, "md5_digest": "30b49e50b45a5c043aa3ce2245ec1bd3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6.0", "size": 3067783, "upload_time": "2018-09-18T11:59:16", "url": "https://files.pythonhosted.org/packages/16/a1/43be0ad187064fbedef913913d41bafcb1a49b78e75220bb4ea353544129/autoboto-0.4.3.tar.gz" } ] }