Skip to content

Commit bda1f59

Browse files
authored
Merge pull request #7849 from codeigniter4/develop
4.3.8 Ready code
2 parents f491f66 + 3e45037 commit bda1f59

File tree

231 files changed

+2607
-1973
lines changed

Some content is hidden

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

231 files changed

+2607
-1973
lines changed

.github/workflows/deploy-apidocs.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,13 @@ jobs:
4343
- name: Setup PHP
4444
uses: shivammathur/setup-php@v2
4545
with:
46-
php-version: '8.0'
46+
php-version: '8.1'
4747
tools: phive
4848
coverage: none
4949

5050
- name: Download latest phpDocumentor
5151
working-directory: source
52-
run: sudo phive --no-progress install --global --trust-gpg-keys 67F861C3D889C656 phpDocumentor
52+
run: phive --no-progress install --trust-gpg-keys 8AC0BAA79732DD42 phpDocumentor
5353

5454
- name: Prepare API repo
5555
working-directory: api
@@ -61,7 +61,7 @@ jobs:
6161
- name: Build API in source repo
6262
working-directory: source
6363
run: |
64-
phpDocumentor run --ansi --verbose
64+
php tools/phpDocumentor run --ansi --verbose
6565
cp -R ${GITHUB_WORKSPACE}/source/api/build/* ${GITHUB_WORKSPACE}/api/docs
6666
6767
- name: Deploy to API repo

.github/workflows/test-autoreview.yml

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,79 @@ jobs:
2929
php-version: '8.1'
3030
job-id: auto-review-tests
3131
group-name: AutoReview
32+
33+
composer-normalize-tests:
34+
name: Check normalized composer.json
35+
runs-on: ubuntu-latest
36+
steps:
37+
- name: Checkout
38+
uses: actions/checkout@v3
39+
40+
- name: Setup PHP
41+
uses: shivammathur/setup-php@v2
42+
with:
43+
php-version: '8.1'
44+
45+
- name: Install dependencies
46+
run: composer update
47+
48+
- name: Run on root composer.json
49+
id: normalize-root-composer
50+
if: ${{ always() }}
51+
run: |
52+
echo "ROOT_COMPOSER_RESULT<<RCR" >> $GITHUB_OUTPUT
53+
echo "$(composer normalize)" >> $GITHUB_OUTPUT
54+
echo "RCR" >> $GITHUB_OUTPUT
55+
56+
- name: Run on framework composer.json
57+
id: normalize-framework-composer
58+
if: ${{ always() }}
59+
working-directory: admin/framework
60+
run: |
61+
echo "FRAMEWORK_COMPOSER_RESULT<<FCR" >> $GITHUB_OUTPUT
62+
echo "$(composer normalize)" >> $GITHUB_OUTPUT
63+
echo "FCR" >> $GITHUB_OUTPUT
64+
65+
- name: Run on starter composer.json
66+
id: normalize-starter-composer
67+
if: ${{ always() }}
68+
working-directory: admin/starter
69+
run: |
70+
echo "STARTER_COMPOSER_RESULT<<SCR" >> $GITHUB_OUTPUT
71+
echo "$(composer normalize)" >> $GITHUB_OUTPUT
72+
echo "SCR" >> $GITHUB_OUTPUT
73+
74+
- name: Analyse normalization results
75+
run: |
76+
if [[ '${{ steps.normalize-root-composer.conclusion }}' == 'failure' ]]; then
77+
echo 'Normalization of root composer.json encountered a problem.';
78+
echo 'Please run it locally: `composer normalize`';
79+
exit 1;
80+
fi
81+
82+
if [[ ${{ contains(steps.normalize-root-composer.outputs.ROOT_COMPOSER_RESULT, 'Successfully normalized') }} == true ]]; then
83+
echo 'Root composer.json is not yet normalized.';
84+
exit 1;
85+
fi
86+
87+
if [[ '${{ steps.normalize-framework-composer.conclusion }}' == 'failure' ]]; then
88+
echo 'Normalization of framework composer.json encountered a problem.';
89+
echo 'Please run it locally: `composer normalize -d admin/framework`';
90+
exit 1;
91+
fi
92+
93+
if [[ ${{ contains(steps.normalize-framework-composer.outputs.FRAMEWORK_COMPOSER_RESULT, 'Successfully normalized') }} == true ]]; then
94+
echo 'Framework composer.json is not yet normalized.';
95+
exit 1;
96+
fi
97+
98+
if [[ '${{ steps.normalize-starter-composer.conclusion }}' == 'failure' ]]; then
99+
echo 'Normalization of starter composer.json encountered a problem.';
100+
echo 'Please run it locally: `composer normalize -d admin/starter`';
101+
exit 1;
102+
fi
103+
104+
if [[ ${{ contains(steps.normalize-starter-composer.outputs.STARTER_COMPOSER_RESULT, 'Successfully normalized') }} == true ]]; then
105+
echo 'Starter composer.json is not yet normalized.';
106+
exit 1;
107+
fi

.php-cs-fixer.dist.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,11 @@
4444
]);
4545

4646
$overrides = [
47+
'php_unit_data_provider_name' => [
48+
'prefix' => 'provide',
49+
'suffix' => '',
50+
],
51+
'php_unit_data_provider_static' => true,
4752
'php_unit_data_provider_return_type' => true,
4853
'no_extra_blank_lines' => [
4954
'tokens' => [

.php-cs-fixer.no-header.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@
3030
]);
3131

3232
$overrides = [
33+
'php_unit_data_provider_name' => [
34+
'prefix' => 'provide',
35+
'suffix' => '',
36+
],
37+
'php_unit_data_provider_static' => true,
3338
'php_unit_data_provider_return_type' => true,
3439
'no_extra_blank_lines' => [
3540
'tokens' => [

.php-cs-fixer.user-guide.php

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,11 @@
5353
'use',
5454
],
5555
],
56+
'php_unit_data_provider_static' => true,
57+
'php_unit_data_provider_name' => [
58+
'prefix' => 'provide',
59+
'suffix' => '',
60+
],
5661
];
5762

5863
$options = [

CHANGELOG.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,24 @@
11
# Changelog
22

3+
## [v4.3.8](https://github.com/codeigniter4/CodeIgniter4/tree/v4.3.8) (2023-08-25)
4+
[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.3.7...v4.3.8)
5+
6+
### Fixed Bugs
7+
8+
* fix: [Pager] knocks down variables for View by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7758
9+
* fix: Model::insertBatch() causes error to non auto increment table by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7759
10+
* fix: [Model] updateBatch() may generate invalid SQL statement by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7787
11+
* fix: Model inserts cast $primaryKey value when using Entity by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7806
12+
* fix: instances of Validation rules are incremented each time `run()` is executed by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7815
13+
* fix: filter except empty by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7823
14+
* fix: `set_checkbox()` checks unchecked checkbox by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7818
15+
16+
### Refactoring
17+
18+
* Normalize data provider names by @paulbalandan in https://github.com/codeigniter4/CodeIgniter4/pull/7656
19+
* refactor: remove Model::$tempPrimaryKeyValue by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7760
20+
* Remove unused cast on RedisHandler by @samsonasik in https://github.com/codeigniter4/CodeIgniter4/pull/7786
21+
322
## [v4.3.7](https://github.com/codeigniter4/CodeIgniter4/tree/v4.3.7) (2023-07-30)
423
[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.3.6...v4.3.7)
524

admin/RELEASE.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ the existing content.
5555
```
5656
* Vet the **admin/** folders for any removed hidden files (Action deploy scripts
5757
*do not remove these*)
58+
* git diff --name-status origin/master admin/
5859
* Merge any Security Advisory PRs in private forks
5960

6061
## Process

admin/framework/composer.json

Lines changed: 25 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
11
{
22
"name": "codeigniter4/framework",
3-
"type": "project",
43
"description": "The CodeIgniter framework v4",
5-
"homepage": "https://codeigniter.com",
64
"license": "MIT",
5+
"type": "project",
6+
"homepage": "https://codeigniter.com",
7+
"support": {
8+
"forum": "https://forum.codeigniter.com/",
9+
"source": "https://github.com/codeigniter4/CodeIgniter4",
10+
"slack": "https://codeigniterchat.slack.com"
11+
},
712
"require": {
813
"php": "^7.4 || ^8.0",
914
"ext-intl": "*",
@@ -13,39 +18,34 @@
1318
"psr/log": "^1.1"
1419
},
1520
"require-dev": {
16-
"kint-php/kint": "^5.0.4",
1721
"codeigniter/coding-standard": "^1.5",
1822
"fakerphp/faker": "^1.9",
1923
"friendsofphp/php-cs-fixer": "3.13.0",
24+
"kint-php/kint": "^5.0.4",
2025
"mikey179/vfsstream": "^1.6",
2126
"nexusphp/cs-config": "^3.6",
2227
"phpunit/phpunit": "^9.1",
2328
"predis/predis": "^1.1 || ^2.0"
2429
},
2530
"suggest": {
2631
"ext-curl": "If you use CURLRequest class",
27-
"ext-imagick": "If you use Image class ImageMagickHandler",
28-
"ext-gd": "If you use Image class GDHandler",
32+
"ext-dom": "If you use TestResponse",
2933
"ext-exif": "If you run Image class tests",
30-
"ext-simplexml": "If you format XML",
34+
"ext-fileinfo": "Improves mime type detection for files",
35+
"ext-gd": "If you use Image class GDHandler",
36+
"ext-imagick": "If you use Image class ImageMagickHandler",
37+
"ext-libxml": "If you use TestResponse",
38+
"ext-memcache": "If you use Cache class MemcachedHandler with Memcache",
39+
"ext-memcached": "If you use Cache class MemcachedHandler with Memcached",
3140
"ext-mysqli": "If you use MySQL",
3241
"ext-oci8": "If you use Oracle Database",
3342
"ext-pgsql": "If you use PostgreSQL",
34-
"ext-sqlsrv": "If you use SQL Server",
35-
"ext-sqlite3": "If you use SQLite3",
36-
"ext-memcache": "If you use Cache class MemcachedHandler with Memcache",
37-
"ext-memcached": "If you use Cache class MemcachedHandler with Memcached",
43+
"ext-readline": "Improves CLI::input() usability",
3844
"ext-redis": "If you use Cache class RedisHandler",
39-
"ext-dom": "If you use TestResponse",
40-
"ext-libxml": "If you use TestResponse",
41-
"ext-xdebug": "If you use CIUnitTestCase::assertHeaderEmitted()",
42-
"ext-fileinfo": "Improves mime type detection for files",
43-
"ext-readline": "Improves CLI::input() usability"
44-
},
45-
"config": {
46-
"optimize-autoloader": true,
47-
"preferred-install": "dist",
48-
"sort-packages": true
45+
"ext-simplexml": "If you format XML",
46+
"ext-sqlite3": "If you use SQLite3",
47+
"ext-sqlsrv": "If you use SQL Server",
48+
"ext-xdebug": "If you use CIUnitTestCase::assertHeaderEmitted()"
4949
},
5050
"autoload": {
5151
"psr-4": {
@@ -55,12 +55,12 @@
5555
"**/Database/Migrations/**"
5656
]
5757
},
58+
"config": {
59+
"optimize-autoloader": true,
60+
"preferred-install": "dist",
61+
"sort-packages": true
62+
},
5863
"scripts": {
5964
"test": "phpunit"
60-
},
61-
"support": {
62-
"forum": "https://forum.codeigniter.com/",
63-
"source": "https://github.com/codeigniter4/CodeIgniter4",
64-
"slack": "https://codeigniterchat.slack.com"
6565
}
6666
}

admin/starter/composer.json

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
11
{
22
"name": "codeigniter4/appstarter",
3-
"type": "project",
43
"description": "CodeIgniter4 starter app",
5-
"homepage": "https://codeigniter.com",
64
"license": "MIT",
5+
"type": "project",
6+
"homepage": "https://codeigniter.com",
7+
"support": {
8+
"forum": "https://forum.codeigniter.com/",
9+
"source": "https://github.com/codeigniter4/CodeIgniter4",
10+
"slack": "https://codeigniterchat.slack.com"
11+
},
712
"require": {
813
"php": "^7.4 || ^8.0",
914
"codeigniter4/framework": "^4.0"
@@ -13,11 +18,6 @@
1318
"mikey179/vfsstream": "^1.6",
1419
"phpunit/phpunit": "^9.1"
1520
},
16-
"config": {
17-
"optimize-autoloader": true,
18-
"preferred-install": "dist",
19-
"sort-packages": true
20-
},
2121
"autoload": {
2222
"exclude-from-classmap": [
2323
"**/Database/Migrations/**"
@@ -28,12 +28,12 @@
2828
"Tests\\Support\\": "tests/_support"
2929
}
3030
},
31+
"config": {
32+
"optimize-autoloader": true,
33+
"preferred-install": "dist",
34+
"sort-packages": true
35+
},
3136
"scripts": {
3237
"test": "phpunit"
33-
},
34-
"support": {
35-
"forum": "https://forum.codeigniter.com/",
36-
"source": "https://github.com/codeigniter4/CodeIgniter4",
37-
"slack": "https://codeigniterchat.slack.com"
3838
}
3939
}

0 commit comments

Comments
 (0)