Skip to content

Commit

Permalink
Merge pull request #6817 from codeigniter4/develop
Browse files Browse the repository at this point in the history
4.2.10 Ready code
  • Loading branch information
kenjis authored Nov 5, 2022
2 parents 75bc4c7 + 5c2d10b commit 9d95248
Show file tree
Hide file tree
Showing 206 changed files with 627 additions and 183 deletions.
14 changes: 2 additions & 12 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
Each pull request should address a single issue and have a meaningful title.
- Pull requests must be in English.
- If a pull request fixes an issue, reference the issue with a suitable keyword (e.g., Fixes <issue number>).
- All bug fixes should be sent to the __"develop"__ branch, this is where the next bug fix version will be developed.
- PRs with any enhancement should be sent to the next minor version branch, e.g. __"4.3"__
Expand All @@ -15,15 +17,3 @@ Explain what you have changed, and why.
- [ ] Unit testing, with >80% coverage
- [ ] User guide updated
- [ ] Conforms to style guide

<!--
**Notes**
- Pull requests must be in English
- If the PR solves an issue, reference it with a suitable verb and the issue number
(e.g. fixes <hash>12345)
- Unsolicited pull requests will be considered, but there is no guarantee of acceptance
- Pull requests should be from a feature branch in the contributor's fork of the repository
to the develop branch of the project repository
-->
21 changes: 21 additions & 0 deletions .github/scripts/validate-version
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/bash
set -o pipefail

if [[ -z $1 ]]; then
echo "validate-version requires a version identifier"
exit 1
fi

FILES=("system/CodeIgniter.php" "user_guide_src/source/conf.py")
LENGTH="${#FILES[@]}"

for FILE in "${FILES[@]}"; do
COUNT="$((COUNT + $(grep -c "$FILE" -e "$1")))"
done

if [[ $COUNT -ne $LENGTH ]]; then
echo "CodeIgniter version is not updated to v"$1""
exit 1
fi

echo "CodeIgniter version is updated to v"$1""
Original file line number Diff line number Diff line change
@@ -1,16 +1,40 @@
# When a new Release is created, deploy relevant
# When a new release is created, deploy relevant
# files to each of the generated repos.
name: Deploy Framework
name: Deploy Distributable Repos

on:
release:
types: [published]

jobs:
check-version:
name: Check for updated version
runs-on: ubuntu-22.04

steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0 # fetch all tags

- name: Get latest version
run: |
echo 'LATEST_VERSION<<EOF' >> $GITHUB_ENV
echo $(git describe --tags --abbrev=0) | sed "s/v//" >> $GITHUB_ENV
echo 'EOF' >> $GITHUB_ENV
- name: Search for updated version
if: ${{ env.LATEST_VERSION }}
run: |
chmod +x ${GITHUB_WORKSPACE}/.github/scripts/validate-version
${GITHUB_WORKSPACE}/.github/scripts/validate-version ${{ env.LATEST_VERSION }}
framework:
name: Deploy to framework
if: github.repository == 'codeigniter4/CodeIgniter4'
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
needs: check-version

steps:
- name: Identify
run: |
Expand Down Expand Up @@ -55,7 +79,9 @@ jobs:
appstarter:
name: Deploy to appstarter
if: github.repository == 'codeigniter4/CodeIgniter4'
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
needs: check-version

steps:
- name: Identify
run: |
Expand Down Expand Up @@ -96,3 +122,56 @@ jobs:
name: release.data.name,
body: release.data.body
})
userguide:
name: Deploy to userguide
if: github.repository == 'codeigniter4/CodeIgniter4'
runs-on: ubuntu-22.04
needs: check-version

steps:
- name: Identify
run: |
git config --global user.email "action@github.com"
git config --global user.name "${GITHUB_ACTOR}"
- name: Checkout source
uses: actions/checkout@v3
with:
path: source

- name: Checkout target
uses: actions/checkout@v3
with:
repository: codeigniter4/userguide
token: ${{ secrets.ACCESS_TOKEN }}
path: userguide

- name: Install Sphinx
run: |
sudo apt install python3-sphinx
sudo pip3 install sphinxcontrib-phpdomain
sudo pip3 install sphinx_rtd_theme
- name: Chmod
run: chmod +x ./source/.github/scripts/deploy-userguide

