Skip to content

Ibexa Doctrine Migrations - #3337

Merged
adriendupuis merged 32 commits into
release_5.0.11from
doctrine-migrations
Nov 3, 2026
Merged

adriendupuis merged 32 commits into
release_5.0.11from
doctrine-migrations

Conversation

@adriendupuis

@adriendupuis adriendupuis commented Aug 3, 2026 •

Copy link
Copy Markdown
Contributor
Question Answer
JIRA Ticket IBX-11939
Versions 4.6, 5.0, 6.0
Edition All

ibexa/doctrine-migrations#1

Thiis PR will be upmerged to 6.0 but we must remember to adjust 6.0 description to match the final shape of the feature in that branch.

Wait with merge: Paweł is making more changes to the feature related to the dry-run procedure. Wait with implementing his commentss until he confirms the feature behavior is as required.

Checklist

  • Text renders correctly
  • Text has been checked with vale
  • Description metadata is up to date
  • Redirects cover removed/moved pages
  • Code samples are working
  • PHP code samples have been fixed with PHP CS fixer
  • Added link to this PR in relevant JIRA ticket or code PR

@adriendupuis adriendupuis added the Wait with merge PRs that shouldn't be merged instantly label Aug 3, 2026
@github-actions

github-actions Bot commented Aug 3, 2026 •

Copy link
Copy Markdown

Summary

Status Count
🔍 Total 754368
🔗 Unique 15165
✅ Successful 6314
⏳ Timeouts 0
🔀 Redirected 34
👻 Excluded 747999
❓ Unknown 0
🚫 Errors 55
⛔ Unsupported 0

Errors per input

Errors in site/ai/ai_actions/configure_ai_actions/index.html

Errors in site/api/php_api/php_api/index.html

Errors in site/cdp/cdp_activation/cdp_data_export/index.html

Errors in site/content_management/field_types/field_type_reference/urlfield/index.html

Errors in site/getting_started/requirements/index.html

Errors in site/ibexa_cloud/ibexa_cloud_guide/index.html

Errors in site/ibexa_products/ibexa_commerce/index.html

Errors in site/ibexa_products/ibexa_experience/index.html

Errors in site/ibexa_products/ibexa_headless/index.html

Errors in site/infrastructure_and_maintenance/cache/http_cache/reverse_proxy/index.html

Errors in site/infrastructure_and_maintenance/security/reporting_issues/index.html

Errors in site/infrastructure_and_maintenance/security/security_checklist/index.html

Errors in site/permissions/custom_policies/index.html

Errors in site/product_catalog/quable/install_quable/index.html

Errors in site/product_catalog/quable/quable_api/index.html

Errors in site/recommendations/raptor_integration/connector_installation_configuration/index.html

Errors in site/recommendations/raptor_integration/raptor_connector/index.html

Errors in site/recommendations/raptor_integration/raptor_connector_guide/index.html

Errors in site/release_notes/cohesivo_v6.0_deprecations/index.html

Errors in site/release_notes/ez_platform_v1.10.0/index.html

Errors in site/release_notes/ez_platform_v1.11.0/index.html

Errors in site/release_notes/ez_platform_v1.12.0/index.html

Errors in site/release_notes/ez_platform_v1.13.0_lts/index.html

Errors in site/release_notes/ez_platform_v1.7.0_lts/index.html

Errors in site/release_notes/ez_platform_v1.8.0/index.html

Errors in site/release_notes/ez_platform_v1.9.0/index.html

Errors in site/release_notes/ibexa_dxp_v4.0/index.html

Errors in site/release_notes/ibexa_dxp_v4.4/index.html

Errors in site/release_notes/ibexa_dxp_v4.6/index.html

Errors in site/release_notes/ibexa_dxp_v5.0/index.html

Errors in site/resources/new_in_doc/index.html

Errors in site/update_and_migration/from_4.5/update_from_4.5/index.html

Redirects per input

Redirects in site/administration/project_organization/bundles/index.html

Redirects in site/ai/ai_actions/extend_ai_actions/index.html

