Releases: drevops/behat-steps
3.5.1
What's new since 3.5.0
- Update all dependencies to v26.2.0 @renovate[bot] (#526)
- Fixed lint. @AlexSkrypnyk (#527)
- Update drevops/ci-runner Docker tag to v26 @renovate[bot] (#525)
Full Changelog: 3.5.0...3.5.1
@AlexSkrypnyk, @renovate[bot] and renovate[bot]
3.5.0
What's new since 3.4.0
- 🆕
TimeTrait(Drupal)- Control system time in tests using Drupal state overrides
When I set system time to :value
Example:When I set system time to "1737849900"When I reset system time- Automatic cleanup after each scenario via
@AfterScenariohook - Note: Requires a mockable time service in your application. See example implementation
Breaking Changes
⚠️ MetatagTraitnamespace changed- Before:
DrevOps\BehatSteps\Drupal\MetatagTrait - After:
DrevOps\BehatSteps\MetatagTrait - Update your
usestatements accordingly
- Before:
Improvements
-
🔄 PHP 8 Attributes for Hooks [#493]
- All
@BeforeScenarioand@AfterScenarioannotations converted to PHP 8 attributes - Example:
#[BeforeScenario]and#[AfterScenario] - Affects:
BigPipeTrait,BlockTrait,ContentBlockTrait,CookieTrait,EckTrait,EmailTrait,ElementTrait,FieldTrait,FileTrait,MediaTrait,MenuTrait,ParagraphsTrait,TaxonomyTrait,TestmodeTrait,UserTrait,WatchdogTrait
- All
-
🔄 Mink Exception Classes [#482]
- Migrated from generic
\ExceptiontoBehat\Mink\Exception\ExpectationException - Provides better error context and integration with Behat's error handling
- Affects:
CookieTrait,EmailTrait,ElementTrait,FieldTrait,FileDownloadTrait,JavascriptTrait,KeyboardTrait,LinkTrait,PathTrait,ResponseTrait,XmlTrait
- Migrated from generic
Changelog
- Added TimeTrait. @AlexSkrypnyk (#524)
- Moved MetaTag trait to the root namespace. @AlexSkrypnyk (#523)
- [#482] Migrated exceptions to use Mink exception classes. @AlexSkrypnyk (#522)
- [#443] Added AI instructions on how to write tests. @AlexSkrypnyk (#521)
- [#493] Converted hooks from annotations to PHP 8 attributes @AlexSkrypnyk (#520)
- Update all dependencies (major) @renovate[bot] (#519)
- Update drevops/docker-wait-for-dependencies Docker tag to v26 @renovate[bot] (#518)
- Update drevops/ci-runner Docker tag to v25.12.0 @renovate[bot] (#517)
- Update toshimaru/auto-author-assign action to v3.0.1 @renovate[bot] (#516)
- Update toshimaru/auto-author-assign action to v3 @renovate[bot] (#515)
- Update all dependencies to v25.12.1 @renovate[bot] (#514)
- Update all dependencies @renovate[bot] (#513)
- Update actions/upload-artifact action to v6 @renovate[bot] (#512)
- Update selenium/standalone-chromium Docker tag to v143 @renovate[bot] (#510)
- Update drevops/ci-runner Docker tag to v25.11.0 @renovate[bot] (#509)
- Update dependency alexskrypnyk/phpunit-helpers to ^0.15.0 @renovate[bot] (#508)
- Update all dependencies to v25.11.0 @renovate[bot] (#507)
- Update uselagoon/mariadb-10.6-drupal Docker tag to v25.11.0 @renovate[bot] (#506)
- Update dependency alexskrypnyk/phpunit-helpers to ^0.14.0 @renovate[bot] (#504)
- Updated DrevOps PHPCS standard and fixed violations. @AlexSkrypnyk (#505)
- Update actions/checkout action to v6 @renovate[bot] (#503)
- Update dependency drevops/phpcs-standard to ^0.4 @renovate[bot] (#502)
Full Changelog: 3.4.0...3.5.0
@AlexSkrypnyk, @renovate[bot] and renovate[bot]
3.4.0
This release introduces multiple new Behat step definitions, major improvements across existing traits, expanded Drupal module handling, and full XML and responsive testing support — all backed by 100% code coverage across the entire step library.
What's new since 3.3.1
- 🔄
ContentTrait- 🆕 Verical entities format:
Given the following :type content blocks with fields:Given the following :type content with fields:Given the following :bundle media with fields:Given the following :vocabulary terms with fields:Given the following users with fields:
- Example vertical format:
| title | [TEST] V-Page 1 | [TEST] V-Page 2 | | body | One | Two | | status | 1 | 1 |
- 🆕 Verical entities format:
- 🔄
CookieTrait- Improved driver compatibility enforcement and explicit error messages
- 🔄
EmailTrait- 🆕 New steps:
When I send test email to :to with cc :cc with:
Example:When I send test email to "user@example.com" with cc "copy@example.com" with:When I send test email to :to with bcc :bcc with:When I send test email to :to with cc :cc and bcc :bcc with:
- 🆕 New steps:
- 🔄
FieldTrait- 🆕 Radio buttons steps:
When I choose the radio button :selector
Example:When I choose the radio button "edit-gender-male"Then the radio button :selector should be selectedThen the radio button :selector should not be selected
- 🆕 Select steps
When I unselect :option from :selector
Example:When I unselect "Administrator" from "edit-roles"When I clear the select :selector
Example:When I clear the select "field_multi_select"
- 🐞 Form validation
- 🐞 Fixed
Given browser validation for the form :selector is disabled— registers form selector and disables browser validation automatically after each step
Example:Given browser validation for the form "#node-article-form" is disabled - 🆕
@disable-form-validation— disables browser validation for all forms across the entire scenario
- 🐞 Fixed
- 🆕 New date and time handling:
When I fill in the datetime field :label with date :date and time :time
Example:When I fill in the datetime field "Event date" with date "2024-01-15" and time "14:30:00"When I fill in the date part of the datetime field :label with :date
Example:When I fill in the date part of the datetime field "Event date" with "2024-01-15"When I fill in the time part of the datetime field :label with :time
Example:When I fill in the time part of the datetime field "Event date" with "14:30:00"When I fill in the start datetime field :label with date :date and time :time
Example:When I fill in the start datetime field "Event period" with date "2024-01-15" and time "14:30:00"When I fill in the end datetime field :label with date :date and time :time
Example:When I fill in the end datetime field "Event period" with date "2024-01-20" and time "18:00:00"
- 🆕 Radio buttons steps:
- 🔄
LinkTrait- 🐞 Improved error handling when links are missing an
hrefattribute
- 🐞 Improved error handling when links are missing an
- 🆕
ModuleTraitGiven the :module module is enabled
Example:Given the views module is enabledGiven the :module module is disabledThen the :module module should be enabledThen the :module module should be disabledGiven the following modules are enabled:Given the following modules are disabled:Then the following modules should be enabled:Then the following modules should be disabled:@module:module_name— automatically enables module before scenario begins
Example:@module:help@module:!module_name— automatically disables module before scenario begins
Example:@module:!shield
- 🆕
ResponsiveTraitWhen I set the viewport to the :breakpoint breakpoint
Example:When I set the viewport to "mobile_portrait" breakpointWhen I set the viewport width to :width
Example:When I set the viewport width to "480"When I set the viewport height to :height
Example:When I set the viewport height to "900"When I set the viewport to :width by :height
Example:When I set the viewport to "1280" by "800"@breakpoint:NAME— automatically applies the named viewport breakpoint before the scenario begins
Example:@breakpoint:mobile_portrait
- 🔄
WatchdogTrait- Now fails when the
watchdogtable does not exist
- Now fails when the
- 🆕
XmlTraitThen the response should be in XML formatThen the response should not be in XML formatThen the XML element :element should existThen the XML element :element should not existThen the XML element :element should be equal to :textThen the XML element :element should not be equal to :textThen the XML element :element should contain :textThen the XML element :element should not contain :textThen the XML element :element should have :count element(s)Then the XML attribute :attribute on element :element should existThen the XML attribute :attribute on element :element should not existThen the XML attribute :attribute on element :element should be equal to :textThen the XML attribute :attribute on element :element should not be equal to :textThen the XML should use the namespace :namespaceThen the XML should not use the namespace :namespace
Changelog
- [#500] Added steps for radio buttons. @AlexSkrypnyk (#501)
- Moved Drupal fixtures away from file fixtures. @AlexSkrypnyk (#499)
- Renamed fixtures. @AlexSkrypnyk (#498)
- [#415] Added
fieldUnselectOption()andfieldClearSelect()steps for select field manipulation. @AlexSkrypnyk (#497) - Updated assertions method names for consistency. @AlexSkrypnyk (#496)
- Update dependency drevops/phpcs-standard to ^0.3 @renovate[bot] (#495)
- [#423] Fixed browser validation step to work as pre-condition. @AlexSkrypnyk (#494)
- Added string utility helper methods to
HelperTrait. @AlexSkrypnyk (#492) - [#431] Added support for the vertical column format in entity creation steps. @AlexSkrypnyk (#491)
- Increase coverage of other traits. @AlexSkrypnyk (#490)
- Increased coverage for WatchdogTrait. @AlexSkrypnyk (#489)
- Increase coverage for Drupal traits. @AlexSkrypnyk (#488)
- Increased coverage for PathTrait. @AlexSkrypnyk (#487)
- Increased coverage for JavascriptTrait. @AlexSkrypnyk (#485)
- Increased coverage for KeyboardTrait. @AlexSkrypnyk (#486)
- Added VNC port to ahoy info. @AlexSkrypnyk (#484)
- Increased coverage for FieldTrait. @AlexSkrypnyk (#483)
- Increased coverage for Responsive trait. @AlexSkrypnyk (#481)
- Increased coverage for Responsive trait. @AlexSkrypnyk (#480)
- Increased core coverage for docs generator. @AlexSkrypnyk (#479)
- Increased test coverage for WaitTrait. @AlexSkrypnyk (#478)
- Increased test coverage for XmlTrait. @AlexSkrypnyk (#477)
- Increased test coverage for LinkTrait. @AlexSkrypnyk (#476)
- Increased test coverage for CookieTrait. @AlexSkrypnyk (#475)
- Increased test coverage for FileDownloadTrait. @AlexSkrypnyk (#474)
- Increased test coverage for EmailTrait and UserTrait. @AlexSkrypnyk (#473)
- [#433] Added support to enable and disable Drupal modules. @AlexSkrypnyk (#470)
- Moved
provision.shtoscripts. @AlexSkrypnyk (#472) - Fixed code coverage for tests ran in subprocesses. @AlexSkrypnyk (#471)
- [#437] Added XML response assertions in
XmlTrait. @AlexSkrypnyk (#469) - [#406] Added DateTime fields support. @AlexSkrypnyk (#468)
- [#414] Added ResponsiveTrait. @AlexSkrypnyk (#467)
- Update drevops/docker-wait-for-dependencies Docker tag to v25.10.0 @renovate[bot] (#466)
Full Changelog: 3.3.1...3.4.0
@AlexSkrypnyk, @renovate[bot] and renovate[bot]
3.3.1
What's new since 3.3.0
- Update selenium/standalone-chromium Docker tag to v142 @renovate[bot] (#465)
- Fixed coding standards. @AlexSkrypnyk (#464)
Full Changelog: 3.3.0...3.3.1
@AlexSkrypnyk, @renovate[bot] and renovate[bot]
3.3.0
What's new since 3.2.0
New steps
@Then the field :field should be empty@Then the field :field should not be empty- Assertion for no JS errors on the page - add
JavascriptTraitto yourFeatureContext.
Updated steps
@Then the field :field should be :enabled_or_disabled->@Then the field :field should have :enabled_or_disabled state
Changelog:
- Fixed spelling in comments and updated exception wording to be consistent. @AlexSkrypnyk (#462)
- Fixed local variable names and method arguments. @AlexSkrypnyk (#461)
- [#441] Updated formatting for JS scripts and wrapped in IIFE. @AlexSkrypnyk, @ericgsmith (#460)
- Added empty field assertions. @AlexSkrypnyk (#458)
- [#435] Fixed
mediaCreate()not deleting existing media before creating new. @AlexSkrypnyk (#459) - Updated field state assertion steps. @AlexSkrypnyk (#457)
- [#272] Added JS errors assertions. @AlexSkrypnyk (#448)
- Added support for Behat coverage in the Behat CLI subprocess. @AlexSkrypnyk (#456)
- Added smoke test for the JS session handling. @AlexSkrypnyk (#452)
- Update dependency cweagans/composer-patches to v2 @renovate[bot] (#455)
- Update drevops/ci-runner Docker tag to v25.10.0 @renovate[bot] (#454)
- [#438] Updated
BehatCliContextfrom the upstream. @AlexSkrypnyk (#453) - Switched build to D11 by default. @AlexSkrypnyk (#451)
- Support code blocks in the class comments in docs generator. @AlexSkrypnyk (#450)
- Update all dependencies to v25.10.0 @renovate[bot] (#449)
- Update actions/upload-artifact action to v5 @renovate[bot] (#446)
- Fixed coding standards. @AlexSkrypnyk (#447)
Full Changelog: 3.2.0...3.3.0
@AlexSkrypnyk, @ericgsmith, @renovate[bot] and renovate[bot]
3.2.0
What's new since 3.1.0
- Fixed
Given the following menu links exist in the menu :menu_name:and corrected migration docs. @ericgsmith @AlexSkrypnyk (#445) - Update all dependencies (major) @renovate[bot] (#439)
- Updated Rector config to v2 and fixed coding standards issues. @AlexSkrypnyk (#444)
- Added GHA workflow. @AlexSkrypnyk (#428)
- Update all dependencies @renovate[bot] (#436)
- Update selenium/standalone-chromium Docker tag to v140 @renovate[bot] (#434)
- Update all dependencies to v25.8.0 @renovate[bot] (#432)
- Update selenium/standalone-chromium Docker tag to v139 @renovate[bot] (#429)
- Fixed coding standards. @AlexSkrypnyk (#430)
- Update all dependencies to v25.7.0 @renovate[bot] (#426)
- Updated test fixtures to 10.5 and 11.2. @AlexSkrypnyk (#427)
- Update selenium/standalone-chromium Docker tag to v138 @renovate[bot] (#425)
- Update all dependencies to v25.6.0 @renovate[bot] (#424)
- Update selenium/standalone-chromium Docker tag to v137 @renovate[bot] (#422)
Full Changelog: 3.1.0...3.2.0
@ericgsmith, @AlexSkrypnyk, @renovate[bot] and renovate[bot]
3.1.0
What's new since 3.0.0
New steps
@Then the element :selector1 should appear after the element :selector2@Then the text :text1 should appear after the text :text2@Then current url should have the :param parameter@Then current url should have the :param parameter with the :value value@Then current url should not have the :param parameter@Then current url should not have the :param parameter with the :value value@When I check the checkbox :selector@When I uncheck the checkbox :selector@Given browser validation for the form :selector is disabled@When I visit the :content_type content revisions page with the title :title@When I visit the :vocabulary_machine_name term page with the name :term_name@When I visit the :vocabulary_machine_name term edit page with the name :term_name@When I visit the :vocabulary_machine_name term delete page with the name :term_name
Updated steps
@Then the path should be :path@Then the path should not be :path@When I edit the :vocabulary_machine_name vocabulary :term_name term page
Changelog:
- [#416] Added
When I visit the :vocabulary_machine_name term delete page with the name :term_name@nsineok (#420) - [#413] Added assertion for the element after element. @nsineok (#419)
- Update all dependencies @renovate[bot] (#417)
- Block, Menu, Date traits pipefail @nsineok (#421)
- #411: added a new scenario - disable browser validation for the form. @nsineok (#412)
- [#399] Added revisions support. @skipper-vp (#408)
- [#407]: Added query parts assertion. @skipper-vp (#410)
- Removed periods from the scenarios in tests. @AlexSkrypnyk (#404)
- [#402] Fixed path trait failing on
<front>. @AlexSkrypnyk (#403) - Added CheckboxTrait. @skipper-vp (#400)
- Fixed FieldTrait incorrectly sitting in the Drupal namespace. @AlexSkrypnyk (#401)
- Expose STEPS.md file to consumer projects. @AlexSkrypnyk (#397)
Full Changelog: 3.0.0...3.1.0
@AlexSkrypnyk, @df-nikita, @nsineok, @renovate[bot], @skipper-vp and renovate[bot]
3.0.0 - Consistent language and new namespaces
Consistent language for step definition is here! 🎉
A list of new steps are available in the STEPS.md
We’ve reviewed and updated every step to align with our strict language guidelines. We've also added automated checks to make sure that the step definition are written in a consistent way in the future.
Drupal-specific traits are now namespaced under Drupal/, making it clear that this library is framework-agnostic and suitable for non-Drupal projects as well. More integrations with PHP applications are on the way.
We’ve also added support for Drupal 11, ensuring compatibility with all actively maintained versions.
The testing coverage was increased: we've added positive and negative tests for every trait to guarantee that the tests pass and fail when they expected to do so; we've also added unit tests for some of the traits to check for the most error-prone code.
For migrating from 2.x, please refer to the migration map.
🤖 Expand to get an AI prompt for features migration
Copy and paste below into your agentic AI client chat.
# Guide to Updating Behat Steps Package in Drupal Projects
This guide explains how to update the drevops/behat-steps package to the latest version and update your Behat tests to work with the new step definitions.
## Overview of the Update Process
1. Update the package version in composer.json
2. Update namespace imports in FeatureContext.php
3. Update step definitions in feature files
4. Test and fix each feature file
## Step-by-Step Instructions
### 1. Update the Package
First, check your current version of drevops/behat-steps in composer.json. Then update to the latest version (3.0.1 or newer) using your project's package management tool.
### 2. Fix FeatureContext.php
The namespace structure has changed in version 3.0.1. You'll need to update your FeatureContext.php file:
1. Locate your FeatureContext.php file (typically in tests/behat/bootstrap/)
2. Update the namespace imports at the top of the file
- Generic traits are now in the root namespace: `DrevOps\BehatSteps\`
- Drupal-specific traits are now in a subdirectory: `DrevOps\BehatSteps\Drupal\`
For example, change:
use DrevOps\BehatSteps\ContentTrait;
use DrevOps\BehatSteps\FieldTrait;
use DrevOps\BehatSteps\FileTrait;
To:
use DrevOps\BehatSteps\Drupal\ContentTrait;
use DrevOps\BehatSteps\Drupal\FieldTrait;
use DrevOps\BehatSteps\Drupal\FileTrait;
Non-Drupal traits remain in the root namespace:
use DrevOps\BehatSteps\LinkTrait;
use DrevOps\BehatSteps\PathTrait;
use DrevOps\BehatSteps\ResponseTrait;
use DrevOps\BehatSteps\WaitTrait;
### 3. Consult the STEPS.md File
**This is the most important reference for the update process!**
The drevops/behat-steps package includes a comprehensive STEPS.md file that documents all available steps. After updating the package:
1. Locate this file at `vendor/drevops/behat-steps/STEPS.md`
2. Review this file thoroughly - it contains all available steps with examples
3. Use this as your primary reference when updating feature files
The STEPS.md file is organized into sections:
- Generic steps (Cookie, Date, Element, Path, etc.)
- Drupal-specific steps (Content, Field, File, Media, etc.)
Each section includes detailed examples of how to use the steps, which is invaluable for updating your tests correctly.
### 4. Find and Update Feature Files
Examine your feature files (typically in tests/behat/features/) and update step definitions to match the new format from STEPS.md:
#### Common Changes Needed:
1. **Path Assertions**:
- Change: `I should be in the "path" path`
- To: `the path should be "path"`
2. **HTTP Response Assertions**:
- Change: `I should get a 200 HTTP response`
- To: `the response status code should be 200`
3. **Response Header Assertions**:
- Change: `response header "X-Header" contains "value"`
- To: `the response header "X-Header" should contain the value "value"`
4. **Link Interaction**:
- Change: `I click the link with title "Title"`
- To: `I click on the link with the title "Title"` or simply `I click "Title"`
5. **Wait Steps**:
- Change: `I wait 2 seconds`
- To: `I wait for 2 seconds`
6. **File Creation**:
- Change: `unmanaged file "public://file.txt" created with content "content"`
- To: `the unmanaged file at the URI "public://file.txt" exists with "content"`
7. **Content Visiting**:
- Change: `I visit content_type "Title"`
- To: `I visit the "content_type" content page with the title "Title"`
### 5. Reference Available Steps
There are two ways to see all available steps in the new package:
1. **STEPS.md File (Recommended)**:
- This is the most comprehensive and user-friendly reference
- Contains examples and descriptions for each step
- Located at `vendor/drevops/behat-steps/STEPS.md`
2. **Behat Definitions Command**:
- Use the Behat definitions command appropriate for your system:
vendor/bin/behat --definitions=i
- This will show all available step definitions but with less context than STEPS.md
Always refer to STEPS.md first, as it provides clearer examples and more detailed information about each step.
### 6. Test Each Feature File
After updating step definitions:
1. Run each feature file individually to identify any issues
2. For failing tests, check screenshots if available to help diagnose the problems
3. Add `@skipped` tag to features that aren't ready to run (you can fix these later)
4. Once individual files pass, run the entire test suite
### 7. Common Troubleshooting
- **Step Not Found**: Verify you're using the current step syntax by checking the step definitions
- **Element Not Found**: The site structure may have changed - update selectors or navigation paths
- **Form Submission Issues**: For form tests, consider checking for broader success indicators rather than specific messages
### Reference Information
The STEPS.md file is your most important reference during this process. It contains:
1. Complete documentation of all available steps
2. Clear examples showing the exact format for each step
3. Descriptions of what each step does
4. Organization by trait/functionality for easy browsing
After updating the package, you should immediately locate and bookmark this file:
vendor/drevops/behat-steps/STEPS.md
If you need to understand specific Behat step behavior in detail, this file should be your first resource.
## Example: Updating a Contact Form Feature
Before:
Scenario: User submits a form
Given I am on the homepage
And I click the link with title "Contact"
When I fill in "Name" with "Test User"
And I press "Send message"
Then I should see the text "Your message has been sent."
After:
Scenario: User submits a form
Given I am on the homepage
And I click "Contact"
When I fill in "Name" with "Test User"
And I press "Send message"
Then I should not see an "#edit-submit" element
What's new since 2.7.0
- Update all dependencies (major) @renovate[bot] (#396)
- Updated docs. @AlexSkrypnyk (#395)
- Split docs generation by context. @AlexSkrypnyk (#394)
- Moved Drupal-related steps into own namespace. @AlexSkrypnyk (#392)
- Removed branch aliases from
composer.json. @AlexSkrypnyk (#391) - Updated traits docs. @AlexSkrypnyk (#390)
- Updated docs generator to include trait info. @AlexSkrypnyk (#389)
- Merged
RoleTraitintoUserTrait. @AlexSkrypnyk (#388) - Merged
SelectTraitintoFieldTrait. @AlexSkrypnyk (#387) - Merged the
VisibilityTraitintoElementTrait. @AlexSkrypnyk (#386) - Fixed tags on tests. @AlexSkrypnyk (#385)
- [#367] Updated
BlockTrait. @skipper-vp (#376) - Added unit tests for some traits. @AlexSkrypnyk (#384)
- Added tests for docs generator. @AlexSkrypnyk (#383)
- Fixed hook implementation names. @AlexSkrypnyk (#382)
- Fixed keywords in tests. @AlexSkrypnyk (#381)
- Added D11 to circleci. @skipper-vp (#380)
- Updated steps docs. @AlexSkrypnyk (#378)
- [#319]: Added D11. @skipper-vp (#377)
- [#368] Updated BlockContentTrait. @skipper-vp (#374)
- Fixed more coding standards and removed PHPMD. @AlexSkrypnyk (#373)
- [#302] Updated VisibilityTrait. @skipper-vp (#372)
- Updated examples in comments. @AlexSkrypnyk (#371)
- Moved JsTrait methods to ElementTrait. @AlexSkrypnyk (#370)
- Fixed methods prefixes. @AlexSkrypnyk (#369)
- [#299] Updated SearchApiTrait. @skipper-vp (#364)
- Updated 3.x with changes between 2.6 and 2.7. @AlexSkrypnyk (#366)
- [#292] Updated MenuTrait. @skipper-vp (#363)
- [#284]: Updated EmailTrait. @skipper-vp (#362)
- Updated SelectTrait. @skipper-vp (#361)
- Updated MediaTrait. @skipper-vp (#359)
- [#288]: Updated JSTrait. @skipper-vp (#358)
- [#287] Updated FileTrait. @skipper-vp (#357)
- [#280] Updated CookieTrait. @skipper-vp (#356)
- [#286] Updated FileDownloadTrait. @skipper-vp (#355)
- [#285] Updated FieldTrait. @skipper-vp (#351)
- [#290] Updated
LinkTrait. @skipper-vp (#349)
Full Changelog: 2.7.0...3.0.0
@AlexSkrypnyk, @renovate[bot], @skipper-vp, Andrey Simonov and renovate[bot]
2.7.0
What's new since 2.6.0
- [#338] Added traits to create, configure blocks and block_content entities. @richardgaunt (#337)
- [#339] Fixed WYSIWYG not filling in multiple fields. @AlexSkrypnyk (#341)
- chore(deps): update selenium/standalone-chromium docker tag to v134 @renovate[bot] (#340)
- chore(deps): update selenium/standalone-chromium docker tag to v133 @renovate[bot] (#336)
- chore(deps): update all dependencies to v25.2.0 @renovate[bot] (#335)
- chore(deps): update uselagoon/php-8.2-fpm docker tag to v25.2.0 @renovate[bot] (#334)
- chore(deps): update selenium/standalone-chromium docker tag to v132 @renovate[bot] (#333)
- chore(deps): update all dependencies to v25 (major) @renovate[bot] (#332)
- chore(deps): update drevops/docker-wait-for-dependencies docker tag to v25.1.1 @renovate[bot] (#330)
- chore(deps): update uselagoon/php-8.2-fpm docker tag to v25 @renovate[bot] (#331)
- chore(deps): update drevops/ci-runner docker tag to v25 @renovate[bot] (#329)
- chore(deps): update drevops/docker-wait-for-dependencies docker tag to v25 @renovate[bot] (#328)
- chore(deps): update all dependencies to v24.12.0 @renovate[bot] (#327)
- chore(deps): update all dependencies to v24.12.0 @renovate[bot] (#326)
- chore(deps): update drevops/docker-wait-for-dependencies docker tag to v24.12.0 @renovate[bot] (#325)
- chore(deps): update selenium/standalone-chromium docker tag to v131 @renovate[bot] (#324)
- chore(deps): update all dependencies to v24.11.0 @renovate[bot] (#323)
- chore(deps): update drevops/ci-runner docker tag to v24.11.0 @renovate[bot] (#316)
Full Changelog: 2.6.0...2.7.0
@AlexSkrypnyk, @renovate[bot], @richardgaunt and renovate[bot]
2.6.0
What's new since 2.5.0
- chore(deps): update selenium/standalone-chromium docker tag to v130 @renovate (#277)
- Moved dev deps into fixture. @AlexSkrypnyk (#278)
- chore(deps): update uselagoon/php-8.2-cli-drupal docker tag to v24.10.0 @renovate (#276)
- Updated code to comply with PHPStan level 7. @AlexSkrypnyk (#274)
- chore(deps): update all dependencies to v24.10.0 @renovate (#275)
- Added
CookieTrait. @AlexSkrypnyk (#273)
Full Changelog: 2.5.0...2.6.0
@AlexSkrypnyk, @renovate and @renovate[bot]