In May, we released PrestaShop 8.1 RC1, shared some exciting news about PrestaShop 9, and continued improving the core and the modules. Let’s take a closer look at recent developments in the project in May.

Core Monthly banner

Live Update

The last Live Update took place on May 17th. You can read all the details in the summary. We didn’t share the date of the next Live Update back then, but we agreed now that we will host the next session on June 21st. More details about it soon.

I would also like to mention again that Live Updates are a great chance for us to interact with the community. If you have any questions about the project, you can ask them before the Live Update, and we’ll answer them live. You can ask questions using this form.

PrestaShop 8.1 release candidate 1

A few weeks ago, we released PrestaShop 8.1 RC1. It’s one of the latest steps before releasing the stable version of PrestaShop 8.1. We’re very close to the final release, so if you haven’t tested the RC1 yet, now is the time to do it. We will wait until June 26th for your feedback. In the meantime, we’ll be working on fixing the bugs you report and the autoupgrade module to allow you to upgrade from previous versions of PrestaShop to 8.1.

You can find the RC1 release notes here.

PrestaShop 9 news!

Work on PrestaShop 9 has already started. As of now we can see a lof of cleaning in the core, removing deprecated functions, upgrading dependencies, but also some new features coming. Let’s do a little recap.

PHP 8.1 as a minimum compatible version in PrestaShop 9.0

You read that right. After discussing internally and with the community, the leadership council decided to bump the minimum compatible version of PHP to version 8.1. It’s great news for developers who want to use the latest features of PHP in their modules. It’s also great news for the PrestaShop core, as we can use some of the latest features of PHP in the core. We’ll also be able to use the latest versions of our dependencies, making the core more secure and faster. You can read the full announcement about the decision.

Symfony 5.4

Yes! Symfony has been upgraded from version 4.4 to version 5.4. It’s one of the long-term supported versions. As with every new version of Symfony, there are some new features available for developers, as well as breaking changes. Right now, we list all the notable changes in PrestaShop 9, so we can later add them into the developer documentation.

If you are interested in how the upgrade process progressed, you can go to this pull request.

New default theme (?)

A few months ago we informed you on a Build blog post about Hummingbird. Since then, a lot has changed on the theme. Currently, work on the theme continues based on the list of issues that were split into categories: must-have for the first test version, nice-to-have, and so on. We will need your help testing and making the default theme for PrestaShop as best as possible. If you are a developer and want to discuss with us the future of front-end in PrestaShop, make sure to visit us on the project’s Slack, #hummingbird-theme channel. It hasn’t been decided yet whether Hummingbird will replace Classic or will be an alternative theme. We’ll keep you updated.

Changes in the developer documentation

It looks like those developer documentation updates are now a regular part of the Core Monthly series! In May we managed to improve the documentation in a few areas, for example, a new page has been created that lists some of the global variables available in front office templates. There were also some tiny design improvements, but what’s worth mentioning is that two big updates are coming in June, one regarding working with PrestaShop & Docker, and one explaining web service API in PrestaShop in much more detail with more examples. Stay tuned!

Native modules

In this part of the Core Monthly I would like to send a special thank-you message to @leemyongpakvn who is doing an amazing job helping us with the maintenance of modules, by upgrading Github Actions and taking care of the modules. Thank you!

Project’s general news

A few general news around the project. In May, we welcomed @boherm as a new committer to the project. There were also a few updates on the project’s website. We now have a dedicated page about security policy in the project. Quality Council also added their own page documenting their processes and work. You can find it here. More changes to the project’s website regarding a new project organization introduced in April is coming soon.

Project releases

A quick update about PrestaShop’s GitHub issues and pull requests:

Code changes in the ‘develop’ branch

Back office

Core

FO / BO / WS

  • #32488: Fix references to devdocs (from devdocs.prestashop.com to devdocs.prestashop-project.org). Thank you, @thomasnares

Front office

  • #32673: Add some comments to controllers. Thank you, @Hlavtox
  • #32652: Introduce store presenter. Thank you, @Hlavtox
  • #32500: Fix PDF invoice generator footer which only shows a %s. Thank you, @tesshsu
  • #32312: Fix quantity check when there a customization in cart. Thank you, @unlocomqx
  • #29520: Fix shipping cost on order details page. Thank you, @daresh

