From 20a2d9499671ff403bcf830cefb22a0436be587b Mon Sep 17 00:00:00 2001 From: Kevin Papst Date: Mon, 23 Jul 2018 00:43:30 +0200 Subject: [PATCH] prepare release 0.3 (#231) --- .env.dist | 4 +- .github_changelog_generator | 2 +- CHANGELOG.md | 73 ++++++++++++++++++++++-- README.md | 19 +++--- UPGRADING.md | 21 +++++++ src/Migrations/Version20180701120000.php | 23 -------- 6 files changed, 103 insertions(+), 39 deletions(-) create mode 100644 UPGRADING.md diff --git a/.env.dist b/.env.dist index ac537cd0..d6ec1368 100644 --- a/.env.dist +++ b/.env.dist @@ -7,8 +7,8 @@ DATABASE_PREFIX=kimai2_ MAILER_FROM=kimai@example.com ###> symfony/framework-bundle ### -APP_ENV=dev -APP_SECRET=c88c14fa70a424e7a12d459b9dd9df7f +APP_ENV=prod +APP_SECRET=change_this_to_something_unique #TRUSTED_PROXIES=127.0.0.1,127.0.0.2 #TRUSTED_HOSTS=localhost,example.com ###< symfony/framework-bundle ### diff --git a/.github_changelog_generator b/.github_changelog_generator index df6e8f72..791d9c18 100644 --- a/.github_changelog_generator +++ b/.github_changelog_generator @@ -1,2 +1,2 @@ unreleased=true -future-release=0.2 +future-release=0.3 diff --git a/CHANGELOG.md b/CHANGELOG.md index 4dc3c587..dad61330 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,26 +1,90 @@ # Change Log -## [0.2](https://github.com/kevinpapst/kimai2/tree/0.2) (2018-06-24) +## [0.3](https://github.com/kevinpapst/kimai2/tree/0.3) (2018-07-22) +[Full Changelog](https://github.com/kevinpapst/kimai2/compare/0.2...0.3) + +**Update from 0.2:** + +You need to adjust your `.env` file and add your `from` address for [all emails](https://github.com/kevinpapst/kimai2/blob/master/var/docs/emails.md) generated by Kimai 2: +``` +MAILER_FROM=kimai@example.com +``` + +Users upgrading from 0.2 need to execute: +``` +bin/console doctrine:migrations:version --add 20180701120000 +bin/console doctrine:migrations:migrate +``` + +**Fixed bugs:** + +- Missing assets in fresh installation [\#213](https://github.com/kevinpapst/kimai2/issues/213) +- Cannot remove payment terms from invoice template [\#188](https://github.com/kevinpapst/kimai2/issues/188) +- Set PHP locale for date format and month names [\#110](https://github.com/kevinpapst/kimai2/issues/110) +- Show revenue only for Admin \(wrong currency shown\) [\#19](https://github.com/kevinpapst/kimai2/issues/19) + +**Closed issues:** + +- Verifying email configuration [\#226](https://github.com/kevinpapst/kimai2/issues/226) +- Installation Issue of version1.3.1 [\#208](https://github.com/kevinpapst/kimai2/issues/208) +- Add favicon [\#205](https://github.com/kevinpapst/kimai2/issues/205) +- Install Kimai as WebApp [\#203](https://github.com/kevinpapst/kimai2/issues/203) +- Replace AvanzuAdminTheme with AdminLTE bundle [\#201](https://github.com/kevinpapst/kimai2/issues/201) +- Document DB requirements in install docu [\#196](https://github.com/kevinpapst/kimai2/issues/196) +- easier creation of tasks [\#195](https://github.com/kevinpapst/kimai2/issues/195) +- Error on bin/console doctrine:schema:create [\#191](https://github.com/kevinpapst/kimai2/issues/191) +- Integrate lock bot [\#183](https://github.com/kevinpapst/kimai2/issues/183) +- Upgrade to FontAwesome 5 [\#179](https://github.com/kevinpapst/kimai2/issues/179) +- Add dynamic column filter [\#174](https://github.com/kevinpapst/kimai2/issues/174) +- Add register user function [\#164](https://github.com/kevinpapst/kimai2/issues/164) +- Add forgot password function - login screen [\#163](https://github.com/kevinpapst/kimai2/issues/163) +- Integrate FOSUserBundle \(for registration, password-reset, etc.\) [\#144](https://github.com/kevinpapst/kimai2/issues/144) + +**Merged pull requests:** + +- Easier creation of Tasks/Projects/User [\#230](https://github.com/kevinpapst/kimai2/pull/230) ([kevinpapst](https://github.com/kevinpapst)) +- Added email configuration docs [\#228](https://github.com/kevinpapst/kimai2/pull/228) ([kevinpapst](https://github.com/kevinpapst)) +- Show revenue only for ROLE\_ADMIN [\#227](https://github.com/kevinpapst/kimai2/pull/227) ([kevinpapst](https://github.com/kevinpapst)) +- hotfix responsiveness [\#220](https://github.com/kevinpapst/kimai2/pull/220) ([kevinpapst](https://github.com/kevinpapst)) +- Integrated FOSUserBundle [\#216](https://github.com/kevinpapst/kimai2/pull/216) ([kevinpapst](https://github.com/kevinpapst)) +- added auto-script to install assets [\#214](https://github.com/kevinpapst/kimai2/pull/214) ([kevinpapst](https://github.com/kevinpapst)) +- added yunohost installation link [\#212](https://github.com/kevinpapst/kimai2/pull/212) ([kevinpapst](https://github.com/kevinpapst)) +- added favicons and web app metadata [\#211](https://github.com/kevinpapst/kimai2/pull/211) ([kevinpapst](https://github.com/kevinpapst)) +- added FAQ and database requirement docu \#196 [\#210](https://github.com/kevinpapst/kimai2/pull/210) ([kevinpapst](https://github.com/kevinpapst)) +- Updated to AdminLTEBundle 1.0 [\#206](https://github.com/kevinpapst/kimai2/pull/206) ([kevinpapst](https://github.com/kevinpapst)) +- replaced AvanzuAdminTheme with AdminLTE bundle [\#202](https://github.com/kevinpapst/kimai2/pull/202) ([kevinpapst](https://github.com/kevinpapst)) +- allow empty invoice template terms \#188 [\#189](https://github.com/kevinpapst/kimai2/pull/189) ([kevinpapst](https://github.com/kevinpapst)) +- improved install docs and composer [\#187](https://github.com/kevinpapst/kimai2/pull/187) ([kevinpapst](https://github.com/kevinpapst)) +- added lock-bot config \#183 [\#186](https://github.com/kevinpapst/kimai2/pull/186) ([kevinpapst](https://github.com/kevinpapst)) +- Composer package name [\#185](https://github.com/kevinpapst/kimai2/pull/185) ([kevinpapst](https://github.com/kevinpapst)) +- added dynamic column filter \#174 [\#184](https://github.com/kevinpapst/kimai2/pull/184) ([kevinpapst](https://github.com/kevinpapst)) +- updated to font-awesome 5 \#179 [\#181](https://github.com/kevinpapst/kimai2/pull/181) ([kevinpapst](https://github.com/kevinpapst)) +- language specific money and date display [\#180](https://github.com/kevinpapst/kimai2/pull/180) ([kevinpapst](https://github.com/kevinpapst)) + +## [0.2](https://github.com/kevinpapst/kimai2/tree/0.2) (2018-06-23) [Full Changelog](https://github.com/kevinpapst/kimai2/compare/0.1...0.2) **Fixed bugs:** +- Change to users language after login [\#7](https://github.com/kevinpapst/kimai2/issues/7) - Prevent end time before start time [\#152](https://github.com/kevinpapst/kimai2/issues/152) - Importing old data fails [\#145](https://github.com/kevinpapst/kimai2/issues/145) - Translate LanguageType choices [\#83](https://github.com/kevinpapst/kimai2/issues/83) -- Change to users language after login [\#7](https://github.com/kevinpapst/kimai2/issues/7) - Mobile alignments and toolbar \#151 [\#157](https://github.com/kevinpapst/kimai2/pull/157) ([kevinpapst](https://github.com/kevinpapst)) - Improved mobile view \#151 [\#150](https://github.com/kevinpapst/kimai2/pull/150) ([kevinpapst](https://github.com/kevinpapst)) **Closed issues:** +- Add english translation [\#8](https://github.com/kevinpapst/kimai2/issues/8) +- Add configurable system configuration [\#6](https://github.com/kevinpapst/kimai2/issues/6) +- Add CHANGELOG.md [\#177](https://github.com/kevinpapst/kimai2/issues/177) - Hide notifications after some seconds [\#169](https://github.com/kevinpapst/kimai2/issues/169) +- Add preview blog message and info text on old website [\#162](https://github.com/kevinpapst/kimai2/issues/162) - Setup Scrutinizer to run code sniffer [\#158](https://github.com/kevinpapst/kimai2/issues/158) - Local config to overwrite settings [\#153](https://github.com/kevinpapst/kimai2/issues/153) - Improve mobile view [\#151](https://github.com/kevinpapst/kimai2/issues/151) - Upgrade to Symfony 4.1 [\#149](https://github.com/kevinpapst/kimai2/issues/149) - Replace has\_role\(\) with is\_granted\(\) [\#148](https://github.com/kevinpapst/kimai2/issues/148) -- Integrate FOSUserBundle \(for registration, password-reset, etc.\) [\#144](https://github.com/kevinpapst/kimai2/issues/144) - Add help text to form elements [\#138](https://github.com/kevinpapst/kimai2/issues/138) - Duration mode: creating new timesheet records prefills duration with some seconds [\#137](https://github.com/kevinpapst/kimai2/issues/137) - Add duration-only mode [\#131](https://github.com/kevinpapst/kimai2/issues/131) @@ -47,11 +111,10 @@ - Add remember me login [\#53](https://github.com/kevinpapst/kimai2/issues/53) - Add preferences sidebar [\#10](https://github.com/kevinpapst/kimai2/issues/10) - Add user settings [\#9](https://github.com/kevinpapst/kimai2/issues/9) -- Add english translation [\#8](https://github.com/kevinpapst/kimai2/issues/8) -- Add configurable system configuration [\#6](https://github.com/kevinpapst/kimai2/issues/6) **Merged pull requests:** +- prepare v0.2 release \#177 [\#178](https://github.com/kevinpapst/kimai2/pull/178) ([kevinpapst](https://github.com/kevinpapst)) - various documentation updates [\#176](https://github.com/kevinpapst/kimai2/pull/176) ([kevinpapst](https://github.com/kevinpapst)) - code styles: header\_comment and ordered\_imports [\#175](https://github.com/kevinpapst/kimai2/pull/175) ([kevinpapst](https://github.com/kevinpapst)) - Code sniffer rules \#158 [\#172](https://github.com/kevinpapst/kimai2/pull/172) ([kevinpapst](https://github.com/kevinpapst)) diff --git a/README.md b/README.md index a5250567..e4dae29d 100644 --- a/README.md +++ b/README.md @@ -69,7 +69,7 @@ DATABASE_URL=mysql://db_user:db_password@127.0.0.1:3306/db_name Now install all dependencies for Kimai 2: ```bash -composer install --no-dev +sudo -u www-data composer install --no-dev --optimize-autoloader ``` Optionally create the database: @@ -82,7 +82,7 @@ Create all schema tables: bin/console doctrine:schema:create ``` -Make sure that upcoming update can be automatically applied by setting the correct database version: +Make sure that upcoming updates can be correctly applied by setting the initial database version: ```bash bin/console doctrine:migrations:version --add --all ``` @@ -111,14 +111,17 @@ Installation complete: enjoy time-tracking :-) ## Updating Kimai -**STOP:** Its important that you do not execute the Installation steps before or after your upgrade. -Make sure that you have a working database backup you start with these simple steps: +**STOP** + +1. It's important that you don't execute the Installation steps before or after your upgrade +2. Make sure that you have a working database backup before you start the update +3. Read the [UPGRADING](UPGRADING.md) guide and [release information](https://github.com/kevinpapst/kimai2/releases) to check if there a further steps required Get the latest code and install dependencies: ```bash cd kimai2/ git pull origin master -composer install --no-dev +sudo -u www-data composer install --no-dev --optimize-autoloader ``` Refresh your cache: @@ -140,8 +143,8 @@ Please note: Kimai 2 uses a rolling release concept for delivering updates. Release versions will be created on a regular base and you can use these tags if you are familiar with Git, but we will not provide support for any specific version (whether its bugs or installation/update docu). -To clarify that further: Every code change, whether its new features or bug fixes, is targeted against master branch and -will be intensively tested before merge. We have to go this way, as we develop Kimai in our free time and want to put our +Every code change, whether it's a new features or bug fixes, will be targeted against the master branch and +intensively tested before merging. We have to go this way, as we develop Kimai in our free time and want to put our effort into the software instead of installation scripts and complicated upgrade processes. ## Extensions for Kimai 2 @@ -153,7 +156,7 @@ All available Kimai 2 bundles can be found at the [Kimai recipes](https://github ## Developer -If you want to develop for Kimai 2 please read the following documentation: +If you want to develop with and for Kimai 2 please read the following documentation: - an example on how to extend Kimai 2 can be found in this [GitHub repository](https://github.com/kevinpapst/kimai2-invoice) - the [developer documentation](var/docs/developers.md) is available both on GitHub and your local installation diff --git a/UPGRADING.md b/UPGRADING.md new file mode 100644 index 00000000..1b95000c --- /dev/null +++ b/UPGRADING.md @@ -0,0 +1,21 @@ +# Upgrading Kimai 2 + +## [0.3](https://github.com/kevinpapst/kimai2/releases/tag/0.3) (2018-07-22) + +**Update from 0.2:** + +You need to adjust your `.env` file and add your `from` address for [all emails](https://github.com/kevinpapst/kimai2/blob/master/var/docs/emails.md) generated by Kimai 2: +``` +MAILER_FROM=kimai@example.com +``` + +Create a file and database backup before executing the following steps: + +```bash +git pull origin master +sudo -u www-data composer install --no-dev --optimize-autoloader +sudo -u www-data bin/console cache:clear --env=prod +sudo -u www-data bin/console cache:warmup --env=prod +bin/console doctrine:migrations:version --add 20180701120000 +bin/console doctrine:migrations:migrate +``` diff --git a/src/Migrations/Version20180701120000.php b/src/Migrations/Version20180701120000.php index b2ec6417..ae0c46b0 100644 --- a/src/Migrations/Version20180701120000.php +++ b/src/Migrations/Version20180701120000.php @@ -79,28 +79,5 @@ final class Version20180701120000 extends AbstractMigration if (!in_array($platform, ['sqlite', 'mysql'])) { $this->abortIf(true, 'Unsupported database platform: ' . $platform); } - - if ($platform === 'sqlite') { - $this->addSql('DROP TABLE ' . $this->getTableName('users')); - $this->addSql('DROP TABLE ' . $this->getTableName('user_preferences')); - $this->addSql('DROP TABLE ' . $this->getTableName('customers')); - $this->addSql('DROP TABLE ' . $this->getTableName('projects')); - $this->addSql('DROP TABLE ' . $this->getTableName('activities')); - $this->addSql('DROP TABLE ' . $this->getTableName('timesheet')); - $this->addSql('DROP TABLE ' . $this->getTableName('invoice_templates')); - } else { - $this->addSql('ALTER TABLE ' . $this->getTableName('user_preferences') . ' DROP FOREIGN KEY FK_8D08F631A76ED395'); - $this->addSql('ALTER TABLE ' . $this->getTableName('timesheet') . ' DROP FOREIGN KEY FK_4F60C6B18D93D649'); - $this->addSql('ALTER TABLE ' . $this->getTableName('projects') . ' DROP FOREIGN KEY FK_407F12069395C3F3'); - $this->addSql('ALTER TABLE ' . $this->getTableName('activities') . ' DROP FOREIGN KEY FK_8811FE1C166D1F9C'); - $this->addSql('ALTER TABLE ' . $this->getTableName('timesheet') . ' DROP FOREIGN KEY FK_4F60C6B181C06096'); - $this->addSql('DROP TABLE ' . $this->getTableName('users')); - $this->addSql('DROP TABLE ' . $this->getTableName('user_preferences')); - $this->addSql('DROP TABLE ' . $this->getTableName('customers')); - $this->addSql('DROP TABLE ' . $this->getTableName('projects')); - $this->addSql('DROP TABLE ' . $this->getTableName('activities')); - $this->addSql('DROP TABLE ' . $this->getTableName('timesheet')); - $this->addSql('DROP TABLE ' . $this->getTableName('invoice_templates')); - } } }