Redirects in site/api/php_api/php_api/index.html

Redirects in site/cdp/cdp_activation/cdp_data_export/index.html

Redirects in site/commerce/transactional_emails/transactional_emails/index.html

Redirects in site/content_management/field_types/field_type_reference/urlfield/index.html

Redirects in site/content_management/taxonomy/taxonomy/index.html

Redirects in site/getting_started/requirements/index.html

Redirects in site/ibexa_products/ibexa_commerce/index.html

Redirects in site/ibexa_products/ibexa_experience/index.html

Redirects in site/ibexa_products/ibexa_headless/index.html

Redirects in site/infrastructure_and_maintenance/cache/http_cache/reverse_proxy/index.html

Redirects in site/infrastructure_and_maintenance/security/reporting_issues/index.html

Redirects in site/product_catalog/quable/install_quable/index.html

Redirects in site/product_catalog/quable/quable/index.html

Redirects in site/release_notes/cohesivo_v6.0_deprecations/index.html

Redirects in site/release_notes/ez_platform_v1.12.0/index.html

Redirects in site/release_notes/ibexa_dxp_v4.0/index.html

Redirects in site/release_notes/ibexa_dxp_v4.4/index.html

Redirects in site/release_notes/ibexa_dxp_v5.0/index.html

Redirects in site/resources/new_in_doc/index.html

Redirects in site/templating/components/index.html

Redirects in site/templating/image_variations/index.html

Full Github Actions output

@dabrt
dabrt marked this pull request as ready for review October 19, 2026 13:57
@dabrt dabrt added Needs DEV review and removed Wait with merge PRs that shouldn't be merged instantly labels Oct 19, 2026
@dabrt
dabrt requested review from Steveb-p and a balanced review from Copilot October 19, 2026 13:58

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Warning

Copilot couldn't run its full agentic review because it didn't start before the timeout. Make sure your repository has a runner available, or add a copilot-code-review.yml file specifying one with the runs-on attribute. See the docs for more details.

Copilot review overview

7 open issues
What changed in this PR

Updates Ibexa documentation to reflect the introduction of Ibexa Doctrine Migrations for managing schema upgrades instead of manual SQL scripts.

Changes:

  • Replace SQL upgrade/script instructions with ibexa:doctrine:migrations:* commands across installation and update docs.
  • Add new versioned upgrade notes for v4.6.33 and v5.0.11 explaining how to run migrations safely.
  • Update the 4.6 → 5.0 upgrade guide to reference Symfony 7.4 and adjust database-upgrade guidance.
File Description
docs/​users/​oauth_server.md Switch OAuth2 server schema setup from SQL dump pipelines to Ibexa Doctrine migrations.
docs/​update_and_migration/​from_5.0/​update_from_5.0.md Add v5.0.11 section documenting Doctrine migrations-based DB updates.
docs/​update_and_migration/​from_4.6/​update_to_5.0.md Update 4.6→5.0 guide: migrations-based DB upgrade, Symfony 7.4 requirement, and revised conclusions.
docs/​update_and_migration/​from_4.6/​update_from_4.6.md Add v4.6.33 section documenting Doctrine migrations-based DB updates.
docs/​multisite/​translations_management/​configure_translations_management.md Replace SQL schema snippets with migration status/migrate commands.
docs/​ibexa_cloud/​ibexa_cloud_cli.md Add Cloud CLI example for running migrations over SSH; minor wording tweak.
docs/​commerce/​shopping_list/​install_shopping_list.md Replace SQL schema snippets with migration status/migrate commands for Shopping List.

Review effort: Lite

Comment thread docs/ibexa_cloud/ibexa_cloud_cli.md Resolved
@dabrt dabrt added Wait with merge PRs that shouldn't be merged instantly Work in progress labels Oct 22, 2026
@dabrt
dabrt requested a review from Steveb-p October 28, 2026 21:34