Installer

LO

  • #31666: Take locale into account when deciding whether module translation should fall back to the legacy system. Thank you, @samaij

Tests

  • #32746: Bump @typescript-eslint/eslint-plugin from 5.59.6 to 5.59.8 in /tests/UI. Thank you, @dependabot
  • #32732: Bump @faker-js/faker from 8.0.1 to 8.0.2 in /tests/UI. Thank you, @dependabot
  • #32731: Bump @typescript-eslint/parser from 5.59.6 to 5.59.7 in /tests/UI. Thank you, @dependabot
  • #32729: Bump playwright from 1.34.0 to 1.34.3 in /tests/UI. Thank you, @dependabot
  • #32704: Nightly : Fixed fill of Adress Form. Thank you, @Progi1984
  • #32682: Remove workflow skipping that ignored some tests in some cases. Thank you, @jolelievre
  • #32639: Bump eslint from 8.40.0 to 8.41.0 in /tests/UI. Thank you, @dependabot
  • #32638: Bump playwright from 1.33.0 to 1.34.0 in /tests/UI. Thank you, @dependabot
  • #32637: Bump @typescript-eslint/eslint-plugin from 5.59.5 to 5.59.6 in /tests/UI. Thank you, @dependabot
  • #32636: Bump @faker-js/faker from 8.0.0 to 8.0.1 in /tests/UI. Thank you, @dependabot
  • #32593: Bump @typescript-eslint/parser from 5.59.2 to 5.59.6 in /tests/UI. Thank you, @dependabot
  • #32572: Bump @faker-js/faker from 7.6.0 to 8.0.0 in /tests/UI. Thank you, @dependabot
  • #32571: Bump @typescript-eslint/eslint-plugin from 5.59.2 to 5.59.5 in /tests/UI. Thank you, @dependabot
  • #32473: Bump @typescript-eslint/parser from 5.59.1 to 5.59.2 in /tests/UI. Thank you, @dependabot
  • #32472: Bump eslint from 8.39.0 to 8.40.0 in /tests/UI. Thank you, @dependabot
  • #32401: Bump @typescript-eslint/eslint-plugin from 5.59.0 to 5.59.2 in /tests/UI. Thank you, @dependabot
  • #32393: Bump playwright from 1.32.3 to 1.33.0 in /tests/UI. Thank you, @dependabot
  • #32392: Bump @typescript-eslint/parser from 5.59.0 to 5.59.1 in /tests/UI. Thank you, @dependabot
  • #32391: Bump @types/chai from 4.3.4 to 4.3.5 in /tests/UI. Thank you, @dependabot
  • #32375: Functional tests - Fix random error in ‘FO > User account > Get GDPR data in PDF’. Thank you, @nesrineabdmouleh
  • #31921: Verify file exists before parsing it in ThemeValidatorTest. Thank you, @justeen35
  • #30574: Functional Tests : GA for checking TypeScript. Thank you, @Progi1984

Code changes in the ‘8.1.x’ branch

Back office

Core

  • #32574: Bump classic theme to 2.1.1. Thank you, @matks
  • #32562: Update Composer dependencies. Thank you, @matks
  • #32379: Fix translation for 8.1.x. Thank you, @lartist
  • #32155: Don’t attach logo to emails if text only mails is configured 8.1.x. Thank you, @cruftex

Front office

  • #32290: Fix: Setting DNI mandatory after address creation launches an exception during checkout. Thank you, @Codencode

Installer

LO

