Skip to content

4.3.3 Ready code #7384

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 194 commits into from
Mar 26, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
194 commits
Select commit Hold shift + click to select a range
5574b44
Typographic correction.
grimpirate Feb 18, 2023
246a7af
docs: fix incorrect sample value for 'cipher'
kenjis Feb 19, 2023
bc297ff
config: add missing $cipher
kenjis Feb 19, 2023
24438f5
docs: add changelog and upgrading
kenjis Feb 19, 2023
2174007
docs: remove duplicated `for`
kenjis Feb 19, 2023
393040d
docs: add missing "Full Changelog:"
kenjis Feb 19, 2023
dfe0334
docs: break long lines
kenjis Feb 19, 2023
d195c77
docs: update branch for checking "All Changes"
kenjis Feb 19, 2023
770d9c2
docs: remove incorrect section title
kenjis Feb 19, 2023
ef2dd3c
docs: remove incorrect Project Files
kenjis Feb 19, 2023
5c6f468
fix: RawSql causes error when using like() and countAllResults()
kenjis Feb 19, 2023
0d8c914
test: fix for OCI8
kenjis Feb 19, 2023
ae091af
Merge pull request #7276 from kenjis/fix-docs-upgrade_432.rst
samsonasik Feb 19, 2023
3ace0bf
Merge pull request #7274 from kenjis/fix-docs-past-changelog
samsonasik Feb 19, 2023
c1d68ce
docs: make doc link paths relative
kenjis Feb 19, 2023
ab0acdc
docs: add property types in sample code
kenjis Feb 19, 2023
4a4e8d6
docs: make the first letter capital
kenjis Feb 20, 2023
7b05b72
docs: add sub section title
kenjis Feb 20, 2023
35029c5
docs: text decration
kenjis Feb 20, 2023
40f994e
docs: add literal for asterisk
kenjis Feb 20, 2023
b7a62ee
docs: change paragraph structure
kenjis Feb 20, 2023
62b43b9
docs: add TOC
kenjis Feb 20, 2023
cccb3c5
docs: fix section title marks
kenjis Feb 20, 2023
968f03f
docs: fix section title marks
kenjis Feb 20, 2023
23087c6
docs: move "What is Content Negotiation?" to content_negotiation.rst
kenjis Feb 20, 2023
3b04156
docs: remove incorrect out-of-dated description
kenjis Feb 20, 2023
eee7759
docs: make doc link paths relative
kenjis Feb 20, 2023
53b4e7f
docs: move paragraph
kenjis Feb 20, 2023
1f5d041
chore(deps-dev): update rector/rector requirement
dependabot[bot] Feb 20, 2023
425b3f4
Merge pull request #7284 from codeigniter4/dependabot/composer/rector…
samsonasik Feb 21, 2023
94fe329
Update user_guide_src/source/dbmgmt/forge.rst
grimpirate Feb 21, 2023
dc0225e
test: fix out-of-dated test code
kenjis Feb 21, 2023
0ed6908
docs: $systemDirectory path in existing project.
jozefrebjak Feb 21, 2023
136b5fb
Merge pull request #7289 from jozefrebjak/patch-1
samsonasik Feb 21, 2023
3618fb8
Merge pull request #7272 from grimpirate/patch-1
MGatner Feb 21, 2023
146edb6
Merge pull request #7288 from kenjis/fix-CodeIgniterTest-CITestStream…
samsonasik Feb 22, 2023
21decbf
Merge pull request #7275 from kenjis/update-RELEASE.md
kenjis Feb 22, 2023
3ab4816
Merge pull request #7279 from kenjis/docs-improve-filters.rst
kenjis Feb 22, 2023
1970133
Merge pull request #7280 from kenjis/docs-improve-content_negotiation…
kenjis Feb 22, 2023
f6fb60d
Merge pull request #7273 from kenjis/fix-Encryption-CI3-compat
kenjis Feb 22, 2023
13b6b0e
refactor: initialize $files
kenjis Feb 22, 2023
d4e47a3
chore: remove ignore patterns that are no longer needed
kenjis Feb 22, 2023
4bbecfd
docs: add section title
kenjis Feb 21, 2023
e92a9f6
docs: add note for case-sensitive file systems
kenjis Feb 21, 2023
5b74cd2
Merge pull request #7291 from kenjis/fix-phpstan-1.10.1-errors
samsonasik Feb 22, 2023
c35c30a
docs: add note for case-sensitive file systems in installation/runnin…
kenjis Feb 22, 2023
0d4c371
docs: add item in troubleshooting.rst
kenjis Feb 22, 2023
e2e255b
Merge pull request #7287 from kenjis/docs-add-file-case-sensitive
samsonasik Feb 22, 2023
505bd2b
docs: add note for URI::getSegment()
kenjis Feb 22, 2023
1d4f677
chore(deps-dev): update rector/rector requirement
dependabot[bot] Feb 22, 2023
b7ceda5
temporary skip RemoveAlwaysTrueIfConditionRector as check truthy by @…
samsonasik Feb 22, 2023
85574fa
using @see
samsonasik Feb 22, 2023
17e4b3d
Add RawSql[] on @param on Basebuilder::updateFields()
samsonasik Feb 22, 2023
496dfbe
Merge pull request #7295 from samsonasik/add-rawsql-update
samsonasik Feb 22, 2023
f1990b6
Merge pull request #7294 from codeigniter4/dependabot/composer/rector…
samsonasik Feb 23, 2023
b9af2b8
test: remove setUp()/tearDown()
kenjis Feb 22, 2023
09c19de
test: add empty lines
kenjis Feb 22, 2023
18c89c4
test: break long lines
kenjis Feb 22, 2023
9966e5a
test: add empty lines
kenjis Feb 22, 2023
9e46442
test: remove empty lines
kenjis Feb 22, 2023
695db91
test: remove unneeded variable concatenation
kenjis Feb 22, 2023
859060b
test: move $expected lines
kenjis Feb 22, 2023
656af0a
test: fix @param types
kenjis Feb 22, 2023
ab5393b
test: remove empty lines
kenjis Feb 22, 2023
1950d23
test: add empty lines
kenjis Feb 22, 2023
7c8c703
test: move lines
kenjis Feb 22, 2023
36e13ca
test: add tests
kenjis Feb 22, 2023
e14da58
test: add assertions
kenjis Feb 22, 2023
301176c
test: use dataProvider
kenjis Feb 23, 2023
b663775
docs: add note for URI Segments
kenjis Feb 9, 2023
3c48531
docs: improve description
kenjis Feb 23, 2023
64cd546
docs: fix section title marks
kenjis Feb 23, 2023
f1caaee
Merge pull request #7233 from kenjis/docs-add-note-uri.rst
kenjis Feb 23, 2023
2810595
Merge pull request #7277 from kenjis/fix-QB-like-RawSql-countAllResults
kenjis Feb 23, 2023
797b51e
refactor: replace `Cache-control` with `Cache-Control`
kenjis Feb 24, 2023
e90d56f
docs: replace `Content-type` with `Content-Type`
kenjis Feb 24, 2023
b3405c6
docs: add section title marks
kenjis Feb 24, 2023
e682451
docs: use relative paths
kenjis Feb 24, 2023
983b0da
docs: decorate text
kenjis Feb 24, 2023
fa4a048
test: update assertions
kenjis Feb 24, 2023
870ed41
Merge pull request #7293 from kenjis/test-URITest-add-tests
kenjis Feb 25, 2023
1df1bec
Merge pull request #7299 from kenjis/refactor-header-name
kenjis Feb 25, 2023
c6de39f
Merge pull request #7298 from kenjis/fix-docs-restful.rst
kenjis Feb 25, 2023
aaf3bff
Merge pull request #7300 from kenjis/fix-docs-request.rst
kenjis Feb 25, 2023
4cc9259
Fix handling of null bytes in `Exceptions::renderBacktrace()`
paulbalandan Feb 26, 2023
4c69da2
Merge pull request #7306 from paulbalandan/render-backtrace-fix-nul
samsonasik Feb 26, 2023
4aa93c5
Merge pull request #7292 from kenjis/docs-add-note-URI-getSegment
kenjis Feb 27, 2023
788d346
fix: incorrect metadata querying of Redis cache
paulbalandan Feb 26, 2023
1336c08
docs: add note for CSP and Debug Toolbar
kenjis Feb 28, 2023
22807e0
chore(deps-dev): update rector/rector requirement
dependabot[bot] Feb 28, 2023
da9045c
enable RemoveAlwaysTrueIfConditionRector
samsonasik Feb 28, 2023
98c4c0d
skip fixture
samsonasik Feb 28, 2023
04e23a9
Merge pull request #7315 from codeigniter4/dependabot/composer/rector…
samsonasik Feb 28, 2023
f1f2407
fix: add missing TLS 1.3 support
kenjis Mar 1, 2023
ba86885
style: break long line
kenjis Mar 1, 2023
9c70a64
docs: add changelog
kenjis Mar 1, 2023
a69ee43
chore: update Kint to 5.0.4
kenjis Mar 1, 2023
a84ba13
Merge pull request #7307 from paulbalandan/redis-cache
kenjis Mar 1, 2023
e163c9f
Merge pull request #7318 from kenjis/update-kint-504
samsonasik Mar 1, 2023
ddc44af
Fix @param null $arguments on FilterInterface
samsonasik Mar 1, 2023
455b716
Merge pull request #7317 from kenjis/fix-email-tls-13
samsonasik Mar 1, 2023
a6df5fa
Fix @param null on RequestTrait
samsonasik Mar 1, 2023
73d748d
Merge pull request #7314 from kenjis/add-note-for-CSP-and-DebugBar
kenjis Mar 2, 2023
2e17613
Merge pull request #7321 from samsonasik/fix-param-null
kenjis Mar 2, 2023
0ead60b
use array|string|null on index, and int|null for filter
samsonasik Mar 2, 2023
a64f99b
Fix @param null on RequestInterface
samsonasik Mar 1, 2023
a6f146c
allow int at @param filter
samsonasik Mar 1, 2023
4b48e4e
use array|string|null on index, and int|null for filter
samsonasik Mar 2, 2023
9f40d99
Merge pull request #7322 from samsonasik/fix-param-null-request-inter…
samsonasik Mar 2, 2023
e1c13f6
Merge pull request #7323 from samsonasik/fix-param-null-on-request-trait
samsonasik Mar 2, 2023
2cbbda7
docs: add warning
kenjis Mar 4, 2023
8072c8d
Merge pull request #7333 from kenjis/fix-docs-random_string
kenjis Mar 4, 2023
5df7def
chore: remove php-cs-fixer
kenjis Mar 6, 2023
4f4a110
fix: use random_int() in random_string('numeric')
kenjis Mar 6, 2023
9ea7ce3
docs: update docs
kenjis Mar 6, 2023
6e6634c
Merge pull request #7335 from kenjis/remove-php-cs-fixer-in-composer.…
kenjis Mar 6, 2023
63d165e
chore(deps-dev): update rector/rector requirement
dependabot[bot] Mar 6, 2023
4bc7079
Merge pull request #7340 from codeigniter4/dependabot/composer/rector…
samsonasik Mar 6, 2023
2a7f2f7
fix: use first exception in exceptionHandler()
kenjis Mar 7, 2023
ece0c76
Merge pull request #7336 from kenjis/fix-random-string-numeric
kenjis Mar 7, 2023
fc1870b
docs: add note for addColumn() and NULL
kenjis Mar 7, 2023
dfa9897
docs: fix section title marks
kenjis Mar 7, 2023
e61a39f
docs: replace With with with in title
kenjis Mar 7, 2023
ef287b7
docs: make file paths bold
kenjis Mar 7, 2023
85e08c8
docs: fix file paths
kenjis Mar 7, 2023
a2f2dea
docs: make uppercase letters in title lower
kenjis Mar 7, 2023
6f1db3c
docs: add "Redirect and Validation Errors"
kenjis Mar 7, 2023
bb7204d
fix: use random_byte() in random_string() alnum,nozero,alpha
kenjis Mar 7, 2023
73d930e
docs: update docs
kenjis Mar 7, 2023
536dab6
Merge pull request #7342 from kenjis/fix-docs-Forge-addColumn-NULL
kenjis Mar 7, 2023
0d5a26f
docs: fix out-of-dated description on App namespace
kenjis Mar 11, 2023
5ecf70d
docs: add missing $
kenjis Mar 11, 2023
e7fe68e
docs: update sample code
kenjis Mar 11, 2023
4316498
docs: remove incorrect description
kenjis Mar 11, 2023
fd95faf
docs: fix folder name
kenjis Mar 11, 2023
80ea505
docs: change to enumerate cryptographically insecure types
kenjis Mar 11, 2023
d483d57
Merge pull request #7343 from kenjis/fix-docs-validation
kenjis Mar 11, 2023
9ed4900
docs: replace folder with directory
kenjis Mar 11, 2023
f32eaa5
Merge pull request #7348 from kenjis/fix-docs-autoloader.rst
samsonasik Mar 11, 2023
54186a9
fix: remove incorrect description
kenjis Mar 12, 2023
a152ea7
docs: add missing period
kenjis Mar 12, 2023
df9906c
docs: fix title marks
kenjis Mar 13, 2023
266cef1
docs: update HTML tag
kenjis Mar 13, 2023
d26b65e
Merge pull request #7351 from kenjis/fix-docs-methodspoofing.rst
kenjis Mar 14, 2023
96d81ca
fix: add support protocol-relative links
kenjis Mar 14, 2023
5f6fb6e
fix: respondNoContent() returns Kint script in development mode
anggadarkprince Mar 9, 2023
8aa470d
test: check content type for respondNoContent to make sure Debugbar i…
anggadarkprince Mar 14, 2023
1afa9da
doc: change logo (svg)
totoprayogo1916 Mar 14, 2023
9e75e20
docs: change to bullet points
kenjis Mar 17, 2023
1896042
docs: fix typo
kenjis Mar 17, 2023
a853148
docs: add missing breaking change in uri_string()
kenjis Mar 17, 2023
c4ff7c7
Merge pull request #7347 from anggadarkprince/develop
MGatner Mar 17, 2023
43cf748
Merge pull request #7341 from kenjis/fix-exceptionHandler-show-first-…
kenjis Mar 18, 2023
f350c55
Merge pull request #7344 from kenjis/fix-random_string-alnum
kenjis Mar 18, 2023
897980b
Merge pull request #7350 from kenjis/fix-migrate-rollback-relative
kenjis Mar 18, 2023
d3c192a
Merge pull request #7353 from kenjis/fix-site-url-protocol-relative-link
kenjis Mar 18, 2023
dbe1ac8
Merge pull request #7354 from totoprayogo1916/doc/logo
kenjis Mar 18, 2023
2be50cc
Merge pull request #7356 from kenjis/docs-fix-uri_string-432-bc
kenjis Mar 18, 2023
533a090
chore: update Kint to 5.0.5
kenjis Mar 18, 2023
ba63308
docs: add section title marks
kenjis Mar 18, 2023
2b530fe
docs: add "Setting View Parameters" section
kenjis Mar 18, 2023
8a3174d
docs: remove <?php in sample code
kenjis Mar 18, 2023
f36803f
docs: remove :noindex:
kenjis Mar 18, 2023
dc9a424
docs: make function name linkable
kenjis Mar 18, 2023
b7d56d5
docs: add () after method name
kenjis Mar 18, 2023
a55690a
docs: make method names linkable
kenjis Mar 18, 2023
06149c2
docs: remove `:noindex:`
kenjis Mar 18, 2023
fcc4de5
fix: Cache FileHandler error when there is a folder in cache dir
kenjis Mar 18, 2023
d97b04b
Merge pull request #7360 from kenjis/fix-docs-rm-noindex
paulbalandan Mar 20, 2023
7a36628
Merge pull request #7359 from kenjis/improve-view_renderer.rst
paulbalandan Mar 20, 2023
1739d51
Merge pull request #7358 from kenjis/update-kint-505
kenjis Mar 20, 2023
0fb5f68
docs: add UG common link for more info
datamweb Mar 21, 2023
8a256a2
docs: fix section title level
kenjis Mar 21, 2023
00abda1
docs: replace seeds with seeders
kenjis Mar 21, 2023
39af027
docs: add section title and TOC
kenjis Mar 21, 2023
f9cc308
docs: change text decoration
kenjis Mar 21, 2023
47ef1cb
docs: add sample command for Windows
kenjis Mar 22, 2023
c7a92d3
docs: add sample command for Windows
kenjis Mar 22, 2023
3bbe1da
Merge pull request #7361 from kenjis/fix-Cache-FileHandler-error
kenjis Mar 22, 2023
b88fdaf
chore(deps-dev): update rector/rector requirement
dependabot[bot] Mar 22, 2023
41df7e8
Merge pull request #7369 from codeigniter4/dependabot/composer/rector…
samsonasik Mar 22, 2023
6dc1e75
Merge pull request #7366 from datamweb/docs-add-common-link
kenjis Mar 23, 2023
601f29f
Merge pull request #7367 from kenjis/fix-docs-seeds.rst
kenjis Mar 23, 2023
0954e8a
Merge pull request #7368 from kenjis/fix-docs-namespace-for-windows
kenjis Mar 23, 2023
2508a76
test: Temporary solution for PHP 8.2.4 SIGSEGV #7362
kenjis Mar 24, 2023
829bcb2
Merge pull request #7375 from kenjis/test-comment-out-testUnserialize…
kenjis Mar 24, 2023
e686731
docs: replace With with with
kenjis Mar 25, 2023
b89a97f
docs: increase TOC depth
kenjis Mar 25, 2023
3201a02
docs: add sub section titles
kenjis Mar 25, 2023
e40d25f
docs: make method names linkable
kenjis Mar 25, 2023
6624395
Merge pull request #7379 from kenjis/docs-improve-database-results.rst
kenjis Mar 25, 2023
0d15f89
Prep for 4.3.3 release
kenjis Mar 25, 2023
96b45e0
docs: remove empty section's title
kenjis Mar 25, 2023
25c7c21
Merge pull request #7382 from kenjis/release-4.3.3
kenjis Mar 26, 2023
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
29 changes: 28 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,39 @@
# Changelog

