Skip to content

Commit

Permalink
Merge pull request #4826 from Icinga/release/v2.11.0
Browse files Browse the repository at this point in the history
Release v2.11.0
  • Loading branch information
nilmerg authored Jun 30, 2022
2 parents b435e42 + dcf194b commit 4699846
Show file tree
Hide file tree
Showing 12 changed files with 91 additions and 47 deletions.
2 changes: 2 additions & 0 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,5 @@ Thomas Gelf <thomas.gelf@icinga.com> <thomas.gelf@netways.de>
Thomas Gelf <thomas.gelf@icinga.com> <thomas@gelf.net>
Yonas Habteab <yonas.habteab@icinga.com> <yonas.habteab@netways.de>
Ravi Kumar Kempapura Srinivasa <ravi.srinivasa@icinga.com> <33730024+raviks789@users.noreply.github.com>
Sukhwinder Dhillon <sukhwinder.dhillon@icinga.com> <54990055+sukhwinder33445@users.noreply.github.com>
Sukhwinder Dhillon <sukhwinder.dhillon@icinga.com> <sukhwinder33445@gmail.com>
7 changes: 4 additions & 3 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,7 @@ Markus Opolka <opolkams@iis.fraunhofer.de>
Massimiliano Torromeo <massimiliano.torromeo@gmail.com>
Matthias Jentsch <matthias.jentsch@netways.de>
Matthias <pub@matthias-henning.de>
Mattia Codato <mattia.codato@wuerth-phoenix.com>
Max Kozlov <m.v.kozlov@gmail.com>
Max Stephan <xam.stephan@web.de>
mbaschnitzi <mbaschnitzi@users.noreply.github.com>
Expand All @@ -89,6 +90,7 @@ Mike Pennisi <mike@mikepennisi.com>
Mikesch-mp <Mikesch-mp@koebbes.de>
Mikko Peltokangas <mikko@peltokangas.org>
moreamazingnick <github@nicolas-schneider.at>
mrdsam <69315803+mrdsam@users.noreply.github.com>
Munzir Taha <munzirtaha@gmail.com>
Nicolai Buchwitz <nicolai.buchwitz@enda.eu>
Niko Martini <niko.martini@netways.de>
Expand All @@ -98,6 +100,7 @@ Oliver Rahner <oliver@rahner.me>
p4k8 <pkuznetsunit@gmail.com>
Paolo Schiro <paolo.schiro@kpnqwest.it>
papillon326 <udagawa@www2178ue.sakura.ne.jp>
Patrick Dolinic <pdolinic@netways.de>
Paul Richards <paul@minimoo.org>
Pavlos Daoglou <pdaoglou@gmail.com>
Peter Eckel <pe-git@hindenburgring.com>
Expand All @@ -120,9 +123,7 @@ Sander Ferdinand <sa.ferdinand@gmail.com>
sant-swedge <simon.wedge@sant.ox.ac.uk>
Simone Orsi <simahawk@users.noreply.github.com>
ss23 <stephen@zxsecurity.co.nz>
sukhwinder33445 <54990055+sukhwinder33445@users.noreply.github.com>
Sukhwinder Dhillon <54990055+sukhwinder33445@users.noreply.github.com>
Sukhwinder Dhillon <sukhwinder33445@gmail.com>
Sukhwinder Dhillon <sukhwinder.dhillon@icinga.com>
Susanne Vestner-Ludwig <susanne.vestner-ludwig@inserteffect.com>
Sylph Lin <sylph.lin@gmail.com>
tfylling <torbfylling@gmail.com>
Expand Down
38 changes: 38 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,44 @@ Please make sure to always read our [Upgrading](doc/80-Upgrading.md) documentati

## What's New

### What's New in Version 2.11.0

You can find all issues related to this release on our [Roadmap](https://github.com/Icinga/icingaweb2/milestone/70?closed=1).

#### Enhancements, Some

Many of you were waiting for it: PHP 8.1 Support. This means that Icinga Web should be available soon on e.g.
Ubuntu 22.04. You'll also notice that we changed the sidebar, as the user menu went to the very bottom of it.
With it moved the less frequently used menu entries (system and configuration) to a section that pops up by
hovering over the :gear: icon. We did that in order to prepare an area where we can add further functionality
in the future. Oh, and announcements are now visible in fullscreen mode. :upside_down_face:

* Support for PHP 8.1 [#4609](https://github.com/Icinga/icingaweb2/issues/4609)
* Redesign User Menu [#4651](https://github.com/Icinga/icingaweb2/issues/4651)
* &showFullscreen suppresses announcements [#4596](https://github.com/Icinga/icingaweb2/issues/4596)

#### Fixes, More

There are also bug fixes of course. The first mentioned here is one we fixed *accidentally*, as by adding support for
PHP 8.1 we avoided a common PHP quirk responsible for it. If you have a host or service with an asterisk in the name,
it will show up correctly in the detail view now. There was also a remaining issue with the theme mode selection in the
user preferences which is fixed now.

* Navigation item filter `*` not working [#4772](https://github.com/Icinga/icingaweb2/issues/4772)
* Objects with a `*` in the name are not found [#4682](https://github.com/Icinga/icingaweb2/issues/4682)
* Theme mode switch disabled on theme with mode support [#4744](https://github.com/Icinga/icingaweb2/issues/4744)

#### When developers become cleaning maniacs

Usually I write a short note at the start of release notes to make you read the upgrading documentation. This time
however, a more prominent hint is required. We've removed so much (legacy) stuff, anyone tasked with upgrading is
obliged to read [the upgrading documentation](https://icinga.com/docs/icinga-web-2/latest/doc/80-Upgrading/#upgrading-to-icinga-web-211x).
The changes mentioned below only provide a glimpse at it.

* User preferences in INI files not supported anymore [#4765](https://github.com/Icinga/icingaweb2/pull/4765)
* mysql: use of utf8 vs utfmb4 [#4680](https://github.com/Icinga/icingaweb2/issues/4680)
* Remove Vagrant file and its assets [#4762](https://github.com/Icinga/icingaweb2/pull/4762)

### What's New in Version 2.10.1

It's a rather small update this time without any critical bugs. :tada: So let's get straight to the fixes:
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
v2.10.1
v2.11.0
75 changes: 39 additions & 36 deletions doc/80-Upgrading.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@
Specific version upgrades are described below. Please note that upgrades are incremental. An upgrade from
v2.6 to v2.8 requires to follow the instructions for v2.7 too.

## Upgrading to Icinga Web 2 2.11.x
## Upgrading to Icinga Web 2.11.x

**General**

* Support for Internet Explorer 11 has been removed.
* The Vagrant file and all its assets have been removed.
* The `IniStore` class has been removed due to the deprecation of the Preferences ini backend.
* The `DbStore` class has been removed and its methods have been added to `PreferencesStore` class.

**Database Schema**

Expand All @@ -19,46 +19,49 @@ v2.6 to v2.8 requires to follow the instructions for v2.7 too.
**Breaking changes**

* The `user:local_name` macro in restrictions has been removed. Use `user.local_name` now.
* User preferences stored in INI files are not loaded anymore. Migrate yours with
`icingacli migrate preferences` before the upgrade, if you haven't already.

**Framework changes affecting third-party code**

* All the following deprecated php classes and methods are removed:
* When loading library CSS assets, CSS files and LESS files are handled differently now. Only the latter
is parsed as LESS.
* jQuery is not bundled anymore as it's now part of the library icinga-php-thirdparty v0.11.0. It's shipped there
in version 3.6.0. (Previously bundled was jQuery 3.4.1)
* All the following classes and methods were removed:

**Methods:**
+ `Url::setBaseUrl()`: Please create a new url from scratch instead.
+ `Url::getBaseUrl()`: Use either `Url::getBasePath()` or `Url::getAbsoluteUrl()` now.
+ `ApplicationBootstrap::setupZendAutoloader()`: Since it does nothing. All uses removed.
+ `ApplicationBootstrap::listLocales()`: Use `\ipl\I18n\GettextTranslator::listLocales()` instead.
+ `Module::registerHook()`: Use `provideHook()` instead.
+ `Web::getMenu()`: Instantiate the menu class `new Menu()` directly instead.
+ `AesCrypt::encryptToBase64()`: Use `AesCrypt::encrypt()` instead as it also returns a base64 encoded string.
+ `AesCrypt::decryptFromBase64()`: Use `AesCrypt::decrypt()` instead as it also returns a base64 decoded string.
+ `InlinePie::disableNoScript()`: Empty method.
+ `SimpleQuery::paginate()`: Use `Icinga\Web\Controller::setupPaginationControl()` and/or `Icinga\Web\Widget\Paginator` instead.
+ `LdapConnection::connect()`: The connection is established lazily now.
+ `MonitoredObject::matches()`: Use `$filter->matches($object)` instead.
+ `MonitoredObject::fromParams()`: Deleted without substitution.
+ `DataView::fromRequest()`: Use `$backend->select()->from($viewName)` instead.
+ `DataView::sort()`: Use `DataView::order()` instead.
+ `MonitoringBackend::createBackend()`: Use `MonitoringBackend::instance()` instead.
+ `DbConnection::getConnection()`: Use `Connection::getDbAdapter()` instead.
+ `DbQuery::renderFilter()`: Use `DbConnection::renderFilter()` instead.
+ `DbQuery::whereToSql()`: Use `DbConnection::renderFilter()` instead.
+ `DataView::applyUrlFilter()`: Not in use.
* `loader.js.addUrlFlag()`: Use `Icinga.Utils.addUrlFlag()` instead.
* `Url::setBaseUrl()`: Please create a new url from scratch instead.
* `Url::getBaseUrl()`: Use either `Url::getBasePath()` or `Url::getAbsoluteUrl()` now.
* `ApplicationBootstrap::setupZendAutoloader()`: Since it does nothing, all usages removed.
* `ApplicationBootstrap::listLocales()`: Use `\ipl\I18n\GettextTranslator::listLocales()` instead.
* `Module::registerHook()`: Use `provideHook()` instead.
* `Web::getMenu()`: Instantiate the menu class `new Menu()` directly instead.
* `AesCrypt::encryptToBase64()`: Use `AesCrypt::encrypt()` instead as it also returns a base64 encoded string.
* `AesCrypt::decryptFromBase64()`: Use `AesCrypt::decrypt()` instead as it also returns a base64 decoded string.
* `InlinePie::disableNoScript()`: Empty method.
* `SimpleQuery::paginate()`: Use `Icinga\Web\Controller::setupPaginationControl()` and/or `Icinga\Web\Widget\Paginator` instead.
* `LdapConnection::connect()`: The connection is established lazily since .. a long time.
* `MonitoredObject::matches()`: Use `$filter->matches($object)` instead.
* `MonitoredObject::fromParams()`: Deleted without substitution.
* `DataView::fromRequest()`: Use `$backend->select()->from($viewName)` instead.
* `DataView::sort()`: Use `DataView::order()` instead.
* `MonitoringBackend::createBackend()`: Use `MonitoringBackend::instance()` instead.
* `DbConnection::getConnection()`: Use `Connection::getDbAdapter()` instead.
* `DbQuery::renderFilter()`: Use `DbConnection::renderFilter()` instead.
* `DbQuery::whereToSql()`: Use `DbConnection::renderFilter()` instead.

**Classes:**
+ `Icinga\Util\String`: Use `Icinga\Util\StringHelper` instead.
+ `Icinga\Util\Translator`: Use `\ipl\I18n\StaticTranslator::$instance` or `\ipl\I18n\Translation` instead.
+ `Icinga\Module\Migrate\Clicommands\DashboardCommand`: Deleted without substitution.
+ `Icinga\Web\Hook\TicketHook`: Use `Icinga\Application\Hook\TicketHook` instead.
+ `Icinga\Web\Hook\GrapherHook`: Use `Icinga\Application\Hook\GrapherHook` instead.
+ `Icinga\Module\Monitoring\Environment`: Not in use.
+ `Icinga\Module\Monitoring\Backend`: Use `Icinga\Module\Monitoring\Backend\MonitoringBackend` instead.

* All the following deprecated js classes and methods are removed:

**Methods:**
+ `loader::addUrlFlag()`: Use `Icinga.Utils.addUrlFlag()` instead.
* `Icinga\User\Preferences\Store\IniStore`: Preferences in INI files are not supported anymore.
* `Icinga\User\Preferences\Store\DbStore`: Its methods have been added to the `PreferencesStore` class.
* `Icinga\Util\String`: Use `Icinga\Util\StringHelper` instead.
* `Icinga\Util\Translator`: Use `\ipl\I18n\StaticTranslator::$instance` or `\ipl\I18n\Translation` instead.
* `Icinga\Module\Migrate\Clicommands\DashboardCommand`: Deleted without substitution.
* `Icinga\Web\Hook\TicketHook`: Use `Icinga\Application\Hook\TicketHook` instead.
* `Icinga\Web\Hook\GrapherHook`: Use `Icinga\Application\Hook\GrapherHook` instead.
* `Icinga\Module\Monitoring\Environment`: Not in use.
* `Icinga\Module\Monitoring\Backend`: Use `Icinga\Module\Monitoring\Backend\MonitoringBackend` instead.

## Upgrading to Icinga Web 2 2.10.x

Expand Down
2 changes: 1 addition & 1 deletion library/Icinga/Application/Version.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
*/
class Version
{
const VERSION = '2.10.1';
const VERSION = '2.11.0';

/**
* Get the version of this instance of Icinga Web 2
Expand Down
2 changes: 1 addition & 1 deletion modules/doc/module.info
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Module: doc
Version: 2.10.1
Version: 2.11.0
Description: Documentation module
Extracts, shows and exports documentation for Icinga Web 2 and its modules.
2 changes: 1 addition & 1 deletion modules/migrate/module.info
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Module: migrate
Version: 2.10.1
Version: 2.11.0
Description: Migrate module
This module was introduced with the domain-aware authentication feature in version 2.5.0.
It helps you migrating users and user configurations according to a given domain.
2 changes: 1 addition & 1 deletion modules/monitoring/module.info
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Module: monitoring
Version: 2.10.1
Version: 2.11.0
Description: Icinga monitoring module
IDO accessor and UI for your monitoring. This is the initial instalment for a
graphical presentation of Icinga environments. The predecessor of Icinga DB.
2 changes: 1 addition & 1 deletion modules/setup/module.info
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Module: setup
Version: 2.10.1
Version: 2.11.0
Description: Setup module
Web based wizard for setting up Icinga Web 2 and its modules.
This includes the data backends (e.g. relational database, LDAP),
Expand Down
2 changes: 1 addition & 1 deletion modules/test/module.info
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Module: test
Version: 2.10.1
Version: 2.11.0
Description: Translation module
This module allows developers to run (unit) tests against Icinga Web 2 and
any of its modules. Usually you do not need to enable this.
2 changes: 1 addition & 1 deletion modules/translation/module.info
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Module: translation
Version: 2.10.1
Version: 2.11.0
Description: Translation module
This module allows developers and translators to translate modules for multiple
languages. You do not need this module to run an internationalized web frontend.
Expand Down

0 comments on commit 4699846

Please sign in to comment.