Tests

  • #32718: Functional tests - Add some tests in ‘FO > Carts’ page. Thank you, @nesrineabdmouleh
  • #32706: Nightly : Fixed check of shipping price. Thank you, @Progi1984
  • #32674: Functional Tests : Hummingbird : FO - Login : Login in FO. Thank you, @Progi1984
  • #32668: Functional Tests : Cash on delivery (COD) module - Reset module. Thank you, @Progi1984
  • #32666: Functional Tests : BO - Design - Image Settings - Check base image format. Thank you, @Progi1984
  • #32640: Fix nightly 18-05 - Add reset filter step to products table. Thank you, @nesrineabdmouleh
  • #32607: Functional Tests : Fixed Mocha typescript loader. Thank you, @Progi1984
  • #32598: Functional tests - Add some tests in “Module manager > Alerts tab”. Thank you, @nesrineabdmouleh
  • #32595: Functional Tests : Remove JS support. Thank you, @Progi1984
  • #32557: Functional tests - Add new test ‘Advanced parameters > Enable disable debug mode’. Thank you, @nesrineabdmouleh
  • #32555: Functional tests - Add some tests in ‘BO > Merchandise return’ page. Thank you, @nesrineabdmouleh
  • #32546: Functional Tests : BO - Modules - Alerts tab - Disable / Enable mobile. Thank you, @Progi1984
  • #32545: Functional tests - Fix ‘BO > Redisplay cart at login’ test. Thank you, @nesrineabdmouleh
  • #32529: Functional Tests : BO - Design - Image Settings - Check stores image format. Thank you, @Progi1984
  • #32511: Functional Tests : BO - Shop Parameters - Search : Fuzzy search. Thank you, @Progi1984
  • #32510: Functional tests - Add some tests in ‘Design > Theme & logo > Pages configuration’. Thank you, @nesrineabdmouleh
  • #32498: Functional tests - Add some tests in module manager page. Thank you, @nesrineabdmouleh
  • #32431: Functional Tests : WS - Countries : CRUD. Thank you, @Progi1984
  • #32419: Functional Tests : Hummingbird - FO - Login : Logout from FO. Thank you, @Progi1984
  • #32417: Functional Tests : CLDR - Search a currency by ISO code. Thank you, @Progi1984
  • #32410: Functional Tests : BO - Design - Image Settings - Check category image format. Thank you, @Progi1984
  • #32402: Functional tests - Fix random error in ‘FO > User account > Get GDPR data in PDF’. Thank you, @nesrineabdmouleh
  • #32314: Functional tests - Add some tests in module manager page. Thank you, @nesrineabdmouleh
  • #32310: Functional Tests : API - Authorization Endpoint. Thank you, @Progi1984

Code changes in the ‘8.0.x’ branch

Back office

  • #32715: Fix: [BO] : Error notification displayed in Multistore page. Thank you, @Codencode

Front office

  • #32345: Hide vouchers with no available quantities. Thank you, @tleon

Code changes in modules, themes and tools

.github

Auto Upgrade module

  • #586: Fixed URL to download PrestaShop releases. Thank you, @nicosomb

Automated tests on Pull Requests

Changes in developer documentation sources

Changes in developer documentation theme

  • #32: Quickfix to make footer responsive. Thank you, @thomasnares
  • #31: Better version selector : Loop on parents of page if non existent on target version while a matching parent is found. Thank you, @thomasnares

Classic theme

  • #115: Update version number to 2.1.2. Thank you, @matks
  • #114: Explain branches in readme. Thank you, @matks
  • #112: Adapt template for manufacturer presenter. Thank you, @Hlavtox

Contact Form module

Contextual Help API

  • #21: Update README with doc link. Thank you, @matks
  • #18: Don’t rely on deprecated save-state and set-output commands. Thank you, @JMorinPS
  • #17: Bump guzzlehttp/psr7 from 2.4.0 to 2.5.0. Thank you, @dependabot

Customer reassurance block module

Dashboard Activity module

Dashboard Goals module

Dashboard Products module

Distribution API

  • #29: Make it more clear how to deploy in README. Thank you, @matks
  • #27: Don’t rely on deprecated save-state and set-output commands. Thank you, @JMorinPS

Docker-templates

  • #8: Fixes friendly URIs:. Thank you, @jagui

Docker images

  • #334: Update links to devdocs : devdocs.prestashop-project.org. Thank you, @thomasnares

Example modules

Faceted search module

Google Analytics module

Hummingbird theme

  • #499: Fix facets search-filters ID name. Thank you, @PululuK
  • #496: Fix: [FO]Carrier extra content not work on deliveryFormSelector change. Thank you, @GytisZum
  • #495: Fix : [FO] FILTERING - Resize screen to mobile. Thank you, @ga-devfront
  • #493: Url properties fix after removing product in cart. Thank you, @GytisZum

Image slider module

  • #84: Fix for issue where sortable is trying to load when not needed. Thank you, @Prestaworks

