Recent changes
Wednesday November 04 2026
-
Git workflow Updated Markdown page
How Git is used for Exponential - main as the one development line, branches and pull requests squashed and rebased while open, merge commits, no history rewriting after a merge, commit subjects with Added, Updated…
-
Glossary for software engineers Updated Markdown page
The Exponential terms a software engineer meets, from audit trail and baseline to zygote, each defined in one or two sentences with the page that explains it, and mapped to the nearest term of other frameworks where one…
-
HTTP security: headers, CSP, request rules and proxies Updated Markdown page
The HTTP security layer of Exponential - security headers from SecurityHeaders[], the Content Security Policy with modes, directives, nonces and reports, request rules that allow, deny, redirect or log after URL…
-
Internationalization and right to left Updated Markdown page
The internationalization model of Exponential for engineers - locales from CLDR data, content languages stored as bits of a language mask with a limit of 62, translation catalogues in Qt Linguist format, fallbacks…
-
Incident handling Updated Markdown page
How engineers respond to an outage, a regression or a security incident on an Exponential site - triage, the tools for each symptom (maintenance mode, repair from the browser, error references, logs, audit trail…
-
Kernel, lib and extensions: the layering Updated Markdown page
The dependency rules between lib/, kernel/classes, kernel/private, the module controllers, the designs and extensions - which layer may call which, where the rules are not met yet, how names show which layer code…
-
Migrations for software engineers Updated Markdown page
The migration model of Exponential 6.0.15 for engineers - ordered, recorded, checksum-guarded, captioned and committed changes - its architecture next to the .dba schema files and the upgrade steps, the design rules for…
-
Modules, views and access control Updated Markdown page
How Exponential routes a request to code and decides whether the user may run it - modules, views and policy functions in module.php, class-based views, roles, policies and limitations, the access checks of the dispatch…
-
Multi-site installations Updated Markdown page
How one Exponential installation serves several sites - siteaccesses per site and language, shared or separate content trees, per-site settings inside extensions, per-site logs, caches and INI caches, cross-site links…
-
Observability: logs, debug bar and audit trail Updated Markdown page
What an Exponential installation tells you about itself and where - the kernel logs and their rotation, the request logs 404.log and security.log, the log viewer and exp:logs, error references, the debug bar, the…
-
Performance measurement and benchmarks Updated Markdown page
How to measure Exponential's performance before and after a change - exp:benchmark in its http, kernel, micro and baseline modes, the micro benchmark CI runs on every push, the debug bar's timing and SQL figures…
-
Persistence and the database layer Updated Markdown page
How Exponential talks to its database - the eZDB factory and drivers, eZPersistentObject as the table mapper, transactions that nest by counting, the SQL query cache, isolation levels, and the rules every query must…
-
Release engineering Updated Markdown page
How releases of Exponential and its extensions are made - the main branch and its 6.0.x-dev alias, where the kernel version lives, the extension release procedure with ezinfo.php and extension.xml, the file manifest…
-
The request lifecycle Updated Markdown page
What happens between a browser request and the response in Exponential, step by step - maintenance and repair hooks, autoload, the kernel constructor, siteaccess matching, URL translation, access checks, the module run…
-
Scaling and clustering Updated Markdown page
How an Exponential site scales - up on one machine with Velocity and caches, and out to several web nodes - with what must be shared (database, files, sessions), what stays per node (caches, logs, workers), the DFS…
-
Schema changes and migrations Updated Markdown page
How a database schema change reaches every installation of Exponential - the .dba schema files for new installations, upgrade steps that exp:upgrade applies to every installation of the kernel or an extension, and…
-
Security engineering overview Updated Markdown page
The security model of Exponential for engineers - access control through policies, output escaping, safe SQL, CSRF tokens, the secure defaults of 2026, the HTTP security layer, authentication and two-factor sign-in, the…
-
Security review checklist Updated Markdown page
A checklist for reviewing a change to Exponential or an extension for security - access control, input and output, SQL and shell, CSRF, files and uploads, redirects, secrets, logging and privacy, HTTP headers and CSP…
-
Siteaccesses and configuration Updated Markdown page
How Exponential is configured - INI files read through eZINI, the order in which override directories win, siteaccess matching, per-environment variants with EXP_ENV, configuration managed by the deployment, secrets in…
-
Software engineer FAQ Updated Markdown page
Short answers to the questions software engineers ask first about Exponential - language and versions, frameworks and PSRs, ORM and migrations, databases, servers, statics, caches, tests, releases, security reports…