Metadata-Version: 2.1
Name: yamlable
Version: 0.3.0
Summary: A thin wrapper of PyYaml to convert Python objects to YAML and back.
Home-page: https://github.com/smarie/python-yamlable
Maintainer: Sylvain Marié
Maintainer-email: sylvain.marie@schneider-electric.com
License: BSD 3-Clause
Download-URL: https://github.com/smarie/python-yamlable/tarball/0.3.0
Keywords: yaml file parsing parse load dump read object oo oriented codec format plugin pyYaml
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: License :: OSI Approved :: BSD License
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Requires-Dist: pyyaml

yamlable
========

*Convert Python objects to YAML and back.*

|Build Status| |Tests Status| |codecov| |Documentation| |PyPI|

**This is the readme for developers.** The documentation for users is
available here: https://smarie.github.io/python-yamlable/

Want to contribute ?
--------------------

Contributions are welcome ! Simply fork this project on github, commit
your contributions, and create pull requests.

Here is a non-exhaustive list of interesting open topics:
https://github.com/smarie/python-yamlable/issues

Running the tests
-----------------

This project uses ``pytest``.

.. code:: bash

    pytest -v yamlable/tests/

You may need to install requirements for setup beforehand, using

.. code:: bash

    pip install -r ci_tools/requirements-test.txt

Packaging
---------

This project uses ``setuptools_scm`` to synchronise the version number.
Therefore the following command should be used for development snapshots
as well as official releases:

.. code:: bash

    python setup.py egg_info bdist_wheel rotate -m.whl -k3

You need to `generate
code <##building-from-sources--notes-on-this-projects-design-principles>`__
before packaging.

You also may need to install requirements for setup beforehand, using

.. code:: bash

    pip install -r ci_tools/requirements-setup.txt

Generating the documentation page
---------------------------------

This project uses ``mkdocs`` to generate its documentation page.
Therefore building a local copy of the doc page may be done using:

.. code:: bash

    mkdocs build

You may need to install requirements for doc beforehand, using

.. code:: bash

    pip install -r ci_tools/requirements-doc.txt

Generating the test reports
---------------------------

The following commands generate the html test report and the associated
badge.

.. code:: bash

    pytest --junitxml=junit.xml -v yamlable/tests/
    ant -f ci_tools/generate-junit-html.xml
    python ci_tools/generate-junit-badge.py

PyPI Releasing memo
~~~~~~~~~~~~~~~~~~~

This project is now automatically deployed to PyPI when a tag is
created. Anyway, for manual deployment we can use:

.. code:: bash

    twine upload dist/* -r pypitest
    twine upload dist/*

.. |Build Status| image:: https://travis-ci.org/smarie/python-yamlable.svg?branch=master
   :target: https://travis-ci.org/smarie/python-yamlable
.. |Tests Status| image:: https://smarie.github.io/python-yamlable/junit/junit-badge.svg?dummy=8484744
   :target: https://smarie.github.io/python-yamlable/junit/report.html
.. |codecov| image:: https://codecov.io/gh/smarie/python-yamlable/branch/master/graph/badge.svg
   :target: https://codecov.io/gh/smarie/python-yamlable
.. |Documentation| image:: https://img.shields.io/badge/docs-latest-blue.svg
   :target: https://smarie.github.io/python-yamlable/
.. |PyPI| image:: https://img.shields.io/badge/PyPI-yamlable-blue.svg
   :target: https://pypi.python.org/pypi/yamlable/


