Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
39 changes: 0 additions & 39 deletions .codecov.yml

This file was deleted.

18 changes: 17 additions & 1 deletion CHANGELOG-5.0.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,22 @@
# Changelog

All notable changes to `phalcon/debugbar` are documented here. The format is based on [Keep a Changelog][keep_a_changelog] and this project adheres to [Semantic Versioning][semantic_versioning].
All notable changes to `phalcon/cphalcon` are documented here. The format is based on [Keep a Changelog][keep_a_changelog] and this project adheres to [Semantic Versioning][semantic_versioning].

## [5.18.0](https://github.com/phalcon/cphalcon/releases/tag/v5.18.0) (2026-xx-xx)

### Tools

- Zephir 1.1.0 (80d17e6a0)

### Changed

### Added

- Added request attributes support to `Phalcon\Http\Request`. `Phalcon\Http\Request::getAttributes()` returns a `Phalcon\Http\Request\Bag\AttributeBag`, a mutable, string-keyed bag of arbitrary application-defined values attached to the request during its lifecycle (router, dispatcher, security components etc.). Writing with a `null` key (the `$bag[] = ...` append form) throws the new `Phalcon\Http\Request\Exceptions\NullKeyException`, since bag elements are always string-keyed. [#17367](https://github.com/phalcon/cphalcon/issues/17367) [[doc]](https://docs.phalcon.io/5.18/http-request/)

### Fixed

### Removed

## [5.17.0](https://github.com/phalcon/cphalcon/releases/tag/v5.17.0) (2026-07-17)

Expand Down
2 changes: 1 addition & 1 deletion bin/generate-api-docs.php
Original file line number Diff line number Diff line change
Expand Up @@ -410,7 +410,7 @@ function emitTree(array $class, array $registry): string
}

if ([] !== $annotations) {
$current .= ' ' . implode('; ', $annotations);
$current .= ' - ' . implode('; ', $annotations);
}

$lines[] = $current;
Expand Down
4 changes: 2 additions & 2 deletions build/phalcon/phalcon.zep.c

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

22 changes: 19 additions & 3 deletions ext/config.m4

Large diffs are not rendered by default.

