Metadata-Version: 2.0
Name: onegov.applications
Version: 2017.4.21
Summary: Meta-package containing all OneGov Cloud applications.
Home-page: http://github.com/OneGov/onegov.applications
Author: Seantis GmbH
Author-email: info@seantis.ch
License: GPLv2
Platform: any
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: License :: OSI Approved :: GNU General Public License v2 (GPLv2)
Requires-Dist: onegov.org
Requires-Dist: onegov.town
Requires-Dist: onegov.feriennet
Requires-Dist: onegov.onboarding
Requires-Dist: onegov.election-day
Provides-Extra: test
Requires-Dist: onegov.org[test]; extra == 'test'
Requires-Dist: onegov.town[test]; extra == 'test'
Requires-Dist: onegov.feriennet[test]; extra == 'test'
Requires-Dist: onegov.onboarding[test]; extra == 'test'
Requires-Dist: onegov.election-day[test]; extra == 'test'



Read the docs to `find out what constitutes a OneGov Cloud application <http://onegov.readthedocs.io/en/latest/onegov_cloud_modules.html>`_.

The resulting onegov.applications package in PyPI can be used to install all
OneGov applications in one sweep, with the guarantee that all of them were
tested with the same set of dependencies.

That is the meta-package serves as a known good set of dependencies. As such
it allows for applications to be run in the same process using
`onegov.server <http://github.com/onegov/onegov.server>`_.

Unlike other OneGov applications this package does not use Semantic Versioning,
instead opting for a simple year + build number scheme. For example::

  - 2017.1
  - 2017.2
  - 2017.14
  - 2018.1

Before this package is released all contained applications are tested using
their respective unit/integration tests. For this the latest release of
each application is acquired. Therefore each application should be released
separately first, before being included in onegov.applications.

Create a New Release
--------------------

To create a new release for onegov.applications simply run the following
commands in the repository's folder::

  pip install punch.py
  punch --part build

  git push
  git push --tags

Add a New Application
---------------------

To add a new application edit the ``application.json`` file in the
``onegov/applications`` folder. It will then automatically be included in
the build.

In addition, each application has to be added to the .travis.yml build matrix.

Run the Tests
-------------

Install tox and run it::

    pip install tox
    tox

Limit the tests to a specific python version::

    tox -e py27

Conventions
-----------

Onegov Applications follows PEP8 as close as possible. To test for it run::

    tox -e pep8

Build Status
------------

.. image:: https://travis-ci.org/OneGov/onegov.applications.png
  :target: https://travis-ci.org/OneGov/onegov.applications
  :alt: Build Status

Latest PyPI Release
-------------------

.. image:: https://badge.fury.io/py/onegov.applications.svg
    :target: https://badge.fury.io/py/onegov.applications
    :alt: Latest PyPI Release

License
-------
onegov.applications is released under GPLv2

Changelog
---------

This package does not contain a changelog by itself as it merely acts as a
meta-package for OneGov Cloud applications. To list the changes made to
these applications have a look at the individual application releases.

To find out which application releases were included in a onegov.applications
release have a look at the requirements.txt on GitHub:

https://github.com/OneGov/onegov.applications/releases


