diff --git a/.gitignore b/.gitignore index 6eafef13..35e8b939 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,6 @@ budget/budget.db budget/memory budget/settings.py *.pyc +*.egg-info +dist +.venv diff --git a/AUTHORS b/AUTHORS deleted file mode 100644 index 89a2af3e..00000000 --- a/AUTHORS +++ /dev/null @@ -1,2 +0,0 @@ -The project has been started by Alexis Métaireau and Frédéric Sureau. Friends are -helping since that in the persons of Arnaud Bos and Quentin Roy. diff --git a/CHANGELOG.rst b/CHANGELOG.rst new file mode 100644 index 00000000..a3c05f02 --- /dev/null +++ b/CHANGELOG.rst @@ -0,0 +1,9 @@ +Changelog +========= + +This document describes changes between each past release. + +1.0.0 (unreleased) +------------------ + +- First release of the project. diff --git a/CONTRIBUTORS b/CONTRIBUTORS new file mode 100644 index 00000000..0acc7e87 --- /dev/null +++ b/CONTRIBUTORS @@ -0,0 +1,17 @@ +The project has been started by Alexis Métaireau and Frédéric Sureau. Friends are +helping since that. Here is the complete list of people who gave a hand: + +0livd <0livd@users.noreply.github.com> +A.Avenel +Adam Chainz +Adrien CLERC +Alexis Metaireau +Arnaud Bos +Baptiste Jonglez +Berteh +Feth AREZKI +Frédéric Sureau +Jocelyn Delalande +Mathieu Leplatre +Tinmn +Xavier Mehrenberger diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 00000000..ba99e2a7 --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1,3 @@ +include *.rst +recursive-include budget *.rst *.py *.yaml *.po *.mo *.html *.css *.js *.eot *.svg *.woff *.txt *.png *.ini *.cfg +include LICENSE CONTRIBUTORS CHANGELOG.rst diff --git a/README.rst b/README.rst index e2efecce..30fd094b 100644 --- a/README.rst +++ b/README.rst @@ -98,3 +98,33 @@ End-user You just wanted to have a look at the application and found a bug? Please tell us and go fill a new issue: https://github.com/spiral-project/ihatemoney/issues + +How to release? +=============== + +In order to prepare a new release, we are following the following steps. + +The `fullrelease` command comes from `zest.releaser +`_. + +Install `zest.releaser`: + +.. code-block:: bash + + $ pip install "zest.releaser" + +- Merge remaining pull requests +- Update ``CHANGELOG.rst`` +- Update known good versions of dependencies in ``requirements.txt`` with this command (from inside the venv): + +.. code-block:: bash + + $ pip freeze | grep -v -- '-e' > requirements.txt + +Once this is done, use the "fullrelease" command: + +.. code-block:: bash + + $ fullrelease + +That's all folks! diff --git a/setup.py b/setup.py new file mode 100644 index 00000000..1e592270 --- /dev/null +++ b/setup.py @@ -0,0 +1,69 @@ +# -*- coding: utf-8 -*- +import codecs +import os +from setuptools import setup, find_packages + +here = os.path.abspath(os.path.dirname(__file__)) + + +def read_file(filename): + """Open a related file and return its content.""" + with codecs.open(os.path.join(here, filename), encoding='utf-8') as f: + content = f.read() + return content + + +README = read_file('README.rst') +CHANGELOG = read_file('CHANGELOG.rst') + +REQUIREMENTS = [ + 'flask>=0.11', + 'flask-wtf>=0.13', + 'flask-sqlalchemy', + 'flask-mail>=0.8', + 'Flask-Migrate>=1.8.0', + 'flask-babel', + 'flask-rest', + 'jinja2>=2.6', + 'raven', + 'blinker', + 'six>=1.10', +] + +DEPENDENCY_LINKS = [ +] + +ENTRY_POINTS = { + 'paste.app_factory': [ + 'main = budget.run:main', + ], +} + + +setup(name='ihatemoney', + version='1.0.0', + description='A simple shared budget manager web application.', + long_description="{}\n\n{}".format(README, CHANGELOG), + license='Custom BSD Beerware', + classifiers=[ + "Programming Language :: Python", + "Programming Language :: Python :: 2.7", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: Implementation :: CPython", + "Topic :: Internet :: WWW/HTTP", + "Topic :: Internet :: WWW/HTTP :: WSGI :: Application", + ], + keywords="web budget", + author='Alexis Métaireau & contributors', + author_email='alexis@notmyidea.org', + url='https://github.com/spiral-project/ihatemoney', + packages=find_packages(), + package_data={'': ['*.rst', '*.py', '*.yaml', '*.po', '*.mo', '*.html', + '*.css', '*.js', '*.eot', '*.svg', '*.woff', '*.txt', + '*.png', '*.ini', '*.cfg']}, + include_package_data=True, + zip_safe=False, + install_requires=REQUIREMENTS, + dependency_links=DEPENDENCY_LINKS, +entry_points=ENTRY_POINTS)