@Steveb-p Steveb-p left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, most of the earlier points are in. Remaining:

  • v4.6.33 is only in the 5.0 docs - is a 4.6 counterpart planned?
  • The "Preview only" caution is right for now. If ibexa/doctrine-migrations#25-#27 land in 5.0.11, we'll revisit it.
  • In shopping list and translations management, the caution snippet splits the bullet list.

Comment thread docs/users/oauth_server.md Resolved
Comment thread docs/ibexa_cloud/ibexa_cloud_cli.md Resolved
Comment thread docs/ibexa_cloud/ibexa_cloud_cli.md Resolved
@dabrt
dabrt requested a review from Steveb-p October 30, 2026 08:30

@Steveb-p Steveb-p left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I believe we should also include a note somewhere on how one can apply each migration in sequence (in lieu of running all of them all at once).

php bin/console ibexa:doctrine:migrations:migrate next --dry-run

...and without --dry-run can allow user to go through each migration, one by one.


!!! note "Installing with Doctrine migrations"

By default, `ibexa:install` creates the database schema directly, without tracking individual changes.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Side note to memory: in 6.0, installing via migrations will be the default.

@dabrt dabrt Nov 2, 2026 •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Won't mention it in 5.x, though. Please review the PR after a bunch of my changes from Friday and today. E.g. I added partial updates.

@dabrt
dabrt requested a review from Steveb-p October 30, 2026 10:51
@adriendupuis adriendupuis mentioned this pull request Nov 2, 2026
7 tasks
…grations

# Conflicts:
#	docs/update_and_migration/from_4.6/update_from_4.6.md
#	docs/update_and_migration/from_5.0/update_from_5.0.md
It seems magic auto link can't be used from an included file :/
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown

code_samples/ change report

Before (on target branch)After (in current PR)

code_samples/shopping_list/install/schema.mysql.sql


code_samples/shopping_list/install/schema.mysql.sql

docs/commerce/shopping_list/install_shopping_list.md@45:    ```sql
docs/commerce/shopping_list/install_shopping_list.md@46: [[= include_file('code_samples/shopping_list/install/schema.mysql.sql', 0, None, ' ') =]]
docs/commerce/shopping_list/install_shopping_list.md@47: ```

