Workarea 3.0.57

Patch release notes for Workarea 3.0.57.

Display Active State In Mobile Navigation

Apply the --selected modifier to the mobile-nav__link element in mobile. This was previously not being applied if the link had been selected, and thus the active state was not displaying on mobile.


Pull Requests

Fix Redemption of Redundant Promo Codes

When a user adds multiple promo codes that belong to the same discount to an order, only mark the first one as being used so other users can take advantage of the other promo codes. Previously, all promo codes were being marked as redeemed in the backend, preventing their use by others.


Pull Requests

Run Dependent Services in Docker Containers

Due to the complicated nature of Dockerized Workarea environments, especially surrounding system tests, Workarea now provides an alternative solution to starting the correct background services (at the correct versions) that are necessary for Workarea apps to function, such as Elasticsearch, MongoDB, and Redis. Two Rake tasks, workarea:services:up and workarea:services:down, will run Docker Compose with a configuration file that is located within the Workarea gem itself. This configuration uses the correct versions of each dependent service for the version of Workarea you're using. Workarea v3.4 applications, for example, will use MongoDB 4.x, while Workarea v3.3 and below use MongoDB 3.x.

When you start working on a Workarea application, run the following command to start your dependent services:

bin/rails workarea:services:up

And when you're done working, run the following command to stop them:

bin/rails workarea:services:down

Doing this between each project keeps the databases in separate containers and volumes, the latter of which are persisted even when containers are down, so you won't lose your development data. (Just remember to delete your volumes when upgrading from v3.3 to v3.4!) The Docker Compose project name will be the name of the application you are currently working on. Since this matches the root directory of the application, you can run docker-compose commands just like you normally would in a Dockerized application, except you no longer have to jump through the extra hoops of working in containers when developing on your application.


Pull Requests

Now on GitHub