13 changes: 10 additions & 3 deletions ext/config.w32
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ if (PHP_PHALCON != "no") {
ADD_SOURCES(configure_module_dirname + "/phalcon/db/adapter", "adapterinterface.zep.c abstractadapter.zep.c pdofactory.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/html/escaper", "abstractescaper.zep.c escaperinterface.zep.c attributeescaper.zep.c cssescaper.zep.c exception.zep.c htmlescaper.zep.c jsescaper.zep.c urlescaper.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/html/helper/input", "abstractinput.zep.c abstractchecked.zep.c abstractgroup.zep.c checkbox.zep.c checkboxgroup.zep.c generic.zep.c radio.zep.c radiogroup.zep.c select.zep.c textarea.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/request", "exception.zep.c fileinterface.zep.c file.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/paginator/adapter", "adapterinterface.zep.c abstractadapter.zep.c model.zep.c nativearray.zep.c querybuilder.zep.c querybuildercursor.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/annotations/adapter", "adapterinterface.zep.c abstractadapter.zep.c apcu.zep.c memory.zep.c stream.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/auth/adapter", "abstractadapter.zep.c abstractarrayadapter.zep.c adapterlocator.zep.c memory.zep.c model.zep.c stream.zep.c", "phalcon");
Expand All @@ -89,7 +90,6 @@ if (PHP_PHALCON != "no") {
ADD_SOURCES(configure_module_dirname + "/phalcon/dispatcher", "exception.zep.c dispatcherinterface.zep.c abstractdispatcher.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/html/link/interfaces", "linkinterface.zep.c linkproviderinterface.zep.c evolvablelinkinterface.zep.c evolvablelinkproviderinterface.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/cookie", "exception.zep.c cookieinterface.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/request", "exception.zep.c fileinterface.zep.c file.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/response", "exception.zep.c cookiesinterface.zep.c headersinterface.zep.c cookies.zep.c headers.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/logger/adapter", "adapterinterface.zep.c abstractadapter.zep.c noop.zep.c stream.zep.c syslog.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/queue/adapter", "abstractconsumer.zep.c abstractcontext.zep.c abstractmessage.zep.c abstractproducer.zep.c abstractsubscriptionconsumer.zep.c genericqueue.zep.c generictopic.zep.c messageenvelope.zep.c queuedestinationguard.zep.c", "phalcon");
Expand All @@ -109,12 +109,14 @@ if (PHP_PHALCON != "no") {
ADD_SOURCES(configure_module_dirname + "/phalcon/encryption/security/jwt/signer", "signerinterface.zep.c abstractsigner.zep.c hmac.zep.c none.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/flash", "exception.zep.c flashinterface.zep.c abstractflash.zep.c direct.zep.c session.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/html", "exception.zep.c attributes.zep.c breadcrumbs.zep.c escaper.zep.c escaperfactory.zep.c tagfactory.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http", "requestinterface.zep.c responseinterface.zep.c cookie.zep.c request.zep.c response.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/image/adapter", "adapterinterface.zep.c abstractadapter.zep.c gd.zep.c imagick.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/logger/formatter", "formatterinterface.zep.c abstractformatter.zep.c json.zep.c line.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/mvc/application", "exception.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/mvc/url", "exception.zep.c urlinterface.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/mvc/view/engine", "engineinterface.zep.c abstractengine.zep.c php.zep.c volt.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/mvc", "viewbaseinterface.zep.c entityinterface.zep.c routerinterface.zep.c controllerinterface.zep.c dispatcherinterface.zep.c modelinterface.zep.c router.zep.c viewinterface.zep.c application.zep.c controller.zep.c dispatcher.zep.c micro.zep.c model.zep.c moduledefinitioninterface.zep.c url.zep.c view.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/adr/exceptions", "adrthrowable.zep.c exception.zep.c notanaction.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/auth/guard", "abstractguard.zep.c guardlocator.zep.c session.zep.c token.zep.c userremember.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/auth/guard/config", "abstractguardconfig.zep.c sessionguardconfig.zep.c tokenguardconfig.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/autoload", "exception.zep.c loader.zep.c", "phalcon");
Expand All @@ -138,7 +140,10 @@ if (PHP_PHALCON != "no") {
ADD_SOURCES(configure_module_dirname + "/phalcon/support/helper", "exception.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/time/clock", "clockinterface.zep.c exception.zep.c frozenclock.zep.c systemclock.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/translate/interpolator", "interpolatorinterface.zep.c associativearray.zep.c indexedarray.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/contracts/adr", "handler.zep.c action.zep.c domain.zep.c middleware.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/contracts/adr/payload", "payload.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/contracts/auth", "authuser.zep.c manager.zep.c authremember.zep.c remembertoken.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/contracts/http", "attributerequestinterface.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/contracts/messages", "messages.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/datamapper/pdo", "connectionlocatorinterface.zep.c connection.zep.c connectionlocator.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/datamapper/pdo/profiler", "profilerinterface.zep.c memorylogger.zep.c profiler.zep.c", "phalcon");
Expand All @@ -147,11 +152,13 @@ if (PHP_PHALCON != "no") {
ADD_SOURCES(configure_module_dirname + "/phalcon/html/attributes", "attributesinterface.zep.c renderinterface.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/html/link/serializer", "serializerinterface.zep.c header.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/message", "requestmethodinterface.zep.c responsestatuscodeinterface.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http", "requestinterface.zep.c responseinterface.zep.c cookie.zep.c request.zep.c response.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/request/bag", "abstractbag.zep.c attributebag.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/mvc/dispatcher", "exception.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/mvc/model/query", "builderinterface.zep.c statusinterface.zep.c builder.zep.c lang.zep.c status.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/mvc/model/transaction", "exception.zep.c managerinterface.zep.c failed.zep.c manager.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/support/debug", "exception.zep.c dump.zep.c reportbuilder.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/adr/payload", "payload.zep.c payloadfactory.zep.c status.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/adr/responder", "statusmapper.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/acl/exceptions", "accessrulenotfound.zep.c circularinheritanceerror.zep.c elementnotfound.zep.c forbiddenwildcard.zep.c invalidaccesslist.zep.c invalidcomponentimplementation.zep.c invalidroleimplementation.zep.c invalidroletype.zep.c invalidsnapshot.zep.c missingfunctionparameters.zep.c parametertypemismatch.zep.c rolenotfoundexception.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/acl/traits", "itemtrait.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/annotations/exceptions", "annotationnotfound.zep.c annotationsdirectorynotwritable.zep.c cannotreadannotationdata.zep.c unknownannotationexpression.zep.c", "phalcon");
Expand Down Expand Up @@ -207,7 +214,7 @@ if (PHP_PHALCON != "no") {
ADD_SOURCES(configure_module_dirname + "/phalcon/html/exceptions", "attributenotrenderable.zep.c friendlytitleconversionfailed.zep.c invalidresultsetvalue.zep.c servicenotregistered.zep.c usingrequirestwovalues.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/html/helper/input/select", "arraydata.zep.c resultsetdata.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/cookie/exceptions", "cookiekeytooshort.zep.c cryptinterfacerequired.zep.c cryptserviceunavailable.zep.c filterserviceunavailable.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/request/exceptions", "filterserviceunavailable.zep.c invalidhost.zep.c invalidhttpmethod.zep.c missingfilters.zep.c sanitizernotfound.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/request/exceptions", "filterserviceunavailable.zep.c invalidhost.zep.c invalidhttpmethod.zep.c missingfilters.zep.c nullkeyexception.zep.c sanitizernotfound.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/response/exceptions", "nonstandardstatuscoderequiresmessage.zep.c responsealreadysent.zep.c responseserviceunavailable.zep.c urlserviceunavailable.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/http/traits", "encryptionawaretrait.zep.c", "phalcon");
ADD_SOURCES(configure_module_dirname + "/phalcon/image/exceptions", "compositefailed.zep.c extensionnotloaded.zep.c imageloadfailed.zep.c invalidcolor.zep.c missingdimensions.zep.c missingheight.zep.c missingwidth.zep.c resizefailed.zep.c resourcetypeerror.zep.c textrenderingfailed.zep.c unsupportedimagetype.zep.c versionmismatch.zep.c", "phalcon");
Expand Down
Loading
Loading