Index index by Group index by Distribution index by Vendor index by creation date index by Name Mirrors Help Search

openQA-common-4.6.1710845353.23e79984-bp156.1.1 RPM for ppc64le

From OpenSuSE Leap 15.6 for ppc64le

Name: openQA-common Distribution: SUSE Linux Enterprise 15 SP6
Version: 4.6.1710845353.23e79984 Vendor: openSUSE
Release: bp156.1.1 Build date: Thu Mar 21 08:27:23 2024
Group: Unspecified Build host: obs-power9-15
Size: 394451 Source RPM: openQA-4.6.1710845353.23e79984-bp156.1.1.src.rpm
Packager: https://bugs.opensuse.org
Url: http://os-autoinst.github.io/openQA/
Summary: The openQA common tools for web-frontend and workers
This package contain shared resources for openQA web-frontend and
openQA workers.

Provides

Requires

License

GPL-2.0-or-later

Changelog

* Tue Mar 19 2024 okurz@suse.com
  - Update to version 4.6.1710845353.23e79984:
    * Bump @floating-ui/dom from 1.6.1 to 1.6.3
    * Handle special releases in openqa-boostrap (like "Leap 15.6 Beta")
    * Bump eslint-plugin-prettier from 3.4.1 to 4.2.1
    * Update location of d3.min.js
    * Bump d3 from 4.13.0 to 7.9.0
    * Bump eslint-config-prettier from 8.10.0 to 9.1.0
    * Remove obsolete checklist item about asset cache
    * Bump eslint from 7.32.0 to 8.57.0
    * Allow undoing batch-commenting from the audit log table
    * Add route to delete many comments at once
    * Allow batch-commenting on test results overview
    * Add dependabot rules to mergify config
* Mon Mar 18 2024 okurz@suse.com
  - Update to version 4.6.1710762624.7d0dd225:
    * Only allow security PRs from dependabot
    * Bump flatted from 3.2.9 to 3.3.1
    * Enable dependabot updates
    * Return 404 if module not found
    * Fix race conditions when handling barriers
    * Fix typos in comment about locks
    * Use signatures in UI tests of tests overview page
    * Fix showing current result/state filters on overview page
* Wed Mar 13 2024 okurz@suse.com
  - Update to version 4.6.1710322691.40a3af54:
    * Nicely wrap serial text boxes and don't display leading empty line
    * Adapt "uncoverable statement" comments after tidy update
    * Dependency cron 2024-03-11
* Sun Mar 10 2024 okurz@suse.com
  - Update to version 4.6.1709822711.90519fe6:
    * Pin gem ttfunk to version 1.7.0 due to Ruby version requirement
    * Log waiting time in monitor script and useragent
    * Make it less likely for jobs incompleting with `Cache … queue … full`
* Tue Mar 05 2024 okurz@suse.com
  - Update to version 4.6.1709639149.060eef3f:
    * Avoid syncing tests via the cache service when using Git anyway
    * Revert "Avoid syncing tests via the cache service when using Git anyway"
    * Avoid syncing tests via the cache service when using Git anyway
* Fri Mar 01 2024 okurz@suse.com
  - Update to version 4.6.1709291879.1d220054:
    * Print a helpful error message when assets via npm are missing
    * Ensure npm packages are installed when invoking tests
    * Improve documentation for setting up the PostgreSQL database
    * Improve sections for customizing directories
    * Update Autoyast profile for nvme to include chrony
    * Simplify CLI::monitor with 'all' function
* Wed Feb 28 2024 okurz@suse.com
  - Update to version 4.6.1709047585.9bc6ce52:
    * Document GitHub action for cloning job from PR description
    * Update networking doc advising RSTP instead of slower STP
* Fri Feb 23 2024 okurz@suse.com
  - Update to version 4.6.1708608805.993d8f89:
    * Add chronyd service in OpenQA Autoyast installation
    * Add ipmi-deps to our worker container
* Wed Feb 21 2024 okurz@suse.com
  - Update to version 4.6.1708514407.3d50af15:
    * docs: Mention openqa-label-all in documentation
    * Improve details in monitor/schedule CLI commands
    * Split monitoring of jobs via `openqa-cli` into a separate command
* Fri Feb 16 2024 okurz@suse.com
  - Update to version 4.6.1708009978.05b36bda:
    * t: Only run tests under t/
    * git-subrepo: update external/os-autoinst-common
    * Simplify service_port_delta with environment variable
    * Fix select dropdown arrow floating over text
    * Fix caching rpm packages on CircleCI after c5ea52b
    * Dependency cron 2024-02-14
* Wed Feb 14 2024 okurz@suse.com
  - Update to version 4.6.1707924836.ebe28324:
    * Improve out-of-box experience with single-instance container
    * Fix typo in installation documentation
    * Bump codemirror from 4.13.0 to 5.58.2
    * Remove manual installation of npm when caching assets
    * Install npm in the container we use on CircleCI
    * Make developer mode work in single-container setup
    * Adapt AppArmor profile for switch to node modules
    * Make `local-npm-registry` available in SLE-15-SP6 CI packaging check
    * Streamline approach for selecting shell files in test targets
    * Ensure required node modules are installed via install target
    * Adapt code after updating DataTables from 1.10.16 to 1.10.18
    * Exclude node modules from shell formatting checks
    * Fix fetching fonts after providing assets via npm
    * Install npm dependencies in the CircleCI caching step
    * Add npm as dependency after now using it for assets
    * Add package-lock.json for `obs-service-node_modules`
    * Remove no longer required asset cache handling from rpm packaging
    * Update documentation for handling JavaScript/CSS dependencies
    * Ensure assetpack does no more remote downloads
    * Install third-party assets via npm
* Fri Feb 09 2024 okurz@suse.com
  - Update to version 4.6.1707499101.aaa807d2:
    * docs: Add instructions for pinging over GRE tunnels
    * Ensure all hidden form fields in test overview filter
    * Avoid sporadic failures in `t/ui/16-tests_job_next_previous.t`
    * Add /job_groups/id/build_results API route
    * Add signatures to OpenQA::WebAPI::Controller::API::V1::JobGroup
    * git subrepo pull (merge) external/os-autoinst-common
    * Ensure the worker can call `du` for space aware cleanup of Git caching
    * docs: Explain combination of worker class values and more examples
    * Adapt usage of tools/update-deps
    * Remove unnecessary disabling of strict refs
    * Refactor methods which violate the deeply nested loops
    * Avoid workers from showing up shortly as broken after registration
* Fri Feb 02 2024 okurz@suse.com
  - Update to version 4.6.1706881004.0d50a814:
    * Apply perlcritic rule for useless interpolation of literal string
    * Remove no critic annotation
    * Add service_port_delta config for livehandler
* Wed Jan 31 2024 okurz@suse.com
  - Update to version 4.6.1706677570.34cd7cff:
    * Dependency cron 2024-01-31
    * Add editorconfig and update bash files accordingly
    * git subrepo pull (merge) external/os-autoinst-common
    * Dependency cron 2024-01-30
    * Add shfmt to devel requires for preparation
* Fri Jan 26 2024 okurz@suse.com
  - Update to version 4.6.1706272112.624209b7:
    * Avoid deprecation warnings in GitHub action for JavaScript linting
    * Show relevant tasks when following Minion link after asset cleanup
    * Use `--within-instance` in example for cloning MM jobs
    * Ensure only the Git cache directory from the local worker config is used
    * Mention handling of symlinks when cleaning up assets in docs
    * Document debugging problematic connections in the GRE network
    * Document command to check whether IP forwarding is enabled
    * Update MTU-related documentation in MM-setup documentation
    * Improve documentation for running MM jobs accross multiple hosts
    * Mention specific test scenarios that can be used to verify the MM setup
* Tue Jan 23 2024 okurz@suse.com
  - Update to version 4.6.1706049794.bd8ad6e3:
    * Adjust .yamllint and add .yamltidy
    * git-subrepo: update external/os-autoinst-common
* Fri Jan 19 2024 okurz@suse.com
  - Update to version 4.6.1705610500.1e9bfef6:
    * git-subrepo: update external/os-autoinst-common
    * Improve deletion of asset-symlinks
    * Use signatures in some asset-related utility functions
    * Remove obsolete entry from group_overview
    * Refactor code for filter form on test result overview page
    * Add comment text in filter form on test results overview page
    * Document filter for comments on "All tests" page
* Tue Jan 16 2024 okurz@suse.com
  - Update to version 4.6.1705419426.44c52651:
    * Fix "duplicate key value violates unique constraint" on needle updates
    * Ensure the database timezone is always UTC executing tests
    * Allow filtering by comment text on the test results overview page
    * Allow searching by comment text on "All tests" page
    * Move test for `match`-parameter on "All tests" page into subtest
* Fri Jan 12 2024 okurz@suse.com
  - Update to version 4.6.1705059022.6814720:
    * Add SLE15SP6 Backports OBS CI integration
    * Update docs for asset cache
    * ObsRsync: Consistently expand status URL
* Wed Jan 10 2024 okurz@suse.com
  - Update to version 4.6.1704886775.b5e992e:
    * Limit number of auto_clone restarts
* Sun Jan 07 2024 okurz@suse.com
  - Update to version 4.6.1704466891.4d4e5b7:
    * Update perl-DBD-Pg-3.18.0
    * Download shepherd.js from cdn.jsdelivr.net
    * ObsRsync: Include URL in GRU task
* Thu Jan 04 2024 okurz@suse.com
  - Update to version 4.6.1704307071.9c8a390:
    * docs: Document how click points work
    * CI: Shift nightly schedule further trying to avoid download problems
* Sun Dec 24 2023 okurz@suse.com
  - Update to version 4.6.1703255154.b96c049:
    * Handle no job group filter matches gracefully
    * Add group filter options for /tests
    * Prevent ambiguous PRJDIR ending up in vars.json
* Thu Dec 21 2023 okurz@suse.com
  - Update to version 4.6.1703176922.1f7eb61:
    * doc: Improve wording of the introduction to MM tests
    * doc: Improve punctuation/formatting in `WritingTests.asciidoc`
    * doc: Rewrap lines in `WritingTests.asciidoc` to 80 characters per line
    * doc: Move "Job dependencies" out of "Writing multi-machine tests"
    * Remove unnecessary newline
    * Introduce --skip-checks in openqa-clone-job
    * Add a note for `Mojo::Base` in Documentation for Tests
    * t: Use consistent 'Mojo::Base' instead of strict+warnings
    * Extend tests of dependency graph to better cover restarting
    * Fix dependencies not showing up in graph under certain conditions
* Tue Dec 19 2023 okurz@suse.com
  - Update to version 4.6.1702976108.a4cd34a:
    * Document further ovs commands
* Sun Dec 17 2023 okurz@suse.com
  - Update to version 4.6.1702649526.dcd6122:
    * Use postgresql recursive feature for getting scheduled product
* Thu Dec 14 2023 okurz@suse.com
  - Update to version 4.6.1702503492.e68161c:
    * Improve documentation of cache service related variables in config
    * Support for native asciidoc with fallback to rubygems bundle
    * Add support for non-root installation of ruby dependencies
    * Wrap lines in networking documentation at 80 characters
    * Improve instructions for setting up VM to debug MM setup manually
    * Simplify generation of documentation
* Sun Dec 10 2023 okurz@suse.com
  - Update to version 4.6.1702049559.97f9359:
    * Add additional check in `t/ui/15-comments.t` for easier debugging
    * Parse error messages from scheduling failures
* Thu Dec 07 2023 okurz@suse.com
  - Update to version 4.6.1701950335.db07886:
    * Add job group filter options for /tests/overview
    * Document testing the MM setup by launching a VM manually
    * Use format `KEY:TEST=VALUE` in `openqa-clone-job` to specify job
    * Improve warning about invalid command-line arguments in clone-job script
    * Allow passing settings only for specific test when cloning jobs
    * Dependency cron 2023-12-06
    * Fail early when attempting to clone a job with missing assets
    * Pass VNC argument for developer mode dynamically when test has started
    * Fix displaying hostname in VNC instruction if empty
* Sun Dec 03 2023 okurz@suse.com
  - Update to version 4.6.1701437900.fbad594:
    * Dependency cron 2023-12-01
* Thu Nov 30 2023 okurz@suse.com
  - Update to version 4.6.1701312647.3c8b171:
    * Dependency cron 2023-11-30
    * Show FQDN in VNC command if available via `WORKER_HOSTNAME`
    * Add YAML:PP as direct dependecy of generate assetpack script
    * Cleanup openQA spec files
    * infopanel: render scenario_description as markdown
* Sun Nov 26 2023 okurz@suse.com
  - Update to version 4.6.1700951825.872b397:
    * Fix testrefs in lists
    * Fix test short reference rendering
    * Mention NetworkManager support
    * Fix typo
* Thu Nov 23 2023 okurz@suse.com
  - Update to version 4.6.1700754150.dda8c55:
    * Pass TMPDIR=1 to OBS Rsync authentication
    * Dependency cron 2023-11-23
    * Fix missing space in scheduling error message
    * Set asset size on job creation
* Sun Nov 19 2023 okurz@suse.com
  - Update to version 4.6.1700240294.34068e3:
    * Prevent label/flag/bugref overlapping
    * Dependency cron 2023-11-17
    * Improve comment in test code for dependency handling
    * Do not associate skipped child jobs with new parent when restarting jobs
    * Fix force-restarting jobs when an advanced restarting option was chosen
    * Simplify code for setting up restart buttons
* Thu Nov 16 2023 okurz@suse.com
  - Update to version 4.6.1700156289.0130cfb:
    * ObsRsync Plugin support for HTTP authentication in Build Service
    * Add documentation for flag:carryover
    * Update documentation about manual setup of PostgreSQL
    * Comments API: Render markdown on explicit request only
    * Add tests for carryover flags
    * Consistently use 'carryover' instead of 'takeover'
    * Perform comment carryover when comment has flag:carryover
    * Add formatted bugref and carryover flag for comments
    * Update markdown unit tests for new bugref
    * Increase MOJO_CONNECT_TIMEOUT in openqa-cli
    * Avoid unintended mass-removals in openqa-auto-update
* Tue Nov 14 2023 okurz@suse.com
  - Update to version 4.6.1699952945.e6799a9:
    * Make openqa-cli retry also on connection errors
    * Add headers to search results
* Sun Nov 05 2023 okurz@suse.com
  - Update to version 4.6.1699113915.9e4ee2f:
    * templates: Clarify how issue reference carry over can be prevented
    * Dependency cron 2023-11-03
    * Sync AMQP plugin config defaults with code
* Thu Nov 02 2023 okurz@suse.com
  - Update to version 4.6.1698924934.1bd59f9:
    * Dependency cron 2023-11-01
    * Fix skipping Selenium tests
    * munin: Include context in minion plugin title
* Tue Oct 31 2023 okurz@suse.com
  - Update to version 4.6.1698662280.91607f3:
    * git subrepo pull (merge) external/os-autoinst-common
* Fri Oct 27 2023 okurz@suse.com
  - Update to version 4.6.1698405013.f1d481a:
    * Dependency cron 2023-10-27
    * Use commit message checks from os-autoinst-common
    * Warn when modifying files under external directly
    * CI: Use consistent casing in commit message check
    * CI: Fix typo in github action name
    * Update .github/workflows/commit_message_checker.yml
    * Update commit-message-checker & add extra rule for subject lines
* Tue Oct 24 2023 okurz@suse.com
  - Update to version 4.6.1698089463.d08787a:
    * Document `run_args` limitation on Python Modules
* Sun Oct 22 2023 okurz@suse.com
  - Update to version 4.6.1697790484.83ab402:
    * Add Fedora SIGs gitlab group to bugrefs
    * Add self argument to python examples
    * Extend Test Module Documentation & Explain Python integration
* Thu Oct 19 2023 okurz@suse.com
  - Update to version 4.6.1697730420.c5419ae:
    * Update Multi Machine docs to ref os-autoinst-setup-multi-machine only
    * Add repeat parameter to clone a job multiple times
* Tue Oct 17 2023 okurz@suse.com
  - Update to version 4.6.1697251395.f46075b:
    * Dependency cron 2023-10-14
* Fri Oct 13 2023 okurz@suse.com
  - Update to version 4.6.1697137041.0b9e261:
    * Update all container references to current Leap 15.5
    * Dependency cron 2023-10-11
    * Apply memory limit for openqa-worker services
* Tue Oct 10 2023 okurz@suse.com
  - Update to version 4.6.1696927712.9de9760:
    * ci: Use PERL_TEST_WARNINGS_ONLY_REPORT_WARNINGS
    * spec: Use PERL_TEST_WARNINGS_ONLY_REPORT_WARNINGS
* Fri Oct 06 2023 okurz@suse.com
  - Update to version 4.6.1696521554.d04a2c8:
    * Dependency cron 2023-10-05
    * Properly handle duplicate sections on openqa/client.conf
    * Fix perltidy dependency update
    * De-prioritize harmless log message about scheduler wakeup
* Wed Oct 04 2023 okurz@suse.com
  - Update to version 4.6.1696214599.759eb2e:
    * Dependency cron 2023-10-02
* Sun Oct 01 2023 okurz@suse.com
  - Update to version 4.6.1696170052.87fc8eb:
    * Make tidy version check compatible with dotted versions
    * Fix dependency update script
* Fri Sep 29 2023 okurz@suse.com
  - Update to version 4.6.1695913264.63a7e9e:
    * Avoid displaying buttons on sticky table headers
    * Dependency cron 2023-09-28
    * Reduce runtime of t/04-scheduler.t
    * Require Mojolicious 9.340.0
* Tue Sep 26 2023 okurz@suse.com
  - Update to version 4.6.1695760067.7b58081:
    * t: Fix api/13-influxdb.t timezone issue
* Fri Sep 22 2023 okurz@suse.com
  - Update to version 4.6.1695350713.4878536:
    * Dependency cron 2023-09-22
    * scheduler: Log statistics of rejected jobs
    * Fix key navigation on test details
    * Fix usage of spew with empty content
    * Update code according to new Perl::Tidy
    * Update Perl::Tidy to 20230909
    * Adapt to deprecation of spurt in upstream Mojolicious
    * Dependency cron 2023-09-13
    * git subrepo pull (merge) external/os-autoinst-common
    * Fix websocket warning not to include the status "working"
    * Log an info message when worker status updates are too frequent
    * Make searching for unfinished jobs faster
    * Makefile: Make replacements in unit files more robust
    * Optimize get_property method
    * Add scheduler test with more workers and jobs
    * Remove optional allocated_ parameters from schedule
    * Extract _allocate_jobs
    * Make max_running_jobs a hard limit
* Sun Sep 10 2023 okurz@suse.com
  - Update to version 4.6.1694191490.cda0470:
    * Increase min/max values for worker status updates
    * Remove worker population broadcasts
* Fri Sep 08 2023 okurz@suse.com
  - Update to version 4.6.1694101660.598baea:
    * Fix missing Conflicts in unit files
    * Remove redundant worker SELECT query
* Wed Sep 06 2023 okurz@suse.com
  - Update to version 4.6.1693909530.ff28f36:
    * Remove one UPDATE query from worker status updates
    * contrib: Align the .xml.erp profile to the recent install attempts
    * contrib: Add autoyast profile for SUSE PRG2 o3 workers
* Fri Sep 01 2023 okurz@suse.com
  - Update to version 4.6.1693565748.f367431:
    * Allow settings to wrap into the next line
* Fri Aug 25 2023 okurz@suse.com
  - Update to version 4.6.1692951551.c933949:
    * apparmor: Allow using tesseract
    * Allow using force-result label with all final job states
* Sun Aug 20 2023 okurz@suse.com
  - Update to version 4.6.1692349627.5bfccc7:
    * Remove defaults, should be ensured by OpenQA::Setup already
    * Add usleep_backoff function and use it for asset uploads
* Thu Aug 17 2023 okurz@suse.com
  - Update to version 4.6.1692303781.9dd2c86:
    * Fix scheduler getting max_running_jobs config
    * Add timezone to SQL
* Tue Aug 15 2023 okurz@suse.com
  - Update to version 4.6.1692077260.5fbe296:
    * Make the number of asset upload attempts configurable
    * Log number of remaining retry attempts for asset uploads
    * Display max_running_jobs on /tests page
    * Set max_running_jobs to -1 by default
    * Remove max_conns setting again from Nginx config
* Wed Aug 09 2023 okurz@suse.com
  - Update to version 4.6.1691585432.1459599:
    * Sync testsuite name validation in YAML schema for template and scenario
    * Limit number of running jobs per webui instance
    * openqa-bootstrap: Align Leap repo priorities with documentation
    * Add timezone to SQL query
* Wed Aug 02 2023 okurz@suse.com
  - Update to version 4.6.1690904243.43514d5:
    * docs: Point to new multi-machine setup script instead of manual steps
* Mon Jul 31 2023 okurz@suse.com
  - Update to version 4.6.1690803816.e47aebd:
    * dependencies: Require Mojo OAuth2 plugin
* Sat Jul 29 2023 okurz@suse.com
  - Update to version 4.6.1690598632.46f13d3:
    * Dependency cron 2023-07-29
* Wed Jul 26 2023 okurz@suse.com
  - Update to version 4.6.1690300398.6c9149e:
    * Use regular single quotes in javascript code
    * docs: Fix firewalld service setup commands
    * docs: Use 'trusted' firewall zone same as in setup instructions
    * docs: Use consistent singe-ticks in python code example
* Mon Jul 24 2023 okurz@suse.com
  - Update to version 4.6.1690178908.b9e03ab:
    * tests: Improve failure when comparing expected image results fails
    * Display line breaks in data tables
    * Add X-Forwarded-Proto to nginx config
    * Update docs/WritingTests.asciidoc
    * Update docs/WritingTests.asciidoc
    * Document custom rsync command examples for TESTPOOLSERVER
    * docs: Make multi-machine related code sections directly executable
    * Enhance Python test docs
    * Don't use apache specific www group in fetchneedles
    * Make the job ID copying easier
    * Make the restart and reschedule buttons visually distinguishable
    * Avoid accidental re-triggering of products
    * Allow to partially re-schedule a product from a job
    * Fix re-triggering scheduled products with falsy required params
* Mon Jul 17 2023 okurz@suse.com
  - Update to version 4.6.1689360748.edd4aa1:
    * contrib: Update/extend autoyast profile
* Fri Jul 14 2023 okurz@suse.com
  - Update to version 4.6.1689265095.7be7504:
    * Comment out TLS section in nginx config by default as there are no certs
    * Fix openQA spec to actually build single-instance-nginx subpkg
    * Dependency cron 2023-07-13
* Wed Jul 12 2023 okurz@suse.com
  - Update to version 4.6.1689162874.c51d4b9:
    * Avoid worker to wait until setup timeout on asset errors
    * Add nginx config for tls
    * Avoid asset caching ending up with `Job terminated unexpectedly`
    * Avoid errors in the logs when invalid group IDs are passed
    * Provide single-instance-apache from single-instance
    * Introduce nginx version of the single-instance rpm
    * Prevent bootstrap script retry failed proxy conf with remote script
    * Avoid errors in the logs when invalid job IDs are passed
    * Install nginx webserver in bootstrap script if requested
    * bootstrap: Use correct syntax to pass args to remote script
    * Fix openqa-bootstrap script referencing unbound var
* Sat Jul 08 2023 okurz@suse.com
  - Update to version 4.6.1688760836.a3a5f95:
    * Quote shell vars
    * Remove unreachable shift statement from script arg parsing
    * Convert script/configure-web-proxy from POSIX sh to bash
    * Fix escaping in test tables
    * Allow nginx setup via configure-web-proxy and openqa-bootstrap script
    * Improved nginx config: Provide template and includes
    * Extend install doc to cover nginx
* Wed Jul 05 2023 okurz@suse.com
  - Update to version 4.6.1688565452.efc15ea:
    * Use indented here-documents
    * Fix tests due to postgres error msg filtered in wrong language
* Sun Jul 02 2023 okurz@suse.com
  - Update to version 4.6.1688124489.7f4be1c:
    * Include nginx config in RPM
    * Make sure munin config survives package update
    * Consider devel mode test stable after recent changes
    * Workaround line not being marked as covered
    * Make it more obvious when devel mode fullstack test lacks files
    * Fix race condition at the end of developer mode test
    * Workaround sporadic failures of developer mode test
    * De-duplicate code for re-login in devel mode test
    * t: Reduce likelyhood of sporadic error about not logged in user
* Thu Jun 29 2023 okurz@suse.com
  - Update to version 4.6.1688038171.b33d284:
    * Improve tempdir template uniqueness
* Thu Jun 29 2023 okurz@suse.com
  - Update to version 4.6.1687961273.be57a22:
    * Fix example in openqa-clone-job helptext
* Wed Jun 28 2023 okurz@suse.com
  - Update to version 4.6.1687920426.098ed2e:
    * Dependency cron 2023-06-28
    * Use a unique template for worker tempdir
    * git subrepo pull (merge) external/os-autoinst-common
    * Apply best practices to Dockerfiles
* Sun Jun 25 2023 okurz@suse.com
  - Update to version 4.6.1687532073.e11feac:
    * Do not hardlink symlink assets
    * Reclone external/os-autoinst-common subrepo
* Fri Jun 23 2023 okurz@suse.com
  - Update to version 4.6.1687510203.8d9fc92:
    * Add a hint regarding changes in the external directory
    * Add subpackage openQA-munin
    * Avoid hard dependency on Apache in systemd file
    * Prevent sponsor logo overflow
    * docs: Feature the "single-instance" container most prominently
    * docs: Add single-instance container instructions
    * docs: Remove obsolete note about Leap <15.2
    * Fix style check finding false-positive problems
    * Remove experimental regex from test
    * Simplify regex validation helper
    * Catch regex errors when filtering dashboards
    * Improve regex validation test
    * Delete potential extra lines from regex validation error
    * Simplify regex validation via `use warnings FATAL => 'regexp'`
    * Validate regex for filtering groups on dashboard pages
    * Show possibly returned error message when loading dashboard
* Wed Jun 21 2023 okurz@suse.com
  - Update to version 4.6.1687285703.cd38e7f:
    * munin: Make alert thresholds configurable
    * Limit git diff to a maximum number of commits
    * container: Rely on package-provided script to fix OBS build
    * container: Add healthcheck for single-instance
    * container: Update single-instance according to best practices
* Sun Jun 18 2023 okurz@suse.com
  - Update to version 4.6.1686951519.7cf0865:
    * Update Dockerfiles to Leap 15.5
    * Refresh tools/ci/ scripts for Leap 15.5
    * Fix source view of local case dirs
    * Update CircleCI image to Leap 15.5
* Fri Jun 16 2023 okurz@suse.com
  - Update to version 4.6.1686859477.329edf1:
    * nginx: Set if_modified_since before
    * Use signatures in Shared::Plugin::SharedHelpers
    * Add munin plugin for minion jobs
    * Update CI documentation to use of `pull_request_target`
* Wed Jun 14 2023 okurz@suse.com
  - Update to version 4.6.1686649789.d386b2b:
    * Switch to Leap 15.5 in CI workflow
* Sun Jun 11 2023 okurz@suse.com
  - Update to version 4.6.1686317795.57b586f:
    * Unify `_job_ref` and `_settings_key`
    * Extend tests for behavior of `_INCLUDE_CHILDREN`
    * Simplify code for dependency handling when creating jobs
    * Make `_INCLUDE_CHILDREN` work for nested children
    * Allow partial retrigger
* Fri Jun 09 2023 okurz@suse.com
  - Update to version 4.6.1686302766.69ffe8a:
    * Increase client_body_buffer_size to be larger than UPLOAD_CHUNK_SIZE
    * Add `priority` property to `job_templates` in YAML
    * Add test for wildcard version in yaml
    * Pass job result from os-autoinst's state file to web UI
    * Extract reading state file into a separate function
    * Simplify code for formatting reason
    * t: Use signatures in complete OpenQA::SeleniumTest
    * t: Simplify chromium dir lookup
    * t: Simplify find_element call in 33-developer_mode.t
    * Fix openqa-clone-custom-git-refspec on git-checkout job sources
    * t: Further extract variables in openqa-clone-custom-git-refspec test
    * t: Reduce duplication in clone-custom-git-refspec test
    * t: Reduce length of some test strings in clone-custom-git-refspec
    * Fix timestamp to be actual ns
    * Add max_conns limit to nginx config
    * Add re-try in comments test to mitigate alert problem
    * Switch OBS SCM/CI Workflow to branch_package
    * Add various optimizations and bug fixes for O3 deployment
    * Allow wildcard version in scenarios YAML
    * Remove YAML::PP duplicate_keys option
    * Forbid cyclic references in YAML
    * Fix flaky coverage in Worker::WebUIConnection
    * Add test for rendering Git links in investigation tab
    * documentation: Improve grammar
* Mon Jun 05 2023 okurz@suse.com
  - Update to version 4.6.1685846780.f3b6f99:
    * Dependency cron 2023-06-04
    * Dependency cron 2023-06-03
* Fri Jun 02 2023 okurz@suse.com
  - Update to version 4.6.1685738164.28716cd:
    * Reference further documentation for database migrations
    * Use same selectors in comments test as in real code
    * Show number of minion jobs with hook_rc indicating failure
    * Fix condition evaluation for skip variables
    * Allow overriding variables
    * Build openQA devel container only on archs where chromium is built
    * Improve error handling in comments JavaScript code
    * Improve JavaScript code for commenting further
    * Simplify JavaScript code for adding/updating comments
* Wed May 31 2023 okurz@suse.com
  - Update to version 4.6.1685524945.b4ca723:
    * Improve performance of server-side asset upload handling
    * doc: Improve references for a quick installation
    * openqa-bootstrap: Remove obsolete systemd check
    * openqa-bootstrap: Speedup package installation
    * openqa-bootstrap: Optionally skip SUSE-specifics
    * container: Add single-instance variant
    * openqa-bootstrap: Support systemd-less environments
    * container: Handle potentially already existing certificates gracefully
    * Add development container for openQA
    * Update docs/WritingTests.asciidoc
    * Mention required permisson for webhook based CI setup
    * Use normal operators consistently in `CloneJob` consistently
    * Fix logic in openqa-clone-job
    * Remove unneeded list comprehension in openqa-label-all
    * Remove python3-future from dependencies
    * doc: Improve "Container based setup" section
    * Fix postgres dir permissions for running openqa-bootstrap in nspawn
    * doc: Improve introduction of "Containerized setup" chapter
    * Remove debug "print" in gru plugin
    * Extract formatting of CI check description into function
    * Improve reporting CI status back
    * Take restarted jobs into account when a PR is updated/closed
    * Handle updated/closed PRs via webhook
    * Assign webhook ID when creating a scheduled product from webhook
    * Add indexed column `webhook_id` to scheduled products table
    * Consider a tag's version when cleaning up job results
* Tue May 23 2023 okurz@suse.com
  - Update to version 4.6.1684771865.6dc41fa:
    * doc: Fix wrong paths to container directory
    * Delete worker logs as well when cleaning up job logs
* Sun May 21 2023 okurz@suse.com
  - Update to version 4.6.1684511766.434312e:
    * Make retention periods for jobs outside groups configurable
    * Improve documentation of cleanup under "Getting started"
    * Add tests for cleanup of groupless job results
    * Fix issues in the structuring of cleanup-related documentation
    * Fix sporadic failure in t/ui/18-tests-details.t
    * Remove slash from the path if base_url ends with one
    * Fix warning related to use of `@_` in signatured subroutine
    * Remove codecov token again after problem fixed
    * Only output JSON when using --json-output
    * Explicitly check parameters for scheduling CI jobs
    * Require PR-ID in webhook and improve validation
* Fri May 12 2023 okurz@suse.com
  - Update to version 4.6.1683890027.16a2697:
    * Add test for datetime based build
    * Allow colon in tag's build
    * Fix sporadic failures of comments test
    * Add route to schedule a product via a webhook and report status
    * Explicitly match maintenance repo settings variables
* Tue May 09 2023 okurz@suse.com
  - Update to version 4.6.1683639249.98b3171:
    * Improve non-matching log output in investigation tab
    * Increase heartbeat timeout to 15 minutes
    * Output host of missing api credentials
    * Refactor ISOs-API controller to make it reusable
    * Improve contrast between failed and incomplete color
* Fri May 05 2023 okurz@suse.com
  - Update to version 4.6.1683294886.8a7e554:
    * Fix spec
    * Improve coding style in `_find_network`
    * Fix several issues with `allocate_network`
    * Fix duplication of Devel::Cover requirements specified
    * Dependency cron 2023-05-05
    * CI: Fix codecov upload step with token
    * CI: Use most recent codecov orb 3.2.4
    * CI: Try to fix codecov upload with circleCI orb
    * Add `xz` to worker container
    * Makefile: Fix manual calls of codecov report
* Wed May 03 2023 okurz@suse.com
  - Update to version 4.6.1683023936.135efe1:
    * Improve coding style in code for manual restarting
    * Use subtests to make pagination test descriptions more unique
    * Extract code to cancel other jobs in cluster to function
    * Avoid jobs not part of parallel cluster ending up `parallel_restarted`
    * Make serialization of test results portable
    * Update documentation in accordance with 29bcb6cd
    * Verify and improve restarting behavior in certain case
    * Improve helpers of restarting test
    * Add pagination tests for GET /api/v1/products
    * Add pagination tests for GET /api/v1/machines
    * Add pagination for GET /api/v1/test_suites
    * Improve contrast of Progress bar text
    * Fix surplus whitespaces in source view
    * Don't restart scheduled or running chained parents
* Wed Apr 26 2023 okurz@suse.com
  - Update to version 4.6.1682511024.316b8d8:
    * docs: Use version variable in PackageHub call as well
    * Use constant `WORKER_COMMAND_ABORT`
    * Avoid race condition by waiting for the #text element
    * Improve coding style in `parse_tags_from_comments`
    * Remove mostly useless logging for tag detection
    * Result/Jobs.pm: Update serial console name
* Mon Apr 24 2023 okurz@suse.com
  - Update to version 4.6.1682330950.cdcc4a7:
    * Add minimalistic "health" check route
* Sat Apr 22 2023 okurz@suse.com
  - Update to version 4.6.1682067800.cbbc51b:
    * Improve contrast of progress bar showing number of failures (#5080)
    * Fix non-deleted serial_terminal_user.txt
    * Dependency cron 2023-04-21
    * docs: Add SLE installation instructions
    * docs: Update outdated reference for "job label"
    * Dependency cron 2023-04-20
    * Add conditional check to skip maint updates verification
* Tue Apr 18 2023 okurz@suse.com
  - Update to version 4.6.1681833567.dd4f8b9:
    * Clarify "Pause on failure" does *not* affect screen mismatch
* Sat Apr 15 2023 okurz@suse.com
  - Update to version 4.6.1681375245.d0e672c:
    * Fix typo in installation documentation
    * Improve out-of-the-box experience when invoking web UI container
    * Avoid one layer when building web UI container
    * openqa-clone-job: Apply group settings to all cloned jobs
* Tue Apr 11 2023 okurz@suse.com
  - Update to version 4.6.1681211083.828aa75:
    * Track download count to supress alert if no downloads ongoing
* Sat Apr 08 2023 okurz@suse.com
  - Update to version 4.6.1680796926.68ee481:
    * Show error message from server when commenting fails
* Wed Apr 05 2023 okurz@suse.com
  - Update to version 4.6.1680648567.628cb20:
    * Ensure final status update for cancelled jobs
    * Modernize and improve `obs_rsync.js`
    * Dependency cron 2023-04-04
* Sun Apr 02 2023 okurz@suse.com
  - Update to version 4.6.1680231128.78c4788:
    * Dependency cron 2023-03-31
    * Add a --name option to openqa-cli
    * Make it easier to identify openqa-cli in logs
    * Require and document use of time-sync
    * Update test for cache->_exceeds_limit
    * Fix enabling live stream/log when the backend is not up yet
    * Mention the keyword DSL in the docs
    * Avoid live view getting stuck in a certain case
    * Correct formula in _exceeds_limit when CACHE_MIN_FREE_PERCENTAGE is set
    * Add documentation for running openQA jobs as CI checks
    * Add test for case of correct key and wrong secret
    * Fix logging reason of auth errors
* Mon Mar 27 2023 okurz@suse.com
  - Update to version 4.6.1679910590.9fc2aa0:
    * Remove obsolete frontend code for sending commands to worker
* Sat Mar 25 2023 okurz@suse.com
  - Update to version 4.6.1679673928.0929919:
    * Streamline `openqa-clone-job` output with `openqa-cli schedule`
    * Render web UI URLs for jobs created via `openqa-cli schedule`
    * Assign dependencies when cloning jobs with children but without parents
    * Prevent github from caching badges too long
    * Provide container image to trigger/monitor jobs as CI
    * Make key-auth work for openQA instances under nested path
* Wed Mar 22 2023 okurz@suse.com
  - Update to version 4.6.1679501784.c715f72:
    * Add advice to timestamp mismatch error
    * Unify handling formatting args of `openqa-cli` sub cmds
    * Don't be quiet about errors of `openqa-cli schedule`
    * Don't rely on js for badge length setting
    * Improve variable declarations in `43-cli-schedule.t`
    * Avoid changing Perl-global for UTF-8-encoded output in CLI
    * Combine `openqa-cli api` options `-r` and `-m`
    * Streamline "waiting" output between `openqa-cli` sub commands
    * Reuse retry from `openqa-cli api` in `openqa-cli schedule`
    * Tweak retry-loop of `openqa-cli`
    * Move retry-loop from `api.pm` to baseclass to use in other cmds
    * Remove unused variable in `api.pm`
    * Allow scheduling and monitoring a product via `openqa-cli`
    * Evaluate comment contents on carry-over
* Mon Mar 20 2023 okurz@suse.com
  - Update to version 4.6.1679268237.39af241:
    * Optimize database queries for next/previous
* Sat Mar 18 2023 okurz@suse.com
  - Update to version 4.6.1679074680.4609521:
    * Remove unused variable in `_sort_dep`
    * Improve test for `_SKIP_CHAINED_DEPS`
    * Make t_created unambiguous in SQL
* Wed Mar 15 2023 okurz@suse.com
  - Update to version 4.6.1678883699.d3ce35d:
    * Add note about hook script in carry over comment
    * Extract locating hook script for job into separate function
    * Improve coding style in `carry_over_bugrefs`
    * Improve auth test
    * Test OpenID error handling
    * Fix "Useless use of a constant" in auth test
    * Make it easier to distinguish OpenID-related errors
    * Fix `restart_job` jobs failing with `already has clone`
    * Avoid failing coverage check in ISO-API test
    * Simplify example for scenario YAML mentioned in documentation
    * Improve coding style of ISO-API tests
    * Move tests for scheduling from YAML into separate file
    * Split tests for scheduling from YAML file
    * Make machines/products in scenario definitions YAML optional
    * Refactor code for scheduling jobs from YAML file
    * Use constant to avoid duplicating default job priority
    * Document supplying scenario definitions via YAML
    * Extend test checks for YAML-related error handling to cover context
    * Simplify code for returning from `_schedule_from_yaml`
    * Use signatures in helper functions of `_schedule_from_yaml`
    * Allow specifying scenario definitions YAML content directly
    * Remove stub with TODO for cloning a Git repo to retrieve YAML file
    * Rename `SCHEDULE_FROM_YAML_FILE` to `SCENARIO_DEFINITIONS_YAML_FILE`
    * Validate scenario definitions passed for scheduling an ISO explicitly
    * Fix various problems with the function for scheduling from YAML file
    * Improve tests for scheduling an ISO using definitions from YAML file
    * Load job templates from YAML file when scheduling isos
* Mon Mar 13 2023 okurz@suse.com
  - Update to version 4.6.1678589270.14d05d8:
    * Dependency cron 2023-03-12
    * Dependency cron 2023-03-11
* Sat Mar 11 2023 okurz@suse.com
  - Update to version 4.6.1678383164.7327f0f:
    * Add bage for openQA in openQA test (appliance) (#5030)
* Wed Mar 08 2023 okurz@suse.com
  - Update to version 4.6.1678283083.88597fc:
    * Trigger job finalization reliably from livehandler
    * Run cache.fullstack job also in nightly job
    * Use Minion's dependency handling to restart before finalizing
    * Invoke hook script only after the first restart attempt
    * Avoid ugly checks for Gru in enqueuing functions for jobs
    * Improve error handling when automatically restarting a job
    * Update docs/UsersGuide.asciidoc
    * Add openQA status badges
* Sat Mar 04 2023 okurz@suse.com
  - Update to version 4.6.1677862140.c495768:
    * Make --skip-deps and --skip-chained-deps work as described in the docs
* Wed Mar 01 2023 okurz@suse.com
  - Update to version 4.6.1677511074.f74fdc6:
    * Extend test for RETRY and user-cancelled jobs
* Mon Feb 27 2023 okurz@suse.com
  - Update to version 4.6.1677486029.9cf9ed8:
    * Mark WORKER_COMMAND_CANCEL condition as uncoverable
* Sat Feb 25 2023 okurz@suse.com
  - Update to version 4.6.1677163264.aee8d8c:
    * Do not restart user-cancelled job with RETRY
* Wed Feb 22 2023 okurz@suse.com
  - Update to version 4.6.1676994766.f6873b5:
    * Replace fragile awk script with AssetPack config file
    * Add basic test for re-routing
    * Cover remaining places in code that need adjustment for re-routing
    * Refactor re-routing; move the code into a separate function
    * Allow re-routing via `Mojolicious::Plugin::RequestBase`
    * Mention GITHUB_TOKEN in the usage
    * Note the format for NEEDLES_DIR
    * Allow escaping percentage signs in job settings to avoid substitution
    * Make generate-packed-assets return non zero in case of errors
    * Fix regex to get AssetPack plugins
    * Revert "Revert "Retry asset downloads automatically""
    * OBS: Do not test builds on EOL Leap 15.3
* Mon Feb 20 2023 okurz@suse.com
  - Update to version 4.6.1676689467.218fd47:
    * Dependency cron 2023-02-18
* Sat Feb 18 2023 okurz@suse.com
  - Update to version 4.6.1676652271.14173e7:
    * Revert "Retry asset downloads automatically"
    * Enable build for PowerPC after openQA packages are no longer noarch
    * Retry asset downloads automatically
    * Add pagination for GET /api/v1/workers
    * Remove unused 'backend_info'
    * Track coverage of test server spawned by `t/25-downloader.t`
    * Avoid caveats of `Archive::Extract` using `bsdtar` instead
* Wed Feb 15 2023 okurz@suse.com
  - Update to version 4.6.1676474487.945e502:
    * Remove noarch from openQA.spec
    * Dependency cron 2023-02-15
    * Update documentation of bug references and labels to meanwhile changes
    * Fix investigation git log
    * Render bugrefs as clickable links within labels
    * Use signatures in Markdown module
    * Ensure consistent openQA version when installing openQA-local-db
* Sat Feb 11 2023 okurz@suse.com
  - Update to version 4.6.1676033243.8d9ce6f:
    * Fix off-by-one error when limiting jobs API route using `latest=1`
    * Restore font color of main menu actions
    * Dependency cron 2023-02-09
* Wed Feb 08 2023 okurz@suse.com
  - Update to version 4.6.1675863678.6b1808c:
    * Improve appearance of tables
    * ci: Point out how to fix an empty cache
* Sat Jan 28 2023 okurz@suse.com
  - Update to version 4.6.1674746026.5aaec11:
    * Avoid errors about changing the working directory after asset extraction
    * Fix error when displaying help for minion sub command
* Wed Jan 25 2023 okurz@suse.com
  - Update to version 4.6.1674655858.a839999:
    * Avoid ugly underline when hovering over "Delete asset from disk" button
    * Allow to search for an asset in the asets table from "Downloads" tab
    * Clarify that delete button on the assets table will delete file on disk
    * Allow specifying search term for asset table via URL query parameter
    * Improve coding style in setup code for assets table
    * Initialize Mojolicious::Static only in one place
    * Fix missing input validation for needle API endpoints
* Mon Jan 23 2023 okurz@suse.com
  - Update to version 4.6.1674465154.bcd646c:
    * t/24-worker-jobs.t: Add virtio_console_user.log to Livelog
    * Job(s): Add virtio_console_user.log to live serial output
    * Result/Jobs.pm: Link also virtio_console_user.txt
    * Worker/Job.pm: Document serial_terminal.txt
    * Worker/Job.pm: Upload virtio_console_user.log
    * Worker/Job.pm: Rename all .log to *.txt
    * t/24-worker-jobs.t: DRY
* Sat Jan 21 2023 okurz@suse.com
  - Update to version 4.6.1674133294.994bfb0:
    * Avoid another race condition by waiting for the #text element
* Mon Jan 16 2023 okurz@suse.com
  - Update to version 4.6.1673871170.29e858b:
    * Fix build by providing postgresql during build
* Fri Jan 13 2023 okurz@suse.com
  - Update to version 4.6.1673622416.c01e5cb:
    * Change type of `owner` column to bigint in consistency with jobs table
    * Add postgresql service to requirements
    * Avoid deadlock when updating asset size during job creation
    * Fix asset cache error handling to avoid proceeding in case of failures
    * Add missing `use Mojo::UserAgent`
    * Clean up /api/v1/jobs pagination and remove unused code
    * Add pagination for GET /api/v1/jobs
    * Avoid race condition by waiting for the #text element
    * Dependency cron 2023-01-10
    * Revert "Add postgresql service to requirements"
* Sun Jan 08 2023 okurz@suse.com
  - Update to version 4.6.1673059575.c051c08:
    * Dependency cron 2023-01-07
    * Try running the full-stack test without retry
    * Add postgresql service to requirements
    * Pin css_parser to version 1.12.0 because newer need ruby 2.7
    * Dependency cron 2023-01-05
* Sat Dec 24 2022 okurz@suse.com
  - Update to version 4.6.1671708203.c9f8b10:
    * Dependency cron 2022-12-22
    * codecov.yml: Introduce specific coverage thresholds
    * codecov: Remove redundant duplication of default values and range
    * Avoid jobs from being stuck in state "running"
* Wed Dec 21 2022 okurz@suse.com
  - Update to version 4.6.1671625243.c73687c:
    * Use signatures in WebAPI::Controller::Running
    * Avoid deadlock when updating asset size during job creation
    * Improve `t/api/04-jobs.t`
* Sat Dec 17 2022 okurz@suse.com
  - Update to version 4.6.1671158755.972ff1f:
    * Dependency cron 2022-12-16
* Wed Dec 14 2022 okurz@suse.com
  - Update to version 4.6.1671027455.dda1de5:
    * container: Install tessseract so we can test OCR
    * Dependency cron 2022-12-14
    * Split big transaction in stale job detection
    * Remove unused function `set_running`
* Mon Dec 12 2022 okurz@suse.com
  - Update to version 4.6.1670662257.ab43bbd:
    * Use signatures in OpenQA::Shared::Plugin::Gru
* Sat Dec 10 2022 okurz@suse.com
  - Update to version 4.6.1670600800.c750f3b:
    * Use signatures in OpenQA::Schema
    * Fix race-condition reading job module details files
    * Inform about dependencies before running tests
    * Increase timeouts of tests api/14 and ui/13
* Wed Dec 07 2022 okurz@suse.com
  - Update to version 4.6.1670432877.32837b1:
    * Protect second asset size update from possible deadlocks
    * Support use-case of "local" worker when detecting worker address
    * Extract code for determining whether a host is local
    * tests: Consume expected fake error from web socket
    * Condense scheduling debug output to single line
    * Fix missing `wait_for_ajax` call in comments test
    * Catch error and return 404 for module_fails with non existing test
    * Protect one asset size update from possible deadlocks
    * Avoid running jobs with undetermined worker address
    * Add signatures in OpenQA::Task::Bug::Limit
    * Add signatures in OpenQA::Task::Job::Limit
    * Add signatures in OpenQA::Task::Job::FinalizeResults
    * Add signatures in OpenQA::WebAPI::Controller::Admin::Needle
    * Add signatures in OpenQA::WebAPI::Controller::API::V1::Bug
    * Add signatures in OpenQA::WebAPI::Auth::Fake
    * t: Add signatures in cache-service
    * t: Add signatures in build_tagging
    * t: Add signatures in grutasks
    * t: Bump timeout of ui/21-admin-needles.t based on local runtime
    * Simplify _create_clones with post-for
    * Extract methods for creating clones with right dependency
* Sat Dec 03 2022 okurz@suse.com
  - Update to version 4.6.1669922159.5e076a0:
    * Fix typos in developer mode documentation
    * Add support for absolute URLs to openqa-cli
    * Add --links option to openqa-cli for pagination
    * Allow using 'pngquant' instead 'optipng'
    * Allow ignoring failure when paused on specific command
    * Ensure openQA-single-instance pulls in same version of openQA
* Tue Nov 29 2022 okurz@suse.com
  - Update to version 4.6.1669740924.a0f6803:
    * Add pagination for GET /api/v1/bugs
    * Extract opening/configuring cache service SQLite db into functions
    * Avoid `database is locked` errors if SQLite writes are slow
    * Add pagination for GET /api/v1/assets
* Sat Nov 26 2022 okurz@suse.com
  - Update to version 4.6.1669397828.6ece53c:
    * Add UI for pausing on failure via developer mode
    * Dependency cron 2022-11-25
    * Revert "Use signatures in OpenQA::Shared::Plugin::Gru"
    * tools: Fix hadolint for systems running in SELinux enforcing mode
    * Dependency cron 2022-11-25
    * Simplify loop in in OpenQA::Task::Needle::Scan
    * OpenQA::Schema::ResultSet::DeveloperSessions: Extract method
    * Use signatures in OpenQA::Shared::Plugin::Gru
    * Use signatures in OpenQA::CacheService
    * Use signatures in OpenQA::Task::Needle::Scan
    * OpenQA::WebAPI::Controller::Admin::Workers: Delete redundant comment
    * Move 'dsn' function to only place used'
    * Use signatures in OpenQA::Schema
* Wed Nov 23 2022 okurz@suse.com
  - Update to version 4.6.1669212003.b93eb7f:
    * Fix hadolint check
    * Use signatures in WebAPI::Controller::Step
* Mon Nov 21 2022 okurz@suse.com
  - Update to version 4.6.1668839343.05e490d:
    * Dependency cron 2022-11-19
* Sat Nov 19 2022 okurz@suse.com
  - Update to version 4.6.1668778874.64c641d:
    * Bump actual limits to higher to fix users unable to get results
    * Simplify WebAPI::Controller::API::V1::Job
    * Remove obsolete WebAPI::Controller::API::V1::Job::result
    * OpenQA::WebAPI::Controller::API::V1::Job: Simplify
    * OpenQA::WebAPI::Controller::API::V1::Job: Use signatures
    * OpenQA::Schema::ResultSet::Bugs: Use signatures
    * Use signatures in complete OpenQA::Worker
    * Use signatures for OpenQA::Utils::run_cmd_with_log_return_error
    * OpenQA::Utils: Simplify human_readable_size
* Wed Nov 16 2022 okurz@suse.com
  - Update to version 4.6.1668597146.2561fef:
    * Avoid relying on DNS setup to determine worker registration name
    * Fix "Use of uninitialized value" in OpenQA/Worker.pm
    * Bump query limits to higher limits to fix users unable to get results
    * Avoid misuse of the word "hostname" in documentation
    * Use more compact coding style in developer mode UI test
    * Fix submitting "Pause on next command" selection of developer mode
    * Auto-detect `WORKER_HOSTNAME` on worker startup if not set explicitly
    * Clarify "worker hostname" logged on worker startup
    * docs: Add a suggested workflow documentation for test review
* Sat Nov 12 2022 okurz@suse.com
  - Update to version 4.6.1668162974.2b84746:
    * Add distinct set of limits for assets
    * Limit implementation for sub list_scheduled_ajax
    * Limit implementation for sub list in Jobs.pm
    * Limit implementation for sub list in Worker.pm
    * Limit implementation for sub list in Table.pm
    * Limit implementation for sub list in Comment.pm
    * Limit implementation for sub list in Bug.pm
    * Limit implementation for sub list in Asset.pm
    * Initialize generic default and max limits
    * Add unit test for scheduled jobs limiting
    * Add unit test for jobs limiting (api call)
    * Add unit test for workers limiting (api call)
    * Add unit test for products limiting (api call)
    * Add unit test for machines limiting (api call)
    * Add unit test for comments limiting (api call)
    * Add unit test for bugs limiting (api call)
    * Add unit test for assets limiting (api call)
* Wed Nov 09 2022 okurz@suse.com
  - Update to version 4.6.1667998549.1a9c56e:
    * Handle concurrent job deletion when updating job result size
    * Sort vars.json by key
    * Dependency cron 2022-11-08
    * Use signatures in OpenQA::Scheduler
    * Add an API endpoint to find jobs with certain job settings
    * Restore formatting of `vars.json` after a523306
    * Remove likely unneeded code in WebAPI::Plugin::REST
    * Use signatures in OpenQA::WebAPI::Plugin::REST
* Mon Nov 07 2022 okurz@suse.com
  - Update to version 4.6.1667810206.2bf912d:
    * Clean up git repository before rebase
    * Use more signatures in OpenQA::CacheService
* Sat Nov 05 2022 okurz@suse.com
  - Update to version 4.6.1667577561.41a898b:
    * Fix log upload from openQA jobs in case of read-only cache directory
    * Add tests for SUSE branding
    * Add button to insert marker for unblocking incident to OSD branding
    * Allow customizing commenting tools via branding
    * Use signatures in WebAPI::Controller::Main
    * Use signatures in WebAPI::Controller::File
    * Use signatures in WebAPI::Controller::Developer
    * Use signatures in WebAPI::Controller::ApiKey
* Wed Nov 02 2022 okurz@suse.com
  - Update to version 4.6.1667397351.67490e1:
    * Simplify database operations in WebAPI::Controller::Test
* Sat Oct 29 2022 okurz@suse.com
  - Update to version 4.6.1666949337.70dda4e:
    * Use signatures in WebAPI::Controller::Test
    * Revert "Add button to insert marker for unblocking incident to OSD branding"
    * Implement server-side max and default limit
    * Add limits initialization for next previous ajax
    * Add ajax subtest to 16-tests_jobs_next_previous.t
    * Add button to insert marker for unblocking incident to OSD branding
    * Allow customizing commenting tools via branding
* Wed Oct 26 2022 okurz@suse.com
  - Update to version 4.6.1666772157.b8fb43f:
    * docs: Use consistent writing "openQA"
    * Fix bug where some pages briefly show up with light theme in darkmode
    * Document interaction of custom dirs with default-initialization
    * Improve documentation about triggering tests of custom versions
    * Allow specifying `NEEDLES_DIR` to be relative to `CASEDIR`
    * Fix invisible buttons in some forms with darkmode
    * Fix overview table header in darkmode
    * Fix jumbotron and card background in darkmode
    * Bring back the old light theme
    * t: Fix timing error
    * Fix host/port in broken t/25-cache-client.t
    * Fix cache service host config for IPs != 127.0.0.1
    * Show correct job status in worker job list
    * Add theme settings and replace media queries with .darkmode class
    * Fix error handling in web UI download jobs since 4cee25f
    * Add darkmode capability
    * docs: Simplify developer mode firewall rules
    * Add distri-opensuse specific worker container dockerfile
    * Improve rendering "waiting for background (GRU) tasks"
* Sat Oct 22 2022 okurz@suse.com
  - Update to version 4.6.1666370010.771049f:
    * Log used worker cache URL in case of a connection error
    * Make cacheservice URL configurable via `workers.ini`
    * Support skip and broken results in LTP parser
    * Document specifying the version when tagging builds
    * Ensure no more secrets are present in `vars.json` before uploading it
* Wed Oct 19 2022 okurz@suse.com
  - Update to version 4.6.1666187714.761da80:
    * Switch to signatures for Auth/Fake.pm and Auth/OpenID.pm
    * t: Reuse same cache service in 25-cache-service to speedup
    * t: Remove redundant check for service availability in 25-cache-service.t
    * Avoid alerts by not failing Minion jobs when downloads fail
    * Extend checks in Gru test to verify whether job state is expected
    * Set openQA job reason when preparation Gru task fails
    * Extend GRU tests to check whether associated job is incompleted
    * Allow passing error to user from GRU task without failing Minion job
    * Refactor certain GRU tests into sub tests
    * Use `LC_ALL` instead of `LANG` to set locale for tests
    * Document accessing the test database
    * Avoid test failures due to localized error messages
* Sat Oct 15 2022 okurz@suse.com
  - Update to version 4.6.1665644111.e43a7ac:
    * t: Fix leaked cache service processes on test abort
* Wed Oct 12 2022 okurz@suse.com
  - Update to version 4.6.1665594818.5464316:
    * Use signatures in OpenQA::WebAPI::Description
    * Use signatures in OpenQA::YAML
    * Add signatures to lib/OpenQA/WebAPI.pm
    * Use signatures in lib/OpenQA/LiveHandler.pm
    * Add help popover for limiting number of finished jobs
    * Allow passing additional arguments when rendering help popover
* Fri Oct 07 2022 okurz@suse.com
  - Update to version 4.6.1665149803.0112fa5:
    * Clean stale lockfiles when fetching needles
    * Dependency cron 2022-10-06
    * t: Improve scope of daemon variable in 25-cache-service.t
    * t: Correct naming "start_servers" in 25-cache-service.t
    * t: Fix sporadic failure in 25-cache-service
    * t: Use signatures in 24-worker-engine.t
    * t: Use signatures in 25-cache-service.t
    * Use signatures in OpenQA::WebAPI::Controller::Admin
    * Use the workers count from Minion 10.25 to make monitoring more reliable
    * Reduce two verbose log messages to trace level
    * Use signatures in Schema::ResultSet::Screenshots
* Mon Oct 03 2022 okurz@suse.com
  - Update to version 4.6.1664678755.af47120:
    * Dependency cron 2022-10-02
* Fri Sep 30 2022 okurz@suse.com
  - Update to version 4.6.1664521936.e5f3b8b:
    * codecov: Bump thresholds to current coverage
    * Refactor listing job_templates
    * Limit listing of job_templates to avoid timeouts
    * Add bugzilla link for ALP in webUI
    * Document GitHub user setup for nightly jobs
    * Delete unused route 'tests export'
    * Dependency cron 2022-09-28
* Wed Sep 28 2022 okurz@suse.com
  - Update to version 4.6.1664284663.969184c:
    * Include virtio VGA support in the openqa_worker container
* Fri Sep 23 2022 okurz@suse.com
  - Update to version 4.6.1663941254.b479233:
    * Prevent stalebot from closing stale issues
    * Improve performance of 3 api endpoints by about 312% (for O3 data)
    * Replace references of `openqabot` with new bot user `os-autoinst-bot`
    * Fix the cloning of job when the corresponding variable is manually set
    * Dependency cron 2022-09-21
* Wed Sep 14 2022 okurz@suse.com
  - Update to version 4.6.1662979895.bd3bc01:
    * Dependency cron 2022-09-12
* Mon Sep 05 2022 okurz@suse.com
  - Update to version 4.6.1662260703.ebbd448:
    * Dependency cron 2022-09-04
* Fri Sep 02 2022 okurz@suse.com
  - Update to version 4.6.1662134472.4423be7:
    * Use regex in `_translate_cond`
    * Avoid 500 response (and log message) if needle route is used wrongly
    * Fix AJAX/parsing error in needle tables
    * Re-write `_translate_date_format` more compactly
    * Use signatures in code for parsing timestamps of needle table filtering
    * Avoid race condition when creating result directories
* Mon Aug 29 2022 okurz@suse.com
  - Update to version 4.6.1661784564.0b6acba:
    * Add one line padding to allow space for scrollbar in FF
* Mon Aug 22 2022 okurz@suse.com
  - Update to version 4.6.1661179045.6cedcbd:
    * generate-documentation: pin publix_suffic to 4.0.7
    * Add support for pagure.io and gitlab.gnome.org trackers
    * Don't try and log without importing the log function
    * Add a check to detect when maintenance update has already been released
* Sat Aug 20 2022 okurz@suse.com
  - Update to version 4.6.1660819425.c8126a5:
    * Fix signal guard for hook script since it is a separate Minion task
    * Document configuring ports for developer mode with firewalld
* Thu Aug 18 2022 okurz@suse.com
  - Update to version 4.6.1660790631.9c38795:
    * Dependency cron 2022-08-18
    * contrib: Remove conflicting product selection in autoyast
* Mon Aug 15 2022 okurz@suse.com
  - Update to version 4.6.1660580984.7191508:
    * Fix grammar mistakes in MM documentation
    * Move doc sections about debugging/verifying MM setup to end
    * Mention `ovs-dpctl` commands in Open vSwitch debugging section of docs
    * Document how to verify whether the MM setup works
    * Remove weird bullet points in MM setup documentation
    * Document firewalld setup with just the `trusted` zone for MM setup
    * Improve section headings in MM setup documentation
    * Mention salt states in MM setup documentation
* Sat Aug 13 2022 okurz@suse.com
  - Update to version 4.6.1660317202.3912a15:
    * Dependency cron 2022-08-12
    * docs: Add note about gre_tunnel_preup executable bit
* Wed Aug 10 2022 okurz@suse.com
  - Update to version 4.6.1660127430.c57e24c:
    * apparmor: Allow run of ping which is required for ipmi backend jobs
* Thu Aug 04 2022 okurz@suse.com
  - Update to version 4.6.1659521059.d04080d:
    * Limit maximum number of finished jobs shown on "All tests" server-side
* Mon Aug 01 2022 okurz@suse.com
  - Update to version 4.6.1659353820.539e6c4:
    * Avoid server error if vars.json is missing in investigation
* Sun Jul 24 2022 okurz@suse.com
  - Update to version 4.6.1658503430.1290d12:
    * Use new Leap repository name format
    * Avoid potential problem in audit log test
    * Document enabling the AMQP plugin (and not just configuring it)
    * Only apply the domain passlist-check for ASSETS as documented
    * Prevent error about "unreadable git hash"
    * Fix sort order of comments on job details page
    * Fix sorting of jobs that have never run on 'All tests' page
* Wed Jul 20 2022 okurz@suse.com
  - Update to version 4.6.1658331411.61dd85b:
    * Adapt scripts to pass stricter checks of new shellcheck
    * Dependency cron 2022-07-20
    * container: Fix unresolved opencv dependency on Leap15.4+Tumbleweed
    * Switch helm charts to current openSUSE Leap 15.4 as well
    * apparmor: Support rootless podman containers
* Fri Jul 15 2022 okurz@suse.com
  - Update to version 4.6.1657915260.7ecfb9e:
    * worker: Retry registration on timestamp mismatch
    * Dependency cron 2022-07-15
    * Switch development base to current openSUSE Leap 15.4
    * container: Update CI base to Leap 15.4
    * Render multi-URLs in job settings correctly
* Mon Jul 11 2022 okurz@suse.com
  - Update to version 4.6.1657537268.d9bba8e:
    * apparmor: Allow grep needed by git-call
* Sat Jul 09 2022 okurz@suse.com
  - Update to version 4.6.1657347231.a3994a3:
    * Fix unstable `t/ui/23-audit-log.t` by implementing wait condition
    * Ensure sequences are converted to bigint
    * Avoid running out of database IDs - remaining tables
* Thu Jul 07 2022 okurz@suse.com
  - Update to version 4.6.1657137732.c5622d5:
    * Allow configuring results to collapse as parallel children on overview
    * apparmor: Allow mktemp needed by git-call
    * Clarify client documentation about --accept option
    * Add custom live review resolution
    * Add custom resolution to needle editor
    * Display custom screenshot resolution in webUI
* Mon Jul 04 2022 okurz@suse.com
  - Update to version 4.6.1656945135.425b473:
    * Dependency cron 2022-07-04
    * Fix liveview dysfunctional with directly chained jobs
    * Dependency cron 2022-07-02
* Fri Jul 01 2022 okurz@suse.com
  - Update to version 4.6.1656666331.ed970be:
    * Mark t/ui/23-audit-log.t as unstable
    * CI: Fix execution of compound statements with "retry"
    * CI: Retry also on sporadic install errors
* Fri Jun 24 2022 okurz@suse.com
  - Update to version 4.6.1656072301.e097342:
    * Fix use of --no-refresh in continuous-update
    * Avoid unintended vendor changes in openqa-continuous-update
    * Makefile: Ensure "test" includes also helm tests
    * Makefile: Prevent repetition of test-with-database call definition
    * Retry hook scripts that use the exit code 142
    * Add Chart Testing tool to CI workflow
    * Add simple static check for Helm chart
    * Add sub charts as dependencies to allow linting
    * Add Helm chart for openQA-webui
    * Exclude templated helm files from yamllint check
    * Add Helm chart for openQA-worker
    * Document working on database-related performance problems
    * Fix warning "Query returned more than one row" for linked comments
    * Avoid running out of database IDs - worker tables
    * Fix too verbose message about unrecognized referer
* Wed Jun 22 2022 okurz@suse.com
  - Update to version 4.6.1655873339.ed30901:
    * Dependency cron 2022-06-22
    * Use ANY instead of IN for SQL query with variable placeholders
    * Fix perl 5.36 warnings on use of @_ in functions with signature
* Sun Jun 19 2022 okurz@suse.com
  - Update to version 4.6.1655534464.7831729:
    * Add warning before possibly long migration to bigint IDs
    * Avoid running out of database IDs - jobs table
* Fri Jun 17 2022 okurz@suse.com
  - Update to version 4.6.1655450799.f096817:
    * Dependency cron 2022-06-17
    * ci: Test on Leap 15.4
    * docs: Fix explanation for TIMEOUT_SCALE
* Wed Jun 15 2022 okurz@suse.com
  - Update to version 4.6.1655223618.b5506d7:
    * Extend regex to restart jobs in case of VNC errors automatically
* Fri Jun 10 2022 okurz@suse.com
  - Update to version 4.6.1654784458.53a0598:
    * Fix permissions for markdown scripts in apparmor
    * Avoid race condition in Selenium test helper `element_hidden`
    * doc: Add note about openqa-worker-plain@.service
    * Allow Markdown.pl in apparmor
    * systemd: Depend on time being in sync if possible
* Wed Jun 08 2022 okurz@suse.com
  - Update to version 4.6.1654597213.d04d22b:
    * Fix regression by moving tests/overview limit from SQL back to Perl
* Sun Jun 05 2022 okurz@suse.com
  - Update to version 4.6.1654268802.d627369:
    * CI: Simplify combination of mergify rules
    * CI: Automatically merge necessary dependency updates
    * Replace openqa-worker@ with a link to openqa-worker-plain@
* Fri Jun 03 2022 okurz@suse.com
  - Update to version 4.6.1654246580.7c8d679:
    * Dependency cron 2022-06-03
    * jobs: Emit cancel_by_settings in all cases
    * Avoid unhandled log output
    * Use combined operators
* Wed Jun 01 2022 okurz@suse.com
  - Update to version 4.6.1654007249.47fe286:
    * Improve variable naming
    * Remove unnecessary monkey patch
    * jobs: Supply a reason in all cases
    * Remove a pointless git warning
    * Prevent dangerous package removal by forcing resolution
    * t: Simplify ui/23-audit-log.t again to use no fixtures
    * t: Prevent race-condition in t/ui/23-audit-log.t
    * t: Adjust timeout of ui/23-audit-log.t to local runtime
    * t: Introduce subtest for better segmentation in ui/23-audit-log.t
* Sun May 29 2022 okurz@suse.com
  - Update to version 4.6.1653656710.7e5eb62:
    * Extend tests for expanding/collapsing feature in test overview
* Fri May 27 2022 okurz@suse.com
  - Update to version 4.6.1653501113.88a17ce:
    * Allow markdown in apparmor
    * Generalize fix from previous commit for all kinds of comment creations
    * Prevent new comments from being considered edited
    * Fix workaround for sporadic error in comments test
    * Document `_TRIGGER_JOB_DONE_HOOK` and generic hook script
    * Introduce job setting `_TRIGGER_JOB_DONE_HOOK` to disable/enable hook
    * Extract code for running hook script into separate function
* Wed May 25 2022 okurz@suse.com
  - Update to version 4.6.1653423899.eb3c8f7:
    * Add a limit for the maximum number of jobs to include in /tests/overview
    * Fix showing too many expand/collapse buttons on test overview
    * Don't log_debug git stdout in all cases
    * Improve debugging of _carry_over_candidate
    * Make button to toggle parallel children easier to click
    * Add "Expand all parallel children" button on test result overview
* Sun May 22 2022 okurz@suse.com
  - Update to version 4.6.1653068134.449d730:
    * Fix missing import of 'log_info'
    * Reduce log-level of non-critical issue
    * Add configuration for expiring minion jobs
    * Simplify setup by removing path rewrite
* Fri May 20 2022 okurz@suse.com
  - Update to version 4.6.1652976468.5c2628c:
    * Fix alignment of avatar icons beside comments
    * Add button to insert (force result) label into comment text
    * Limit git log in investigation tab
    * Add route for WebSockets to allow communication without a proxy
    * worker: Move formatting of settings to logging module
    * worker: Extract formatting settings (for log) into separate function
    * worker: Avoid logging secret variables
    * Dependency cron 2022-05-18
* Tue May 17 2022 okurz@suse.com
  - Update to version 4.6.1652799331.7cf3159:
    * Test comment event link in audit log
    * Link to individual comments from the audit log
    * Use a shared method to generate comment event data
    * Mark comment helper methods as private
    * Fix displaying of investigation git log
* Fri May 13 2022 okurz@suse.com
  - Update to version 4.6.1652425252.aca9f0c:
    * Dependency cron 2022-05-13
    * Prevent job_done_hooks not knowing that jobs will be retried
    * Fix comment event names in AuditLog plugin
    * Fix the force execution mode in fetchneedles script
    * scripts: Do not hard-code assetdir in openqa-clone-job
    * docs: Update audit event names according to implementation
* Wed May 11 2022 okurz@suse.com
  - Update to version 4.6.1652174357.038f320:
    * Drop previous web socket connection when worker opens a second one
    * Raise log level of job assignment problems when scheduling
    * Log error from ws server when failing to send jobs to the worker
    * Collapse parallel children by default if cluster is passed/softfailed
* Sun May 08 2022 okurz@suse.com
  - Update to version 4.6.1651880189.cec0be3:
    * Install rsync to worker container image
* Fri May 06 2022 okurz@suse.com
  - Update to version 4.6.1651759358.c19bce8:
    * Fix minion jobs stats retrieval DoS on login provider
    * Dependency cron 2022-05-04
    * Allow collapsing all parallel children via button
    * Expand parallel parents by default for less intrusive stacking
    * Fix handling of cycles when stacking parallel jobs
    * Test stacking parallel children on test results overview
    * Avoid underline when hovering icons in test result overview
    * Use `fa-clone` for stacking icons in test results overview
    * Split `stackParallelChildren()` into smaller functions
    * Use indentation and bullet point for parallel child rows
    * Avoid stacking parallel children accross tables
    * Handle multiple archs when stacking parallel children
    * Stack parallel children in test results overview
* Tue May 03 2022 okurz@suse.com
  - Update to version 4.6.1651605690.58b11fb:
    * Do not let schedule_iso jobs expire
    * cache service: Emit download rate only if known
    * Avoid unhandled output in openqa-clone-job tests
    * Allow exporting openqa-clone-job's API call for posting jobs
    * Fix fullstack test
    * Deal with unknown git revision
    * Deal with cleaned up vars.json on investigation tab
    * Dependency cron 2022-05-01
    * Fix controller reuse bug in 03-auth.t
    * Allow sendmail related things in apparmor
* Fri Apr 29 2022 okurz@suse.com
  - Update to version 4.6.1651126518.925dec9:
    * Allow mailx in apparmor
    * Dependency cron 2022-04-27
    * Add simple command to generate HTML documentation
    * Only tidy lib/, t/, tools/ and script/ directory
    * Use OpenQA::Test::PatchDeparse from os-autoinst-common
    * git subrepo pull (merge) external/os-autoinst-common
    * Dependency cron 2022-04-26
    * Allow python3.6 in apparmor
    * Reduce retention of temporary files created by the web UI
* Sun Apr 24 2022 okurz@suse.com
  - Update to version 4.6.1650627339.b7e86d95b:
    * Pin asciidoctor-pdf to a Ruby 2.5 compatible version
    * Fix apparmor for job hooks
* Thu Apr 21 2022 okurz@suse.com
  - Update to version 4.6.1650557297.c7f8e5313:
    * Use regular asciidoctor-pdf release
    * Fix doc headings and numbers
    * docs: Fix typo 'OPENQAATABASE'
    * Sync tools/tidy with os-autoinst
    * Use signatures in Schema::Result::Needles
    * Use signatures in OpenQA::Setup
    * Simplify OpenQA::Setup
* Tue Apr 19 2022 okurz@suse.com
  - Update to version 4.6.1650202155.7a94e8114:
    * Use signatures consistently in complete OpenQA::WebSockets::Client
    * Ensure consistent space for function signatures
* Fri Apr 15 2022 okurz@suse.com
  - Update to version 4.6.1650015172.429d07817:
    * Dependency cron 2022-04-15
    * Add systemd unit to trigger continous deployment from devel:openQA
    * apparmor: Allow podman to be called on workers
    * Allow mutt in apparmor
* Tue Apr 12 2022 okurz@suse.com
  - Update to version 4.6.1649753938.422b00b04:
    * Avoid running into limit when creating job modules
    * Allow python3 in apparmor
    * Prevent unnecessary linebreak in cache service logging
* Sun Apr 10 2022 okurz@suse.com
  - Update to version 4.6.1649490476.badee12aa:
    * Render multiple URLs in scheduled products table correctly
    * Allow scheduling settings like `__…_URL`
    * Avoid corrupted assets on concurrent uploads of same asset
    * doc: Mention the problem of conflicting asset names more explicitly
    * doc: Split asset handling section into more subsections
    * doc: Remove obsolete remark about absolute assets paths
* Thu Apr 07 2022 okurz@suse.com
  - Update to version 4.6.1649340027.0e18e9edf:
    * Render HTTP(S)-URLs in scheduled product settings as links
    * Allow adding scheduling settings for informal purposes via `__`-prefix
    * git subrepo pull (merge) external/os-autoinst-common
* Tue Apr 05 2022 okurz@suse.com
  - Update to version 4.6.1649079466.194e7cda3:
    * Test cancellation with chained job that has multiple parents
    * Ensure consistent cancellation of chained dependent jobs
* Sun Apr 03 2022 okurz@suse.com
  - Update to version 4.6.1648829128.bccf1cfcd:
    * Use syntax to specify SQL-syntax the linter can cope with
    * Fix race condition during asset registration
* Thu Mar 31 2022 okurz@suse.com
  - Update to version 4.6.1648720710.9f444c83a:
    * Dependency cron 2022-03-31
    * Let os-autoinst handle the limit for uploads
    * Don't set `MOJO_MAX_MESSAGE_SIZE` for websocket server
    * Remove upload limit on web UI and worker
    * docs: Add documentation for custom worker engine command ISOTOVIDEO
* Tue Mar 29 2022 okurz@suse.com
  - Update to version 4.6.1648473912.da11be75c:
    * Improve documentation of automatic retires of jobs via `RETRY` setting
    * Fix accidentally re-triggering passed jobs
    * Avoid possible warnings when using `RETRY` as number when it is not one
    * Add job comment about automatic retry (instead of server log message)
    * Dependency cron 2022-03-27
* Sun Mar 27 2022 okurz@suse.com
  - Update to version 4.6.1648235193.5d75dd612:
    * Fix test of openqa-clone-custom-git-refspec
    * Update to Bootstrap v4.6.1 for real
    * Fix for progress bars broken by bootstrap4 update
    * Fix "Last use & match" popover for Bootstrap 4.2.0 and newer
    * Update bootstrap and jquery
    * doc: Extend `openqa-clone-job` documentation for setting variables
    * openqa-clone-custom-git-refspec: Handle dependencies better
    * openqa-clone-job: Allow appending via `+=` syntax
* Thu Mar 24 2022 okurz@suse.com
  - Update to version 4.6.1648129468.28317a4e6:
    * systemd: Remove undesired Wants=network.target (boo#1196359)
    * worker: Remove tracking current sub queue
    * worker: Consider job result from web UI when deciding to skip jobs
    * worker: Fix wrongly skipping directly chained jobs
    * api: Return result/reason correctly when setting job done
    * Prevent error about undefined value in next_previous route
* Tue Mar 22 2022 okurz@suse.com
  - Update to version 4.6.1647892469.8e63f7863:
    * force_result: Allow only a specific list of new results
    * Import log_error
    * Extract function to find the "system" user
    * Use DBIC method 'find' where applicable rather than search->first
    * Dependency cron 2022-03-20
* Sun Mar 20 2022 okurz@suse.com
  - Update to version 4.6.1647710740.7574f1433:
    * Use signatures in Schema::Result::Jobs
    * openqa-clone-job: Allow printing result as JSON
* Thu Mar 17 2022 okurz@suse.com
  - Update to version 4.6.1647535120.9c1b2bd80:
    * Validate assetid in /tests/id/asset/assetid
    * Return 404 for Jobs not found
    * Add support for Mozilla's bug tracker
    * Install script/*_templates compatibility symlinks
    * Adjust self-references in openqa-*-templates(1)
    * Rename script/*_templates -> openqa-*-templates
    * Replace ->search->first with find or count
    * Do not prefetch job assets where not needed
    * openqa-clone-job: Fix adding parameters from CLI to job settings
    * doc: Cover dependency handling of `openqa-clone-job`
    * openqa-clone-job: Clone parallel children by default
    * openqa-clone-job: Add `--clone-parallel-children`
    * openqa-clone-job: Improve code of dependency handling
    * Avoid `finalize_job_results` jobs failing with `Job terminated unexp…`
    * ci: Make packages from `devel:openQA` available in OBS checks
    * openqa-clone-job: Create jobs atomically to avoid dependency problems
    * Move Tour to shepherd.js
* Thu Mar 10 2022 okurz@suse.com
  - Update to version 4.6.1646920189.eb67fcddc:
    * doc: Use "normal" wording instead of `CHAINED` and similar keywords
    * doc: Improve documentation about job dependencies
    * doc: Fix and improve certain references
    * Dependency cron 2022-03-09
    * Remove background color and redundant margin in needle editor
    * Validate `groupid` parameter properly to avoid SQL errors in logs
    * Add example for triggering a single set of jobs to CLI help
    * Add test for destructor of `OpenQA::Worker::WebUIConnection`
* Tue Mar 08 2022 okurz@suse.com
  - Update to version 4.6.1646725675.1ddd06891:
    * Validate `groupid` parameter properly to avoid SQL errors in logs
    * Add test for destructor of `OpenQA::Worker::WebUIConnection`
    * Workaround problems with coverage tracking
    * Re-try accepting directly chained jobs to avoid skipping whole chain
    * Refactor worker tests to de-duplicate definition of fake worker
    * Dependency cron 2022-03-07
    * Optimize jobs API by prefetching data
    * Use correct filters in progress bar links
* Sun Mar 06 2022 okurz@suse.com
  - Update to version 4.6.1646407463.070318351:
    * Use correct filters in progress bar links
    * Allow passing colons within keys via `openqa-cli`
    * Document posting multiple jobs within one API call
    * Move transaction for creating jobs into a separate function
    * Allow creating multiple jobs in one API call in an atomic way
    * Improve error feedback in `t/api/04-jobs.t`
    * Dependency cron 2022-03-03
    * Avoid 500 response and error log when `filename` param not specified
    * t: Consistently use Test::Warnings everwhere
* Thu Mar 03 2022 okurz@suse.com
  - Update to version 4.6.1646321411.b5d8be1e2:
    * Dependency cron 2022-03-03
    * Avoid horizontal scroll bars on dashboard pages
    * Avoid 500 response and error log when `filename` param not specified
    * Use simpler SQL for has_modules
    * Turn `Worker … accepted job … which was never assigned …` into info
    * t: Consistently use Test::Warnings everwhere
    * Use signatures in OpenQA::CacheService::Client
    * Use signatures in OpenQA::CacheService::Command
    * Use signatures in OpenQA::CacheService::Request
    * Use signatures in OpenQA::CacheService::Task
    * Simplify t/43-cli-api
* Tue Mar 01 2022 okurz@suse.com
  - Update to version 4.6.1646082175.7a50bad50:
    * Use simpler SQL for has_modules
    * Turn `Worker … accepted job … which was never assigned …` into info
    * branding: Rely on local override for openqa.suse.de
    * branding: Remove outdated reference to caasp staging
    * branding: Use new SUSE internal chat reference
    * Delete outdated references to novell or microfocus
    * Use signatures in OpenQA::CacheService::Client
    * Use signatures in OpenQA::CacheService::Command
    * Simplify t/43-cli-api
* Sun Feb 27 2022 okurz@suse.com
  - Update to version 4.6.1645823006.b4c26e806:
    * branding: Rely on local override for openqa.suse.de
    * branding: Remove outdated reference to caasp staging
    * branding: Use new SUSE internal chat reference
    * Delete outdated references to novell or microfocus
    * Simplify t/43-cli-api
    * Make force results show a label icon
    * Exclude files smaller than 250 MB from download rate metrics
    * Expose bandwidth data for worker cache via InfluxDB
* Thu Feb 24 2022 okurz@suse.com
  - Update to version 4.6.1645711773.760111463:
    * Extend job templates to cover more error cases
    * Write parts of job template (test) code in a more compact way
    * Avoid logging table update errors, only pass them to the user
    * Avoid logging errors passed to user when creating/deleting job templates
    * Test that job template routes don't cause unwanted errors in server log
    * Avoid logging user-input related errors in YAML to server log
    * Write parts of job templates API test in a more compact way
    * Avoid unnecessary blank lines in function `validate_yaml`
    * t: Cleanup fullstack tempdir before using it again
    * Ensure the dependency graph is sorted consistently
* Tue Feb 22 2022 okurz@suse.com
  - Update to version 4.6.1645520979.2ba573f3e:
    * Dependency cron 2022-02-22
    * doc: Mention to stop `…-reload-worker-…`-service in auto-restart setup
    * Fix setup_fullstack_temp_dir argument
    * Add $! to symlink error message
    * ci: Retain fullstack temp folder in artifacts
    * Use more compact coding style in `t/ui/16-tests_dependencies.t`
    * Adapt dependencies test to 87f9c47b78 and b7ceb7bf4
    * Improve message for installing asciidoctor via zypper
* Sat Feb 19 2022 okurz@suse.com
  - Update to version 4.6.1645264740.4e997e01d:
    * ci: Retain fullstack temp folder in artifacts
    * Add checklist for suggestions in PRs for certain types of changes
    * Improve message for installing asciidoctor via zypper
    * doc: Use async flag in examples for posting an iso
    * Adapt developer mode fullstack test to os-autoinst commit a7103b16
    * Use signatures in OpenQA::CacheService::Controller
    * Dependency cron 2022-02-16
* Tue Feb 15 2022 okurz@suse.com
  - Update to version 4.6.1644850390.c53200ff8:
    * Add support for query parameters to api command
    * Make parameters for carry-over configurable
    * t: Fix querying stale reference in fullstack and developer mode test
    * t: Avoid noisy debug output when testing test helper of fullstack test
    * t: Cover testhelper for checking fullstack test setup
    * t: Workaround Selenium error when using `send_keys` in fullstack tests
    * t: Cover helpers of fullstack test itself
    * t: Improve logging errors in case the cache service test fails
* Sun Feb 13 2022 okurz@suse.com
  - Update to version 4.6.1644599247.9ecfb500a:
    * Make parameters for carry-over configurable
    * t: Fix querying stale reference in fullstack and developer mode test
    * t: Avoid noisy debug output when testing test helper of fullstack test
    * t: Cover testhelper for checking fullstack test setup
    * t: Workaround Selenium error when using `send_keys` in fullstack tests
    * t: Cover helpers of fullstack test itself
    * t: Improve logging errors in case the cache service test fails
    * Write restarting test shorter by using `@empty_deps` in more places
* Thu Feb 10 2022 okurz@suse.com
  - Update to version 4.6.1644418414.99e1921c4:
    * Write restarting test shorter by using `@empty_deps` in more places
    * Restart failed chained parents "up the chain"
    * Fix includes of script/ in tidyall config
    * git subrepo pull (merge) external/os-autoinst-common
    * Add new OBS checks to mergify config
    * Add perl signatures in lib::OpenQA::JobSettings
    * Add perl signatures in lib::OpenQA::JobDependencies::Constants
    * Capture log messages
    * Add perform_minion_jobs to 25-cache-service.t
    * Add retry to rsync in cacheservice
    * Show "failed modules" with a coloring resembling an failed state
* Sun Feb 06 2022 okurz@suse.com
  - Update to version 4.6.1644047097.6bd5ec7f8:
    * Add new OBS checks to mergify config
    * Add perl signatures in lib::OpenQA::JobSettings
    * Add perl signatures in lib::OpenQA::JobDependencies::Constants
    * Fix typo in t::16-utils-runcmd
    * Add perl signatures to lib::OpenQA::Git
    * ci: Conditionally install kvm in container
    * Capture log messages
    * Add perform_minion_jobs to 25-cache-service.t
    * Add perl signatures to lib::OpenQA::Files
    * Add retry to rsync in cacheservice
    * Show "failed modules" with a coloring resembling an failed state
* Thu Feb 03 2022 okurz@suse.com
  - Update to version 4.6.1643905340.5024147ca:
    * Add perl signatures in lib::OpenQA::JobSettings
    * Add perl signatures in lib::OpenQA::JobDependencies::Constants
    * Fix typo in t::16-utils-runcmd
    * Update the format of the OBS workflow file
    * ci: Conditionally install kvm in container
    * Capture log messages
    * Add perform_minion_jobs to 25-cache-service.t
    * Add more perl signatures in lib::OpenQA::Events
    * Add more perl signatures in lib::OpenQA::File
    * Add more perl signatures in lib::OpenQA::Command
    * Add retry to rsync in cacheservice
    * Show "failed modules" with a coloring resembling an failed state
* Tue Feb 01 2022 okurz@suse.com
  - Update to version 4.6.1643627567.18c7f1a3c:
    * Dependency cron 2022-01-29
    * Show creation time of scheduled jobs in info panel on job details page
    * Add `clone` parameter to restart API
    * Avoid Perl warning when making build-row-key if `MACHINE` is `undef
    * Add more perl signatures
    * Prevent error when restarting jobs with `skip_parents=1`
    * Use tidyall instead of custom implementation
* Sun Jan 30 2022 okurz@suse.com
  - Update to version 4.6.1643469400.853734877:
    * Dependency cron 2022-01-29
    * Add more perl signatures
    * Add more perl signatures
    * Simplify code for assigning job settings in `create_from_settings`
    * Use constant for referring to a job's main settings
    * Allow changing job settings via restart API
    * Check whether clones created by the restart API take over the group
    * Use tidyall instead of custom implementation
* Thu Jan 27 2022 okurz@suse.com
  - Update to version 4.6.1643299616.01abba344:
    * Add more perl signatures
    * Add more perl signatures
    * Simplify code for assigning job settings in `create_from_settings`
    * Use constant for referring to a job's main settings
    * Allow changing job settings via restart API
    * Check whether clones created by the restart API take over the group
    * Prevent error when restarting jobs with `skip_parents=1`
    * Use tidyall instead of custom implementation
* Tue Jan 25 2022 okurz@suse.com
  - Update to version 4.6.1643089984.09669586b:
    * Test availability of investigation tab on incompletes
    * Revert "Remove retry from fullstack test as it seems stable again"
    * Simplify base inheritance statement with Mojo::Base everywhere
    * Dependency cron 2022-01-22
    * Add signatures to OpenQA::App and OpenQA::BuildResults
    * templates: Fix wording for the "VNC display number"
    * Show number of restarts of a job within info box on details page
    * Also show "investigation" tabs for incomplete jobs
* Sun Jan 23 2022 okurz@suse.com
  - Update to version 4.6.1642834441.8f6def1db:
    * Dependency cron 2022-01-22
    * Add signatures to OpenQA::App and OpenQA::BuildResults
    * templates: Fix wording for the "VNC display number"
    * Show number of restarts of a job within info box on details page
    * Use signatures in OpenQA::CLI::api and OpenQA::CLI::archive
    * Show versions of otherwise ambiguous builds on dashboard pages
    * Avoid repeated calls to `DateTime->now` when computing build results
    * Remove unused variable `$buildnr`
* Thu Jan 20 2022 okurz@suse.com
  - Update to version 4.6.1642570155.7901b9c11:
    * Dependency cron 2022-01-19
    * Wrap labels in <span> elements for easy highlighting
    * apparmor: allow to read and lock fd files from /boot
    * Fix reporting URL for SLE Micro
    * Add checkbox for "TODO" filter unifying code with "relevant" filter
    * Simplify code for "relevant" filter on "All tests" page
    * Write condition for TODO-filter in a more compact way
    * Add LABEL_REGEX and find_labels to OpenQA::Utils
* Tue Jan 18 2022 okurz@suse.com
  - Update to version 4.6.1642447958.c1844f193:
    * Remove useless use of `$(…)` when showing flash messages
    * Fix rendering HTML elements when updating unique flash messages
    * Reduce log level of certain web socket server log message to 'trace'
    * Avoid logging worker status messages by default
    * Give a default response code if not initialized
    * git subrepo pull (merge) external/os-autoinst-common
    * Add todo parameter to /tests
    * apparmor: Allow /usr/bin/swtpm used by os-autoinst
* Sun Jan 16 2022 okurz@suse.com
  - Update to version 4.6.1642169678.8dac53cb0:
    * apparmor: Allow /usr/bin/swtpm used by os-autoinst
    * Avoid possible race condition in `t/ui/18-test-details.t`
    * Try reloading not yet available text results
    * Prevent failed testapi.pm download in doc generation
    * Replace bugref_regex function with BUGREF_REGEX constant
    * Avoid action at a distance issues with global config changes
    * Fix OpenQA::Utils import statements
    * Avoid unhandled output in tests
* Thu Jan 13 2022 okurz@suse.com
  - Update to version 4.6.1642009051.9e0bfee4f:
    * Avoid possible race condition in `t/ui/18-test-details.t`
    * Try reloading not yet available text results
    * Replace bugref_regex function with BUGREF_REGEX constant
    * Avoid action at a distance issues with global config changes
    * Avoid unhandled output in tests
    * Change git protocol from git: to https: in fetchneedles
    * Clarify what the '"OK" children' restarting option means
    * Adapt documentation to new advanced restarting UI
* Sun Jan 09 2022 okurz@suse.com
  - Update to version 4.6.1641523544.d8e770957:
    * apparmor: Allow access to subfolders under /tmp
* Wed Jan 05 2022 okurz@suse.com
  - Update to version 4.6.1641405207.b1b3cfd35:
    * Dependency cron 2022-01-05
* Tue Dec 28 2021 okurz@suse.com
  - Update to version 4.6.1640601401.0c8908a82:
    * Remove log messages because missing details-*-.json files are expected
    * t: Move variables into fitting subtest scope in ui/26-jobs_restart.t
    * templates: Fix redirection to clones on advanced restart actions
    * templates: Fix styling of restart dropdown with proper classes
    * Revert "Missing details-*-.json files are expected"
    * Add retry of openQA jobs based on test variables
    * t: Split out job referal test from 10-jobs.t
    * Use signatures in OpenQA::Downloader
    * Load heavy-weight Archive::Extract dynamically
    * Remove unnecessary import in OpenQA::Schema::Result::Assets
    * t: Remove unused parser imports from 10-jobs.t
    * t: Use consistent subtest blocks in 10-jobs.t for all test statements
    * t: Split out 10-jobs-results as 10-jobs is getting big
* Tue Dec 21 2021 okurz@suse.com
  - Update to version 4.6.1640096856.6da5eed26:
    * Force cpanm to always use a trusted HTTPS mirror
    * docs: Provide simple example command for 'Manual daemon setup'
    * docs: Make 'Martchus' specific development helper less prominent
    * Only show advanced restart button where applicable
    * templates: Use small link-type restart buttons to resemble old look
    * t: Use signatures in ui/26-jobs_restart.t
    * Add advanced restart dropdown menu
    * Remove log messages because missing details-*-.json files are expected
    * Send AMQP event for `label:linked` comments
    * Send AMQP event for bugref takeover comments with relevant information
    * Add proper signal handling in needle scan minion task
* Sun Dec 19 2021 okurz@suse.com
  - Update to version 4.6.1639755028.beaaca21f:
    * Avoid archiving jobs to fail with "Job terminated unexpectedly"
    * Avoid "File exists" errors when running archiving jobs concurrently
    * mergify: Add more useful checks
    * mergify: Reduce duplication with YAML anchors
* Fri Dec 17 2021 okurz@suse.com
  - Update to version 4.6.1639585815.cbc8674aa:
    * admin: Check textarea when checking for key input
    * Ensure "Save" button is enabled when changing the group description
    * Avoid submitting form when "Clear limit" button is clicked
    * templates: Add help text for "pinned" comments
    * templates: Fix missing italic end marker in comment help text
    * Simplify pinned comments readout with map
    * Dependency cron 2021-12-15
    * branding: Fix unintended source comment showing up in HTML
    * apparmor: Add rules for default archive folder
    * cli: List supported search criteria for jobs/overview route
* Tue Dec 14 2021 okurz@suse.com
  - Update to version 4.6.1639414134.aa9bed13e:
    * Pass program name in scripts using `getopt` (instead of `parse-options`)
    * Add `--help` flag to `openqa-check-devel` required by `t/44-scripts.t`
    * Extract health check for `devel:openQA` repository
    * Allow hxnormalize in apparmor config
    * t: Add Test::Warnings to most files where missing
    * branding: Again adapt bug reporting link for SUSE 15 SP4
* Sun Dec 12 2021 okurz@suse.com
  - Update to version 4.6.1639150327.6dac4a283:
    * Rename signal guard variable to make its effect more clear
    * Retry Minion jobs for cleanup on SIGTERM/SIGINT (e.g. service restarts)
* Fri Dec 10 2021 okurz@suse.com
  - Update to version 4.6.1639057582.07f0f29cd:
    * t: Consistently use Test::Most everwhere
    * t: Prevent warning about signatures in 35-script_clone_job.t
    * t: Prevent warning about signatures in 24-worker-overall.t
    * Dependency cron 2021-12-08
    * Avoid Perl warning in `testcasedir` when no root directory is present
    * Avoid unhandled log messages in `t/16-utils.t`
    * Use unique check names in `t/16-utils`
    * Turn signal handling functions for retrying Minion jobs into an object
    * Retry Minion jobs for cleaning results on SIGTERM/SIGINT
    * Remove unused package defined in `t/16-utils.t`
    * CI: Prevent commit message check on master when it is too late
* Tue Dec 07 2021 okurz@suse.com
  - Update to version 4.6.1638808687.ea514e9d8:
    * docs: Add section how to disable cleanup
    * docs: Properly wrap the 'timers and triggers' section
    * docs: Improve location of 'timers and triggers' section
* Sun Dec 05 2021 okurz@suse.com
  - Update to version 4.6.1638528184.2ec841d38:
    * Log the current download speed with every cache service download
    * Fix running `t/16-utils.t` multiple times
* Fri Dec 03 2021 okurz@suse.com
  - Update to version 4.6.1638461619.b7ce2240e:
    * t: Prevent non-deterministic test step calculation using wait_for_ajax
    * t: Fix timeout calculation in wait_for_developer_console_like
    * t: Prevent trying to wait longer for dev console than overall timeout
    * t: Simplify OpenQA::Test::FullstackUtils
    * t: Use signatures in OpenQA::Test::FullstackUtils
    * t: Add timeout to developer console waiting status log message
    * docs: Make os-autoinst doc reference more prominent
    * docs: Add additional hint for SCHEDULE
* Tue Nov 30 2021 okurz@suse.com
  - Update to version 4.6.1638286681.f004793c0:
    * container: Persist images directory
    * container: Add upgradedb mode in run script
    * t: Fix regression that we fail on too many js errors (48664aa)
    * t: Add more details to wait_for_result_panel log message
    * t: Also look for worker-log in resultdir
    * t: Provide autoinst-log.txt in full-stack.t also before uploading
    * t: Provide stack trace for better context on Selenium related bails
    * AMQP: allow and handle some TLS-related query parameters
    * Amend description of tag usage in the documentation
    * Improve investigation tests so every check has a description
    * Fix checking investigation response
    * Fix displaying investigation fields like `diff_to_last_good`
    * doc: Add section about performance testing under troubleshooting
    * doc: Fix minor details in installation documentation
* Fri Nov 26 2021 okurz@suse.com
  - Update to version 4.6.1637913492.4e7a64436:
    * apparmor: Allow local additions to the worker profile
    * Handle chown in build_autoinst.sh
    * ci: Manual fullstack tests via GHA
* Tue Nov 23 2021 okurz@suse.com
  - Update to version 4.6.1637672074.afbb8ee35:
    * use printf (shellcheck SC2028)
    * Add option of using git-lfs to fetchneedles
    * Improve fetchneedles --help output
    * Fail on unexpected Javascript console errors
    * Prevent confusion about "priority"
* Sun Nov 21 2021 okurz@suse.com
  - Update to version 4.6.1637407518.4c2ce7ada:
    * Dependency cron 2021-11-20
* Fri Nov 19 2021 okurz@suse.com
  - Update to version 4.6.1637233070.75fb859c3:
    * Render the test_log value correctly when config has http url
    * fullstack: Log worker-log.txt on test bail
    * Allow some special characters in tag labels
    * Speed up 25-cache-service.t with a shorter worker timeout
    * Add test for progress bar link on parent group level
    * Add test for progress bar link on parent group level
    * commit message checker: Allow tags with dashes and white-spaces
    * clone-job: Fix accidentally skipping asset downloads
    * Fix parent progress bar links
* Tue Nov 16 2021 okurz@suse.com
  - Update to version 4.6.1637075542.066802195:
    * Fix conflicting attr names in collapse class of the investigation tab
    * Increase time limit for 25-cache-service.t a little
    * Construct the data attribute of the gitrepodir on investigation
    * Extend test coverage and apply review feedback
    * Update dependencies.yaml with Config::Tiny
    * Add self-deduced git repo construction
    * Provide the git stats hash with links
    * Change how the investigation tab displays the git log output
    * Fix enabling systemd unit `openqa-reload-worker-auto-restart@.path`
    * Explicitly fail when no jobs to label are found
    * Remove deprecated openqa-client calls
    * Improve logging for openqa-label-all script
* Sun Nov 14 2021 okurz@suse.com
  - Update to version 4.6.1636709514.73f6020e3:
    * doc: Consider `nftables` being used in modern systems
    * doc: Make it clear that SuSEfirewall2 is only used on older setups
* Fri Nov 12 2021 okurz@suse.com
  - Update to version 4.6.1636630679.707ec60a3:
    * Dependency cron 2021-11-11
    * Make logging when stopping command server gracefully less confusing
    * Change $job->cancel to have reason
* Tue Nov 09 2021 okurz@suse.com
  - Update to version 4.6.1636468466.ad625ca71:
    * Dependency cron 2021-11-07
    * Move verbose authentication log messages to trace level
    * Add support for trace log level (below debug level)
    * Skip uefi-vars download unless parent has UEFI=1
* Fri Nov 05 2021 okurz@suse.com
  - Update to version 4.6.1636004420.dae9f4e5c:
    * Dependency cron 2021-11-03
* Tue Nov 02 2021 okurz@suse.com
  - Update to version 4.6.1635851989.3196423d5:
    * Remove workaround for broken Chromium on Leap 15.3
    * Unschedule jobs which are too long in 'SCHEDULED' state
* Sun Oct 31 2021 okurz@suse.com
  - Update to version 4.6.1635525801.1df7a829f:
    * Make text result thumb look same across browsers
    * Display previews for `wait_serial`-results like before 009e9256
    * docs: Add instructions for "installation from source"
    * templates: Fix redundant spaces around the duration on finished jobs
    * templates: Add comma to prevent ambiguous state+timestamp combinations
* Thu Oct 28 2021 okurz@suse.com
  - Update to version 4.6.1635405484.2bcc5e885:
    * Add "retries" option to openqa-cli to work around busy openQA instances
    * t: Fix 03-auth.t for perl-Mojolicious >= 9.22
    * Dependency cron 2021-10-27
    * Log slow SQLite queries that run longer than 60 seconds
    * t: Mark more lines as uncoverable
    * Increase SQLite busy timeout to 10 minutes and add a missing index
    * Dependency cron 2021-10-25
    * Dependency cron 2021-10-25
    * tools: Prevent unnecessary commit of files from CI
    * Delete erroneously commited file gendep_before.txt (71bef7e3c)
    * t: Mark all uncovered fail-handler lines as such in FullstackUtils
    * Display badges for all categories on test result overview
* Sun Oct 24 2021 okurz@suse.com
  - Update to version 4.6.1634908963.3d5c24113:
    * Also ignore all aborted results for 'todo' flag
    * Fix missing display of aborted test results in overview status line
    * Turn around double negation in Schema::Result::Jobs
    * t: Make summary line check stricter in 10-tests_overview.t
    * t: Simplify fixture job creation in 10-tests_overview.t
    * t: Bump timeout of api/04-jobs.t based on local runtime
    * t: Bump timeout of ui/18-test-details.t based on local runtime
    * Update the link for OSD's setup and administration which has been moved
    * Use signatures in OpenQA::Worker::WebUIConnection
    * Use Time::Seconds in OpenQA::Worker::Settings
    * Use signatures in OpenQA::Worker::Settings
    * Consistently describe "Idle" workers as such
    * t: Add test for worker statistics and numbers
    * templates: Delete unused worker statistics variables
    * Use diag instead of note when bailing with log
    * Enable diagnostics for serialization errors
    * fullstack: Add context to result panel wait
* Thu Oct 21 2021 okurz@suse.com
  - Update to version 4.6.1634844038.99a1a2378:
    * Make text results rendering unified with other
    * Add error handling when updating 'force_result' label comments
    * t: Prevent aborting the complete test run when interactively debugging
    * Elaborate on local adjustment of apparmor profiles
    * t: Mark statements as uncoverable in WebUIConnection.pm
    * Tidy up Helpers.pm to satisfy CircleCI
    * Restart the job which incomplete with a known QEMU terminated issue
    * Override job incomplete reason when fail to allocate memory
    * Prevent creation of comments with invalid "force_result" command
    * Makefile: Use many more retries for unstable full-stack.t
    * Add missing dependency for python-scripts
    * Use 'backoff' style delay for AMQP publishing attempts
    * Change test to reflect changes in UI
    * Make sections clickable for "sort by group" view
    * Make progress bar sections clickable for children
    * Add links to overview in progress bar segments for builds
    * Add a retry delay for publishing AMQP events
    * Add retry for publishing AMQP events
    * Streamline error handling when publishing AMQP event
    * Simplify AMQP plugin code
    * Avoid escaping issues when making AMQP URL by using `Mojo::URL`
    * t: Provide more fitting error feedback scope in api/09-comments.t
    * t: Use signatures in api/09-comments.t
    * Immediately prevent writing invalid comments with "force_result"
    * Add configurable regex match rule for "force_result" labels
    * Ensure force_result is only accepted when being part of the label string
    * t: Add test for 'job_update_result' event
    * Prevent deletion of 'force_result' label comments
    * Add possibility to override the job result with special comments
    * templates: Add force_result label help text
    * templates: Replace obsolete wiki reference labels
    * docs: Add force_result label description
    * OpenQA::Schema::Result::Comments: Use signatures
    * OpenQA::WebAPI::Controller::API::V1::Comment: Simplify
    * OpenQA::WebAPI::Controller::API::V1::Comment: Use signatures
    * CI: Try to continue on spurious zypper refresh problems
* Sun Oct 17 2021 okurz@suse.com
  - Update to version 4.6.1634301296.a0543cf54:
    * t: Add a hook to tools/retry to delete coverage data
* Fri Oct 15 2021 okurz@suse.com
  - Update to version 4.6.1634224259.e820fe5b6:
    * ci: Update codecov uploader
    * Generalize CI scripts location
    * Test handling promise for publishing AMQP events
    * Improve coding style in `t/23-amqp.t`
    * tests: Use separate databases for unstable tests
    * Fix error handling when publishing an AMQP event fails
    * Use signatures in OpenQA::Jobs::Constants
    * ci: Mark uncoverable bailout code paths
    * Reformat code to current perltidy style
    * tools/tidy: Disable aligning assignments
    * .mergify.yml: Make rules stricter requiring patch coverage
* Tue Oct 12 2021 okurz@suse.com
  - Update to version 4.6.1634049705.509fad0ac:
    * CI: Add retry for chrome workaround
    * CI: Move test run instructions to separate file
    * t: Fix path in t/01-style.t
    * Downgrade chromedriver from problematic version
    * git subrepo pull (merge) external/os-autoinst-common
    * CI: Allow exception for "git subrepo pull" messages
    * Use consistent abbreviated SPDX license identifiers
    * ci: Always checkout sha in build_autoinst.sh
    * workflows/commit_message_checker.yml: Fix file based prefix
    * Pass all parameters to productdir()
* Fri Oct 08 2021 okurz@suse.com
  - Update to version 4.6.1633624491.52d9e3c63:
    * Add CLONED_FROM to cloned job settings
    * Reduce timeout in `t/05-scheduler.full.t` again
    * Improve quoting style in `t/05-scheduler.full`
    * Avoid full `OpenQA::Jobs::Constants::` prefix in `t/05-scheduler-full.t`
    * Fix race-condition in `t/05-scheduler-full.t` which can lead to failures
    * Continue further checks if job is not done/incomplete in scheduler test
    * Run hook script timeout in verbose mode
    * Allow hxselect in apparmor profile
    * Dependency cron 2021-10-06
    * Allow more shells in apparmor profile
    * CI: Use current updated Selenium::Remote::Driver version to fix CI
    * Use consistent "Copyright" header without problematic characters
    * Extract code from `clone_job_download_assets` into separate function
    * Add missing separator in log message of `openqa-clone-job` script
    * Consider all parent jobs in `openqa-clone-job` to skip certain assets
    * Prevent useless downloads of `uefi-vars` assets
    * Extend tests for asset download in `openqa-clone-job` script
* Tue Oct 05 2021 okurz@suse.com
  - Update to version 4.6.1633442652.bbce4ad33:
    * Dependency cron 2021-10-05
    * Upgrade CI scripts for using Leap 15.3 based container images
    * Dependency cron 2021-10-05
    * OpenQA::Log: Speedup, simplify and fix format with Time::Moment
    * t: Bump timeout of 25-cache-service.t
    * t: Bump timeout of 40-script_openqa-clone-custom-git-refspec.t
    * OpenQA::Log: Simplify
    * OpenQA::Log: Use signatures
    * Generalize containerized setup to refer to 'container'
    * Generalize Makefile and scripts to refer to 'container'
    * CI: Generalize scripts to refer to 'container' instead of docker
    * Use simpler 'podman' as drop-in replacement for our checks
    * Extend clone-job unit tests for handling/ignoring missing assets
    * Add ignore-missing-assets to unit tests
    * Add ignore-missing-assets to clone-job
    * Upgrade CI container image versions to Leap 15.3
    * Upgrade containers for containerized setup to Leap 15.3
    * Log return code of hook command
* Fri Oct 01 2021 okurz@suse.com
  - Update to version 4.6.1632930736.2895850f3:
    * CI: Extract script "prepare_dependency_pr"
    * Fix SQL error in `refresh_assets` caused by 5b14fe
    * Also auto-clone on VNC connection timeouts of non-qemu backends
    * Ensure that temporary HTTP 503 errors are handled with auto-clone
    * CI: Add more explicit error message in cache load script
* Tue Sep 28 2021 okurz@suse.com
  - Update to version 4.6.1632803445.44df68079:
    * Avoid warning in `untie_asset_from_job_and_unregister_if_unused`
    * Fix computation of missing assets if there are no relevant assets
    * Ensure nightly job for deps prefers openQA:devel
    * Try to fix sporadic CircleCI issues in 05-scheduler-full.t
    * Fix build in tests/overview when groupid is defined
    * Speed up asset cleanup by only updating last job on changes
    * Speed up asset cleanup by only updating the "fixed status" on changes
    * Speed-up asset cleanup by caching path of asset file on disk
    * Ignore shellcheck false positives in tools/generate-documentation
    * Remove useless x in if in tools/run-tests-within-container
    * Remove useless assignment in tools/generate-documentation
    * Change shell to bash in tools/generate-packed-assets
* Fri Sep 24 2021 okurz@suse.com
  - Update to version 4.6.1632424784.6736f5e9a:
    * templates: Clarify which filter options in /overview apply to the job
    * Trigger minion tasks when jobs are done
    * Fix typo in jobs API documentation
    * Document installing test distri deps for containerized setup
    * Follow symlinks when installing test distri dependencies
    * Fix config for cloning with container setup
    * Set a default `base_url` for containerized setup and document config
    * Utils.pm: Add missing spaces in human_readable_size()
    * downloads: Print asset size
    * Plugin/Helpers.pm: Add human_readable_size() helper
    * Revert mistaken worker write access to needles
    * Improve cleanup documentation
    * Allow configuring concurrent cleanup
* Tue Sep 21 2021 okurz@suse.com
  - Update to version 4.6.1632228188.ad82e8315:
    * Makefile: Add retries for current instabilities of t/full-stack.t
    * Worker.pm: Print pool directory on error
    * Add OPENQA_HOSTNAME to the job settings
    * Make clear 'Module' field in test overview page
    * Mark non-existing asset as such in the downloads tab
    * Cover missing lines in function for module result upload
    * Cover `OpenQA::Worker::Job::settings`
    * Additions to apparmor profiles
* Sun Sep 19 2021 okurz@suse.com
  - Update to version 4.6.1631887122.a5fe7e20c:
    * Test format_time_duration
    * Explicitly install os-autoinst dependencies in container
    * format_time_duration: Also display days in test duration
    * Refresh asset size after the upload has been completed
* Fri Sep 17 2021 okurz@suse.com
  - Update to version 4.6.1631807736.c954196f5:
    * Explicitly cover code with unstable test coverage
    * Dependency cron 2021-09-15
    * Add NAMEs such that pod2man output is valid man(7)
    * overview: Add higher inactivity timeout
    * Stop upsetting pod2man
* Tue Sep 14 2021 okurz@suse.com
  - Update to version 4.6.1631608585.77a6c349a:
    * Remove unnecessary x-bit
    * Fix broken syntax in logrotate config
    * docs: Treat database migration as advanced topic
    * Install recommended deps in worker container
    * Fetch and display job status for test urls in comments
    * Install test distri deps in worker container on entry
    * Fix reference to "Changing timeouts" section
    * Speed up scan_for_untracked_assets further
    * Speed up scan_for_untracked_assets by using less syscalls
    * Strip down `openqa-clone-job` examples for `docker-compose` setup
    * Mark single exception log in ResultSet::Assets as uncoverable
    * Improve docker-compose docs as suggested in review
    * Document running `openqa-clone-job` within container
    * Document accessing a `psql` shell when using the docker-compose setup
    * Do not configure web UI and worker containers to share the same network
    * Fix configuration of additional web UI services in docker-compose setup
    * Fix quoting in example in container setup docs
    * Fix indentation of "Data storage …" section in container setup docs
    * Improve documentation of docker-compose setup
    * Fix docker-compose setup for worker
    * Fix client and worker configuration of docker-compose setup
    * Fix NGINX config for docker-compose setup
* Sun Sep 12 2021 okurz@suse.com
  - Update to version 4.6.1631288156.16e44e0ea:
    * Add common error message in pitfalls.asciidoc
    * Simplify code for making asset hash
    * Simplify code for artefact creation
* Fri Sep 10 2021 okurz@suse.com
  - Update to version 4.6.1631197970.87d9d07f3:
    * Redirect to original page even on automatic login redirect
    * Use consistent quoting style in `create_artefact`
    * Improve formatting tx error on artefact creation
    * Return errors on artefact creation correctly
    * Fix job status icons in activity view
    * Avoid rendering `ARRAY(0x…)` in users table
    * Use consistent colors for checkbox buttons in users table
    * Fix checkboxes on users table broken by ForkAwesome migration (35a5333)
* Tue Sep 07 2021 okurz@suse.com
  - Update to version 4.6.1631021118.ebe25e524:
    * Ensure that worker_container can start any instance
    * Dependency cron 2021-09-07
    * Write error check in `eveluate_error` in a more compact way
    * Improve logging for artefact uploads
    * Remove no longer necessary test code
    * Speed up 21-admin-needles.t by running all Minion jobs in foreground
    * Fix permission errors when running tidy with docker-compose setup
    * Add documentation for upgrading PostgreSQL database
    * Optimize group_overview
    * Don't check for unset var BYPASS_SYSTEMD_CHECK in openqa-bootstrap
    * Reference arch diagram in devel mode debug steps
    * Reference doc about debugging devel mode on errors
    * Dependency cron 2021-09-06
    * Add filter searching modules by regular expression
    * Speed up 12-needle-edit.t by running all Minion jobs in foreground
    * Migrate from FontAwesome to ForkAwesome
    * Add note about `[global]` section for configuring `WORKER_HOSTNAME`
    * Enable `[global]` section of `workers.ini` by default
    * Speed up cache service tests by not forking Minion jobs
    * Return to previous page on openID login
    * Allow limit parameter for api/v1/jobs/overview
    * Add /usr/bin/tac to apparmor profile to fix hook script on o3
* Thu Aug 26 2021 okurz@suse.com
  - Update to version 4.6.1629997637.5c3f9e2dd:
    * Fix flaky coverage in `t/05-scheduler-full.t`
    * git subrepo pull (merge) --force external/os-autoinst-common
    * Add `/usr/bin/tail` to apparmor profile to fix hook script on o3
    * Dependency cron 2021-08-26
    * fullstack: Wait for live view button
    * Avoid printing stacktrace when cgroup configuration fails
    * Move code for cgroups configuration into its own function
    * Prevent private assets from being cleaned up too early
    * Refactor function to determine a job's parent IDs
    * Improve asset registration function
    * Prevent public assets from being cleaned up too early
    * Improve `t/15-assets.t`
    * Reenable sysusers once again on Tumbleweed
    * Dependency cron 2021-08-25
    * doc: Make the PRODUCTDIR overwrite docs less confusing
    * Remove unused test mock and mark uncoverable line
    * Optimize querying progress of running jobs by utilizing module columns
    * doc: Document new cache service setting `CACHE_MIN_FREE_PERCENTAGE`
    * doc: Improve documentation of cache service
    * doc: Fix typo in `Installing.asciidoc`
    * Allow configuring worker cache to keep certain percentage of free space
    * fullstack: scale panel waits via TimeLimit
    * Document that needles will not be loaded from a custom `CASEDIR`
    * doc: Remove remark that asset caching overrides PRODUCTDIR
    * Remove TODO-comment in worker code which is most likely obsolete
    * Avoid uncovered lines in `t/24-worker-engine.t`
    * Fix bug reporting link for SUSE 15 SP4
    * job: Record hook_cmd in minion job notes
    * worker: Remove delay function as now proper callbacks are used
    * Improve test coverage of `isotovideo.pm`
    * worker: Use proper callback instead of `delay` function during setup
    * Let workers declare themselves as broken if asset downloads pile up
    * Print stacktrace when worker crashes due to unhandled exception
    * workflows: Drop the body line length check
    * worker: Workaround errors in web socket handling
    * workflows: Allow 180 characters in commit body
    * Improve worker's exception handling and related test
    * Add an explicit unit test for the workers `exec` and `delay` functions
    * Do not remove timer after delay
    * Create `cache_tests` jobs with increased prio
    * Dependency cron 2021-08-11
    * Bail out whenever the expected result was not found
    * fullstack: Extended wait for result panel
    * fullstack: Return early if stat fails to avoid file errors
    * Allow users to change which group $dbuser belongs to
    * ci: Improve hadolint check
    * Log user data received during OAuth2
    * Add yaml file to enable commit message checks
    * Dependency cron 2021-08-06
    * Fix "not last X" needle searches to include "never" results
    * search: Search Python filenames and contents
    * Ensure we end testing when bailing due to missing Selenium drivers
    * Add perl(IO::Uncompress::UnXz) as an optional dependency
    * Dependency cron 2021-08-04
    * spec: Exclude t/43-scheduling-and-worker-scalability.t from tests again
    * Simplify loop over results in dump_templates
    * Extract function for product_key from dump_templates
    * t: Add complete statement coverage for dump_templates
    * Extract functions in script/dump_templates
    * t: Add one subtest for dump_templates options
    * Use "url_from_host" in OpenQA::Script::CloneJob as well
    * Extract method OpenQA::Client::url_from_host for load+dump_templates
    * Slightly simplify script/load+dump_templates
    * Use signatures in script/load+dump_templates
    * Slightly simplify OpenQA::Script::CloneJob
    * Use signatures completely in OpenQA::Script::CloneJob
    * Use signatures in script/openqa-clone-job
    * t: Fix 40-openqa-clone-job to not read personal config files
    * Fix OPENQA_CONFIG in OpenQA::UserAgent to override, not add config search path
    * Use signatures in OpenQA::Script::Client
    * t: Clarify that 40-script_load_templates also calls dump_templates
    * Simplify script/dump_templates a bit
    * Add regex and tests for fragment identifier recognition
    * Retry the assets package generation if a CDN fails
    * Generalize path to "unstable tests"
    * Simplify all test selection switches for all "fullstack" tests into one
    * Remove unnecessary "SCALABILITY_TEST" variable
    * Update dependencies
    * Remove `collect_coverage_of_gru_jobs` where `run_gru_job` is used anyways
    * Perform minion jobs in foreground in several tests using `perform_jobs`
    * Remove unused imports of `collect_coverage_of_gru_jobs`
    * Perform all Minion jobs consistently in foreground in `t/14-grutasks.t`
    * Remove `collect_coverage_of_gru_jobs` from `t/api/02-iso-download.t`
    * Fix stability of check for scroll-up button in `t/ui/14-dashboard.t`
    * Enable all rules from eslint:recommended related to syntax and logic errors
    * Makefile: Bump retries for fullstack-unstable after recent instabilities
    * Make default test runs less noisy
    * Makefile: Add optional "EXTRA_PROVE_ARGS" to add to prove calls
    * Makefile: Fix comment alignment
    * Make scalability test setup independent of test data from `os-autoinst`
    * Remove more dead code from OpenQA::WebAPI::Plugin::Helpers
    * Remove dead code from OpenQA::WebAPI::Plugin::Helpers
    * Generalize CI base container path
    * git subrepo pull (merge) --force external/os-autoinst-common
    * t: Bump timeout for ui/14-dashboard.t
    * Make message about clone error unique
    * worker: Unify retry-behavior of artefact file uploads with regular API calls
    * worker: Move error handling for API calls into a separate function
    * worker: Pass error during final upload as `api failure: …` reason
    * worker: Retry when sending an artefact fails
    * Improve error handling of _upload_log_file to retry also on connection errors
    * Run tools/tidy
    * Adapt codecov target to current coverage
    * OpenQA::Worker::Engines::isotovideo: Use consistent single-ticks where applicable
    * OpenQA::Worker::Engines::isotovideo: Simplify using signatures
    * docs: Add option to disable test timeout with env variable
    * Dependency cron 2021-07-27
    * Mark most of the unstable worker test code as uncoverable
    * t: Ensure `t/ui/14-dashboard.t` passes also when browser window is big
    * t: Disable coverage report for forked processes in scalability test
    * t: Fix check for `last_updated` column of needles
    * Avoid perl warning in string concatenation
    * Remove .jsbeautifyrc, since it is no longer needed
    * Dependency cron 2021-07-22
    * Use the OPENQA_UPLOAD_DELAY environment variable to speed up 24-worker-jobs.t
    * Replace wait_with_progress with a sleep call
    * Cover wait_with_progress with basic tests
    * Remove dead code from LiveViewHandler
    * git subrepo commit (merge) external/os-autoinst-common
    * Dependency cron 2021-07-20
    * containers: Install ruby and rubygem-sass
    * Dependency cron 2021-07-17
    * Add minimal js-tidy script that will take care of Node.js dependencies
    * cache service: Avoid logging back-traces when scanning
    * docs: Add a test example written in Python
    * t: Improve coding style in `t/21-needles.t`
    * t: Fix check for `last_updated` column of needles
    * t: Use `Time::Seconds` in `t/21-needles.t`
    * t: Cover worker's log file upload
    * .circleci: Be more gracious with timeouts due to random slowness
    * t: Bump timeout for ui/06-operator_links.t
    * t: Bump timeouts for 44-scripts.t
    * Simplify script/modify_needle
    * t: Add test for script/modify_needle
    * Improve error message (report filename instead of test name)
    * Avoid getting stuck syncing tests by adding timeout to `rsync` call
    * Prefer "const" to "let" in JavaScript code if the value is never changed
    * Fix all ESLint rule violations
    * Add eslint and prettier support
    * Show logs when docker compose up fails in the test_containers_compose
    * Fix use of su by providing shell for geekotest
    * Clean up param_hash helper code
    * t: Cover worker's asset upload
    * Remove debug logging for livelog viewers
    * t: Cover worker's handling of failing asset upload
    * openqa-bootstrap: Check that systemd is available
    * Add basic unit test for image live streaming
    * Use configurable constants instead of hard-coded intervals for streaming
    * Fix error handling when asking worker to enable the live log
    * Improve error handling when streaming images for live view
    * Improve log messages of image streaming code
    * doc: Document finding tests via the REST-API
    * doc: Improve `openqa-cli` documentation
    * doc: Improve introduction of REST-API
    * doc: Improve references
    * Distinguish comment types on /tests
    * Fix 'This: command not found' errors
    * t: Cover posting job setup status
    * t: Cover handling job timeout
    * t: Cover worker's image upload
    * t: Cover case when worker accepts job but the ws connection has been lost
    * Write code in `t/24-worker-jobs.t` in a more compact way
    * Avoid forking in `t/24-worker-jobs.t` to collect coverage of upload code
    * Split `_upload_results_step_2_upload_images` into multiple functions
    * Revert "Reenable sysusers"
    * Remove the link to /tests/overview in the parent group overview
    * Revert "Distinguish comment types on /tests"
    * openqa-bootstrap: Ensure to enforce expected error handling
* Fri Jul 09 2021 coolo@suse.com
  - Update to version 4.6.1625814138.021a88a2a:
    * t: Simplify "linked" lookup in 10-jobs.t
    * t: Add test for happy-path of OpenQA::Worker::Engines::isotovideo::sync_tests
    * OpenQA::Worker::Engines::isotovideo: Remove dead code "_kill"
    * t: Increase timeouts
    * Fix use of `isnt` in `t/lib/OpenQA/Test/Utils.pm`
    * t: Bump timeout in more slow tests
    * t: Bump timeout for ui/26-jobs_restart.t
    * Distinguish comment types on /tests
    * t: Bump timeout for deploy.t after recent slowdown
    * Fix typos found by codespell
    * Update parent_group link to test/overview to the new icon format
    * Add link to /test/overview from index page for every parent group
    * Add a check for the geekotest & _openqa-worker user to test specs
    * Switch to systemd-sysusers instead of getent + useradd
    * Mark uncovered line in OpenQA::Schema::Result::Assets
    * Remove uncovered conditions for internal search of job settings
    * Delete unused args special case handling in OpenQA::Schema::Result::GruTasks
    * Simplify OpenQA::Schema::ResultSet::JobSettings
    * Slightly simplify OpenQA::Schma::ResultSet::Assets for full statement coverage
    * Slightly simplify OpenQA::Schma::ResultSet::AuditEvents for full statement coverage
    * Do not fail Minion jobs when asset download fails due to a client error
* Wed Jul 07 2021 coolo@suse.com
  - Update to version 4.6.1625604748.6b93c98dd:
    * build-docs-ci: Fix sporadic zypper install failure with retrying
    * Simplify circleCI config by extracting build-docs-ci script
    * Fix the multi-job-group overview link to show all results
    * Return the error message the Downloader up the stack
    * Add a regression test to make sure an empty flavor value does not result in all jobs getting loaded
    * Fiter all incoming parameters, but do not actually validate them yet
    * Add test filter option to test overview
    * Add flavor filter option to test overview
    * Use a more feasible timeout for t/full-stack.t
    * ci: Increase several timeouts
    * fullstack test: Remove job settings to fix execution with QEMU 6
    * fullstack test: Stop when first test incompletes
    * search: Correctly use username for gru lock if logged in
    * Take test modules without result into account for carry-over
    * Consider all modules on carry over, despite missing/broken results
    * t: Simplify setup of `t/17-labels_carry_over.t`
    * Fix carry-over only due to one matching bugref in step title
    * Refactor carry-over in OpenQA::Schema::Result::Jobs
    * BugLinks: Do not attempt label with incomplete referer URLs
    * Dependency cron 2021-06-30
    * Add link to /test/overview from a parent job group
    * Revert "Switch to systemd-sysusers instead of getent + useradd"
    * Encode query parameters in openqa-label-all
    * Fix a few more cases where "if (%foo" was used instead of "if (keys %foo"
    * Fix a small mistake where "if (%foo" was used instead of "if (keys %foo"
    * Switch to using the %make_build macro
    * Fix parse failure if is_opensuse is undefined
    * Switch to systemd-sysusers instead of getent + useradd
    * Dependency cron 2021-06-27
    * Convert a few more tests to use OpenQA::Test::Utils::perform_minion_jobs
    * Replace perform_minion_jobs_in_foreground workaround with upstream Minion feature
    * openqa-label-all: Allow to call without specific build
    * Remove code for mocking Minion in `t/42-df-based-cleanup.t`
    * docs: Adapt docs after ffc13764b fixed the lookup of multiple builds
    * Fix show results for multiple groups in /test/overview
* Wed Jun 23 2021 coolo@suse.com
  - Update to version 4.6.1624362583.02699d6c5:
    * Optimize group_overview: don't fetch bugdetails where not needed
* Mon Jun 21 2021 coolo@suse.com
  - Update to version 4.6.1624280432.2ce59c621:
    * Optimize search: prefetch job columns
    * Dependency cron 2021-06-20
    * t: Make `t/ui/18-tests-details.t` independent of `t/ui/12-needle-edit.t`
    * t: Access download list in t/ui/18-test-details.t directly
    * Dependency cron 2021-06-18
    * Fix repository used by openqa-bootstrap under Leap 15.3 for internal CA
    * Dependency cron 2021-06-17
    * Simplify "linked" lookup in OpenQA::Schema::ResultSet::Jobs
    * Fix repository used by openqa-bootstrap under Leap 15.3
    * t: Mark 10-jobs.t as not-heavy anymore after a9defcedf
    * Optimize /tests/overview: Combine SQL for JobDependencies
    * Optimize /tests/overview: Combine SQL for JobModules
    * Install iputils in the bootstrap script for the ping command
    * Make openQA package depend on hostname, required by configure-web-proxy
    * Delete uncovered and likely obsolete "assetid" parameter for test queries
    * Delete unused parameter "failed_modules" for list endpoint
    * Delete uncovered and likely unnecessary code for "failed_modules" parsing
    * Delete old undocumented and unused "maxage" filter mode
    * Delete old dead code in OpenQA::Schema::ResultSet::Jobs::complex_query
    * Reduce some whitespace for readability in OpenQA::Schema::ResultSet::Jobs::complex_query
    * Extract method from OpenQA::Schema::ResultSet::Jobs::complex_query
    * Set all 'attrs' in OpenQA::Schema::ResultSet::Jobs::complex_query in one place
    * Simplify OpenQA::Schema::ResultSet::Jobs
    * dist: Also save update-cache.sh from OBS
    * t: Simplify test timeout handling in 33-developer_mode for coverage
    * Mark openqa-client as deprecated
    * Correct volume labels to allow running on SELinux enabled systems
    * Remove `t/ui/25-developer_mode.t` from unstable tests
    * Fix problem in t/ui/25-developer_mode.t leading to sporadic test failures
    * Revert "Downgrade chromedriver from problematic version"
    * Adapt UI tests to chromedriver changes
* Tue Jun 15 2021 coolo@suse.com
  - Update to version 4.6.1623747238.4c4508f96:
    * t: Mark missed uncoverable line in 14-grutasks.t
    * doc: Add end of list marker so chapter heading after pitfalls is rendered correctly
    * doc: Improve documentation for debugging developer mode
    * t: Mark uncoverable statements in 14-grutasks.t
    * t: Mark uncoverable statements in 42-df-based-cleanup.t
    * t: Mark uncoverable statements in 01-test-utilities
* Sun Jun 13 2021 coolo@suse.com
  - Update to version 4.6.1623492373.886d5787f:
    * t: Delete unused function in t/ui/13-admin.t
    * t: Fix wrongly moved line ending up as comment statement
    * Minor optimization: Turn SQL 'OR' into 'IN'
    * Add automatic installation recipe autoyast profile
    * Deployment handler: Log error message
    * Handle ANSI escape sequences in live log as well
    * Enable log viewer also for user logs and unify code for both log lists
    * Improve appearance of result file list
    * Use layout for video view to avoid rendering an incomplete HTML page
    * Test log view
    * Fix broken HTML by removing surplus end-tag
    * Add log view (similar to video view) supporting ANSI escape sequences
    * Render ANSI escape sequences within embedded log files via Anser (client-side)
* Thu Jun 10 2021 coolo@suse.com
  - Update to version 4.6.1623351179.452374ecb:
    * Allow to configure Selenium chromedriver startup timeout for slow environments
    * docs: Add explanation for OPENQA::Test::TimeLimit configuration options
    * Give permission of check_qemu_oom
    * docs: Improve "getting involved" paragraphs
    * docs: Remove redundant and outdated contact reference
    * README: Update and generalize contact information
    * The coverage fix should not be necessary anymore
    * The coverage fix should not be necessary anymore
    * Make run_gru_job perform jobs without forking
    * Run 10-jobs.t really fast
    * parser: update IPA parser to support latest img-proof changes
    * Increase Mojolicious version requirement to a version compatible to what we test with
    * Fix content negotiation with .txt file extension for module source
    * Fix loading `main.pm` from custom CASEDIR with ABSOLUTE_TEST_CONFIG_PATHS=1
    * Add test for ABSOLUTE_TEST_CONFIG_PATHS=1 and custom CASEDIR
    * Split 'symlink testrepo' test into further subtests
    * worker: Fix handling CASEDIR/PRODUCTDIR/NEEDLES_DIR in certain cases
    * worker: Fix deleting previous links when preparing pool directory
* Sun Jun 06 2021 coolo@suse.com
  - Update to version 4.6.1622818917.004fe9ea4:
    * Dependency cron 2021-06-04
* Thu Jun 03 2021 coolo@suse.com
  - Update to version 4.6.1622732249.47bfb0150:
    * Downgrade chromedriver from problematic version
* Tue Jun 01 2021 coolo@suse.com
  - Update to version 4.6.1622538546.3dbc437d2:
    * Fix failing stylecheck for tools/test_containers_compose
    * Update docs about the special case of  BACKEND variable precedence
* Fri May 28 2021 coolo@suse.com
  - Update to version 4.6.1622199777.577b4d3e1:
    * containers: Add test to check that webui can connect to scheduler
    * Also cover shell scripts in tools/ by shellcheck
    * Apply shellcheck rules to tools/tidy as well
    * Give permission of dmesg to worker
    * Simplify test code for OBS rsync plugin
    * Restore test coverage for OBS rsync code in obs_rsync.js
    * Remove 27-plugin_obs_rsync_status_details.t from unstable tests
    * Restore test coverage for OBS rsync code in Task.pm
    * Restore test coverage for OBS rsync code in ObsRsync.pm, Folders.pm and Gru.pm
    * t: Remove all unstable test code in ui/27-plugin_obs_rsync_status_details.t potentially covered elsewhere
    * containers: Fix scheduler and websockets URLs in webui container
* Sun May 23 2021 coolo@suse.com
  - Update to version 4.6.1621582962.3db67fb03:
    * Dependency cron 2021-05-21
    * Fix retry/delay in FinalizeResults.pm leading to failing Minion jobs
* Thu May 20 2021 coolo@suse.com
  - Update to version 4.6.1621511845.b2720ea04:
    * Tweak routing again to work for Mojo < 9 or >=9.11
    * Show alert box linking to first bad test
    * Do not build openQA-devel for archs where it would be unresolvable
    * Install auto-update systemd files for SUSE as well and not only openSUSE
    * Remove previous tmpdir (on web UI side) when preparing worker for its next job
* Tue May 18 2021 coolo@suse.com
  - Update to version 4.6.1621307093.e6e7d0a8c:
    * Improve locking of archiving task
    * Test case of copy error when archiving job
    * Mention the archiving feature within the documentation
    * Show archive icon on test details page for archived jobs
    * Archive important jobs which would be otherwise preserved during log cleanup
    * Add Minion job for archiving job results
    * Add function to archive a job
    * Add archive dir, allow customization via OPENQA_ARCHIVEDIR
    * Mention `MAX_SETUP_TIME` and `TIMEOUT_SCALE` in timeout documentation
    * worker: Add MAX_SETUP_TIME to limit job setup time (by default to one hour)
    * Use constants from Time::Seconds for declaring our own time-related constants
    * worker: Write code for stopping job in a more compact way
    * worker: Pass result USER_CANCELLED when stopping job due to cancellation
    * Add test for some error cases when calling rsync to sync tests
    * worker: Allow cancellation of jobs while waiting for asset cache
    * worker: Unify loops for polling the cache service
* Sun May 16 2021 coolo@suse.com
  - Update to version 4.6.1620996956.bd2066072:
    * Add new column to jobs table to flag jobs as archived
* Thu May 13 2021 coolo@suse.com
  - Update to version 4.6.1620897674.b48ba1486:
    * Dependency cron 2021-05-13
* Tue May 11 2021 coolo@suse.com
  - Update to version 4.6.1620717468.c034e36b0:
    * Prevent Perl warning in worker code introduced by 4c2e8c8a63
    * Do not allow to deprioritize/obsolete build when specifying TEST
    * Do not enqueue more Minion jobs while waiting in 27-plugin_obs_rsync_status_details.t
    * Log pending Minion jobs while waiting in 27-plugin_obs_rsync_status_details.t
    * CI: Store log artifacts in build-docs job
    * Speed up execution of `t/api/04-jobs.t` with coverage analysis enabled
    * CI: Fix 01-test-utilities.t
    * Simplify handling of potential not-implemented states of jobs
    * Check if the ci check will pass after updating this hash
    * Do symlink assets as default
* Wed May 05 2021 coolo@suse.com
  - Update to version 4.6.1620235932.ef6bfa0d1:
    * Makefile: set DEVEL_COVER_DB_FORMAT
    * apparmor: Allow execution of smbd which is required for QEMU_ENABLE_SMBD
    * Mark t/ui/25-developer_mode.t as unstable due to recent failures
    * Prevent execution of container test when `TESTS` has been specified
    * openqa_bootstrap: Fix indentation
* Sun May 02 2021 coolo@suse.com
  - Update to version 4.6.1619779004.cdb202dbd:
    * Update documentation about review badges
    * Use 'check-circle' icon for 'All passed' badge
    * Add "commented badge" for builds where all failed jobs have at least a comment
    * Let the worker retry uploading when updating module results failed
    * Consider jobs with no modules incomplete
* Thu Apr 29 2021 coolo@suse.com
  - Update to version 4.6.1619707627.35eae8e4f:
    * doc: Improve phrasing regarding worker instance number
    * Add example for triggering single job to `openqa-cli api --help`
    * Fix Cpanel::JSON::XS dependency to be the same as in Mojolicious
    * Update comment in loop for gathering comment data
    * Compute whether a job is considered reviewed when making comment data
    * Check whether arbitrary comments do not count for review badge
    * Only consider bugrefs/labels for black certificate icon
    * Simplify code for making overview result
    * Make dashboard test work in environment where default changelog path exists
* Tue Apr 27 2021 coolo@suse.com
  - Update to version 4.6.1619521273.6de41c49b:
    * Make the back to top button circular
    * Add back to top button to layout
    * Use Time::Seconds instead of magic numbers
* Thu Apr 22 2021 coolo@suse.com
  - Update to version 4.6.1619097622.241af4702:
    * Enable signatures in …::Result::Jobs and fix issues
    * Add tests for 'first_bad' link in investigation
    * Show link to first bad test in investigation tab
    * worker: Avoid running optipng/upload twice
    * Fix missing test module results and extend related unit tests
    * worker: Make uploading test order on final upload (when stopping job) work
    * Add more tests for Main controller
    * Use form validation in Main controller
    * worker: Avoid redundant code for getting test status
* Tue Apr 20 2021 coolo@suse.com
  - Update to version 4.6.1618919402.a469aea0f:
    * Increase health-check retries
    * Fix failing CI check for container file (static check DL3059)
    * Prevent recursive apparmor profile inclusion
    * CI: Retry if docker-compose build fails in webui-docker-compose test
    * Fix content negotiation to use Accept headers again
    * Improve parameter name 'check'
* Sat Apr 17 2021 coolo@suse.com
  - Update to version 4.6.1618564988.9a9616334:
    * Dependency cron 2021-04-16
    * Fix result cleanup when retention period configured on job group level is zero
    * Dependency cron 2021-04-15
    * CI: Remove -q flag in docker-compose build in test_containers_compose
* Thu Apr 15 2021 coolo@suse.com
  - Update to version 4.6.1618384717.6ce950447:
    * CI: Fix db & webui_init startup
    * Extend tests for login via OAuth2
    * Update user authentication documentation to cover recent improvements
    * OAuth: Allow setting a unique provider ID when specifying a custom parameters
    * Make OAuth2 parameters customizable
    * Improve OAuth2 changes based on suggestions from code review
    * Attempt to make OAuth2 work with salsa.debian.org
    * docs: Fix typo "connfigure"
    * Dependency cron 2021-04-13
    * CI: Add checks over static-check-containers and webui-docker-comopse to Mergify
* Mon Apr 12 2021 coolo@suse.com
  - Update to version 4.6.1618218627.42ed03b34:
    * container doc: Improve documentation about SSL
    * container doc: Document stopping docker-compose setup
    * container doc: Fix formatting of SSL section
    * container doc: Move directory/storage explanations under Fedora section
    * container doc: Fix working directory for docker-compose command
    * container doc: State that docker-compose builds images automatically
    * Improve container documentation
    * containers: Add healthchecks to organize the docker-compose startup
* Sat Apr 10 2021 coolo@suse.com
  - Update to version 4.6.1617960903.4aa567c96:
    * Dependency cron 2021-04-09
    * Ensure workers are shown as offline after disconnecting gracefully immediately
* Thu Apr 08 2021 coolo@suse.com
  - Update to version 4.6.1617809893.cee5e7331:
    * containers: fix github test webui-docker-compose timeout
    * Add test for overall cloning behavior with dependencies
    * Improve error handling in clone-job script
    * Print more useful error message when API key/secret is missing
    * Document client config file in cli/clone-job help
    * containers: Fix worker container entrypoint script
    * Fix several more API routes for Mojolicious 9.11 routing change
* Mon Apr 05 2021 coolo@suse.com
  - Update to version 4.6.1617645556.ee8c16dbd:
    * Dependency cron 2021-04-05
    * Fix openqa-rollback for non-dry-run
    * Set using relative path as the default operation
    * Mark t/ui/27-plugin_obs_rsync_status_details.t as unstable again
    * Fix broken HTML in OBS plugin
    * Move containers documentation to regular documentation
    * Fix Mojolicious 9.11 compatibility
* Wed Mar 31 2021 coolo@suse.com
  - Update to version 4.6.1617146416.3db1f06ed:
    * Add script for package installation rollback on demand
    * Treat result uploads for non-existant modules as error
    * container: Fix missing shared directories and its permissions
    * Add param-file option to client
    * Dependency cron 2021-03-25
    * t: use JSON::PP when using Devel::Cover
* Sun Mar 21 2021 coolo@suse.com
  - Update to version 4.6.1616233122.00db033:
    * Dependency cron 2021-03-20
    * Allow to override isotovideo executable with command line
    * worker: Simplify use of job_settings hash lookup
    * Mark unstable t/ui/13-admin.t as such
    * Fix unhandled output in worker job test
    * Dependency cron 2021-03-19
    * Fix 414 failures when cloning jobs with too long settings
    * Fix help popover in developer mode panel
* Thu Mar 18 2021 coolo@suse.com
  - Update to version 4.6.1616080850.6ccbaedb8:
    * dist: Exclude less relevant container tests from packaging tests
    * CI: Add compose tests via GitHub workflow
    * Improve logging of concluded upload further
    * Prevent worker from getting stuck in final upload when no tests are scheduled
    * Add a switch to decide if enable the CASEDIR symlink
    * Set an absolute path as PRODUCTDIR
    * Don't create symlink when CASEDIR is an url address
    * Symlink CASEDIR and set values to relative path
    * Dependency cron 2021-03-18
    * Add test for failed status post during upload
    * Add test for stopping a job due to obsoletion
    * worker: Improve logging of upload and stopping
    * Check whether worker proceeds only stopping job after upload concluded
    * Mark uncoverable branches in Gru controller
    * Avoid assigning a negative result_size to a job when cleaning up results
    * Remove surplus `+` signs in documentation for importing production data
    * Use bigint to store job's result size to increase the limit ~2 GiB to ~8 EiB
    * docker: Allow docker-compose build images
    * Dependency cron 2021-03-17
    * Fix default cover db suffix/filename i.e. cover_db
* Sun Mar 14 2021 coolo@suse.com
  - Update to version 4.6.1615570408.acacd6dbc:
    * Wait for the element instead of constantly refreshing the page
    * Revert "Rework symlink CASEDIR and set values to relative path"
    * Dependency cron 2021-03-12
* Thu Mar 11 2021 coolo@suse.com
  - Update to version 4.6.1615465829.199a835ed:
    * Package auto-update part on openSUSE only
    * Update apparmor profile for git for openSUSE Tumbleweed since git moved from /usr/lib/git/ to /usr/libexec/git/
    * Dependency cron 2021-03-11
    * BuildRequires openSUSE-release only on openSUSE
    * Test personal access tokens with an OpenID user
    * Enable "fast lane" so jobs with prio 10 or higher are not blocked
    * Adjust priorities of Minion jobs
    * gru: Specify default-priority only at one place
    * gru: Allow passing CLI options to Minion
    * Personal access tokens need to compare the nickname
    * Add static Dockerfile checks as in os-autoinst
    * container: Fix all style issues reported by hadolint
    * Document how to take out worker slots without interrupting running jobs
    * Improve coding style in function to create user
    * Adjust function for creating user to handle provider column
    * Add auth provider column to users table to support multiple providers later
    * Restore cover and run makefile targets
    * Set an absolute path as PRODUCTDIR
    * Don't create symlink when CASEDIR is an url address
    * Symlink CASEDIR and set values to relative path
* Tue Mar 09 2021 coolo@suse.com
  - Update to version 4.6.1615196506.0b1531c35:
    * t: Skip fixtures by default to prevent excessive runtime
    * t: Fix fixture list in ui/07-file.t introduced in e62972a78
    * t: Add explicit fixture list for 26-jobs_restart.t
    * t: Add explicit fixture list for 27-plugin_obs_rsync_status_details.t
    * t: Add explicit fixture list for 05-scheduler-full.t
    * t: Ensure services are terminated on unclean shutdown of ui/27-plugin_obs_rsync_status_details.t
    * t: Specify specific fixture modules to ui/01-list.t
* Sun Mar 07 2021 coolo@suse.com
  - Update to version 4.6.1614942732.c0f9ffea8:
    * Document personal access tokens
* Thu Mar 04 2021 coolo@suse.com
  - Update to version 4.6.1614844749.095bc6031:
    * Dependency cron 2021-03-04
    * Split up large auth method into multiple methods
    * Use Codecovbash RPM instead of cpanm
    * t: Increase timeout in 27-plugin_obs_rsync_status_details.t
    * Limit execution time of hook scripts run within Minion
    * Add personal access tokens as an alternative to X-API-* headers
* Thu Feb 25 2021 coolo@suse.com
  - Update to version 4.6.1614239222.751e3210d:
    * Dependency cron 2021-02-25
    * Mark t/ui/27-plugin_obs_rsync_status_details.t as stable again
    * Test aborting cleanup early if there's still sufficient free disk space
    * Configure "early-abort" for cleanup via free percentage
    * Add "early-abort" in asset/results cleanup jobs based on df-output
    * Mock Git in t/ui/12-needle-edit.t
    * Show form for commit message only if Git is enabled
    * Test specifying a custom commit message to save a needle
    * Allow specifying a custom commit message in needle editor
    * Use codecov-bash to upload coverage reports
    * Fix local upload for larger assets
* Tue Feb 23 2021 coolo@suse.com
  - Update to version 4.6.1613993204.ea2110d1c:
    * Dependency cron 2021-02-20
    * Remove custom AssetPack pipe
* Sun Feb 21 2021 coolo@suse.com
  - Update to version 4.6.1613737964.fe7c1907f:
    * Run starvation protection test with fixed priority offset
    * Add tests for the scheduler's starvation protection
    * Add test for so far uncovered error cases of scheduler
    * Improve comments in scheduler code
    * Make offset for scheduler's starvation protection configurable
    * t: Mark uncoverable statements in 25-downloader.t
    * t: Mark uncoverable statements in 01-test-utilities.t
* Thu Feb 18 2021 coolo@suse.com
  - Update to version 4.6.1613656670.2413c666d:
    * Fix remove link configuration for "Untracked" groups in /admin/assets
    * Dependency cron 2021-02-18
    * Improve help of openqa-clone-job script
    * Make host names used by internal clients configurable
    * Avoid Perl warning when client.conf contains unknown value
    * Apply tidy to t/ui/27-plugin_obs_rsync_status_details.t
    * The CI package has been updated to 9.01 already
    * Remove dependency to Mojo::Log::Colored as it is not Mojolicious 9 compatible
    * Fix Mojolicious 9.0 compatibility
    * Stabilize t/ui/27-plugin_obs_rsync_status_details
    * Add qemu-tools to worker container image
    * Fix worker container to allow job executions relying on KVM
    * Dependency cron 2021-02-16
    * t: Bump timeout for t/ui/27-plugin_obs_rsync_status_details after observed acceptable failure
    * Provide more retries for "unstable" tests after recent failures
    * Fix broken lookup of paths in coverage reports
    * Mark code which only runs when t/full-stack.t fails as uncoverable
    * Remove invisible WIP logos from logo.svg
* Sun Feb 14 2021 coolo@suse.com
  - Update to version 4.6.1613318110.525d96fca:
    * Dependency cron 2021-02-14
    * script: Fallback to running openqa-bootstrap-container without pipe
    * Add a section on how to use signatures to the code style guide
    * Increase timeout for slow ui test
    * Convert all of OpenQA::CacheService::Client to signatures
    * Simplify WebUIConnection method arguments with signatures
    * Replace one occurence of @_ unrolling to put in default value
    * Mark uncoverage statements in OpenQA::Worker::WebUIConnection
    * Refactor scheduler to fix occasional failures of the fullstack test
    * Make scheduler output more verbose for fullstack tests
    * Stabilize scalability test
    * Improve verbosity of scalability test when scheduling fails
    * Allow using `systemctl reload openqa-worker-auto-restart@*.service`
    * Use --kill-who=main when reloading worker to send signal only the main process
    * Avoid the worker to stop its current job when receiving SIGHUP twice
    * Prevent test timeouts in CI with splitting out "heavy" tests
    * Combine "scheduler"+"developer" test runs into one to save time
    * t: Simplify 25-cache.t with IPC::Run instead of Mojo::IOLoop::ReadWriteProcess
* Tue Feb 09 2021 coolo@suse.com
  - Update to version 4.6.1612882822.353560390:
    * Fix create_admin by not expecting ARGV after parsing it
    * Fix problem in fullstack test leading to occasional failures
    * Use full path in openqa-reload-….service to support
* Wed Feb 03 2021 coolo@suse.com
  - Update to version 4.6.1612273300.b98492573:
    * Make 'perl >= 5.20.0' a common dependency to be able to use signatures everywhere
    * Use Mojo::UserAgent::socket_options if available to avoid relying on monkey patch
    * Return size of symlink (and not its target) when deleting job results
    * tests: Test expected output from job cloning
    * Add service files to restart worker after config changes without interrupting running jobs
    * Restart openqa-worker-auto-restart@.service on pkg upgrade without interrupting jobs
* Sun Jan 31 2021 coolo@suse.com
  - Update to version 4.6.1612014696.1998b3cde:
    * Revert "Rework symlink CASEDIR and set values to relative path"
    * Dependency cron 2021-01-30
    * Update .circleci/ci-packages.txt
    * Update patch for B::Deparse
    * Don't rely on re-checking statfs() during the cleanup
    * Increase coverage scale factor for t/10-jobs.t to avoid running into timeout
    * Add test for screenshot deletion failure
    * Unify code for screenshot deletion
    * Mock the Minion framework in tests for df-based cleanup to speed up coverage analysis
    * Document df-based cleanup of results within the web UI and config file
    * Ensure usage of results disk is below configurable threshold
    * Add function to delete all results from a job keeping the database entry
    * Add function to delete only the videos from a job
    * Add function to determine screenshots exclusively used by a job
* Fri Jan 29 2021 coolo@suse.com
  - Update to version 4.6.1611917326.c2fb0e67e:
    * Attempt to avoid accessing stale elements in t/ui/25-developer_mode.t
    * Increase timeout of t/api/04-jobs.t
    * Dependency cron 2021-01-28
    * Convert only OpenQA::WebAPI to a more modern Perl dialect with signatures
    * Don't create symlink when CASEDIR is an url address
    * Symlink CASEDIR and set values to relative path
* Sun Jan 24 2021 coolo@suse.com
  - Update to version 4.6.1611422905.79471b7a1:
    * Revert "Symlink CASEDIR and set values to relative path"
    * Dependency cron 2021-01-23
    * Automatically rerun incompleted jobs because of no space left
    * Symlink CASEDIR and set values to relative path
* Fri Jan 22 2021 coolo@suse.com
  - Update to version 4.6.1611251947.ef6edb09c:
    * Revert "client: Log what config file is being read"
    * Dependency cron 2021-01-21
    * Fix error reporting link for SLE Micro
    * Document restarting workers without interrupting ongoing testing
    * doc: Avoid calling the worker instance number 'worker id'
    * clone-custom-git-refspec: Call clone-job from same install
    * Add SUSE Linux Enterprise Micro in the external reporting
    * client: Log what config file is being read
* Wed Jan 20 2021 coolo@suse.com
  - Update to version 4.6.1610981115.826fa7196:
    * Adjust Bugzilla links for SLE 15 SP3 products to add new "PUBLIC" prefix
    * Workaround getaddrinfo() being stuck in error state for 127.0.0.1
* Sun Jan 17 2021 coolo@suse.com
  - Update to version 4.6.1610720970.29c09fe9d:
    * Install qemu-hw-display-virtio-gpu in openqa-bootstrap
* Fri Jan 15 2021 coolo@suse.com
  - Update to version 4.6.1610631324.09c27b628:
    * fetchneedles: Do a quiet git reset to avoid log spam
    * Dependency cron 2021-01-14
    * Stabilize test coverage of 27-plugin_obs_rsync_status_details.t
    * Document further systemd units for the worker
    * Allow skipping generation of PDF documentation
* Tue Jan 12 2021 coolo@suse.com
  - Update to version 4.6.1610476848.0a2eee8d6:
    * Support filtering specified minion jobs
    * Cleanup test code
    * Clear any uncommitted changes that would prevent a rebase
    * Dependency cron 2021-01-11
    * Dependency cron 2021-01-06
    * Generalize "docker" path in source to "container"
* Sat Jan 02 2021 coolo@suse.com
  - Update to version 4.6.1609567691.181f02eda:
    * Install qemu-hw-display-virtio-gpu-pci in openqa-bootstrap
* Tue Dec 29 2020 coolo@suse.com
  - Update to version 4.6.1609206039.6c302d51d:
    * Catch unhandled output in `t/24-worker-overall.t`
    * Move logging exit signals into worker module
    * Allow stopping worker so it still finishes assigned jobs
    * Skip all assigned jobs when worker receives SIGTERM
* Thu Dec 24 2020 coolo@suse.com
  - Update to version 4.6.1608723884.96c04b5b4:
    * profiles: Add examples for "site-specific" apparmor profiles extensions
    * profiles: Add apparmor profile if openqa-cli is called under apparmor itself
* Mon Dec 21 2020 coolo@suse.com
  - Update to version 4.6.1608562438.b02a47dac:
    * t: Prevent unreliable coverage report on sleep line
    * worker: Fix clearing current error on status updates when idling
* Sat Dec 19 2020 coolo@suse.com
  - Update to version 4.6.1608227660.f87d0124e:
    * Override TERMINATE_AFTER_JOBS_DONE setting from environment variable
    * Consider sleep in `unstable_worker` uncoverable
    * Remove unused test helper 'standard_worker'
    * Test case when setting up pool directory during availability check fails
* Thu Dec 17 2020 coolo@suse.com
  - Update to version 4.6.1608163990.9004bc4cf:
    * t: Refactor and mark multiple test modules for 100% statement coverage
    * t: Use more concise one-line Selenium WDKeys init as well
    * t: Use more concise one-line Selenium driver initialization (2nd)
    * Refine check for error message about immediately pruned assets
    * Improve logging of availability error to show retry interval
    * Dependency cron 2020-12-16
    * Ignore openqa-worker-cacheservice-minion ignoring invalid args
    * Workaround broken top-level help in Mojolicious 8.67
    * Avoid using deprecated Mojolicious functions
    * Avoid worker from appearing stuck (e.g. not reacting to SIGTERM) on cache check
    * Add openqa-worker-auto-restart@.service to apply worker updates automatically
    * Combine sed commands used to install openqa-worker-no-cleanup@.service
    * Allow configuring the worker to terminate after all jobs have been processed
    * t: Fix coverage of separate process in 25-cache-service.t
    * t: Increase statement coverage ratio in 25-cache-service.t
    * t: Delete unused function _port in 25-cache-client.t
    * Document configuring automatic cloning of incomplete jobs
    * Clone incompletes caused by cache service errors automatically
    * docs: Explain the concept of "carry-over" better
* Mon Dec 07 2020 coolo@suse.com
  - Update to version 4.6.1607368100.ab9d59cad:
    * Fix reading config for custom job hooks following 6cf76ae8b
    * Clarify caveats with custom job hooks after 6cf76ae8b
    * Extend tests for asset caching to cover more error paths
    * Distinguish different types of setup failures
    * Fix web UI container script in basic execution
    * t: Reuse "collect_coverage_of_gru_jobs" to reduce duplication
* Sat Dec 05 2020 coolo@suse.com
  - Update to version 4.6.1607108258.175f03ea7:
    * Add possibility to call custom hook scripts on "job done" based on result
    * t: Add full schema init+upgrade cycle test
    * script: Add command line options to override script dir in initdb/upgradedb
    * Schema: Allow to override schema version for testing purposes
    * Improve 404 page
    * Dependency cron 2020-12-04
    * load_templates: Use ref instead of reftype to avoid Perl warning
    * cache service: Remove creating/dropping table to test database
    * Ensure proper return values in OpenQA::Schema::Result::Jobs::carry_over_bugrefs
    * t: Delete redundant, uncovered INT handler in 25-cache.t
    * t: Fix coverage of separate process in 25-cache.t
    * Test whether worker still accepts jobs when a configured web UI is offline
    * Simplify 'view' method in WebAPI::Controller::Step
* Wed Dec 02 2020 coolo@suse.com
  - Update to version 4.6.1606933510.bed89ec4d:
    * docs: Add Code style suggestions, in particular for use statements
    * Dependency cron 2020-12-02
    * t: Fix local execution of 16-utils-runcmd depending on filesystem layout
    * t: Use fixtures explicitly in more tests to speedup runtime
    * Don't try to use return value from run function as exit code
    * Simplify OpenQA::Worker::_handle_client_status_changed
    * Fix description in 404 page for table APIs
    * t: Add specific fixture list for t/05-scheduler-restart-and-duplicate.t
    * t: Slightly simplify 33-developer_mode.t
    * Correct redundant newline in log_info in GRU
* Sat Nov 28 2020 coolo@suse.com
  - Update to version 4.6.1606497673.f3348bd43:
    * docs: Mention Dockerfile based container prominently
    * docker: Fix worker Dockerfile scripts permissions
    * cache service: Use DELETE journaling mode by default
    * client: Fix warning "Wide character in print"
    * Remove obsolete websockets module property "worker_status"
    * Mark exceptional websocket error handling as explicitly untested for coverage
    * Prevent line break in OpenQA::WebSockets with simple variable reuse
    * Delete likely not needed periodic worker status table reset
    * Fix UI build bar alignment broken on index page
    * t: Fix flaky/incomplete coverage in 05-scheduler-full with uncoverable statements
    * worker cache: Simplify error handling for uncovered, exceptional cases
* Thu Nov 26 2020 coolo@suse.com
  - Update to version 4.6.1606233578.6a2b83747:
    * cache service: Allow setting the SQLite journaling mode
    * cache service: Fix workaround for deleting broken database
    * Revert "Enable strict merge on Mergify"
    * Use TimeLimit from os-autoinst-common to get OPENQA_TEST_TIMEOUT_DISABLE
    * Dependency cron 2020-11-24
    * systemd: Prevent error reports in journal of openqa-auto-update service
    * docker: Simplify worker Dockerfile with executable scripts
    * git subrepo clone (merge) --force git@github.com:os-autoinst/os-autoinst-common.git external/os-autoinst-common
    * worker cache: Also cleanup "*-shm" and "*-wal" files belonging to sqlite
    * worker cache: Try to prevent any process accessing still malformed database file handles
    * worker cache: Prevent hiding errors due to repair attempts in corrupted database
* Mon Nov 23 2020 coolo@suse.com
  - Update to version 4.6.1606027318.501936756:
    * Dependency cron 2020-11-22
* Sat Nov 21 2020 coolo@suse.com
  - Update to version 4.6.1605907861.e25dcaf93:
    * Partially revert "circleci: Strip down base image to prevent "cache" jobs failing" due to failures
    * Increase timeout of developer mode fullstack test (needs 56 seconds locally)
    * Add git email address for dependency bot
    * cache service: Do not perform re-indexing within a transaction
    * parse_url_settings: don't parse value for non-asset types
    * parse_url_settings: improve filename parse check
    * Don't set FOO from FOO_URL if FOO is defined but false
    * Handle placeholders after parsing _URL settings
    * cache service: Avoid throwing away database needlessly
    * circleci: Strip down base image to prevent "cache" jobs failing
    * cache service: Use defaults/property to store service PID / exit code
    * cache service: Simplify override for `reply.exception` helper
    * cache service: Stop server manager when preforking on exit after db error
    * cache service: Consider 'no such table/column' errors critical as well
    * cache service: Stop service after a critical database error
    * cache service: Extend checks for broken database
    * cache service: Move database repair to its own function
    * cache service: Have a reference to the cache model within the downloads model
    * Docker: Fix worker Dockerfile to be buildable on OBS
    * Makefile: Do not retry fullstack tests
    * .gitignore: Add current temporary files from tests
    * t: Mark all left uncoverable statements in OpenQA::SeleniumTest
    * t: Delete unused and uncovered function OpenQA::SeleniumTest::make_screenshot
    * t: Mark uncoverable statement in OpenQA::SeleniumTest
    * Remove log/ and log_test_postgresql from .gitignore which can confuse developers
    * Move .spec file to "dist/" as in os-autoinst and is common
    * Docker: Fix web UI Dockerfile to be buildable on OBS
* Mon Nov 16 2020 coolo@suse.com
  - Update to version 4.6.1605530208.6b910f3fc:
    * Use consistent "auto-update" instead of "auto-ugrade"
    * systemd: Fix wrong ExecStart path in openqa-auto-upgrade
    * docker: Fix web UI Dockerfile-lb to be buildable on OBS
* Sat Nov 14 2020 coolo@suse.com
  - Update to version 4.6.1605294814.ed6415c5a:
    * Show parent group name and id when getting job details
    * coverage: unconditional finished_handled timeout
    * Make message about clone error unique
    * Dependency cron 2020-11-13
    * t: Bump timeout of 44-scripts.t after we test more scripts
    * Only install openSUSE specific files on openSUSE
    * docs: Add documentation for auto-upgrade systemd timer
    * docs: Order authentication sections in summary same as in text
    * docs: Fix level of authentication subsections
    * Add systemd timer for automatic system upgrades and reboots
    * Makefile: Simplify systemd service setup
    * Consider finalize jobs successful if the openQA job does not exist
    * cache service: Avoid purging assets which are currently being downloaded
    * docker: Simplify 'gzip ... | grep' to 'zgrep'
    * Adapt codecov target to current coverage of 95%
    * Delete old left-over db.sqlite file
    * .gitignore: Delete obsolete full-stack.d entry
* Thu Nov 12 2020 coolo@suse.com
  - Update to version 4.6.1605128979.b3fd45d8c:
    * Docker: Fix kvm-mknod script in worker container
    * docs: Fix documentation for "PARALLEL_CANCEL_WHOLE_CLUSTER"
    * Dependency cron 2020-11-10
    * docker: Ask to not squash base image layers to fix circleCI download
    * cache service: Exclude currently downloaded asset from the cleanup
    * Cover much longer web UI unavailabilities in the cache service client
    * Remove infinite timeout the downloader test
    * Cleanup list concatenation in OpenQA::Worker::Job
    * Simplify OpenQA::Worker::Job::_stop_step_4_upload with turned around if-condition
    * Slightly simplify OpenQA::Worker::Job::_format_reason with ternary op
    * Dependency cron 2020-11-09
    * Revert "worker: Use WORKER_HOSTNAME instead of real hostname"
    * t: Bump 01-compile-check-all.t timeout based on local execution runtime
    * Reduce execution time of t/25-downloader.t
* Fri Nov 06 2020 coolo@suse.com
  - Update to version 4.6.1604650398.c9956d642:
    * Revert "No empty IOLoop timer for 5 second wait" to fix current test failures
    * Speed up 25-cache.t
    * clone script: Allow cloning child jobs as well
    * docker: Improve complete README document
    * docs: Simplify the curl based bootstrap instruction
    * Retry on rsync error code 10
    * Fix kvm-mknod.sh shellcheck
    * Add an easy way to run a pool of workers
    * FullStackUtils: More generous wait on developer console
    * Increase the performance returning the assets for the UI
    * Extend web UI docker setup to use nginx/docker-compose
    * Fix 16-activity-view.t to work locally and on Circle CI
    * activity view: Request events ordered by event ID
* Tue Nov 03 2020 coolo@suse.com
  - Update to version 4.6.1604426047.91baf7934:
    * Docker: Fix worker dockerfile
    * Makefile: Add back retries for full-stack.t after sporadic failure
    * t: Remove unused debug code to ensure 100% statement coverage in 34-developer-mode-unit.t
* Sat Oct 31 2020 coolo@suse.com
  - Update to version 4.6.1604127002.7df8de5ee:
    * Return wait_for_element based on the element
    * No empty IOLoop timer for 5 second wait
    * docs: Explain that test runtime limits are automatically scaled
    * Dependency cron 2020-10-30
    * The cache service will now try to recover from corrupted SQLite files during startup
    * Add test for help popover next to "Submit comment" button
    * Speed up t/ui/15-comments.t
    * worker: Use WORKER_HOSTNAME instead of real hostname
    * Prevent failed 'finalize_job_results' Minion jobs for skipped jobs
    * Add descriptions for all checks in subtest 'finalize job results'
    * Fix help popup next to "Submit comment"
    * Dependency cron 2020-10-28
    * Deprioritize jobs with broken directly chained dependencies
    * scheduler: Handle cycles in directly chained dependencies
* Wed Oct 28 2020 coolo@suse.com
  - Update to version 4.6.1603819052.0daa7dd96:
    * Dependency cron 2020-10-27
    * t: Workaround for faulty JSON::Validator error handling
    * Avoid unhandled output in 26-controllerrunning.t and 31-client_archive.t
* Sun Oct 25 2020 coolo@suse.com
  - Update to version 4.6.1603626328.c21bec508:
    * spec: Exclude flaky 01-test-utilities.t from OBS checks
    * Avoid unhandled output in `t/25-downloader.t`
    * Prevent unhandled output in `t/14-grutasks.t`
    * Speedup `t/ui/10-tests_overview.t`
    * Stabilize and speedup `t/ui/16-tests_job_next_previous.t`
    * Show "link to overview fixed to the current time" and "link to latest jobs"
    * Add timestamp parameter to test overview to show only jobs older than that
    * Bump base OS version to Leap 15.2
* Fri Oct 23 2020 coolo@suse.com
  - Update to version 4.6.1603294467.b176715be:
    * Retry when rsync error code is 23
    * branding: Set "blocker" flag automatically in bugzilla bug reports
    * Fix tour
    * Improve feature tour test
    * Add validation to feature tour route and actually respond
* Wed Oct 21 2020 coolo@suse.com
  - Update to version 4.6.1603211536.4498c99a4:
    * Scale timeout in t/01-test-utilities.t to prevent failures observed on OBS
* Fri Oct 16 2020 coolo@suse.com
  - Update to version 4.6.1602859323.3f1131b1b:
    * Document configuration of worker package diff
    * Test archive cli command options
    * tour: Introduce the activity view
    * Handle unknown options consistently with Mojolicious 8.63 in openqa-cli
    * Ensure all scripts exit non-zero in case of invalid parameters
    * Enable strict merge on Mergify
    * Dependency cron 2020-10-14
    * Add testcase "failure" (singular) to XUnit parser
    * Mark full-stack.t as stable and faster after recent stabilization
* Wed Oct 14 2020 coolo@suse.com
  - Update to version 4.6.1602630091.729fcbe41:
    * Dependency cron 2020-10-13
    * Fix wrong firewalld command in documentation
    * tools: Revert change f3b5dd95c that never fully worked
* Sun Oct 11 2020 coolo@suse.com
  - Update to version 4.6.1602412783.03de4fa69:
    * Dependency cron 2020-10-10
    * docs: Update contribution hints for package impact
    * Use a worker with fast local host uploads and without in full-stack tests
    * Enable faster localhost uploads by default
    * Merge Jobs::deps_hash with dependencies
    * Add a personal activity view based on audit events
    * t: Reduce timeout of t/44-scripts.t again after stabilization
    * Dependency cron 2020-10-09
    * Add simple "--help" test for all shell scripts in scripts/
    * Try to fix instability in comment update detection
    * ci: Try to avoid common download problems with a different time of day
    * Improve coding style in render.js
    * Fix warnings in render.js shown by jshint
    * Fix details rendering if template snippet not available
    * ci: Retry on temporary zypper repository refresh problems
    * tools: Make 'retry' actually retry 3 times by default
    * ci: Use same zypper prio levels as in documentation for consistency
    * t: Remove obsolete test job database entry in all initializations
    * ci: Bring back error context in log view as well as show unhandled test output
    * Dependency cron 2020-10-06
    * spec: Enable tests on Leap as well to prevent breakage on known supported versions
    * t: Bump timeout for t/api/04-jobs.t
    * Fix formatting error messages of download task
    * Fix check for existing assets if multiple asset destinations are specified
    * Prevent scheduler from assigning jobs while download tasks being created
    * Improve coding style for code related to enqueuing download jobs
    * t: Bump timeout for 44-scripts
    * t: Fix missing 'use lib' in 44-scripts.t
    * spec: Use higher timeout for tests within OBS due to performance fluctuations
    * t: Reduce back the test module specific timeout limits
    * Extract trivial _distri_key helper in OpenQA::Schema::Result::ScheduledProducts
    * Configure a timeout for javascript in webdriver
    * Handle services being stopped explicitely during tests
    * Add test for catching warnings in sub processes during tests
    * Catch Perl warnings in spawned workers as well
    * Fail tests when a Perl warning within a sub process occurs
    * t: Catch unhandled output in t/14-grutasks.t
    * t: Extract helper for client user agent initialization
    * t: Reuse existing schema variable in t/api/04-jobs.t
    * t: Simplify ui/17-product-log.t
    * Tweak test timeouts for full-stack
* Sun Sep 27 2020 coolo@suse.com
  - Update to version 4.6.1601184375.8f2898f37:
    * t: Optimize t/11-commands.t further with no database at all
    * t: Optimize t/11-commands.t by not relying on fixtures
    * t: Simplify connection to database in t/11-commands.t
    * t: Prevent redundant newline in log_info call
    * Fix warning in controller for workers table
    * docs: Add section about "Test runtime limits"
    * t: Add scaling parameters for OpenQA::Test::TimeLimit
    * Add specific error message for premature asset cache pruning
    * Make 'deploy' a real method
    * Improve name of method 'deployment_check' to prevent confusion
    * Tweak test timeouts for full-stack
    * t: Remove unused and useless 'skip_deployment_check'
    * Test clickable audit events
    * Render links to items in the audit log
    * t: Completely remove unused schema_hook functionality
    * t: Replace all schema hooks by more simple schema updates
    * t: Use more concise one-line Selenium driver initialization
    * Fix showing preview of modules rendered while the test was running
* Wed Sep 23 2020 coolo@suse.com
  - Update to version 4.6.1600793800.39e28c975:
    * Simplify code of function to cancel a job
    * Allow cancelling assigned jobs like scheduled jobs and prevent restart
    * Avoid duplicate force parameter when restarting jobs
    * Avoid worker assumed to be offline from interfering when it comes back after all
    * Speed up t/24-worker-overall.t by mocking the cache service client
    * t: Bump timeout for compile check
    * t: Bump timeouts of recent failure api/08-jobtemplates.t and api/14-plugin_obs_rsync.t
    * t: Bump timeouts of recent failures
    * Improve feedback of fullstack test in case of failures
    * t: Prevent duplicate test database initialization
    * t: Delete redundant copy-paste from 28-keys_to_render_as_link.t
    * t: Simplify and stabilize t/ui/13-admin-no-login.t
    * Fix id of products table in HTML document
    * t: Bump timeout for t/api/02-iso.t after recent failures in circleCI
    * t: Go back to previous time limit for 05-scheduler-full due to failures
    * t: Remove unreliable check for t_seen from t/04-scheduler
    * Try to stabilize 04-scheduler.t
* Sat Sep 19 2020 coolo@suse.com
  - Update to version 4.6.1600510794.174d32cb4:
    * ci: Prevent too early circleci timeout on no output
    * t: Add OpenQA::Test::TimeLimit to all test modules where applicable
    * Avoid restarting jobs which have a directly chained parent by default
    * scheduler tests: Take t_seen from the database
    * Makefile: Fix evaluation of failing unstable tests
    * Use wait_for_or_bail_out in fullstack test
    * Show changes between packages of openQA worker machines in investigation
    * scheduler: Provide help to users early to prevent failing later on misconfigurations
    * Allow scheduler to enqueue finalize jobs tasks when marking stale job as incomplete
    * Support finding job template by test suite name
    * Include t/ in our code coverage to prevent test coverage loss
    * Make schedule_one_job a wait with a timeout
    * t: Set time limit for 33-developer_mode.t
    * Re-schedule all assigned jobs in periodic stale job detection
    * Reduce worker timeout from 2 days to 30 minutes
    * Make the timeout to consider workers offline configurable
    * Allow testing with an app which has no log
    * Be sure to stop services after cache service tests
    * Tweak 18-test-details.t further
    * Strip down the number of test modules used within 18-test-details.t
    * Fix rendering tooltip "undefined" for expanded serial result boxes
    * Test rendering job modules when no modules are present when loading page
    * Fix showing job modules within details table of running jobs
* Wed Sep 16 2020 coolo@suse.com
  - Update to version 4.6.1600233111.d1ffb1b7d:
    * Dependency cron 2020-09-16
    * Change auto-refresh selector
    * Make duplicate keys in Job Templates fatal
    * Revert "ci: Temporarily exclude broken OBS checks"
    * Add TimeLimit to more unit tests
    * Block related jobs when doing 'isos post'
    * Always emit jobtemplate_create with an ID
* Sun Sep 13 2020 coolo@suse.com
  - Update to version 4.6.1599905977.4ef824600:
    * Dependency cron 2020-09-12
    * Use the new helper for all waits
    * Lower test cache service timeout and fail hard
    * Check option existence in developer_mode test
    * Show correct "last seen" time in case the worker disconnects gracefully
    * Remove 'Alive:' and 'Websocket connection:' info from worker page
    * Test whether scheduler preserves the "last seen" tracking for workers
    * Fix worker's online/offline status
    * Return results if the limit is hit
    * Search job templates by test module name
    * Use URLSearchParams instead of jQuery foreach
    * Lookup single product ID w/o parsing all args
    * Make use of query params in admin datatables
* Fri Sep 11 2020 coolo@suse.com
  - Update to version 4.6.1599827045.d7efb6eaa:
    * ci: Temporarily exclude broken OBS checks
    * Update to perltidy 20200907
    * Surface errors from failed test tries
    * docs: Add simple hint about sass
    * Makefile: Prevent "make help" outputting make variable definitions
    * Introduce 't_seen' column to be able to fix worker's online/offline status
    * ci: Use more common 4-digit year format for dep id
    * Improve displaying serial results
    * Dependency cron 200908
    * Use patterns for keys of the settings which rendered as links
    * Implement test case for show_filesrc controller
    * Implement feature in the settings with links in files
    * Select 'Found by' when creating new bugs in bugzilla
    * Dependency cron 200907
    * Skip empty details JSON files when finalizing jobs
* Sun Sep 06 2020 coolo@suse.com
  - Update to version 4.6.1599223479.ee2fc8e22:
    * Import log_error used when removing asset from disk fails
    * Always emit table_create with an ID
    * Fix an issue when PRODUCTDIR includes specific word
* Thu Sep 03 2020 coolo@suse.com
  - Update to version 4.6.1599154152.074365e18:
    * Add generic phrase to 'died' reason if there's no more information
    * Fix tools/tidy
    * Treat as success when schedule_iso() cannot find product-arch combination
    * Emit worker_register event w/o caps or job ID's
    * Replace tools/update-deps with symlink to subrepo
    * Add external/os-autoinst-common subrepo
    * Unify code for displaying test modules
    * docs: Align gre tunnel script with real use case
    * Extract duplicate common worker result files definition
    * Render serial results inline when collapsed
    * Improve coding style in t/04-scheduler.t
    * Surface scheduled product not found in the web UI
* Tue Sep 01 2020 coolo@suse.com
  - Update to version 4.6.1598884221.1f13f38a9:
    * Add missing exit call to openqa-cli
    * Dependency cron 200831
    * Fix nightly dependency checker
    * Display serial results similar to external parser results
    * Remove unused PNG icons
    * Simplify insertion of preview container within test details page
    * Emit jobgroup_create/update with an ID
    * Refactor tools/tidy
    * Refactor searching perl modules and job templates
* Sun Aug 30 2020 coolo@suse.com
  - Update to version 4.6.1598626423.017efa727:
    * Bump max_redirects in OpenQA::Downloader to 5
* Thu Aug 27 2020 coolo@suse.com
  - Update to version 4.6.1598542474.92e6c60c3:
    * Use find in find_most_recent_event to only get one result
    * Revert "Downgrade chromedriver to fix running Selenium tests within CI"
    * Fix scheduling directly chained dependencies when not all children restarted
    * Improve scheduler code (log messages, more compact style)
    * Deduplicate test distribution listings in search
    * Search job templates by name or description
    * Add IPv6 support for localhost uploads
    * Make localhost uploads from worker to webui faster
    * Fix PRODUCT issue when trigger a particular job
    * Add gru download assets by using job settings
    * packaging: do not abuse %{_libexecdir} for systemd directories
    * Merge module search results from the same file
* Sun Aug 23 2020 coolo@suse.com
  - Update to version 4.6.1598001550.b38db760a:
    * Dependency cron 200821
    * Fix JavaScript warnings detected by jshint
    * Add example for restarting a job in help of client
    * Show the real dependency status on the web UI
    * Improve coding style in code for test overview row
    * Use data attributes to render dependency info in test result overview
    * Fix 'Use of uninitialized $filename' in search API
* Thu Aug 20 2020 coolo@suse.com
  - Update to version 4.6.1597912216.78e1dbb92:
    * Dependency cron 200820
    * Omit files in the test root from test search
    * Make openqa-cli set a non-zero exit code on failures
    * Dependency cron 200818
    * Make global search more responsive
    * Implement test search route and results view
    * Improve error messages when cloning a job
    * Simplify `can_be_duplicated`
* Sun Aug 16 2020 coolo@suse.com
  - Update to version 4.6.1597409476.5b230be31:
    * Streamline "duplicate" and "restart" routes
    * Do not hard-code source tree for API descriptions
* Thu Aug 13 2020 coolo@suse.com
  - Update to version 4.6.1597317239.6bef59ee4:
    * Dependency cron 200813
    * Fix support for multiple params with the same name in api command
    * Add tests for GNU style arguments
    * Reduce number of fixtures loaded by several tests
    * Refactor t/05-scheduler-dependencies.t
    * Speed up cache client tests by mocking sleep
    * Rename skip_passed_children to skip_ok_result_children
    * Don't cancel directly chained parents/siblings as well
    * Add test for skipping passed child jobs when restarting a parent job
    * Update documentation of restart behaviour
    * cloning/restarting: Consider job failed if one of its children failed
    * Fix rendering dependency graph in some cases
    * Allow skipping passed children when restarting a job
    * Add retry feature to cache service client
    * Highlight dependency jobs in the overview page
* Tue Aug 11 2020 coolo@suse.com
  - Update to version 4.6.1597138547.40c3d2c81:
    * `make test-with-database`: add -I$(PWD)/t/lib back to PERL5OPT
* Sun Aug 09 2020 coolo@suse.com
  - Update to version 4.6.1596790814.ca2af820f:
    * Replace custom implementation of expiring jobs with Minion feature
* Thu Aug 06 2020 coolo@suse.com
  - Update to version 4.6.1596727008.bebda9b71:
    * Remove dead code from Job controller
    * Dependency cron 200806
    * Dependency cron 200805
    * Use CMake to build os-autoinst
* Sun Aug 02 2020 coolo@suse.com
  - Update to version 4.6.1596190499.d88f85256:
    * Dependency cron 200731
    * Add test for API keys UI
    * Allow adding API keys without expiration date via the UI
    * Improve code for API keys page
* Thu Jul 30 2020 coolo@suse.com
  - Update to version 4.6.1596119585.a5800f1aa:
    * Prepare using CMake and ninja to build os-autoinst
    * Allow the worker to start ffmpeg to encode the video
    * Show job dependency on the Test overview page
    * Dependency cron 200729
    * Make a few small optimizations to speed up the deletion of screenshots
* Sun Jul 26 2020 coolo@suse.com
  - Update to version 4.6.1595658530.ccadcf580:
    * Dependency cron 200725
    * Add .jsbeautifyrc for editor support
    * Fix "last good" link introduced in 8fc2dc99a
    * Specify timeout for timeout to send KILL signal
    * Make prove aware of timeout
* Thu Jul 23 2020 coolo@suse.com
  - Update to version 4.6.1595521154.aa29e2427:
    * Add help popover for restart button
    * Allow skipping parents when restarting a job via API
    * Clone directly chained parents when restarting jobs
    * Improve error message and coding style when cloning a job
    * Fail Makefile targets if checks for certain tools fail
    * Add "tidy" make target calling Perl and JavaScript tidy
    * Make "last good" a link to a job instead of plain job ID
    * Render the dependency graph only while the tab panel element is visible
    * Avoid overriding explicitly specified tab/step when loading running jobs
    * Fix qcow image URLs being treated as text
    * t: Add test for content-type of qcow2 image
    * t: Delete obsolete disabled content from ui/07-file.t
    * t: Simplify 07-file.t using more Mojo::File
    * t: Add test for content-type of log archive and ISO media as well
    * t: Minor enhancements to comments
    * t: Move 'wait_for_worker' to only place where used
    * Allow to configure worker connect interval using env variable
* Tue Jul 21 2020 coolo@suse.com
  - Update to version 4.6.1595305429.43f8dce53:
    * Dependency cron 200721
    * Use inclusive terminology "blocklist/passlist"
    * spec: Save time in package build tests
    * Add js-beautify checks and convenience make target
    * Tidy all javascript files with js-beautify (default config)
    * spec: Delete superfluous prove flag already included in PROVE_LIB_ARGS
    * Delete obsolete OBS_RUN variable assignment
* Sun Jul 19 2020 coolo@suse.com
  - Update to version 4.6.1595016885.fd322f928:
    * Add UI support for removing users
    * Add docs how to set the --no-cleanup parameter in the systemd units
* Thu Jul 16 2020 coolo@suse.com
  - Update to version 4.6.1594892785.5a3073ffd:
    * openqa-clone-custom-git-refspec: Fix curl+jq check for jq < 1.6
    * Dependency cron 200716
    * Fix user creation in OAuth2 plugin
    * Dependency cron 200715
    * Improve code for collapsing investigation details
    * Collapse content of in investigation when content is too big
    * docs: Extend Networking chapter to cover non-qemu in general
    * docs: Fix and improve networking sections
* Mon Jul 13 2020 coolo@suse.com
  - Update to version 4.6.1594640971.bf4138e4b:
    * spec: Exclude flaky t/api/14-plugin_obs_rsync_async.t from tests
    * doc: Add hardware recommendations
    * mergify: Wait for OBS Package Build as well after we have it back
    * spec: Fix build missing "devel" package
    * spec: Prevent unresolvable on ppc64le with no-selenium-devel subpackage
* Thu Jul 09 2020 coolo@suse.com
  - Update to version 4.6.1594309120.bdb02d947:
    * deps: Fix nightly dependency bot job
    * Convert line endings .circleci/ci-packages.txt
    * worker: Allow video encoder to finalize the file
    * Improve appearance of custom time filter in needles table
    * Dependency cron 200708
    * deps: Update Mojo-IOLoop-ReadWriteProcess
    * Remove obsolete jobs table column 'backend'
    * mergify: Add additional automatic merge on special label
    * mergify: Only merge automatically when there are no pending reviews
    * deps: Copy update-deps from os-autoinst
    * Expand the search range in used/match when querying needles
    * Test clone_job_get_job and error messages
    * Update Perl::Tidy to 20200619
* Tue Jul 07 2020 coolo@suse.com
  - Update to version 4.6.1594050210.78188dc41:
    * systemd: Prevent worker erroneously pulling in any local openQA webUI service
    * Add perl-Mojolicious-Plugin-OAuth2 dep
    * Document how to configure OAuth 2.0
    * Capture output of Fake/OpenID cases and use tempdir
    * Add OAuth2 auth method with GitHub provider
    * Narrow down fixtures needed by toplevel tests
* Sun Jul 05 2020 coolo@suse.com
  - Update to version 4.6.1593790150.a010576f0:
    * Handle the case where a concurrent cache service Minion job failed gracefully
    * mergify: Also block merge on selected labels
    * Handle the case where the first cache service Minion job failed gracefully
    * deps: Make cpanfile targets configurable
    * openqa-clone-custom-git-refspec: Enhance error message when called with wrong certificates
    * Fix showing help for commands loaded via plugins
* Thu Jul 02 2020 coolo@suse.com
  - Update to version 4.6.1593683888.1074bc933:
    * .circleci: Rename dependencies.txt to describe the actual use case
    * Simplify code for reading JSON files
    * Test OpenQA::CacheService::Client status functionality
    * Add a job summary into the detail page
    * Extract renderTestSummary as a common helper to print the job summary
    * Test OpenQA::CacheService::Client info functionality
    * Test OpenQA::CacheService::Client enqueue functionality
    * Be more defensive and forward all cache service errors
    * Handle all cache service client errors consistently
    * Pass along cache service enqueue errors so they can be logged by the worker
    * Dependency cron 200701
    * Copy update-deps script from os-autoinst
    * Narrow down fixtures needed by api tests
* Tue Jun 30 2020 coolo@suse.com
  - Update to version 4.6.1593514767.bedf7a0de:
    * Avoid errors when serving job module results while they have just been finalized
    * Update documentation regarding dependency handling
    * Skip reading text files when reading job modules for label carry over
    * Make details JSON globally readable when finalizing job module results
    * Improve tests for finalizing job results
    * Improve gathering job module results
    * Simplify and improve code for finalizing results to optimize job details loading
    * Add minion task to remove duplicate result text files
    * Unify test module text output loading
    * Optimize job details loading with empty disk cache
    * Narrow down fixtures needed by ui tests
    * script: Slightly simplify create_admin script
* Sun Jun 28 2020 coolo@suse.com
  - Update to version 4.6.1593255831.e90b9f499:
    * Dependency cron 200627
    * Reduce common fixtures used in api/04-jobs
    * mergify: Provide hint when a conflict is present
    * mergify: Be safe by waiting explicitly for codecov as final check
    * mergify: Ensure also no open request for changes
    * README: Fix circleci badge to master branch
    * Mergify: configuration update
    * Downgrade chromedriver to fix running Selenium tests within CI
    * docu: Fix href of JobGroupDefaults.pm because of a7fb32a
    * overview: Show version when DISTRI differs
* Thu Jun 25 2020 coolo@suse.com
  - Update to version 4.6.1593091364.60cb15b8d:
    * Remove versioned chromedriver install again
    * Fix running Selenium tests within CI
    * Improve wording in Docker/CI-related documentation
    * Improve Docker/CI-related documentation
    * Use relative path in test-with-database target so it works easier within Docker
* Tue Jun 23 2020 coolo@suse.com
  - Update to version 4.6.1592865598.88eb8f02c:
    * Increase version requirement for some dependencies
* Thu Jun 18 2020 coolo@suse.com
  - Update to version 4.6.1592454623.560f44635:
    * Prevent schedule from being reread unnecessarily
    * Fix order of arguments in script/openqa-worker-cacheservice-minion
    * Fix logic for changed schedule
    * Reset locks when restarting the cache service Minion worker
    * t: Attempt to fix sporadic timeout in basic.t in circleci
    * Attempt to fix sporadically missing test modules due to 0d1061af
* Tue Jun 16 2020 coolo@suse.com
  - Update to version 4.6.1592287553.6689377a6:
    * Dependency cron 200616
    * Update logo.png to the new SUSE logo
* Sun Jun 14 2020 coolo@suse.com
  - Update to version 4.6.1592022958.c44fca22c:
    * Dependency cron 200613
    * Allow flock on temporary files to fix support for monitoring with Mojolicious::Plugin::Status
    * Add error message when openqa-clone-custom-git-refspec is called on invalid job
* Thu Jun 11 2020 coolo@suse.com
  - Update to version 4.6.1591782003.8d14b8990:
    * Mark flaky t/ui/26-jobs_restart.t as unstable
    * Allow OpenID login via POST request
* Tue Jun 09 2020 coolo@suse.com
  - Update to version 4.6.1591699942.8543386ed:
    * Dependency cron 200609
    * Add notes about arbitrary reasons
    * Remove out-dated comments; stopping will no longer be delayed as stated
    * Use newly introduced constants for worker commands and stop reasons
    * Improve dealing with worker commands and stop reasons
    * Add missing copyright header in constants modules
    * Remove stop type 'scheduler_abort' which is not used anymore
    * Improve coding style in set_running
    * Prevent Perl warning in downloader code
    * Improve UI for selecting the display order of builds
    * Select interval checkbox for interval from query parameter if applicable
    * Improve wording in the index page form, mainly to improve consistency
    * Improve coding style in JavaScript/CSS/template files
    * Avoid accumulating `comments_page` query parameters when using pagination
    * Fix typo in pagination code
    * Add autorefresh in the index page (#3141)
    * Maintain pagination when an user role changes
    * Fix pagination in the group overview page
    * Dependency cron 200605
    * Turn two schema functions into methods
    * Hide livestream when loading test details and job is currently uploading
    * Update out-dated comment; the image upload is async via Mojo::IOLoop->subprocess
    * t: Use Test::MockModule->redefine in t/28-logging.t
    * Only reload test schedule when test_order.json has been changed
    * Make restart button work again after the job state changed
    * Dependency cron 200604
    * t: Allow to configure amount of unstable/rejective workers in 05-scheduler-full.t
    * t: Simplify worker startup in 05-scheduler-full with map
    * t: Improve test description strings in 05-scheduler-full
    * t: Fix warning in 28-logging.t with strict MockModule and Test::Warnings
    * Extract methods for "ignore_known_images" and "ignore_known_files" in Worker::Job
    * Simplify Worker::Job slightly
    * Remove unnecessary single-line step in Worker::Job
    * Use the more idiomatic ->find instead of ->single
    * Replace duplicate method OpenQA::Schema::Result::Workers::to_string
    * Delete unnecessary pre-declaration of log_warning in OpenQA::Log
    * Generalize handling the video
    * Remove dead code from OpenQA::WebAPI::Plugin::ObsRsync
    * doc: Improve virtio/svirt serial terminal docs
    * Fix tests on OBS when "ps" is not installed
    * Use :report_warnings feature of Test::Warnings
    * Mark "25-cache-service.t" as unstable test as observed in circleci
    * Mark old issues and pull requests as stale
    * Extract methods for "ignore_known_images" and "ignore_known_files" in Worker::Job
    * Simplify Worker::Job slightly
    * Remove unnecessary single-line step in Worker::Job
    * t: Fix "Dubious, test returned 9" in 05-scheduler-full.t
    * t: Fix unstable test 'Allocated maximum number' in 05-scheduler-full
    * t: Sleep only when necessary when waiting for worker
    * t: Fix sporadic test failures on mis-assignment of jobs in scheduling
    * t: Increase robustness of 05-scheduler-full with reduced scheduler tick
    * t: Prevent use of occupied port in all full-stack/scalability tests
    * Makefile: Bump timeout limit for various tests for slow circleci
    * t: Provide unique process name for worker in scalability test as well
    * t: More cleanup in t/05-scheduler-full.t
* Tue Jun 02 2020 coolo@suse.com
  - Update to version 4.6.1591092399.b9fb68988:
    * t: Make output nicer on time limit
    * Dependency cron 200601
    * Avoid stopping the live log when the worker already works on different job
    * worker: Keep uploading results until logs and assets have been uploaded
    * worker: Log every 10th uploaded chunk to autoinst-log.txt as well
    * Keep 'live' tab shown while uploading for improved feedback
    * Avoid rendering 'live' tab when job is already done
    * Update comments in worker function _upload_result
    * Fix style issue in running.js so jshint shows no errors
    * Do not shadow $errors in utils-job-templates test
    * Capture base_state.json JSON error warning
    * Add '--merge' option to prove
    * Show an explicit warning when failing to wakeup scheduler
    * Prefetch parent job in JobModules::job_modules()
    * Capture screenshot created message in screenshot test
    * Dependency cron 200529
    * t: Make process handling more robust with IPC::Run
    * Log errors when claiming OpenID identity
    * Fix visual artifact in audio result box
    * Use named tempdir in cli archive unit test
    * Add documentation for MAX_JOB_TIME taking ab743579 into account
    * Validate parameters passed to job API routes
    * Add link to latest test in ObsRsync Project list (#3052)
    * templates: Simplify calculation of build bar results with 'total' value
    * t: Use OpenQA::Test::TimeLimit in basic.t for a start
    * Add "by groups name" as option to organize the builds in parent group overview
    * t: Add test module to check for test runtime
    * t: Extend 28-logging.t to cover color codes
    * Define custom log color selection compatible with reverse video terminals
    * Slightly simplify OpenQA::Log
    * Add colors to log output when available
    * Enable NOVIDEO for jobs with increased MAX_JOB_TIME by default
    * Move computing max job time into own function and add tests
    * Job templates: Return full error message for invalid YAML
    * t: Simplify basic.t
    * t: Output port for scheduler service as well
    * Improve debug message for job-worker assignment
    * t: Add trivial test for OpenQA::Log::get_channel_handle coverage
    * t: Simplify stdout matching in 28-logging.t
    * t: Fix warning "Prototype mismatch: sub Time::HiRes::gettimeofday"
    * t: Fix a sporadic problem in 05-scheduler-full about jobs assigned to dead workers
    * Delete unused import in WebAPI::Controller::API::V1::Worker
    * Delete obsolete TODO in worker schema implementation
    * DRY in name/to_string within worker schema implementation
    * t: Provide unique process name for all forked processes
    * t: Use IPC::Run for gru service in t/api/14-plugin_obs_rsync_async.t
    * t: Simplify sleep, retry and loops in t/api/14-plugin_obs_rsync_async.t
    * t: Output port for websocket server same as we do for webapi
    * t: Ensure unavailable websocket server is seen by throwing exception
    * t: Sort external imports first in 43-scheduling-and-worker-scalability.t
    * Simplify use of Test::Output with bare blocks rather than sub refs
    * t: Delete obsolete/disabled code in api/04-jobs.t
    * Render job module results on client side
    * Job templates: Escape dot in regex
    * Try using exclusive locks explicitly to prevent SQLite file corruption
    * Move remaining clone job functions into CloneJob module
* Tue May 19 2020 coolo@suse.com
  - Update to version 4.6.1589882993.dd2749ac3:
    * update-deps: Fix script path
    * Depend on Mojolicious 8.42 for session security fixes
    * Pass the first line of an os-autoinst multi-line error instead of discarding it
    * worker: Improve retrieving extended reason from os-autoinst
    * t: Catch all output in config.t
    * spec: Move configure-web-proxy to web UI package where it is needed
    * Dependency cron 200517
    * Improve coding style in t/ui/18-test-details.t
    * Fix showing needle info when symlinks are used
    * Show candidate needle's last match/seen in the needle diff view
* Sun May 17 2020 coolo@suse.com
  - Update to version 4.6.1589554725.a1ad83f83:
    * Allow hidden keys in job template YAML
    * Return error when creating a needle only contains ocr area
    * Do not share controllers as base classes between micro services
    * Move actions and helpers used by multiple micro services into the OpenQA::Shared namespace
    * Remove more dead code
    * WebAPI needs the developer controller
    * Remove unnecessary referer check
    * Separate OpenQA::LiveHandler and OpenQA::WebAPI code a bit more
    * Add help for 'fetchneedles', 'openqa-bootstrap', 'openqa-bootstrap-container'
    * Add '--help' for script/configure-web-proxy
* Thu May 14 2020 coolo@suse.com
  - Update to version 4.6.1589385688.c7582131b:
    * Stabilize 25-cache-service.t using Time::HiRes
    * docs: Describe the possibility for cloud instances explicitly
    * t: Extract 'start_worker' method to reduce duplicate code
    * Dependency cron 200513
    * t: Delete unused 'stop_worker' in 33-developer_mode.t
    * t: Prevent perl warning when 05-scheduler-full fails
    * Remove references to Test::More::Color not adding benefit
    * Mark unstable/flaky t/ui/27-plugin_obs_rsync_status_details.t as such
    * Add MicroOS bug reporting URL
    * Makefile: Bump timeout for 't' for accepted slow runs
* Tue May 12 2020 coolo@suse.com
  - Update to version 4.6.1589279446.c80b4132b:
    * Simplify test code in generating jobs settings
    * Fix dynamically deactivating tabs in test details
    * Fix returning result of finished job
    * Decrease polling interval of web socket console to potentially speed up tests
    * Ignore further JavaScript errors to reduce number of false-positive tests
    * systemd: Get rid of obsolete dependency of worker on apache2
    * t: Add possibility to overwrite full-stack temp dir for easier debugging
    * Avoid additional white-spaces in job settings table
    * Test scheduled products search
    * Provide CPU flags on worker information for debugging CPU instruction support
    * Make scheduled product IDs in the table links
    * Allow showing scheduled product results when not logged in
    * Tweak styling of scheduled products table
    * docs: Add various hints for saving time in local tests
    * t: Improve t/32-openqa_client.t
    * t: Enhance test messages in t/32-openqa_client.t
    * docs: Delete duplicate mention of 'tidy'
    * Add '--help' for tools/tidy
    * t: Change javascript_console_has_no_warnings_or_errors to only output once
    * Dependency cron 200510
    * setup-db: Prevent 'could not change directory' warning
    * Write JS code for audit and product log in a more compact way
    * Add link from test details to scheduled product page
    * Show all scheduled products in the web UI
    * Show scheduled product on test details page
    * Avoid repeated calls to $job->clone_id
    * Fix the issue `_URL` in jobs post is different from that in isos post
* Sun May 10 2020 coolo@suse.com
  - Update to version 4.6.1589026701.ed65375c3:
    * Fix missing mojo mode in scheduler daemon startup file
    * docs: Update local docker test usage
    * Initialize timeago elements correctly when refreshing info panel dynamically
    * Fix updating SVG favicon (without page reload)
    * Fix autoscroll checkbox in live log
    * Dependency cron 200508
    * t: Harmonize more test messages in full-stack.t
    * Try to stabilize ObsRsync unit test during stresstest
    * Add proxy detect for OpenQA::Client
    * docker: Use useradd -m (--create-home)
    * Use defaults already in startup scripts rather than systemd
* Thu May 07 2020 coolo@suse.com
  - Update to version 4.6.1588874206.b9aea9c2e:
    * docs: Update Contributing docs regarding dependencies
    * t: Remove "sleep 8" in full stack test after stabilization
    * Remove comments to fix syntax highlighting and unnecessary blank line from fullstack test
    * Adapt fullstack test to AJAX-based job status updates
    * Load autoinst-log.txt without page reload in details tab
    * Fix updating the info panel class and stopping the developer mode
    * Update favicon on job state transition (without page reload)
    * Avoid refreshing the whole test details page on job state transitions
    * Remove debug message leading to "Use of uninitialized value [...]" warnings
    * Fix get_last_test() in ObsRsync Plugin
    * Convert DISTRI into lowercase before replacing variables
    * Dependency cron 200507
    * t: Delete obsolete 'full-stack.d' directory
    * t: Remove unnecessary 't' prefix in temporary dirs
    * t: Ensure full stack test run has not passed "shutdown" module
    * t: Abbreviate 'wait_for_developer_console_contains_log_message' for nicer line wraps
    * t: Properly export functions from Open::Test::FullstackUtils
    * Use Test::Most instead of Test::More for convenience
    * Let Mojo::UserAgent deal with WebSocket redirects
    * Dependency cron 200506
    * Fix missing_assets to ignore repos, not 'hidden assets'
    * Add specific error messages for cache directory unspecified
    * t: Reduce runtime of 25-cache-service.t with lower sleep periods
    * t: Add timeout for cache service test internal wait
    * t: Add more unique test messages to 25-cache-service.t
    * Add convenience sub-package 'openQA-single-instance'
    * docs: Mention installation of openQA-worker explicitly
    * docs: Correct reference to main package as "openQA server package"
    * docs: Simplify reference to minimum Leap/Fedora version
    * The exporter is not needed for authentication modules
    * Improve openqa-validate-yaml
    * Prevent repeated import attempts in WebAPI::Controller::Session
    * Use explicit 'return undef' in WebAPI::Controller::Session
    * Validate job done event
    * Refactor jobs tests into subtests
    * Simplify WebAPI::Auth::OpenID
    * Simplify WebAPI::Controller::Session with early returns
    * Simplify WebAPI::Controller::Session
    * Remove unused imports in WebAPI::Controller::Session
* Tue May 05 2020 coolo@suse.com
  - Update to version 4.6.1588677155.c96a967f7:
    * Dependency cron 200505
    * Makefile: Fix evaluation for 'test-unstable' as followup to a8537863d
    * t: Correct cache test wait loop condition in full-stack.t
    * t: Add wait for UI instrumentation instability in full-stack.t
    * t: Phrase test message positively to prevent confusion
    * Use more Mojo::File in t/full-stack.t
    * t: Use existing dataset as time reference for stability
    * t: Add test messages to javascript_console_has_no_warnings_or_errors in full-stack.t
    * t: Fix missing leading double quote in plan skip message
* Sun May 03 2020 coolo@suse.com
  - Update to version 4.6.1588418631.c4bd338ae:
    * t: Ensure all test code is executed in every environment
* Thu Apr 30 2020 coolo@suse.com
  - Update to version 4.6.1588266331.0a51f4d32:
    * Dependencies: Add Getopt::Long::Descriptive to client deps
    * Also mention the --verbose option of openqa-cli
    * Use an endpoint that actually requires authentication for the authentication example
    * Add another JSON example and fix an error in the authentication section
    * Mention that MOJO_CLIENT_DEBUG is an upstream feature and the output can change
    * The openQA REST API uses JSON everywhere now, so content negotiation is not needed
    * Add openqa-cli documentation
    * Add back t/ui/01-list.t to "unstable" as not reliable
    * Makefile: Fix evaluation of 'unstables'
    * Add Test::MockObject and Test::Exception to test dependencies
    * Make connection errors more obvious
    * Fix `TEST` is not replaced when using `isos post`
    * Add --verbose option to "openqa-cli api"
    * Add route for latest test outcome in ObsSync Plugin
    * Revert "Use defaults already in startup scripts rather than systemd (alternative to #2864 with shell wrappers)"
    * t: Fix 'QEMU_NO_KVM' incorrectly added in QEMU_NO_KVM=1
    * Increase proxy timeout
    * Provide a '--help' option to all our scripts
    * t: Save 5s test execution time in full-stack.t with smarter timestamps
    * t: Delete potentially offensive and unhelpful TODO comment
    * Move existing client script code to a better place
* Tue Apr 28 2020 coolo@suse.com
  - Update to version 4.6.1588072966.ee098707b:
    * t: Use proper copyright header for OpenQA::Test::Database
    * Delete obsolete 'check_dependencies' script
    * Default to HTTPS in openqa-cli
    * Consistently use openqa.example.com for examples
    * Update documentation to use openqa-cli
    * Update openqa-cli usage messages and add --osd/--o3 options
    * Use openqa-cli in full-stack tests
    * Remove dead test code
    * More unicode tests for openqa-cli
    * Add new openQA client to openQA-client package
    * Implement openqa-cli archive subcommand
    * Add user friendly exception handling with color highlighting and pretty printing of JSON
    * Allow loading the request body and form data from a file
    * Turn JSON objects into form parameters with --form
    * Rework JSON handling and set a default Accept header
    * Allow key/value pairs to be passed as arguments
    * Move apibase handling to base class too
    * Use the new license header
    * Add an archive command to openqa-cli as a first example for extensions
    * Add basic openqa-cli structure
    * Allow to overwrite 'worker connect retries' by environment variable
    * Fix local runs of full-stack test failing on "Content has not changed"
    * t: Cover test output with Test::Output
    * Use defaults already in startup scripts rather than systemd
    * Rename old "slenkins" data to be more generic
    * t: Try to stabilize t/ui/01-list.t
* Sat Apr 25 2020 coolo@suse.com
  - Update to version 4.6.1587822981.75468e7ef:
    * Fix exit code returned by client
    * Rename YAMLRenderer plugin to YAML
    * Update all overlooked old copyright notices
    * Add soft failure support for JUnit log parser
    * Dependency cron 200424
    * Fix a very sporadic issue of a wrong comment header applied
    * openqa-clone-custom-git-refspec: Prevent warning about empty variable
    * Improve warning about undefined empty arg on clone with quotes
    * Improve the check for missing assets
    * tests: deduplicate $schema->resultset('Jobs') in t/15-assets.t
    * Remove a small race condition in asset tests
    * Set the machine name before expanding specified variables
    * Extract duplicated code from generating job settings
    * Dependency cron 200423
    * Check if there is a recent event before returning it
    * Correct creating directly chained dependencies when cloning job
    * Extend client test for JSON/YAML output and error handling
    * Cover client with more tests by extracting methods into lib/
    * t: Split out Client::Archive test from generic client test
    * Add simple test for client script
    * Slightly simplify script/client
    * Fix repo in dirty status request in ObsRsync Plugin
* Thu Apr 23 2020 coolo@suse.com
  - Update to version 4.6.1587630471.ceb108926:
    * Improve tests for job restarting
    * Allow to force restarting a job via the web UI
    * Update build_dependencies.sh to work on dependencies.yaml
    * Run make update-deps
    * Add t/45-make-update-deps.t
    * Make an exception for Perl::Tidy
    * Add tools/update-deps and dependencies.yaml
    * t: Stabilize and simplify ui/02-list-group.t (again)
    * Speed up dashboard tests
    * t: Stabilize ui/02-list-group.t
    * spec: Sort dependencies
    * t: Improve test stack reporting by avoiding Test::More tests in helper libs
    * t: Extract common full stack function "schedule_one_job_over_api_and_verify"
    * t: Add timeout for loops in full-stack.t
    * Consider directly chained dependencies when registering assets
    * Dependencies: Remove commas from requirements in spec
    * Scripts should return 0 when called with --help
    * Add test running all perl scripts with --help
    * Select also script directory in CI
    * Dependencies: Sort cpanfile
    * Allow running tests within Makefile despite unclean environment
    * Return error when error happens in caching assets
    * t: Speedup full stack test with KVM when available
    * UI tests: Add message to wait_for_ajax calls
    * Show test details tabs only via hash if it makes sense for the job state
    * Add explicit tests for the job's has_* functions
    * Load test result tabs async on demand
* Mon Apr 20 2020 coolo@suse.com
  - Update to version 4.6.1587416201.4df4ad16d:
    * Fix load_templates --clean to wipe more than one entry per table
    * Partially revert t/ui/13-admin.t change
    * Fix missing import 'log_error' in WebAPI::Controller::Running
    * t: Stabilize ui/15-admin-workers.t
    * t: Stabilize ui/27-plugin_obs_rsync_status_details.t
    * t: Stabilize ui/13-admin.t
    * t: Stabilize ui/10-tests_overview.t
    * Remove duplicated line in CSS file
    * Revert "Extract duplicated code from generating job settings"
    * tools: Improve output of retry
    * t: Cleanup nonsensical notes and steps in ui/06-operator_links.t
    * t: Turn comments of 06-operator_links into explicit test notes
    * Delete obsolete reference to phantomjs
    * t: Delete obsolete FIXME
    * t: Stabilize ui tests waiting for ajax
    * t: Stabilize ui/14-dashboard-parents.t waiting for build results
    * t: Use descriptive string in wait_for_ajax rather than comment
    * Add output of each try in tools/retry
    * t: Replace busy-loop with small-interval sleep in 25-cache-service.t
    * t: Make test messages in 25-cache-service.t unambiguous
    * t: Speedup 25-cache-service.t
    * Extract method do_asset_caching for easier testing
    * t: Fix instabilities in ui/01-list.t on accessing /tests
    * Validate parameter passed to comment API routes
    * Validate parameters passed to Worker API routes
    * Cover asset_caching by tests
    * Pick up extended reason from state file if available
    * Use Mojo::File correctly in OpenQA::Client::Archive
    * Fix --with-thumbnails option of client --archive feature
* Thu Apr 16 2020 coolo@suse.com
  - Update to version 4.6.1586954096.7160d88d9:
    * t: Add test description strings for all 'click_element_ok' calls
    * docs: Add description of folder structure
    * Separate all "scripts" to be packaged from development "tools"
    * t: Allow to set custom test output message on wait_for_ajax calls
    * t: Reduce sleep time in "schedule_one_job" to save testing time
    * t: Extract method "find_status_text" for full stack utils
    * Replace all uses of mock with redefine
    * doc: Mention script/tidy script
    * doc: Mention test-unit-and-integration target
    * doc: Fix variable name
    * openqa-clone-custom-git-refspec: Allow '/' in branch name
    * Refresh details page only when the job state changes
    * Use same setup function for scheduled tests as for other "pre-done" states
    * Show settings by default also for assigned jobs
    * Extract duplicated code from generating job settings
    * Simplify Schema::Results::Jobs (map)
    * Simplify Schema::Results::Jobs overview preparation
    * Simplify Schema::Results::Jobs with early returns
    * Extract Schema::Results::Jobs logging method
    * Simplify Schema::Results::Jobs "add/remove_result_dir_prefix"
    * Simplify Schema::Results::Jobs "delete" method
    * t: Add simple test for job name/label/scenario
    * script: Ensure no left over .tdy files on aborted/failed tidy
    * Cut reason after 300 characters
    * Validate result when setting a job to done
    * asset cleanup: Consider all jobs which are not done or cancelled as pending
    * Do not re-generate settings when cloning a job
    * Handle the settings that start with `+` when creating a job
* Tue Apr 14 2020 coolo@suse.com
  - Update to version 4.6.1586679856.9abbce836:
    * Dependency cron 200412
* Sat Apr 11 2020 coolo@suse.com
  - Update to version 4.6.1586463829.b1aa1fe9b:
    * Add explicit API test for obsoleting job
    * bootstrap: Create symlink for sle tests to work
* Thu Apr 09 2020 coolo@suse.com
  - Update to version 4.6.1586355542.a1ef862a8:
    * Prevent warning when showing video without t parameter
    * Move log setup into log module
    * Allow restarting jobs with empty assets (instead of showing error)
    * Improve test for preserving pending assets
    * Add unit test scenarios for different needle property types
    * Makefile: Decrease limit for api tests after b72cccfca
    * Move ServerSideDataTable to only place where used
    * spec: Move subpackage specific files out of common package
    * Move JobGroupDefaults out of schema to be usable for worker
    * Prevent investigate request timing out
    * Adapt codecov target to current coverage of 93%
    * Remove perlcritic policy ConsistentQuoteLikeWords
* Tue Apr 07 2020 coolo@suse.com
  - Update to version 4.6.1586201785.538ad8205:
    * t: Provide info in 43-scheduling-and-worker-scalability.t also in non-verbose
    * Fix regression in b72cccfca about undefined mod results
    * t: Fix overly long runtime in api/02-iso.t
    * Fix missing method import "find_bug_number"
    * systemd: Fix path in openqa-enqueue-audit-event-cleanup.service after d509e69f4
    * Dependency cron 200406
    * Split off log functions into a new module
    * Store the entire result provided by os-autoinst
    * Improve Perl module search paths of some tests
    * Increase timeout of jobs in scalability test for stable CI runs
* Sat Apr 04 2020 coolo@suse.com
  - Update to version 4.6.1585918802.94bcc1cc4:
    * Add retry for worker-webui connection on 408+425
    * Prevent more useless retries for worker-webui connect
    * Extend retry in worker-webui connect to cover rebooting hosts
    * t: Extend 24-worker-webui-connection.t to check different retry codes
    * t: Extract method for send in 24-worker-webui-connection.t
    * Cover broken needle code path in a unit test
    * Provide enqueue convenience scripts rather than systemd
    * Account freed disk space when deleting logs
    * Unify single/multi audit event rendering
* Thu Apr 02 2020 coolo@suse.com
  - Update to version 4.6.1585815597.24b98a95a:
    * docs: Mention the importance of synchronized clocks for remote worker machines
    * docs: Update "Run workers" to not only mention "virtual machines" as backend
    * The job result is a string and not a number
    * Turn warning about missing assets when restarting jobs into error
    * Harmonize License copyright format
    * Validate parameters passed to job group API routes
    * t: Fix sporadic failure in 10-tests_overview.t
    * worker: Test ignoring known images/files
    * Improve API test for updating status
    * Simplify API test for updating status
    * Prevent uploading non-screenshot results twice
    * Improve logging of result size accounting
    * Properly consider configured repo in ObsRsync check of dirty status
* Tue Mar 31 2020 coolo@suse.com
  - Update to version 4.6.1585581139.1203c5b7b:
    * Validate parameters passed to bug API routes
    * Skip detecting asset key when asset value is null
    * Dependency cron 200329
* Sat Mar 28 2020 coolo@suse.com
  - Update to version 4.6.1585334025.c496db1d6:
    * Revert "Improve the operation of 'jobs post'"
    * Rewrite asset list generation for cache service
    * Revert "Rewrite asset list generation for cache service"
    * Ensure final linebreak in job template editor
    * Do not re-generate settings when cloning a job
    * Handle the settings that start with `+` when creating a job
    * Dependency cron 200326
* Thu Mar 26 2020 coolo@suse.com
  - Update to version 4.6.1585161757.bb4097462:
    * Fix triggering ObsSync using repository
    * script/openqa-clone-job --help exits with 0
    * Rewrite asset list generation for cache service
    * script/client --help exits with 0
    * Add JSON::Validator, YAML::PP, YAML::XS to client_requires
    * Add openQA-client-test.spec
    * Refactor saving details/screenshots
    * Fix shellcheck complaint about sh/bash mismatch in t/dummy-isotovideo.sh
    * Fix shellcheck complaint about SC1091 in script/openqa-bootstrap
    * openQA.spec: Run style checks in %check to detect issues in other products
    * Return JSON for all API routes
    * Extend reason quit so its meaning is more clear
    * Add pointer to log details for incomplete jobs with reason "died"
    * t: Simplify 03-auth test
    * Add explicit test for auth with slight OpenID coverage increase
    * Remove untested and probably unused iChain authentification
* Mon Mar 23 2020 coolo@suse.com
  - Update to version 4.6.1584957320.c50fd7cfd:
    * Simplify 'prepare_data_function' as followup to #2793
    * t: Bail out early on Selenium reported errors for concise log
    * t: Ensure necessary test dirs exist for ui/21-admin-needles.t
    * Extract common screenshot DB insertion function
    * Fix extracting compressed downloaded files
    * Validation for Asset controller
* Sat Mar 21 2020 coolo@suse.com
  - Update to version 4.6.1584727112.296692355:
    * Store size of job results in the database on upload
    * Prepare storing size of job results in the database on upload
    * Improve tests for job artifact upload
    * Validate parameters for artefact upload
    * Convert uses of `each` to `foreach`
    * Use validation_error helper in controller for saving needles
    * Adapt to Mojolicious 8.34; explicitly allow empty optional needle params
    * Dependency cron 200319
* Thu Mar 19 2020 coolo@suse.com
  - Update to version 4.6.1584559784.011f30866:
    * Makefile: Prevent unexpected self-test run time increases with timeouts
    * docs: Move growing "testing" section out of "commit rules"
    * docs: Delete obsolete remark about dependencies in docker container
    * Makefile: Add convenience variable "TESTS" for easier selection
    * t: Reduce default wait_until check interval to save testing time
    * t: Simplify "schedule_one_job"
    * Prevent possible DBIx warnings when updating job modules
    * Add parameter repository in ObsRsync sync
    * Take automatically added newline into account for the reference
    * Add route list of configured projects in ObsRsync
    * Configure dirty status checks per project in ObsRsync plugin
    * Avoid scalability test failures in the CI
    * Improve coding style of streaming controller functions
    * Prevent race condition when assigning and sending jobs to a worker
    * docs: Clarify users and expected errors during an import
    * Handle web socket errors in live/developer mode code
    * Makefile: Separate scope of "checkstyle" and "test-checkstyle" for clarity
* Mon Mar 16 2020 coolo@suse.com
  - Update to version 4.6.1584377052.a1f8cccba:
    * Prevent flooding PostgreSQL logs with errors when inserting job modules
    * Remove DBIx hooks for updating job module statistics of jobs table
    * Improve checks in test for creating custom job module
    * Improve bug cleanup test to collect coverage and use helper to run job
    * Remove unused and uncovered helpers
    * Refactor job status update to avoid uncoverable branch
    * Mark handling for database errors which are hard to test as uncoverable
    * Remove support for old workers relying on redirection for ws route
    * Remove unused and uncovered part_of_important_build function
* Sat Mar 14 2020 coolo@suse.com
  - Update to version 4.6.1584172463.88254ac92:
    * Rename the JobTemplates module to YAML
    * Slightly simplify code WebAPI::Controller::API::V1::Job and Worker::WebUIConnection
    * Mark uncoverage subroutine in OpenQA::Worker::WebUIConnection
    * t: Slighty simplify t/24-worker-webui-connection.t
    * t: Add explicit to stabilize test coverage for OpenQA::Worker::WebUIConnection
    * t: Fix warning '"my" variable %job_info masks earlier declaration'
    * Fix perlcritic issue
    * Fix t/40-script_openqa-clone-custom-git-refspec.t failing when github auth token defined
    * Fix use lib in script/*
    * Fix ARRAY in loaded job template settings
    * Split YAML out of JobTemplate API tests
    * Job templates test: update check for error message
    * Add explicit test coverage for OpenQA::Scheduler::Model::Jobs::_pick_siblings_of_running
    * Make parameters for splitting screenshot cleanup configurable
    * Add worker name to reason when stale job detection incompletes job
    * Fix the bug that only dereference the symlink needle in one page
    * Validate parameters passed to job template route consistently
    * Add test for re-scheduling only on 2nd idle status
    * Improve test coverage of worker
    * Enable scalability test in CI
    * worker: Avoid rejecting jobs when already working on them
    * Improve test coverage of the worker command handler
    * Format test of the worker's web UI connection in a more compact way
    * Revert condition for job-specific web socket messages
    * Add test for handling the quit message from the worker
    * Prevent race condition when assigning and sending jobs to a worker
    * Enhance scalability test
    * Have openqa-clone-custom-git-refspec parse PR for test URLs
    * Prevent scalability test from using port which is already in use
    * Use service_port for web socket server redirection
    * Add fullstack test for scalability
    * Tweak result upload of worker
    * Optimize _optimize_image
* Thu Mar 05 2020 coolo@suse.com
  - Update to version 4.6.1583409674.75be31485:
    * t: Add explicit coverage for "_read_result_file" to fix flaky reports
    * Check whether screenshot cleanup tasks only clean their range
    * t: Ensure reliable statement coverage for worker settings
    * Simplify and cover OpenQA::Worker::Job::_optimize_image in tests
    * Delete obsolete note from "_optimize_image" for resolved feature
    * Simplify read_test_modules to make test statement coverage reliable
    * t: Add explicit coverage for "worker stopping while uploading"
    * t: Fix grutasks taking excessively wrong while gathering coverage data
    * t: Use explicit wait functions where needed
    * t: Wait for ajax in wait_until as well
    * Fix script/retry for STABILITY_TEST preventing false-negatives
    * openqa-clone-custom-git-refspec: Add option to pass clone-job arguments
    * Fix script/retry for STABILITY_TEST preventing false-negatives
    * openqa-clone-custom-git-refspec: Allow to overwrite default clone args with env variable
    * Bootstrap: Install required dep qemu-tools
    * Split minion job for limiting screenshots
    * Clean up the route tree a bit for faster routing
    * Avoid warning about missing UEFI_PFLASH_VARS asset
    * Move all circleci test groups as convenience targets to Makefile
    * Dependency cron 200303
    * Read build from Media lst files in ObsRsync Plugin
    * Add test for "openqa-clone-job"
    * t: Extract functions "run_cmd"/"test_cmd" for reuse in script tests
    * Split 'checkstyle' tests within circle CI to reduce overall runtime
    * Bring back elapsed time in CI tests for easier identification of time-hogs
    * Makefile: Sort 'test-unit-and-integration lower to keep top-to-bottom order
* Mon Mar 02 2020 coolo@suse.com
  - Update to version 4.6.1583157906.85e9020f0:
    * Fix permissions of script/setup-db to be executable
    * Dependency cron 200302
    * Fix 'openqa-setup-db' on SLE12 builds
    * t: Update copyright for all changed test files
    * Harmonize shebang style
    * Add empty 'unstable_tests.txt' to prevent 'No such file'
    * Update license notice in each file to use URL rather than postal address
    * t: Avoid ambiguous meaning of 'kill' when we actually 'terminate'
    * t: Also check for warnings in full-stack
* Fri Feb 28 2020 coolo@suse.com
  - Update to version 4.6.1582908813.c5b7e89c0:
    * Makefile: Add KEEP_DB flag for optional, faster re-runs
    * Extract a script "openqa-setup-db" for local database setup
    * Make "developer" test as unstable based on recent results
    * systemd: Prevent error on repeated startup of openqa-setup-db
    * Improve shell style of t/test_postgresql based on shellcheck
    * systemd: Make worker also only depend necessary network related targets
    * Remove misleading log message of test setup
    * Make check for error message in fullstack cache test less specific
    * Refactor setup of fullstack tests
    * Initialize host of cache client via sub to ease test setup
    * Format test of the worker's web UI connection in a more compact way
    * systemd: Fix premature startup of services when network is not fully up yet
    * worker: Log only a debug message if a JSON can not be opened
    * Remove unused modules from scheduler fullstack test
    * Alleviate debugging of test_postgresql
    * load_templates: Remove query uses from table requests
    * load_templates: Create groups that do not exist
    * Prevent search popover icons from appearing on top of menus
    * Improve logging, error handling and notes for worker-server connection
    * Delete unused and uncovered method 'Worker::WebUIConnection::disable'
    * Delete unused and uncovered method 'Utils::append_channel_to_defaults'
    * Stop the worker as usual when handling 'incompatible' command
    * Update systemd/openqa-enqueue-bug-cleanup.timer
    * Align jobtemplate inline help to left
    * Fix openqa-enqueue-bug-cleanup.timer description
* Wed Feb 26 2020 coolo@suse.com
  - Update to version 4.6.1582671252.ca350bd34:
    * Revert "Merge pull request #2750 from Martchus/fix-scheduler-ws-race-condition"
    * Dereference symlink when displaying needle info
    * Declare YAML::XS properly as a runtime dependency for JSON::Validator
    * Log job duplication only at one place
    * Use prefix 'abandoned: ' for reason in stale job detection
    * Use consistent data structures in worker logs
    * Improve test coverage of the worker command handler
    * Format test of the worker's web UI connection in a more compact way
    * Stop the worker as usual when handling 'incompatible' command
    * Revert condition for job-specific web socket messages
    * Add test for handling the quit message from the worker
    * Prevent race condition when assigning and sending jobs to a worker
* Mon Feb 24 2020 coolo@suse.com
  - Update to version 4.6.1582356603.73b75d1a4:
    * Dependency cron 200222
* Fri Feb 21 2020 coolo@suse.com
  - Update to version 4.6.1582309642.4cf93ee9f:
    * Add merge key example to inline help
    * Add docs for merge keys
    * JobTemplates: Add tests with merge keys
    * Use YAML::PP for JobTemplates
    * worker: Add explicit test for last error of web UI connection
    * Avoid redundant code in worker job test
    * worker: Handle job duplication failures
    * Show warnings when restarting job and assets are missing
    * Add function to determine whether a job misses assets
    * Move check for hidden asset types into its own function
* Fri Feb 21 2020 coolo@suse.com
  - Update to version 4.6.1582278168.345f257f6:
    * Use unique git hash from vars.json for src links when possible
    * docs: Add hint about importance of using the same filesystem for cache+pool
    * Fix source code remote path for optional .git github links
    * Fix missing dependency 'perl(Archive::Extract)' for worker since e86f68b08
    * Silence a warning in 24-worker-overall.t
    * docs: Replace dated styling/Mark systemctl command
    * Handle the case where there are no screenshots more gracefully (avoiding warnings in tests)
    * Redirect to remote code location for source view when using CASEDIR
    * Flatten the download conditions a bit
    * Do not capture and store all job output as a note
    * Log all download errors
    * Fail the job instead of throwing an exception
    * Add tests for OpenQA::Downloader
    * Use OpenQA::Downloader in download_asset task
    * Add downloader module and use it for the cache service
    * Use preferred explicit rendering in "src" method
    * Simplify "src" method showing source code of test modules
    * t: Fix and re-enable ui/03-source.t
* Tue Feb 18 2020 coolo@suse.com
  - Update to version 4.6.1582068800.bb5602a1e:
    * Simplify bugref counting with map
    * Add GRU task "limit_bugs" to cleanup orphaned bugs
    * worker: Simplify '->stop' call slightly
    * Remove redundant timestamp output in worker log
    * Fix custom variables escaping on clone_custom_git_refspec
    * Fix random failures in t/api/08-jobtemplates.t
    * Tweak Build regexp in ObsRsync
* Fri Feb 14 2020 coolo@suse.com
  - Update to version 4.6.1581660411.10959f77b:
    * Dependency cron 200214
* Wed Feb 12 2020 coolo@suse.com
  - Update to version 4.6.1581352297.ca1cecd07:
    * Revert "Have openqa-clone-custom-git-refspec parse PR for test URLs"
    * Dependency cron 200210
* Sun Feb 09 2020 coolo@suse.com
  - Update to version 4.6.1581075098.818ddb190:
    * Make test for worker registration error less specific
    * Let the current job continue after a fatal registration error
    * Simplify error handling of worker registration
* Fri Feb 07 2020 coolo@suse.com
  - Update to version 4.6.1581058621.9523164cd:
    * Dependency cron 200207
    * Make help icon after search field fully clickable
    * Consistently store gru job output as a note
    * Only rebless jobs once
    * load_templates: better error handling
    * fetchneedles: Fix "no tracking information for the current branch" on self-repair
    * Have openqa-clone-custom-git-refspec parse PR for test URLs
    * Improve the format of execution time
    * Add final linebreak to jobtemplate yaml
    * Avoid re-scheduling accepted jobs before first status update
    * Make scheduler fullstack test more stable
    * Add test for aborting job during setup
    * Consider worker no longer immediately offline when ws connection finishes
    * Prevent passing the reason 'cancel' as it provides no extra information
    * Prevent worker from overriding reason set by web UI
    * Dependency cron 200205
* Wed Feb 05 2020 coolo@suse.com
  - Update to version 4.6.1580827995.3476c9f7b:
    * Move webapi templates from "templates/" to "templates/webapi/"
    * Avoid undefined $appname/$api_description errors by using the stash
    * Fix product log test which might fail when table slightly overflows
    * Trigger result cleanup daily instead of hourly
    * Use separate timer for enqueuing cleanup tasks
    * Reset the editor to the minimum viable YAML if empty
    * Use aliases in JobTemplate schema
    * Have test_once in clone-custom-git-refspec test report errors correctly
    * fetchneedles: Do not fail the script when we are on the correct branch
    * openqa-bootstrap: Fix indendation
* Sun Feb 02 2020 coolo@suse.com
  - Update to version 4.6.1580490152.07482738b:
    * Fix incorrect exit code in obs_rsync_update_builds_text Gru task
    * Limit ObsRsync task retries
    * Dependency cron 200131
    * Support 'testsuite: null' in jobtemplates
* Fri Jan 31 2020 coolo@suse.com
  - Update to version 4.6.1580407290.340620ce0:
    * Read all keys from ini section of none is defined
    * Avoid hardcoded schema version in deployment test
    * Fix old database migrations
    * Fix old DB migrations by combining them into 76-77
    * Set reason when stale job detection marks job as incomplete
    * Pass the worker's reason for stopping a job to the web UI
    * Improve test code for job duplication
    * Show reason in info panel
    * Allow passing a reason when marking a job as done
    * Test all DB migrations from version 76 and not just the last 2
* Wed Jan 29 2020 coolo@suse.com
  - Update to version 4.6.1580150954.a98528363:
    * Improve build info in ObsRsync UI (#2694)
    * Adjust parsing of project state in ObsRsync Plugin
    * t: Add more test strings
    * t: Fix typos in full-stack
    * Fix "Use of uninitialized value in numeric ne (!=)" in worker
    * Fix "Can't use an undefined value as an ARRAY reference" in worker
    * openqa-clone-custom-git-refspec: Provide option parsing with help text
    * Add retry script for testing with flag STABILITY_TEST
    * Slightly simplify JobModules
    * Replace references of "TRAVIS" with a generic term or CircleCI in cpanfile and tests
    * Treat all previously unstable tests as stable after proof of stability
    * t: Extract method for ajax/animation handling
    * Stabilize t/ui/14-dashboard-parents.t by relying on "collapsed" only
* Sun Jan 26 2020 coolo@suse.com
  - Update to version 4.6.1579943557.88a382a14:
    * Dependency cron 200125
    * Simplify job#done
    * Add test in openqa-clone-custom-git-refspec for trailing '/'
    * t: Cover all current features of openqa-clone-custom-git-refspec
* Fri Jan 24 2020 coolo@suse.com
  - Update to version 4.6.1579790259.c018d5dc2:
    * Workaround api request in ObsRsync Plugin
    * Remove dead code
    * Use uppercase variables in OpenQA::Utils to make their scope immediately obvious
    * Replace compose_job_overview_search_args and param_hash methods with helpers
    * Move mark_job_linked function into the correct resultset
    * Move job_group_and_parents function into the correct resultset
    * Use :DEFAULT instead of importing twice
    * Replace global variables in OpenQA::Utils with functions
    * Remove unused export
    * Do not export variables from OpenQA::Utils anymore
    * Add OpenQA::App as a singleton container, replacing $OpenQA::Utils::app
    * Move worker specific code from OpenQA::Setup into OpenQA::Worker::App
    * Just use Mojolicious as a base class instead of trying to reinvent it
    * Parse Snapshot number in ObsRsync plugin
    * Add silent reload of dashboard contents for fullscreen mode
    * Dependency cron 200123
    * Add dependency to client so asset download via SSL works
    * load_templates: fail early if host is unreachable
    * Log asset download error to autoinst log file
    * Fix asset status test so it works when the cache file does not exist
    * Dependency cron 200122
    * Support batches in ObsRsync Plugin (#2653)
    * Use new format to store job module details
    * Set text mime in ObsRsync download
    * Use is_admin_js helper in asset table template
    * Show cached assets also when cleanup is ongoing
    * Add CLI tool to validate a job template YAML file
    * Fix ObsRsync mutex leak on errors
* Tue Jan 21 2020 coolo@suse.com
  - Update to version 4.6.1579529599.e032e3659:
    * Do not retry downloads in the cache service when there was a 4xx response
    * Unify retry handling for all 4xx/5xx and connection errors in the cache service
    * Dependency cron 200120
    * Improve coding style in scheduler tests
    * Consider assigned jobs when duplicating jobs
    * Simplify auto_duplicate code
    * Avoid race condition in job scheduling
* Sat Jan 18 2020 coolo@suse.com
  - Update to version 4.6.1579272112.ccebff1bd:
    * Allow more than one keepalive connection per cache service worker
    * Update perltidy to 20200110
    * Fix tidy in night job
    * Retry cache service downloads for many more errors
* Thu Jan 16 2020 coolo@suse.com
  - Update to version 4.6.1579176985.3721eca2e:
    * Add labels to auth, git and dependency PR steps in CircleCI
    * Show the execution time of job modules
    * Use `is_admin_js` on job templates page
    * Use sub-heading for job templates
    * Format YAML editor buttons uniformly
    * Improve general documentation on job templates page
    * Document the description syntax in the YAML guide
    * Show YAML guide also when not logged-in
    * Dependency cron 200115
    * spec: Exclude flaky 17-labels_carry_over test
* Tue Jan 14 2020 coolo@suse.com
  - Update to version 4.6.1578936542.0e251d1f0:
    * Fix cache service log formatting
    * Test asset download of openqa-clone-job script
    * Fix support for symlinked cache dirs
    * Allow to skip removing documentation output
    * Improve referencing different setup documentations
    * Move "Development setup" to contributing
    * Improve documentation about db migration
    * Fix documentation for passing --from to openqa-bootstrap
    * Add further documentation from openQA-helper
    * Provide general info about making a devel setup, mention openQA-helper
    * Use job_template_name as the TEST when scheduling jobs
* Sat Jan 11 2020 coolo@suse.com
  - Update to version 4.6.1578688138.bc8a43167:
    * Don't have a default size limit on parent group level
    * Prevent old but newly cloned assets from being cleaned up immediately
    * Use a fallback to symlink assets if hardlinks fail
    * Use hardlinks for downloaded assets when possible
    * Test whether web UI actually works after db migration
    * Only fetch job groups when delivering HTML
* Thu Jan 09 2020 coolo@suse.com
  - Update to version 4.6.1578575737.d02ae56c3:
    * Add auto-cleanup for temp files created by web UI
    * Fix db migration for size_limit_db column of job_group_parents table
    * Be more defensive and accept more host formats
    * Hosts are passed to the cache service jobs without a scheme
    * Prevent jshint warning in test_result.js
    * Render investigation info as table
    * openqa-clone-custom-git-refspec: fix curl_github
    * Add test for Sync button in ObsRsync plugin
    * Rename TEST_SUITE_DESCRIPTION to JOB_DESCRIPTION
    * Prevent loading investigation tab contents twice
    * Support downloading assets with special characters like "#" and ":" in the name
    * Allow unsetting asset size limit in web UI
    * Assign job group asset limits explicitly
    * Extend asset cleanup tests to cover job groups within parents
    * Adapt tests for asset limit on parent level
    * Migrate default_size_limit_gb to size_limit_gb
    * Adapt group property editor to asset limit on parent level
    * Adapt asset table on admin page to parent level asset limit
    * Adapt asset list on admin page to parent level asset limit
    * Enforce asset size limit on parent group level
* Tue Jan 07 2020 coolo@suse.com
  - Update to version 4.6.1578338128.7d62398b0:
    * Asset download: fix return statement broken in f0d70f1
    * Minor cleanups for job settings
* Wed Jan 01 2020 coolo@suse.com
  - Update to version 4.6.1577879607.68ae00aa4:
    * Dependency cron 191231
    * Improve documentation about test flags (especially fatal)
* Thu Dec 26 2019 coolo@suse.com
  - Update to version 4.6.1577344382.5aaa6ced5:
    * Update Minion dependency (#2628)
* Sat Dec 21 2019 coolo@suse.com
  - Update to version 4.6.1576913552.acf2b6db3:
    * job investigation: Ensure consistent output with sorted hash keys
    * job investigation: Provide test+needles git log diff and files stat diff
    * job investigation: Skip "merge" commits with no helpful information in git log diff
    * Increase the inactivity timeout of the cache service client to be more consistent with other timeouts, such as the SQLite busy timeout
    * More concurrent download tests
    * Worker settings should be handled by the cache service application instead of a model
    * $a and $b are special variables in Perl, do not use them arbitrarily
    * Add description to job template editor
    * Use log level 'info' for message about groupless asset
    * Remove registered assets regardless of the type
    * Add description column to JobTemplates
    * Log asset downloads and rsync requests the same
    * Test concurrent rsync requests as well
    * Fix a race condition in 25-cache-service.t where a worker was kept alive too long
    * Connect parallel cache service downloads
    * Dependency cron 191218
    * docs: Update use description of travis_test container
    * Delete obsolete travis.enc file
    * Fix serveral issues with OBS rsync plugin UI
    * job investigation: Give explanation on no test changes
    * Add details to ObsRsync Project List UI
    * Provide git log diff from tests in investigation
    * Ignore selected entries from vars.json files for investigation
    * t: Use more mojo Mojo::File instead of catfile/copy
    * Improve test for re-scheduling and marking jobs as incomplete
    * Improve scalability of job incompletion code
    * Fix substitution for job_templates schedule list
    * Refactor JobTemplates code
    * Improve video player
    * t: Save execution time in 18-tests-details by disabling wait timeout when expecting 0 needles
    * t: Add helper methods for selenium tests to disable/enable timeout to save time
    * Subside stale job detection
    * Trigger tasks for limiting assets and results/logs hourly
* Mon Dec 16 2019 coolo@suse.com
  - Update to version 4.6.1576340016.48aaffc06:
    * Fix step view for not-available video
    * Dependency cron 191214
* Sat Dec 14 2019 coolo@suse.com
  - Update to version 4.6.1576249179.0149ff62a:
    * Add actual error info to cache service availability error
    * openqa-clone-custom-git-refspec: Fix PR URLs specified with trailing '/'
    * Add test for openqa-clone-custom-git-refspec
    * t: Use more concise code in t/42-screenshots.t
    * Use more conventional variable name '$sth' for raw db calls
    * Remove "Jump to video" icon from "needle view" when video is unavailable
    * Prevent massive database errors on screenshot insertion
    * Use shorter name in CI nightly job
    * Let nightly job call script/tidy when needed
    * Update tidy to 20191203
    * Return error when creating a job with invalid slash value
    * Dependency cron 191212000550
    * Missing assets should not result in a connection timeout
* Wed Dec 11 2019 coolo@suse.com
  - Update to version 4.6.1576080365.3895c9109:
    * Fix regex and error message for prio
    * Parser::Format::IPA: Shorten test names
    * Avoid downloads from GitHub within 14-grutasks.t
    * Improve asset download
    * Use human readable size values in cache service logs
    * Clarify overlap between states CANCELLED and DONE
    * Improve consistency when dealing with job states/results
    * openqa-clone-custom-git-refspec: Add support for comma-separated job list
    * openqa-clone-custom-git-refspec: Fix github token authentication by removing quotes
* Mon Dec 09 2019 coolo@suse.com
  - Update to version 4.6.1575799153.4244d44fd:
    * Dependency cron 191208000552
    * Update Mojolicious to 8.27 (#2576)
* Sat Dec 07 2019 coolo@suse.com
  - Update to version 4.6.1575653753.ea7f72d9a:
    * Fix height of embedded logfile
    * Use the correct new port in cache service monitoring tests
    * Provide investigation hints for failed jobs on request
    * templates: Use unicode character for three dots
    * Include the cache service when generating ports dynamically with OPENQA_BASE_PORT
    * docs: Replace all references of "TRAVIS" with a generic term or CircleCI
    * Refactor loop in test overview controller
    * Improve performance when loading test suite names for overview
    * Change TEST value to JOB_TEMPLATE_NAME
    * docs: Move whole .circle CI README into docs/ to include in generated and published content
    * docs: Focus on openQA-devel for easier test setup
    * docs: Fix reference to "docker/travis_test"
    * .circleci: Use common repo aliases
    * spec: Specify missing "chromedriver" in -devel
    * Allow monitoring of Minion jobs on every worker
    * travis_test: Add missing dictionary for os-autoinst
* Wed Dec 04 2019 coolo@suse.com
  - Update to version 4.6.1575490596.c17db72e0:
    * t: Add a description string for each step in 10-jobs.t
    * Avoid initializing test db twice in schema hook
    * t: Correct order of arguments for comment counting
    * Avoid creating 2nd Mojo::Test in details UI test
    * For the log context feature we require Mojolicious 8.24 or newer
    * Take all incomplete results into account in overview statistics
    * Support test suite setting start with plus
* Mon Dec 02 2019 coolo@suse.com
  - Update to version 4.6.1575276108.e1e4230d8:
    * t: Use a hash with default settings for the common "schedule_iso" calls
* Sat Nov 30 2019 coolo@suse.com
  - Update to version 4.6.1575043939.ce9ba48fe:
    * Increase SQLite busy timeout and reduce the number of concurrent SQLite connections
    * Show log content in test details tab on no module results
    * Fix asset definition of SVG icon for running jobs
    * Check generate-documentation if target branch exists
    * Calculate coverage explicitly in Selenium tests
    * Improve group property HTML template
    * travis_test: Add requirements for spellcheck in os-autoinst
* Wed Nov 27 2019 coolo@suse.com
  - Update to version 4.6.1574886568.694f13bc7:
    * Use the cache tmp directory for temporary download files created by the cache service
    * Use info instead of warn messages (so monitoring does not get triggered) and quote all string values
    * Allow for very quiet cache service tests
    * Be a little less verbose with init log messages
    * Allow from_worker to set attributes as well
    * Remove redundant error message
    * Format cache service logs to start with a newline
    * Improve cache service log messages to help with debugging issues of missing assets
    * Log all cache service output on both sides (cache service and worker) and fix many small test issues
    * Handle cache model logging through an attribute
    * Make resetting locks a little safer with a --reset-locks command line option
    * Change CI badge in README.asciidoc
    * Stabilize t/api/14-plugin_obs_rsync_async.t
    * Reset all leftover Gru locks after restart
* Mon Nov 25 2019 coolo@suse.com
  - Update to version 4.6.1574510263.217a2c530:
    * Bring back 'xorg-x11-fonts' needed for chromium startup
* Fri Nov 22 2019 coolo@suse.com
  - Update to version 4.6.1574454088.33c0b7556:
    * Remove likely unneeded dependency xorg-x11-fonts
    * Document the relevancy of file modifications for asset cleanup
    * Make architecture diagram color blind friendly
    * Fix worker cache in architecture diagram
    * Dependency cron 191122000544
    * Make virtio_console1.log etc. show up as result files
    * openqa-clone-custom-git-refspec: Add syntax example for git branch
    * Dependency cron 191121000600
    * Hide internal folders in UI
    * Tweak config of ObsRsyn Plugin
    * Take directory mtime of assets into account
    * travis_test: Fix Dockerfile based on tests in OBS
    * Document typical issues with migration of job groups
    * t: Hide all output from diag calls in tests
    * Prevent boilerplate text "$VAR1 =" in dumper output
    * Stabilize t/api/14-plugin_obs_rsync_async.t
    * Disable old job group editor admin functionalities in favor of YAML
    * docs: Describe YAML job templates editor as default with migration script from old
    * Remove unused option --check in Selenium
    * Migrate machine separator in dependency settings form ":" to "@"
    * Remove dead code from isotovideo client
    * travis_test: Try to fix container on OBS
    * Tweak markup and styling for step actions within external results
    * Detect documentation changes more reliably
    * Add deprecation notice for old job template editor pointing to YAML
    * Include external reporting template for parsed results too
    * Allow extra arguments to template loaded with bug_report_actions
    * Mark 05-scheduler-full.t as unstable due to recent instability
    * Use CI repo instead of openqabot in build-docs
    * Change favicon of test details page based on job state/result
    * Add generated png variants of state/result icons
    * Makefile: Extend icon generation to new ones with state/result
    * Add new icons for every interesting state/result
    * assets: Shift position of logo within frame to have more space
    * assets: Update logo.svg using new standard dpi as suggested by inkscape
    * Assume 25-cache-service.t to be stable since #2463
    * Assume 15-admin-workers is "stable" since a6dd3fee5
    * doc: Reword sentence about alias
    * Extend range for success status codes in client
* Mon Nov 18 2019 coolo@suse.com
  - Update to version 4.6.1574081651.5f93fbf7e:
    * fetchneedles: Fix missing usage of 'git_update_needles' in 2aadd3e56
    * Dependency cron 191118000556
    * .circleci: Fix ignored test results of unstable tests within loop
    * Reduce sleep times in 25-cache-service.t to slightly save testing time
    * fetchneedles: Try to repair needle git repos on detached HEADs
    * Ensure the job result is at least lower case (still allowing other than default values)
    * Dependency cron 191116000537 (#2508)
    * Add padding to icons on buttons
    * Hide YAML guide by default, expose via a button
    * Fix typos in comments
    * travis_test: Switch to supported Leap base after 42.3 is EOL
    * Makefile: Add YAML linter checks
* Sat Nov 16 2019 coolo@suse.com
  - Update to version 4.6.1573836985.cd1ad569b:
    * Makefile: Add 'help' target listing available targets
    * Treat all non-asset "_URL" settings as debug message only, not warning
    * Provide style check feedback earlier with parallel execution
    * Correctly format the age in days string
    * Fix flaky test 'ui/15-admin-workers.t' with proper waiting for popovers
    * Support configurable patterns for asset cleanup
    * Update Selenium::Remote::Driver to 1.36 fixing compatibility issues
    * Update perl-Mojo-IOLoop-ReadWriteProcess and os-autoinst
    * Straighten out asset clean-up semantics
* Wed Nov 13 2019 coolo@suse.com
  - Update to version 4.6.1573674965.36aeff76e:
    * Allow '@' separator to specify machine dependency
    * Add more MIME types so test assets do not get served as text/plain
    * Skip shellcheck on CHECKSTYLE=0 as well (#2476)
    * Show machine in dependency graph (#2477)
    * Fix error in nightly doc CI job (#2479)
    * Fix a bug in the fullstack test where it would not wait for the cache service to actually finish downloading
    * Document client's form parameter
    * Fix empty needles dir in openqa-clone-custom-git-refspec
    * Status updates can be a GET request now
    * Fix test coverage stats
    * Let the background jobs take total control of lock handling to reduce the chances of race conditions happening further
    * Fix copyright year and use a more obvious helper name
    * An inconsistently used retry without delay is not actually that useful for the cache service client
    * Significantly reduce the number of HTTP requests required for cache service status and info features
    * Use less code to do the same
    * The session token is not really needed, so we replace it with something much easier to understand
    * Store lock state in Minion instead of memory, removing the single process HTTP server requirement
    * The client method enqueue should have been targeting "/enqueue" instead of "/execute_task"
    * Remove some dead code
    * Dependency cron 191110000608
    * Implement an expand feature for job group YAML
* Sun Nov 10 2019 coolo@suse.com
  - Update to version 4.6.1573412318.f4760c78f:
    * Ignore log file created by postgres test setup (#2470)
    * docs: Add description for 'uncoverage' annotations
    * Fix flaky coverage by use of uncoverable flag
    * codecov: Simplify format
    * Rename docs CI jobs to eliminate warnings
    * Install python-base in docs CI job
    * Dependency cron 191108000544
    * docs: Mention new os-autoinst feature FORCE_PUBLISH_HDD_
* Fri Nov 08 2019 coolo@suse.com
  - Update to version 4.6.1573206130.f1d227eff:
    * Preserve GIT_ASKPASS between jobs in CircleCI
    * Unset PERL5OPT when executing isotovideo
    * Test/Coverage: Monkeypatch B::Deparse
    * docs: Clarify that the cache service needs full read permission in CACHEDIRECTORY
    * docs: Use consistent 'enable --now' parameter on all applicable systemd calls
    * openqa-bootstrap: Rely on service dependencies instead of explicit starts
    * Fix bug that cannot update job group using load_template
    * Fix URLs for needles in subdirectories (POO #58959)
    * full-stack.t: Add sleep before sending first command
    * spec: Use more common '>=' rather than '=>'
    * Remove fedmsg plugin
    * Makefile: Delete obsolete reference to deleted 'check_coverage'
    * Fix retry logic in make test
    * Prevent errors for requests to unknown resources in cache service
    * setup_workers should be part of the public API
    * Add controller and another model to cache service and remove some dead code
    * Turn cache service into a full Mojolicious app
    * Calculate cache dir size if it is a symlink
    * Deal with the error message when create/update job group
    * Updates in CircleCI testing environment
    * Move cache service into OpenQA::CacheService namespace
    * Use `croak` in OpenQA::Utils::log_fatal
    * Only log if test schedule has really changed
    * Enable regex search in 'Medium types' table
    * Pass PRJDIR to os-autoinst
    * OBS: Skip tests which are failing/flaky in OBS
    * Update spec: os-autoinst >= 4.6
    * Update .circleci/autoinst.sha
    * Use a new file to exchange status with isotovideo
    * Fix OPENQA_CACHE_DIR environment variable
    * Remove dead code and make client a little easier to read
    * Remove circular reference and fix request encapsulation
    * Push documentation nightly to openqabot fork
    * Schema Profiler: override print method with log_debug
    * Do not waste resources to create unnecessary OpenQA::Worker::Cache::Request objects
* Thu Oct 24 2019 coolo@suse.com
  - Update to version 4.6.1571860277.da2de85d9:
    * spec: Fix package tests already failing on database setup
    * Fix VNC port info for ports > 99 in devel mode
    * Prevent logging needle problems twice
    * Provide default filename for needles from the name
    * Move needle_info() from Utils.pm to Step.pm
    * Fix missing 'qemu-kvm' in non-x86_64 package tests
    * Reduce use of project dir to be more flexible regarding custom test runs
    * Calculate coverage in Circleci in all branches
    * Move private function used across multiple classes into OpenQA::Utils
    * Log all installed packages instead of per-repo
    * Use Mojo::File to list cached files
    * Dependency cron 191022000544 (#2417)
    * fetchneedles: Make script fully POSIX sh compatible
    * fetchneedles: Avoid double-negation in symlink check
    * client: Fix the default host 'http://localhost' instead of https
    * There are many cache methods that do not need to be public
    * Disconnecting a random handle from the cache does nothing
    * fetchneedles: Save on execution time by skipping over needle dir symlinks
* Mon Oct 21 2019 coolo@suse.com
  - Update to version 4.6.1571651389.1516f15e7:
    * Extend filesystem documentation
    * Add local apparmor file to spec
    * Call script instead of bash in ObsRsync Plugin
    * Remove possibly localized quotes when checking PostgreSQL errors
    * Add default local apparmor profile
* Thu Oct 17 2019 coolo@suse.com
  - Update to version 4.6.1571253176.1a322744e:
    * PostgreSQL errors can be localized, so just use the name of the unique constraint
    * worker: Do not treat reconnect attempts as errors but with warning only
    * Remove wrong error handling code when sending ws messages
    * Prevent potential deadlocks in scheduler and ws server
    * Hide old job templates editor for new groups
    * Handle unique constraint correctly
    * Add missing resultset for screenshots and make a few small optimizations
    * Drop -v flag on test runs and avoid noisy job "name"
    * clone job: Support specifying a port in host URL
    * Add Dockerfiles from devel:openQA:ci (#2401)
    * Allow . for job template name/ test suite in schema
    * Remove openqa_dev from our spec file
    * Add a docs section elaborating on YAML by way of example
    * Fix openqa-load-templates example in documentation
* Mon Oct 14 2019 Stephan Kulow <coolo@suse.com>
  - Reset changes in test subpackages (useless duplication)
* Mon Oct 14 2019 coolo@suse.com
  - Update to version 4.6.1570902364.4f271c31:
    * Accept a list of machines in defaults and job templates
    * Collect coverage aretifacts in CircleCI
    * There should be no need to update the flags
    * Split data creation and update into two methods
    * Fix cgroup creation
    * Add unstable tests with retry to circleci
    * Make job template code for testsuites clearer
    * Lock test suites/machines/products used in YAML
    * Add RETRY parameter to test targets in Makefile
    * Add GLOBIGNORE to Makefile
    * Add coverage and build.docs to circleci
    * Add apparmor local overrides
    * Split off creation/ update of job templates
    * Dependency cron 191009000530 (#2380)
    * Recompute worker's broken state after job finished
    * Add test for refusing 'grab_jobs' when worker broken
    * Remove dead code from WebSocket server
    * Fix confusing test names in test for worker's QEMU check
    * Store test JUnit results for CircleCI
    * Update reference after saving YAML in editor
    * Make clickable links if a setting looks like a URL
    * Too many webui requests take more than a second to be processed, so limiting concurrency is much safer for now
    * Add note about plugins not to enable on typical production setups
    * apparmor: Update profile based on current o3 state
    * Elaborate on differences between table and YAML
    * Use fork for nightly circleci job (#2365)
    * Retry limit asset job on key constraint violations during scans
    * Improve job dependencies documentation
    * Consider 'not yet' as most recent when sorting running tests by 'Started' (#2369)
    * Dependency cron 191002000541
    * Fix "Sync Now" button in OBS Plugin
    * Ignore errors loading dashboard if just navigating away
    * Update filter form label without page-reload
    * Correctly propagate job template name from YAML
    * Fix "timeago" rendering on AJAX-enabled dashboard
    * circleci: Remove whitespace at EOL
    * Fix publishing documentation via Travis
    * Don't silently exit doc generation if asciidoctor not available
    * Retry limit asset job on key constraint violations
    * Make t/37-limit_assets.t independent of t/14-grutasks.t
    * Load build results on dashboard via AJAX
    * Update perl-DBIx-Class-DeploymentHandler dependency to 0.002233 (#2359)
    * Move stale job detection from ws server to scheduler
    * Remove obsolete comment regarding offline workers
    * Rely on t_updated for the worker's online status in the web UI
    * Prevent failures in feature tour test
    * Set default check interval for wait_util to 1 second
    * Enforce same width for nodes in dependency graph
    * Move test helper embed_server_for_testing to test utilities
    * Add unit test for test schedule change processing
    * Avoid race condition if test_order.json changes too often
    * Reload test_order.json if it changes at test runtime
    * Refactor job result file path concatenation
    * Move incompletion logic when worker shows up again to scheduler
    * Add missing api tests to circleci
    * Explicitly specify constraint with JobTemplates->find_or_create
    * Update tidy to 20190915
    * Update .circleci/dependencies.txt
    * Make the version number a simple link to the changelog
    * Enable nightly circleci dependency job on master (#2343)
    * spec: Fix missing dependency on IPC::Run in client (#2347)
    * Tolerate exceptions in OBS api call from ObsRsync plugin
    * Improve deleting a single asset in WebUI
    * Prevent loading arbitrary plugins in live view handler
    * Improve language of locking API documentation
    * Prevent the ws server to query itself
    * Clean up resource lock code a little bit
    * Move helper that had been accidentally placed in OpenQA::Utils to the helper plugin
    * Enforce consistent order for pending jobs of worker
    * Add colors for more job results in dependency graph
    * Use create instead of new/insert (overloads should still be fine)
    * Include more columns in unique constraint to be more future proof
    * Do not be lazy and use proper names for variables used more than once
    * Delete duplicate records before creating the unique constraint
    * Use a unique constraint to prevent a race condition that could result in the same module being added more than once under heavy load
    * Don't show nested folders in OBS plugin
    * Polish UI of OBS plugin
    * Reuse Mojo::UserAgent in OBS plugin
    * Don't parse XML with regex in OBS plugin
* Wed Sep 18 2019 coolo@suse.com
  - Update to version 4.6.1568795030.c377d780b:
    * Fix test failures on Leap 15.1
    * Fix warning in 24-worker-overall.t
    * Test scheduler code for assigning multiple jobs to a worker
    * Sort directly chained children within same parent by test name
    * Adapt existing tests to adjustments for directly chained dependencies
    * Assign cluster of directly chained jobs to worker
    * Show assigned jobs as such under 'All tests'
    * Enforce consistent WORKER_CLASS when creating directly chained dependencies
    * Add compution of directly chained job hierarchy
    * Verify that inserting dependency cycles is prevented
    * Improve string formatting in scheduler code
    * Add circleci
    * Fix formatting of developer mode documentation
    * Update dep graph desc for START_DIRECTLY_AFTER_TEST
    * Update documentation for START_DIRECTLY_AFTER_TEST
    * Ignore SQL deprecate warning when querying job modules that are running
* Tue Sep 17 2019 coolo@suse.com
  - Update to version 4.6.1568387059.db88ff48d:
    * Add Storable dependency
    * Remove debugging
    * Create a deepcopy of the settings
    * Always sort keys to make behaviour reproducible
    * Demonstrate what's going wrong on staging yaml
    * Fix duplicate path name
    * Update YAML guide and schema to explain custom job template names
    * Publish API schema(s) along with other docs
    * Fix some issues in the doc markup reported by asciidoc
    * Always build docs and allow local generation
    * Fix warning caused by filename getting removed from reused form hashref in Mojo::UserAgent
    * Cleanup disabled code about 'Sereal'
    * Non-experimental YAML routes with explicit schema
    * Revert back to duplicating dependencies in dockerfile (#2315)
    * Extend the requires of openQA-devel and make them easier to review (#2313)
    * Implement optional defaults.settings key in YAML
    * Fix container image to use repository paths (#2310)
    * Improve test coverage for more background jobs
    * Increase coverage by allowing Devel::Cover to collect stats for background jobs
    * Fix printing usage when invoking openqa-clone-job --help
    * Remove codecov hack that was only added to increase coverage percentage, but does not actually test anything useful
    * Scenarios can have different settings
    * docker: Use devel package instead of spelling out duplicate dependencies (#2308)
    * Cut the test result directory shorter when its length is more than 255
    * Support branch url on openqa-clone-custom-git-refspec
    * docs: Hint to 'openQA-devel' for pulling in dependencies
    * Delete unused screenshots in separate loop
    * docs: Render code correctly (#2306)
    * Allow CodeMirror to render off screen
    * Show context for REST-API errors to make debugging a little bit easier
    * Fix artefact upload errors to show the message instead of the hash address
    * Reduce coverage requirement a bit until we can make Devel::Cover include subprocesses in stats
    * Don't use 3rd set of names for passing dependencies to JS
    * Use capitalized names for module-scoped variables
    * Consider directly chained deps in several places
    * Support _START_DIRECTLY_AFTER_JOBS
    * Add dependency type for START_DIRECTLY_AFTER_TEST
    * Failed isotovideo status checks are fairly harmless, but a log message can be useful for debugging
    * Since we now expect there to be more subprocesses, there is no reason to log them as unexpected anymore
    * Do not try to reconnect the WebSocket connection in subprocesses
    * Make annoying log message debug level instead of info for now
    * Test API and upload errors
    * Test asset uploads too
    * Move artefact upload into a webui connection method so it can be easily mocked for testing
    * Add more worker upload tests
    * Fix fake WebSocket transaction to correctly defer callback execution
    * Improve test coverage of the worker job life cycle
    * Move all direct uses of Mojo::UserAgent from OpenQA::Worker::Job to client modules
    * Add new worker tests and an isotovideo client module that can be mocked easily
    * Perform isotovideo status checks non-blocking too
    * Try to defer all callbacks correctly to the next reactor tick
    * Handle exceptions in uploads
    * Make image uploads non-blocking too
    * Callbacks cannot be optional in an async application
    * Update mock worker tests to be able to deal with multiple processes handling uploads
    * Handle asset and logfile uploads in a subprocess
    * Split up upload handling into more manageable parts
    * Reuse t/test_postgresql in container test as well
    * Harmonize dependencies in cpanfile+openQA.spec
    * spec: Specify more dependencies needed for local development
    * spec: Fix test dependencies after os-autoinst removed dependencies
    * Move codemirror javascript file to javascript label (#2297)
    * spec: Fix 'devel' package (for real) with proper macro definition
    * spec: Fix error about python shebang
    * Fix 'devel' package
    * docs: Update openSUSE repos using $releasever, priorities, better names
    * spec: Add 'devel' package
    * worker job: Add log of second virtio console to upload list
    * Fix accidentally removed dependency
    * Add missing apparmor permission (#2285)
    * Remove shellcheck disable
    * Modernize bash tests
    * Fix test that did nothing
    * Fix argument handling of a function and turn background job into a real plugin
    * Remove print from test
    * Avoid using HAVING on ScreenshotLinks
    * No longer delete job modules one by one
    * Remove support for old migration
    * Use IPC::Run instead of IPC::Run::Simple
    * More code style fixes
    * Tidy developer mode test
    * Test assert_screen args with array of needle tags
    * Code style changes and unit test for current_api_function handling
    * Increase lock timeouts a bit because some jobs might just need a little more time and the risk or locks not getting cleared at the end is very low (#2280)
    * Show needle tags for assert_screen/check_screen
    * Validate tag input field in needleeditor
    * Render a diff of the job group YAML in preview/ save
    * Use purple for blocked jobs
    * Distinguish scheduled and  blocked jobs on test result overview
    * Delete vim footer in files that still have it
    * Makefile: Allow again to select single test cases with PROVE_ARGS
    * Preserve QEMU PID file on pool dir cleanup if QEMU still running
    * Improve tests for triggering pool directory cleanup
    * Test support for non-ASCII chars in needle JSON only in description
    * Tweaks according to code review
    * Handle newline characters in form parameters correctly
    * Use single gru job
    * Always include the group property editor
    * Do not delete assets based on empty size
    * Remove useless quoting
    * Check finished job cout in async test
    * Increase timeout in async test
    * Remove unconditional sleeps from async test
    * Add Gru Test with Mock Api Server
    * Split Folders and Gru controllers
    * Add Rsync Queue UI
    * Use Gru for rsync
    * ObsRsync handle requests asynchronously
    * job cancel: Explicitly return a number to avoid warning
    * Fix warning about undefined $testresdir
    * Fix flaky test t/api/11-bugs.t
    * scheduler: Fix warnings about undefined variables
    * Fix rendering of the openqa.cmd
    * openqa-bootstrap: Fix logic of git clone
    * Add machine filter in 'Test result overview'
    * docs: Mention most simple installation instructions and "clone-job" first
    * docs: Add documentation for immediate bootstrap+clone
    * docs: Fix internal link
    * branding: Prevent undefined flavor in external_reporting.html.ep
    * apparmor: Allow virtio_console based on named PIPE
    * spec: Split out all dependencies properly per sub-package
    * apparmor: Allow loading of client.conf in usual home of geekotest
    * apparmor: Allow loading override templates in /etc/openqa/templates/
    * branding: Prevent warnings about undefined $distri in external_reporting.html.ep
    * Test worker behavior if _upload_log_file fails
    * Improve needle editor test
    * Change iso scheduling behavior to not obsolete older jobs anymore
    * Improve calculating preferred machine
    * Fix error when saving needle JSON with non-ASCII characters
    * Modify workaround property to support adding reason
    * Fix 30-test_parser.t warnings
    * Remove exported functions from OpenQA::File and stop using private methods as part of the public API
    * docs: Fix explanation for masquerading which is needed on all involved zones
    * docs: Simplify firewalld commands by using the runtime variants
    * docs: Make the current "firewalld" approach more prominent than old SuSEfirewall2
    * Fix PROVE_ARGS in spec file
    * docs: Remove obsolete section about "wicked < 0.6.23"
    * load_templates: fix --clean and reading perl templates
    * Do not handle arguments in reverse and move OpenQA::Files class into a proper package
    * Make worker retry-delay configurable
    * Test retry behavior of worker
    * Extend retry delay of worker to 60 seconds if web UI busy
    * Adapt codecov target to current coverage of 85%
    * Allow * placeholders in product names
    * docs: Fix marking for 2nd level list about "wicked pros"
    * Prevent over-escaping of bug titles in test result overview
    * Adjust web socket server test
    * Avoid 'return;' in web socket code
    * Fix sending web socket message when job not exists
    * Improve transaction handling in web socket server
    * AMQP: allow no message prefix
    * Fix '--no-cleanup' on worker start regression
    * Remove OpenQA::Schema::Result::Jobs::set_scheduling_worker
    * Replace Text::Markdown and HTML::Restrict with CommonMark for much better comment rendering speed and security
    * Adding a new parameter to support not schedule parent test suite
    * Timeout for wait_for_ajax
    * Let prove handle @INC for us
    * Expose saving and hiding of the legacy editor in the UI
    * Scrub dangerous HTML from comments
    * Abstract out markdown handling into a new class
    * worker: Consider ws disconnects as uncritical during job execution
    * Fix worker crash when sending job ID
    * YAML: don't merge scenarios with multiple machines with defaults
    * Add dependency on CommonMark, which will soon replace Text::Markdown for a 1000% performance increase (#2228)
    * Ignore cpu_modelname in worker test
    * Let worker pass current job ID on re-registration
    * Allow worker to pass its current job on registration
    * Improve test for checking job status and output
    * Improve error message when rejecting status update
    * Add YAML support to {dump,load}_templates
    * Add systemd timer to trigger daily audit event cleanup
    * Delete old audit events according to configured storage duration
    * AMQP: don't encode message body to JSON before publishing
    * Handle reusing existing connection in devel fullstack test
    * Improve documentation about running test of openQA itself
    * Timeout for wait_for_developer_console_contains_log_message
    * Override default exception handler in extra daemons
    * Fix default route of live handler to prevent template errors
    * Docs for the job group editor and YAML REST
    * AMQP: allow passing headers to publish_amqp
    * Add note about openQA's CLI interface
    * openqa-bootstrap: Fix lookup of configure-web-proxy
    * Improve rendering summary in test result overview
    * t/api/03-auth.t: don't actually wipe asset files from disk
    * Mojo::Pg 4.14 requires the "delete $dbh->{private_...}" feature from DBI 1.632
    * Log errors when reading worker config
    * Add type/additionalProperties to products spec
    * spec: Fix SLE12 build with patched out python subpackage
    * Start a documentation section on how to build openQA plugins
    * templates: Update references to documentation in help texts
    * docs: Update references to target versions in our issue tracker
    * Document adding new dependencies
    * Improve doc section about starting webserver from Git
    * Move testing with production data to database section
    * Improve documentation about OPENQA_BASEDIR
    * Replay cmds in devel mode console only if connected to os-autoinst
    * Make sure all four levels of API access have named routes for plugins and tests
    * Add undef to return
    * Prevent cleaning pool directory in worker availability check
    * Add helper script 'openqa-label-all'
    * Set log for failing to stop cmd srv to info level
    * Do not fail fullstack test when connection closed
    * Split api request to own route
    * Extend unit tests for OpenQA::Worker
    * Do not stop current job twice when stopping during setup
    * Remove unused function from worker
    * Remove check for cpu_opmode from worker test
    * Stop job directly with reason 'api-failure' on API failures
    * Give the API authentication routes plugins will use names and test them
    * Log sent commands in the developer console as well
    * Replay commands send though developer console while offline
    * Add put method with disabled test
    * Fix test doing an equality check on an exception instead of a regular expression comparison
    * Fix html
    * Adapt codecov target to current coverage
    * Small tweaks
    * Default to HTTPS instead of HTTP with openqa-client
    * Add Operator menu item
    * Remove duplicate use
    * Small CR adjustment
    * Make routes restricted
    * Add ObsRsync plugin
    * Expand Machine and Medium Type settings when creating job with 'jobs post' When users created jobs using 'client jobs post', the jobs settings did not expand Machine and Medium Type settings. This PR is used to support to expand settings from Machine and Medium Type when creating jobs with 'jobs post'.
    * .travis.yml: Save travis CI some testing time
    * Add Test::More based error handler to SeleniumTest
* Mon Jul 15 2019 coolo@suse.com
  - Update to version 4.6.1563206570.e00d3964:
    * Make the websocket server tests less noisy
    * docker: Add back 'Test::Compile' as needed for os-autoinst
    * spec: Fix invalid '%perl' introduced with 3aadc34c
    * Test handling worker job status changes
    * Fix passing --no-cleanup worker CLI option
    * fetchneedles: Use subshells efficiently for dir changes
    * fetchneedles: Fix indention
    * fetchneedles: Prevent noisy output about auto-packing git repos
    * Ensure query in jobs API does not become too big
    * Remove group name from job templates example
    * Adapt order of job template example
    * Remove dead auth tests from a DBus refactoring 4 years ago
    * Give the authentication routes plugins will use names and test them
    * Improve and simplify compile check
    * Add Test::Strict to Docker container
    * Allow plugins to add links to the menu
    * Allow any suffix for TAP source files
    * .travis.yml: Make documentation generation an explicit job, only on master
    * .travis.yml: Give readable names to test jobs
    * .travis.yml: Put handling of cache dir together
    * Extend filter for new/updated admin table rows
    * Make log messages of worker tests less verbose
    * generate-documentation: Fix wrong script path introduced by 81df2fd
    * docs: Fix quotes and apostrophes for asciidoctor/github style
    * .travis.yml: Workaround flaky tests with 'travis_test'
    * Test kvm module, only if it is not built-in
    * Make containers non-x86 archs friendly and update to leap 15.1
    * Remove another useless prototype and an unused function from OpenQA::Utils
    * Remove obsolete prototypes
    * Polish worker code
    * travis_test: Fix typo in 'python3-future'
    * Explicitly specify perl module 'Module::Pluggable' to fix warning
    * openqa-clone-job: Improve handling --from parameter
    * README: Clarify how releases are made
    * Adjust testrules.yml to changed worker tests
    * Post upload progress after ignoring known images
    * Remove dead code for handling known images
    * Improve formatting of comments for WebUIConnection attributes
    * Remove leftovers from interactive mode
    * Fix reporting number of images to send to liveview handler
    * Allow stopping worker during job setup
    * Rename OpenQA::Worker::Client to OpenQA::Worker::WebUIConnection
    * Improve use of attributes in worker code
    * Log specific message if ignoring job while already busy
    * Enable verbose option in compile check
    * Restructure worker
    * travis_test: Add dependencies for 'python-scripts'
    * Add YAML diff to jobtemplate_create events
* Sat Jul 06 2019 coolo@suse.com
  - Update to version 4.6.1562333920.03805636:
    * openqa-bootstrap-container: Fix package list passed as single string
    * Add Text::Diff dependency to spec and Dockerfile
    * Fix handling of unknown workers in the websocket server
    * Activate strictures in tests as soon as possible
    * openqa-clone-job: Add support for full test URLs
    * tidy: Apply to all regular perl modules and scripts
    * worker: Improve log messages, e.g. avoid contractions
    * worker: Do not use bare returns
    * docs: Point to wrapper client-script for shorter path
    * docs: Replace the confusing table of triplets with a simple scenario list
    * docs: Revamp the "job templates" section
    * docs: Combine "asset cleanup" with "asset handling"
    * docs: Stress older versions of Leap less
    * docs: Better classify the different installation methods
    * docs: Clarify job groups display on index page
    * docs: Ensure "Installation & Users guide" are prominently featured in "Getting Started"
    * docs: Include all feature descriptions from wiki
    * docs: Also explain "medium types" directly in the glossary
    * Delete unused helper "limit_previous_link"
    * t: Fix warning in full-stack.t
    * t: Output isotovideo log files in case of incomplete jobs within the full stack test
    * t: Delete superfluous setting delete
    * docs: Add hint how to get coverage for individual tests
    * Do not trigger test cleanup code from forked processes
    * Always use spaces in CodeMirror editor
    * fetchneedles: Go back to old, quiet mode
    * t: Fix warning in full-stack.t
    * t: Delete superfluous setting delete
    * docs: Add hint how to get coverage for individual tests
    * Move 'create_worker' method to single place where used
    * client: Prevent warnings when receiving no HTML status code at all
    * Add package self-test for worker as well
    * Add make target "test-with-database" for easier test database setup
    * t: Fix typo in testrules.yml
    * Makefile: Use explicit target name for non-travis specifics
    * Lock test suites in YAML-based groups for manual updates and deletion
* Wed Jul 03 2019 coolo@suse.com
  - Update to version 4.6.1562157181.8465317e:
    * Fix tests that were assuming Test::Mojo methods had special return values
    * script: Fix shellcheck issues with old shellcheck version
    * Fix shellcheck warnings on docker/openqa/entrypoint.sh
    * travis_test: Use consistent spaces instead of tabs
    * Make all shell scripts pass default level (style) of shellcheck
    * Make all shell scripts pass 'warning' level of shellcheck
    * fetchneedles: Use consistent spaces style
    * Makefile: Add test for shell scripts using "shellcheck"
    * openqa-clone-custom-git-refspec: Include further suggestions by shellcheck
    * openqa-clone-custom-git-refspec: Fix use of "-n" on GITHUB_TOKEN
    * Trim whitespace characters from both ends of string
    * Add script for simple setup of a single instance
    * Revert to usual wording "distri" in YAML schedules
* Mon Jul 01 2019 coolo@suse.com
  - Update to version 4.6.1561959871.3b6d67be:
    * Fix deletion of scripts during install
    * travis_test: Ensure shellcheck is installed as part of dependencies (#2136)
    * Strip unnecessary extension from scripts (#2138)
    * Integrate clone-job into bootstrap
* Tue Jun 25 2019 coolo@suse.com
  - Update to version 4.6.1561118372.b9b694d3:
    * Move websocket server helpers to the model
    * Prevent blank line in worker caching output
    * Fix missing dependency in package buildtime tests as well
    * Rename architectures to scenarios
    * Defer loading the schema in OpenQA::Schema::Profiler, so the worker does not trigger a migration
    * Fix missing runtime dependency on "DBIx::Class::DeploymentHandler"
    * apparmor: Allow unzip-plain to fix worker startup
* Wed Jun 19 2019 coolo@suse.com
  - Update to version 4.6.1560873517.08f60a7b:
    * Calculate elapsed time more correctly
    * Add some documentation for OpenQA::Schema::Profiler
    * Refactor DBIx::Class profiler to use current openQA best practices
    * Remove dead code and move rng functions still in use to OpenQA::Utils
    * docs: Fix shell code box rendering with line break
    * Support storing YAML job templates in the database
    * docs: Improve language of Networking document
    * docs: Consistently use QEMU, the offical way of writing
* Sun Jun 16 2019 coolo@suse.com
  - Update to version 4.6.1560549641.c09044ae:
    * docs: No need to start openqa-gru explicitly
    * Add support for OPENQA_BASE_PORT environment variable
* Fri Jun 14 2019 coolo@suse.com
  - Update to version 4.6.1560497112.f26a0400:
    * Don't take the full cluster as possibly blocked (#2109)
    * Make localhost authentication more testable
    * Treat IPv4 and IPv6 the same for local host authentication
    * Blocked by calculation: Fix cyclic behaviour (#2104)
    * Fix travis cache permissions for docker user
    * Fix a problem where an Mojo::RabbitMQ::Client::Publisher instance goes out of scope too early (#2107)
* Tue Jun 11 2019 coolo@suse.com
  - Update to version 4.6.1560026218.807c3c09:
    * Update MM setup documentation
    * Test the scheduler API
    * Cache: Fix missing download progress output and warning
    * Provide the script `openqa-clone-job` already in source
    * Remove dead code from OpenQA.pm
    * Remove imports that are no longer needed
    * Remove all remaining traces of D-Bus
    * Share authentication controller between websocket server and scheduler
    * Remove old script that had been broken for quite some time (and was therefore probably not used anymore)
    * Turn scheduler core into a model class
    * Replace D-Bus with HTTP
    * Remove imports that are no longer needed
    * Add a scheduler client
    * Update architecture diagram
* Wed Jun 05 2019 coolo@suse.com
  - Update to version 4.6.1559744346.36d65edf:
    * docs: Add note how to fix broken CSS
    * Remove tidy from spec file
    * Use the latest version of perltidy
    * Improve tests for admin tables
    * spec: Fix Perl::Tidy mismatch in build tests
    * Follow updated admin table rows
    * Clear admin table filter before adding new row
    * apparmor: Fix worker startup on openSUSE Leap 15.1
    * Don't log jobtemplate_create event if in preview mode
    * docs: Harmonize use of no colon in titles
* Fri May 31 2019 coolo@suse.com
  - Update to version 4.6.1559047081.8050f3f0:
    * Fix filtering settings in admin tables
    * Document latest/scope{relevant,current}/limit in jobs
* Wed May 22 2019 coolo@suse.com
  - Update to version 4.6.1558532409.ab91f319:
    * Install qemu-uefi-aarch64 on aarch64 in bootstrap
    * Use less noisy perl style for $comment->label
    * Prevent accessing comment label without check for undef
    * Ensure that module names are escaped
    * List remaining failed modules on mouseover
    * Allow listing bugs by the time of reporting
    * Require YAML::XS >= 0.67
* Mon May 20 2019 coolo@suse.com
  - Update to version 4.6.1558084113.18c6f052:
    * Revert "Improve code for settings expansion"
    * Update documentation about job scheduling
    * Add job template settings when scheduling new jobs
    * Show job template parameter via regular REST API
    * Allow YAML import/export of job template settings
    * Support scaling MAX_JOB_TIME
    * Add job template settings table
    * Add test for saving needles via Git
    * Validate properties of OpenQA::Git before using them
    * Fix comparision of cluster ID for dependency graph (#2068)
    * Set user correctly in OpenQA::Git instantiation
* Mon May 13 2019 coolo@suse.com
  - Update to version 4.6.1557739992.f9fbeb06:
    * Avoid leaking GITHUB_TOKEN
    * Skip UEFI_PFLASH_VARS asset when UEFI is disabled
    * Add an own result jobs which exceeded the timeout
    * Split off git support into its own class
    * Adapt 13-admin.t to the new sorting-enabled tables
    * Fix remaining jshint warnings in admintable.js
    * Adjust sorting of admin tables so empty strings come last
    * Improve styling of help icon beside search box
    * Improve regex-enabled search of admin tables
    * Tweak sorting and filtering in admin data tables
    * Remove admin table code for column type settings
    * Make admin tables use DataTables correctly
    * Improve code for settings expansion
    * Move job settings expansion to its own module
    * Use CodeMirror with YAML editor
    * Inherit specified settings when create job with 'Jobs post'
    * Show an error message in the editor if the group changed
    * Clean up 08-jobtemplates.t
    * Do not add new testsuites when importing job templates
    * Add YAML-based template editor UI
    * Add non-trivial test suites to exercise YAML validation
    * Import of job template specification from YAML
    * Support click_point in needle editor controller code
    * Fix issues reported by jshint in shapes.js
    * Test adding/removing a click point
    * Allow only one click point per needle
    * Allow adding click coordinates in the needle editor
    * Improve JSON parse errors in openqa-clone-custom-git-refspec
    * Retry after rsync exits with status 24
    * Add non-fatal messages during scheduling to results
    * Allow authenticated calls to the github api
    * Remove deprecated qemu-kvm and use qemu-arm, qemu-ppc and qemu-x86 instead
    * apparmor: rk permission on hdd contents
* Wed Apr 17 2019 coolo@suse.com
  - Update to version 4.6.1555478309.f6dfdd9b:
    * Clone only the latest revision of the SLE needles (#2048)
    * Revert "openQA.spec: multiline macros for services and dependencies" (#2051)
    * Update architecture diagram in accordance with PR 2043
    * Fix the remaining issues of deleting workers
    * Get rid of a few warnings that make test results on Travis hard to read
    * Be a little more strict about WebSocket server response codes
    * There should be no need for AssetPack in the websocket server
    * Trust connections from localhost to the websocket server to avoid complex config file requirements
    * The websocket server is no longer a dbus service
    * Clean up tests and remove a few connection warnings
    * The websocket server is no longer a dbus service
    * Move ws_send from dbus to HTTP
    * Move ws_send_job from dbus to HTTP
    * Remove ws_send_all dbus function, which was actually unused
    * Remove first dbus function from the websocket server
    * Add an HTTP API to the websocket server
    * Don't return status 402 on worker deletion failure
    * Fix indentation in admin_worker.js
    * Make OpenQA::Events::emit_event a non-static member function
    * Update AppArmor profile for usrMerge (boo#1132350)
    * Add cacheservice as part of openqa-worker.target
    * openQA.spec: multiline macros for services and dependencies
* Sun Apr 14 2019 coolo@suse.com
  - Update to version 4.6.1554809752.3a77164a:
    * Fix mock session logins to use only public Mojolicious APIs and create users with a proper resultset
    * Prevent multiple limit_* tasks from running in parallel
    * Allow deleting offline workers via API and web UI
    * Don't duplicate settings in iso_create/cancel events
    * Adapt product log test
    * Add test for re-scheduling product
    * Migrate 'iso_create' events to scheduled products
    * Show scheduled products from new table in UI
    * Test async flag for iso post route
    * Move constants for job dependencies to their own file
    * Add API route to query scheduled product
    * Add async flag to ISO post route and table to keep track
    * Cleanup scheduling functions
* Sun Mar 31 2019 coolo@suse.com
  - Update to version 4.6.1553599469.57d6b3ca:
    * Properly escape bug titles
    * YAML output for job templates and schema validation (#1999)
    * Make the websocket server testable as a normal Mojolicious application
    * Add a model class to store worker state
    * Move more functions into helpers
    * Move dbus functions into helpers
    * Add controllers to the websocket server application
    * Install test distri deps on bootstrap
    * Turn websocket server into a real Mojolicious app
    * Use Mojo::Promise in enqueue_and_keep_track
    * docker: Add IO::Scalar dependency
    * doc: Reflect renaming virtio_screen.pm to serial_screen.pm
    * worker: Upload serial_terminal.txt for svirt backend
    * Unify schema access in OpenQA::WebAPI and fix the issue where the db helper was called on the application
    * Use result_p to track Minion job instead of timers
    * Improve logging non-scalar error info of GRU/Minion tasks
    * Extract common code for saving and deleting needles
    * Fix test for dependency graph
    * Don't let needle-related tasks fail if the cause is uncritical
    * Make needle deletion a Minion job
    * Setting to not cancel parallel parents with still-pending children
    * Add hints to fix dependencies when using devel
* Fri Mar 15 2019 coolo@suse.com
  - Update to version 4.6.1552567428.80082fe5:
    * Test create and delete events for job templates
    * Unify schema access with a singleton method
    * Use route placeholder types whenever possible for cleaner routes
    * Add link to relevant documentation in the job group settings
    * Cache result of OpenQA::..::JobGroup::load_properties
    * Allow disabling bug carry over on job group level
    * Remove dead validation code and replace it with route placeholder types
    * Pass affected_rows correctly in openqa_jobtemplate_create
* Tue Mar 12 2019 coolo@suse.com
  - Update to version 4.6.1552406543.b3e49dcb:
    * Remove check for $OpenQA::Utils::app
    * Move get_bug from Result::Bugs to ResultSet::Bugs
    * Add bug to db already on comment create or update
    * Add support for links to jira tickets
    * Rename tmp_schema to search_path_for_tests, which is a little more descriptive
    * Allow monitoring of Gru/Minion with a new public /admin/influxdb/minion API endpoint
    * Log job group events via audit log
    * Make openqa-webui.service depend on openqa-gru.service
* Sun Mar 10 2019 coolo@suse.com
  - Update to version 4.6.1552078716.6b292c9a:
    * Test deleting job from worker's job history
    * Move another class into its own .pm file and do not use private functions/methods across modules/classes anymore
    * Remove all uses of the enterprise operator and use a more consistent coding style in the affected classes
    * Add loading indication when saving needle
* Fri Mar 08 2019 coolo@suse.com
  - Update to version 4.6.1551963862.0a6b30be:
    * Prevent deletion of worker when deleting its current job
    * Prevent broken rendering of unknown result types
    * Add unxz/xz to apparmor profile to fix poo#48743
    * Don't hardcode remote and branch names for saving needles
* Tue Mar 05 2019 coolo@suse.com
  - Update to version 4.6.1551797932.a5aadf24:
    * Remove safe_call from OpenQA::Utils since it is no longer needed
    * Cover more Gru special cases with tests
    * Remove resource allocator from architecture diagram
    * Mention the possible race condition in a comment
    * Bypass Gru special cases for non-Gru tasks
    * Use a completely new task for testing so we can replicate more edge cases in the future
    * Be a little more defensive with removing Gru tasks
    * Allow pure Minion jobs (without a Gru id) to bypass special case handling
    * Do not delete Gru tasks if they are not finished in Minion yet
* Sat Mar 02 2019 coolo@suse.com
  - Update to version 4.6.1551454083.e27d66d8:
    * Extend apparmor profile for all Git commands we use
    * Correct limit_assets task arguments
    * Allow test vars for openqa-clone-custom-git-refs
    * Fix updating needle Git repository
    * Fix uniform box widths of dependency graph in current Firefox
    * Move JSON::Validator and YAML::XS to t_requires
    * Drop the `cpanfile` changes
    * Add YAML::XS and JSON::Validator dependencies
    * worker: Skip announcing stop if isotovideo already exited
    * worker: Fix "final status update"
    * worker: Refactor _stop_job_kill_and_upload
    * worker: Remove extra handling for dead children
    * worker: Make API calls when stopping job non-critical
    * worker: Treat upload failures as API failures
    * Raise an exception if deploying the SQLite database fails and handle an existing database more gracefully
    * Do not reset the job queue every time the cache service is restarted
    * Test cache service migrations
    * Use Mojo::SQLite migrations to handle schema upgrades in the cache service gracefully
    * Remove unused imports and IPC objects
    * Remove the resource allocator
    * Move barrier handling out of the resource allocator
    * Move mutex handling out of the resource allocator
    * Remove first dbus method and use OpenQA::Schema directly
    * Declare the DBIx::Class dependency properly
    * Move OpenQA::Resource::Jobs handling from the resource allocator to the webapi
* Tue Feb 26 2019 coolo@suse.com
  - Update to version 4.6.1551101052.7f891940:
    * Use well-defined worker config for fullstack test(s)
    * Adapt tests to default WORKER_CLASS
    * Assign default WORKER_CLASS when posting job
    * Assign default WORKER_CLASS when scheduling ISO
* Sat Feb 23 2019 coolo@suse.com
  - Update to version 4.6.1550673294.3fb7464e:
    * worker: Log error returned by JSON API
    * Render error in all cases in create_artefact
* Tue Feb 19 2019 coolo@suse.com
  - Update to version 4.6.1550584043.5098c32d:
    * Log isotovideo startup more detailed
* Tue Feb 12 2019 coolo@suse.com
  - Update to version 4.6.1549966436.c3938033:
    * Revert support for ASSET_\d+_URL
    * openqa-clone-custom-git-refspec: make use of GROUP var
    * Improve error handling when changing priority
* Sun Feb 10 2019 coolo@suse.com
  - Update to version 4.6.1549799415.315b994a:
    * Fix modules filter wrong results while using comma
    * Show bug reporting links also on text results
    * Prevent download tasks for the same asset running in parallel
    * Improve Minion error handling when saving needle
    * Allow to run Minion jobs in UI tests
    * Migrate intermediate database changes
    * Don't use might_have relationship for job scenario
    * Show externally skipped module count in resultstats
    * Use same style for needle editor warnings as for regular flash messages
    * Save needles via Minion
    * Format Git errors more nicely when committing needle
    * Rebase needle directory before commiting changes
    * Use commit_git_return_error in Step.pm to propagate error
    * Skip result skipped on calculate overall result
* Tue Feb 05 2019 coolo@suse.com
  - Update to version 4.6.1549379724.2b90641c:
    * Split configured hosts by whitespace
    * stopping job: Proceed on errors during announcement
    * Let devel mode fullstack test also pass on state cancelled
    * stopping job: Change order of POST requests
    * Prevent error about cmd srv connection when test ends
    * Make code for engine startup more clear
    * Add architecture diagram
* Sun Feb 03 2019 coolo@suse.com
  - Update to version 4.6.1549026855.08485c7c:
    * Remove SQL files for 2017
    * Update serial terminal function (#1982)
    * Remove image migration jobs that were only used for very old migrations
    * Lift the parallel job limit for the gru worker and add more fine grained limits to individual tasks
* Thu Jan 31 2019 coolo@suse.com
  - Update to version 4.6.1548936964.47070d70:
    * spec: Fix missing mention of 'openqa-clone-custom-git-refspec' in script/
    * Add test check for scenario within error reporting
    * docs: Add documentation for triggering jobs based on any git refspec
    * Add script 'openqa-clone-custom-git-refspec'
    * Consider parent group comments for important builds
    * Cache result of function call
    * Add scenario description to infopanel of test
    * Fix typo in reference to DeveloperSessions
    * Fix another regression from c9735699 when no sync is needed
    * apparmor: Fix access to git templates
    * Switch to four spaces as requested, modify error ignoring
    * Fix flaky test regarding needle update
    * Improve error handling in worker cache /status route
    * openqa-bootstrap-container: do more error checking, fix a hang
* Sat Jan 26 2019 coolo@suse.com
  - Update to version 4.6.1548420629.e8e80a4b:
    * Fix regression of test caching failing introduced by c9735699
    * worker: Fix two perl warnings
* Wed Jan 23 2019 coolo@suse.com
  - Update to version 4.6.1548078204.c9f60161:
    * Use nicer syntax for default vars
    * Add (carried over) bugref to job.done AMQP event
* Fri Jan 18 2019 coolo@suse.com
  - Update to version 4.6.1547830304.62f9aaaa:
    * Allow overwriting container bootstrap repo
    * Remove Failed modules filter from UI
    * Add UI tests for filter by module
    * Add search by module in all jobs of job group
    * Prevent github to think we have perl6 code
    * Better check for existing DBs in bootstrap
    * bootstrap: make errors fatal and deal with re-runs
    * apparmor: Further fixes for custom git clones
    * Fix external reporting if scenario description not present
    * Improve code for scenario description and add test
    * Add test suite description for bug reporting
    * apparmor: Fix custom git repo clone "env" denied
    * clone_job: Add convenience option '--within-instance'
    * Also set assigned jobs to parallel_failed (#1951)
    * Fix a few issues reported by jshint
    * Prevent the live log from becoming too long
    * Handle undefined `$text` in `find_bugref` and `find_bugrefs`
    * Wrap text in live log so long lines are readable
    * Allow custom CASEDIR/PRODUCTDIR/ASSETDIR
* Thu Jan 10 2019 coolo@suse.com
  - Update to version 4.6.1547114886.81dabdea:
    * 21-needles.t: Use `discard_changes` instead of re-calling `find`
    * Add bootstrap hint for Leap 15.0
    * Fix "Can't locate object method new via package JSON" introduced by 95cb6601
    * Check for correct perltidy version on execution
    * Fix if condition and leap repo prios for bootstrap
    * Improve a few details in worker code
    * worker: Improve handling API failures
    * Handle unexpected errors on status update more nicely
    * worker: Fix handling errors caused by connection issues with web UI
    * Show currently executed function in developer mode
    * Allow to pause on the next command
* Sat Dec 22 2018 coolo@suse.com
  - Update to version 4.6.1545406149.53968c1e:
    * Activate strict and warnings for all tests and do not use indirect object syntax
    * Add tool to bootstrap openQA with only one command
    * Fix comments and reference the usage messages of the minion job/worker commands in usage messages
    * Test setting last needle update
    * Add examples for run and list commands
    * Add Minion tests and make the run command a subclass of the worker command
    * Use better variable names in t/21-needles.t
    * Prevent wrong 'New needle ...' notifications in needle editor
    * Rename Docker-related targets and scripts
    * Improve documentation about running tests without Docker
    * Remove obsolete docker/testing
    * Improve documentation regarding Docker
    * Use --oneshot to make it more obvious what is happening
    * Improve job restart
    * Allow submitting margin and match level via return key
    * Hide tooltips when hiding developer mode elements
    * Remove 'Cancel job' button from developer mode
    * Reuse many more parts of Minion for Gru
    * Add a new OpenQA::WebAPI::Command namespace so there is no need for hidden classes in plugins
* Thu Dec 20 2018 coolo@suse.com
  - Update to version 4.6.1545230885.56b79eeb:
    * Use OPENQA_TEST_IPC mock in 37-limit_assets.t (#1935)
    * Reformat with new perltidy version
    * Adjust comment for pauseOnScreenMismatch
    * Allow test in devel mode fullstack test to pass
    * Remove 'Error from livehandler daemon' prefix
    * devel mode: Test version check
    * devel mode: Check whether os-autoinst is compatible
    * devel mode: Allow to pause on check_screen timeout
    * Improve and fix asset caching doc
    * Fix typos
    * Makefile: Prevent docker "build" and "run" to run in parallel
    * Add basic documentation for OpenQA::Events
* Mon Dec 17 2018 coolo@suse.com
  - Update to version 4.6.1545054233.21210ce3:
    * Use a fixed version of perltidy
    * Prevent 'Summary of HASH(...)' if multiple distris/versions specified
    * .travis.yml: Delete not necessary stage overrides
    * docs: Make commands to call more prominent with backticks
    * Makefile: Delete unused target docker-test-travis
    * Do not set the MOJO_LOG_LEVEL environment variable by default for more granular logging
    * Reformat everything for the latest version of perltidy
    * Support filtering by test in group overview again
    * worker: Validate job sent by web UI "job_grab"
    * Use localized signal handling instead of global sigtrap for modules
    * Set transaction isolation level for asset cleanup accordingly
    * asset cleanup: Check whether $res_max_job is set before comparing
    * Fix copyright year
    * Add license to new module
    * Move memory limit handling into a plugin
    * Move all global events to OpenQA::Events
    * Add OpenQA::Events module to replace random events being added to Mojo classes
    * Improve documentation for schedule control
    * Extend and improve asset documentation
    * Don't treat UEFI_PFLASH_VARS as asset if path is absolute
* Thu Dec 13 2018 coolo@suse.com
  - Update to version 4.6.1544609268.19a4cf68:
    * Fix test for popovers in 15-admin-workers.t for real
    * Improve "Refusing 'grab_job'" debug message
    * Test worker broken state
    * Add 'broken' state to the worker
    * Prevent worker to accept jobs if caching not available
    * Update specfile line for restarting apparmor
* Tue Dec 11 2018 coolo@suse.com
  - Update to version 4.6.1544510066.913d8f26:
    * Update license of test spec-file to current SPDX format (#1915)
    * Use the boring standard return value for all Perl modules
    * Merge hashes properly
    * Test handling of assets with invalid name
    * Prevent registering empty assets
    * Skip cleanup of assets with empty name
* Fri Dec 07 2018 coolo@suse.com
  - Update to version 4.6.1544166689.47296c23:
    * Disable INSTALL_FROM_CPAN by default (#1863)
    * Don't leave a limit_assets task hanging after 14-grutasks.t (#1882)
    * Do not require perlcritic on sle-12 (#1910)
    * When detecting asset keys, don't use the _URL form for ASSET (#1907)
    * Add Perl::Critic::Freenode to the test container (#1906)
    * Fix devel fullstack mode test
    * Make devel fullstack test more verbose
    * openQA.spec: Add missing runtime requirement for client (#1905)
    * doc: Mention select_serial_terminal() in serial terminal doc
    * Test rendering external table
    * Don't show categories in table for external results
    * Add filter for external results table
    * Use circle to display results in external table
    * Add separate table for external results from parser
    * Move logic for test detail steps from view into controller
    * Fedmsg: use Python 3 logger command
    * Extend documentation on the developer mode panel
    * Add WORKER_HOSTNAME to workers.ini template
    * Document re-needling workflow
* Mon Dec 03 2018 coolo@suse.com
  - Update to version 4.6.1543830229.359b5dd9:
    * Add Perl::Critic::Freenode to openQA.spec
    * Use Perl::Critic::Freenode to determine good coding style
    * Make all modules pass Perl::Critic::Freenode with severity level 4 (stern)
    * Activate strict and warnings consistently for all modules
    * Fix network dependency for cache service
    * Remove DEBUG and LOGDIR environment variables and change cache services to use the test mode
    * Test skipping timeout in developer fullstack test
    * devel fullstack test: Don't fail if renamed needles already there
    * devel mode: Allow to skip assert/check_screen timeout
    * Remove srand workaround that does nothing anymore since Mojolicious 5.76 (2015)
* Wed Nov 28 2018 coolo@suse.com
  - Update to version 4.6.1543400978.50e006bc:
    * Fix worker-cacheservice failing on startup due to no network
    * docs: Extend development tricks with dynamic test override
    * Fix typo in installation documentation
    * Replace Mojolicious::Commands with Mojo::Server::Daemon in test modules, make sure all test modules use strict, and fix a few issues caused by not using strict before
    * Restart openqa-worker-cacheservice on failure
    * Allow caching of externally downloaded assets
* Mon Nov 26 2018 coolo@suse.com
  - Update to version 4.6.1543249675.02bb8eff:
    * Exit worker with non-zero return code in error cases
    * Do not import from_json, there is already an inherited method with the same name
    * Add comments to point at Mojo::JSON being used to set up booleans
    * Debug 25-cache-service.t
    * Make perltidy happy
    * Convert a few cases back to Cpanel::JSON::XS that require special configurations (mostly for tests, but there might be underlying protocol requirements too)
    * Document steps to debug developer mode setup
    * Convert most uses of Cpanel::JSON::XS to Mojo::JSON, which will take care of using an optimized encoder and avoiding boolean warnings
    * Use fixed header for test result overview table
    * Check for JavaScript errors while waiting for result panel
    * Prevent selenium test to accidentally click on the VNC notice
    * Move note about VNC into developer panel
    * Update existing unique flash messages
    * Expand devel controls by default if paused and owning the session (#1880)
    * Add rsync BuildRequires and Recommends to RPM spec (#1881)
    * Add a new is_admin_js helper to generate JavaScript booleans for use in templates
    * Add a test for browsing the admin pages in readonly mode
    * Use OPENQA_TEST_IPC in developer mode unit test (#1868)
    * Add test to check link for entire build
    * Add link to test results for multiple job grops
    * Call _reschedule after schedule concluded
    * Remove unused variable $force in _reschedule()
    * Fix comment in scheduler code
    * Fix various uses of the is_admin helper in templates to generate JavaScript that resulted in empty lists, because the helper returns a Perl boolean value instead of a JavaScript boolean
    * Revert "Fix deprecation warnings regarding Mojo::Transaction::error"
    * Fix line break in failed module box
    * Fix formatting
    * Fix deprecation warnings regarding Mojo::Transaction::error
    * Combine multiple distri/version/flavor/build filter with logical or
    * Fix filter for architecture
    * Upload video timestamp file when it exists (#1873)
    * Fix formatting
    * Use Mojo::File::slurp in check_tabmode
    * Improve error handling of Step controller
    * Handle `app` and `tx` attributes of Controller being weakened
    * Do not check group name by dragging group
    * Minor fixes for WritingTests doc (#1865)
    * Add 2 new dependencies to the travis container: (#1864)
    * Update all uses of Mojo::Transaction::success to their Mojolicious 8.06 equivalent
    * Fix a few new uses of tempdir
    * Fix various incorrect uses of Mojo::File::tempdir
    * docs: Extend definition of *softfailed* to "known issues" (#1837)
    * Refuse updating job group name with empty or blank (#1844)
    * Apparmor: Add /dev/hugepages (#1857)
    * Fix broken in section of inter machine dependencies (#1859)
    * Wrap up and polish
    * Do not use wantarray in GRU's enqueue()
    * Update POD OpenQA::Worker::Cache::Client's SYNOPSIS
    * Avoid to race to get available minion workers
    * Drop PID from log
    * Move Minion workers under a single service
    * Cleanup
    * Fix typo
    * Adapt gru tests
    * Generate same lock for asset/host in the request object
    * Fix rsync output in minion task
    * Refactor and update Documentation
    * Use the cache service to perform rsync tests caching
    * Create Minion task for rsync execution
    * Use the host folder to cache tests/needles
    * Do not check if child is running if it's not there
    * Reduce the lock expiration time
    * Trim spaces from left and right in assets name
    * Hold the db handle during transactions
    * Add test for Minion task registration and execution
    * specfile: DBD-SQLite needs to be > 1.51, required by Minion::Backend::SQLite
    * Add tests and cover also subprocess execution
    * Add function to generate session token
    * Read and set limit from config file, defaults to 50GB
    * Makefile: install Worker Cache Service systemd unit
    * Add POD for Cache Service and extend docs/Installing.asciidoc
    * Add service file and adapt openQA.spec
    * Avoid useless quotes on hash key
    * Debug - adapt compile-check-all
    * Address to PR comments - also add test for checking output in cache-service.t
    * Drop unused function
    * Write cache output into os-autoinst log
    * Make possible to retrieve cache output
    * Add debug messages while enqueuing download
    * Asset path needs to be a string for vars
    * Make dequeue and status post
    * Adapt fullstack to cache path change
    * Extract domain parsing to _base_url and use it also in the client to resolve asset path
    * Adapt tests
    * Get the cache path right
    * Incomplete job if cache service is down
    * tests: Wait also for worker minion in fullstack
    * Use defaults in isotovideo engine
    * Update defaults and remove protoyped function from Cache::Client
    * tests: Add test for available_workers()
    * Add available_workers() to Cache::Client
    * Fullstack: move sqlite cache check up
    * Cache: make retry() return always the response object
    * Fullstack: Wait cache to be ready
    * Adapt tests and utils
    * Drop unneeded default
    * Use OpenQA::Worker::Client inside the cache task
    * Start to adapt fullstack test
    * Adapt to PBP
    * Add dep on Minion::Backend::SQLite
    * Move common testing functions to Test::Utils as they will be reused also in fullstack test
    * Add Mojo::SQLite dependency
    * Use the Cache service within the worker
    * Add accessors to retrieve asset path and check if exists
    * Remove unneded log line and cleanup check_limits()
    * Finishing porting the Cache.pm code to Mojo::SQLite
    * Rework cleanup strategy, avoid endless loops - update etag fails now
    * Use Minion Admin plugin with the cache service
    * Drop downloading, Cache.pm now records just etag and size
    * Use Devel::Cover in cache-service tests to enhance coverage
    * Adapt cache tests - still fails on size calculation
    * Move Cache.pm code to Mojo::SQLite
    * Add dequeue() and tests for it
    * Fix and test enqueued tasks
    * Do not use list_jobs from Minion to gather statuses, causes races
    * Add default usage tests and use minion lock to detect if it's in use
    * Fix test copyright header
    * Add standard client usage
    * Add Cache service client
    * Do not lock anymore on assets
    * Add test for cache service
    * Add script to start cache service
    * Create separate class for Minion Server and worker
    * Do not log an error when trying to unlink an nonexisting file (#1854)
    * Prevent filter on test overview to reveal old jobs
    * Allow to create dependency for jobs on different machines
    * Test that filtering overview does not reveal old jobs
    * Add dependency for test in os-autoinst (#1851)
    * Handle skipped test result in IPA parser
    * Show bug title on mouseover
    * Fix job templates JavaScript
    * Fix typo in networking documentation
    * Regenerate docs
    * devel mode: Suppress connection errors if no module running
    * Make 13-admin.t more verbose in case of failure
    * Use $LEAP_VERSION in documentation consistently
    * Use 'not yet' instead of 'never started' on /admin/workers/X (#1841)
    * Extend unit tests for developer mode UI
    * Don't replace preview container when updating results
    * Load new test details when paused in the middle of module
    * Add START_AFTER_TEST/PARALLEL_WITH to dep graph tooltip (#1840)
    * Allow to scroll up and down using arrow keys on test details (#1842)
    * Fix testhelper wait_for_session_info
    * Lazy-initialize devel mode when switching to live view tab
    * Make 'can't remove ...' warnings debug messages (#1836)
    * Create new db schema version
    * Add tests for test module flags
    * Add special icon for the always rollback flag
    * Add always_rollback flag description
    * Add regex filter for admin tables (#1831)
    * Simplify Schema::Result::Jobs::running_modinfo
    * Test progress bars on /tests
    * Fix progress bars on /tests
    * Fix prio field in /tests and add a test for it (#1834)
    * Hide cloned jobs from job dependency graph (#1833)
    * Add route to poll stats of running and scheduled jobs (#1829)
    * Allow softfail and softfailed as step result
    * Prevent rendering undef/refs as resborder
    * Move errors regarding developer mode into the devel panel (#1830)
    * Test error handling of status/image/progress upload
    * Recompute asset status after cleanup for /admin/assets
    * Fix misleading error message on non-UEFI jobs (#1825)
    * Save asset status cache under /var/lib/openqa/webui/cache
    * Don't serve assets table while cleanup is ongoing
    * Update apparmor profile for current Tumbleweed for x86 workers (#1827)
    * worker: Stop job if considered dead by the web UI (2)
    * worker: Stop job if considered dead by the web UI (#1824)
    * Prevent multiple limit_assets tasks to run in parallel
    * Spawn limit_assets task in a consistent way
    * Polish a few details on the /admin/assets table
    * Allow to trigger asset cleanup task on /admin/assets
    * Prevent warning when rendering assigned jobs on 'All tests' page (#1823)
    * Fix issues noted by jshint
    * Make displaying assets by group faster
    * Set asset table width to 100%
    * Show last update of assets table
    * Improve speed of /admin/assets
    * Fix dependencies of openQA-client package (#1819)
    * Use less-ugly gravatar icons already used in OBS and progress (#1822)
    * Fix padding of tabs in testresults
    * Polish code for dependency graph
    * Clean CSS
    * Ensure filter icon and last tab button don't overlap
    * Add help text to dependency graph
    * Rename part_of_cluster to has_dependencies
    * Remove old dependency table
    * Test dependency graph
    * Improve appearance of dependency graph
    * Compute cluster for dependency graph
    * Fix clipping and alignment of dependency graph
    * Make dependency graph a bit more fancy
    * Display dependency graph using dagre-d3
    * Handle logging errors (#1815)
    * Use italic font to display default prio (#1818)
    * Fix openQA-client package for openSUSE (#1816)
    * Stop worker when an unhandled exception occurs (#1809)
    * Limit new needles sent to os-autoinst on resume to 100
    * Use Mojo::File in t/ui/07-file.t
    * Add 'perl(File::Touch)' to Dockerfile
    * Test needle download
    * Allow command server to download new needles on resume
* Wed Oct 03 2018 coolo@suse.com
  - Update to version 4.6.1538413557.f9e2a131:
    * Adapt tests to logging behavior of Mojolicious 8 (#1814)
    * Use transaction when computing the asset status
    * Make only cleanup fail on inconsistent asset status
    * Print max job when detecting ongoing scheduling during cleanup
    * Fix removal of scheduling assets
    * Document asset cleanup
* Sat Sep 29 2018 coolo@suse.com
  - Update to version 4.6.1538057874.2d8d0618:
    * Update AppArmor profile for Leap 15.0 (#1810)
    * Allow overwriting job priority when posting isos (#1807)
    * Dump the JSON templates as ascii
    * Fix jobs fixtures
    * Increase debugging information in asset removal
    * Round the remaining days to make tests less blinky
    * Fix wrongly assigned states in existing data
    * Prevent setting the state to SKIPPED
    * Test whether t_finished is assigned when setting a final job state
* Wed Sep 26 2018 coolo@suse.com
  - Update to version 4.6.1537939546.7aa7ed58:
    * all tests page: Fix parameter passing for timestamp rendering (#1806)
    * Make asset cleanup more verbose (#1803)
    * Fix 'last_match' param of AJAX route for needle table (#1802)
    * Use AJAX for all tables on /tests
    * Don't pre-compute IDs for finished jobs when loading HTML
    * Optimize all tests page
    * doc: remove mention of openQA-devel package (#1800)
    * Make sure multimachine jobs get a worker eventually
    * Some code restructing in the scheduler function
    * Delete empty settings in clone job
    * Display progress bar when downloading asset
    * Cache infos about scheduled jobs
    * Limit logs and results for groupless jobs (#1798)
    * Release job networks more often (#1795)
    * Fix removal of untracked assets (#1796)
    * Enable the scheduler on updates (and the webui is enabled) (#1785)
    * docs: Write Leap installation repo in more timeless way (#1791)
    * Run inserting screenshots in a transaction (#1792)
    * Update AppArmor profile to allow worker to use cgroups
    * Set specific slice for worker service
    * Better detect of systemd slice
    * Inform worker about devel session to reduce posting status info (#1789)
    * Correct typo (#1790)
    * Require RabbitMQ::Client 0.2
    * Make AMQP sending less fragile
    * Make web socket and livehandler daemons listen on IPv4 and IPv6 (#1787)
    * Prevent worker to endlessly retry non-critical API calls (#1788)
    * Fix typo in t/api/02-iso.t
    * Make asset download feature usable by both "jobs post" and "isos post"
    * docs: Cover different asset types and asset options
* Thu Sep 13 2018 coolo@suse.com
  - Update to version 4.6.1536756702.f75303c1:
    * Improve error log of AMQP plugin (#1784)
    * Treat failure when posting upload progress as non-critical
    * Allow regular HTTP and WS being passed though reverse proxy
    * Fix random failures in developer mode unit tests
    * Add unit test for posting progress upload
    * Add HMAC time stamp also on livehandler daemon
    * Store upload progress in database
    * Prevent use of uninitialized value when posting upload progress
    * Check for upload progress in developer fullstack test
    * Use API authentification for post upload progress route
    * Test handling of upload progress in UI
    * Show needle editor button not unless upload complete
    * Pass upload progress from worker via liveviewhandler to browser
    * Open needle editor in developer fullstack test
    * Fix one more corner case for blocked_by (#1781)
    * Simplify reschedule code
    * Make the overview page responsive again (#1780)
    * Sort scheduled jobs via database (#1779)
    * Fedmsg plugin: emit 'standardized' fedmsg (#1758)
    * Fix blocked jobs not appearing in scheduled table
    * Increase max execution time per job in fullstack test
    * fullstack.t: Distinguish between not found and wrong permissions
    * Add more checks in 15-comments.t to debug random failure
    * OpenQA::Parser::Format::JUnit include error and skipped details (#1778)
    * Update serial failures detection documentation
    * Prevent asset-releated tests being disturbed by unrelated files
    * Test computing asset status
    * Optimize querying asset status for admin table
    * Allow rendering asset table as JSON
* Sun Sep 09 2018 coolo@suse.com
  - Update to version 4.6.1536432963.ac9f540e:
    * Fix the vlan assignment and release
    * Remove debug that prints to STDERR
    * Clean up 05-scheduler-dependencies
    * Take the full cluster into account, not just the first level
    * Avoid undefined warnings from rescheduling
    * Do not reschedule cluster jobs multiple times
    * Do not require websocket in scheduler (#1777)
    * Extend the test coverage for blocked_by
    * Fixed blocked_by calculation not to create loops
    * Schedule the jobs manually in fullstack test
    * git clone only the HEAD of os-autoinst
    * Do only copy back the cache on travis
    * Make 2 debug messages in WS server info
    * Wait for the scheduler to reshedule job 3
    * Die early in full-stack test
    * Don't output 'Scheduling new jobs' if there are 0 free workers
    * Add some means to debug full-stack test
    * Only talk about cpanm if it's actually true
    * Run chromium with --no-sandbox not to require admin caps
    * Revert PR 1747
    * Allow to enable monitoring using mojo-status (#1763)
    * Catch misconfigured test suites creating cycles (#1775)
    * Make tidy fast by only looking at changed files (#1773)
    * Ignore file docker.env created by make target docker.env
    * Update docker-related documentation
    * fullstack/Docker test: Skip os-autoinst build only conditionally
    * fullstck test: Improve ignoring JS errors
    * fullstack test: Prevent auto page reload when waiting for result panel (#1770)
    * Improve help popover for job group/template prio
    * Prevent Firefox to misalign arrows of prio input
    * Disable job template prio editor for non-admins
    * Test using default prio from job group when scheduling ISO
    * Add tests for setting prio via job templates API
    * Improve error msg and response for update of job template API
    * Allow job template to inherit prio from group
    * Allow amending job template priority
    * Use default prio when adding new job template to existing medium
    * Avoid using Mojo::ByteStream directly when rendering JSON
    * Adapt t/16-utils-runcmd.t for e2771ee
    * Fix sorting worker jobs by finished
    * Make 33-developer-mode.t more stable
    * Prevent use of uninitialized $current_running in Worker/Jobs.pm
    * Test opening needle editor for running tests
    * Improve 404 error pages of needle editor for running jobs
    * Test pausing on assert screen timeout
    * Consider only new console messages in fullstack test
    * Adjust upload_status for pausing on assert_screen timeout
    * Fix typo occured -> occurred
    * Test UI changes for pausing on assert_screen timeout
    * devel mode: Hide executed modules when test status updated
    * devel mode: Show reason for pause
    * needle editor: Show 'back to live view' if in devel mode
    * devel mode: Allow to open needle editor when paused
    * devel mode: Add UI elements for pausing at timeout
    * Use git -C for commits
    * Don't check for .git directory when making git commits
* Tue Aug 21 2018 coolo@suse.com
  - Update to version 4.6.1534873283.be929573:
    * Remove entrypoint from specfile sources
    * Makefile: Build env file for docker with needed environmental variables
    * Fix Mojolicious version requirement
    * Emit parent group ID in AMQP comment event
    * Use subtests in AMQP test
    * Makefile: Avoid also to parse env with spaces to travis
    * tests: Fix builds on master
    * Adapt fullstack tests to changes in os-autoinst
    * Make javascript_console method less verbose when there are no errors
    * test: disable broken test
    * Do not call unblock introduced in 184d0c5d5
    * Revert "Calculate blocked by jobs on creation in job resultset"
    * Do not display blocked count
    * Do not calculate blocked jobs
    * Drop unused import
    * Revert "Merge pull request #1729 from mudler/blocked_by"
    * Revert "Fix usage of $blocked in test results template (#1740)"
    * Revert "Merge pull request #1741 from coolo/fix_blocked_by"
    * Makefile: cleanup
    * tests: INSTALL_FROM_CPAN by default
    * docker: Pass environment to docker
    * docker: try to build our image with package upgrades and custom entrypoint while running tests
    * docker: Upgrade container packages before running tests
    * Fix suggested command for adding devel repo
* Fri Aug 10 2018 coolo@suse.com
  - Update to version 4.6.1533914931.14b73490:
    * Use the transaction to check if it's empty (and avoid warnings)
    * Upload: Keep the transaction around
    * Calculate blocked_by status of restarted jobs
    * Remove systemd dependencies on scheduler
    * Fix usage of $blocked in test results template (#1740)
    * Make limit for keeping untracked assets configurable
    * Test inheritance and overriding of job/parent group properties
    * Read default job/parent group properties for cleanup from settings
    * Update openQA documentation regarding serial failures detection
    * Make UEFI_PFLASH_VARS non critical on local workers
    * Print autoinst-log.txt after Travis testrun
    * Fix full-stack.t
    * Adapt test of group overview JSON route for parent comments
    * Test tagging on parent group level
    * Test commenting on parent group level
    * Allow pinned comments on parent group overview
    * Support commenting on parent-group level
    * Test overrides for job settings passed to clone job script
    * Reduce indentation in clone_job_apply_settings
    * Require at least IO Socket SSL 2.009
    * Pass worker setting WORKER_HOSTNAME to web UI
    * Add tests for comments carryover if module contains bugref in details
    * developer mode: Don't show same error twice
    * Unify disable_bootstrap_animations and disable_bootstrap_fade_animation
    * Carry comment over if test suite failed with same serial failure
    * developer mode: Show flash messages on errors
    * Test processing state changes from os-autoinst
    * Consider fullpath as a valid asset
    * Minor refactor for clone_job.pl and add unit test
    * Add global settings support for clone job
    * Treat UEFI_PFLASH_VARS as non critical asset
    * Change striped name from IPA results
    * Remove debug leftover
    * Highlight blocked jobs with orange colour
    * Do not hide scheduled jobs if blocked
    * Calculate blocked by jobs on creation in job resultset
    * Release vlan networks only if other jobs in the same cluster aren't running anymore
    * Disable worker shuffling in 05-scheduler-* tests
    * Add scheduler function to disable worker shuffling during computation
    * Adapt job_grab tests
    * Adapt scheduler fullstack test to latest changes
    * Follow the rename of get_websocket_api_version
    * blocked_by calculation: Don't block on self
    * Fix timer reset on quit
    * Calculate blocked_by state later in the process
    * Reset the scheduler tick if not summoned
    * Simply scheduler logic - but a lot
    * Fix blocked_by for chained parallel jobs
    * Disable pp in IPC - a little too noisy on allocating
    * Filtering for scheduler
    * Prepare a hash of jobs
    * Select all scheduled jobs and filter them for free workers
    * Remove BUSY_BACKOFF and CONGESTION_CONTROL
    * Remove CAPTURE_LOOP_AVOIDANCE option
    * Remove OPENQA_SCHEDULER_FIND_JOB_ATTEMPTS option
    * Add UEFI_PFLASH_VARS to detect_asset_keys
    * Mark all restarted (cluster) jobs in UI
    * Add IPA format to OpenQA Parser
    * Improve logging in LiveViewHandler
    * Assign os-autoinst tx not before actually connected
    * Ignore 'Data frame received after close' for now
    * Extend unit tests for live view handler
    * Refactor LiveViewHandler
    * devel mode: Prevent endless, instant reconnects on error
    * Mention how to actually enable openqa-ssl.conf under openSUSE
    * Use wss protocol for websocket connection when page loaded via https
    * Fix javascript errors on running.js (#1719)
    * Update README.md
* Tue Jul 10 2018 coolo@suse.com
  - Update to version 4.6.1531161673.f7fc21dd:
    * Remove docker-tests during install
    * Don't display blocked jobs as scheduled
    * Make registering assets transactional (#1711)
    * docs: Add note on sending new lines to a serial terminal (#1714)
    * clone_job: Make _GROUP and _GROUP_ID override each other (#1716)
    * Add blocked_by to jobs - calculated on job changes
    * WIP: Move commands to run docker tests to separate script
    * Make parser test less verbose
    * Make error messages in setup_share_dir more specific
    * Allow to use a custom os-autoinst checkout
    * Remove print() leftover from debugging
    * ws proxy: Add tx after last client-specific error handled
    * Don't fail full-stack.t when already assigned
    * Prevent use of global variables in LiveViewHandler.pm
    * Make developer mode accessible to operators (#1707)
    * needle editor: Assign new background image instantly
    * developer mode: Show only modules which are still ahead
    * Adjust overflow behavior of dashboard progress bars
    * Use _GROUP_ID in clone_job.pl
    * Refactor test code for jobs post
    * Test specifying group by ID on jobs post
    * live view: Connect to ws server when testStatus.running is set
    * Fix bugs in form controls for devel mode
    * Show developer mode form only when connected via web sockets
    * Fix help popover in developer panel
    * devel mode: Handle case when module list still unknown
    * Never assume it is the own devel session when not logged in
    * Don't update developer mode controls until confirmed
    * Rephrase to avoid 'developer session'
    * Make full-stack test more stable (#1701)
    * Replace 'opened by' with 'owned by'
    * Prevent resetting the module to pause at on page load
    * Show link to ws console only in development mode
    * Remove useless debug printing in live view handler
    * Don't use Test::MockModule::redefine()
    * Improve error handling of livehandler daemon
    * Test UI controls also in developer fullstack test
    * Cancel job when quitting the developer session
    * Don't quit developer session when disconnecting from os-autoinst
    * Add tests for developer UI controls
    * Fix importing determine_web_ui_web_socket_url
    * Start developer session via submit button
    * Set status code when finishing ws connections
    * Avoid using Mojo::IOLoop->one_tick() in developer unit tests
    * Adapt to removal of waiting state
    * Fix style issues mentioned by @foursixnine in review
    * Extend unit tests for status-only route
    * Fix broken HTML on test details page
    * Check that VNC instructions are shown when test is paused
    * Document variables for developer mode
    * Hide entire developer panel when test not running
    * Adapt existing developer test to UI changes
    * Update module select for devel mode like modules under details
    * Handle reconnects in the client
    * Notify clients about removed sessions as well
    * Keep track of status-only and devel ws tx separately
    * Show VNC instruction only for running jobs
    * Pick the right route (either developer session or status only)
    * Add UI controls for developer session
    * Move methods to build proxy url to OpenQA::Utils
    * Remove deprecated ui test
    * Allow developer-instructions to be modified by status updates
    * Add status route to websocket proxy
    * Fix typos
    * Connect via livehandler proxy to isotovideo to get updates
    * Update service file for livehandler service
    * Remove unnecesary options for livehandler service
    * Update instructions
    * Expose VNC port to developer
    * Add UI controls for developer session
    * Fix formatting of Contributing.asciidoc
    * Document running UI tests with Docker in non-headless mode
* Tue Jun 26 2018 coolo@suse.com
  - Update to version 4.6.1530017682.0f384112:
    * Allow 'assigned' state in fullstack.t (#1699)
    * Move constants from Schema::Result::Jobs to a separate package (#1696)
    * Remove leftovers of interacitve mode (#1697)
    * Adapt fullstack test for the logging changes
    * Adapt tests for the display of pid in the log in debug mode
    * Print pids of processes in logs if log level is debug
    * Avoid db locks on asset_lookup
    * Treat the case when we could not update asset in critical section
    * More protection for critical section in the cache
    * Add other cache tests and more refactoring
    * Try to bring coverage back
    * Add locking test, and remove useless query in fullstack.t
    * Reduce the critical section
    * Avoid Perl 5.18 complain
    * No need to import getcwd
    * Do not run the cache test in parallel
    * Reduce parallel processes for concurrency test to avoid travis to crash
    * Wrap also toggle_asset_lock in lock_section
    * Flip download = 0 from the same function used to toggle on/off
    * Make the cache test more stable - add also option for stress test
    * Add concurrent test for cache
    * No need to init explictly anymore
    * No need to export get_asset anymore
    * Adapt cache and cache test to more OOP style
    * Use transactions and wrap rollbacks in eval calls for further debug. Also enable exclusive transaction in toggle_asset_lock
    * Fix wrapping of parser results (#1695)
* Tue Jun 19 2018 coolo@suse.com
  - Update to version 4.6.1529433451.a70c6e82:
    * Remove running_or_waiting method
    * Remove waiting state that was leftover from 5e65496f
    * Ensure proxy is connected to os-autoinst in devel test
    * Allow status as a ws_proxy command
    * Make waiting for paused more robust against disconnects
    * Remove unused parameter in wait_for_developer_console_contains_log_message
    * Let the web socket console automatically reconnect
    * Ensure ws connection won't timeout in fullstack tests
    * Improve check for developer console in fullstack test
    * Remove link to developer console
    * Use docker image from OBS (#1685)
    * Let tmpfiles.d create the mount point "share" (#1689)
    * Add basic barrier documentation
    * Improve documentation about mutexes
    * Remove $isodir from Utils (only used in tests)
    * Remove /tests/X/iso route
    * Remove hdddir and otherdir from Utils
    * Fix waiting for development session
    * Don't fake D-Bus when running the devel fullstack test
    * Propagate os-autoinst URL from worker to web UI
    * Fix CSS for developer console
    * Fix path for liveviewhandler in Apache config
    * Adapt execution of developer test to latest changes
    * Fix perl critic error
    * Open the 2nd window/tab in devel mode test correctly
    * Handle errors happening before dev session correctly
    * Add unit test for developer mode
    * Remove unneccassary D-bus env for livehandler
    * Refactor live view handler to use regular methods
    * developer console: Handle case when port is NaN
    * Refactor full-stack.t and 33-developer_mode.t
    * Add test for developer mode to Travis test matrix
    * Add test for developer mode
    * Workaround broken syntax highlighting of full-stack.t in Kate
    * Allow to start Selenium driver directly via start_driver
    * Improve passing parameter to OpenQA::Test::Database::create()
    * Fix ID of developer session info
    * Increase inactivity timeout for openqa-livehandler
    * ws client: Broadcast messages to all JavaScript client
    * ws proxy: Try/catch only JSON decoding
    * Allow login as a 2nd administrator via fake auth
    * Make logout accessible via regular GET
    * Install service file for openqa-livehandler
    * Use transaction to delete development session
    * Move ws connection for developer session to its own service
    * Keep track of developer session, limit to one session per job
    * Validate commands before passing to os-autoinst
    * Make the websocket proxy route basically work
    * Allow to use websocket console for proxy route as well
    * Add basic structure for developer mode web socket route
    * Make fullstack test more verbose
    * Prevent warning in fullstack test
    * Test pausing and resuming jobs
    * Add web socket console for isotovideo commands
    * Display incomplete jobs in next&previous tab (#1682)
    * Update documentation with NAT configuration using firewalld (#1683)
    * Categorize UEFI PFLASH drives as HDD assets (#1684)
    * Try caching
    * Easier way to pass exit status from docker-tests
    * Change message level when cgroups cannot be created (#1681)
    * Fix typo in the travis.yml and fix the grep regular expression for the status checking (#1679)
    * Adjust popover margin on audit log (#1678)
    * Change from su to sudo in the docker image
    * Docker shell scripts cleanup
    * Allow where parameter for mutex unlocking (#1677)
    * Documentation for running tests in docker
    * Enable codecoverage
    * Add support for os-autoinst
    * Add DBUS support.
    * Force user permissions 1000 to be compatible with opensuse
    * Moved the DB from the host to the container
    * First release of the dockerfile to create container to run unit and integration tests
    * Remove job_set_running - as jobs are no longer waiting
    * Remove job_set_waiting - jobs aren't WAITING anymore
    * Remove current interactive mode
* Sat Jun 16 2018 coolo@suse.com
  - Add Dockerfile and entrypoint.sh for development container
  - Remove _multibuild to pass source validator
* Wed Jun 13 2018 marius.kittler@suse.com
  - Add files for livehandler daemon
* Mon Jun 04 2018 coolo@suse.com
  - Update to version 4.5.1528009330.e68ebe2b:
    * Remove uncovered as unused asset_list call (#1675)
* Thu May 31 2018 coolo@suse.com
  - Update to version 4.5.1527697506.2eedfb2e:
    * Add a little coverage to the admin/needle controler
    * Use the timestamp on admin/needles
    * Add migration to update the timestamp of the needle matches
    * Cascade set null to job_module IDs in needles
    * Add logggingPrefs to chromium to make sure we get browser logs (#1672)
    * Remove more references to first_seen
    * Remove job_module_needles table and first_seen_module_id
    * Remove scan_old_jobs job - no longer referenced
    * Drop Jobs::retry_avbl from DB
    * Scheduler: enable WAKEUP_ON_REQUEST by default and reduce default tick time (#1669)
    * Tidy previous commit
    * Reduce debug output for parser tests (#1668)
    * runcmd tests: handle differently-cased git error message (#1665)
    * Ignore cloned children during cluster calculation
    * Cancel the full cluster if a job fails
    * Rename jobs_to_duplicate to cluster_jobs
    * Add test case for cluster cancel (failing atm)
    * docs: WritingTests: Fix superfluous 'you'
    * docs: WritingTests: Add backend related test development tricks
    * docs: WritingTests: Split big section "Test development tricks"
    * Fix broken navigability with arrow keys in test details (#1664)
    * Fix test cases and make tests more reliable
    * Do not reuse scheduled jobs on cluster duplicate
    * Some sync between code and tests
    * Make Job::duplicate non-recursive
    * Always enable sql debugging if requested
    * Start the display with the current job
    * Small cleanup of variables
    * Extract create_clone from Jobs::duplicate
    * Remove support for retry_avbl
    * Remove limit option in next&previous tab UI
* Thu May 24 2018 coolo@suse.com
  - Update to version 4.5.1527149502.003be4d6:
    * Add error logging in gru (#1660)
    * Fix the alignment of the progress bars on group overview (#1659)
    * Add http-only config for nginx (#1526)
    * Disable needle selection if there's nothing to select
    * Reduce padding of lists in tool tips
    * Fix devider in job group navigation with Bootstrap 4
    * Allow specifying group for isos post by name
    * Fix DataTable error under route /tests/latest (#1656)
    * Exclude external links in 22-dashboard.t (#1655)
    * Add _GROUP filter to isos post
    * Update documentation for multimachine tests setup
* Thu May 17 2018 coolo@suse.com
  - Update to version 4.5.1526551139.04373a1e:
    * Fix triples in job templates documentation
    * Update documentation about isos post in client help
    * Enable client to restart jobs 'from test result overview'
    * Add API route similar to test result overview
    * Refactor composing search args for test overview
    * Update documentation about isos post in client help
    * Show job results in results tab (#1614)
    * Show all badges and build numbers (#1650)
    * Limit special rendering for text results to parser results
    * Test rendering text results
    * Make the layout use 100% width (aka 'fluid') (#1646)
    * Ignore profiling data generated by nytprof
    * Improve rendering text results in test details
* Fri May 11 2018 coolo@suse.com
  - Update to version 4.5.1526033850.1ad9148d:
    * Add _source field to every detail generated by parsers implementations (#1647)
    * Fix links to #live not starting live view (#1648)
* Sat May 05 2018 coolo@suse.com
  - Update to version 4.5.1525548058.3f6bb61a:
    * Avoid appending multiple runs with --nocleanup (#1644)
    * Limit number of tasks for limit_assets and limit_results_and_logs GRU tasks
    * Add test for GRU enqueue limit option
    * Update apparmor profile for worker (#1645)
    * GRU: Add support to limit enqueuing by task
    * Update unit tests for TAP parser
    * Mark test suite as failed if test steps have failed
    * Add information about openQA internal results
    * Update TAP format documentation
    * Remove dots from filename
    * Ensure that the details description is set
    * Use a single result to contain all the test steps
    * Update changes to TAP format
    * Temporary version of the parser for TAP still failing
    * Log a warning when step data is not found
    * Allow LTP parser to load files that contain special characters
    * Replace extra dots in the filenames (#1642)
    * Increase the required coverage to 88.8
    * Do not fail a pull request if there are unexpected changes
    * Use same width for each colored dep status span
    * Show parent and child deps on job page in nice tbl
    * Enhance unit tests for GRU TTL
    * Set 2 days of ttl for limit_assets and limit_results_and_logs when posting isos
    * Add unit test for GRU task TTL
    * GRU: Add TTL for Minion jobs
    * Use a smaller font for the 'ago time' to fix rendering (#1635)
    * Prefetch comment counts for /tests
    * Update bootstrap to 4.1.1 and fontawesome to 5.0.10
    * Do not load full application to generate assetpack data (#1628)
    * Improve the duplication tests (#1627)
    * Hide categories when filtering test details
    * Ensure needles directory exists in 18-tests-details.t
    * Require 'Selenium::Remote::WDKeys' in CPAN file
    * Add test for filtering test details
    * Allow filtering test details
* Tue Apr 24 2018 coolo@suse.com
  - Update to version 4.5.1524586233.92db89bc:
    * Add unzip-plain to AppArmor profile (#1629)
    * Use current SUSE Logo (#1626)
    * Avoid skipping dependencies when cloning jobs. (#1623)
    * Improve some details in t/ui/18-tests-details.t
    * Randomize GET /tests/99946#step/yast2_lan/1
    * Use usual prove flags on Travis as well
    * Hide failed modules on overview table for small screens
    * Fix positioning tooltips with Bootstrap 4 on overview page
    * Add Minion Link to navbar and move under admin
    * GRU: delete gru and deps on failure
    * Fix spacing of 'Build + Bars' rows on dashboard
    * Adjust padding and media break points for dashboard
    * Use exact same colors for cards/panels as before
    * Add unit test for job custom_module
    * Display GRU failure as job test module in openQA
    * Fix dropdown menus in fullscreen mode
    * Use full width in full screen mode
    * Make the gru service to be restarted on-failure
    * OpenQA::Task::* Die on fatal errors
    * Catch all tasks output also in case of error
    * Mark the jobs associated to the gru task incomplete in case of gru task failure
    * Adapt to new Minion::Job API introduced in Minion 9.0
    * Remove unused Data::Dumper import
    * Use Minion::Command::minion::job to get jobs list
    * Enable the Minion Admin interface under /minion
    * GRU/Minion: Take account of failures
    * Use gru enqueue in controllers and keep relation with minion jobs
    * Adapt test and fix leak of memory
    * Gru: get dsn from DBI for Minion
    * Move GRU tasks to Minion
* Fri Apr 20 2018 edigiacinto@suse.com
  - Require Minion >= 9.02
* Thu Apr 19 2018 coolo@suse.com
  - Update to version 4.5.1524056562.74e334c1:
    * Close candidate menu after selection
    * Fix positioning of dropdown icon under Firefox
    * Fix handling multi-tag tests
    * Adjust UI tests to handle new candidates selection
    * Implement full diff
    * Allow to show just the screenshot again
    * Add shortcuts to custom combo box
    * Make style for result preview part of openqa.scss
    * Use customized bootstrap dropdown instead of combo box
    * Workaround issue when clicking menu item in 21-admin-needles.t
    * Port card in overview correctly to Bootstrap 4
    * Use same link color as before
    * Make badges look like before
    * Adjust colors
    * Fix paging of tables for running and scheduled jobs
    * Remove symlinks for Glyphicon fonts
    * Fix UI and fullstack test after Bootstrap 4 migration
    * Adjust media breakpoints
    * Fix grammar in tour
    * Upgrade tour to Bootstrap 4
    * Restructure stylesheets
    * Fix live-view and other small issues under Bootstrap 4
    * Make it look more like before under Bootstrap 4
    * Fix permanentely moved links on dashboard
    * Fix overall appearance with Boostrap 4
    * Fix filter panel on the main page
    * Patch bootstrap theme to be a little more like it was before
    * Remove hidden class
    * Port the navbar to bootstrap 4
    * Start to migrate to bootstrap 4
* Fri Apr 13 2018 coolo@suse.com
  - Update to version 4.5.1523608608.fca0aa46:
    * Enforce sorting the results returned by the sql query to use in is_deeply (#1621)
    * Remove dead code in Worker/Jobs.pm
    * Update current test module details when cancelling running job
    * Prevent failures in worker reset_state() (#1618)
    * Group candidate needles by tag (#1606)
    * Test image selection of needle editor (#1617)
    * Fix 'Take image from' selection in needle editor (#1616)
    * Refactor needle editor code
    * Fix showing needle editor when no tags present
    * isotovideo: wrap log_ calls with eval
    * Require latest RWP
    * Start isotovideo inside a container using cgroups
    * Checks if failure status file exists before trying to slurp it
    * tests: cover case when one of the cluster jobs already running
    * Consider running jobs in filter_jobs
    * Fix fullstack test in case /usr/bin/isotovideo is present
    * Limit showing new needles to the 5 most recent ones
    * Use 'new' prefix when showing new needles
    * Add documentation about showing new needles in editor
    * Improve tests for needle editor
    * Show errors/warnings/info in needle editor with consistent margin
    * Show added/updated needles in editor
    * Add database entry for needles when saving via editor
    * Simplify save_needle_ajax code
    * Extend needle table with tags and timestamps
    * Capture serial patterns documentation
    * Don't show configure button for untracked assets
    * Fix mojo not handling max_size_limit when is a transaction
    * Allow optional overwrite of the productlog request depth with a query parameter (#1601)
    * Enable JSON representation of the test overview (#1600)
    * Add asset size limit option
    * Return reference for test result file lists
    * Make OpenQA::Client::Archive property of OpenQA::Client
    * Remove chdir that caused errors when downloading test files
    * Add file _download_file_at method for logs and uploaded logs
    * Move progress monitor code to a separate fuction
    * Ensure that uploaded test logs can be downloaded
    * Add first version of OpenQA::Client::Archive
    * Move test_uploadlog_list and test_resultfile_list to the model
* Fri Apr 13 2018 edigiacinto@suse.com
  - Use Minion for GRU tasks, this requires Minion and Mojo::Pg as dependency
* Thu Apr 12 2018 marius.kittler@suse.com
  - Fix handling UTF-8 when executing make install
* Thu Apr 12 2018 marius.kittler@suse.com
  - Fix handling UTF-8 in update-cache.sh
* Sat Mar 10 2018 coolo@suse.com
  - Update to version 4.5.1520515419.c3df6f91:
    * Update the chromedriver url from 2.33 to 2.36
    * Allow saving needles for OS with dots in the version
    * docs: Clarify some serial terminal terminology and other elaboration (#1596)
    * Do not reset the api version just because the worker is offline
    * Fix scheduler comment - now default MAX_JOB_ALLOCATION is 80 (#1595)
    * Always retry until chunk is uploaded and retrials exhausted (#1594)
    * Refactor and add error test
    * PARALLEL_CLUSTER is no more
    * Adapt scheduler_full test
    * Avoid to re-consider the jobs that are being allocating in a round
    * Do not take account of spaces in PARALLEL_WITH
    * Exclude allocating jobs from prefer_parallel cut
    * Consider allocating only when we have them
    * Bump MAX_JOB_ALLOCATION default to 80
    * Exclude allocated when blocking dependencies
    * Consider the jobs allocated during the round as running in prefer_parallel
    * Prevent cluster tests to be allocated if their group is not allocated
* Tue Mar 06 2018 coolo@suse.com
  - Update to version 4.5.1520100590.2279151e:
    * Fix sort order of the review comments (#1593)
    * Expand the serial terminal console documentation (#1586)
    * Emit openqa_job_create events when an ISO is posted (#1584)
    * Replace die for 500 code and move global constants to OpenQA::Constants
    * Avoid circular dependencies when running the tests.
    * All the available free workers need to have the same websocket interface version
    * Move the interface verification to the worker ack
* Sat Mar 03 2018 coolo@suse.com
  - Update to version 4.5.1519929327.f726adcc:
    * Enable wrapping cells in overview table (#1591)
    * Perltidy
    * Protect during collected unsubscription
    * Prevent to determine job status from collected event when timout expires
    * Remove check backend timer
    * Fix check_backend detection
    * cpanfile: require at least Mojo::IOLoop::ReadWriteProcess 0.19
    * Adapt jobs tests - we are not dying anymore
    * Don't fear the (sub)reaper
    * Add AMQP doc
    * Lock tidy version
    * Make prove verbose
* Tue Feb 20 2018 coolo@suse.com
  - Update to version 4.5.1519128406.810fb68b:
    * Show correct port for created job (#1578)
    * Use rwp also to call rsync (#1585)
    * Force a restart when the children or grand-children processes die
    * OpenQA::Parser::Format::JUnit mark testsuite failed if one of testcases fails
    * Replace the exec call with ReadWriteProcess module
    * Add use Mojo::DOM in JUnit and XUnit Parser (#1580)
    * Use the generated Mojo::URL as Client base_url
    * Add get_piece() in OpenQA::File to ease writing of downloader class
    * Add test for OpenQA::Files's prepare()
    * Make integration tests of uploader with fixed chunk size
    * Fire events inside subprocess before and after chunk processing.
    * Move uri checks inside common function in OpenQA::Client::Handler and guard from not configured scheme in host
    * Add test to check if retrials numbers are matching
    * Use subprocess for potential loop blocks
    * Adapt workers to error handling
    * Add tests for OpenQA::Client::Upload retrials on failures, and events propagation
    * Emit errors on OpenQA::Client::Upload
    * Swap multi-chunk uploader in worker with OpenQA::Client
    * Make OpenQA::Handlers EventEmitter(s)
    * Split OpenQA::Client
    * Wipe out content of written chunk, try only weak check and back to Storable
    * Do not always perform total cksum
    * Drop Mojo force to File asset, display stats of uploaded chunks
    * Write as we receive in a temp file
    * Avoid to relay too much on the serializer
    * Use C backend to read whole file when computing total cksum
    * Enhance error detection
    * Allow to chunks to dynamically grow and shrink
    * Make total checksum verification run faster
    * Let specify chunk size in config file, and default to 1000000 bytes
    * Also add API endpoint to inform of upload status, adapt tests
    * Do not make split() to load the file
    * Pass asset option in multichunk upload
    * Create empty file before writing it if doesn't exist
    * Try to swap current uploader with multi-chunked one for assets
    * Add spurt to OpenQA::Files
    * Add write_verify_chunks() and write_chunks to OpenQA::Files
    * Add methods to verify against chunks, also add test when joining/verifying in-place
    * Add serialize/deserialize also to single result of parser
    * Add OpenQA::File, wraps Mojo::File and adds seek capabilities
    * Add worker version check on the server. (#1552)
    * Add basic test for OpenQA::WebAPI::Description
    * Add POD documentation to Controller/API/V1 packages
    * Test 27-errorpages.t with a predefined API desc
    * Replace Pod::Tree for Pod::POM in WebAPI::Description
    * Add POD documentation to Controller/API/V1 packages
    * Move API description methods to its own package
    * Add POD documentation to Controller/API/V1 packages
    * WebAPI: Add API description from Controller's POD
* Sat Feb 10 2018 coolo@suse.com
  - Update to version 4.5.1518003872.3977d2f5:
    * Run perltidy again (#1577)
    * Fix perltidy complaints (#1576)
    * Give 404 rather than 500 on invalid asset route (#1575)
* Tue Feb 06 2018 coolo@suse.com
  - Update to version 4.5.1517920216.2250682a:
    * Take latest version of Selenium::Remote::Driver (#1570)
    * Big rework of the GRU limit_asset task (#1569)
    * Fix broken links in openQA documents
    * Update Installing.asciidoc
    * Add pager for comments on group overview (#1561)
    * Add help box for group filter
    * Fix testsuite descriptions if default config not present (#1554)
    * Test subgroup filter and form
    * Allow to expand nested groups by default
    * Add filter for subgroups
    * Check qemu pid before starting job (#1565)
    * Require < 1.21 of Selenium::Remote::Driver
    * Downgrading selenium drivers during test phase
* Tue Jan 30 2018 coolo@suse.com
  - add fonts for chromium test suite - and remove currently broken
    tests (https://progress.opensuse.org/issues/19652)
* Tue Jan 23 2018 coolo@suse.com
  - Update to version 4.5.1516716144.98db9c99:
    * Improve error handling in group overview (#1562)
    * Do not remove forwarded-for=https headers (#1558)
* Sat Jan 13 2018 coolo@suse.com
  - Update to version 4.5.1515767133.56cd6ee5:
    * Support nested OpenQA::Parser objects
    * If no parser format is supplied, return a OpenQA::Parser::Format::Base object
    * Add POD documentation for OpenQA::Parser::Result::OpenQA
    * Add documentation for OpenQA::Parser::Results and move search() in proper class
    * Move search_in_details() in a new class that inherits from OpenQA::Parser::Results as it is openQA specific
    * Add documentation of OpenQA::Parser::Result
    * Move methods and attributes from Parser to Base format
    * Simplify spec format definition and move common displayed fields to openqa specific result classes
    * Drop support for creating collections with package global variable (useless now)
    * Make possible to upload in all the supported format and add tests for it
    * Add other tests, bring back coverage and fix wrong Node val() assigment
    * Return a OpenQA::Parser::Result::Node object when getting unstructured data from result
    * Make parser now really recurive, add also support for nested data structure with unit test
    * Make LTP parser tests output compliant to openQA tests results
    * Run parser test in parallel
    * Add possibility to store / serialize file content too within the parsed result
    * Add test to check DB consistency with parser extracted results
    * Move format specifications to separated namespace
    * Add XUnit tests
    * Add basic XUnit parser and schema
    * Clean LTP and include schema inside parser file
    * Add support for nested Results collections (required for XUnit)
    * Use functional interface in exposed api
    * Make collections serializable for unstructured data
    * Add accessor for unstructured data
    * Ask to include result only if the specific parser can
    * Move include_result option to specific parser that needs it
    * Provide also functional interface
    * Serialize single Results object as seen by to_hash() and add tests
    * Add tests when parser errors
    * Support hashifications of unknown objects
    * Add unstructured data test
    * Add reset method to parser, add and cleanup tests
    * Make serializing possible for collections with different OpenQA::Parser::Results objects
    * Add possibility to export/import the Parser to JSON, add also tests
    * Add serialization tests for junit spec
    * Tidy OpenQA::Parser::Result
    * Hide name field in JSON encoding of OpenQA result - but keep serializing it
    * Add example of new format specification for LTP
    * Simplify LTP spec definition even more
    * Get hash representation automatically of attributes if they can be rendered as hash
    * Add backword support for v2 format and add unit tests
    * Rename subtest to avoid Perl 5.18 complaints
    * Refactor write of parser result data
    * Add optional extra list that can be filled by type spec parser
    * LTP specification: Environment is optional inside result in new format
    * Add support to serialize/deserialized nested data structure
    * Add serialization capabilities to parser, and add tests
    * As classes are representing merely what's the json content, include them in the LTP module file
    * Add test data example for LTP results format
    * Add support for LTP specification in OpenQA::Parser
    * Generalize parser results, and subclass to specific implementations
    * Adapt parser tests, since now default value for script is 'unk'
    * Generate test module result from parsable extra_tests
    * Parser: return unk for test script if does not exist
    * Add search between parsed tests, link results and tests
    * Draft for JUnit parser
    * Prevent worker status selection to sort (#1555)
    * Unify code for scheduled/running table and fix sorting (#1556)
    * Remove leftovers in t/api/02-assets.t (#1557)
* Tue Jan 09 2018 coolo@suse.com
  - Update to version 4.5.1515509269.fa07a084:
    * Remove assets from disk when deleting database entry (#1553)
* Thu Dec 21 2017 coolo@suse.com
  - Update to version 4.5.1513750232.be133588:
    * Add basic setup of multi-machine worker (#1544)
    * Allow deleting assets via web UI (#1551)
    * Deal properly with environment variables that can change logging (#1537)
    * Fix deletion of jobs referenced as last use of asset (#1549)
    * Show assets by job group
    * selenium test: Allow configuring mojo port
    * Split asset tables in used and untracked assets
    * Refactor data size rendering in JS and reduce precision
    * Set App mode in WebSocket server (#1548)
    * Fix repos gone too early: assign REPO_10 to jobs as well (#1547)
    * Retidy - Perl::Tidy 20171214 has different formatting (#1546)
    * Update installation steps for postgresql (#1538)
    * branding: openSUSE: Add Kubic (#1539)
    * Change the logs timestamp to ISO8601 (#1542)
    * Add documentation for postgresql migration (#1530)
    * Fully fix asset caching without test caching (POO #29208)
    * Fix job group update issue (#1533)
    * Hide worker properties if no login (#1534)
    * Switch to fontawesome 5 (#1531)
    * `limit_assets`: remove asset that breaks limit, not next one (#1536)
    * Remove all assets from DB that are gone (#1535)
    * Allow to query live data from api, adapt tests
    * Display additional information in the worker's table
    * Add panel and popover to show job detail
    * Make searchable field and fix DataTable loading
    * Add openqa-setup-db service that will create postgresql database (#1528)
    * Retrieve worker stats data
    * Do not query by default websocket server to display worker informations
    * Fix tests to expect new columns
    * Show size of assets exclusively kept by a group
    * Accumulate size of assets exclusively kept by a group
    * Document fast initialization of local tests (#1527)
    * Add column to groups with size of exclusively used assets
    * Also store if the asset is fixed in the DB
    * limit_assets: Use DBD::Pg directly for querying job asset
    * Check all columns in test for asset table
    * Show last use of asset in assets table
    * Ignore chromedriver logs
    * Show asset size
    * Write info about assets kept during cleanup to db
    * Improve comments in limit_assets
    * Fix PRJDIR error
    * Add support for colons on worker class
    * Add WORKER_CLASS to job_list filter
    * Fix caching of assets without caching of tests (#1521)
    * Accept a lower coverage - we removed code
    * Move worker log test to 24-worker.t
    * Schema.pm: Remove unused functions (increase coverage)
    * Remove SQL files for SQlite and for 2016
    * Have our services require postgresql server to be up
    * Adopt generate-packaged-asset to use postgresql
    * Import log_error in OpenQA::IPC
    * Test: increment unstable_worker ticks and wait for each one to be ready
    * Remove more traces of Sqlite support
    * Provide t/test_postgresql to setup a temporary postgresql
    * Fix more test cases
    * Prepare a proper DB for the scheduler full test
    * Fix t/ui/22-job_group_order.t by providing sort_order in fixtures
    * t/ui/13-admin.t: Postgresql sorts RAID at the end
    * Sort table settings by key to have reliable tests
    * t/api/02-iso.t: Do not rely on hardcoded job number
    * Give WebSockets server its assets
    * Sort the previous jobs in worker table by ids
    * Skip all tests requiring a database
    * Test fixtures: restart the postgresql sequence
    * Fix t/17-build_tagging.t not to depend on Sqlite specifics
    * ui/04-api_keys.t: Don't rely on ids in fixtures
    * 14-grutasks: don't rely on DB sort order
    * Drop sqlite3 support
    * branding: Update SLE staging links (#1523)
    * Use log_info for worker activities (#1519)
    * branding: openSUSE: Add caasp (different bugzilla naming variant) (#1522)
    * Tidy the sources
    * Do not cast to int worker_status timer
    * Propagate error on IPC dispatch call
    * Use WORKERS_CHECKER_THRESHOLD to detect dead workers as well
    * Remove printing to debug the result of safe_call
    * Reduce OpenQA tests verbosity
    * limit_assets: don't wipe assets for PENDING jobs (#1518)
    * Allow same group name within different parent groups (#1507)
    * Apply log level correctly (#1516)
    * Check if job is valid before starting working on it.
    * Upload workers log to the webUI (#1502)
    * Only test basic tests on perl 5.26 (#1512)
    * Remove IDs from fixtures if they are in sequence (#1513)
    * Move the $shared_dir to setup_share_dir
    * Print project directory upon worker's init failure
    * Fix documentation generation script
    * Avoid warnings during test runs (#1511)
* Wed Dec 06 2017 coolo@suse.com
  - Add local-db subpackage to create local postgresql database for
    ease of use
* Tue Nov 28 2017 coolo@suse.com
  - Update to version 4.5.1511814842.53907890:
    * Make barrier option to automatically destroy the barrier if jobs belonging to it fails (#1498)
    * Improve web editor (#1510)
    * Remove outdated imports of JSON module (#1509)
    * Use Cpanel::JSON::XS in step/edit.html (#1508)
* Mon Nov 27 2017 coolo@suse.com
  - Update to version 4.5.1511709996.0670f622:
    * Use OPENQA_TEST_IPC for 12-admin-workers.t (#1506)
    * Poll status less often not to stress the server
    * Adapt coverage threshold
    * Mark workers dead when they disconnect from WS
    * Make full stack test more robust by adding more assertions
    * /tests/overview: Change sorting to show all machine variants together (#1489)
    * Use Cpanel::JSON::XS directly to avoid overwrite mess
    * Extend apparmor permissions for /usr/share/openqa/lib/** (#1504)
    * Test multiple perl versions in travis CI
    * Ignore specific 404 errors in the javascript console
    * Click away the feature tour in full stack
    * Make 21-admin-needles more robust
    * Clean VHD and VHDX images in cache
    * Treat VHD and VHDX images as HDD assets
    * Replace logrotate config with what we use in production (#1500)
    * Fix function names in ui tests
    * Rename PhantomTest to SeleniumTest
    * Remove support/work arounds for phantomjs
    * Use headless chrome instead of phantomjs
    * Use proper name and directory for PhantomTest
    * Update Cache documentation (#1495)
    * Make path of changelog configurable via config file
    * Add changelog for web UI
    * Avoid creating useless commits (#1497)
    * Add _ONLY_OBSOLETE_SAME_BUILD, _NOOBSOLETEBUILD -> _NO_OBSOLETE
    * Multiple loggings channels
    * Log Uniformization
    * Make sure /tests/overview shows test suite descriptions for all machines
    * Display job name on dependencies list
    * Worker: use population as scale_factor
    * Add websocket server test to cover errors when updating worker seen status and population update
    * Make threshold for worker_checker a constant, and tight the bond between the status timer and the timer for checking inactive workers
    * Use in_range from OpenQA::Utils in scheduler-full test
    * Best effort to let know worker population of different WebUIs
    * Move worker configuration reading to Worker::Common, making it easier to test and slim down the startup script
    * Remove already superseded default inactivity timeout from script/openqa-websockets
    * Remove keepalive message and introduce dynamic slot allocation for worker_status timer
* Fri Nov 24 2017 coolo@suse.com
  - adapt build dependencies to Cpanel::JSON::XS
* Wed Nov 22 2017 coolo@suse.com
  - replace phantomjs with chromium/chromedriver
* Sat Oct 28 2017 rd-ops-cm@suse.de
  - Update to version 4.5.1509097496.8b8e8e20:
    * Prevent use of job_module_stats when showing jobs of worker
    * Fix sorting in table for previous jobs of worker
    * Remove all remaining uses of job_module_stats
    * Fix accessing job module stat 'unk'
    * Worker: Wrap asset_lookup() query in eval/if
    * Add API description for worker route
    * docs: Prevent parsing of '#' as markup
    * Allow admins to fetch the worker status by json
    * Fix name of the SUSE company
    * Prevent showing duplicated bugrefs twice
    * Fixing the package to build with newer assetpack (#1485)
    * Mention repos for Leap 42.3
* Thu Oct 26 2017 rd-ops-cm@suse.de
  - Update to version 4.5.1508961373.6d2e83a0:
    * Scheduler: Add option to deal with slow workers that could be detected as dead.
    * Scheduler: Handle stop/restart cleanly
    * Respect log level configuration even when no log file is set (#1413)
    * More prominent color for closed bug references, old ones for open bugs (#1412)
    * Scheduler: implement retrials before declaring a job not accepted by a worker
    * Scheduler: add option to wakeup when we receive new jobs
    * Adjust full-stack tests scheduler default values
    * API/Worker: Get updates from job that match the worker id
    * Revert "Permit a dropped test coverage for now" as we are covered now
    * Worker: send worker_id when updating setup status
    * Job: Return error messages when worker doesn't send id
    * docs: Move label and bugrefs doc from wiki
    * docs: Add description of closed issue visualization
    * Use OPENQA_TEST_IPC in more tests due to scheduler changes
    * Scheduler: add code comments, refactorize and simplify code
    * Include '.' in INC for 24-feature-tour.t (#1420)
    * Scheduler: Remove EXPBACKOFF option and default to binary
    * Scheduler: Remove shuffle option. Is new default now, if we don't shuffle free workers we might go into starvation since they can keep failing
    * Scheduler: schedule() now returns allocated jobs and failures
    * Websockets: distinct error while dispatching job over ws
    * Improve error if a worker cannot connect to a WebSocket (#1416)
    * Conflict no-cleanup worker with normal worker (#1417)
    * Scheduler: Add basic unit testing
    * Scheduler: remove retrials and workers cache
    * Scheduler: use another state for jobs that have been assigned but are not yet in running status
    * Worker/Websockets: Make worker send status messages, and websockets reaping jobs that are not matching states
    * Websockets: print details of messages received from unknown workers
    * Websockets: remove (now) misleading debug message
    * Worker: do not die in the loop when current_host is not set
    * Scheduler test: simulate unstable workers
    * Workers: collect error if we fail dispatching commands to websocket dbus service
    * Scheduler/WebSockets/Worker: update job state to running from worker responses
    * Scheduler: now job allocation checks are not needed anymore inside scheduler
    * WebSockets: use set_running when updating job status (#1426)
    * Add support for custom links in footer
    * Fix staging link for CaaSP
    * Worker: increase keepalive timer
    * Seperate footer links from footer legal part
    * Add 'report Bug' for OpenQA product
    * Scheduler: sleep when we have nothing to do
    * Adapt scheduler tests to new sleep mode
    * WebSockets: reset to schedule state if we detect stale assigned jobs
    * Websockets: set default appname - which is used in error templates
    * Websocket: wrap database transactions in try catch so we can debug dbus service errors
    * Create base for fullscreen mode on group overview site
    * Include just show latest comment feature
    * Add disable comments feature in group overview
    * Add fullscreen to group overview and rewind comments part
    * Fix uninitialized value error and typos
    * Add autorefresh for builds and comments in group overview
    * Make auto refresh rate adjustable
    * Fix sporadic problem of systemd service start (poo#21004) (#1430)
    * Add description part for api routes at not_found page
    * Add a quick tour to openQA
    * Enable feature tour by changing database entry
    * Adjust ui test
    * Replace old DEPENDENCIES.txt references to cpanfile (#1423)
    * Templates: improve error handling in running_table (#1427)
    * Utils: Flush log output when we don't use Mojo::Log
    * WebSockets: finish connection when we don't have the worker registered
    * Workers: print debug output when connection is closed
    * WebSockets: enable required plugin on setup
    * Add tests for WebSocket disconnection handling
    * Add missing figure for closed ticket labels
    * Prevent use of job_module_stats when showing jobs of worker
    * Fix sorting in table for previous jobs of worker
    * Remove all remaining uses of job_module_stats
    * Fix accessing job module stat 'unk'
    * Treat ASSIGNED state as in execution
    * Subscribe start_job/stop_job events before we call send on websocket connection
    * Worker: reset internal state if we fail contacting the WebUI
    * Worker: Do not cleanup if pooldir is not set
    * Add support for multiple distri/version/group on /tests/overview
    * Websocket: Do not kill connections due to inactivity (meant mostly for browsers)
    * Dereference hashrefs before using 'keys'
    * Check whether description available before printing it
    * Cover the websocket server to avoid uncovered changes with CI builds
    * Include all relevant distros when linking overview
    * Use Mojo::Log for logging worker's output
    * Refactor worker status messages
    * Cover main OpenQA.pm, which was left with low coverage
    * Changes the log level to debug if --debug or --verbose is applied. Default is info level.
    * Fix use of undefined $email by using default icon instead (#1444)
    * Sync needles when caching is enabled
    * Use cache_tests from isotovideo engine
    * Better reflect job execution through states
    * Replace tabs with spaces and fix indentation.
    * Ensure CSS classes are used for Datatables
    * Add setup state to be polled and tidy up
    * Test 404 error page
    * Ensure use of symlinked applications for clone_job/dump_templates/load_templates
    * Trim less text in overview tables by using CSS instead of custom code
    * Disable live log/terminal by default
    * Untie live stream from live log
    * Make details the default tab also for running jobs
    * Ensure streams for live view are only consumed when tab is active
    * Allow info/debug messages in javascript_console_is_empty
    * Switch to live view by default in full stack test
    * Move read_test_modules to OpenQA::Utils
    * Add support for getting test results as json
    * Fix missing openQA::Client import introduced in 7c91a962
    * Improve documentation for contributors
    * Log IPC errors
    * make Makefile non-bash environment friendly (#1465)
    * Add log function log_fatal
    * Allow filtering by result on 'All tests' page
    * Add query param for filtering 'All tests' table by result
    * Adapt bugzilla link to new SLE15 installer (#1466)
    * Fix filtering by result on 'All tests' page for some results
    * Test enabling result filter on 'All Tests' page via query
    * Fix regression introduced in https://github.com/os-autoinst/openQA/pull/1460
    * Ignore .pc directory for perltidy (#1472)
    * Fix missing log_warning import on IPC.pm (#1473)
    * Cherry pick perltidy fixes from @henrich (#1475)
    * docs: Add hint about performance impact of VM snapshots (#1474)
    * Create ResourceAllocator DBus service
    * Split fullstack tests in different build matrix
    * Create exists_worker in OpenQA::Utils
    * Use schema from ResourceAllocator instance, refactor to use exists_worker
    * Adjust scheduler full tests after the split
    * OpenQA::ServerStartup: set also appropriate handle when setting up logging, since now FakeApp has STDOUT as default handle
    * Add safe_call to OpenQA::Utils
    * Switching to safe_call in ResourceAllocator
    * Make job update take into account of ASSIGNED and SETUP state
    * Worker: Reset state also when we loose current_host (due to failure contacting webserver)
    * Return 0 by default on worker's try_lock_asset()
    * Worker: Wrap asset_lookup() query in eval/if
    * Make heartbeat timeout for rabbitmq configurable (#1479)
    * Add API description for worker route
    * docs: Prevent parsing of '#' as markup
    * Allow admins to fetch the worker status by json
    * Fix name of the SUSE company
    * Prevent showing duplicated bugrefs twice
* Fri Aug 18 2017 okurz@suse.com
  - Provide clone-job, dump-templates, load-templates as symlinks in bin-path
* Wed Aug 02 2017 rd-ops-cm@suse.de
  - Update to version 4.5.1501694730.25c355a8:
    * OpenQA::WebAPI::Controller::API::V1::Job: catch errors and return no jobs when we fail to contact dbus
    * Schedule jobs without polling
    * Make workers only accept one job from one webui - also check if we dispatched the job correctly to the worker
    * Update worker seen status from ws keepalives if thought dead
    * Set to running just when we are sure the job got dispatched to the worker
    * Improve error handling when we fail resetting scheduling state
    * Do not use in the workers next_tick anymore when accepting the job
    * Fix the keep alive timer handling in worker
    * We need more timers to be host specific
    * Scheduler: Be more strict with job states
    * Apache: SetEnv proxy-nokeepalive 1
    * Permit a dropped test coverage for now
    * Scheduler: further optimizations and refinements
    * Get rid of notify_workers, and from the signal that was associated to it in the dbus scheduler service
    * Remove job grab from the API
    * Fix bugzilla links for CaaSP (#1395)
* Mon Jul 31 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1501432550.4c72a17b:
    * Some more permissions required for power8 worker (#1405)
    * schema: Add job module statistics to jobs table
    * Use job module stats from jobs table in 'All Tests'
    * Add . to INC for tests that use local modules (perl 5.26 doesn't) (#1406)
    * Update job module stats when module inserted/updated
    * Fix typo in networking documentation (#1407)
    * Add the job module statistics to the migration code (#1409)
    * SLE 'LeanOS' corresponds to 'Server' on bugzilla.suse.com (#1393)
    * Dynamic feature infos for users (#1388)
* Sun Jul 30 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1499449966.bd9ee915:
    * Replace die with log_error
    * Avoid edge case of asset sizes being incorrect.
    * Cache: resolve to current host when host URL cannot be resolved (#1352)
    * job templates: Fix removing options when finalizing row
    * job templates: Fix check for test selection when finalizing
    * job templates: Improve coding style in post
    * Fix bullet points in dashboard (#1356)
    * Provide a default (0) to max_rss_limit so that the config actually works (#1358)
    * Cache: Make each log message uniquely identifiable
    * Allow plugins to load specific configurations
    * Remove auth_config from OpenQA::WebAPI::Auth::*
    * Add fullscreen base into project
    * Add form entry for fullscreen view
    * Fix navbar to not hide if dropdown selected
    * Change help popover description in filtersection
    * Correct main controller and index page
    * Add error message for missing webserver
    * Also recognize kde bugrefs in Utils.pm (#1366)
    * Add link to CaaSP staging (#1360)
    * Also recognize fdo bugrefs in Utils.pm (#1367)
    * Database change for bug status
    * Improve assets log messages (#1365)
    * Documentation for GRE (#1369)
    * Extend sorting by time to parent group overview (#1362)
    * Add workaround for PhantomJS in needle edit test
    * Fix typo workround -> workaround
    * Prevent bugref_to_href replacement at end of title (#1372)
    * Refactor rendering response for server-side DataTable
    * Refactor server-side code for audit log
    * Refactor server-side code for previous jobs of worker
    * Test takeover of exclude areas in needle editor
    * Fix wrong HTML, input must not contain text
    * Show exclude areas in needle diff
    * Show exclude areas in needle editor always
    * Document areas
    * correct typo (#1379)
    * Enable INTEGRATION_TESTS (#1384)
    * Retrigger download retry for incomplete downloads
    * Fix perl structure printed in the logs
    * Check when asset has been removed by hand
    * Changing from using pure perl to Mojo::Asset::File
    * Allow the cache to use a configurable sleep time
    * Unlock the asset before the next download retry
    * Add unit test for cache
    * Add 25-cache.t to testrules.yml
    * Set sleep_time to 5 again
    * Remove unnecesary code from cache tests
    * Refactor server handling to avoid race conditions
    * Improve handling of logs and directories
    * Improve cache tests
    * Improve server_start and port handling
    * Remove unnecesary calls to Mojo::Asset::File
    * Fix test directory to share/tests (#1383)
    * Sort the failed modules on their timestamp not by their name (#1378)
    * Add test for "Server unavailable"
    * Inform user when OpenID login fails with no message from OpenID provider (#1380)
    * Increase the grace timeout to have uploads finish (#1385)
    * Notify the workers only when there are no errors
    * Create jobs from settings within a transaction
    * Increase information in logs if a wrong secret is used (#1374)
    * Avoid OpenID login to clutter log files (#1386)
* Tue Jun 20 2017 okurz@suse.com
  - Exclude not supported and not building i586 in spec file rather than project
    config
  - Use internal macro for %setup
  - Cleanup description and doc section
* Wed Jun 07 2017 coolo@suse.com
  - disable tests on tumbleweed as they hang - need to debug this
    regression first
* Thu Jun 01 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1496302635.5e9b3f9:
    * Replace die with log_error
    * Avoid edge case of asset sizes being incorrect.
    * Cache: resolve to current host when host URL cannot be resolved (#1352)
    * job templates: Fix removing options when finalizing row
    * job templates: Fix check for test selection when finalizing
    * job templates: Improve coding style in post
    * Fix bullet points in dashboard (#1356)
    * Provide a default (0) to max_rss_limit so that the config actually works (#1358)
    * Cache: Make each log message uniquely identifiable
* Tue May 30 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1496150882.49e14ecd:
    * Avoid OpenQA::IPC::ipc being called premetaure (#1185)
    * Add $prjdir prefix for relative filenames in Needles
    * Add option to change $prjdir on the fly
    * Adapt timers helpers for multi-hosts
    * Make api_call not to recurse into IOLoop, add callbacks
    * Adapt worker registration to multihost
    * Adapt jobs helpers to non recursive api_call and multihost
    * New multihost workers.ini
    * Per-host working directory support
    * Multihost commands parsing
    * Adapt worker tests for non-blocking api_call
    * Use OpenQA::Utils log functions in worker
    * Use share/factory directory instead of factory link
    * Replace dirs parsing by one liners
    * Remove dead code
    * Use testcasedir helper instead of removed static
    * Add some unit tests
    * Fix generate/packed-assets not to require dbus session (#1186)
    * Avoid 404 errors on scheduled jobs
    * Take 4 travis jobs as success
    * needle editor: Validate needles/tags in JavaScript (#1189)
    * Reduce the number of travis jobs (#1188)
    * Duplicate the job if the worker is terminated
    * Simplify selenium using code
    * Do not do any jsonfile path processing
    * Prevent uninit ws variable warning
    * Pass query params as params key for duplicate
    * Allow api_call to be called without callback
    * Change the Mojolicious version requirements (#1195)
    * Fix needle path check (#1196)
    * Fix the 12-needle-edit test to leave the data in place
    * Import log_error before using it
    * Introduce project share directory variable
    * Adapt test to use share directory
    * Switch test distro from pitux to tinycore (#1203)
    * Fix last remnants of global url and ua usage
    * Add image upload to full stack test
    * AMQP: Declare exchange passive and durable (#1202)
    * Fix an error when job result is "setup failure"
    * Prepend sharedir when looking for needles with relpath (#1205)
    * Add full stack test for setup failures
    * Fix 24-worker.t
    * Fix build lookup for single groups (poo#15988) (#1204)
    * Allow override of the usual setting precedence order (#1200)
    * Fix undefined warning for _stop_job_finish (#1207)
    * Shared worker documentation
    * Document referrer configuration and label:linked
    * Fix job_timeout timer not being removed after stop_job (#1209)
    * Add get_timer getter for worker timers query
    * Add tests if start_job set proper timers and stop_job removes them
    * Improve code preparing data for test overview
    * Synchronize 'TODO' filter with review badges
    * Add help popover for 'TODO' filter
    * Show help popover details link in new tab
    * Enhance jobs list in worker page (#1212)
    * docs: Ensure pool dir exists when starting worker manually (#1213)
    * Fix UI test skipping when modules not available (#1211)
    * Avoid creating duplicit dependencies (#1214)
    * Update documentation for a more obvious flow (#1218)
    * branding: Add casp reporting links (#1219)
    * Add notice to clone_job.pl help text (#1222)
    * Do correct DISTRI-VERSION case dir lookup
    * Fix AMQP SSL wide character JSON encoding (#1224)
    * Refactor test for scheduler dependencies (#1225)
    * Fix apparmor profile to let worker read from /other (#1228)
    * Update GettingStarted for some Fedora repo changes (#1229)
    * Fix time display regression introduced by f127654
    * Harmonize running/scheduled time string also in UTC
    * Show absolute time in tests list for finished as well
    * Fix typo and make vhost config more readable
    * Update Pitfalls.asciidoc
    * Add pitfall for fake authentication method
    * docs: Correct asciidoc syntax for pool instance table
    * clone_job.pl: Display description with examples on '-h', too
    * Update create_admin script
    * docs: Improve language of 'using snapshots' section
    * Fix synchronization of TODO with badges
    * Add link from test details to assigned worker
    * Fix bugzilla links as CASP was renamed to CaaSP
    * docs: Delete reference to inactive stable repo (#1230)
    * needle editor: Fix errors appearing in JS console
    * needle editor: Show new tags in own line
    * needle editor: Display all tags in the same way
    * Allow configuration of how builds are sorted in web UI
    * Add id to comments over API to allow referencing
    * Fix needle editor when taking matches is disabled
    * Fix openqa_web docker instance running
    * Update Dockerfile to host openQA on Leap 42.2
    * Change deprecated "MAINTAINER" instruction
    * Add instruction "LABEL version"
    * Use the default openID provider
    * docker: Remove pool volume unused by webui
    * Fix error when running the worker container
    * Fix dockerfile for webui
    * Fix dockerfile for workers
    * Update README.md for docker section
    * Document running selenium UI tests (under Leap) (#1250)
    * Make needle edit test case less specific
    * Prevent double machine tag output in 02-iso.t
    * Add option for 'isos post' route to deprioritize old builds rather than obsolete
    * needle editor: Format new tags bold
    * needle editor: Prevent adding empty tag
    * docs: Add documentation for 'triggering tests'
    * Harden loading of auth modules with whitespaces (#1253)
    * Allow redirects for clone_job requests (eg to ssl)
    * Allow annonymous read access to operator tables
    * Fix failing admin test
    * Fix bugzilla reporting links for CaaSP
    * [docs]: added documentation about setting up ssl (#1257)
    * client script: Don't encode URL twice (#1260)
    * Allow api_call to be called without callback
    * Add Cache
    * Enable caching on the worker
    * Improve Cache package and tidy up the code
    * Fix cache.db problems
    * Ensure the asset has the proper name
    * Add TESTPOOLSERVER variable for caching
    * Refactor to allow CACHEDIRECTORY to replace share directory
    * Simplify api_call nesting
    * Fix the ISO expansion for local assets
    * Let's set reasonable goal for codecov
    * Work on testing cache
    * Do not exclude .git from syncing
    * Harmonize the keys used for assets
    * Add newlines to log output
    * Improve cache directory
    * Catch errors on cache downloads
    * Fix perlcritic errors
    * We need Mojolicious 7.24 for max_response_size
    * Implement download_asset so we can actually test caching it
    * Remove -E option from flock - we do not check the exit status
    * Make sure assets in pool are handled correctly
    * Add support for multiple group, no build on /tests/overview
    * docs: Add hint about multiple groups, no build
    * Call rsync of tests in a child process and notify webui
    * Move OpenQA::Cache to Worker namespace
    * Trying to make workers.ini more descriptive
    * docs: Add explanation for job priority (#1262)
    * Schedule worker reregistration in case of api-failure
    * Add more logging to job notifications
    * Use host_port when parsing URL
    * Prevent various timer loops
    * Do job cleanup even in case of api failure
    * Ensure uploaded assets have correct perms (#1263)
    * Change $testpoolserver only if passed as option (#1264)
    * Set read permissions for downloaded assets (#1267)
    * Ignore module flag 'important' (#1266)
    * product log: Don't show actions when not at least operator
    * Make assets, workers and API help publicly available
    * needle editor: Fix inserting tag via middle mouse button (#1269)
    * Fix restarting jobs from worker page (#1272)
    * Merge 'Status' and 'Connected' columns in workers overview (#1273)
    * Add anchor for build results on index page (#1265)
    * Lower down quantity of automatic carryover
    * Add environmental variable to skip online tests
    * Be specific which text element we want to test
    * Fix hardcoded cache.db file
    * Fix assets not being removed
    * Force read_db after a write
    * Add subtest for Cache
    * Improve log output for label carryover
    * Ensure that label carryover is done correctly
    * Fix the recursive $db_file appending (#1279)
    * Tidy the code after last hot fix
    * Relax the regex for build values in tag: comments again
    * Don't obsolete jobs for VERSION-BUILD tagged builds
    * needle editor: Distinguish tag/area selection in check
    * needle editor: Test verification when not copying areas
    * Improve little triangle sign below a screenshot (#1285)
    * Add ignores for db.lock and phantomjs log (#1287)
    * Correct 'softfailed' reference to passed (obsoleted)
    * Ensure consistent naming of 'failed'+'softfailed' in all occurrences
    * Fix overriden shared $dir worker registration (#1291)
    * Add a Contributing section
    * Add explicitly index and current.pdf
    * Stop distinguishing softfailures
    * Fix typo 'parallel' (#1290)
    * Adjust grid wrapping in build tables (#1286)
    * Use space indendation consistently in javascript files
    * Delete w/s at EOL in javascript files
    * Add 'build-results' anchor for group-overview page, too (#1281)
    * Replace old 'important' behaviour with 'ignore_failure' (#1297)
    * Give failed screenshots back the red border (#1300)
    * Adjust test module flags on Details page for ignore_failure (#1299)
    * Document the 'norollback' flag in WritingTests (#1298)
    * Better error msg for openqa client (#1303)
    * Improve 'Downloading failed' message (#1302)
    * Refactor 05-scheduler-dependencies.t (#1306)
    * Shorten build-numbers with dots to prevent overlapping (#1305)
    * Fix "only tagged" for tags with version (#1296)
    * Do not upload empty serial_terminal.txt (#1274)
    * Makefile: Allow to skip checkstyle (#1304)
    * Fix missing space in log debug message (#1307)
    * Register job assets even if one of the assets need to be skipped (#1310)
    * Test whether admin table displays needles which never matched
    * Show needles in admin table which never matched
    * Improve logging in case of upload failure (#1309)
    * Improve product fixtures to prevent dependency warnings
    * Handle wrong/missing job dependencies appropriately
    * clone_job.pl: Print URL of generated job for easy access (#1313)
    * Allow lscpu to read all of /proc - but only lscpu (#1315)
    * clone_job.pl: Skip downloading generated assets in all cases (#1314)
    * Fix invalid HTML
    * Don't use name attribute on div element for markdown
    * Fix indentation in overview.scss
    * Fix showing long needle name in hover popup
    * Prevent DB exception when adding tests in job templates (#1318)
    * Remove duplicate "current step" (#1319)
    * Refactor Cache.pm to use SQLite instead of json
    * Update cache full stack test
    * Fix minor race condition
    * Increase test coverage
    * Use cache.sqlite instead of cache.db
    * Detect and set current version of openQA,  display it in the footer (#1316)
    * Add service file for workers with "no cleanup" (#1320)
    * Prevent tags from getting cut by long build numbers (#1321)
    * clone_job.pl: Fix generated job URL to be the receiving host (#1326)
    * Unlink existing asset symlinks on syncing (#1323)
    * Move OpenQA::Test::* modules to test directory (#1325)
    * Improve admin test (#1327)
    * Fix makefile syntax (#1328)
    * Avoid line break after h4 in midori and co (#1333)
    * Implement a config option to restart workers that grew too big (#1339)
    * Allow cache to handle 5XX errors and retry 5 times (#1337)
    * Inspect failed modules in /tests/overview (#1335)
    * Fix print() on closed filehandle $log (#1334)
    * Replace file_content() with Mojo::File (#1331)
    * Disable printing time when logging to STDERR
    * Add more tests to configuration parsing
    * Fix bugzilla reporting link for SLE-12-SP1 (#1332)
    * Make 'TEST' the only proper mandatory test setting (#1126)
    * Avoid unit test to write on source code directory (#1341)
    * Fix breakage introduced by https://github.com/os-autoinst/openQA/commit/659464d19b02e541f2529bd313c39681c71adfcf (#1343)
    * Add scheduler test to cover OpenQA::Scheduler::FakeApp (#1345)
    * Fix documentation publishing on gh-pages
    * Make sure a valid up-to-date license in all files
    * Fix doc generation - testapi (#1347)
    * Add unit test to fix codecov "uncovered changes" (#1348)
    * Add direct link to video position (poo#19300) (#1342)
    * Avoid github and use a CDN for chosen.jquery (#1350)
    * Correct Typo in Firewall config file (#1351)
* Thu May 18 2017 mlin@suse.com
  - Prerequire needed group nogroup
* Thu May 18 2017 slindomansilla@suse.com
  - Also provide systemd services for workers with '--no-cleanup'
* Thu May 18 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1495052041.c6a5bc94:
    * Remove duplicate "current step" (#1319)
    * Fix minor race condition
    * Increase test coverage
    * Use cache.sqlite instead of cache.db
    * Detect and set current version of openQA,  display it in the footer (#1316)
    * Add service file for workers with "no cleanup" (#1320)
    * Prevent tags from getting cut by long build numbers (#1321)
    * clone_job.pl: Fix generated job URL to be the receiving host (#1326)
    * Unlink existing asset symlinks on syncing (#1323)
    * Move OpenQA::Test::* modules to test directory (#1325)
* Sat Mar 18 2017 coolo@suse.com
  - bump mojo requirement
* Sat Mar 18 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1489864450.251306a:
    * Make sure assets in pool are handled correctly
    * Call rsync of tests in a child process and notify webui
    * Move OpenQA::Cache to Worker namespace
    * Trying to make workers.ini more descriptive
    * docs: Add explanation for job priority (#1262)
    * Schedule worker reregistration in case of api-failure
    * Add more logging to job notifications
    * Use host_port when parsing URL
    * Prevent various timer loops
    * Do job cleanup even in case of api failure
* Thu Jan 19 2017 santiago.zarate@suse.com
  - Add the openQA.changes file to be distributed as public/Changes on the web-ui
* Wed Jan 18 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1484732113.4fb90841:
    * Document filtering
    * Fix documentation generation (#1177)
    * Fix corner buttons (#1176)
    * utils: Add kernel bugzilla bugref (#1175)
    * Do not run tests for GH_PUBLISH=true
    * Mojolicious 7.19 has broken SSL support - blacklist it
    * Switch to CDN for fontawesome
    * Fix missing images in documentation (#1180)
    * Do not even run the coverage target if GH_PUBLISH is true (#1183)
* Thu Jan 12 2017 coolo@suse.com
  - bump requirements to Mojo and AssetPack
* Thu Jan 12 2017 okurz@suse.com
  - add Sort::Version requirement
* Thu Jan 12 2017 rd-ops-cm@suse.de
  - Update to version 4.4.1484213177.5ef2a6e4:
    * Add css class to click on action (#1147)
    * client: Support sending JSON data (#1150)
    * Test both phantomjs and chrome on travis
    * Exclude AssetPack >= 1.30 - it will break fonts
    * Sort build versions correctly (#1136)
    * Add optional profiling support using Mojolicious::Plugin::NYTProf (#1153)
    * Add tests for client script
    * Don't use config file as database lock file (#1157)
    * Fix build of the package: we need a db directory to lock now
* Thu Dec 22 2016 coolo@suse.com
  - remove YAML and Socket::IO::INET6 dependencies
* Wed Dec 21 2016 rd-ops-cm@suse.de
  - Update to version 4.4.1482329765.866bba8:
    * Improve buttons in interactive mode
    * Fix command API route
    * Synchronize INTERACTIVE and STOP_WAITFORNEEDLE_REQUESTED
    * Change the format for developing with snapshots (#1093)
    * Fix sorting of needle table (#1092)
    * Add short route to individual job results '/t:testid:' (#1089)
    * doc: fix typo (#1096)
    * Fix AMQP reconnect timeout config var (#1098)
    * Add AMQP connection error msg to log (#1099)
* Thu Dec 15 2016 coolo@suse.com
  - add new require on time::parsedate
* Thu Dec 15 2016 rd-ops-cm@suse.de
  - Update to version 4.4.1481828911.8296cb4:
    * Update worker apparmor file from production worker log (#1078)
    * Add brc (Red Hat Bugzilla) and bgo (GNOME Bugzilla) labels (#1083)
    * Auditlog: display event time on hoover
    * Auditlog: add page and rows query options
    * Switch audit log to server side processing
    * Use system user to create system events
    * Add new Time modules dependencies
    * Add page displaying single event
    * Improve search query parser to support multi-word queries
    * Don't bother with event data shortening
* Fri Dec 09 2016 coolo@suse.com
  - add bcond_with tests to run phantomjs optionally
* Fri Dec 09 2016 rd-ops-cm@suse.de
  - Update to version 4.4.1481216307.2d2b18a:
    * worker: Prevent use of uninitialized value (#1066)
    * Copy over policies from os-autoinst
    * Fix usage of qw(SINGLE_VALUE) in use statements
    * Rework websocket server (#1057)
    * client: Respect --json also in case of an error (#1068)
    * client: Set 'Accept'-header in any case (#1070)
    * Return 404 on status update for job without worker
    * worker: Abort job if considered dead by web UI
    * Improve misleading comment
    * Comment events: Drop unneeded fedmsg conditional, include id (#1065)
    * Improve log message when job considered dead (#1075)
    * Disable carry-over for job 'labels' to support new use cases (#1071)
* Mon Nov 28 2016 oholecek@suse.com
  - Do not package removed files script/migrate_images and backlog
* Mon Nov 21 2016 rd-ops-cm@suse.de
  - Update to version 4.4.1479741639.90bdf0f:
    * external_reporting: Fix differing header level in description (#1012)
    * Add test for parents on index page and parent group overview (#1015)
    * Show build tags on parent-level (#1018)
    * Add a 120 column limit to .perltidyrc (#1017)
    * Fix a few formatting mistakes and remove repetitive method calls (#1020)
    * docs: Update openSUSE repos to current supported (#1021)
    * Fix URLs in dashboard when version/distri differ (#1024)
    * Show submenus on click (#1025)
    * Update bootstrap to 3.3.7
    * Wait a bit in tests if there is an ajax call
* Tue Nov 08 2016 coolo@suse.com
  - update cache for bootstrap-submenu
* Tue Nov 08 2016 rd-ops-cm@suse.de
  - Update to version 4.4.1478599354.3d748dc:
    * Fix job group overview without description (#957)
    * Don't free worker before artefacts are uploaded (POO #14378) (#958)
    * Improve override needle test (#962)
    * Use textareas in test suite editor (#961)
    * Fix worker error reporting when asset cannot be found (#963)
    * Make .json easier to use and include more data (#965)
    * Add API routes for job group parents (#952)
    * Hide empty job groups from index page (#967)
    * Optionaly inherit command line variables in parent (#951)
    * Add gzip and rsync to worker's AppArmor (#968)
    * Only store md5_dirname if the image is in /images (#959)
    * Fix malformed HTML
    * Fix malformed HTML (#970)
    * Prepare CACHEDIRECTORY example in workers.ini and provide profile (#969)
    * Implement Drag & Drop group editor
    * Add support for github 'bugrefs'
    * t: Delete unused (disabled) 'use Test::Output'
    * t: Ensure proper output catching
    * Improve usability of job group property editor
    * Replace all '...' with '...' in web UI
    * Add assert_script_run description
    * Allow '@' in asset name (#979)
    * Fix list of needle tags in needle info popover (#977)
    * Allow worker profile to access fixed assets
    * Fix download of fixed assets from web UI
    * Reindent 01-jobs fixtures
    * Use url helpers to map the asset path to URL
    * Add help text using popovers, title and placeholder (#983)
    * Add missing argument for hmac timestamp validation
    * Give tests without fails a no-TODO tag (#960)
    * Trying to make peace with adamw over locate_asset
    * Add a repository as test fixture to test subpaths
    * Show tags on index page
    * Add API auth tests
    * Improve help popups
    * isotovideo: Remove redundant '|| undef' (#989)
    * branding: openqa.suse.de: Update staging to current SP3 (#988)
    * Show parent groups in navbar (#974)
* Thu Oct 27 2016 coolo@suse.com
  - have openqa_worker own /var/lib/openqa/cache
* Thu Oct 27 2016 rd-ops-cm@suse.de
  - Update to version 4.4.1477579540.21d4009:
    * Use textareas in test suite editor (#961)
    * Fix worker error reporting when asset cannot be found (#963)
    * Make .json easier to use and include more data (#965)
    * Add API routes for job group parents (#952)
    * Hide empty job groups from index page (#967)
    * Optionaly inherit command line variables in parent (#951)
    * Add gzip and rsync to worker's AppArmor (#968)
    * Only store md5_dirname if the image is in /images (#959)
    * Fix malformed HTML (#970)
    * Prepare CACHEDIRECTORY example in workers.ini and provide profile (#969)
* Sat Oct 22 2016 rd-ops-cm@suse.de
  - Update to version 4.4.1477110901.763fe71:
    * Step controller: split init into 2 functions
    * Fix coverage skipping files with 't/' in path
    * Test source view from running
    * Treat #details tab as all the others to fix back button
    * Add test for switching tabs in tests result view
    * Some fixes for the new results / running page
    * Fix SQL query to query important jobs
    * docs: Update OBS references
    * Upgrade to Leap 42.1, and fix apache2 starting problem
    * Live view: simplify drawImage
    * Be way more careful with history manipulation on results page
    * Treat # and '' the same for history management
    * Allow sha1sum for os-autoinst:2144a20c
    * Allow git for os-autoinst:d29266f
    * clone_job.pl: Add option '--skip-download'
    * Give the user better hints on what we expect for the expiry date
    * Do not create a link_post for reschedule isos
    * Use the proper API to get the data of the selected row not the first row
    * Replace the broken PNGed SVG with the real one
    * Talk to os-autoinst through HTTP instead of the file system
    * Replace document.ready with $(fn)
    * Fix interactive buttons
    * Fix upload of images during needinput
    * Make sure the worker stops at signals
    * Fix spelling of existent
    * Add web UI controls to select 20/50/100/400 previous results
    * limit_assets: when sizelimit is exceeded, remove more
    * Be more graceful when stopping the backend
    * Always set a t_finished to now if the job has a final state
    * Sort the finished jobs by their finished time
    * Change the order of the tests in the list test
    * Set a t_finished time in fixtures to have predefined order of finished jobs
    * Sort the scheduled jobs based on time
    * Sort the running jobs by Start time
    * Benefit from the hashsum calculation for our icons too
    * Remove pauseplay class and image - no longer used
    * Add more icons to assets and remove what's left in public/images
    * Remove dead file
    * Add custom whitespace squish
    * Use manual whitespace trimming after squish was removed from Mojo7
    * Mojo7 removed Mojo::URL::authority, use host_port instead
    * Add SUSE internal branding with more links
    * Refresh running modules in #details view
    * Deal with race conditions when refreshing #details
    * Create missing results tbl on #details
    * Reload broken thumbnails on test #details
    * Correct description for use of OPENQA_CONFIG
    * Fix build tagging when @ is used
    * Clarify comment in the dashboard test
    * Use correct job result in openqa events
    * Add command_enqueue to worker model as send_command
    * Export log_error helper in OpenQA::Utils
    * Add job_set_done and job_cancel to Jobs module and result set
    * Adapt tests for moved job_set_done and job_cancel
    * Remove scheduler dbus exports and subs job_set_done and cancel
    * Remove command_enqueue from scheduler and dbus
    * Check for user when emitting event
    * Log iso_cancel for canceled jobs due to new iso and allow job_cancel_by_settings event
    * Fix typo in worker check during job duplication
    * Fix counting of cancelled jobs
    * Update Jobs::cancel to accept $obsoleted option
    * Use ws_call using well known format to send messages to WS server
    * Sync property parsing to workers format
    * Make softfailed a proper final result
    * Add tests for showing softfails in prev results
    * Give user_restarted an explicit colour
    * Remove MySQL from deployments, we never test migrations or deployments
    * Resort to raw SQL instead of avoiding the schema and still use dbic
    * Fix DB access error when skipping scheduled children
    * Test both children skipping and stopping
    * Accept softfail result as passed
    * Add test scenarios for job result calculating
    * apparmor: Add missing /usr/lib/git/git
    * Make softfailed tests show the right colour
    * Make non-important failures at least a general softfail
    * Calculate softfailed at the very end to fix one specific case
    * Add more tests for corner cases
    * Carry over also for incomplete and softfailed
    * Add V1 API for comments
    * Use API for comments in web UI
    * Add comments without reloading page
    * Only redirect to running tab when no # is in url
    * Clear url hash on test step result preview close
    * Test for url hash cleanup after preview close
    * Fix incorrect 21-admin-needles test
    * Fix calculate_result (again): $overall should cover all
    * Improve error handling of comment API
    * Prevent needle editor flickering (progress #12984)
    * Enforce build order for group overview in tests
    * Remove unneeded functions of old comment API
    * Add 'latest' query route
    * Remove history for step navigations
    * Replace job_set_done by $job->done in dead job handler
    * Move dead worker check to websocket server
    * Add test for dead worker detection
    * Make build in previous view a link to tests overview
    * Add test for 'todo=1' query param
    * t: Fix typo in t/ui/18-tests-details.t
    * Fix deadworker timer function reference
    * Fix complex_query and its usage in last route
    * Render links on 'latest' route directly instead of redirect
    * templates: Simplify single line statements
    * Make title for 'previous results' a proper heading
    * t: 12-needle-edit.t: Try to find overwrite warning more often (poo#12980)
    * previous: Move current limit where other options are
    * Add web UI controls to select more builds in group_overview
    * Add web UI controls to filter only tagged or all builds
    * Fix workaround label
    * Fix taking over tags from a workaround needle
    * worker: Remove tons of work arounds and quirks in upload
    * Allow cksum to be called in the worker
    * Upload assets as temporary files and only rename after chksum check
    * Fix typo
    * Prevent use of non-existing route in upload_status
    * templates: live: Fix url_for over 'latest' route
    * Disable auto-duplication of jobs (poo#13042)
    * Avoid shift
    * Test handling deleted needles in needle editor
    * Ignore deleted needles when showing needle editor
    * Show warning about deleted/bad needles (needle editor)
    * Fix admin layout for test suites with long keys Currently test suites slenkins-tests-ceph-control and s390_hsi-l2
    * Make apache follow symlinks for assets directory
    * Fix '0' duration for previous jobs on running or scheduled job
    * Add link to latest job in each scenario
    * Allow pinning comments as group description
    * Fix jobs templates layout
    * Also filter 'machine' on latest
    * Vertically align progress bar with build number
    * Re-add boundary hack
    * Make 'latest' link more explicit
    * Do not quote identifiers, solves problem with uppercase column (#838)
    * use /var/lib/openqa/share/factory/iso path (#849)
    * Add 'bash' to be able to run 'CMD' (#850)
    * Add filter from in test overview (#852)
    * Draw needle match labels after match boxes (#851)
    * Add lock barriers (#845)
    * Show custom error pages (#831)
    * README: Update coveralls icon by .svg version (#853)
    * Add new job state (#848)
    * Remove old comment code (#856)
    * Run optipng on the worker while uploading images (#858)
    * Add filter for all states and results
    * Distinguish comment events
    * Show results and states dynamically
    * Test whether job still exists in reduce_result
    * Split Logging support out of WebAPI (#860)
    * Give the scheduler a home (#862)
    * Log status update without worker (#861)
    * dead worker check: use 15 secs not 10, better names, comments (#864)
    * Fix the stale job calculation for uploading jobs (#865)
    * Fix path in docs about migrating db schema
    * Show filter on top and display current filter
    * Avoid HMAC timestamp mismatch during large file upload (#871)
    * Give Websockets and Scheduler the home of the webapi (#870)
    * Label builds where all tests passed as reviewed
    * Dont grab twice (#874)
    * Prevent detecting occurrences like bsc#2436346bla as bugref
    * Replace URLs with the appropriate bugref pattern
    * Do not rely on WebAPI to find home - require and use an harmless class (#876)
    * Prevent multiple bug refs per comment to yield incorrect URLs
    * Add 'match' query parameter for index page
    * Add 'group' query parameter for index page
    * Add more faking to FakeApp - so restarting jobs works again (#880)
    * comment the home detection for scheduler/websockets better
    * Allow bugrefs being separated by any non-word chars
    * Fix used needle indication when needles are in folders
    * Merge match and group parameter
    * Use $FindBin::RealBin to resolve links for client script (#889)
    * Fix previous jobs showing up for different machine (#885)
    * Remove FIXMEs and disabled code in t/ui/15-comments.t (#888)
    * notify workers when job with chained children done (POO #13746) (#883)
    * Pass encoded URL filter parameter correctly (#890)
    * Reintegrate job duplicate (#875)
    * Mark worker alive for all kind of artefacts (#894)
    * Small schema change to add an index (#895)
    * Add IPC debug to websockets too to debug hangs (#896)
    * update apparmor profiles for ppc64le (#892)
    * Try harder to avoid long running pre-processing (#897)
    * Increase session expiration from 1 to 48 hours (#900)
    * Make ws_send_all WebSocket call not waiting for results (#902)
    * Avoid DBUS dead locks (#901)
    * Do not manually render anything on websocket creation (#903)
    * Prevent error message in log as 'scheduled' jobs are also 'inprogress' (#906)
    * Add scenario params to limit URLs for previous results (#893)
    * Handle links to bugs already formatted correctly (#905)
    * Improve documentation about PosgreSQL (#904)
    * Test time_limit_days query parameter (#907)
    * Fix comments test (#908)
    * Split the images directory even more (#739)
    * Add anchor links to comments (#909)
    * Move comments.css to sass reduce copy&paste (#910)
    * Readd the lost name of the thumb_nail route (#911)
    * Refactor computing build results (#898)
    * Show incomplete/skipped bugs, show tooltip on progress bars (#912)
    * Add link to openQA review (#899)
    * Fix vertical alignment of progress bars in tables (#917)
    * Show progress indication in admin needle table (#918)
    * Track image assets better (#919)
    * Fix deletion of multiple needles at once (#921)
    * fix downloading assets to different filename
    * Fix sorting in admin needle table (#924)
    * Add JSON representation of index and group overview (#922)
    * Add filter form for index page (#923)
    * Add /index.json route and test it together with overview.json (#925)
    * Fix /index.json route to pass the format (#926)
    * Fix softfailed results not showing in tests list (#930)
    * Fix group filter on index when param is empty (#933)
    * Fix group overview when no builds shown (#932)
    * t: Add 'Test::Warnings' where missing; Catch all warnings in tests again (#931)
    * Extend schema of JobGroups (#914)
    * Fix typos (#935)
    * reuse a constant boundary to make debugging failed uploads a little easier (#934)
    * Some code cleanup and more tests (#937)
    * Fix test result info spacing (#938)
    * fix loch ness monster bug in 14-grutasks.t (#941)
    * Load step and needles for failedmodules link async (#936)
    * Complete API for job groups (#942)
    * Auto reload result page on state sched -> running (#940)
    * Update Installing.asciidoc (#927)
    * Go to bugzilla.suse.com also for bnc# (#943)
    * Fix going to bugzilla.suse.com also for bnc# (#946)
    * Improve error handling when deleting needle (#939)
    * Fix needle deletion via Git (#948)
    * WebAPI: Delete comments stating the obvious + delete unused routes (#947)
    * Render bugref links in thumbnail text windows
    * Test render bugref links in thumbnail text windows
    * Show job group description (#950)
    * Add 'fixed' asset subdirectories for fixed assets (#928) (#945)
    * use locate_asset in register_assets_from_settings (#954)
    * Rejig compressed asset download, don't leave compressed files (#955)
    * Fix registration of downloaded assets (broken by 0905559b) (#953)
    * List needle tags + step icons (#944)
* Tue Sep 20 2016 oholecek@suse.com
  - Add missing dependency perl(JSON) for openqa-client
* Mon Sep 19 2016 oholecek@suse.com
  - Add missing dependencies perl(Data::Dump) and perl(Getopt::Long)
    for openqa-client
* Sat Sep 17 2016 oholecek@suse.com
  - Add symlink /usr/bin/openqa-client to /usr/share/openqa/script/client
* Thu Sep 08 2016 oholecek@suse.com
  - Ghost /var/lib/openqa/share in common subpackage
    * solves issues when updateing worker with mounted NFS
* Mon Aug 22 2016 oholecek@suse.com
  - Remove perl(Perl::Critic) build requirement, added by mistake
* Mon Aug 22 2016 oholecek@suse.com
  - Package /var/lib/openqa/share for common subpackage
  - Pakcage /var/lib/openqa/share/factory/[iso|hdd|other|..] for openQA package
* Sat Jul 09 2016 coolo@suse.com
  - Update base version to 4.4 to express new API of isotovideo
* Mon Jun 20 2016 rd-ops-cm@suse.de
  - Update to version 4.3.1466434215.021a11c:
    * No longer export the worker_id as hash entry
    * Remove job_get from the scheduler
    * Simplify our theme - split the sass theme from the specifcs
    * Set an explicit colour on cancelled
    * Use default bootstrap table class for striping
    * Use the theme colour in tables
    * Have our bootstrap theme based on https://bootswatch.com/paper/
    * Fix comments test - h2 is the new h1
* Wed Jun 01 2016 rd-ops-cm@suse.de
  - Update to version 4.3.1464792258.155f49e:
    + t: Use helper function to wait for ajax
    + Extend iso post TEST parameter to support a list of tests (poo#10482)
    + Test for "let TEST parameter support a list of tests"
    + Enable brackets inside keys in client script
    + Add first approach for editable comments
    + Make comments for tests editable, too
    + Fix indentation of flash and wells on test page
    + Fix minor mistakes in editable comments
    + Reduce code-dublication in templates
    + Add first approach to test editable comments
    + Test comment editing in test results, too
    + Check for current user in commenting functions
    + Adjust t/17-labels_carry_over.t to reflect changes
    + Add css class no_hover to all /thumbs/
    + Improve TEST parameter to support a list of tests
    + needlediff: Improve similarity text look
    + Use the nice audio icon (with the correct size)
    + Use nice icon for wait_serial
    + add a config setting to specify asset types not to link to
    + Increase left padding of status icons
    + Prevent error in group_overview with '-important' builds
    + Check database configuration with better user feedback
    + Fix broken string compare slipping into wait_serial icon change
    + Fix non-ASCII characters in comments
    + Allow admins to delete any comments
    + Fix showing editing buttons
    + Fix regexp for multiple parent jobs
    + Fix typo in 05-scheduler-restart-and-duplicate.t
    + Improve log message about 'setup failure'
    + Support tests/export to get a text format for archives
    + Fix re-enabling current user role
    + Adapt to latest AssetPack
* Sun Apr 10 2016 oholecek@suse.com
  - add perl(Archive::Extract) dependency (needed by PR#627)
* Tue Mar 22 2016 oholecek@suse.com
  - create openQA-client and openQA-doc subpackages
  - remove DB handling, it's done by openQA itself now
* Wed Feb 17 2016 coolo@suse.com
  - adapt to adam's changes
* Mon Feb 15 2016 lnussel@suse.de
  - remove user migration code. no such systems should exist anymore
* Thu Jan 14 2016 oholecek@suse.com
  - update base version to 4.3
* Fri Jan 08 2016 oholecek@suse.com
  - add modify_needle script
* Mon Oct 26 2015 oholecek@suse.com
  - add create_admin script
* Tue Sep 08 2015 oholecek@suse.com
  - add perl(IPC::Run) dependency (needed by PR#414)
* Mon Aug 31 2015 lnussel@suse.de
  - we don't need JSON::RPC::Legacy::Client
* Mon Jul 06 2015 lnussel@suse.de
  - fix rpmlint warnings
* Wed Jul 01 2015 oholecek@suse.com
  - add openqa-scheduler.service and openqa-websockets.service
* Wed Jun 24 2015 lnussel@suse.de
  - fix fileliist for missing service files
* Wed Jun 17 2015 oholecek@suse.com
  - package dbus system policy config
  - add perl(Net::DBus) to requires
* Wed Apr 08 2015 coolo@suse.com
  - add openqa-gru.service
* Wed Mar 18 2015 lnussel@suse.de
  - keep /lib/openqa/share in webui and the symlink in -common. So a
    plain worker owns no files in share
* Mon Mar 09 2015 lnussel@suse.de
  - add --from=geekotest to chown call just to be on the safe side
* Mon Mar 09 2015 coolo@suse.com
  - create a 2nd user and migrate the worker from geekotest to
    _openqa-worker
* Sat Feb 28 2015 coolo@suse.com
  - run preparetool from the right %post
* Thu Feb 26 2015 oholecek@suse.com
  - fix missing ini files link and package new config dir (boo#919548)
* Wed Feb 25 2015 sfalken@opensuse.org
  - Changed path for fetchneedles in post-install echo
* Mon Feb 23 2015 oholecek@suse.com
  - don't move ini files in spec, Makefile does it now
* Thu Feb 19 2015 lnussel@suse.de
  - include fetchneedles in file list
* Tue Feb 17 2015 rd-ops-cm@suse.de
  - Update to version 4.1424166204.2ca1601:
    + Refactor worker scripts and add locking support
    + Pass worker port to os-autoinst and remove :jobid check
    + assets replaced /diskimages long ago - get rid of it
    + avoid "openQA: openQA" as title on main page - looks just silly
    + remove lib/OpenQA from include path - not needed
    + fix make test to be coverable and use it in .travis.yml
    + switch default auth_module to Fake
    + adding a test to test /admin/machines using phantomjs
    + skip the tests if phantomjs is not installed
* Fri Feb 13 2015 oholecek@suse.com
  - we don't need MojoX::JSON::RPC
* Thu Jan 29 2015 lnussel@suse.de
  - reduce mojo require to 5.60
* Wed Jan 28 2015 lnussel@suse.de
  - require qemu in worker to get kvm group
  - add geekotest user to kvm group in worker's %post as qemu is not required by
    the web ui
* Wed Jan 28 2015 coolo@suse.com
  - fix requires
* Wed Jan 28 2015 coolo@suse.com
  - make it version 4 and require os-autoinst of version 4 too
* Fri Jan 09 2015 oholecek@suse.com
  - add BuildRequire perl(Test::Compile)
* Sun Dec 21 2014 lnussel@suse.de
  - pre-require openQA-common to make sure the user is created
* Sun Nov 30 2014 coolo@suse.com
  - we don't require png2theora any longer - and actually openQA-worker
    never did
* Mon Nov 17 2014 oholecek@suse.com
  - fix upgrade scenario from openQA to openQA-common
* Thu Nov 13 2014 oholecek@suse.com
  - split to openQA, openQA-common and openQA-worker packages
* Thu Oct 30 2014 mlin@suse.com
  - fix post script - remove buildroot macro

Files

/usr/share/openqa
/usr/share/openqa/lib
/usr/share/openqa/lib/Mojolicious
/usr/share/openqa/lib/Mojolicious/Plugin
/usr/share/openqa/lib/Mojolicious/Plugin/AssetPack
/usr/share/openqa/lib/Mojolicious/Plugin/AssetPack/Pipe
/usr/share/openqa/lib/Mojolicious/Plugin/AssetPack/Pipe/FetchForNode.pm
/usr/share/openqa/lib/OpenQA
/usr/share/openqa/lib/OpenQA.pm
/usr/share/openqa/lib/OpenQA/App.pm
/usr/share/openqa/lib/OpenQA/BuildResults.pm
/usr/share/openqa/lib/OpenQA/CLI
/usr/share/openqa/lib/OpenQA/CLI.pm
/usr/share/openqa/lib/OpenQA/CLI/api.pm
/usr/share/openqa/lib/OpenQA/CLI/archive.pm
/usr/share/openqa/lib/OpenQA/CLI/monitor.pm
/usr/share/openqa/lib/OpenQA/CLI/schedule.pm
/usr/share/openqa/lib/OpenQA/CacheService.pm
/usr/share/openqa/lib/OpenQA/Command.pm
/usr/share/openqa/lib/OpenQA/Constants.pm
/usr/share/openqa/lib/OpenQA/Downloader.pm
/usr/share/openqa/lib/OpenQA/Events.pm
/usr/share/openqa/lib/OpenQA/File.pm
/usr/share/openqa/lib/OpenQA/Files.pm
/usr/share/openqa/lib/OpenQA/Git.pm
/usr/share/openqa/lib/OpenQA/JobDependencies
/usr/share/openqa/lib/OpenQA/JobDependencies/Constants.pm
/usr/share/openqa/lib/OpenQA/JobGroupDefaults.pm
/usr/share/openqa/lib/OpenQA/JobSettings.pm
/usr/share/openqa/lib/OpenQA/Jobs
/usr/share/openqa/lib/OpenQA/Jobs/Constants.pm
/usr/share/openqa/lib/OpenQA/LiveHandler
/usr/share/openqa/lib/OpenQA/LiveHandler/Controller
/usr/share/openqa/lib/OpenQA/LiveHandler/Controller/LiveViewHandler.pm
/usr/share/openqa/lib/OpenQA/Log.pm
/usr/share/openqa/lib/OpenQA/Markdown.pm
/usr/share/openqa/lib/OpenQA/Parser
/usr/share/openqa/lib/OpenQA/Parser.pm
/usr/share/openqa/lib/OpenQA/Parser/Format
/usr/share/openqa/lib/OpenQA/Parser/Format/Base.pm
/usr/share/openqa/lib/OpenQA/Parser/Format/IPA.pm
/usr/share/openqa/lib/OpenQA/Parser/Format/JUnit.pm
/usr/share/openqa/lib/OpenQA/Parser/Format/LTP.pm
/usr/share/openqa/lib/OpenQA/Parser/Format/TAP.pm
/usr/share/openqa/lib/OpenQA/Parser/Format/XUnit.pm
/usr/share/openqa/lib/OpenQA/Parser/Result
/usr/share/openqa/lib/OpenQA/Parser/Result.pm
/usr/share/openqa/lib/OpenQA/Parser/Result/Node.pm
/usr/share/openqa/lib/OpenQA/Parser/Result/OpenQA
/usr/share/openqa/lib/OpenQA/Parser/Result/OpenQA.pm
/usr/share/openqa/lib/OpenQA/Parser/Result/OpenQA/Results.pm
/usr/share/openqa/lib/OpenQA/Parser/Result/Output.pm
/usr/share/openqa/lib/OpenQA/Parser/Result/Test.pm
/usr/share/openqa/lib/OpenQA/Parser/Results.pm
/usr/share/openqa/lib/OpenQA/Scheduler.pm
/usr/share/openqa/lib/OpenQA/Schema.pm
/usr/share/openqa/lib/OpenQA/ScreenshotDeletion.pm
/usr/share/openqa/lib/OpenQA/Script
/usr/share/openqa/lib/OpenQA/Script/Client.pm
/usr/share/openqa/lib/OpenQA/Script/CloneJob.pm
/usr/share/openqa/lib/OpenQA/Script/CloneJobSUSE.pm
/usr/share/openqa/lib/OpenQA/Setup.pm
/usr/share/openqa/lib/OpenQA/Shared
/usr/share/openqa/lib/OpenQA/Shared/Controller
/usr/share/openqa/lib/OpenQA/Shared/Controller/Auth.pm
/usr/share/openqa/lib/OpenQA/Shared/Controller/Session.pm
/usr/share/openqa/lib/OpenQA/Shared/GruJob.pm
/usr/share/openqa/lib/OpenQA/Shared/Plugin
/usr/share/openqa/lib/OpenQA/Shared/Plugin/CSRF.pm
/usr/share/openqa/lib/OpenQA/Shared/Plugin/Gru.pm
/usr/share/openqa/lib/OpenQA/Shared/Plugin/SharedHelpers.pm
/usr/share/openqa/lib/OpenQA/Task
/usr/share/openqa/lib/OpenQA/Task/Asset
/usr/share/openqa/lib/OpenQA/Task/Asset/Download.pm
/usr/share/openqa/lib/OpenQA/Task/Asset/Limit.pm
/usr/share/openqa/lib/OpenQA/Task/AuditEvents
/usr/share/openqa/lib/OpenQA/Task/AuditEvents/Limit.pm
/usr/share/openqa/lib/OpenQA/Task/Bug
/usr/share/openqa/lib/OpenQA/Task/Bug/Limit.pm
/usr/share/openqa/lib/OpenQA/Task/Iso
/usr/share/openqa/lib/OpenQA/Task/Iso/Schedule.pm
/usr/share/openqa/lib/OpenQA/Task/Job
/usr/share/openqa/lib/OpenQA/Task/Job/ArchiveResults.pm
/usr/share/openqa/lib/OpenQA/Task/Job/FinalizeResults.pm
/usr/share/openqa/lib/OpenQA/Task/Job/HookScript.pm
/usr/share/openqa/lib/OpenQA/Task/Job/Limit.pm
/usr/share/openqa/lib/OpenQA/Task/Job/Restart.pm
/usr/share/openqa/lib/OpenQA/Task/Needle
/usr/share/openqa/lib/OpenQA/Task/Needle/Delete.pm
/usr/share/openqa/lib/OpenQA/Task/Needle/Save.pm
/usr/share/openqa/lib/OpenQA/Task/Needle/Scan.pm
/usr/share/openqa/lib/OpenQA/Task/SignalGuard.pm
/usr/share/openqa/lib/OpenQA/Task/Utils.pm
/usr/share/openqa/lib/OpenQA/Utils.pm
/usr/share/openqa/lib/OpenQA/VcsProvider.pm
/usr/share/openqa/lib/OpenQA/WebAPI.pm
/usr/share/openqa/lib/OpenQA/WebSockets.pm
/usr/share/openqa/lib/OpenQA/Worker.pm
/usr/share/openqa/lib/OpenQA/YAML.pm
/usr/share/openqa/lib/perlcritic
/usr/share/openqa/lib/perlcritic/Perl
/usr/share/openqa/lib/perlcritic/Perl/Critic
/usr/share/openqa/lib/perlcritic/Perl/Critic/Policy
/usr/share/openqa/lib/perlcritic/Perl/Critic/Policy/HashKeyQuotes.pm
/usr/share/openqa/script/openqa-check-devel-repo
/var/lib/openqa
/var/lib/openqa/factory
/var/lib/openqa/script
/var/lib/openqa/share
/var/lib/openqa/tests


Generated by rpm2html 1.8.1

Fabrice Bellet, Tue Jul 9 19:51:39 2024