- simpler to use
- lighter dependency (or no dependency at all, depending on python distribution)
- retrocompatible
virtualenv package from pip to acheive virtual environment feature is no longer
needed, except for projects which need to support py2, which is no longer our
case.
Also, reword "virtualenv" to "virtual environment" in doc, to avoid confusion
with pip package name.
Ref #483
* Replace the settings table with multiple sections.
It's easier to read, and easier to maintain. Fixes#251.
* Document external mail server configuration.
Fixes#278
PyMySQL is more difficult to install since its version 0.9 since it now depends
on *cryptography* lib, which in turns depends on OpenSSL and Python dev files.
See https://github.com/PyMySQL/PyMySQL/issues/697
- Use exec to run gunicorn and avoid creating a new process.
- Add the possibility to pass any additional parameters to
gunicorn.
- Use only one gunicorn worker by default as the usual way to
scale the app in production would be to use the scale command
of the cluster scheduler. Additional workers could still be
added by passing the "-w" gunicorn parameter to docker run.
* Add a command to generate configuration examples
Config files are generated from templates (which remplace previous example files).
- solve the issue of hard-to-explain configuration examples
- ease pkg path seeking (avoid it, actually)
- add working defaults for sqlite and unix socket paths (instead of
/replace/me/path/example)
- move settings comments from default_settings.py to ihatemoney.cfg.j2, as it is
the one that will be facing user.
* Use generate-config command in install doc
Also follow the new working defaults of templates for socket and db path.
* Fix doc settings table
On the long term, plaintext tables might destroy humanity.
* Mention templates dir URL in documentation
As requested by @almet
Reality-sync with default_settings.py
Not fixing the whole table layout because
- my text editor doesn't do it ;
- I'm too lazy ;
- #251 is IMHO the real way to this issue :)
* Update to a more flexible admin authentication
* Admin can now access any project
* Add delete and edit options in the dashboard
* Add a link to the dashboard in the nav bar
This is a rework of the changes proposed by @Olivd, so they can apply on top of
the latest master without trouble. All credit goes to him for the code.
* Fix conf files to reflect module renaming
Python module was renamed budget → ihatemoney (see #243 and 6923367).
Now, "budget" relates to nothing.
* Harmonize `APPLICATION_ROOT` doc with other settings
* Fix link markup
* Switch documentation to recomend pip over git
- Update installation instruction
- Clearly separate dev setup from installation
- Some rewordings/section-ization by the way
* Add a hint on how to find the static path
This is a downside on the pip choice over git for installation.
We will have to ease that a bit. By doc or by code, before next release.
* Make the nginx deployment doc more accurate
* Add a big fat warning about SECRET_KEY in doc
* Use absolute imports and rename package to ihatemoney
* Add a ihatemoney command
* Factorize application creation logic
* Refactor the tests
* Update the wsgi.py module with the new create_app() function
* Fix some styling thanks to Flake8.
* Automate Flake8 check in the CI.
* Use a hashed password for ADMIN_PASSWORD
A generate_password_hash manage.py command is provided
Fixes#233
* Print a console warning for users using a clear text ADMIN_PASSWORD
* Reword ADMIN_PASSWORD doc
* Update changelog
* Update CHANGELOG.rst
- say it out loud
- bump to 2.0 (that's the logic of semantic versioning while introducing breaking changes)
* Bump to 2.0 (breaking change)
* Update hashed password warning message
* Mention the generate password hash in the Changelog