{ "info": { "author": "UAVCAN Development Team", "author_email": "uavcan-maintainers@googlegroups.com", "bugtrack_url": null, "classifiers": [ "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Topic :: Scientific/Engineering", "Topic :: Software Development :: Embedded Systems", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: Software Development :: Object Brokering", "Topic :: System :: Distributed Computing", "Topic :: System :: Networking" ], "description": "Full-featured UAVCAN stack in Python\n====================================\n\n[![Travis CI](https://travis-ci.org/UAVCAN/pyuavcan.svg)](https://travis-ci.org/UAVCAN/pyuavcan)\n[![AppVeyor CI](https://ci.appveyor.com/api/projects/status/2vv83afj3dxqibi5?svg=true)](https://ci.appveyor.com/project/Zubax/pyuavcan)\n[![RTFD](https://readthedocs.org/projects/pyuavcan/badge/)](https://pyuavcan.readthedocs.io/)\n[![Coverage Status](https://coveralls.io/repos/github/UAVCAN/pyuavcan/badge.svg)](https://coveralls.io/github/UAVCAN/pyuavcan)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=UAVCAN_pyuavcan&metric=alert_status)](https://sonarcloud.io/dashboard?id=UAVCAN_pyuavcan)\n[![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=UAVCAN_pyuavcan&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=UAVCAN_pyuavcan)\n[![Lines of Code](https://sonarcloud.io/api/project_badges/measure?project=UAVCAN_pyuavcan&metric=ncloc)](https://sonarcloud.io/dashboard?id=UAVCAN_pyuavcan)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pyuavcan.svg)](https://pypi.org/project/pyuavcan/)\n[![Forum](https://img.shields.io/discourse/https/forum.uavcan.org/users.svg)](https://forum.uavcan.org)\n\nPyUAVCAN is a full-featured implementation of the UAVCAN protocol stack intended for non-embedded,\nuser-facing applications such as GUI software, diagnostic tools, automation scripts, prototypes, and various R&D cases.\nPyUAVCAN consists of a Python library (package) and a simple CLI tool for basic diagnostics and shell script automation.\n\nPyUAVCAN aims to support all features and transport layers of UAVCAN,\nbe portable across all major platforms supporting Python,\nand be extensible to permit low-effort experimentation and testing of new protocol capabilities.\n\nIt is designed to support **GNU/Linux**, **MS Windows**, and **macOS** as first-class target platforms.\nHowever, the library does not rely on any platform-specific capabilities,\nso it should be usable with other systems as well.\n\n[UAVCAN](https://uavcan.org) is an open lightweight data bus standard designed for reliable intravehicular\ncommunication in aerospace and robotic applications via\nCAN bus, Ethernet, RS-485, IEEE 802.15.4, and other robust transports.\nThe acronym *UAVCAN* stands for ***Uncomplicated Application-level Vehicular Communication And Networking***.\n\n**READ THE DOCS: [pyuavcan.readthedocs.io](https://pyuavcan.readthedocs.io/)**\n\n**Ask questions: [forum.uavcan.org](https://forum.uavcan.org/)**\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": "https://uavcan.org", "keywords": "uavcan,data-bus,can-bus,ethernet,vehicular,onboard-networking,avionics,communication-protocol", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "pyuavcan", "package_url": "https://pypi.org/project/pyuavcan/", "platform": "", "project_url": "https://pypi.org/project/pyuavcan/", "project_urls": { "Homepage": "https://uavcan.org" }, "release_url": "https://pypi.org/project/pyuavcan/0.4.0/", "requires_dist": [ "pydsdl (~=1.0.3)", "numpy (~=1.16)", "nunavut (==0.1.2)", "ruamel.yaml (<2.0,>=0.15.99) ; extra == 'cli'", "requests (~=2.21) ; extra == 'cli'", "simplejson (~=3.16) ; extra == 'cli'", "python-can[serial] (~=3.3) ; extra == 'transport_can_pythoncan'", "pyserial (~=3.4) ; extra == 'transport_serial'" ], "requires_python": "", "summary": "A full-featured implementation of the UAVCAN protocol stack in Python.", "version": "0.4.0" }, "last_serial": 5968157, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "b2045644dc41d2c58a05bed8151ecc93", "sha256": "f8b8553f6ac368b0f31b2c0beadaf1b19b1598bd1f2c22fcab132cd753013a3e" }, "downloads": -1, "filename": "pyuavcan-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b2045644dc41d2c58a05bed8151ecc93", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 97533, "upload_time": "2019-06-03T14:16:04", "url": "https://files.pythonhosted.org/packages/5d/a1/35d2d239b07546bb1c55e42622e53bab036b93c57556b4ab9e419b664bba/pyuavcan-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "39fde9a473a5ba4dc733f861b2236952", "sha256": "1226f96ed9a6309fe8d004cbf427814821b2eff6432a9ea1fb6ca4e343b6b8eb" }, "downloads": -1, "filename": "pyuavcan-0.1.0.tar.gz", "has_sig": false, "md5_digest": "39fde9a473a5ba4dc733f861b2236952", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 69067, "upload_time": "2019-06-03T14:16:07", "url": "https://files.pythonhosted.org/packages/63/63/fbee88b6ba2f941203909bea7947aa0646103b30cab5cdc1fb2dd2abbf2f/pyuavcan-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "ed2a59d80677db61df8398a06f3f4d6a", "sha256": "6c4793197e37319b4f8ceb514a308525c243bdee3f16b0d6fba5f3a58af4d955" }, "downloads": -1, "filename": "pyuavcan-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ed2a59d80677db61df8398a06f3f4d6a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 183911, "upload_time": "2019-08-07T12:31:08", "url": "https://files.pythonhosted.org/packages/64/0e/1c648d2c69a6f80b24cfdc17c0c959ad5fc093b0ececb522b64647946838/pyuavcan-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5a65d95f98aeee38acaec9ebe624ce28", "sha256": "5fa6745b6196e8513408ad46a363d98d069b9e6306e3b6ba85ce08c0ee284477" }, "downloads": -1, "filename": "pyuavcan-0.2.0.tar.gz", "has_sig": false, "md5_digest": "5a65d95f98aeee38acaec9ebe624ce28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 117718, "upload_time": "2019-08-07T12:31:10", "url": "https://files.pythonhosted.org/packages/f1/e6/1d70b6707ae5120f5ba4a96d3a32ae296fcf60c86c58e765ec4a2bb9703d/pyuavcan-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "7b76cdd7dfff871c7e9ad45543ac7377", "sha256": "3d66d8b7d05e9bcf2032de5bf3e5bcbbedd4f5a265d1dbb0ddf25835e0d94c82" }, "downloads": -1, "filename": "pyuavcan-0.3.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7b76cdd7dfff871c7e9ad45543ac7377", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 284651, "upload_time": "2019-10-11T08:32:16", "url": "https://files.pythonhosted.org/packages/9f/7c/fea466b6f9dc8a50679762ead9ae3b6b41d671f10774858d8623a6f62b2e/pyuavcan-0.3.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9475eb8e1f8727e9c5ea48816bb858ec", "sha256": "1d77da296df407ca727c8714947e7f11e45e91d1f7d733845d494b839f703fb0" }, "downloads": -1, "filename": "pyuavcan-0.3.0.tar.gz", "has_sig": false, "md5_digest": "9475eb8e1f8727e9c5ea48816bb858ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 193113, "upload_time": "2019-10-11T08:32:19", "url": "https://files.pythonhosted.org/packages/be/30/9d1d1445e3453a9ec3c792a1b82caf9c7c9ecbcd283c12e0d421bdc2fef3/pyuavcan-0.3.0.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "33ef61ff152f562dd504ec4b5e5184f6", "sha256": "816dc54ed4f44a997daf0fb7a17266343c256092959e9ee98a648c44e8774d98" }, "downloads": -1, "filename": "pyuavcan-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "33ef61ff152f562dd504ec4b5e5184f6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 284787, "upload_time": "2019-10-13T17:49:43", "url": "https://files.pythonhosted.org/packages/6b/ed/4900920662c4ffa727de0ae2c731e5cbf3fa40fd08ebc42d40858f89bcc6/pyuavcan-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "586887126be2948e51189f285a2dd9af", "sha256": "644203ddbc2393f7a0c9f554f2a472120df4126bce457653600f9a0bfad6c1b2" }, "downloads": -1, "filename": "pyuavcan-0.4.0.tar.gz", "has_sig": false, "md5_digest": "586887126be2948e51189f285a2dd9af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 192938, "upload_time": "2019-10-13T17:49:46", "url": "https://files.pythonhosted.org/packages/15/db/22646708457797eca770ca576bba0bc3aeb7cec1cfbebf99f87d7fb9f3af/pyuavcan-0.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "33ef61ff152f562dd504ec4b5e5184f6", "sha256": "816dc54ed4f44a997daf0fb7a17266343c256092959e9ee98a648c44e8774d98" }, "downloads": -1, "filename": "pyuavcan-0.4.0-py3-none-any.whl", "has_sig": false, "md5_digest": "33ef61ff152f562dd504ec4b5e5184f6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 284787, "upload_time": "2019-10-13T17:49:43", "url": "https://files.pythonhosted.org/packages/6b/ed/4900920662c4ffa727de0ae2c731e5cbf3fa40fd08ebc42d40858f89bcc6/pyuavcan-0.4.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "586887126be2948e51189f285a2dd9af", "sha256": "644203ddbc2393f7a0c9f554f2a472120df4126bce457653600f9a0bfad6c1b2" }, "downloads": -1, "filename": "pyuavcan-0.4.0.tar.gz", "has_sig": false, "md5_digest": "586887126be2948e51189f285a2dd9af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 192938, "upload_time": "2019-10-13T17:49:46", "url": "https://files.pythonhosted.org/packages/15/db/22646708457797eca770ca576bba0bc3aeb7cec1cfbebf99f87d7fb9f3af/pyuavcan-0.4.0.tar.gz" } ] }