Framework

Repository Author Commit message Committed SHA  
 
di by dg composer: minimal dependencies
component-model by dg added CLAUDE.md
component-model by dg Component: attached handles are called top-down (ancestor → descendant) (BC break)

Implementation handles tree mutations during listener execution:
- Listeners can modify tree (remove self, siblings, parent)
- Validity check before processing children
- Deduplication prevents calling same listener twice
- Reentry guard prevents infinite loops

component-model by dg removed Nette\SmartObject usage (BC break)
component-model by dg Container::addComponent() added typehint (BC break)
component-model by dg removed deprecated stuff
component-model by dg composer: increased dependencies versions
component-model by dg requires PHP 8.2
component-model by dg opened 4.0-dev
component-model by dg used attribute Deprecated
component-model by dg Container::getComponents() parameters deprecated
component-model by dg monitor() without handlers triggers deprecation notice
component-model by dg deprecated magic properties (BC break)
component-model by dg opened 3.2-dev
bootstrap by dg added DI extensions auto-discovery
bootstrap by dg added CLAUDE.md
bootstrap by dg renamed PhpExtension -> PhpIniExtension
bootstrap by dg opened 4.0-dev
bootstrap by dg made static analysis mandatory
bootstrap by dg fixed PHPStan errors
bootstrap by dg uses nette/phpstan-rules
bootstrap by dg composer: bumped minimal versions
bootstrap by dg requires PHP 8.2
bootstrap by dg opened 3.3-dev
bootstrap by dg default parameters (wwwDir, appDir, ...) are now overridable in user configs

Previously, parameters from getDefaultParameters() were injected into the
compiler AFTER all user configs, which silently overrode any redefinition
in common.neon. As a result, e.g. `wwwDir: %rootDir%/www` in a config had
no effect when the entry script lived outside %rootDir%/www (CLI scripts,
MCP servers, scheduled tasks).

Fix: snapshot defaults into $defaultParameters at construction. In
generateContainer(), inject defaults BEFORE user configs (overridable),
then inject array_diff_key($staticParameters, $defaultParameters) AFTER
configs as authoritative explicit overrides.

Bookkeeping: setters (setTempDirectory, setDebugMode) route through
addStaticParameters(), which removes the touched keys from $defaultParameters.
That preserves the rule "what user explicitly set wins over configs" even
when the explicit value coincidentally equals the auto-detected default.

The container cache key includes the explicit set so two configurators
with identical $staticParameters but different "user-touched" keys
compile to distinct containers.

bootstrap by dg fixed error when HttpExtension is not present (caused by %baseUrl%) [Closes #75]
bootstrap by dg updated github actions
bootstrap by dg improved PHPDoc descriptions
bootstrap by dg improved phpDoc types
bootstrap by dg improved tests
bootstrap by dg updated .gitignore & .gitattributes
tracy by beastbytes readme: added Yii3 Integration (#599)

* opened 3.0-dev

* requires PHP 8.1

* uses PascalCase constants

* removed bridge for Latte

* Logger: added typehints

* Logger: md5 replaced with xxHash

* error.log changed to warning.log

* bar: errors panel => warnings

* readme: added link to Joomla integration (#583)

Link to Joomla! integration.

* used attribute Deprecated

* Update readme.md

Add link to Yii3 integration

---------

Co-authored-by: David Grudl <david@grudl.com>
Co-authored-by: n3t <n3t@n3t.cz>

Last synchronization: 2026-05-11 12:02:41