Generate Pythonic schematics representation for ProtoBuf definition files.
Project description
===================
ProtoBuf Schematics
===================
.. image:: https://img.shields.io/pypi/v/protobuf_schematics.svg
:target: https://pypi.python.org/pypi/protobuf_schematics
.. image:: https://img.shields.io/travis/AlmogCohen/protobuf_schematics.svg
:target: https://travis-ci.org/AlmogCohen/protobuf-schematics
.. image:: https://readthedocs.org/projects/protobuf-schematics/badge/?version=latest
:target: https://protobuf-schematics.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
Generate Pythonic Schematics_ representation of ProtoBuf .proto files.
The motive behind it is to create a comfortable mapping in Python to work with ProtoBuf messages represented in JSON or any other serializable form.
Most of the existing interfaces I've found optimize for performance and (apparently) a hellish pythonic interface. This package come to solve that by translating to ProtoBuf **.proto** files to nice and clean Schematics_ models. The hellish ProtoBuf API is converted in the awesome and fluent Schematics_ flow.
**Notice**: Performance was not considered while developing this package.
* Free software: Apache Software License 2.0
* Documentation: https://protobuf-schematics.readthedocs.io.
.. _Schematics: https://github.com/schematics/schematics
Features
--------
* TODO
Development
-----------
First, install the Pipfile and create the proper virtual environment::
pipenv install --dev
To check linting with **flake8**, run::
make lint
To run the unittests against your working python version::
py.test
To see coverage report::
make coverage
To run tests against all supported python versions::
tox
To make the docs (which will be automatically published to readthedocs on commits to the master branch)::
make docs
Credits
-------
The parsing work of **.proto** files is provided thanks to the awesome guys at PyroBuf_.
This package was created with Cookiecutter_ and the `elgertam/cookiecutter-pipenv`_ project template, based on `audreyr/cookiecutter-pypackage`_.
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`elgertam/cookiecutter-pipenv`: https://github.com/elgertam/cookiecutter-pipenv
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
.. _PyroBuf: https://github.com/appnexus/pyrobuf
=======
History
=======
In Progress
___________
* Add more meaningful unittests.
* Add more explanations for how load ProtoBuf encoded messages with the generated classes.
* Update the setup.py to PyroBuf 0.8.5 on PyPi when they will release latest version to PyPi.
0.1.0 (2019-01-13)
------------------
* First release on PyPI.
* CLI interface for compiling a given proto file to schematics definition file.
ProtoBuf Schematics
===================
.. image:: https://img.shields.io/pypi/v/protobuf_schematics.svg
:target: https://pypi.python.org/pypi/protobuf_schematics
.. image:: https://img.shields.io/travis/AlmogCohen/protobuf_schematics.svg
:target: https://travis-ci.org/AlmogCohen/protobuf-schematics
.. image:: https://readthedocs.org/projects/protobuf-schematics/badge/?version=latest
:target: https://protobuf-schematics.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status
Generate Pythonic Schematics_ representation of ProtoBuf .proto files.
The motive behind it is to create a comfortable mapping in Python to work with ProtoBuf messages represented in JSON or any other serializable form.
Most of the existing interfaces I've found optimize for performance and (apparently) a hellish pythonic interface. This package come to solve that by translating to ProtoBuf **.proto** files to nice and clean Schematics_ models. The hellish ProtoBuf API is converted in the awesome and fluent Schematics_ flow.
**Notice**: Performance was not considered while developing this package.
* Free software: Apache Software License 2.0
* Documentation: https://protobuf-schematics.readthedocs.io.
.. _Schematics: https://github.com/schematics/schematics
Features
--------
* TODO
Development
-----------
First, install the Pipfile and create the proper virtual environment::
pipenv install --dev
To check linting with **flake8**, run::
make lint
To run the unittests against your working python version::
py.test
To see coverage report::
make coverage
To run tests against all supported python versions::
tox
To make the docs (which will be automatically published to readthedocs on commits to the master branch)::
make docs
Credits
-------
The parsing work of **.proto** files is provided thanks to the awesome guys at PyroBuf_.
This package was created with Cookiecutter_ and the `elgertam/cookiecutter-pipenv`_ project template, based on `audreyr/cookiecutter-pypackage`_.
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`elgertam/cookiecutter-pipenv`: https://github.com/elgertam/cookiecutter-pipenv
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
.. _PyroBuf: https://github.com/appnexus/pyrobuf
=======
History
=======
In Progress
___________
* Add more meaningful unittests.
* Add more explanations for how load ProtoBuf encoded messages with the generated classes.
* Update the setup.py to PyroBuf 0.8.5 on PyPi when they will release latest version to PyPi.
0.1.0 (2019-01-13)
------------------
* First release on PyPI.
* CLI interface for compiling a given proto file to schematics definition file.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for protobuf_schematics-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | deb13a909689ef2d7b70317c1c74867e055e12c51e683e2cd8ef4b0a92d7c9fe |
|
MD5 | c2dc22a9e20884067d907a06b1754ddf |
|
BLAKE2b-256 | 2b5b357709e2ac99c5542fb18d7b2f5089630e29a8ff593d257067850d40b76d |
Close
Hashes for protobuf_schematics-0.1.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a09ee14c43e211f08ddef0fd7fdda9f23d93cec9eebe47f8d439668a428688a9 |
|
MD5 | 07bc04f86380d5c0182333d44c1b18e2 |
|
BLAKE2b-256 | 42bd445f1b1c1ed0466dc78670344793dd29c38fb10968aaa7b40cdc85f50be3 |