Workarea 3.1.31

Patch release notes for Workarea 3.1.31.

Downgrade I18n::JS To Prevent Faker Translations From Loading

Downgrade i18n-js to v3.0.10 to prevent issue with loading Faker translations in the storefront. This was fixed when v3.0.0 was released, but broke due to a change in the i18n-js private method API.

Issues

Pull Requests

Commits

Convert Attribute Case in Customizations Subclasses

Attribute keys passed into a subclass of Catalog::Customizations will typically convert to snake_case so they can be read as methods on the object. This breaks down when camelCased attribute names are encountered because String#underscore seems to not handle case changes in the word, because instead of "foo_bar" from "fooBar", "foobar" is what the attribute key looks like. Call #titleize on the attribute name before setting it as an instance variable, this will take both spaces and case changes into account and treat them as separators of the word.

Issues

Pull Requests

Commits

Add Weblinc Office and AlertLogic IPs to Rack Attack Safelist

Prevents Weblinc and AlertLogic IPs from being blocked by Rack::Attack from viewing the application. This also includes integration tests for all Rack::Attack safelisting and throttling rules, enabling implementers to easily test their own custom rules.

Issues

Pull Requests

Commits

Populate Product Attributes In create_placed_order Factory

In the real world, a product has its attributes copied into Order::Item#product_attributes before the order is placed. In testing, however, this does not occur, instead the product_attributes hash is empty. Workarea now ensures that the #create_placed_order factory method assigns product.as_document as these attributes in the same way as is done in the application, by utilizing the Workarea::OrderItemDetails service object.

Issues

Pull Requests

Commits