Fixes #19873 - Fix Style/MultilineIfModifier cop (#5705)
The root cause was we were triggering the active jobs too early,sometimes even before the db was migrated. This led to all sorts oferrors. The provided helper method does not trigger the jobs when in...
Fixes #23142,#23503 - telemetry improvements
fixes #23681 - move auth_source_ldap js to webpack (#5607)
Fixes #23511 - Generate webpack plugins in context of vendor/bundle
Fixes #23361 - Handle webpack manifests from plugins
In a production setup Foreman can't write to the manifest.json location.Here we copy the pattern from the above sprockets initialization andchange the webpack-rails setting to read it. Because webpack-rails...
Fixes #19781 - Fix Layout/LeadingCommentSpace cop
Fixes #23398 - Don't extend classes from within initializers
Any changes to the code locally will kick in rails's auto loading whichin turn will then reload all relevant classes, and in the case ofchanging a model inheriting from ApplicationRecord, then...
Fixes #23195 - Audit associations on creation and destruction (#5455)
Also includes a bit of refactoring to the AuditAssociations module.
Fixes #23147 - Allow plugins to compile production webpack assets
Fixes #23256 - Check if the delayed plans have expected interface (#5448)
Not all delayed plan records have 'job_class' key in first elementin serialized_args.
Fixes #19787 - Fix Layout/SpaceAfterComma cop
Fixes #19796 - Fix Layout/SpaceInsidePercentLiteralDelimiters cop
Fixes #22918 - Audit all taxonomies assignments
We need to move all audited definitions to top of models because allconcerns can use audit_associations call which relies on audit beingalready activated.
Fixes #22796 - fact importing telemetry
Fixes #22753 - add apipie validator for multiple allowed types
Fixes #22199 - Audit has_many associations (#5187)
Fixes #18675 - telemetry foreman API
Fixes #22557 - use correct type for 'provision_method' param
Fixes #21170 - move password_strength.js to wepback
Fixes #22165 - Allow disabling HSTS header
If a user browses to the Foreman server using HTTPS, HSTS headers willprevent the browser from connecting to the server again using HTTP. Thisadds a setting that allows disabling this header for users requiring...
Fixes #22272 - don't run CreateRssNotifications in test (#5177)
During running tests, we still schedule the CreateRssNotifications job,which can potentially collide with other tests, as well as seems to runinto some issues related to code reloading.
We should not do this in test environment in the first place.
Fixes #19907 - Configure Style/TernaryParentheses cop
Fixes #11389 - Remove API v1
API v1 has been deprecated since Foreman 1.9 - over 2 years ago.This is more then enough time for anyone needing to migrate to v2.Even though the original issue requests extraction to a plugin, I do notsee any point in investing the time and effort to maintain a long...
Fixes #13092 - Deploy correct bonding for reprovisioned host (#4583)
fixes #22080 - rabl is loaded before patching
fixes #3763 - extend rabl templates
Fixes #19820, #19822, #19824 - Fix some performance cops
Fixes #21084 - Always Use Rails 5.0, Drop Rails 4.2
Fixes #21643 - fix and move nfs_visibilty.js to webpack
Fixes #21637 - fallback to default locale with I18n
This makes the I18n behavior closer to the gettext one, and preventssome ugly 'missing_translation' messages in the UI (for example inapipie, that uses the I18n backend for it's strings).
Fixes #18292 - Make notifications from an RSS feed (#4240)
This adds a task to connect to an RSS feed, by default the one from ourcommunity blog. The idea is to make this run every night with 'cron' onevery Foreman installation to keep people updated about changes, and...
Fixes #21553 - require will_paginate's action_view helper (#4972)
fixes #21333 - http proxies: remove rails js
Fixes #12216 - support http proxies for compute resources
Fixes #15409 - Separated puppet facts from core
fixes #20652 - moved compute_resource js code to webpack
this creates a new namespace under tfm, tfm.computeResourcewhere relevant functions are expoed under the compute resourcenamespace, for example:
tfm.computeResource.ovirt.termplateSelected function...
Fixes #20957 - Replace alias_method_chain with Module prepend
Deprecated in Rails 5.0 and will be removed in 5.1. Some instances ofclasses overwriting existing methods can be handled with `super`, otherconcerns or modules are changed to use prepend instead of include....
Fixes #20454 - change page by typing page number
Fixes #19031 - move to patternfly pagination style
Fixes #16160 - added start-foreman-dev helper
fixes #18500 - replace quiet_assets with sprockets-rails flag
The app.assets environment is no longer always configured, and insteadis only configured when the regular Rails environment is loaded. Loadingonly the 'assets' group initializers isn't sufficient....
fixes #19050 - add Ruby on Rails 5.0 support
Adds configurable support for running on Ruby on Rails 5.0 or 4.2,defaulting now to 5.0 on Ruby 2.3 or higher. Ruby versions with partialor no support remain using 4.2 by default. Other points:
1. SETTINGS[:rails] is loaded pre-Rails boot, then post-boot the...
Fixes #19764 - Fix Layout/AccessModifierIndentation cop
refs #19317 - move FiltersHelperOverrides to app/registries/
Uses class to hold state, should be kept in the autoload_once registrydirectory.
fixes #19464 - rewrite Dashboard::Manager to support autoloading
Replaces class-level widget storage with a static list of built-inwidgets, then appends the registered plugin widgets to get the fulldefault list of widgets. As a result, the class can safely be reloaded...
fixes #19317, #10927 - move registries to autoload_once path
Partially reverts 70ce8fe to reinstate autoload_once_paths as thepreferred way to load registry-type objects with class variablescontaining data set up during app initialisation (e.g. pluginregistrations, menu items.)...
fixes #18445 - always define eager_load_paths, use require_dep
Allows `eager_load!` to be called or enabled in any environment withoutloading files under lib/ twice. Switches many `require` calls to Rails'`require_dependency` to always use its dependency loader, so when eager...
Revert "Revert "fixes #18691 - add as_deprecation_tracker to test environment""
This reverts commit 5a4fdbf71decfb26b88b139bf1f0136d3d3189d4.
Revert "fixes #18691 - add as_deprecation_tracker to test environment"
This reverts commit 0fd467c844fd200b5da72a0c670a5ac2bd4a61d6.
Fixes #18986: upgrade patternfly-sass to 3.23.0.
http://projects.theforeman.org/issues/18986
fixes #18691 - add as_deprecation_tracker to test environment
Causes test failures if any new deprecation warnings are triggered bychanges in Foreman. Plugin code is automatically whitelisted unless itsupplies its own ASDT whitelist configuration, so developers can opt-in....
fixes #18551 - skip table_exists? error when the DB doesn't exist
MySQL and PostgreSQL DB adapters now throw a connection error underRails 5 if the the DB doesn't already exist, as the schema cache is nolonger used to answer the method call.
fixes #18233, #18235 - isolate pagelets state between tests
Moves pagelets state into instances of Pagelets::Manager with clearerdup semantics, and allows the instance to be backed up and restoredaround tests using the PageletsIsolation test case mixin.
fixes #18208 - replace audited-activerecord with audited (#4218)
Fixes #17844 - unify test mail js code
Fixes #15405 - Moved puppet UI to helpers
Refs #17972 - remove trends.js from assets initializer
Fixes #17998 - Only print LDAP bind status if available
The ldap logger tries to call payload[:bind].status but it might not bedefined if the bind goes wrong in some LDAP sources.
This causes a 500 instead of logging the status of the bind. We shouldonly display payload[:bind].status if it's available.
fixes #8290 - remove foreman_url redundancy
Fixes #17678 - APIdoc - URL desc add missing CR types
refs #17257 - remove interpolation from extracted string
fixes #16459 - remove 1.15 deprecations
Fixes #12156 - Adds email configuration into Foreman settings
Instead using email.yaml, the email configurationcan be modified dynamically via settings.
Fixes #13424 - c3 patternfly react implementation
Fixes #9016 - improved fact loading performance
This change improves fact loading performance by order of magnitude onSQLite mostly thanks to explicit transaction. An extra optimization wasdone for the most important "update" method call which is mostly used...
Fixes #16566 - Allow css inline images
Secure headers currently prevents inlining images in CSS using the'data:' method. This commit adds that to the allowed image sources.
Fixes #13936 - Drop support for legacy browsers
This patch removes various workarounds needed to get legacy browsers towork. Mostly stuff needed for IE<10, but also some other vendor prefixesthat are no longer needed.
Fixes #16564 - Disable FrozenStringLiteralComment cop
Also fixes a failng cop in config/initializers/secure_headers.rb
Fixes #16491 - Upgrade rubocop to version 0.42
Fixes #9117 - Upgrade secure_headers to version 3.4
Any plugin that makes changes to secure headers may need to be updatedto correctly handle this upgrade, as there have been some breakingchanges to the secure_headers api.
Fixes #16293 - Move vendored diff.js to webpack (#3784)
Also removed a few outdated lines from the LICENSE file.
fixes #15248 - remove 1.14 deprecations
Refs #12364 - Allow running webpack dev server on any hostname
Currently, SecureHeaders only allows running the webpack dev server fromlocalhost or 0.0.0.0, and only using http. This leads to issues whenattempting to run foreman inside a virtual machine or using https. This...
Fixes #12364 - Use NPM+Webpack to handle external assets
This commit introduces NPM and Webpack to handle external assets.It also provides ES6 support and a live reload dev server that can beused by running `foreman start` instead of `rails start`.Do not forget to run `npm install` before starting the server....
Fixes #15924 - Implement server groups and scheduler hints
Fixes #7955 - /apidoc should point to v2 documentation by default
fixes #3917 - replace protected_attrs with strong parameters
Filtering of attributes has moved from the protected_attributes gem tostrong parameters in controller concerns, to be in line with currentRails recommendations.
Concerns are shared between UI and both API controllers and list the...
fixes #15829 - remove ace-rails-ap file modes from app.js
Also removes editor from precompilation list, it's in the main app.jssince fa8353d, and removes unused ACE extensions.
application.js has reduced from 2512 to 2381KiB.
Fixes #15037 - Improves editable elements in settings
Fixes #15490 - adding view_host filter and better msg
Users who are logged in with permissions to view some hosts are able topreview provisioning templates for any host by specifying its hostnamein the URL, as the specific view_hosts permissions and filters aren't...
Refs #3809 - Turning on the AndOr cop
Fixes #14817 - load JS only in relevant pages
The proxy_status.js and about.js files should only be loaded on relevantpages.
fixes #13845 - remove 1.13 deprecations
Fixes #15308 - Override validation doesn't run without changes
fixes #15250 - ignore current controller from link_to/hash_for
When link_to generates a link on a page served from a nested controller(e.g. foreman_example/examples) with a hash of controller/action fromour hash_for_*_path extension, it calls url_for which added the current...
Fixes #8797 - Separate style from the HTML in emails
By using roadie-rails gem (1.1) style can be separated from emailhtml foramt, and absolute paths can be used.style was separated to 'email.css'
fixes #15040 - remove user fragment cache initializer
The initializer added in c3e0fed caused the foreman initializer to failas loaded the User model, which it assumes meant the table was present.This isn't the case when db:migrate runs for the first time....
Fixes #12225 - invalidate topbar cache after restart
Refs #3809 - Turning on some rubocop cops
Fixes #14965 - turn off auditing during DB migrations
Move code turning off auditing during db:migrations so that it isexecuted earlier than initializers
fixes #13244 - update Rails to 4.2.6
- Add responders gem to support class-level respond_to usage - http://edgeguides.rubyonrails.org/4_2_release_notes.html#respond-with-class-level-respond-to- Replace foreigner with native Rails 4.2 FK support - uses a patch from Rails 5 to support Foreigner's...
fixes #14415 - check CR availability with Fog, not SETTINGS
Simplifies the code for checking compute resource availability, whichcan easily be determined with the registered Fog providers instead ofbeing stored in SETTINGS in app initialisation. Plugins should always be...
fixes #12746 - list compute resources from plugin definitions
Load the full list of known CRs from plugins on the fly, instead ofmodifying the class-level list of supported plugins. Since plugindefinitions don't get reloaded, this allows the ComputeResource class to...
Fixes #13727 - Error raised when setting default_value when override is set to false
fixes #14338 - move session store configuration earlier
When a plugin has an initializer relying on :build_middleware_stack, themiddleware stack is constructed with the default session store (cookies)as the store hasn't been configured by config/initializers/ yet. Moving...
fixes #14318 - load JS translations table for current locale only
fixes #14225 - add missing require for Resolv
Setting itself is explicitly required too, which will provide a bettererror message in future for this and similar issues loading the class.
Fixes #14071 - Using Sprockets directive to require host_edit_interfaces.js
fixes #13878 - handle anonymous railtie classes seen on Rails 4.2