Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions .github/workflows/api_refs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -124,6 +124,9 @@ jobs:
fi
composer config --global http-basic.updates.ibexa.co $SATIS_NETWORK_KEY $SATIS_NETWORK_TOKEN

git config --global user.name "${GITHUB_ACTOR}"
git config --global user.email "${GITHUB_ACTOR}@users.noreply.github.com"

if [[ '4.6' != $BASE_BRANCH ]]; then
tools/api_refs/api_refs.sh
# Fix escape character:
Expand All @@ -140,8 +143,6 @@ jobs:
env:
BASE_BRANCH: ${{ steps.version_and_branches.outputs.base_branch }}
run: |
git config --global user.name "${GITHUB_ACTOR}"
git config --global user.email "${GITHUB_ACTOR}@users.noreply.github.com"
git add docs/api/php_api/php_api_reference/
if [[ '4.6' != $BASE_BRANCH ]]; then
git add tools/api_refs/.phpdoc/template/package-edition-map.twig
Expand Down
21 changes: 11 additions & 10 deletions docs/ai/mcp/mcp_config.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@
| [`instructions`](https://modelcontextprotocol.io/specification/2025-11-25/schema#initializeresult-instructions) | string | No | `null` | Prompt-like instructions provided to the AI agent |
| [`tools`](#tool-configuration) | array | No | `[]` | List of tool classes |
| <nobr>[`discovery_cache`](#discovery-cache)</nobr> | string | Yes | | PSR-6 or PSR-16 cache pool service identifier |
| [`session`](#session-storage) | object | Yes | | Session storage configuration |
| [`session`](#session-storage) | object | No | `{ type: psr16,`<br><nobr>`service: ibexa.cache_pool }`</nobr> | Session storage configuration |
| [`allowed_hosts`](#allowed-hosts) | array | No | `[`<br><nobr>`'localhost',`</nobr><br>`'127.0.0.1',`<br>`'[::1]'`<br>`]` | Accepted `Host` headers |

!!! note "New servers are disabled by default"
Expand Down Expand Up @@ -122,7 +122,8 @@
- `get_content_type` - gets a content type by its ID.
- `get_content_type_by_identifier` - gets a content type by its identifier.
- `get_content_type_list` - gets content types by their IDs.
- `create_content_type` - creates a content type draft.
- `create_content_type` - creates a draft for a new content type.
- `create_content_type_draft` - creates a draft for an existing content type.
- `get_content_type_draft` - gets a content type draft by content type ID.
- `publish_content_type_draft` - publishes a content type draft by content type ID.
- `Ibexa\Mcp\Tool\ContentType\FieldDefinitionTools`
Expand Down Expand Up @@ -186,19 +187,19 @@

#### Options

| Option | Type | Default | Description |
|-------------|---------|------------|-----------------------------------------------------------|
| `type` | enum | (required) | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
| `service` | string | `null` | PSR-16 cache service ID for the `psr16` session store |
| `prefix` | string | `mcp_` | Key prefix for the `psr16` session store |
| `directory` | string | `null` | Directory path for the `file` session store |
| `ttl` | integer | `3600` | Session TTL in seconds |
| Option | Type | Default | Description |
|-------------|---------|--------------------|----------------------------------------------------------------|
| `type` | enum | `psr16` | Session store type: [`psr16`](#psr-16) or [`file`](#file) |
| `service` | string | `ibexa.cache_pool` | PSR-16 or PSR-6 cache service ID for the `psr16` session store |
| `prefix` | string | `mcp_` | Key prefix for the `psr16` session store |
| `directory` | string | `null` | Directory path for the `file` session store |
| `ttl` | integer | `3600` | Session TTL in seconds |

In production, it’s recommended to use [`psr16`](#psr-16) with Redis/Valkey, like with [regular sessions](clustering.md#shared-sessions).

#### PSR-16

Sessions are stored with a PSR-16 compatible cache implementation.
Sessions are stored with a PSR-16 or PSR-6 compatible cache implementation.

Check notice on line 202 in docs/ai/mcp/mcp_config.md

View workflow job for this annotation

GitHub Actions / vale

[vale] docs/ai/mcp/mcp_config.md#L202

[Ibexa.Passive] Try to avoid passive tense, when possible.
Raw output
{"message": "[Ibexa.Passive] Try to avoid passive tense, when possible.", "location": {"path": "docs/ai/mcp/mcp_config.md", "range": {"start": {"line": 202, "column": 10}}}, "severity": "INFO"}
It requires that a `service` option points to a valid cache service ID.
Optionally, you could use a more specific `prefix` option than the default `mcp_` to avoid key collisions with other cache usages.
Such setup is suitable for production environments.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ When you work with your Commerce implementation, you can modify and customize th

## Configure order processing workflow

Order processing workflow relies on a [Symfony Workflow]([[= symfony_doc =]]/components/workflow.html).
Order processing workflow relies on a [Symfony Workflow]([[= symfony_doc =]]/workflow.html).
Each transition represents a separate order processing step.

### Default order processing configuration
Expand Down
2 changes: 1 addition & 1 deletion docs/commerce/payment/configure_payment.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ When you work with your Commerce implementation, you can review and modify the p

## Configure payment workflow

Payment workflow relies on a [Symfony Workflow]([[= symfony_doc =]]/components/workflow.html).
Payment workflow relies on a [Symfony Workflow]([[= symfony_doc =]]/workflow.html).
Each transition represents a separate payment step.

### Default payment workflow configuration
Expand Down
2 changes: 1 addition & 1 deletion docs/commerce/shipping_management/configure_shipment.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ When you work with your Commerce implementation, you can review and modify the s

## Configure shipment workflow

Shipment workflow relies on a [Symfony Workflow]([[= symfony_doc =]]/components/workflow.html).
Shipment workflow relies on a [Symfony Workflow]([[= symfony_doc =]]/workflow.html).
Each transition represents a separate shipment step.

The default fallback workflow is `ibexa_shipment`, which is prepended at bundle level.
Expand Down
4 changes: 2 additions & 2 deletions docs/commerce/transactional_emails/transactional_emails.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ edition: commerce

# Transactional emails

Transactional emails are messages that [[= product_name =]] can send through [Actito](https://www.actito.com/en-BE/) gateway to your end-users to notify them about changes in the status of various actions taken in relation to your commerce presence.
Transactional emails are messages that [[= product_name =]] can send through [Actito](https://actito.com/en) gateway to your end-users to notify them about changes in the status of various actions taken in relation to your commerce presence.

By default, notifications are sent in relation to the following events, to an email address of the end-user who has originated these events:

Expand Down Expand Up @@ -40,7 +40,7 @@ Symfony Flex installs and activates the package.

### Configure Actito integration

Before you can start configuring the notifier engine to process and dispatch notifications to be forwarded as transactional emails, you must first obtain and configure an [Actito license](https://www.actito.com/en-BE/pricing/nk).
Before you can start configuring the notifier engine to process and dispatch notifications to be forwarded as transactional emails, you must first obtain and configure an [Actito license](https://actito.com/en/pricing/).

Once you gain access to the Actito dashboard:

Expand Down
2 changes: 1 addition & 1 deletion docs/discounts/discounts_api.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ Discounts are applied in two places, listed in the [`DiscountType`](/api/php_api
Regardless of activation place, discounts always apply to products and reduce their base price.

To define when a discount activates and how the price is reduced, use rules and conditions.
They use the [Symfony Expression language]([[= symfony_doc=]]/components/expression_language.html) to express their logic.
They use the [Symfony Expression language]([[= symfony_doc=]]/expression_language.html) to express their logic.

### Rules

Expand Down
2 changes: 1 addition & 1 deletion docs/discounts/extend_discounts.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Together with the existing [events](event_reference.md) and the [Discounts PHP A

With custom [conditions](discounts_api.md#conditions) and [rules](discounts_api.md#rules) you can create more advanced discounts that apply only in specific scenarios.

For both of them, you need to specify their logic with [Symfony's expression language](https://symfony.com/doc/current/components/expression_language.html).
For both of them, you need to specify their logic with [Symfony's expression language]([[= symfony_doc =]]/expression_language.html).

### Available expressions

Expand Down
2 changes: 1 addition & 1 deletion docs/ibexa_products/ibexa_commerce.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ You can set up your search engine using [[= product_name_com =]] to help clients

#### Transactional emails

Commerce allows you to send transactional emails - messages that [[= product_name_base =]] can send through the [Actito](https://www.actito.com/en-BE/) gateway to your end-users.
Commerce allows you to send transactional emails - messages that [[= product_name_base =]] can send through the [Actito](https://actito.com/en) gateway to your end-users.
These emails include notifications about changes in the status of various actions taken in relation to your commerce presence.
With this feature you can also [create email campaigns](transactional_emails.md#create-email-campaigns) to engage users and increase sales.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ To see where and how to contribute additional caches, refer to the [source code]
!!! note

Current implementation uses [Symfony application cache]([[= symfony_doc =]]/cache.html#system-cache-and-application-cache).
It technically supports the following cache backends: [APCu, Array, Chain, Doctrine, Filesystem, PDO & Doctrine DBAL, Php Array, Proxy, Redis]([[= symfony_doc =]]/components/cache/cache_pools.html#creating-cache-pools).
It technically supports the following cache backends: [APCu, Array, Chain, Doctrine, Filesystem, PDO & Doctrine DBAL, Php Array, Proxy, Redis]([[= symfony_doc =]]/cache.html#available-cache-adapters).
[[= product_name =]] officially supports only using Filesystem for single server and Redis/Valkey for clustered setups.

Use of [Redis/Valkey](#redisvalkey) as shared cache backend is a requirement for use in clustering setup.
Expand Down Expand Up @@ -267,7 +267,7 @@ $pool->save($cacheItem);
return $myObject;
```

For more info on usage, see [Symfony Cache's documentation]([[= symfony_doc =]]/components/cache.html).
For more info on usage, see [Symfony Cache's documentation]([[= symfony_doc =]]/cache.html).

### Clearing persistence cache

Expand Down
2 changes: 1 addition & 1 deletion docs/templating/templates/templates.md
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ twig_variables:
{{ custom_variable.nested_variable }}
```

You can use [Symfony Expression language]([[= symfony_doc =]]/components/expression_language.html) to access other values, for example:
You can use [Symfony Expression language]([[= symfony_doc =]]/expression_language.html) to access other values, for example:

``` yaml
params:
Expand Down
2 changes: 1 addition & 1 deletion docs/update_and_migration/from_2.5/to_3.3.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Before you start this procedure, make sure you have completed the previous step,

## 5. Update to v3.3

[[= product_name =]] v3.3 uses [Symfony Flex]([[= symfony_doc =]]/quick_tour/flex_recipes.html).
[[= product_name =]] v3.3 uses [Symfony Flex](https://symfony.com/tour/flex-recipes).
When updating from v3.2 to v3.3, you need to follow a special update procedure.

!!! note
Expand Down
3 changes: 2 additions & 1 deletion tools/api_refs/api_refs.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
#!/usr/bin/env bash

set +x;
set -e;

AUTH_JSON=$(realpath ${1:-~/.composer/auth.json}); # Path to an auth.json file allowing to install the targeted edition and version
PHP_API_OUTPUT_DIR=${2:-./docs/api/php_api/php_api_reference}; # Path to the directory where the built PHP API Reference is hosted
Expand All @@ -10,7 +11,7 @@ REST_API_OPENAPI_FILE_JSON=${5:-./docs/api/rest_api/rest_api_reference/openapi.j

DXP_EDITION='commerce'; # Edition from and for which the Reference is built
DXP_VERSION="${DXP_VERSION:-5.0.*}"; # Version from and for which the Reference is built; can be overridden by the DXP_VERSION env var (e.g. v5.0.x-dev for a dev build)
DXP_ADD_ONS=(automated-translation rector integrated-help fieldtype-richtext-rte connector-anthropic connector-gemini shopping-list cdp connector-raptor connector-quable mcp); # Packages not included in $DXP_EDITION but added to the Reference, listed without their vendor "ibexa"
DXP_ADD_ONS=(automated-translation rector integrated-help fieldtype-richtext-rte connector-anthropic connector-gemini shopping-list cdp connector-raptor connector-quable mcp translations-management); # Packages not included in $DXP_EDITION but added to the Reference, listed without their vendor "ibexa"
DXP_EDITIONS=(oss headless experience commerce); # Available editions ordered by ascending capabilities
SF_VERSION='7.4'; # Symfony version used by Ibexa DXP
PHPDOC_VERSION='3.10.0'; # Version of phpDocumentor used to build the Reference
Expand Down
Loading