Proposal: Allow trailing &&, ||, and, or in parenthesized boolean expressions (e.g., ( $a && $b && )). The parser consumes and discards the trailing operator, leaving the AST unchanged.
Scope:
Valid inside parenthesized expressions, control‑structure conditions (if, elseif, while, do‑while, switch), and match arms.
Not allowed in bare expressions, return statements, or array elements.
Rationale: Improves diff readability, eases reordering and commenting of conditions; mirrors existing trailing‑comma support.
Backward Compatibility: Purely additive—previous syntax errors become valid, no existing code changes meaning.
Impact on Ecosystem: Parsers, IDEs, static analyzers, and formatters need to recognize the new syntax; auto‑formatters may optionally add/remove trailing operators. No changes to lexer, AST, compiler, or VM.
This RFC is a candidate for inclusion in the weekly developer newsletter as it introduces a notable language feature with practical coding‑style benefits.
RFC: “Pipe to return” (ID: pipe_to_return)
Version: 1.0 (proposed for PHP 8.6)
Status: Under Discussion
Author: Vadim Dvorovenko
Key Idea: Introduce a pipe operator (|>) that can pass the result of an expression directly to return, enabling syntax like "Hello World" |> strlen() |> return;. This aims to simplify code flow and reduce cognitive load by keeping a consistent left‑to‑right, top‑to‑bottom reading direction.
Syntax: expr |> return (equivalent to return expr)
Multi‑line: same pipeline broken across lines, ending with |> return;
Invalid Cases (parse‑time errors): pipe after return, using return inside arrow functions, etc.
Compatibility: No backward incompatibilities expected; new operator is syntactic sugar producing the same bytecode as a normal return.
Future Scope: Similar piping to throw may be explored in a separate RFC.
New RFC proposes two closure optimizations for PHP 8.next.
Static closure inference – closures that never use $this (and satisfy a set of rules) are automatically treated as static, eliminating reference cycles and improving memory usage.
Stateless closure caching – stateless closures (static, no captured vars or static vars) are cached between calls, reducing instantiation overhead. Benchmarks show ~80% speedup in synthetic tests and ~3% improvement in a Laravel template.
BC breaks: ReflectionFunction::getClosureThis() now returns NULL for inferred‑static closures; identical stateless closures from the same lexical location compare equal (===). Closure binding behavior adjusted to allow objects on inferred static closures only.
New script runner flags: --parallel, --sequential with full --filter/--workspaces support for concurrent/sequential package.json scripts.
HTTP/2 connection upgrades via net.Server → Http2SecureServer now work correctly.
mock() and spyOn() now implement [Symbol.dispose] for automatic cleanup (using keyword).
NO_PROXY respected even with explicit proxy options in fetch() / WebSocket().
Added --cpu-prof-interval flag to control CPU profiler sampling interval.
ESM bytecode support: --bytecode --format=esm now works; defaults remain CommonJS until future change.
ARMv8.0 target fix for mimalloc crashes on older ARM64 CPUs.
Performance boosts:
Markdown: SIMD‑accelerated scanning (3–15% faster), cached tag strings in Bun.markdown.react().
AbortSignal.abort(): skips event creation when no listeners (~6% micro‑benchmark improvement).
JavaScriptCore upgrades: SIMD regex prefix search, JIT for fixed‑count parentheses, intrinsics for String.startsWith, Set.size/Map.size, String.trim, and rope return for String.replace.
Compatibility & bug fixes:
Node.js fs ops (existsSync('.'), etc.) now work on Windows.
Correct Thai character width handling in Bun.stringWidth.
Preview: New year, new Foundation Board Meeting recaps! Yes, it is February now, but this is the update we meant to post in January covering the Rust Foundation board meeting that happened on December 9, 2025.
Preview: Casablanca, Morocco – Febuary 05, 2026 PostgreSQL credcheck extension The credcheck PostgreSQL extension provides few general credential checks, which will be evaluated during the user creation etc
Preview: GPT-5.3-Codex, OpenAI’s latest agentic coding model, is now rolling out in GitHub Copilot. In early testing, GPT-5.3-Codex reaches new high scores on benchmarks we use to evaluate coding, agentic, and
Preview: Amazon WorkSpaces Secure Browser now supports custom domains for your WorkSpaces Secure Browser portals, enabling you to configure portal access through your own domain name instead of the default por
Preview: Cloud Data Fusion Feature Cloud Data Fusion version 6.11.1.1 is generally available (GA). This release includes the following feature: InstanceV3 monitored-resource: Introduced datafusion.googleapis.
Preview: This week’s newsletter links to work on a constant-time parallelized UTXO database, summarizes a new high-level language for writing Bitcoin Script, and describes an idea to mitigate dust attacks. Als