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.

Issues

Pull Requests