Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
124 commits
Select commit Hold shift + click to select a range
6defe69
chore(deps): bump psr/container from 1.1.2 to 2.0.2
dependabot[bot] Jan 22, 2024
542ab2f
chore(deps): bump codeigniter4/framework from 4.4.4 to 4.4.5
dependabot[bot] Jan 29, 2024
da1d827
chore(deps): bump league/commonmark from 2.4.1 to 2.4.2
dependabot[bot] Feb 5, 2024
4351e39
Merge pull request #419 from codeigniter4projects/dependabot/composer…
kenjis Feb 6, 2024
66853c7
Merge pull request #417 from codeigniter4projects/dependabot/composer…
kenjis Feb 6, 2024
6289638
Replace Github with GitHub
kenjis Feb 15, 2024
4f9afb6
Update "Contribute to CodeIgniter"
kenjis Feb 15, 2024
3e8ed5b
Replace Github with GitHub
kenjis Feb 15, 2024
d5228dc
Merge pull request #421 from kenjis/replace-Github-GitHub
kenjis Feb 16, 2024
a16f128
Merge pull request #420 from kenjis/update-contribute
kenjis Feb 16, 2024
e8727de
Merge pull request #418 from codeigniter4projects/dependabot/composer…
kenjis Feb 16, 2024
624291d
test: add test for network error
kenjis Feb 16, 2024
e4c3107
fix: catch exception when cannot reach GitHub
kenjis Feb 16, 2024
76024a7
test: refactor by rector
kenjis Feb 16, 2024
e009184
Merge pull request #423 from kenjis/fix-network-error-handling
kenjis Feb 17, 2024
4a9dfa4
chore(deps-dev): bump codeigniter4/devkit from 1.2.0 to 1.2.1
dependabot[bot] Feb 23, 2024
0874dcf
Merge pull request #425 from codeigniter4projects/dependabot/composer…
kenjis Feb 24, 2024
ff3cff6
chore(deps): bump knplabs/github-api from 3.13.0 to 3.14.0
dependabot[bot] Mar 20, 2024
0f83cee
Merge pull request #428 from codeigniter4projects/dependabot/composer…
kenjis Mar 21, 2024
b64f197
chore(deps): bump knplabs/github-api from 3.14.0 to 3.14.1
dependabot[bot] Mar 25, 2024
a68a183
chore(deps-dev): bump codeigniter4/devkit from 1.2.1 to 1.2.2
dependabot[bot] Mar 28, 2024
ecae0ce
Merge pull request #429 from codeigniter4projects/dependabot/composer…
kenjis Mar 28, 2024
dfd7203
Merge pull request #430 from codeigniter4projects/dependabot/composer…
kenjis Mar 29, 2024
953f827
docs: update README.md
kenjis Feb 16, 2024
f36bd9b
chore: composer config platform.php 8.1
kenjis Feb 16, 2024
360f7da
Patch framework (v4.4.5 => v4.4.7)
kenjis Mar 29, 2024
9c5d0a8
chore: composer update
kenjis Mar 29, 2024
6f46364
style: composer cs-fix
kenjis Mar 29, 2024
101d351
docs: fix PHPDoc types
kenjis Mar 29, 2024
42be1fa
chore: update psalm baseline
kenjis Mar 29, 2024
b064f90
Merge pull request #422 from kenjis/update-dependencies
kenjis May 12, 2024
845321d
chore(deps-dev): bump codeigniter4/devkit from 1.2.2 to 1.2.3
dependabot[bot] May 13, 2024
b366e92
chore: extract shell script from deploy.yml
kenjis May 14, 2024
3c1f9dc
chore: use major version numbers instead of branch names
kenjis May 14, 2024
669f815
chore: add "--no-dev" to "composer install"
kenjis May 14, 2024
260da5b
Merge pull request #436 from codeigniter4projects/dependabot/composer…
kenjis May 14, 2024
659f38e
Patch framework (v4.4.7 => v4.5.1)
kenjis May 14, 2024
e1b27ef
chore: composer update
kenjis May 14, 2024
75f02a9
config: revert DB charset config
kenjis May 14, 2024
fb9f8b9
chore: fix PHPUnit version to ^9.6
kenjis May 14, 2024
d222798
chore: composer update
kenjis May 14, 2024
0b0d3ff
chore: update psalm-baseline.xml
kenjis May 14, 2024
8dfe4b6
Merge pull request #437 from kenjis/add-deploy-script
kenjis May 16, 2024
cdcdc8e
chore: update deploy workflow
kenjis May 16, 2024
355f4c7
chore: remove unneeded comment
kenjis May 16, 2024
9d9d5a2
Merge pull request #439 from kenjis/update-deploy-workflow
kenjis May 17, 2024
9bb8e6f
Merge pull request #438 from kenjis/update-ci-451
kenjis May 17, 2024
547c4cf
chore: update comment
kenjis May 17, 2024
325e58c
chore: add uid check
kenjis May 17, 2024
f4ada02
chore: remove $ for echo
kenjis May 17, 2024
291ba41
chore: add fingerprint
kenjis May 18, 2024
baad5ea
Merge pull request #441 from kenjis/update-deploy.sh
kenjis May 18, 2024
78b0cb1
chore: fix appleboy/ssh-action version
kenjis May 18, 2024
e0901e1
Merge pull request #443 from kenjis/fix-deploy.yml
kenjis May 18, 2024
766daa7
chore: enable debug mode
kenjis May 18, 2024
fa46709
Merge pull request #445 from kenjis/debug-deploy.yml
kenjis May 18, 2024
83540e2
chore: remove fingerprint
kenjis May 18, 2024
52f3af0
Merge pull request #447 from kenjis/remove-fingerprint
kenjis May 18, 2024
021aec4
discuss page contents space fix
May 26, 2024
ea63fb0
fix: line-height
kenjis Jun 8, 2024
22b7f25
Merge pull request #450 from darthleslin/leslin-patch-1
kenjis Jun 8, 2024
b053b85
Patch framework (v4.5.1 => v4.5.2)
kenjis Jun 14, 2024
a319bff
chore: composer update
kenjis Jun 14, 2024
762b7b5
Merge pull request #453 from kenjis/update-ci-452
kenjis Jun 17, 2024
713d455
chore(deps): bump codeigniter4/framework from 4.5.2 to 4.5.3
dependabot[bot] Jun 25, 2024
63fd99f
Merge pull request #454 from codeigniter4projects/dependabot/composer…
kenjis Jul 2, 2024
36624a5
chore: update composer.json
kenjis Jul 2, 2024
5218f33
chore: composer update
kenjis Jul 2, 2024
b0e6329
test: remove unneeded assertSame()
kenjis Jul 2, 2024
640ba64
chore: fix coding-standard version
kenjis Jul 2, 2024
47ed8b3
Merge pull request #455 from kenjis/update-composer.json
kenjis Jul 7, 2024
2be6725
chore(deps): bump guzzlehttp/guzzle from 7.8.1 to 7.8.2
dependabot[bot] Jul 18, 2024
9e8632c
Merge pull request #458 from codeigniter4projects/dependabot/composer…
kenjis Jul 19, 2024
c63cf43
chore(deps): bump guzzlehttp/guzzle from 7.8.2 to 7.9.1
dependabot[bot] Jul 22, 2024
c293c10
Merge pull request #460 from codeigniter4projects/dependabot/composer…
kenjis Jul 23, 2024
c9d9f60
chore(deps): bump league/commonmark from 2.4.2 to 2.5.0
dependabot[bot] Jul 23, 2024
5b01b5e
Merge pull request #461 from codeigniter4projects/dependabot/composer…
kenjis Jul 24, 2024
fd114da
chore(deps): bump guzzlehttp/guzzle from 7.9.1 to 7.9.2
dependabot[bot] Jul 24, 2024
cef85ed
chore(deps): bump league/commonmark from 2.5.0 to 2.5.1
dependabot[bot] Jul 25, 2024
1abf04e
Merge pull request #463 from codeigniter4projects/dependabot/composer…
kenjis Jul 27, 2024
a97241f
Merge pull request #462 from codeigniter4projects/dependabot/composer…
kenjis Jul 27, 2024
c1f21dc
chore(deps): bump league/commonmark from 2.5.1 to 2.5.3
dependabot[bot] Aug 19, 2024
c06ff06
Merge pull request #467 from codeigniter4projects/dependabot/composer…
kenjis Aug 29, 2024
d5c6b1f
chore(deps): bump codeigniter4/framework from 4.5.3 to 4.5.5
dependabot[bot] Sep 9, 2024
b8b623c
Merge pull request #468 from codeigniter4projects/dependabot/composer…
samsonasik Sep 9, 2024
4d55475
Patch framework (v4.5.5 => v4.6.0)
michalsn Jan 23, 2025
a2e4799
composer update
michalsn Jan 23, 2025
4a79f7b
cs fix
michalsn Jan 23, 2025
4f7b7ec
phpstan fix
michalsn Jan 23, 2025
6187eef
rector fix
michalsn Jan 23, 2025
f695fa7
infection workflow fix
michalsn Jan 23, 2025
e37499e
apply code suggestions
michalsn Jan 23, 2025
8e76d72
update PHP version on the download page
michalsn Jan 23, 2025
37dd49c
Merge pull request #475 from michalsn/update-460
michalsn Jan 23, 2025
1ba2231
Update to PHPUnit 10 (#478)
michalsn Feb 20, 2025
915e8a1
chore(deps): bump appleboy/ssh-action from 1.0.3 to 1.2.1 (#479)
dependabot[bot] Feb 20, 2025
08420be
chore(deps-dev): bump codeigniter/coding-standard from 1.8.3 to 1.8.4…
dependabot[bot] Feb 25, 2025
fd140ec
Patch framework (v4.6.0 => v4.6.1) (#487)
michalsn May 8, 2025
5f952de
chore(deps): bump appleboy/ssh-action from 1.2.1 to 1.2.2 (#481)
dependabot[bot] May 8, 2025
bdf14c6
chore(deps-dev): bump codeigniter/coding-standard from 1.8.5 to 1.8.6…
dependabot[bot] Jul 8, 2025
6f6d0d2
chore(deps-dev): bump codeigniter/coding-standard from 1.8.6 to 1.8.7…
dependabot[bot] Jul 22, 2025
f741495
chore(deps): bump league/commonmark from 2.7.0 to 2.7.1 (#490)
dependabot[bot] Jul 22, 2025
5c9c401
Patch framework (v4.6.1 => v4.6.3)
michalsn Aug 4, 2025
c8dfab0
fix: infection --only-covered flag was removed in v0.31.0
michalsn Aug 4, 2025
0c066db
Merge pull request #493 from michalsn/ci463
michalsn Aug 5, 2025
743f9d7
chore(deps): bump actions/checkout from 4 to 5
dependabot[bot] Aug 12, 2025
1f36359
Merge pull request #494 from codeigniter4projects/dependabot/github_a…
michalsn Aug 12, 2025
df17081
chore(deps): bump guzzlehttp/guzzle from 7.9.3 to 7.10.0
dependabot[bot] Aug 25, 2025
da90cc4
Merge pull request #495 from codeigniter4projects/dependabot/composer…
michalsn Aug 27, 2025
1198771
chore(deps-dev): bump codeigniter/coding-standard from 1.8.7 to 1.8.8
dependabot[bot] Sep 29, 2025
ab8aacc
Merge pull request #496 from codeigniter4projects/dependabot/composer…
Arhell Oct 1, 2025
1f4d266
chore(deps): bump appleboy/ssh-action from 1.2.2 to 1.2.3
dependabot[bot] Nov 10, 2025
3934a1b
Merge pull request #497 from codeigniter4projects/dependabot/github_a…
Arhell Nov 11, 2025
c58a985
chore(deps): bump actions/checkout from 5 to 6
dependabot[bot] Nov 21, 2025
4242689
Merge pull request #498 from codeigniter4projects/dependabot/github_a…
Arhell Nov 22, 2025
58ed526
Update policy titles in fine_print.php
JackDunnCodes Nov 25, 2025
8239427
Merge pull request #499 from JackDunnCodes/patch-1
michalsn Nov 26, 2025
33b7ba3
chore(deps): bump appleboy/ssh-action from 1.2.3 to 1.2.4
dependabot[bot] Dec 2, 2025
a622b56
Merge pull request #501 from codeigniter4projects/dependabot/github_a…
michalsn Dec 3, 2025
71bd3b9
CodeIgniter 4.6.4 update (#504)
JackDunnCodes Dec 15, 2025
551da38
chore(deps): bump actions/cache from 4 to 5 (#502)
dependabot[bot] Dec 15, 2025
670956c
chore(deps-dev): bump codeigniter/coding-standard from 1.8.8 to 1.8.9…
dependabot[bot] Dec 15, 2025
6213d47
chore(deps): bump http-interop/http-factory-guzzle from 1.2.0 to 1.2.1
dependabot[bot] Dec 16, 2025
79bd4cb
Merge pull request #506 from codeigniter4projects/dependabot/composer…
Arhell Dec 20, 2025
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
58 changes: 58 additions & 0 deletions .github/scripts/deploy.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#!/bin/sh -e

# Deploys the official site to the production server.
# See ../workflows/deploy.yml

REPO="/opt/website"
RELEASE_DIR="/home/public_html/site/releases"
SHARED_DIR="/home/public_html/site/shared"
USERGUIDE_DIR="/home/public_html/userguides"
CONFIG_FILE="/home/public_html/config/.env.site"

if [ "$(id -u)" = "0" ]; then
echo "Cannot be run as root. Please run as the user for deployment."
exit 1
fi

RELEASE=`date +"%Y-%m-%d-%H-%M-%S"`

echo 'Update website repository\n'
cd $REPO
git switch master
git pull

echo 'Copy current release\n'
cd $RELEASE_DIR
sudo cp -pr $REPO ./$RELEASE

echo 'Install composer dependencies\n'
cd $RELEASE_DIR/$RELEASE
composer install --no-dev

if [ ! -d "$SHARED_DIR" ]; then
echo 'Create shared directory\n'
sudo mkdir -p "$SHARED_DIR"
echo 'Setup folder permissions\n'
sudo chown -R www-data:www-data writable
sudo chmod -R 755 writable
sudo cp -rp writable "$SHARED_DIR"
fi

echo 'Link writable\n'
sudo rm -rf writable
sudo ln -nsf "$SHARED_DIR/writable" writable

echo 'Link .env\n'
sudo ln -nsf $CONFIG_FILE .env

echo 'Link user guides\n'
ln -nsf $USERGUIDE_DIR/userguide4 public/user_guide
ln -nsf $USERGUIDE_DIR/userguide3 public/userguide3
ln -nsf $USERGUIDE_DIR/userguide2 public/userguide2

echo 'Deploy: update symlink\n'
cd $RELEASE_DIR
sudo ln -nsf $RELEASE_DIR/$RELEASE "../current"

echo 'Reload PHP8.1-FPM\n'
sudo service php8.1-fpm reload
64 changes: 8 additions & 56 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,63 +9,15 @@ jobs:
name: "Deploy to Production"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v6
with:
ref: master

- name: Install SSH key
uses: shimataro/ssh-key-action@v2
- name: executing remote ssh commands using ssh key
uses: appleboy/ssh-action@v1.2.4
with:
key: ${{ secrets.DEPLOY_KEY }}
name: id_rsa
known_hosts: ${{ secrets.SSH_KNOWN_HOSTS }}

- name: Deploy to Webserver
uses: yeshan333/rsync-deploy-action@main
id: rsync-deploy-action
with:
ssh_login_username: ${{ secrets.DEPLOY_USER }}
remote_server_ip: ${{ secrets.DEPLOY_SSH_BOX }}
ssh_port: ${{ secrets.DEPLOY_PORT }}
ssh_private_key: ${{ secrets.DEPLOY_KEY }}
source_path: "./*"
destination_path: "/home/public_html/site/latest"

- name: Finalize deployment
uses: appleboy/ssh-action@master
env:
RELEASE_DIR: "/home/public_html/site/releases/"
RSYNC_DIR: "/home/public_html/site/latest/"
USERGUIDE_DIR: "/home/public_html/userguides"
CONFIG_FILE: "/home/public_html/config/.env.site"
with:
host: ${{ secrets.DEPLOY_SSH_BOX }}
username: ${{ secrets.DEPLOY_USER }}
key: ${{ secrets.DEPLOY_KEY }}
script_stop: true
envs: RELEASE_DIR,CONFIG_FILE,RSYNC_DIR,USERGUIDE_DIR
script: |
cd ~/
RELEASE=`date +"%d-%m-%Y-%H-%M-%S"`

echo $'Copy current release\n'
cd $RELEASE_DIR
cp -r ../latest ./$RELEASE

echo $'Install composer dependencies\n'
cd $RELEASE_DIR/$RELEASE
composer install

echo $'Setup FS\n'
cd $RELEASE_DIR/$RELEASE
sudo chmod -R 777 writable
sudo chmod -R a+rx vendor
sudo ln -nsf $CONFIG_FILE .env

echo $'Link current user guide\n'
sudo ln -nsf $USERGUIDE_DIR/userguide4 public/user_guide

echo $'Set up Links\n'
cd $RELEASE_DIR
sudo ln -nsf $RELEASE_DIR/$RELEASE "../current"
sudo service php8.1-fpm reload
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }}
port: ${{ secrets.PORT }}
script: /opt/website/.github/scripts/deploy.sh
8 changes: 4 additions & 4 deletions .github/workflows/infection.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
php-version: '8.2'
tools: infection, phpunit
extensions: intl, json, mbstring, gd, xml, sqlite3
coverage: xdebug
Expand All @@ -48,7 +48,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 @@ -65,6 +65,6 @@ jobs:
- name: Run Infection for added files only
run: |
git fetch --depth=1 origin $GITHUB_BASE_REF
infection --threads=max --git-diff-lines --git-diff-base=origin/$GITHUB_BASE_REF --ignore-msi-with-no-mutations --only-covered --logger-github
infection --threads=max --git-diff-lines --git-diff-base=origin/$GITHUB_BASE_REF --ignore-msi-with-no-mutations --logger-github
env:
GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4 changes: 2 additions & 2 deletions .github/workflows/phpcsfixer.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up PHP
uses: shivammathur/setup-php@v2
Expand All @@ -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 Down
6 changes: 3 additions & 3 deletions .github/workflows/phpstan.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Setup PHP
uses: shivammathur/setup-php@v2
Expand All @@ -54,7 +54,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 @@ -64,7 +64,7 @@ jobs:
run: mkdir -p build/phpstan

- name: Cache PHPStan results
uses: actions/cache@v4
uses: actions/cache@v5
with:
path: build/phpstan
key: ${{ runner.os }}-phpstan-${{ github.sha }}
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/phpunit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up PHP
uses: shivammathur/setup-php@v2
Expand All @@ -45,7 +45,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 @@ -60,7 +60,7 @@ jobs:
fi

- name: Test with PHPUnit
run: vendor/bin/phpunit --verbose --coverage-text
run: vendor/bin/phpunit --coverage-text
env:
TERM: xterm-256color
TACHYCARDIA_MONITOR_GA: enabled
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/rector.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:

steps:
- name: Checkout
uses: actions/checkout@v4
uses: actions/checkout@v6

- name: Set up PHP
uses: shivammathur/setup-php@v2
Expand All @@ -54,7 +54,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 Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ Some of the programming design decisions reflected:

## Server Requirements

PHP version 7.4 or higher is required, with the following extensions installed:
PHP version 8.1 or higher is required, with the following extensions installed:

- [intl](https://php.net/manual/en/intl.requirements.php)
- [libcurl](https://php.net/manual/en/curl.requirements.php) if you plan to use the `HTTP\CURLRequest` library
Expand Down
55 changes: 40 additions & 15 deletions app/Config/App.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,18 @@ class App extends BaseConfig
* URL to your CodeIgniter root. Typically, this will be your base URL,
* WITH a trailing slash:
*
* http://example.com/
* E.g., http://example.com/
*/
public string $baseURL = 'http://localhost:8080/';

/**
* Allowed Hostnames in the Site URL other than the hostname in the baseURL.
* If you want to accept multiple Hostnames, set this.
*
* E.g. When your site URL ($baseURL) is 'http://example.com/', and your site
* also accepts 'http://media.example.com/' and
* 'http://accounts.example.com/':
* ['media.example.com', 'accounts.example.com']
* E.g.,
* When your site URL ($baseURL) is 'http://example.com/', and your site
* also accepts 'http://media.example.com/' and 'http://accounts.example.com/':
* ['media.example.com', 'accounts.example.com']
*
* @var list<string>
*/
Expand All @@ -36,9 +36,9 @@ class App extends BaseConfig
* Index File
* --------------------------------------------------------------------------
*
* Typically this will be your index.php file, unless you've renamed it to
* something else. If you are using mod_rewrite to remove the page set this
* variable so that it is blank.
* Typically, this will be your `index.php` file, unless you've renamed it to
* something else. If you have configured your web server to remove this file
* from your site URIs, set this variable to an empty string.
*/
public string $indexPage = '';

Expand All @@ -48,17 +48,41 @@ class App extends BaseConfig
* --------------------------------------------------------------------------
*
* This item determines which server global should be used to retrieve the
* URI string. The default setting of 'REQUEST_URI' works for most servers.
* URI string. The default setting of 'REQUEST_URI' works for most servers.
* If your links do not seem to work, try one of the other delicious flavors:
*
* 'REQUEST_URI' Uses $_SERVER['REQUEST_URI']
* 'QUERY_STRING' Uses $_SERVER['QUERY_STRING']
* 'PATH_INFO' Uses $_SERVER['PATH_INFO']
* 'REQUEST_URI': Uses $_SERVER['REQUEST_URI']
* 'QUERY_STRING': Uses $_SERVER['QUERY_STRING']
* 'PATH_INFO': Uses $_SERVER['PATH_INFO']
*
* WARNING: If you set this to 'PATH_INFO', URIs will always be URL-decoded!
*/
public string $uriProtocol = 'REQUEST_URI';

/*
|--------------------------------------------------------------------------
| Allowed URL Characters
|--------------------------------------------------------------------------
|
| This lets you specify which characters are permitted within your URLs.
| When someone tries to submit a URL with disallowed characters they will
| get a warning message.
|
| As a security measure you are STRONGLY encouraged to restrict URLs to
| as few characters as possible.
|
| By default, only these are allowed: `a-z 0-9~%.:_-`
|
| Set an empty string to allow all characters -- but only if you are insane.
|
| The configured value is actually a regular expression character group
| and it will be used as: '/\A[<permittedURIChars>]+\z/iu'
|
| DO NOT CHANGE THIS UNLESS YOU FULLY UNDERSTAND THE REPERCUSSIONS!!
|
*/
public string $permittedURIChars = 'a-z 0-9~%.:_\-';

/**
* --------------------------------------------------------------------------
* Default Locale
Expand Down Expand Up @@ -94,7 +118,7 @@ class App extends BaseConfig
*
* IncomingRequest::setLocale() also uses this list.
*
* @var string[]
* @var list<string>
*/
public array $supportedLocales = ['en'];

Expand All @@ -106,7 +130,8 @@ class App extends BaseConfig
* The default timezone that will be used in your application to display
* dates with the date helper, and can be retrieved through app_timezone()
*
* @see https://www.php.net/manual/en/timezones.php for list of timezones supported by PHP.
* @see https://www.php.net/manual/en/timezones.php for list of timezones
* supported by PHP.
*/
public string $appTimezone = 'UTC';

Expand All @@ -130,7 +155,7 @@ class App extends BaseConfig
* If true, this will force every request made to this application to be
* made via a secure connection (HTTPS). If the incoming request is not
* secure, the user will be redirected to a secure version of the page
* and the HTTP Strict Transport Security header will be set.
* and the HTTP Strict Transport Security (HSTS) header will be set.
*/
public bool $forceGlobalSecureRequests = true;

Expand Down
Loading