Commit graph

40439 commits

Author SHA1 Message Date
Karol Wojdyła
652bdbdbe1
[ApiBundle] Fix "Undefined array key 0" in PathPrefixProvider when path equals API route (#19012)
Some checks are pending
Continuous Integration (Minimal) / Static checks (push) Waiting to run
Continuous Integration (Minimal) / Tests (MariaDB) (push) Blocked by required conditions
Continuous Integration (Minimal) / Tests (MySQL) (push) Blocked by required conditions
Continuous Integration (Minimal) / Javascript Tests (MySQL) (push) Blocked by required conditions
Continuous Integration (Minimal) / Tests (PostgreSQL) (push) Blocked by required conditions
Continuous Integration (Minimal) / Frontend (push) Blocked by required conditions
Continuous Integration (Minimal) / Packages (push) Blocked by required conditions
| Q               | A
|-----------------|-----
| Branch?         | 2.2 
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | 
| License         | MIT

## Description:

When the request path equals the configured API route exactly (e.g.
/api/v2 — the Swagger UI docs URL), PathPrefixProvider::getPathPrefix()
produced an empty $pathElements array and
  triggered a PHP warning on $pathElements[0].

This surfaced after upgrading api-platform/symfony to 4.3.x, where
SwaggerUiProcessor normalizes the OpenAPI doc — which calls
IriConverter::getIriFromResource() with request_uri =
  /api/v2 and hits this code path.

Fix: return null early when no path segments remain after stripping the
API route prefix.

Tests: added two regression tests covering path == apiRoute and path ==
apiRoute . '/'.
2026-05-19 13:28:00 +02:00
Michał Kaczmarek
5e41cb5207 Fix bug 2026-05-19 12:48:52 +02:00
Grzegorz Sadowski
fbf3e994db
[ApiBundle][Tests] Add regression test for anonymous cart pickup wit… (#19009)
Some checks are pending
Continuous Integration (Minimal) / Static checks (push) Waiting to run
Continuous Integration (Minimal) / Tests (MariaDB) (push) Blocked by required conditions
Continuous Integration (Minimal) / Tests (MySQL) (push) Blocked by required conditions
Continuous Integration (Minimal) / Javascript Tests (MySQL) (push) Blocked by required conditions
Continuous Integration (Minimal) / Tests (PostgreSQL) (push) Blocked by required conditions
Continuous Integration (Minimal) / Frontend (push) Blocked by required conditions
Continuous Integration (Minimal) / Packages (push) Blocked by required conditions
| Q               | A
|-----------------|-----
| Branch?         | 2.2
| Bug fix?        | no
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | n/a
| License         | MIT
2026-05-18 10:24:50 +02:00
Wojdylak
bdf55e7f43
[ApiBundle][Tests] Add regression test for anonymous cart pickup with registered email 2026-05-18 09:34:54 +02:00
Kamil Grygierzec
cec31ee650
BUGFIX: Expose ShippingMethod *DeliveryTimeDays in admin API (#18988)
Some checks failed
Continuous Integration (Minimal) / Static checks (push) Has been cancelled
Continuous Integration (Minimal) / Frontend (push) Has been cancelled
Continuous Integration (Minimal) / Packages (push) Has been cancelled
Continuous Integration (Minimal) / Tests (MariaDB) (push) Has been cancelled
Continuous Integration (Minimal) / Tests (MySQL) (push) Has been cancelled
Continuous Integration (Minimal) / Javascript Tests (MySQL) (push) Has been cancelled
Continuous Integration (Minimal) / Tests (PostgreSQL) (push) Has been cancelled
| Q               | A
|-----------------|-----
| Branch?         | 2.2
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | fixes #18986
| License         | MIT


<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
2026-05-12 10:37:11 +02:00
Daniel Lienert
c30e4a4f35
TASK: Add separate tests for setting / updating delivery times 2026-05-10 22:13:50 +02:00
Daniel Lienert
23da96ac0e
BUGFIX: Expose ShippingMethod minDeliveryTimeDays / maxDeliveryTimeDays in admin API
| Q               | A
|-----------------|-----
| Branch?         | 2.2
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | fixes #18986
| License         | MIT
2026-05-10 22:03:52 +02:00
Kamil Grygierzec
bead750c0b
Fix attribute card style for product show (#18990)
| Q               | A
|-----------------|-----
| Branch?         | 2.2
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->

Fixes UI glitch in product show in Admin Ui. The attribute card is
missing the card-body class and thus renders "wrong", see the
screenshot:
<img width="682" height="275" alt="Screenshot 2026-04-25 103400"
src="https://github.com/user-attachments/assets/566e5388-fc28-4647-a6e6-0d272f92c716"
/>

With the change applied, it looks like this:
<img width="769" height="316" alt="Screenshot 2026-04-25 103511"
src="https://github.com/user-attachments/assets/4397f113-531d-49fb-9a25-37a403125c49"
/>

I've also removed the `<div class="bg-white mb-3"></div>` which I don't
think is needed here.
2026-04-29 12:04:57 +02:00
Kamil Grygierzec
69e1eb0dfb
Fix modals appearing behind backdrop on sticky page-header (#18989)
| Q               | A
|-----------------|-----
| Branch?         | 2.2 <!-- see the comment below -->
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations? | no/yes <!-- don't forget to update the UPGRADE-*.md
file -->
| Related tickets | fixes #X, partially #Y, mentioned in #Z
| License         | MIT

Fixed modals display in admin panel.
2026-04-29 09:47:28 +02:00
TheMilek
4655265e90
Fix taxon tree delete confirmation adn shipping archive selector after modal change 2026-04-29 08:56:15 +02:00
Bartłomiej Sęk
6d6b0e5065 Fix tests 2026-04-27 13:32:46 +02:00
Bartłomiej Sęk
7af3d557fe Add upgrade file note 2026-04-27 12:49:08 +02:00
Bartłomiej Sęk
729530d42e Fix modals in page header 2026-04-27 12:41:48 +02:00
Stephan Hochdörfer
b9db109d01 Fix attribute card style for product show 2026-04-25 10:31:15 +02:00
TheMilek
11373d8bf9
Change application's version to v2.2.6-dev 2026-04-10 10:59:14 +02:00
TheMilek
0b0bc2d68b
Generate changelog for v2.2.5 2026-04-10 10:57:59 +02:00
TheMilek
7ed1f4eda6
Change application's version to v2.2.5 2026-04-10 10:56:17 +02:00
Kamil Grygierzec
255f2d3f73
[UPMERGE] 2.1 -> 2.2 (#18976)
This PR has been generated automatically.
For more details see
[upmerge_pr.yaml](/Sylius/Sylius/blob/2.3/.github/workflows/upmerge_pr.yaml).

**Remember!** The upmerge should always be merged with using `Merge pull
request` button.

In case of conflicts, please resolve them manually with usign the
following commands:
```
git fetch upstream
gh pr checkout <this-pr-number>
git merge upstream/2.2 -m "Resolve conflicts between 2.1 and 2.2"
```

If you use other name for the upstream remote, please replace `upstream`
with the name of your remote pointing to the `Sylius/Sylius` repository.

Once the conflicts are resolved, please run `git merge --continue` and
push the changes to this PR.
2026-04-10 10:54:05 +02:00
TheMilek
ad1c62bb9e
Resolve conflicts between 2.1 and 2.2 2026-04-10 10:52:41 +02:00
TheMilek
c6ea41803e
Change application's version to v2.1.15-dev 2026-04-10 10:47:28 +02:00
TheMilek
e0351a476e
Generate changelog for v2.1.14 2026-04-10 10:44:50 +02:00
TheMilek
bfeaa8ee2c
Change application's version to v2.1.14 2026-04-10 10:43:05 +02:00
Kamil Grygierzec
cc98e12428
[UPMERGE] 2.1 -> 2.2 (#18975)
This PR has been generated automatically.
For more details see
[upmerge_pr.yaml](/Sylius/Sylius/blob/2.3/.github/workflows/upmerge_pr.yaml).

**Remember!** The upmerge should always be merged with using `Merge pull
request` button.

In case of conflicts, please resolve them manually with usign the
following commands:
```
git fetch upstream
gh pr checkout <this-pr-number>
git merge upstream/2.2 -m "Resolve conflicts between 2.1 and 2.2"
```

If you use other name for the upstream remote, please replace `upstream`
with the name of your remote pointing to the `Sylius/Sylius` repository.

Once the conflicts are resolved, please run `git merge --continue` and
push the changes to this PR.
2026-04-10 09:33:06 +02:00
Kamil Grygierzec
7b87b75557
Unify Tests directory with tests (#18974)
| Q               | A
|-----------------|-----
| Branch?         | 2.1 <!-- see the comment below -->
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
It was probably a mistake
2026-04-10 09:15:11 +02:00
TheMilek
a46c8f031d
[Taxonomy] Unify Tests directory with tests 2026-04-10 08:52:40 +02:00
TheMilek
243b925688
[Core] Unify Tests directory with tests 2026-04-10 08:52:40 +02:00
TheMilek
2a7bb46f97
[API] Unify Tests directory with tests 2026-04-10 08:52:34 +02:00
Kamil Grygierzec
1c207a8901
[API] Make API Platform resource command classes overridable via container parameters (#18958)
| Q               | A
|-----------------|-----
| Branch?         | 2.2
| Bug fix?        | no
| New feature?    | yes
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | 
| License         | MIT

## Summary

Some API Platform resource definitions use command classes directly as
the `class` attribute of the `<resource>` tag. Unlike entity-based
resources (e.g. `%sylius.model.product.class%`), these command classes
were hardcoded, making them impossible to override without replacing the
entire XML file.

This PR introduces container parameters for these classes, following the
same convention already used for Sylius model classes.

## Changes

**New parameters** defined in
`src/Sylius/Bundle/ApiBundle/Resources/config/services.xml`:

| Parameter | Default class |
|---|---|
| `sylius_api.command.account.reset_password.class` |
`Sylius\Bundle\ApiBundle\Command\Account\ResetPassword` |
| `sylius_api.command.account.verify_shop_user.class` |
`Sylius\Bundle\ApiBundle\Command\Account\VerifyShopUser` |
| `sylius_api.command.admin.account.reset_password.class` |
`Sylius\Bundle\ApiBundle\Command\Admin\Account\ResetPassword` |
| `sylius_api.command.send_contact_request.class` |
`Sylius\Bundle\ApiBundle\Command\SendContactRequest` |

**Updated resource files:**
- `resources/shop/CustomerPassword.xml`
- `resources/shop/CustomerVerification.xml`
- `resources/shop/Contact.xml`
- `resources/admin/AdminUserPassword.xml`

Only the `class` attribute of `<resource>` tags has been parameterized.
The `input` attributes on `<operation>` tags remain unchanged.
2026-04-10 08:36:49 +02:00
Kamil Grygierzec
29f497a0c7
[UPMERGE] 2.1 -> 2.2 (#18973)
This PR has been generated automatically.
For more details see
[upmerge_pr.yaml](/Sylius/Sylius/blob/2.3/.github/workflows/upmerge_pr.yaml).

**Remember!** The upmerge should always be merged with using `Merge pull
request` button.

In case of conflicts, please resolve them manually with usign the
following commands:
```
git fetch upstream
gh pr checkout <this-pr-number>
git merge upstream/2.2 -m "Resolve conflicts between 2.1 and 2.2"
```

If you use other name for the upstream remote, please replace `upstream`
with the name of your remote pointing to the `Sylius/Sylius` repository.

Once the conflicts are resolved, please run `git merge --continue` and
push the changes to this PR.
2026-04-10 08:12:01 +02:00
Kamil Grygierzec
2731b50fbc
Fix admin templates (#18972)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        |yes
| New feature?    | nos
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | 
| License         | MIT

Apply the fixes we did on Sylius stack:
- https://github.com/Sylius/Stack/pull/358
- https://github.com/Sylius/Stack/pull/359

And this few improvement that is not merged yet:
- https://github.com/Sylius/Stack/pull/364

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
2026-04-09 16:53:39 +02:00
Loïc Frémont
98ebb3fa8e Fix admin templates 2026-04-09 16:04:45 +02:00
Kamil Grygierzec
baf1e9ca5d
Add email validation constraints to cart update (#18970)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | #18967
| License         | MIT
2026-04-09 13:04:43 +02:00
Kamil Grygierzec
943317d5e9
Add missing status code mapping for OrderItemNotFoundException (#18969)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | 
| Related tickets | #18787
| License         | MIT
2026-04-09 12:53:37 +02:00
Marek Rzytki
8a3ab3c62e Add tests for email validation on cart update 2026-04-09 12:35:33 +02:00
Grzegorz Sadowski
675e2ccb46
Allow choosing different payment method with skip payment step when it gets disabled (#18965)
| Q               | A
|-----------------|-----
| Branch?         | 2.1 <!-- see the comment below -->
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Related tickets | fixes #11678
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->

The new transition needs to be added to state machine to allow to come
back to payment select step, example - we've proceeded to order
complete:
<img width="768" height="227" alt="image"
src="https://github.com/user-attachments/assets/37e3d011-ebd3-4815-9a5e-ce284905b5b9"
/>

Then the payment method have been disabled and other one enabled:
<img width="1287" height="496" alt="image"
src="https://github.com/user-attachments/assets/f15c2fe2-609e-49cf-949f-85d32251a112"
/>

The changes brings back the payment select step, but its non possible to
go back there becouse of the state machine transition being in skip
payment state, the only way in this case is to come back to shipping:
<img width="1602" height="724" alt="image"
src="https://github.com/user-attachments/assets/d95bd393-bf4c-4627-b78a-4249a4566110"
/>
2026-04-09 11:37:46 +02:00
Marek Rzytki
5f528776f4 Add email validation constraints to cart update 2026-04-09 11:32:36 +02:00
TheMilek
e66addc9ce
Refine the behat tests 2026-04-09 11:12:53 +02:00
Marek Rzytki
bd194744e8 Add missing status code mapping for OrderItemNotFoundException 2026-04-09 11:01:36 +02:00
TheMilek
6fcd3c6848
Add special guard for the case when total is zero 2026-04-09 10:01:48 +02:00
TheMilek
660e1a86c2
Add transition to payment select if the only payment method enabled gets disabled 2026-04-09 10:01:48 +02:00
TheMilek
e7ba8c157d
Allow choosing different payment method, when the only one enabled gets disabled during checkout with skip payment step 2026-04-09 10:01:47 +02:00
Kamil Grygierzec
c112bfffb5
[UPMERGE] 2.1 -> 2.2 (#18968)
This PR has been generated automatically.
For more details see
[upmerge_pr.yaml](/Sylius/Sylius/blob/2.3/.github/workflows/upmerge_pr.yaml).

**Remember!** The upmerge should always be merged with using `Merge pull
request` button.

In case of conflicts, please resolve them manually with usign the
following commands:
```
git fetch upstream
gh pr checkout <this-pr-number>
git merge upstream/2.2 -m "Resolve conflicts between 2.1 and 2.2"
```

If you use other name for the upstream remote, please replace `upstream`
with the name of your remote pointing to the `Sylius/Sylius` repository.

Once the conflicts are resolved, please run `git merge --continue` and
push the changes to this PR.
2026-04-09 08:37:39 +02:00
Kamil Grygierzec
82ef275a96
Unified name translations handling in admin grid index (#18922)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | fixes #17924
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
2026-04-08 13:09:56 +02:00
piotrbalcerzak
e804eb3026
Add upgrade note 2026-04-08 12:52:34 +02:00
piotrbalcerzak
58969e98a3
Unified logic in inventory grid 2026-04-08 12:51:12 +02:00
piotrbalcerzak
45e35ce134
Unified name translations handling in admin grid index 2026-04-08 12:51:09 +02:00
Kamil Grygierzec
69c2aa78a6
Restore missing page titles for admin resource show pages (#18940)
| Q               | A
|-----------------|-----
| Branch?         | 1.14, 2.0 or 2.1 <!-- see the comment below -->
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | fixes #18934
| License         | MIT
2026-04-08 12:44:18 +02:00
Kamil Grygierzec
37d3ce70e8
[UPMERGE] 2.1 -> 2.2 (#18964)
This PR has been generated automatically.
For more details see
[upmerge_pr.yaml](/Sylius/Sylius/blob/2.3/.github/workflows/upmerge_pr.yaml).

**Remember!** The upmerge should always be merged with using `Merge pull
request` button.

In case of conflicts, please resolve them manually with usign the
following commands:
```
git fetch upstream
gh pr checkout <this-pr-number>
git merge upstream/2.2 -m "Resolve conflicts between 2.1 and 2.2"
```

If you use other name for the upstream remote, please replace `upstream`
with the name of your remote pointing to the `Sylius/Sylius` repository.

Once the conflicts are resolved, please run `git merge --continue` and
push the changes to this PR.
2026-04-08 10:40:13 +02:00
Grzegorz Sadowski
3e62259af2
Resolve flash alert correctly without breaking translation (#18961)
| Q               | A
|-----------------|-----
| Branch?         | 2.1 <!-- see the comment below -->
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations? | no <!-- don't forget to update the UPGRADE-*.md file
-->
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->


<img width="552" height="422" alt="image"
src="https://github.com/user-attachments/assets/4e4c0084-d99f-49da-9165-3772c5e2cd89"
/>

The core issue is that we are overwriting the type in the loop, to show
correct alert, but it breaks the translation key when iterating on more
than one error
2026-04-07 13:05:31 +02:00
TheMilek
6da5daa0d7
Resolve flash alert correctly without overwriting type, to show translation correctly 2026-04-07 12:21:59 +02:00