Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
b992c3b
docs: add changelog and upgrade for v4.6.5 (#9838)
paulbalandan Dec 12, 2025
4a7309f
chore(deps): bump actions/cache from 4 to 5 (#9839)
dependabot[bot] Dec 14, 2025
ff579c3
chore(deps): bump actions/upload-artifact from 5 to 6 (#9843)
dependabot[bot] Dec 17, 2025
e56ba93
chore(deps): bump actions/download-artifact from 6 to 7 (#9842)
dependabot[bot] Dec 17, 2025
79bed83
chore: Prepare to update to rector 2.3.0 and migrate FileWithoutNames…
samsonasik Dec 24, 2025
359c5ae
chore: add comment for namespaced filenode
samsonasik Dec 24, 2025
83bef10
chore: clean up param doc
samsonasik Dec 24, 2025
4b4b3c6
bump to rector 2.3.0
samsonasik Dec 25, 2025
62c952c
Merge pull request #9854 from samsonasik/chore-prepare-for-rector-230
samsonasik Dec 25, 2025
f77d6b8
docs: clarify Session Testing behavior and assertion scope (#9857)
datamweb Dec 29, 2025
6f5c1d7
style: implement `CodeIgniterRuleCustomisationPolicy` (#9859)
paulbalandan Dec 30, 2025
0cb202f
chore: remove redundant PHPStan baseline cleanup (#9866)
datamweb Jan 3, 2026
11f0130
chore: add Environment field to bug report template (#9864)
datamweb Jan 3, 2026
c307c5f
refactor: debugbar time header not dependent on locale (#9880)
michalsn Jan 10, 2026
a57f2f3
chore: set PHP ini-values from extra-ini-options input (#9879)
sk757a Jan 10, 2026
002a663
chore(deps-dev): update rector/rector requirement from 2.3.0 to 2.3.1
dependabot[bot] Jan 13, 2026
4da485d
Merge pull request #9883 from codeigniter4/dependabot/composer/rector…
samsonasik Jan 13, 2026
5ab52ae
fix: `SUPPORTPATH` may be undefined in some contexts (#9882)
paulbalandan Jan 16, 2026
5a65ee3
refactor: Remove dead code from MySQLi Connection related to PHP 5 (#…
kamil-tekiela Jan 18, 2026
4ac1ab7
Clean up mysqli transactions (#9888)
kamil-tekiela Jan 18, 2026
04e12d1
fix: make seeder to respect database group (#9886)
michalsn Jan 18, 2026
6594e49
tests: add sanity checks to some Redis tests (#9894)
paulbalandan Jan 19, 2026
02ea63c
chore: update rector/rector requirement from 2.3.1 to 2.3.2
michalsn Jan 20, 2026
d61ec88
Merge pull request #9895 from michalsn/chore/rector-232
samsonasik Jan 20, 2026
2768f81
chore: pin phpstan to 2.1.34 (#9897)
samsonasik Jan 21, 2026
f749c9e
chore: Bump PHPStan to ^2.1.36 and Rector to 2.3.4 (#9898)
samsonasik Jan 21, 2026
3c8a61a
chore(deps-dev): update rector/rector requirement from 2.3.4 to 2.3.5
dependabot[bot] Jan 29, 2026
30ae112
Merge pull request #9902 from codeigniter4/dependabot/composer/rector…
samsonasik Jan 29, 2026
4cdbee1
fix: ensure CSP nonces are Base64 encoded (#9907)
paulbalandan Feb 1, 2026
122299c
chore: Move older changelogs to `changelogs/` (#9912)
paulbalandan Feb 1, 2026
d7c18db
chore: update `RELEASE.md` for ignored paths in "all changes" (#9913)
paulbalandan Feb 1, 2026
826e547
chore: set phpstan-codeigniter to stable `^1.5` version (#9914)
paulbalandan Feb 1, 2026
62ac7d3
Prep for 4.6.5 release (#9911)
paulbalandan Feb 1, 2026
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
14 changes: 14 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,20 @@ body:
validations:
required: true

- type: dropdown
id: environment
attributes:
label: Environment
description: Which CI_ENVIRONMENT setting are you using?
multiple: true
options:
- production
- development
- testing
- other (custom)
validations:
required: true

- type: input
id: database
attributes:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/deploy-userguide-latest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ jobs:
# Create an artifact of the html output
- name: Upload artifact
uses: actions/upload-artifact@v5
uses: actions/upload-artifact@v6
with:
name: HTML Documentation
path: user_guide_src/build/html/
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/reusable-coveralls.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
coverage: xdebug

- name: Download coverage files
uses: actions/download-artifact@v6
uses: actions/download-artifact@v7
with:
path: build/cov

Expand All @@ -43,7 +43,7 @@ jobs:
echo "COMPOSER_CACHE_FILES_DIR=$(composer config cache-files-dir)" >> $GITHUB_ENV
- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ github.job }}-php-${{ inputs.php-version }}-${{ hashFiles('**/composer.*') }}
Expand All @@ -52,7 +52,7 @@ jobs:
${{ github.job }}-
- name: Cache PHPUnit's static analysis cache
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: build/.phpunit.cache/code-coverage
key: phpunit-code-coverage-${{ hashFiles('**/phpunit.*') }}
Expand Down
11 changes: 8 additions & 3 deletions .github/workflows/reusable-phpunit-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,10 @@ on:
description: Additional PHP extensions that are needed to be enabled
type: string
required: false
extra-ini-options:
description: Additional PHP configuration directives that should be appended to the php.ini
type: string
required: false
extra-composer-options:
description: Additional Composer options that should be appended to the `composer update` call
type: string
Expand Down Expand Up @@ -163,6 +167,7 @@ jobs:
php-version: ${{ inputs.php-version }}
tools: composer
extensions: gd, ${{ inputs.extra-extensions }}
ini-values: ${{ inputs.extra-ini-options }}
coverage: ${{ env.COVERAGE_DRIVER }}
env:
COVERAGE_DRIVER: ${{ inputs.enable-coverage && 'xdebug' || 'none' }}
Expand All @@ -173,7 +178,7 @@ jobs:
echo "ARTIFACT_NAME=${{ inputs.job-id || github.job }}-php-${{ inputs.php-version }}-db-${{ inputs.db-platform || 'none' }}" >> $GITHUB_ENV

- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ inputs.job-id || github.job }}-php-${{ inputs.php-version }}-db-${{ inputs.db-platform || 'none' }}-${{ hashFiles('**/composer.*') }}
Expand All @@ -184,7 +189,7 @@ jobs:

- name: Cache PHPUnit's static analysis cache
if: ${{ inputs.enable-artifact-upload }}
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: build/.phpunit.cache/code-coverage
key: phpunit-code-coverage-${{ hashFiles('**/phpunit.*') }}
Expand Down Expand Up @@ -212,7 +217,7 @@ jobs:

- name: Upload coverage results as artifact
if: ${{ inputs.enable-artifact-upload }}
uses: actions/upload-artifact@v5
uses: actions/upload-artifact@v6
with:
name: ${{ env.ARTIFACT_NAME }}
path: build/cov/coverage-${{ env.ARTIFACT_NAME }}.cov
Expand Down
11 changes: 8 additions & 3 deletions .github/workflows/reusable-serviceless-phpunit-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,10 @@ on:
description: Additional PHP extensions that are needed to be enabled
type: string
required: false
extra-ini-options:
description: Additional PHP configuration directives that should be appended to the php.ini
type: string
required: false
extra-composer-options:
description: Additional Composer options that should be appended to the `composer update` call
type: string
Expand Down Expand Up @@ -75,6 +79,7 @@ jobs:
php-version: ${{ inputs.php-version }}
tools: composer
extensions: gd, ${{ inputs.extra-extensions }}
ini-values: ${{ inputs.extra-ini-options }}
coverage: ${{ env.COVERAGE_DRIVER }}
env:
COVERAGE_DRIVER: ${{ inputs.enable-coverage && 'xdebug' || 'none' }}
Expand All @@ -85,7 +90,7 @@ jobs:
echo "ARTIFACT_NAME=${{ inputs.job-id || github.job }}-php-${{ inputs.php-version }}" >> $GITHUB_ENV

- name: Cache Composer dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ inputs.job-id || github.job }}-php-${{ inputs.php-version }}-${{ hashFiles('**/composer.*') }}
Expand All @@ -95,7 +100,7 @@ jobs:

- name: Cache PHPUnit's static analysis cache
if: ${{ inputs.enable-artifact-upload }}
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: build/.phpunit.cache/code-coverage
key: phpunit-code-coverage-${{ hashFiles('**/phpunit.*') }}
Expand All @@ -122,7 +127,7 @@ jobs:

- name: Upload coverage results as artifact
if: ${{ inputs.enable-artifact-upload }}
uses: actions/upload-artifact@v5
uses: actions/upload-artifact@v6
with:
name: ${{ env.ARTIFACT_NAME }}
path: build/cov/coverage-${{ env.ARTIFACT_NAME }}.cov
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-coding-standards.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ jobs:
run: echo "COMPOSER_CACHE_FILES_DIR=$(composer config cache-files-dir)" >> $GITHUB_ENV

- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ runner.os }}-${{ matrix.php-version }}-${{ hashFiles('**/composer.lock') }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test-deptrac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ jobs:
run: echo "COMPOSER_CACHE_FILES_DIR=$(composer config cache-files-dir)" >> $GITHUB_ENV

- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
Expand All @@ -69,7 +69,7 @@ jobs:
run: mkdir -p build/

- name: Cache Deptrac results
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: build
key: ${{ runner.os }}-deptrac-${{ github.sha }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test-phpstan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ jobs:
run: echo "COMPOSER_CACHE_FILES_DIR=$(composer config cache-files-dir)" >> $GITHUB_ENV

- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
Expand All @@ -81,7 +81,7 @@ jobs:
run: mkdir -p build/phpstan

- name: Cache PHPStan result cache directory
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: build/phpstan
key: ${{ runner.os }}-phpstan-${{ github.sha }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test-psalm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ jobs:
run: echo "COMPOSER_CACHE_FILES_DIR=$(composer config cache-files-dir)" >> $GITHUB_ENV

- name: Cache composer dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}-${{ hashFiles('**/composer.lock') }}
Expand All @@ -59,7 +59,7 @@ jobs:
run: mkdir -p build/psalm

- name: Cache Psalm results
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: build/psalm
key: ${{ runner.os }}-psalm-${{ github.sha }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test-rector.yml
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,7 @@ jobs:
run: echo "COMPOSER_CACHE_FILES_DIR=$(composer config cache-files-dir)" >> $GITHUB_ENV

- name: Cache dependencies
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: ${{ env.COMPOSER_CACHE_FILES_DIR }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
Expand All @@ -82,7 +82,7 @@ jobs:
run: composer update --ansi --no-interaction

- name: Rector Cache
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: /tmp/rector
key: ${{ runner.os }}-rector-${{ github.run_id }}
Expand Down
5 changes: 1 addition & 4 deletions .php-cs-fixer.dist.php
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
'ThirdParty',
'Validation/Views',
])
->notName('#Foobar.php$#')
->append([
__FILE__,
__DIR__ . '/.php-cs-fixer.no-header.php',
Expand All @@ -37,9 +36,7 @@
__DIR__ . '/spark',
]);

$overrides = [
'modernize_strpos' => ['modernize_stripos' => true],
];
$overrides = [];

$options = [
'cacheFile' => 'build/.php-cs-fixer.cache',
Expand Down
10 changes: 5 additions & 5 deletions .php-cs-fixer.tests.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,11 @@
* the LICENSE file that was distributed with this source code.
*/

use PhpCsFixer\ConfigInterface;
use PhpCsFixer\Config;
use PhpCsFixer\Finder;
use Utils\PhpCsFixer\CodeIgniterRuleCustomisationPolicy;

/** @var ConfigInterface $config */
/** @var Config $config */
$config = require __DIR__ . '/.php-cs-fixer.dist.php';

$finder = Finder::create()
Expand All @@ -26,16 +27,15 @@
'_support/View/Cells/multiplier.php',
'_support/View/Cells/colors.php',
'_support/View/Cells/addition.php',
'system/Database/Live/PreparedQueryTest.php',
])
->notName('#Foobar.php$#');
]);

$overrides = [
'phpdoc_to_return_type' => true,
'void_return' => true,
];

return $config
->setRuleCustomisationPolicy(new CodeIgniterRuleCustomisationPolicy())
->setFinder($finder)
->setCacheFile('build/.php-cs-fixer.tests.cache')
->setRules(array_merge($config->getRules(), $overrides));
Loading
Loading