001⫶ CREATE TABLE ibexa_shopping_list (
002⫶ id INT AUTO_INCREMENT NOT NULL,
003⫶ owner_id INT NOT NULL,
004⫶ identifier CHAR(36) NOT NULL COMMENT '(DC2Type:guid)',
005⫶ name VARCHAR(190) DEFAULT NULL,
006⫶ created_at DATETIME NOT NULL COMMENT '(DC2Type:datetime_immutable)',
007⫶ updated_at DATETIME NOT NULL COMMENT '(DC2Type:datetime_immutable)',
008⫶ is_default TINYINT(1) DEFAULT 0 NOT NULL,
009⫶ UNIQUE INDEX ibexa_shopping_list_identifier_idx (identifier),
010⫶ INDEX ibexa_shopping_list_owner_idx (owner_id),
011⫶ INDEX ibexa_shopping_list_default_idx (is_default),
012⫶ PRIMARY KEY(id)
013⫶ ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_520_ci` ENGINE = InnoDB;
014⫶ CREATE TABLE ibexa_shopping_list_entry (
015⫶ id INT AUTO_INCREMENT NOT NULL,
016⫶ shopping_list_id INT NOT NULL,
017⫶ product_code VARCHAR(64) NOT NULL,
018⫶ identifier CHAR(36) NOT NULL COMMENT '(DC2Type:guid)',
019⫶ added_at DATETIME NOT NULL COMMENT '(DC2Type:datetime_immutable)',
020⫶ UNIQUE INDEX ibexa_shopping_list_entry_identifier_idx (identifier),
021⫶ INDEX ibexa_shopping_list_entry_list_idx (shopping_list_id),
022⫶ INDEX ibexa_shopping_list_entry_product_idx (product_code),
023⫶ INDEX ibexa_shopping_list_entry_added_at_idx (added_at),
024⫶ UNIQUE INDEX ibexa_shopping_list_entry_unique (shopping_list_id, product_code),
025⫶ PRIMARY KEY(id)
026⫶ ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_520_ci` ENGINE = InnoDB;
027⫶ ALTER TABLE ibexa_shopping_list
028⫶ ADD CONSTRAINT ibexa_shopping_list_owner_fk FOREIGN KEY (owner_id) REFERENCES ibexa_user (contentobject_id) ON UPDATE CASCADE ON DELETE CASCADE;
029⫶ ALTER TABLE ibexa_shopping_list_entry
030⫶ ADD CONSTRAINT ibexa_shopping_list_entry_list_fk FOREIGN KEY (shopping_list_id) REFERENCES ibexa_shopping_list (id) ON UPDATE CASCADE ON DELETE CASCADE;
031⫶ ALTER TABLE ibexa_shopping_list_entry
032⫶ ADD CONSTRAINT ibexa_shopping_list_entry_product_fk FOREIGN KEY (product_code) REFERENCES ibexa_product (code) ON UPDATE CASCADE ON DELETE CASCADE;


code_samples/shopping_list/install/schema.postgresql.sql


code_samples/shopping_list/install/schema.postgresql.sql

docs/commerce/shopping_list/install_shopping_list.md@51:    ```sql
docs/commerce/shopping_list/install_shopping_list.md@52: [[= include_file('code_samples/shopping_list/install/schema.postgresql.sql', 0, None, ' ') =]]
docs/commerce/shopping_list/install_shopping_list.md@53: ```

001⫶ CREATE TABLE ibexa_shopping_list (
002⫶ id SERIAL NOT NULL,
003⫶ owner_id INT NOT NULL,
004⫶ identifier UUID NOT NULL,
005⫶ name VARCHAR(190) DEFAULT NULL,
006⫶ created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
007⫶ updated_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
008⫶ is_default BOOLEAN DEFAULT false NOT NULL,
009⫶ PRIMARY KEY (id)
010⫶ );
011⫶ CREATE UNIQUE INDEX ibexa_shopping_list_identifier_idx ON ibexa_shopping_list (identifier);
012⫶ CREATE INDEX ibexa_shopping_list_owner_idx ON ibexa_shopping_list (owner_id);
013⫶ CREATE INDEX ibexa_shopping_list_default_idx ON ibexa_shopping_list (is_default);
014⫶ COMMENT ON COLUMN ibexa_shopping_list.created_at IS '(DC2Type:datetime_immutable)';
015⫶ COMMENT ON COLUMN ibexa_shopping_list.updated_at IS '(DC2Type:datetime_immutable)';
016⫶ CREATE TABLE ibexa_shopping_list_entry (
017⫶ id SERIAL NOT NULL,
018⫶ shopping_list_id INT NOT NULL,
019⫶ product_code VARCHAR(64) NOT NULL,
020⫶ identifier UUID NOT NULL,
021⫶ added_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
022⫶ PRIMARY KEY (id)
023⫶ );
024⫶ CREATE UNIQUE INDEX ibexa_shopping_list_entry_identifier_idx ON ibexa_shopping_list_entry (identifier);
025⫶ CREATE INDEX ibexa_shopping_list_entry_list_idx ON ibexa_shopping_list_entry (shopping_list_id);
026⫶ CREATE INDEX ibexa_shopping_list_entry_product_idx ON ibexa_shopping_list_entry (product_code);
027⫶ CREATE INDEX ibexa_shopping_list_entry_added_at_idx ON ibexa_shopping_list_entry (added_at);
028⫶ CREATE UNIQUE INDEX ibexa_shopping_list_entry_unique ON ibexa_shopping_list_entry (shopping_list_id, product_code);
029⫶ COMMENT ON COLUMN ibexa_shopping_list_entry.added_at IS '(DC2Type:datetime_immutable)';
030⫶ ALTER TABLE ibexa_shopping_list
031⫶ ADD CONSTRAINT ibexa_shopping_list_owner_fk FOREIGN KEY (owner_id) REFERENCES ibexa_user (contentobject_id) ON UPDATE CASCADE ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE;
032⫶ ALTER TABLE ibexa_shopping_list_entry
033⫶ ADD CONSTRAINT ibexa_shopping_list_entry_list_fk FOREIGN KEY (shopping_list_id) REFERENCES ibexa_shopping_list (id) ON UPDATE CASCADE ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE;
034⫶ ALTER TABLE ibexa_shopping_list_entry
035⫶ ADD CONSTRAINT ibexa_shopping_list_entry_product_fk FOREIGN KEY (product_code) REFERENCES ibexa_product (code) ON UPDATE CASCADE ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE;


code_samples/translations_management/install/schema.mysql.sql


code_samples/translations_management/install/schema.mysql.sql

docs/multisite/translations_management/configure_translations_management.md@46:    ```sql
docs/multisite/translations_management/configure_translations_management.md@47: [[= include_code('code_samples/translations_management/install/schema.mysql.sql', indent_level=1) =]]
docs/multisite/translations_management/configure_translations_management.md@48: ```

001⫶ CREATE TABLE IF NOT EXISTS ibexa_auto_translation (
002⫶ id INT AUTO_INCREMENT NOT NULL,
003⫶ provider_identifier VARCHAR(190) NOT NULL,
004⫶ content_id INT NOT NULL,
005⫶ version_no INT NOT NULL,
006⫶ source_language_id BIGINT NOT NULL,
007⫶ target_language_id BIGINT NOT NULL,
008⫶ review_status VARCHAR(64) NOT NULL,
009⫶ created_at DATETIME NOT NULL COMMENT '(DC2Type:datetime_immutable)',
010⫶ updated_at DATETIME NOT NULL COMMENT '(DC2Type:datetime_immutable)',
011⫶ INDEX ibexa_auto_translation_content_version_idx (content_id, version_no),
012⫶ INDEX ibexa_auto_translation_target_language_idx (target_language_id),
013⫶ INDEX ibexa_auto_translation_review_status_idx (review_status),
014⫶ UNIQUE INDEX ibexa_auto_translation_context_uidx (content_id, version_no, source_language_id, target_language_id),
015⫶ PRIMARY KEY(id)
016⫶ ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_520_ci` ENGINE = InnoDB;
017⫶
018⫶ CREATE TABLE IF NOT EXISTS ibexa_auto_translation_review_log (
019⫶ id INT AUTO_INCREMENT NOT NULL,
020⫶ auto_translation_id INT DEFAULT NULL,
021⫶ user_id INT NOT NULL,
022⫶ status VARCHAR(64) NOT NULL,
023⫶ operation VARCHAR(64) NOT NULL,
024⫶ created_at DATETIME NOT NULL COMMENT '(DC2Type:datetime_immutable)',
025⫶ INDEX IDX_325A3B737CE350E8 (auto_translation_id),
026⫶ INDEX ibexa_auto_translation_review_log_auto_translation_created_idx (auto_translation_id, created_at, id),
027⫶ INDEX ibexa_auto_translation_review_log_status_created_idx (status, created_at),
028⫶ INDEX ibexa_auto_translation_review_log_user_idx (user_id),
029⫶ PRIMARY KEY(id)
030⫶ ) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_520_ci` ENGINE = InnoDB;
031⫶
032⫶ ALTER TABLE ibexa_auto_translation_review_log ADD CONSTRAINT ibexa_auto_translation_review_log_auto_translation_fk
033⫶ FOREIGN KEY (auto_translation_id) REFERENCES ibexa_auto_translation (id) ON UPDATE CASCADE ON DELETE SET NULL;
034⫶ ALTER TABLE ibexa_auto_translation_review_log ADD CONSTRAINT ibexa_auto_translation_review_log_user_fk
035⫶ FOREIGN KEY (user_id) REFERENCES ibexa_user (contentobject_id) ON UPDATE CASCADE ON DELETE RESTRICT;


code_samples/translations_management/install/schema.postgresql.sql


code_samples/translations_management/install/schema.postgresql.sql

docs/multisite/translations_management/configure_translations_management.md@52:    ```sql
docs/multisite/translations_management/configure_translations_management.md@53: [[= include_code('code_samples/translations_management/install/schema.postgresql.sql', indent_level=1) =]]
docs/multisite/translations_management/configure_translations_management.md@54: ```

001⫶ CREATE TABLE IF NOT EXISTS ibexa_auto_translation (
002⫶ id SERIAL NOT NULL,
003⫶ provider_identifier VARCHAR(190) NOT NULL,
004⫶ content_id INT NOT NULL,
005⫶ version_no INT NOT NULL,
006⫶ source_language_id BIGINT NOT NULL,
007⫶ target_language_id BIGINT NOT NULL,
008⫶ review_status VARCHAR(64) NOT NULL,
009⫶ created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
010⫶ updated_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
011⫶ PRIMARY KEY(id)
012⫶ );
013⫶
014⫶ CREATE INDEX IF NOT EXISTS ibexa_auto_translation_content_version_idx ON ibexa_auto_translation (content_id, version_no);
015⫶ CREATE INDEX IF NOT EXISTS ibexa_auto_translation_target_language_idx ON ibexa_auto_translation (target_language_id);
016⫶ CREATE INDEX IF NOT EXISTS ibexa_auto_translation_review_status_idx ON ibexa_auto_translation (review_status);
017⫶ CREATE UNIQUE INDEX IF NOT EXISTS ibexa_auto_translation_context_uidx ON ibexa_auto_translation (content_id, version_no, source_language_id, target_language_id);
018⫶ COMMENT ON COLUMN ibexa_auto_translation.created_at IS '(DC2Type:datetime_immutable)';
019⫶ COMMENT ON COLUMN ibexa_auto_translation.updated_at IS '(DC2Type:datetime_immutable)';
020⫶
021⫶ CREATE TABLE IF NOT EXISTS ibexa_auto_translation_review_log (
022⫶ id SERIAL NOT NULL,
023⫶ auto_translation_id INT DEFAULT NULL,
024⫶ user_id INT NOT NULL,
025⫶ status VARCHAR(64) NOT NULL,
026⫶ operation VARCHAR(64) NOT NULL,
027⫶ created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL,
028⫶ PRIMARY KEY(id)
029⫶ );
030⫶
031⫶ CREATE INDEX IF NOT EXISTS IDX_325A3B737CE350E8 ON ibexa_auto_translation_review_log (auto_translation_id);
032⫶ CREATE INDEX IF NOT EXISTS ibexa_auto_translation_review_log_auto_translation_created_idx ON ibexa_auto_translation_review_log (auto_translation_id, created_at, id);
033⫶ CREATE INDEX IF NOT EXISTS ibexa_auto_translation_review_log_status_created_idx ON ibexa_auto_translation_review_log (status, created_at);
034⫶ CREATE INDEX IF NOT EXISTS ibexa_auto_translation_review_log_user_idx ON ibexa_auto_translation_review_log (user_id);
035⫶ COMMENT ON COLUMN ibexa_auto_translation_review_log.created_at IS '(DC2Type:datetime_immutable)';
036⫶
037⫶ ALTER TABLE ibexa_auto_translation_review_log ADD CONSTRAINT ibexa_auto_translation_review_log_auto_translation_fk
038⫶ FOREIGN KEY (auto_translation_id) REFERENCES ibexa_auto_translation (id) ON UPDATE CASCADE ON DELETE SET NULL;
039⫶ ALTER TABLE ibexa_auto_translation_review_log ADD CONSTRAINT ibexa_auto_translation_review_log_user_fk
040⫶ FOREIGN KEY (user_id) REFERENCES ibexa_user (contentobject_id) ON UPDATE CASCADE ON DELETE RESTRICT;

Download colorized diff

@adriendupuis
adriendupuis merged commit 88baf77 into release_5.0.11 Nov 3, 2026
10 of 11 checks passed
@adriendupuis
adriendupuis deleted the doctrine-migrations branch November 3, 2026 10:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Needs DEV review Wait with merge PRs that shouldn't be merged instantly

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants