File icingadb-web.changes of Package icingadb-web
-------------------------------------------------------------------
Wed Mar 26 17:59:50 UTC 2025 - ecsos <ecsos@opensuse.org>
- Update to version 1.1.3:
* Raise version to 1.1.3
* Update CHANGELOG
* action-list: Add method doc
* action-list: Deselect `dashboard` items when not in detail url
* action-list: Take items with css propery `display:contents` into account
* DbResourcePage: Avoid showing a default charset for pgsql
* Catch `\Throwable` when utilizing hooks
* phpstan: Update standard baseline
* CheckStatistics: Fix incorrect check interval detection
* Try even harder to not fail badly if some results are missing
* VolatileStateResults: Properly handle missing host details
* phpstan: Update standard baseline
* doc: Mention the new `plugin_output_character_limit` setting
* doc: Re-format and re-phrase settings documentation
* event|host|service: Allow to configure pluginoutput limit
* Phpstan: Update baseline files
* PluginOutputTest: Migrate tests from monitoring/PluginOutputTest
* PluginOutput: Add method return type and visibility to constants
* PluginOutput: Remove `processHtml()` method
* `PluginOutput::render()`: Shorten the output by characterLimit before processing it
* UserDetail: add missing information (#1031)
* FlattenedObjectVars: Only avoid relation traversing...
* JsonResultSetUtils: When query offset is null, Use 0 as default
* phpstan: Update standard baseline
* servicegroups: Preserve filters in details
* hostgroups: Preserve filters in details
* ObjectSuggestions: Support more base filters than restrictions
* css: Ensure compatibility with ipl v0.14.2
* Update 01-About.md
-------------------------------------------------------------------
Wed Mar 26 17:59:23 UTC 2025 - ecsos <ecsos@opensuse.org>
- Update to version 1.1.2:
* module.info: Raise version
* Update CHANGELOG.md
* Don't speak of `Icinga (DB) Redis`
* Docs: Account Redis' trademark policy
* Servicegroupsummary: Add `name_ci` as search column
* Hostgroupsummary: Add `name_ci` as search column
* phpstan: Add separate workflow
* php: Remove phpstan and upgrade actions/checkout
* phpstan: Update baselines
* ObjectsCommand: Don't accept generators anymore
* CommandForm: Don't pass generators to commands
* CommandForm: Expect `Iterator` in method `getCommands()`
* CommandForm: Ensure `getCommands()` is passed an `Iterator`
* test: Command transmission fallback handling
* FlattenedObjectVars: Force processing to finish early
* Update phpstan baselines
* CsvResultSetUtils: Query results in bulk..
* JsonResultSetUtils: Query results in bulk..
* Controller: Properly reset the default query limit during exports
* Use separate result sets when exporting hosts/services
* Transfer implementation of JsonResultSet and CsvResultSet to separate traits
* Transform custom variable filters as late as possible
* ui: Do not show okay states as handled if the object is unreachable
* Controller: Serve JSON if accepted
* configuration.php: Only provide permitted search urls
* ServicegroupSummary: Support `name_ci` in quick searches
* Hostgroupsummary: Support `name_ci` in quick searches
* ProblemsBadge: Don't return a string where only integers are expected
* Action: Don't attempt to resolve macros without an object
* Macros: Log the object where a macro is not found
* UrlMigrator: Drop filter editor parameters
* UrlMigrator: Don't use all available options if none match
* ObjectDetail: Increase output length limit to 10000
* PluginOutput: Limit length to 1000 by default
* phpstan-baseline-standard: Update with v1.10.63
* CommandActions: Only respond with JSON if it's an API request
* Add document for the configuration of the IcingaDB-Modul (#971)
* action-list.js: Update the history explicitly when closing col2
* migrate/search-url: Prevent further false-positives
* Only qualify base columns during quick searches
* phpstan: Update baselines
* Some more fixes to make phpstan happy
* Model: Fix `@property` annotations
* Phpstan: Create php version based baseline
* Update phpstan baseline
* Fix some issues found by phpstan
* Fix phpstan's method call on null error
* Models: Add property type hints so that phpstan can scan correctly
* phpistan: Streamline vendor file location with local dev-env
-------------------------------------------------------------------
Wed Mar 26 17:58:54 UTC 2025 - ecsos <ecsos@opensuse.org>
- Update to version 1.1.1:
* module.info: Raise version
* Update CHANGELOG.md
* php: Also test on version 8.3
* CheckStatistics: Don't attempt to visualize next checks..
* doc: Mention the new migration commands
* migrate: Document the `--no-backup` switch for the `filter` subcommand
* migrate: Also backup roles
* migrate: Improve documentation
* migrate: Enhance logging
* migrate: Simplify error logging
* migrate: Don't crash just because a directory does not exist
* migrate: Also transform/migrate menu items
* migrate: Avoid false-positives
* test: Add case for the new migrate command
* migrate: Also migrate legacy macros in navigation items
* migrate: Fix that preference items are checked instead of shared ones
* migrate: Always render relative urls
* migrate: Preserve framework params during dashboard migration
* migrate: Don't decode entire urls
* migrate: Add `filter` sub command
* cli: Require mandatory params as early as possible
* cli: Add migrate command
* migrate: Fix incorrect search url migration
* ObjectInspectionDetail: Render invalid states
* host/services: Make sure severity sort orders the same as anywhere else
* Update phpstan-baseline.neon
* CheckStatistics: Fine tune execution start layout rules
* CheckStatistics: Don't cut off execution start on small screens..
* CheckStatistics: Don't cut off execution start on small screens
* action-list.js: Properly suspend auto refresh of a list's container
* action-list.js: Fix dashboard support
* action-list.js: Properly restore selected items
* CheckStatistics: Show a check interval of zero
* CheckStatistics#assembleBody(): avoid divisions by 0
* README.md: Fix badge urls
* Macros: Properly support `CompatHost` and `CompatService`
* Don't use customvar values from `customvar` table other than for empty `array` & `dictionary`
* Raise version to 1.1.0
* Update requirements
* Update AUTHORS
* Update .mailmap
* Update CHANGELOG
* doc: Add upgrading notes for v1.1
* Rename default branch to `main`
* doc: Add chapter `Automation`
* Enhance package installation & configuration docs
* ObjectDetail: Don't try to group the user query if it's not there
* Transform compat `action` & `notes` url macros automatically
* migrate.js: Decode container urls with `decodeURIComponent`
* Revert "migrate: Fix false positives once more"
* Controller: Preserve only selected search request parameters
* IcingaRedis: Don't throw in method `isUnavailable`
* migrate: Properly override url params
* js: Fix broken autorefresh of col2
* Update phpstan baseline config
* Use `ipl\Web\EmptyStateBar` where applicable
* X509\Sni: Cleanup some codes
* X509\Sni: Ping DB connection before using it
* DetailsActions: Only add `data-action-item` attr if list is an `.action-list`
* (Hosts/Services)Controller: Do not make object list in detail view controls an `.action-list`
* action-list.js: Only add footer for list in `.content`
* Utilize `ipl\Web\Url::setFilter()` where applicable
* JsonResultSet: Extend `VolatileStateResults`
* CsvResultSet: Extend `VolatileStateResults`
* VolatileStateResults: Fetch individual redis results..
* CommandActions: Respond with JSON if requested
* CommandForm: Don't add a submit button and CSRF token..
* Forms: Don't `autocomplete` password elements
* IcingaDbWizard: Update the module requirements
* IcingaDbWizard: Read required library versions from `Module` class
* Remove not in use code
* Move inline css to the style element to provide `csp`
* Avoid using inline style
* Add missing argument type hint declaration
* Use `addHtml()` instead of `add()` where applicable
* Add missing return type declaration
* Add missing property type hints
* StateListItem: Use only one return statement in a method
* Utilize widgets moved to ipl-web
* Fix failed to resolve reversed `host/service` -> `comment` relations
* PHPStan Baseline: Remove fixed phpstan errors
* Add unit tests for invalid performance data evaluation
* Do not evaluate invalid performance data
* State: Add phpDoc for properties and update phpstan baseline
* Github Actions: Do not cancel further tests if one fails
* Phpstan: Set level to max and add baseline file
* UrlMigration: Remove unnecessary empty check
* Controller: `PrintableHtmlDocument::setTitle()` expects string as param
* CustomVarTable: Import missing class `Closure`
* BaseHistoryListItem: Fix false positive
* Sni: Add variable type hint
* Add variable type hint to `Icinga::app()`'s returned object
* PerfData: Fix method name case
* Create(Hosts/Services)SlaReport: Fix method name case
* State: Add missing abstract methods
* PerfDataTable: Respect given $limit
* PerfDataTable: Simplify the code
* PerfDataTable: Use strict comparison
* PerfDataTable: Don't iterate unnecessarily
* PerfDataTable: Remove unnecessory property `$containsSparkline`
* PerfDataTable: Remove unnecessary loop and $columns[] variable
* ObjectSuggestion: Fix incorrect variable type hint
* Sni: Fix incorrect method name case
* SlaReport: Fix `Variables '$interval, $boundry, $format' are probably undefined`
* (Object(s)DetailExtension/ObjectAction)Hook: Fix incorrect var name in phpDoc
* ConpatObject: Fix method name case
* IcingaRedis: Call private static methods with `self` instead of `static`
* IcingaRedis: Fix incorrect PhpDoc
* HostsController: Check `! $compact` as in `ServicesContoller`
* Models: Fix method name case
* PerfDataTable: Remove unnecessary `if` condition, $col is always set
* ObjectDetail: Fix `Variable '$userQuery' is probably undefined`
* DowntimeCard: Add `$start, $end` explicitly as non-dynamic property
* (Grid/View)ModeSwitcher: Fix `Variable '$active, $inactive' are probably undefined`
* VolatileStateResults::current(): Add required attribute #[\ReturnTypeWillChange]
* CustomVarRendererHook: Remove not used param $object
* (Csv/Json)ResultSet::current(): Add phpDoc
* UrlMigration: Fix `Variable '$modalPath, $exprRule' are probably undefined`
* CommandActions: Fix `Variable '$form' is probably undefined`
* RedisConfigForm: Fix `Variable '$pem' is probably undefined`
* Github Actions: Add PhpStan
* Use `ipl\Stdlib\iterable_value_first` to access the first item..
* Deprecate `StateBadge` class again
* ObjectInspectionDetail: HtmlElement param#3 expects ValidHtml
* ObjectInspectionDetail: Render `EmptyState` message if $command is empty
* action-list.js: Use `getAttribute` to get `href`
* History: Sort also by type by default
* Controller::createColumnControl(): Make columns mandatory in `tabular` view mode
* Use modals for creating host/service reports
* action-list.js: Fix console error that `[href]` element is missing
* action-list.js: Optimize code
* action-list.js: Fix missing footer in `OneColLayout`
* action-list.js: Ignore `ctrl + a` keypress in `non-multiselect-list`
* action-list.js: Support `key-navigation` for `table.action-list`
* BaseItemTable: Introduce layout modes
* Don't pass an array to `ObjectsCommand::setObjects()`
* IcingaRedis: Introduce `fetchHostState` and `fetchServiceState`..
* Provide ObjectsCommand#setObject() for compatibility
* DeleteDowntimeCommand: process multiple objects at once
* DeleteCommentCommand: process multiple objects at once
* Actually let ObjectsCommand derivates process multiple objects at once
* Introduce CommandForm#filterGrantedOn()
* ObjectCommand and derivates: handle multiple objects
* CommandForm#getCommand(): take (and process) multiple objects, not just one
* progress-bar.less: Hide `::before` if progress is not animated
* Properly visualize unreachable services
* Properly visualize unreachable hosts
* StateBadges: Require a real filter in method `createLink`
* CheckStatistics: Drop check source state ball
* Drop dead code trying to visualize unreachable hosts
* UrlMigrator: Strip leading slashes from url paths to check
* Add StateBadge(s) changes from ipl-web here
* Revert "Drop classes `StateBadge` and `StateBadges`"
* Fix `list-item` footer
* action-list.js: Fix console error
* action-list.js: Activate list item depending on detail url
* Provide reporting hook for single `host/service`
* Rename `CreateHostSlaReport` and `CreateServiceSlaReport` class to `plural`
* action-list.js: Don't load previous list item if load-more is triggred
* action-list.js: Continue navigation/selection after manual page refresh
* action-list.js: Optimize `onRendered`
* action-list.js: Call OnRendered only if its `#main .container`
* action-list.js: Optimize `onClick` method
* action-list.js: Use vanilla js
* action-list.js: Deselect list items if only one col exists
* action-list.js: Active new list item immediately when detail url changes
* action.js: Add docs
* action-list.js: Fix that wrong items in #col are active when browser-back is triggred
* action-list.js: Split the code in methods and optimize for better readability
* Scroll activated element into view
* Add functionality to trigger `load-more` with key navigation
* Add hint for multiselect list
* Avoids unnecessary `loadUrl()` calls
* action-list.js: Add methode `addSelectionCountToFooter()`
* action-list.js: Add keyboard controls * `Shift + ArrowUp|ArrowDown` = Multiselect * `ArrowUp|ArrowDown` = Select next/previous * `Ctrl|cmd + A` = Select all on currect page
* Remove public/css/widget/cancel-button.less
* Render footer of detailed list items only when not empty
* SlaReport: Add checkbox to export total % of hosts/services for CSV and JSON
* Convert `migrate.js` to class structure
* Convert `loadmore.js` to class structure
* Convert `action-list.js` to class structure
* Fix customvar search suggestions
* test: Add case for `Icinga\Module\Icingadb\Model\CustomvarFlat`
* CustomvarFlat: Properly handle index definitions
* Determine custom var source paths of nested array correctly
* ObjectSuggestions: Don't split custom var paths more than once
* Unflatten empty customvars of type `array` & `dict` correctly
* tactical: Properly process base filter on state badges
* Host|ServiceStatusBar: Pass base filter to the state badges
* migrate: Fix false positives once more
* CheckStatistics: Don't simulate running checks if they're overdue
* migrate.js: Decode urls prior comparison with migration results
* migrate: Already migrate monitoring urls with wildcards
* migrate: Decode urls prior transmission
* BaseDowntimeListItem: Make progress animatable
* DowntimeCard: Make progress animatable
* CheckStatistics: Make progress animatable and enhance overall layout
* js: Animate progress bars
* Don't fail badly just because some results are null
* VolatileStateResults: Don't reapply commandline values if not permitted
* Avoid leakage of `state.check_commandline` to restricted users
* Fix key-value formatting for json and csv result set
* Separate grid and table layout styles from `item-table`
* Use `BaseTableRowItem` for `HostgroupGridCell` and `ServicegroupGridCell`
* Delete the grid widget
* Use `GridViewModeSwitcher` for host and service groups
* Add `GridViewModeSwitcher` to toggle between list and grid view
* Order HostGroup/ServiceGroup by severity for grid list view
* CSS: Cherry-pick group grid styles from monitoring
* Controller: Set redirectUrl to grid action when rendering `Host/Servicegroups` & switching to minimal
* Introduce `Host/Servicegroup` grid cell class
* Introduce base group grid cell widget
* Introduce `Host-/Servicegroup` grid action
* Add `CopyToClipboard` button to copy executed command in `Source` tab (#758)
* Controller: Drop create*Control methods
* Drop classes `StateBadge` and `StateBadges`
* Remove trait `BaseFilter`
* CheckStatistics: Show TimePeriod name if available
* Don't parse new filters with the legacy implementation
* migrate: Notify the user about the equal/like filter change
* Display downtime icon independent from object state (#772)
* Introduce Total Host and Total Service SLA Report
* SlaReport: Breakdown into an hour view showing only downtimes
* Fix negative next check value when both active and passive checks are disabled
* ObjectStatistics: Limit total amount to 4 chars
* Also use grid layout for users, usergroups and servicegroups
* Use css grid instead of table layout for the hostgroup list
* Merge `BaseItemTable` into `StateItemTable`
* Prevent downtime flexible duration being set to `0h0m`
* (AddComment/AcknowledgeProblem)Form: Add `validators` to `expire_time` element
* ObjectSuggestions: Suggest `notificationcommand` columns
* NotificationHistory: Add `notification` relation
* Add reporting hooks to DetailsAction (#655)
* Models: Use `MillisecondTimestamp` instead of `Timestamp` behavior (#753)
* Enhance global search (#756)
* CustomvarFlat: Fix that variable names with dots are interpreted as paths
* ObjectAuthorization: Replace `.` with `_` for db query
* Ipl-html SelectElement: Use `options` attr instead of `multiOptions`
* Unset pagination parameters for service grid when `limit=0,0`
* CheckStatistics: Show `retry_interval` if object is in `problem && soft_state`
* action-list.js: Also detect selection if detail tabs are open
* action-list.js: Restore selection also on the dashboard
* CompatHost|CompatService: Fix incorrect `<type>_perfdata` path
* AcknowledgeProblem|AddComment-Form: Don't show datepicker if `expire` checkbox is unchecked
* Severity sort must also sort objects by `last_state_change` in descending
* ConfigController: Always check if the user has permissions
* Downtime Timestamp: Show start time in tooltip if downtime is not yet active
* Fix confusing `Downtime cancelled` header in event history list
* Mention correct possible values for `icingadb/denylist/routes`
* list-item.less: Do not show the comment popup transparently
* `Pagination|History`: Reset query offset on page reload
* migrate/backend-support: Only return results if monitoring is accessible
* IcingadbSupportHook: Also verify that the user can access monitoring
* configuration.php: Properly populate sidebar and dashboard..
* Fix Secondary Redis being ignored when the Primary Redis in inaccessible/down
* PerfDataSet: Fix that invalid quoted labels throw an error
* ThresholdRange: Fix type declarations of `setMax` and `setMin`
* Introduce monitoring's perfdata tests here
* fix parsing unknown perfdata value
* actions: Run PHP unit tests
* MacrosTest: Drop Mockery usage
* CI: Update Checkout Action to v3
* migrate: Check if popup should remain closed before any `showPopup()` calls
* CSS: Fix list item footer colors
* Create SECURITY.md
-------------------------------------------------------------------
Wed May 10 11:07:05 UTC 2023 - ecsos@opensuse.org
- Update to version 1.0.2:
* Raise version to 1.0.2
* Update CHANGELOG.md
* Update AUTHORS
* Update .mailmap
* RedisConfigForm: Properly clear empty sections/options
* RedisConfigForm: Properly store password of 2nd redis
* EventDetail: Use `'UTC'` instead of `DateTimeZone::UTC`
* DowntimeDetail: Build the remove URL in a more standardized way
* CommentDetail: Build the remove URL in a more standardized way
* css: Fix superfluous bottom margin on quick actions
* Show `Output unavailable.` everywhere where applicable
* PluginOutput: Automatically detect that an empty string isn't HTML
* action-list.js: Open subject links in a new window if requested
* Database: Only use `PDO::MYSQL_ATTR_INIT_COMMAND` for mysql connections
* Avoid accessing non-existent last comment
* ObjectDetail: Fix action and note url retrieval
* css: Keep compatibility with ipl v0.10.0 for now
* css: Remove default control rules now provided by ipl-web
* Fix/SetApiTimeout
* Fix/SetApiTimeout
* Fix/SetApiTimeout
* Fix/SetApiTimeout
* Fix/SetApiTimeout
* ObjectDetail: Still load legacy hooks if monitoring is just disabled
* Provide generic tts integration
-------------------------------------------------------------------
Sat Sep 17 08:05:16 UTC 2022 - ecsos@opensuse.org
- Update to version 1.0.1:
* Raise version to 1.0.1
* Update CHANGELOG
* Require icinga-php-library v0.10.0
* Change the order of handled state icons
* css: Prevent scrollbars to appear if icon images are large
* BaseNotificationListItem: Don't try to render plugin output without a command name
* BaseHistoryListItem: Don't try to render an object url without an object
* BaseHistoryListItem: Don't try to render plugin output without a command name
* EventDetail: Don't try to render plugin output without a command name
* ObjectAuthorization: Gracefully handle incomplete objects in `grantsOn()`
* Make group summaries work in the searchbar
* ReRoute: Apply filters on `downtime,comment,history,notification_history` correctly when containing servicegroup names
* Replace deprecated hook `Icinga\Web\Hook` with `Icinga\Application\Hook`
* Sort also pie charts in detailed view mode
* tactical: Also search for hosts during quick search
* Add new search route to only search for services on specific hosts
* Controller: Outsource filter construction in method `handleSearchRequest()`
* ObjectSuggestions: Properly qualify search columns
* servicegroups: Use the searchbar's updated filter as base filter
* hostgroups: Use the searchbar's updated filter as base filter
* Controller: Qualify search columns
* ObjectInspectionDetail: Handle formatting errors gracefully
* StateListItem: Also don't show last state change if its zero
* Model: Add `ReRoute` behavior after the binary behaviors
* Show warning health state badges
* Fix pending state balls (#605)
* css: Ensure compatiblity with collapsible.js in legacy versions
* Remove `[*]` from custom var filter enrichments
* Service: Implement default for property `customvars`
* Host: Implement default for property `customvars`
* ObjectDetail: Fix polymorphic call exception
* CompatObject: Implement missing fetch methods and ..
* Drop `view` param from show more urls in all index routes
* Preserve filters after clicking `Load More`
* ObjectDetail: Do not attempt to load monitoring hooks..
* UrlMigrator: Lower filter values targeting enum types
* EventDetail: Indicate why an `ack_set` event has incomplete data
* BaseHistoryListItem: Indicate why an `ack_set` event has no comment/author
* PerfDataFormat: Ensure not to use string values when formatting perfdata
* Don't strictly check whether `hGet` returns false
* css: Rename `.actions` class to `.object-detail-actions`
* Show expiration time of comments in the comments list if it is set
* Change `overflow` property to `overflow-x` in `performance-data-table` class
* BaseHistoryListItem: Show correct flapping event details
* CheckStatistics: Add EmptyState
* Notification: Use more human readable column labels
* More column label enhancements
* ObjectSuggestions: Only suggest cols of selected hasOne relations
* ObjectSuggestions: Also hide `id` columns
* ObjectSuggestions: Implement method `shouldShowRelationFor()`
* README.md: Fix wrong latest doc link
* Enhance column labels
* ObjectSuggestions: Remove suffixes from user and usergroup columns
* CHANGELOG: Correct documentation link
-------------------------------------------------------------------
Sat Sep 17 08:03:43 UTC 2022 - ecsos@opensuse.org
- Update to version 1.0.0:
* Increase version to 1.0.0
* Update CHANGELOG
* Update AUTHORS
* .mailmap: display me always as "Alexander A. Klimov <alexander.klimov@icinga.com>"
* VolatileStateResults: Transform `state_type` by ourselves for now
* BoolCast: Cast input to string in the switch statement
* RedisHealth: Set state to `critical` if an exception has occurred
* ApplicationState: Check the availability of `IcingaRedis` first
-------------------------------------------------------------------
Tue Apr 26 09:43:38 UTC 2022 - ecsos <ecsos@opensuse.org>
- Update to 1.0.0-rc2
-------------------------------------------------------------------
Tue Mar 17 17:34:25 UTC 2020 - ecsos@opensuse.org
- Initial version 1.0.0-rc1