Releases: brianwarner/facade
The "Back to CLI Roots" release
This release brings new features and bug fixes. The most notable new
feature is the addition of a CLI, which in theory makes the web UI (and
its Apache/PHP dependencies) optional. Now in fact, the web UI is still
much nicer to use, and provides prettier statistics on the fly. But if
for some reason you don't want to use it (for example, if you just want
to do a quick one-shot analysis) the CLI could work fine.
The other notable change is one of policy. Previously whenever any
changes affected the database, I revved the major version number.
However, this seems a bit exceesive for database changes that don't
break backwards compatibility. So now, changes which add features,
tables, or columns without changing existing columns only require a
minor release number. This will make it easier to make changes in the
future, and save the major numbers for the big deals.
Here is what happened in this release:
- Added the Python-based CLI
- Updated the release policy
- Fixed database access when running cron jobs
- Improved import/export of settings
- Fixed a broken constraint in the database for tags
- Tables are optimized when deleting projects and repos
- Bug fixes on cache clears
- Added an "install miminal dependencies" script
v5.0.0: The "let's get organized" update
Facade was written using Python for the backend, and PHP for the
frontend. The frontend decision as purely about geting up and running
quickly and easily. However, I really never intended for it to be
permanent, or even necessary, to use the frontend as shipped. As such,
there has always been a separation of duties between the code which does
the actual work (facade-worker.py) and the code which feeds
configs/displays results (the PHP stuff). It is entirely possible to
replace the frontend with anything, so long as the proper data is fed
into the database.
This release consolidates the web frontend into its own subdirectory,
to make this distinction even more clear. It is a change that will
require manual intervention by a user. Basically, you need to edit your
/etc/apache2/apache2.conf file and add 'web/' to the end of the
Directory declaration, like this:
<Directory /path/to/facade/> -> <Directory /path/to/facade/web/>
Also your sites configuration file (probably
/etc/apache2/sites-available/facade.conf) like this:
DocumentRoot /path/to/facade/ -> DocumentRoot /path/to/facade/web/
This change is the result of some discussions as OSLS 2018 about using
Facade as the backend source for data with an alternate frontend.
This release also includes:
- Caching of data by week, which augments the monthly and annual views
- Minor improvements to the way filenames are handled internally, but
this is a transparent change.
There is currently no support to view weekly data in the web UI, but
it's there in the database if you want to pull it directly.
Don't forget to run facade-worker.py after you update so that any pending
database updates can be properly processed.