Workarea 3.4.9

Patch release notes for Workarea 3.4.9.

Fix Error in Taxonomy Content Block When Starting Taxon Is Deleted

If show_starting_taxon is enabled on a taxonomy content block, but the
starting taxon was deleted, an error would be thrown. This prevents that
error by checking both the show_starting_taxon parameter as well as
ensuring the starting_taxon actually exists before attempting to
render taxonomy based on it.

Issues

Pull Requests

Fix Incorrect Analytics Adapter Generator Syntax

When an analytics adapter is generated, it uses
WORKAREA.registerAdapter, which is now
WORKAREA.analytics.registerAdapter. This has been updated in the
.js.erb template for the generator to reflect changes.

Issues

Pull Requests

Fix Delayed Loading of Chrome Options Configuration

Capybara.register_driver does not run the passed block immediately, which
can cause issues with the aliasing of Workarea.config.headless_chrome_options,
particularly with multi-site where the settings are duplicated. Options
are now loaded prior to being passed into the block, ensuring that they
are the same for each site.

Issues

Pull Requests

Fix Sidekiq Auto-Configuration

Allow configuring pool timeout on the Sidekiq client (the part of
Sidekiq that runs within the Rails application server). This also
removes automatically scaling the number of concurrent jobs that
can be run simultaneously by how many processes of Sidekiq are running
at once. This caused some hard-to-debug issues, and is handled in better
ways within the OS you're hosting Workarea on. This change also allows
configuration of the PID file path and queues using the environment
variables $WORKAREA_SIDEKIQ_PIDFILE and $WORKAREA_SIDEKIQ_QUEUES.

Issues

Pull Requests

Update Puma and Loosen Constraint

This gem is fairly stable and doesn't follow strict semantic versioning
anyways. Update to the latest Puma to enjoy its much improved reactor
internals that will help with concurrency on high traffic deployments.

Issues

Pull Requests

Fix Encoding Errors on CSV Imports

Allow users to specify a source encoding for CSV files that are being
imported into the application. UTF-8 encoding is still enforced, since
that's the charset Workarea renders content with in the browser, but
the source can now be configured to prevent errors when importing CSV.
Any other options passed into CSV.foreach can be configured using the
Workarea.config.csv_import_options Hash.

See the documentation on CSV.foreach for more information: https://ruby-doc.org/stdlib-2.6.3/libdoc/csv/rdoc/CSV.html#method-c-foreach

Issues

Pull Requests

Fix Search Settings Clearing When Not Submitted From Main Form

With the workarea-swatches plugin comes a form that updates a single
value on the search settings, in contrast to the main search settings
form which updates all values at once. This form's action URL is just
PATCH /admin/search_settings, which does some massaging of the params
and inadvertently causes nil values to be contained in the attributes
hash for updating when those params are not included in the request.
Workarea now runs .compact on the Hash of attributes generated by this
controller action, before it's mass-assigned into Search::Settings.current.
This prevents the params from getting cleared out, and fixes any kind of partial
updates on the /admin/search_settings endpoint.