Skip to content

Commit 99dc686

Browse files
authored
Merge pull request #2863 from doctrine/2.13.x-merge-up-into-3.0.x_FFB86DEa
Merge release 2.13.0 into 3.0.x
2 parents 1baa268 + 3e973b8 commit 99dc686

File tree

143 files changed

+4308
-2450
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

143 files changed

+4308
-2450
lines changed

.doctrine-project.json

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -6,86 +6,79 @@
66
"docsSlug": "doctrine-mongodb-odm",
77
"versions": [
88
{
9-
"name": "2.13",
10-
"branchName": "2.13.x",
9+
"name": "2.14",
10+
"branchName": "2.14.x",
1111
"slug": "latest",
1212
"upcoming": true
1313
},
1414
{
15-
"name": "2.12",
16-
"branchName": "2.12.x",
17-
"slug": "latest",
15+
"name": "2.13",
16+
"branchName": "2.13.x",
17+
"slug": "2.13",
1818
"current": true
1919
},
20+
{
21+
"name": "2.12",
22+
"slug": "2.12",
23+
"maintained": false
24+
},
2025
{
2126
"name": "2.11",
22-
"branchName": "2.11.x",
2327
"slug": "2.11",
2428
"maintained": false
2529
},
2630
{
2731
"name": "2.10",
28-
"branchName": "2.10.x",
2932
"slug": "2.10",
3033
"maintained": false
3134
},
3235
{
3336
"name": "2.9",
34-
"branchName": "2.9.x",
3537
"slug": "2.9",
3638
"maintained": false
3739
},
3840
{
3941
"name": "2.8",
40-
"branchName": "2.8.x",
4142
"slug": "2.8",
4243
"maintained": false
4344
},
4445
{
4546
"name": "2.7",
46-
"branchName": "2.7.x",
4747
"slug": "2.7",
4848
"maintained": false
4949
},
5050
{
5151
"name": "2.6",
52-
"branchName": "2.6.x",
5352
"slug": "2.6",
5453
"maintained": false
5554
},
5655
{
5756
"name": "2.5",
58-
"branchName": "2.5.x",
5957
"slug": "2.5",
6058
"maintained": false
6159
},
6260
{
6361
"name": "2.4",
64-
"branchName": "2.4.x",
6562
"slug": "2.4",
6663
"maintained": false
6764
},
6865
{
6966
"name": "2.3",
70-
"branchName": "2.3.x",
7167
"slug": "2.3",
7268
"maintained": false
7369
},
7470
{
7571
"name": "2.2",
76-
"branchName": "2.2.x",
7772
"slug": "2.2",
7873
"maintained": false
7974
},
8075
{
8176
"name": "2.1",
82-
"branchName": "2.1.x",
8377
"slug": "2.1",
8478
"maintained": false
8579
},
8680
{
8781
"name": "2.0",
88-
"branchName": "2.0.x",
8982
"slug": "2.0",
9083
"maintained": false
9184
},
@@ -97,19 +90,16 @@
9790
},
9891
{
9992
"name": "1.2",
100-
"branchName": "1.2.x",
10193
"slug": "1.2",
10294
"maintained": false
10395
},
10496
{
10597
"name": "1.1",
106-
"branchName": "1.1.x",
10798
"slug": "1.1",
10899
"maintained": false
109100
},
110101
{
111102
"name": "1.0",
112-
"branchName": "1.0.x",
113103
"slug": "1.0",
114104
"maintained": false
115105
}

.gitattributes

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,11 @@
22
* text=auto eol=lf
33