- name: Deploy
run: ./source/.github/scripts/deploy-userguide ${GITHUB_WORKSPACE}/source ${GITHUB_WORKSPACE}/userguide ${GITHUB_REF##*/}

- name: Release
uses: actions/github-script@v6
with:
github-token: ${{secrets.ACCESS_TOKEN}}
script: |
const release = await github.rest.repos.getLatestRelease({
owner: context.repo.owner,
repo: context.repo.repo
})
github.rest.repos.createRelease({
owner: context.repo.owner,
repo: 'userguide',
tag_name: release.data.tag_name,
name: release.data.name,
body: release.data.body
})
59 changes: 0 additions & 59 deletions .github/workflows/deploy-userguide.yml

This file was deleted.

2 changes: 1 addition & 1 deletion .github/workflows/test-deptrac.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.0'
php-version: '8.1'
tools: composer, phive
extensions: intl, json, mbstring, gd, mysqlnd, xdebug, xml, sqlite3

Expand Down
8 changes: 5 additions & 3 deletions .github/workflows/test-phpunit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,13 +47,15 @@ jobs:
strategy:
fail-fast: false
matrix:
php-versions: ['7.4', '8.0', '8.1']
php-versions: ['7.4', '8.0', '8.1', '8.2']
db-platforms: ['MySQLi', 'Postgre', 'SQLite3', 'SQLSRV', 'OCI8']
mysql-versions: ['5.7']
include:
- php-versions: '7.4'
db-platforms: MySQLi
mysql-versions: '8.0'
- php-versions: '8.2'
composer-option: '--ignore-platform-req=php'

services:
mysql:
Expand Down Expand Up @@ -148,8 +150,8 @@ jobs:

- name: Install dependencies
run: |
composer update --ansi --no-interaction
composer remove --ansi --dev --unused -W -- rector/rector phpstan/phpstan friendsofphp/php-cs-fixer nexusphp/cs-config codeigniter/coding-standard
composer update --ansi --no-interaction ${{ matrix.composer-option }}
composer remove --ansi --dev --unused ${{ matrix.composer-option }} -W -- rector/rector phpstan/phpstan friendsofphp/php-cs-fixer nexusphp/cs-config codeigniter/coding-standard
- name: Profile slow tests in PHP ${{ env.COVERAGE_PHP_VERSION }}
if: matrix.php-versions == env.COVERAGE_PHP_VERSION
Expand Down
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,21 @@
# Changelog

## [v4.2.10](https://github.com/codeigniter4/CodeIgniter4/tree/v4.2.10) (2022-11-05)
[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.2.9...v4.2.10)

### Fixed Bugs
* docs: fix PHPDoc types in Session by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/6796
* fix: output "0" at the end of toolbar js when Kint::$enabled_mode is false by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/6809

### Refactoring
* Refactor assertHeaderEmitted and assertHeaderNotEmitted by @paulbalandan in https://github.com/codeigniter4/CodeIgniter4/pull/6806
* fix: variable types for PHPStan 1.9.0 by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/6810

## [v4.2.9](https://github.com/codeigniter4/CodeIgniter4/tree/v4.2.9) (2022-10-30)
[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.2.8...v4.2.9)

**Hotfix release to fix PHPUnit errors (see https://github.com/codeigniter4/CodeIgniter4/pull/6794)**

## [v4.2.8](https://github.com/codeigniter4/CodeIgniter4/tree/v4.2.8) (2022-10-30)
[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.2.7...v4.2.8)

Expand Down
8 changes: 4 additions & 4 deletions admin/RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,15 +60,15 @@ CodeIgniter 4.x.x release.
See the changelog: https://github.com/codeigniter4/CodeIgniter4/blob/develop/CHANGELOG.md
```
* Watch for the "Deploy Framework" Action to make sure **framework** and **appstarter** get updated
* Run the following commands to install and test AppStarter and verify the new version:
* Watch for the "Deploy Distributable Repos" action to make sure **framework**, **appstarter**, and **userguide** get updated
* Run the following commands to install and test `appstarter` and verify the new version:
```console
composer create-project codeigniter4/appstarter release-test
cd release-test
composer test && composer info codeigniter4/framework
```
* Verify that the User Guide Actions succeeded:
* "Deploy User Guide", framework repo
* Verify that the user guide actions succeeded:
* "Deploy Distributable Repos", framework repo
* "Deploy Production", UG repo
* "pages-build-deployment", both repos
* Fast-forward `develop` branch to catch the merge commit from `master`
Expand Down
3 changes: 2 additions & 1 deletion admin/framework/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"require-dev": {
"codeigniter/coding-standard": "^1.5",
"fakerphp/faker": "^1.9",
"friendsofphp/php-cs-fixer": "~3.12.0",
"friendsofphp/php-cs-fixer": "~3.13.0",
"mikey179/vfsstream": "^1.6",
"nexusphp/cs-config": "^3.6",
"phpunit/phpunit": "^9.1",
Expand All @@ -38,6 +38,7 @@
"ext-redis": "If you use Cache class RedisHandler",
"ext-dom": "If you use TestResponse",
"ext-libxml": "If you use TestResponse",
"ext-xdebug": "If you use CIUnitTestCase::assertHeaderEmitted()",
"ext-fileinfo": "Improves mime type detection for files",
"ext-readline": "Improves CLI::input() usability"
},
Expand Down
3 changes: 2 additions & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
"require-dev": {
"codeigniter/coding-standard": "^1.5",
"fakerphp/faker": "^1.9",
"friendsofphp/php-cs-fixer": "~3.12.0",
"friendsofphp/php-cs-fixer": "~3.13.0",
"mikey179/vfsstream": "^1.6",
"nexusphp/cs-config": "^3.6",
"nexusphp/tachycardia": "^1.0",
Expand All @@ -43,6 +43,7 @@
"ext-redis": "If you use Cache class RedisHandler",
"ext-dom": "If you use TestResponse",
"ext-libxml": "If you use TestResponse",
"ext-xdebug": "If you use CIUnitTestCase::assertHeaderEmitted()",
"ext-fileinfo": "Improves mime type detection for files",
"ext-readline": "Improves CLI::input() usability"
},
Expand Down
2 changes: 1 addition & 1 deletion system/CodeIgniter.php
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ class CodeIgniter
/**
* The current version of CodeIgniter Framework
*/
public const CI_VERSION = '4.2.8';
public const CI_VERSION = '4.2.10';

/**
* App startup time.
Expand Down
Loading

0 comments on commit 9d95248

Please sign in to comment.