Kanbanbot

  • #4: Kanbanbot listen to pull request review approvals. Thank you, @lartist
  • #3: Move column after adding wfux wfpm wfa. Thank you, @lartist
  • #1: First implementation. Thank you, @nicosomb

Keycloak_connector_demo

  • #6: Bump phpstan/phpstan from 1.10.14 to 1.10.15. Thank you, @dependabot

Language selector module

  • #38: Update github actions v1v2 to v3, phpdevtools v3.4 to v3.16. Thank you, @leemyongpakvn
  • #68: Update php-dev-tools v3 to v4, github actions v2 to v3. Thank you, @leemyongpakvn

NVD3 Charts module

New Products module

  • #23: Update php-dev-tools v3 to v4, github actions v2 to v3. Thank you, @leemyongpakvn

Pages not found module

  • #31: Fix link to site in README. Thank you, @justeen35
  • #29: Update actions’ checkout, upload-artifact, download-artifact to v3. Thank you, @leemyongpakvn
  • #28: Update php-dev-tools from v3 to v4, php-cs-fixer from v2 to v3. Thank you, @leemyongpakvn
  • #27: Bump version to 2.0.3. Thank you, @Hlavtox

Presthubot

Product Comments module

Quality Assurance module

Search Bar module

  • #53: Update phpdevtools from v3 to v4, github-actions from v2 to v3. Thank you, @leemyongpakvn

Share Buttons module

  • #58: Update phpdevtools from v3 to v4, github-actions from v2 to v3. Thank you, @leemyongpakvn

The PrestaShop open source project

  • #193: Fix link to BROKEN nightly builds…. Thank you, @justeen35
  • #192: Complete security page. Thank you, @matks
  • #191: Add security section. Thank you, @matks
  • #190: Link to user doc v8 not v1.7. Thank you, @justeen35
  • #189: Remove ‘publish on .com’ summary step in release process. Thank you, @matks
  • #188: Improvements on the support page. Thank you, @kpodemski
  • #187: Remove ‘publish on .com’ step in release process. Thank you, @matks
  • #184: Explain CONTRIBUTION_PROCESS.md. Thank you, @matks
  • #183: Created a directory for Quality Council. Thank you, @Progi1984
  • #182: Add boherm to committers. Thank you, @matks
  • #181: Add release wording extraction explanations. Thank you, @lartist

Theme customization module

Translation Files repository

  • #37: Add version 9 in the list of version to handle. Thank you, @jolelievre
  • #36: Add catalogs for version 9. Thank you, @jolelievre
  • #35: Update workflows to use the latest version of TransationTool. Thank you, @jolelievre

TranslationTools Bundle

  • #109: Version 6 of TranslationToolsBundle upgraded to Symfony 5.4 and PHP 8.1. Thank you, @jolelievre

Webservice-postman-examples

  • #2: Add example for Products. Thank you, @thomasnares
  • #1: Adds a collection to show ws usage with custom resource. Thank you, @thomasnares

Wishlist block module

Zip-archives


Thank you to the contributors whose pull requests were merged since the last Core Monthly Report: @0x346e3730, @AlexTechDev, @Codencode, @FabienPapet, @GytisZum, @Hlavtox, @JMorinPS, @M0rgan01, @NicolasCador, @PrestaEdit, @Prestaworks, @Progi1984, @PululuK, @StoreCommanderDev, @aleksiuno, @bogdan202, @boherm, @bykivi, @cruftex, @daresh, @davidglezz, @dependabot, @dkarvounaris, @edelmacias, @ga-devfront, @github-actions, @jagui, @jf-viguier, @jolelievre, @justeen35, @kpodemski, @lartist, @leemyongpakvn, @matks, @mflasquin, @nesrineabdmouleh, @nicosomb, @ps-jarvis, @samaij, @sebajps, @tesshsu, @thomasnares, @tleon, @uguranium, @unlocomqx, @zuk3975!

Thank you to the contributors whose PRs haven’t been merged yet! And of course, a big thank you to all those who contribute with issues and comments on GitHub!

Coding is only just one of the ways you can contribute. Here are some ideas on how you can get involved in the project.

If you need help with contributing or have questions about it, feel free to contact me, @kpodemski, on the project’s Slack.

Happy contributin’ everyone!