## [v4.3.3](https://github.com/codeigniter4/CodeIgniter4/tree/v4.3.3) (2023-03-26)
[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.3.2...v4.3.3)

### Fixed Bugs

* docs: fix $systemDirectory path in existing project. by @jozefrebjak in https://github.com/codeigniter4/CodeIgniter4/pull/7289
* docs: fix message.rst and improve content_negotiation.rst by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7280
* fix: Encryption CI3 compatibility by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7273
* fix: [QueryBuilder] RawSql causes error when using like() and countAllResults() by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7277
* fix: handling of null bytes in `Exceptions::renderBacktrace()` by @paulbalandan in https://github.com/codeigniter4/CodeIgniter4/pull/7306
* fix: incorrect metadata querying of Redis cache by @paulbalandan in https://github.com/codeigniter4/CodeIgniter4/pull/7307
* fix: [Email] add missing TLS 1.3 support by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7317
* docs: add warning to random_string() by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7333
* fix: random_string() numeric by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7336
* docs: add note for addColumn() and NULL by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7342
* fix: respondNoContent() returns Kint script in development mode by @anggadarkprince in https://github.com/codeigniter4/CodeIgniter4/pull/7347
* fix: use first exception in exceptionHandler() by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7341
* fix: random_string() alpha alnum nozero by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7344
* fix: migrate:rollback -b negative number by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7350
* fix: site_url() does not support protocol-relative links by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7353
* docs: add uri_string() BC in v4.3.2 by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7356
* fix: Cache FileHandler error when there is a folder in cache dir by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7361

