Releases: flow-php/flow
Releases · flow-php/flow
0.36.0
[0.36.0] - 2026-04-21
Added
- #2313 - Context to PostgreSql RowMapper - @norberttech
- #2313 - StaticFactory row mapper implementation for PostgreSql Client - @norberttech
- #2313 - Custom context to PostgreSql Client - supported by Symfony Bundle - @norberttech
- #2306 - flow-php/postgrsql-valinor-bridge - @norberttech
- #2306 - RowMapper $next = null to TypeMapper - @norberttech
- #2300 - support for protobuf ^4 | ^5 - @norberttech
- #2299 - phpunit extensions that wraps tests in transactions - @norberttech
- #2299 - phpunit postgresql bridge as optional dependency of postgresql bundle - @norberttech
- #2298 - postgresql symfony messenger bridge - @norberttech
- #2298 - listen/unlisen to postgresql client - @norberttech
- #2298 - postgresql symfony messenger bridge to postgersql symfony bundle - @norberttech
Changed
- #2321 - update dependencies - @norberttech
- #2306 - TypeMapper now uses cast instead of assert - @norberttech
Fixed
- #2320 - allow to register multiple filesystems of the same type in fstab - @norberttech
- be4bb3 - static analysis getting stuck - @norberttech
- 27e3d2 - failing fragile nightly tests - @norberttech
- #2305 - read unique constraint nullsNotDistinct from pg_index - @norberttech
- #2305 - read trigger WHEN clause from pg_trigger, simplify Parser DI - @norberttech
- #2305 - EXCLUDE constraint and index predicate idempotency, DSL/value-object boundary - @norberttech
- #2305 - normalize domain default through normalizeDefault() in PgCatalogProvider - @norberttech
- #2305 - normalize check constraint expression round-trip through pg_get_constraintdef - @norberttech
- #2305 - typed $default in schema DSL + NodeModifier dispatch refactor - @norberttech
- #2301 - added validation to IN statement to avoid segfaults - @norberttech
- #2301 - stale connections in static postgresql client used in tests - @norberttech
- d4ba4a - failing scheduled nightly tests - @norberttech
- #2295 - using type_array for structure array like assertions - @norberttech
Contributors
Generated by Automation
0.35.1
[0.35.1] - 2026-04-09
Changed
- #2294 - updated ext-php-rs in arrow-ext - @norberttech
Fixed
- dd19c1 - fragile failing tests - @norberttech
- #2294 - missing interfaces/exceptions in arrow-ext - @norberttech
- f1e3d8 - postgresql documentation examples - @norberttech
Contributors
Generated by Automation
0.35.0
[0.35.0] - 2026-04-07
Added
- #2292 - flow:sql:format CLI command to flow-php/symfony-postgresql-bundle - @norberttech
- #2291 - flow-php/symfony-filesystem-bundle - @norberttech
- #2290 - migrations to flow-php/postgresql - @norberttech
- #2290 - flow-php/symfony-postgresql-bundle - @norberttech
Changed
- eb94a1 - chore: updated dependencies - @norberttech
- e82db9 - chore: update arrow-ext installation instructions with precompiled binaries - @norberttech
Contributors
Generated by Automation
0.34.3
[0.34.3] - 2026-03-27
Fixed
- b2b99c - docker permissions while building arrow-ext binaries in workflow - @norberttech
Contributors
Generated by Automation
0.34.2
[0.34.2] - 2026-03-27
Fixed
- 29e1b5 - typo in flow-php/arrow-ext release workflow - @norberttech
Contributors
Generated by Automation
0.34.1
[0.34.1] - 2026-03-27
Added
- #2278 - workflow to precompile arrow extension binaries during release - @norberttech
- #2277 - Dedicated installation instructions for each package of monorepo - @norberttech
- #2274 - flow-php/arrow-ext to Dockerfile - @norberttech
- #2274 - flow-php/arrow-ext pie installation tests - @norberttech
- #2268 - arrow-ext and expose parquet reader/writer - @norberttech
- #2268 - ParquetEngine abstraction into flow-php/parquet - @norberttech
Changed
- #2268 - Let flow-php/parquet use engines based on arrow extension availability - @norberttech
Fixed
- #2274 - packages README files - @norberttech
- 32a488 - makefile.frag - @norberttech
- #2273 - arrow-ext installation through pie - @norberttech
Contributors
Generated by Automation
0.34.0
[0.34.0] - 2026-03-26
Added
- #2257 - parquet fixed array length support - @norberttech
- #2257 - byte encoding functions - @norberttech
Changed
- 5b4d92 - chore: update dependencies - @norberttech
- #2258 - optimize parquet library read/write performance - @norberttech
- #2257 - Refactored binnary writter/reader - @norberttech
Fixed
- 898e07 - failing static analysis - @norberttech
- #2271 - Documentation jsonl examples - @norberttech
- #2271 - Playground json/json/doctrine examples - @norberttech
- #2267 - Broken links on the installation docs. - @jaapio
- #2257 - improve parquet writer performance by 18% - @norberttech
Contributors
Generated by Automation
0.33.0
[0.33.0] - 2026-03-09
Added
- #2256 - http adapter/client to CLI application - @norberttech
- #2244 - more partitioning examples - @norberttech
- #2244 - more partitioning documentation - @norberttech
- #2241 - variadic arguments ADR - @norberttech
- #2234 - phpunit telemetry bridge package - @norberttech
- #2231 - missing attributes to telemetry console exporters - @norberttech
- #2231 - options to configure telemetry console exporters verbosity - @norberttech
- #2231 - added clock dsl function - @norberttech
- #2230 - Telemetry Examples - @norberttech
- #2230 - Reference to documentation above examples - @norberttech
Changed
- 9db3c7 - chore: updated dependencies - @norberttech
- #2250 - Optimzed rename operation performance - @norberttech
- #2244 - avoid removing files from other datasets using the same partitiong keys and the same output folder - @norberttech
- e4cc9e - chore: lock nix shell to nix 25.11 - @norberttech
- 1729a8 - feature: integrate datadog RUM - @norberttech
- be622a - refactor: add retry pattern to e2e website test, enable posthog integration - @norberttech
- 41b8d4 - chore: migrate website analytics from umami to posthog - @norberttech
- 7bd77c - chore: add datadog to list of sponsors - @norberttech
- #2231 - simplified telemetry examples - @norberttech
- #2230 - Move all examples to be executable in playground - @norberttech
- #2230 - Reorganized examples - @norberttech
- #2230 - refactored layout of docuentation playground - to use whole page width - @norberttech
Fixed
- #2250 - entries dropping metadata during rename - @norberttech
- #2249 - readLines() dropping falsy values in S3 and Azure source streams - @norberttech
- #2248 - dont save string length into min/max statistics - @norberttech
- #2246 - restore wider support for bricks/math dependency - @norberttech
- #2245 - support for explicit schemas in update/merge/delete query builders - @norberttech
- #2242 - Prevent fatal error when fetching Google sheet rows without values - @stloyd
- b46086 - failing symfony bundle tests - @norberttech
- #2231 - missing entry in bin/build-phar.sh script - @norberttech
Removed
- #2256 - deprecated code from Data Frame - @norberttech
- #2250 - rename related reprecated code - @norberttech
Contributors
Generated by Automation
0.32.0
[0.32.0] - 2026-02-23
Added
- #2228 - Add "symfony/polyfill-mbstring" as requirement when needed - @stloyd
- #2225 - telemetry attributes constraints - @norberttech
- #2225 - DataFrame name - @norberttech
- #2213 - phpstan integration with infection - @norberttech
- #2211 - more context to telemetry logger interface - @norberttech
- #2210 - Filesystem direct integration with Telemetry - @norberttech
- #2202 - Flow PHP - Symfony Telemetry Bundle - @norberttech
- #2198 - integration with flow-php/telemetry and flow-php/etl - @norberttech
- #2198 - Throuhgput instrument in Telemetry - @norberttech
- #2198 - Possibility to complete Meter Instruments on demand like spans - @norberttech
- #2193 - Internal interface Processor - @norberttech
- #2167 - New flow-php/symfony-http-foundation-telemetry-bridge package for Symfony HttpFoundation telemetry context propagation - @norberttech
- #2167 - PHPStan generics support to Carrier interface - @norberttech
- #2167 - Unified unwrap() method to all Carrier implementations - @norberttech
- #2167 - Fluent chaining support for Carrier::set() - @norberttech
- #2164 - Added pg_query_is_utility_stmt(string $sql) : bool function - @norberttech
- #2164 - extension installation tests on macos on ci/cd - @norberttech
Changed
- 67f412 - chore: update dependencies - @norberttech
- #2227 - Bump the lowest supported version of "brick/math" - @stloyd
- #2225 - naming conventions across whole monorepo - @norberttech
- #2225 - reorganized local dev telemetry resources - @norberttech
- #2224 - Rework
GoogleSheetExtractorto use batch get functionality - @stloyd - #2222 - Adjust
GoogleSheetExtractorrow data extraction - @stloyd - #2220 - Prevent using deprecated
brick/mathfunctions - @stloyd - #2213 - reduced mutation tests just to data frame library - @norberttech
- 9aa918 - chore: updated dependencies - @norberttech
- 4be034 - update: dependencies - @norberttech
- #2196 - Stages are now called Segments - @norberttech
- #2193 - Building DataFrame Pipeline as Stages - @norberttech
- f58d7e - refactor: remove homebrew formula and tap distribution - @norberttech
- #2167 - [BC] Carrier::set() return type changed from void to static - @norberttech
- #2167 - [BC] ArrayCarrier::toArray() replaced by unwrap() - @norberttech
- #2167 - [BC] ResponseCarrier::getResponse() replaced by unwrap() - @norberttech
- #2164 - Updated libpg_query to latest version - @norberttech
- #2164 - ci/cd workflow testing installation of the extension through pie - @norberttech
- 6f98ff - chore: set runner.time_unit to milliseconds in phpbench config - @norberttech
- d7b52a - refactor: report mode in phpbench reports in milliseconds - @norberttech
- 2a9ed5 - refactor: change number of iterations / revs in benchmarks - @norberttech
- 16a977 - refactor: github benchmark workflows to not install php anymore on runner - @norberttech
- 819d54 - refactor: phpbench report - @norberttech
- 56c3ea - refactor: increate retry_threshold for phpbench - @norberttech
Fixed
- #2225 - tracers loosing context - @norberttech
- #2225 - missing DataFrame telemetry coverage in trigger methods - @norberttech
- #2224 - Fixed wrong handling of skipping the header row in
GoogleSheetExtractor- @stloyd - #2213 - symfony telemetry bundle tests for lowest symfony versions - @norberttech
- #2212 - Support any regex delimiter and modifiers in compiler pass pattern matching - @bendavies
- #2211 - failing symfony telemetry bundle tests - @norberttech
- #2211 - regex patterns to exclude commands/templates in telemetry bundle - @norberttech
- #2202 - DSL documentation page - @norberttech
- #2196 - Autocast behavior when number is incorrectly detected as date to later be merged with float|int - @norberttech
- df7b4a - added missingstup for pg_query_is_utility_stmt method of pg-query-extension - @norberttech
- c6d9fe - static analysis configuration - @norberttech
- #2164 - installation of the extension on macos - @norberttech
- ca5c05 - benchmarks github actions workflow assertions - @norberttech
- 0ce788 - benchmarks github actions workflow assertions - @norberttech
- 35be1d - benchmarks github actions workflow - @norberttech
- f23365 - otel collector in baseline workflow - @norberttech
- b63538 - telemetry shutdown in benchmarks - @norberttech
- 330da9 - added otel collector to baseline - @norberttech
Removed
- [#2171](htt...
0.31.0
[0.31.0] - 2026-01-19
Added
- #2158 - New flow-php/monolog-telemetry-bridge package - connects Monolog with Flow Telemetry for unified logging export - @norberttech
- #2158 - TelemetryHandler - Monolog handler that forwards logs to Flow Telemetry with automatic trace context propagation (trace_id/span_id) - @norberttech
- #2158 - LogRecordConverter - converts Monolog LogRecord to Telemetry LogRecord with attribute prefixing (context., extra.) - @norberttech
- #2158 - SeverityMapper - maps Monolog levels to Telemetry severities with customizable mapping - @norberttech
- #2158 - ValueNormalizer - normalizes PHP values to Telemetry-compatible attribute types - @norberttech
- #2158 - DSL functions: telemetry_handler(), log_record_converter(), severity_mapper(), value_normalizer() - @norberttech
- #2158 - Automatic exception handling - Throwables in Monolog context are passed to Telemetry's setException() - @norberttech
- #2158 - Documentation for Monolog Telemetry Bridge - @norberttech
- #2150 - flow-php/telemetry library - @norberttech
- #2150 - flow-php/telemetry-otlp-bridge bridge - @norberttech
- #2140 - Benchmark documentation explaining infrastructure, workflow, and how to run benchmarks - @norberttech
- #2136 - Added normalize() and fromArray() methods to PostgreSQL Explain Plan classes (Cost, Timing, Buffers, PlanNode, Plan, ExplainConfig) for serialization/deserialization support - @norberttech
- #2136 - Added PHPStan type aliases (PlanNodeShape, TimingShape, BuffersShape) for improved type documentation - @norberttech
- #2134 - InvalidExplainConfigException - exception for invalid EXPLAIN config flag combinations - @norberttech
- #2134 - ExplainConfig fluent builder methods: withAnalyze(), withoutAnalyze(), withBuffers(), withoutBuffers(), withTiming(), withoutTiming(), withVerbose(), withoutVerbose(), withCosts(), withoutCosts(), withMemory(), withoutMemory(), withSettings(), withoutSettings(), withSummary(), withoutSummary(), withWal(), withoutWal(), withFormat() - @norberttech
- #2134 - ExplainConfig validation - throws InvalidExplainConfigException when BUFFERS, TIMING, or WAL are enabled without ANALYZE - @norberttech
- #2134 - PlanSummary::fromArray() static factory method - creates instance from normalized array (inverse of normalize) - @norberttech
- #2134 - ExplainConfigTest - unit tests for validation and fluent builder methods - @norberttech
- #2134 - PgSqlExplainTest - integration tests with data providers for ExplainConfig combinations - @norberttech
- #2133 - sql_to_limited_query(string $sql, int $limit) DSL function - adds LIMIT clause to queries without adding OFFSET - @norberttech
- #2133 - PlanSummary::normalize() method - returns all plan summary fields as snake_case keyed array - @norberttech
- #2133 - PlanSummary memory statistics: memoryUsed, memoryPeak - @norberttech
- #2133 - PlanSummary join statistics: hashJoinCount, nestedLoopCount, mergeJoinCount - @norberttech
- #2133 - PlanSummary buffer statistics: totalSharedHit, totalSharedRead, hasTempSpill - @norberttech
- #2133 - PlanSummary row statistics: estimatedRows, actualRows - @norberttech
- #2133 - LimitedQueryTest - 7 test cases for sql_to_limited_query function - @norberttech
- #2133 - PlanSummaryTest - 3 test cases for PlanSummary::normalize() method - @norberttech
Changed
- 620363 - chore: update dependencies - @norberttech
- 4c5efc - refactor: improve stabilit of benchmarks - @norberttech
- 91a5d0 - refactor: optimize benchmarks on ci/cd - @norberttech
- #2158 - updated minimum version of monolog to V3 across monorepo - @norberttech
- #2157 - Remove part of unnecessary recursion calls from
array_dot_get()method - @stloyd - #2154 - refactor: stabilize benchmarks - @norberttech
- 08dae8 - refactor: change runner for benchmark-baseline job - @norberttech
- af53ce - refactor: change runner for benchmark tests to flow-php-benchmark-runner - @norberttech
- #2152 - SpanEvent timestamp changed from nanoseconds (int) to DateTimeImmutable for better type safety and consistency - @norberttech
- #2152 - span_event() DSL function now requires explicit timestamp parameter - @norberttech
- #2152 - Span::recordException() now requires explicit timestamp parameter - @norberttech
- #2143 - Adjust
Parameter::asNumber()behaviour to match closer the PHP one - @stloyd - #2140 - GitHub Actions benchmarks now run on dedicated self-hosted runner (flow-php-runner) for consistent results - @norberttech
- #2131 - Update Homebrew TAP formula: flow-php to version: 0.30.0 - @norberttech
- #2136 - Optimized PostgreSqlCursorExtractor to break cursor loop early when fetched rows are less than fetch size, avoiding unnecessary database round-trips - @norberttech
- #2134 - ExplainConfig::withoutAnalyze() auto-disables buffers, timing, and wal options - @norberttech
- #2133 - PlanAnalyzer::summary() now computes and passes join counts, buffer statistics, and row data to PlanSummary - @norberttech
Fixed
- 493cce - benchmarks runner label on github actions workflows - @norberttech
- #2152 - Mermaid diagrams responsiveness on documentation pages - diagrams now scale properly and don't overlap - @norberttech
- b733f4 - documentation tests on website - @norberttech
- 99bb3b - telemetry library - @norberttech
- a71e6a - pr-comment and monorepo-split workflows - @norberttech
- #2151 - TransformerLoader - @norberttech
- [d14d49](d14d4909a2e3a734ac148924cc...