44
# Exclude non-essential files from dist
5-
/.github export-ignore
5+
/.* export-ignore
6+
/*.dist export-ignore
7+
/.neon export-ignore
68
/docs export-ignore
9+
/benchmark export-ignore
10+
/phpbench.json export-ignore
711
/tests export-ignore
812
/tools export-ignore
9-
/.doctrine-project.json export-ignore
10-
/.gitattributes export-ignore
11-
/.gitignore export-ignore
12-
/.gitmodules export-ignore
13-
/.scrutinizer.yml export-ignore
14-
/phpcs.xml.dist export-ignore
15-
/phpstan.neon.dist export-ignore
16-
/phpunit.xml.dist export-ignore

.github/workflows/atlas-ci.yml

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
name: "Atlas CI"
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- "*.x"
7+
- "feature/*"
8+
push:
9+
10+
jobs:
11+
atlas-local:
12+
runs-on: "ubuntu-latest"
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
php-version:
17+
- "8.4"
18+
symfony:
19+
- "stable"
20+
proxy:
21+
- "lazy-ghost"
22+
include:
23+
# Test with ProxyManager
24+
- php-version: "8.1"
25+
symfony: "6.4"
26+
proxy: "proxy-manager"
27+
os: "ubuntu-latest"
28+
29+
steps:
30+
- name: "Checkout"
31+
uses: "actions/checkout@v5"
32+
with:
33+
fetch-depth: 2
34+
35+
- name: "Create MongoDB Atlas Local"
36+
run: |
37+
docker run --name mongodb -p 27017:27017 --detach mongodb/mongodb-atlas-local:8.2
38+
until docker exec --tty mongodb mongosh --eval "db.runCommand({ ping: 1 })"; do
39+
sleep 1
40+
done
41+
until docker exec --tty mongodb mongosh --eval "db.createCollection('connection_test') && db.getCollection('connection_test').createSearchIndex({mappings:{dynamic: true}})"; do
42+
sleep 1
43+
done
44+
45+
- name: "Show MongoDB server status"
46+
run: |
47+
docker exec --tty mongodb mongosh --eval "db.runCommand({ serverStatus: 1 })"
48+
49+
- name: Setup cache environment
50+
id: extcache
51+
uses: shivammathur/cache-extensions@v1
52+
with:
53+
php-version: ${{ matrix.php-version }}
54+
extensions: "mongodb, bcmath"
55+
key: "extcache-v1"
56+
57+
- name: Cache extensions
58+
uses: actions/cache@v4
59+
with:
60+
path: ${{ steps.extcache.outputs.dir }}
61+
key: ${{ steps.extcache.outputs.key }}
62+
restore-keys: ${{ steps.extcache.outputs.key }}
63+
64+
- name: "Install PHP"
65+
uses: "shivammathur/setup-php@v2"
66+
with:
67+
php-version: "${{ matrix.php-version }}"
68+
tools: "pecl"
69+
extensions: "mongodb, bcmath"
70+
coverage: "none"
71+
ini-values: "zend.assertions=1"
72+
73+
- name: "Show driver information"
74+
run: "php --ri mongodb"
75+
76+
# Not used, skip transient dependencies
77+
- name: "Remove phpbench/phpbench"
78+
run: composer remove --no-update --dev phpbench/phpbench
79+
80+
- name: "Configure Symfony ${{ matrix.symfony }}"
81+
if: "${{ matrix.symfony != 'stable' }}"
82+
run: |
83+
composer config minimum-stability dev
84+
# update symfony deps
85+
composer require --no-update symfony/console:^${{ matrix.symfony }}
86+
composer require --no-update symfony/var-dumper:^${{ matrix.symfony }}
87+
composer require --no-update --dev symfony/cache:^${{ matrix.symfony }}
88+
89+
- name: "Install dependencies with Composer"
90+
uses: "ramsey/composer-install@v3"
91+
with:
92+
dependency-versions: "highest"
93+
composer-options: "--prefer-dist"
94+
95+
- name: "Run PHPUnit with Atlas Local"
96+
run: "vendor/bin/phpunit --group atlas"
97+
env:
98+
DOCTRINE_MONGODB_SERVER: "mongodb://127.0.0.1:27017/?directConnection=true"
99+
USE_LAZY_GHOST_OBJECTS: ${{ matrix.proxy == 'lazy-ghost' && '1' || '0' }}

.github/workflows/coding-standards.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ on:
1111
jobs:
1212
coding-standards:
1313
name: "Coding Standards"
14-
uses: "doctrine/.github/.github/workflows/coding-standards.yml@7.3.0"
14+
uses: "doctrine/.github/.github/workflows/coding-standards.yml@12.0.0"

.github/workflows/continuous-integration.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ jobs:
148148
composer-options: "--prefer-dist"
149149

150150
- name: "Install latest Python version"
151-
uses: actions/setup-python@v5
151+
uses: actions/setup-python@v6
152152
with:
153153
python-version: '3.13'
154154

@@ -159,7 +159,7 @@ jobs:
159159
topology: ${{ matrix.topology }}
160160

161161
- name: "Run PHPUnit"
162-
run: "vendor/bin/phpunit"
162+
run: "vendor/bin/phpunit --exclude-group=atlas"
163163
env:
164164
DOCTRINE_MONGODB_SERVER: ${{ steps.setup-mongodb.outputs.cluster-uri }}
165165
USE_LAZY_GHOST_OBJECTS: ${{ matrix.proxy == 'lazy-ghost' && '1' || '0' }}"

.github/workflows/documentation.yml

Lines changed: 3 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -15,30 +15,6 @@ on:
1515
- docs/**
1616

1717
jobs:
18-
validate-with-guides:
19-
name: "Validate documentation with phpDocumentor/guides"
20-
runs-on: "ubuntu-24.04"
21-
22-
steps:
23-
- name: "Checkout code"
24-
uses: "actions/checkout@v5"
25-
26-
- name: "Install PHP"
27-
uses: "shivammathur/setup-php@v2"
28-
with:
29-
coverage: "none"
30-
php-version: "8.3"
31-
32-
- name: "Install dependencies with Composer"
33-
uses: "ramsey/composer-install@v3"
34-
with:
35-
working-directory: "docs"
36-
dependency-versions: "highest"
37-
38-
- name: "Add orphan metadata where needed"
39-
run: |
40-
printf '%s\n\n%s\n' ":orphan:" "$(cat docs/en/sidebar.rst)" > docs/en/sidebar.rst
41-
printf '%s\n\n%s\n' ":orphan:" "$(cat docs/en/reference/annotations-reference.rst)" > docs/en/reference/annotations-reference.rst
42-
43-
- name: "Run guides-cli"
44-
run: "docs/vendor/bin/guides -vvv --no-progress docs/en 2>&1 | grep -v 'No template found for rendering directive' | ( ! grep WARNING )"
18+
documentation:
19+
name: "Generate documentation"
20+
uses: "doctrine/.github/.github/workflows/[email protected]"

.github/workflows/release-on-milestone-closed.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,9 @@ on:
88
jobs:
99
release:
1010
name: "Git tag, release & create merge-up PR"
11-
uses: "doctrine/.github/.github/workflows/[email protected]"
11+
uses: "doctrine/.github/.github/workflows/[email protected]"
12+
with:
13+
use-next-minor-as-default-branch: true
1214
secrets:
1315
GIT_AUTHOR_EMAIL: ${{ secrets.GIT_AUTHOR_EMAIL }}
1416
GIT_AUTHOR_NAME: ${{ secrets.GIT_AUTHOR_NAME }}

.github/workflows/website-schema.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@ on:
1818
jobs:
1919
json-validate:
2020
name: "Validate JSON schema"
21-
uses: "doctrine/.github/.github/workflows/website-schema.yml@7.3.0"
21+
uses: "doctrine/.github/.github/workflows/website-schema.yml@12.0.0"

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
docs/output
12
tools/sandbox/Proxies/*
23
tools/sandbox/Hydrators/*
34
tools/sandbox/PersistentCollections/*

UPGRADE-3.0.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,11 @@ The `Doctrine\ODM\MongoDB\Id\AbstractIdGenerator` class has been removed. Custom
1818
ID generators must implement the `Doctrine\ODM\MongoDB\Id\IdGenerator`
1919
interface.
2020

21+
The `Doctrine\ODM\MongoDB\Id\UuidGenerator` class has been removed. Use a custom
22+
generator to generate string UUIDs. For more efficient storage of UUIDs, use the
23+
`Doctrine\ODM\MongoDB\Types\BinaryUuidType` type in combination with the
24+
`Doctrine\ODM\MongoDB\Id\SymfonyUuidGenerator` generator.
25+
2126
## Metadata
2227
The `Doctrine\ODM\MongoDB\Mapping\ClassMetadata` class has been marked final and
2328
will no longer be extendable.

0 commit comments

Comments
 (0)