### Refactoring

* refactor: consistent header name case by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7299

## [v4.3.2](https://github.com/codeigniter4/CodeIgniter4/tree/v4.3.2) (2023-02-18)
[Full Changelog](https://github.com/codeigniter4/CodeIgniter4/compare/v4.3.1...v4.3.2)

### Breaking Changes

* fix: base_url() removes trailing slash in baseURL by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7200
* fix: remove parameter $relative in `uri_string()` by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7135

### Fixed Bugs

Expand All @@ -14,7 +42,6 @@
* fix: remove `All` from `Options All -Indexes` in .htaccess by @sba in https://github.com/codeigniter4/CodeIgniter4/pull/7093
* fix: bug on stuck content-type header in Feature Testing by @baycik in https://github.com/codeigniter4/CodeIgniter4/pull/7112
* fix: ordering `Validation` show error by call `setRule()` by @ddevsr in https://github.com/codeigniter4/CodeIgniter4/pull/7149
* fix: remove parameter $relative in `uri_string()` by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7135
* fix: [QueryBuilder] where() generates incorrect SQL when using RawSql by @sclubricants in https://github.com/codeigniter4/CodeIgniter4/pull/7147
* fix: [QueryBuilder] RawSql passed to set() disappears without error by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7148
* fix: [Parser] local_currency causes "Passing null to parameter" by @kenjis in https://github.com/codeigniter4/CodeIgniter4/pull/7157
Expand Down
74 changes: 49 additions & 25 deletions admin/RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,8 @@ If you release a new minor version.

## Changelog

When generating the changelog each Pull Request to be included must have one of the following [labels](https://github.com/codeigniter4/CodeIgniter4/labels):
When generating the changelog each Pull Request to be included must have one of
the following [labels](https://github.com/codeigniter4/CodeIgniter4/labels):
- **bug** ... PRs that fix bugs
- **enhancement** ... PRs to improve existing functionalities
- **new feature** ... PRs for new features
Expand All @@ -27,7 +28,8 @@ PRs with breaking changes must have the following additional label:

### Generate Changelog

To auto-generate, navigate to the [Releases](https://github.com/codeigniter4/CodeIgniter4/releases) page,
To auto-generate, navigate to the
[Releases](https://github.com/codeigniter4/CodeIgniter4/releases) page,
click the "Draft a new release" button.

* Tag: "v4.x.x" (Create new tag)
Expand All @@ -39,32 +41,42 @@ Check the resulting content. If there are items in the *Others* section which
should be included in the changelog, add a label to the PR and regenerate
the changelog.

Copy the resulting content into **CHANGELOG.md** and adjust the format to match the existing content.
Copy the resulting content into **CHANGELOG.md** and adjust the format to match
the existing content.

## Preparation

* Work off direct clones of the repos so the release branches persist for a time
* Clone both **codeigniter4/CodeIgniter4** and **codeigniter4/userguide** and resolve any necessary PRs
* Clone both **codeigniter4/CodeIgniter4** and **codeigniter4/userguide** and
resolve any necessary PRs
```console
git clone [email protected]:codeigniter4/CodeIgniter4.git
git clone [email protected]:codeigniter4/userguide.git
```
* Vet the **admin/** folders for any removed hidden files (Action deploy scripts *do not remove these*)
* Vet the **admin/** folders for any removed hidden files (Action deploy scripts
*do not remove these*)
* Merge any Security Advisory PRs in private forks

## Process

> Note: Most changes that need noting in the User Guide and docs should have been included
> with their PR, so this process assumes you will not be generating much new content.
> **Note** Most changes that need noting in the User Guide and docs should have
> been included with their PR, so this process assumes you will not be
> generating much new content.

* Create a new branch `release-4.x.x`
* Update **system/CodeIgniter.php** with the new version number: `const CI_VERSION = '4.x.x';`
* Update **user_guide_src/source/conf.py** with the new `version = '4.x'` (if applicable) and `release = '4.x.x'`
* Update **system/CodeIgniter.php** with the new version number:
`const CI_VERSION = '4.x.x';`
* Update **user_guide_src/source/conf.py** with the new `version = '4.x'` (if applicable)
and `release = '4.x.x'`
* Replace **CHANGELOG.md** with the new version generated above
* Set the date in **user_guide_src/source/changelogs/{version}.rst** to format `Release Date: January 31, 2021`
* Create a new changelog for the next version at **user_guide_src/source/changelogs/{next_version}.rst** and add it to **index.rst**
* Create **user_guide_src/source/installation/upgrade_{ver}.rst**, fill in the "All Changes" section, and add it to **upgrading.rst**
* git diff --name-status master -- . ':!system'
* Set the date in **user_guide_src/source/changelogs/{version}.rst** to format
`Release Date: January 31, 2021`
* Create a new changelog for the next version at
**user_guide_src/source/changelogs/{next_version}.rst** and add it to
**index.rst**
* Create **user_guide_src/source/installation/upgrade_{ver}.rst**, fill in the
"All Changes" section, and add it to **upgrading.rst**
* git diff --name-status origin/master -- . ':!system'
* Commit the changes with "Prep for 4.x.x release" and push to origin
* Create a new PR from `release-4.x.x` to `develop`:
* Title: "Prep for 4.x.x release"
Expand All @@ -85,9 +97,13 @@ See the changelog: https://github.com/codeigniter4/CodeIgniter4/blob/develop/CHA

## New Contributors
*

Full Changelog: https://github.com/codeigniter4/CodeIgniter4/compare/v4.x.x...v4.x.x
```
* 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:
* 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
Expand Down Expand Up @@ -121,22 +137,28 @@ git switch -c 4.x
git push origin HEAD
```
* Publish any Security Advisories that were resolved from private forks
* Announce the release on the forums and Slack channel (note: this forum is restricted to administrators):
* Make a new topic in the "News & Discussion" forums: https://forum.codeigniter.com/forum-2.html
* The content is somewhat organic, but should include any major features and changes as well as a link to the User Guide's changelog
* Announce the release on the forums and Slack channel
(note: this forum is restricted to administrators):
* Make a new topic in the "News & Discussion" forums:
https://forum.codeigniter.com/forum-2.html
* The content is somewhat organic, but should include any major features and
changes as well as a link to the User Guide's changelog

## After Publishing Security Advisory

* Send a PR to [PHP Security Advisories Database](https://github.com/FriendsOfPHP/security-advisories).
* E.g. https://github.com/FriendsOfPHP/security-advisories/pull/606
* See https://github.com/FriendsOfPHP/security-advisories#contributing
* Don't forget to run `php -d memory_limit=-1 validator.php`, before submitting the PR
* Don't forget to run `php -d memory_limit=-1 validator.php`, before
submitting the PR

## Appendix

### Sphinx Installation

You may need to install Sphinx and its dependencies prior to building the User Guide.
You may need to install Sphinx and its dependencies prior to building the User
Guide.

This worked seamlessly on Ubuntu 20.04:
```console
sudo apt install python3-sphinx
Expand All @@ -152,8 +174,10 @@ sudo pip3 install sphinx_rtd_theme
* Build the ePub version of the User Guide: `make epub`
* Switch to the **userguide** repo and create a new branch `release-4.x.x`
* Replace **docs/** with **CodeIgniter4/user_guide_src/build/html**
* Ensure the file **docs/.nojekyll** exists or GitHub Pages will ignore folders with an underscore prefix
* Copy **CodeIgniter4/user_guide_src/build/epub/CodeIgniter.epub** to **./CodeIgniter4.x.x.epub**
* Ensure the file **docs/.nojekyll** exists or GitHub Pages will ignore folders
with an underscore prefix
* Copy **CodeIgniter4/user_guide_src/build/epub/CodeIgniter.epub** to
**./CodeIgniter4.x.x.epub**
* Commit the changes with "Update for 4.x.x" and push to origin
* Create a new PR from `release-4.x.x` to `develop`:
* Title: "Update for 4.x.x"
Expand All @@ -165,6 +189,6 @@ sudo pip3 install sphinx_rtd_theme
* Description: "CodeIgniter 4.x.x User Guide"
* Watch for the "github pages" Environment to make sure the deployment succeeds

The User Guide website should update itself via the deploy GitHub Action. Should this fail
the server must be updated manually. See repo and hosting details in the deploy script
at the User Guide repo.
The User Guide website should update itself via the deploy GitHub Action. Should
this fail the server must be updated manually. See repo and hosting details in
the deploy script at the User Guide repo.
2 changes: 1 addition & 1 deletion admin/framework/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"psr/log": "^1.1"
},
"require-dev": {
"kint-php/kint": "^5.0.3",
"kint-php/kint": "^5.0.4",
"codeigniter/coding-standard": "^1.5",
"fakerphp/faker": "^1.9",
"friendsofphp/php-cs-fixer": "3.13.0",
Expand Down
2 changes: 1 addition & 1 deletion app/Common.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,5 @@
* loaded early on, and may also contain additional functions
* that you'd like to use throughout your entire application
*
* @see: https://codeigniter4.github.io/CodeIgniter4/
* @see: https://codeigniter.com/user_guide/extending/common.html
*/
9 changes: 9 additions & 0 deletions app/Config/Encryption.php
Original file line number Diff line number Diff line change
Expand Up @@ -80,4 +80,13 @@ class Encryption extends BaseConfig
* Set to 'authentication' for CI3 Encryption compatibility.
*/
public string $authKeyInfo = '';

/**
* Cipher to use.
* This setting is only used by OpenSSLHandler.
*
* Set to 'AES-128-CBC' to decrypt encrypted data that encrypted
* by CI3 Encryption default configuration.
*/
public string $cipher = 'AES-256-CTR';
}
5 changes: 2 additions & 3 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,9 @@
"psr/log": "^1.1"
},
"require-dev": {
"kint-php/kint": "^5.0.3",
"kint-php/kint": "^5.0.4",
"codeigniter/coding-standard": "^1.5",
"fakerphp/faker": "^1.9",
"friendsofphp/php-cs-fixer": "3.13.0",
"mikey179/vfsstream": "^1.6",
"nexusphp/cs-config": "^3.6",
"nexusphp/tachycardia": "^1.0",
Expand All @@ -25,7 +24,7 @@
"phpunit/phpcov": "^8.2",
"phpunit/phpunit": "^9.1",
"predis/predis": "^1.1 || ^2.0",
"rector/rector": "0.15.16",
"rector/rector": "0.15.23",
"vimeo/psalm": "^5.0"
},
"suggest": {
Expand Down
25 changes: 0 additions & 25 deletions phpstan-baseline.neon.dist
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,6 @@ parameters:
count: 1
path: system/Cache/Handlers/FileHandler.php

-
message: "#^Unreachable statement \\- code above always terminates\\.$#"
count: 1
path: system/Cache/Handlers/MemcachedHandler.php

-
message: "#^Property CodeIgniter\\\\Cache\\\\Handlers\\\\RedisHandler\\:\\:\\$redis \\(Redis\\) in isset\\(\\) is not nullable\\.$#"
count: 1
Expand All @@ -50,16 +45,6 @@ parameters:
count: 1
path: system/Database/BaseConnection.php

-
message: "#^Unreachable statement \\- code above always terminates\\.$#"
count: 2
path: system/Database/BaseResult.php

-
message: "#^While loop condition is always true\\.$#"
count: 2
path: system/Database/BaseResult.php

-
message: "#^Access to an undefined property CodeIgniter\\\\Database\\\\ConnectionInterface\\:\\:\\$DBDriver\\.$#"
count: 2
Expand Down Expand Up @@ -260,21 +245,11 @@ parameters:
count: 1
path: system/Router/Router.php

-
message: "#^Strict comparison using \\=\\=\\= between string and true will always evaluate to false\\.$#"
count: 1
path: system/Session/Handlers/RedisHandler.php

-
message: "#^Property CodeIgniter\\\\Session\\\\Session\\:\\:\\$sessionExpiration \\(int\\) in isset\\(\\) is not nullable\\.$#"
count: 1
path: system/Session/Session.php

-
message: "#^Negated boolean expression is always false\\.$#"
count: 1
path: system/Test/CIUnitTestCase.php

-
message: "#^Access to an undefined property object\\:\\:\\$createdField\\.$#"
count: 1
Expand Down
1 change: 1 addition & 0 deletions rector.php
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,7 @@
__DIR__ . '/system/Debug/Toolbar/Views/toolbar.tpl.php',
__DIR__ . '/system/ThirdParty',
__DIR__ . '/tests/system/Config/fixtures',
__DIR__ . '/tests/system/Filters/fixtures',
__DIR__ . '/tests/_support',
JsonThrowOnErrorRector::class,
StringifyStrNeedlesRector::class,
Expand Down
2 changes: 2 additions & 0 deletions system/API/ResponseTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -92,8 +92,10 @@ protected function respond($data = null, ?int $status = null, string $message =
if ($data === null && $status === null) {
$status = 404;
$output = null;
$this->format($data);
} elseif ($data === null && is_numeric($status)) {
$output = null;
$this->format($data);
} else {
$status = empty($status) ? 200 : $status;
$output = $this->format($data);
Expand Down
2 changes: 1 addition & 1 deletion system/Cache/Handlers/FileHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -346,7 +346,7 @@ protected function getDirFileInfo(string $sourceDir, bool $topLevelOnly = true,
while (false !== ($file = readdir($fp))) {
if (is_dir($sourceDir . $file) && $file[0] !== '.' && $topLevelOnly === false) {
$this->getDirFileInfo($sourceDir . $file . DIRECTORY_SEPARATOR, $topLevelOnly, true);
} elseif ($file[0] !== '.') {
} elseif (! is_dir($sourceDir . $file) && $file[0] !== '.') {
$_filedata[$file] = $this->getFileInfo($sourceDir . $file);
$_filedata[$file]['relative_path'] = $relativePath;
}
Expand Down
3 changes: 1 addition & 2 deletions system/Cache/Handlers/RedisHandler.php
Original file line number Diff line number Diff line change
Expand Up @@ -233,12 +233,11 @@ public function getCacheInfo()
*/
public function getMetaData(string $key)
{
$key = static::validateKey($key, $this->prefix);
$value = $this->get($key);

if ($value !== null) {
$time = Time::now()->getTimestamp();
$ttl = $this->redis->ttl($key);
$ttl = $this->redis->ttl(static::validateKey($key, $this->prefix));

return [
'expire' => $ttl > 0 ? $time + $ttl : null,
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.3.2';
public const CI_VERSION = '4.3.3';

/**
* App startup time.
Expand Down
2 changes: 1 addition & 1 deletion system/Commands/Database/MigrateRollback.php
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ class MigrateRollback extends BaseCommand
* @var array
*/
protected $options = [
'-b' => 'Specify a batch to roll back to; e.g. "3" to return to batch #3 or "-2" to roll back twice',
'-b' => 'Specify a batch to roll back to; e.g. "3" to return to batch #3',
'-g' => 'Set database group',
'-f' => 'Force command - this option allows you to bypass the confirmation question when running this command in a production environment',
];
Expand Down
1 change: 1 addition & 0 deletions system/Commands/Utilities/Routes/ControllerFinder.php
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ public function find(): array
$nsArray = explode('\\', trim($this->namespace, '\\'));
$count = count($nsArray);
$ns = '';
$files = [];

for ($i = 0; $i < $count; $i++) {
$ns .= '\\' . array_shift($nsArray);
Expand Down
10 changes: 7 additions & 3 deletions system/Database/BaseBuilder.php
Original file line number Diff line number Diff line change
Expand Up @@ -2021,9 +2021,9 @@ private function setAlias(string $alias): BaseBuilder
/**
* Sets update fields for upsert, update
*
* @param string|string[] $set
* @param bool $addToDefault adds update fields to the default ones
* @param array|null $ignore ignores items in set
* @param RawSql[]|string|string[] $set
* @param bool $addToDefault adds update fields to the default ones
* @param array|null $ignore ignores items in set
*
* @return $this
*/
Expand Down Expand Up @@ -3082,6 +3082,10 @@ protected function compileWhereHaving(string $qbKey): string
continue;
}

if ($qbkey instanceof RawSql) {
continue;
}

if ($qbkey['condition'] instanceof RawSql) {
$qbkey = $qbkey['condition'];

Expand Down
Loading