Releases: flow-php/flow
Releases · flow-php/flow
0.10.0
[0.10.0] - 2024-10-03
Added
- #1238 - Added more output styles for to_output() loader - @norberttech
- #1234 - symfony streamed response - @norberttech
- #1234 - Possibility to use different output streams in StdOutFilesystem - @norberttech
- #1233 - Added StdOut Filesystem with stdout protocol - @norberttech
- #1226 - to_array() loader with usage example - @norberttech
- #1225 - Added breadcrumbs to blog posts - @norberttech
- #1225 - Data Sink examples topic - @norberttech
- #1224 - Added comments to website blog/documentation - @norberttech
- #1221 - DataFrame::filters(array $filters) : self - @norberttech
- 78cefe - BigSiteAuth to submit flow-php.com to bing search - @norberttech
- #1216 - Added auto generated sitemap to website - @norberttech
- #1216 - Added robots.txt - @norberttech
- #1215 - Display DSL function usage examples at function doc page - @norberttech
- #1215 - More DataFrame usage examples - @norberttech
- #1215 - Priority parameter that defines in what order examples/topics are displayed - @norberttech
- #1215 - Hidden parameter that allows to not display specific examples/topics but still let dsl docs link to them - @norberttech
- ee4e8a - missing pointerToEntryName to JsonExtractor withPointer method - @norberttech
- #1211 - Allow to use json pointer as an entry name for extracted records - @norberttech
- #1211 - More tests to array_to_row and array_to_rows methods - @norberttech
- #1195 - Functional tests for flow-php.com website - @norberttech
- #1193 - Links from code examples to DSL functions documentation - @norberttech
- #1193 - each DSL function now gots her own page - @norberttech
- #1193 - missing DSL's definitions - filesystem, azure filesystem, azure sdk - @norberttech
Changed
- #1239 - CachingPipeline will relay only on previously set batch size without modifying it - @norberttech
- #1234 - Path options are now available as a Options object instead of PHP associative array - @norberttech
- #1235 - Improved DX on adding path filter to file extractors - @norberttech
- #1233 - Loaders no longer need to relay on file extension to close streams in clousure - @norberttech
- #1223 - Improved performance of Scalar Function Parameter - @norberttech
- #1222 - Return DOMDocument instead of DOMElement from XMLParserExtractor - @norberttech
- #1221 - Optimized XPath Scalar Function by reusing DOMDocument instead of creating new one - @norberttech
- #1221 - Allow to pass Schema\Definition to withEntry in order to avoid using NativeEntryFactory type detection - @norberttech
- #1215 - Improved title/description at DSL documentation pages - @norberttech
- #1211 - When JsonExtractor is using a pointer, pointer becomes a key - @norberttech
- #1209 - Updated dependencies - @norberttech
- #1208 - Unify passing options to loaders/extractors through fluent interface - @norberttech
- #1207 - from_csv, from_json, from_xml, from_parquet and from_text contract, removed support for passing path as array - @mleczakm
- #1203 - Allow to rename XML nested structure elements on a loader level - @norberttech
- #1203 - Move optional XMLLoader options to fluent interface - @norberttech
- #1196 - Duplicate Module/Type enums in website to avoid dependencies and keep boundaries clean - @norberttech
- #1193 - landing page code highlights are now handled by prismjs - @norberttech
- #1191 - Update Homebrew TAP formula: flow-php to version: 0.9.2 - @norberttech
Fixed
- #1237 - detecting array value type when first element was null - @norberttech
- #1236 - FlowStreamedResponse - drop partitions to avoid opening multiple streams - @norberttech
- cb98b1 - invalid repo name in symfony http foundation bridge repo - @norberttech
- #1234 - Path to bridges unit/integration test cases in phpunit.xml - @norberttech
- #1232 - Don't call loaders when rows are empty - @norberttech
- b5f70f - SEO issue with duplicated example pages titles - @norberttech
- #1220 - DOMElementValue behavior when used on a XPath scalar function result - @norberttech
- #1220 - DOMElementAttributeValue behavior when used on a XPath scalar function result - @norberttech
- #1216 - Routes priority to always check examples and topics at the end - @norberttech
- #1211 - Fixed Json extractor when pointer is used to extract flat arrays - @norberttech
- eaa783 - documentation homepage - @norberttech
- 904b6a - lowercasing module names in dsl routes provider - @norberttech
- b1a9cd - autolinker prism plugin - @norberttech
- 443c48 - codding standards - @norberttech
- d66b2d - building landing page documnetation - @norberttech
- #1194 - Generating links to dsl functions - @norberttech
Updated
- d962b5 - project dependencies before 0.10.0 release - @norberttech
Removed
0.9.2
[0.9.2] - 2024-08-13
Added
- #1190 - link to GitHub next to each dsl function documentation - @norberttech
- #1188 - Documentation tool that can extract function definitions from given paths - @norberttech
- #1188 - bin/docs tool that dumps DSL definitions as json to a file - @norberttech
- #1188 - Landing page documentation section - @norberttech
- #1188 - Scroll up button on website at mobile devices - @norberttech
Changed
- #1187 - Update Homebrew TAP formula: flow-php to version: 0.9.1 - @norberttech
Fixed
Removed
- 4473ae - auto generating dsl - @norberttech
Contributors
Generated by Automation
0.9.1
[0.9.1] - 2024-08-12
Added
- #1185 - Description to landing page examples - @norberttech
Changed
- #1184 - Update Homebrew TAP formula: flow-php to version: 0.9.0 - @norberttech
Fixed
- #1186 - parquet reader when reading multiple data pages - @norberttech
Contributors
Generated by Automation
0.9.0
[0.9.0] - 2024-08-10
Added
- #1183 - JsonLoader parameter that defines if each row should be a single line in the output file - @norberttech
- #1183 - JsonLoader int $flags parameter that is passed later to internal json_encode function - @norberttech
- #1181 - CSV RowsNormalizer to automate writing deeply nested data structures to CSV without manual casting - @norberttech
- #1174 - New blog post about scalar functions - @norberttech
- #1173 - Added new page with a list of latest blog posts to landing page - @norberttech
- #1170 - XMLParserExtractor implementation of XMLExtractor - @norberttech
- #1168 - OnEach scalar function - @norberttech
- #1167 - DOMElementAttributesCount scalar function - @norberttech
- #1167 - DOMElementAttributeValue scalar function - @norberttech
- #1167 - dom_element_to_string helper function - @norberttech
- #1167 - Support for casting DOMElement into different types in Caster - @norberttech
- #1166 - XML Loader - writing to XML files - @norberttech
- #1160 - Regex Scalar Function - @norberttech
- #1160 - Missing optional arguments to all regex scalar functions - @norberttech
- #1128 - UniqueFactory as source of random ints/strings with given length - @mleczakm
- #1147 - Filesystem appendTo - which allows to append data to existing stream - @norberttech
- #1149 - Add
array_to_row
helper function - @stloyd - #1144 - Filesystem - added getSystemTmpDir() method - @norberttech
- #1144 - Path - added suffix(string $suffix): Path method - @norberttech
- #1144 - Path - removed setExtension() - @norberttech
- #1144 - Path - removed startsWith() - @norberttech
- #1131 - Dependabot for github actions dependencies - @norberttech
- #1130 - typed functions to array-dot library - @norberttech
- #1127 - Explain the “ETL” acronym - @alexislefebvre
- #1122 - Generic algorithm abstraction instead of native calls - @mleczakm
- bd519c - discord server url - @norberttech
Changed
- #1182 - Automate normalization of rows in JsonLoader - @norberttech
- #1177 - All scalar functions will now expect parameters to be a scalar function or literal value - @norberttech
- #1174 - Simplified posts HTML syntax - @norberttech
- #1174 - Minor UX adjustments on landing page and blog - @norberttech
- #1170 - XMLReaderExtractor is now deprecated as it can't read from remote files - @norberttech
- #1167 - XMLReaderExtractor will now return each row with node{\DOMElement} instead of node{\DOMDocument} - @norberttech
- #1167 - DOMElementAttribute scalar function is now deprecated in favor of DOMElementAttributeValue - @norberttech
- #1160 - Renamed PregMatch into RegexMatch - @norberttech
- #1160 - Renamed PregMatchAll into RegexMatchAll - @norberttech
- #1160 - Renamed PregReplex into RegexReplace - @norberttech
- #1147 - Simplified Cache abstraction - @norberttech
- #1147 - Cache implementations does not need to maintain index anymore, this logic was moved outside of Cache - @norberttech
- #1147 - Extracted Sorting related configuration to standalone Config/ConfigBuilder - @norberttech
- #1147 - Extracted Caching related configuration to standalone Config/ConfigBuilder - @norberttech
- #1147 - Reduced default cache batch size to 100 from 1000 - @norberttech
- 44e875 - criteria for fetching latest artifacts after workflow runs - @norberttech
- #1152 - Make "jawira/case-converter" a hard dependency - @stloyd
- #1137 - Deprecate Schema::entries in favor to Schema::references - @norberttech
- #1131 - Updated cache@v3 into cache@v4 across all github actions workflows - @norberttech
- #1125 - Replaced github discussions with discord server link at landing page - @norberttech
- #1123 - Rework
References
to do fewer loops - @stloyd - #1120 - Update Homebrew TAP formula: flow-php to version: 0.8.0 - @norberttech
Fixed
- 83f9be - Posts provider for static content builder - @norberttech
- #1171 - Fix docblock tag in FlowVersion - @szepeviktor
- #1172 - Grammar in parquet.md - @szepeviktor
- #1165 - Use basenamePrefix instead of suffix when creating temporary file in overwrite save mode - @norberttech
- #1163 - Added missing split function to ScalarFunctionChain - @norberttech
- #1161 - Fixed invalid map type detection - @norberttech
- #1147 - External Sort memory consumption - @norberttech
- 6b275e - broken test-benchmark.yml file - @norberttech
- 926e3b - typo in test-benchmark.yml workflow - @norberttech
- bb50bd - uploading artificats action by setting overwrite: true - @norberttech
- #1148 - Typo in docs - @inmanturbo
- #1129 - Monolog http bridge http-message dependency range - @norberttech
- #1126 - Typo “Discrod” - @alexislefebvre
Updated
- [9984bb](https://github...
0.8.0
[0.8.0] - 2024-07-19
Added
- e4b84b - google converstion tag for landing page - @norberttech
- #1108 - Tests based on snappy extension and polyfill - @norberttech
- #1106 - Added support for BROTLI compression algorithm to parquet - @flavioheleno
- #1107 - Added support for LZ4 compression algorithm to parquet - @flavioheleno
- #1105 - zstd compression functions - @flavioheleno
- #1104 - Flow Filesystem Library - @norberttech
- #1104 - Flow Azure SDK Library - @norberttech
- #1104 - Flow Monolog HTTP Bridge - @norberttech
- #1104 - Flow Filesystem Azure Bridge - @norberttech
- #1096 - support for parquet deprecated ConvertedType::INT_16 in order to support reading files generated by Amazon Redshift - @norberttech
- #1083 - Allow to use max/min aggregations on date time columns - @norberttech
- #1082 - path partitions extractor - @norberttech
- #1082 - Partitions::get(string $name) : Partition - @norberttech
- #1079 - Enabled parallelization for cs fixer - @norberttech
- #1079 - Allowed to pass both string/reference to aggregating functions - @norberttech
- #1068 - Add new XMLElementEntry - @stloyd
- #1065 - Added cloud storage examples to homepage - @norberttech
- #1059 - allow to reorder entries through DataFrame::select - @norberttech
- #1059 - DataFrame::reorderEntries() with built-in custom ordering strategies - @norberttech
- #1054 - missing tests for parquet rows normalizer - @norberttech
Changed
- #1117 - Parquet - reading byte arrays now returns strings when option byte string as array is set - @norberttech
- #1110 - Simplify making schema definitions nullable - @norberttech
- #1104 - Remote and Local files extractor are now merged into single FilesExtractor - @norberttech
- #1102 - Replace
uniqid
with guarantee uniqueness - @stloyd - #1087 - Prepare for PHPUnit 11 - @stloyd
- #1081 - String based Scalar functions are now using caster to cast values to string - @norberttech
- #1081 - Moved caster to dataframe configuration - @norberttech
- 747f19 - Simplify README.md - @norberttech
- #1058 - Replaced reflection with bind closure approach to set dataframe pipeline - @norberttech
- #1056 - GroupBy is now allowed only with aggregations - @norberttech
- #1056 - NestedPipeline was renamed to LinkedPipeline - @norberttech
- #1056 - All pipelines are now grouped by LinkedPipeline - @norberttech
- #1055 - NestedLoop join algorithm was replaced with HashJoin algorithm - @norberttech
- #1053 - Update Homebrew TAP formula: flow-php to version: 0.7.4 - @norberttech
Fixed
- #1119 - RowsMinSort ASC/DESC sorting - @norberttech
- #1119 - RowsMinSort non numeric values sorting - @norberttech
- #1118 - calculating column chunk statistics for empty array values - @norberttech
- #1117 - Parquet flattened for empty nested structures - @norberttech
- #1117 - Parquet RLEHybrid bitWidth calculation - @norberttech
- #1114 - Fixed Flow to Parquet Schema converter not respecting deprecated parquet converted types - @norberttech
- #1112 - Any comparison function will now return false when comparing non null value wth nulls - @norberttech
- #1111 - Fixed merging nullable with non nullable schema definitions - @norberttech
- bad1f4 - failing tests - @norberttech
- 20b8f6 - etl core dependencies - @norberttech
- #1096 - handling negative numbers in parquet binary reader/writer - @norberttech
- #1094 - Recognize INT32 with deprecated ConvertedType as DateTimeImmutable object - @norberttech
- #1086 - Fix deprecated dynamic property usage - @stloyd
- #1091 - Avoid type casting when it's necessary in entry factory - @norberttech
- #1085 - Fix fragile test comparing console output - @stloyd
- #1084 - Fix for extracting XML attribute - @stloyd
- #1081 - Scalar comparison functions are now also detecting types of compared values to prevent comparing not compatible values - @norberttech
- #1079 - Group by will no longer change type of entries used for groupping - @norberttech
- #1072 - definition of list_entry function in dsl - @norberttech
- 6748a6 - CHANGELOG.md - @norberttech
- #1061 - checks on Ramsey UUID concrete class - @jguittard
- #1057 - DataFrame::aggregate returns the same instance of dataframe with updated pipeline - @norberttech
- #1055 - Right Join before duplicating right side rows in each batch from the left side dataset - @norberttech
Updated
- ba8e35 - dependencies - @norberttech
- 92d9a5 - README.md - @norberttech
- c911e6 - documentations - @norberttech
- 90a2f0 - README.md - @norberttech
- [627883](62788368162b2cf0e30ec1...
0.7.4
[0.7.4] - 2024-04-18
Added
- #1052 - Test that covers writing to a partitioned dataset with overwrite mode - @norberttech
- #1050 - Added support for parquet multifile pagination - @norberttech
- #1039 - join expressions to DSL - @norberttech
- #1038 - How to write a custom data extractor - blog post - @norberttech
- #1037 - Added Base64 serializer - @norberttech
- #1034 - cache batch size configuration - @norberttech
Changed
- #1049 - Flysystem scan will sort files by file name - @norberttech
- #1037 - Compressing serializer is not longer using base64 inside - @norberttech
- #1034 - Replaced CompressingSerializer with NativeSerizer - @norberttech
- #1032 - Update Homebrew TAP formula: flow-php to version: 0.7.3 - @norberttech
Fixed
- #1051 - Make sure that filesystem scans are returning files in proper order - @norberttech
- #1046 - Improve performance of merching rows into given batch size - @norberttech
- #1041 - Invalid inputs now throws InvalidArgumentException - @norberttech
- #1041 - Missing file/directory now throws FileNotFoundException - @norberttech
- #1040 - type value validation for nullable types - @norberttech
- #1036 - Improve performance of sorting operation by reducing number of writes to cache - @norberttech
Removed
- #1033 - Removed null type - @norberttech
Contributors
Generated by Automation
0.7.3
[0.7.3] - 2024-03-29
Added
- #1027 - Added Schema::match() with strict/evolving matchers - @norberttech
- #1026 - Added phpunit.xml to .gitignore - @norberttech
Changed
- #1025 - updated dependencies - @norberttech
- #1024 - Update Homebrew TAP formula: flow-php to version: 0.7.2 - @norberttech
Fixed
- #1031 - casting DateTime objects into datetime/date - @norberttech
- #1030 - Improved displaying floats as strings - @norberttech
- 963d32 - edge case where evolving schema is brings new definition but its missing some old ones (#1028) - @norberttech
- #1025 - writing nullable parquet values that are marked in the schema as optional - @norberttech
Contributors
Generated by Automation
0.7.2
[0.7.2] - 2024-03-27
Added
- #1021 - output on landing page examples - @norberttech
- #1021 - writing to output.txt directly from examples - @norberttech
Changed
- #1016 - Update Homebrew TAP formula: flow-php to version: 0.7.1 - @norberttech
Fixed
- #1023 - merging schemas with different entries - @norberttech
- #1021 - when writing directly to file stream, loader is not closing stream after each chunk of rows - @norberttech
Contributors
Generated by Automation
0.7.1
[0.7.1] - 2024-03-18
Changed
- #1015 - Updated dependencies - @norberttech
- #1010 - Update Homebrew TAP formula: flow-php to version: 0.7.0 - @norberttech
Contributors
Generated by Automation
0.7.0
[0.7.0] - 2024-03-11
Added
- #1008 - group imports - @norberttech
- #1008 - make phpunit assertions static/self - @norberttech
- #1002 - changelog page to landing - @norberttech
- #996 - Schema::keep() - keep selected schema entries - @norberttech
- #991 - Schema::remove - @norberttech
- #991 - Schema::gracefulRemove - @norberttech
- #991 - Schema::add - @norberttech
- #991 - Schema::replace - @norberttech
- #988 - Respect additional/missing schema fields when creating rows - @norberttech
- #987 - DataFrame::dropPartitions can now additionally drop also partition columns - @norberttech
Changed
- #1008 - disabled native functions invocation that was messing with namespaced functions - @norberttech
- #1006 - Update dependencies - @norberttech
- #998 - group by uuid/datetime objects without casting them to scalar first - @norberttech
- #993 - Writing to partitioned datasets is no longer creating random file names, even append will create new files with suffixed name of the original file - @norberttech
- #991 - Schema became mutable object [BC Break] - @norberttech
- 239226 - Stop triggering workflows when only changelog was updated - @norberttech
- 3fc5e7 - README - memory consumption description improvements - @norberttech
- #985 - Update Homebrew TAP formula: flow-php to version: 0.6.1 - @norberttech
Fixed
- #1005 - Change the way of how dictionary page header is detected while reading column chunks - @norberttech
- #994 - build workflows - @norberttech
- #993 - updating file by ETL through overwrite save mode - @norberttech
- #993 - FilesystemStreams test suite - @norberttech
- #993 - even when writing to a partitioned dataset, flow will respect original filename given as destination path - @norberttech
- #989 - Fixed writing parquet to remote locations - @norberttech
Updated
- 000d90 - test-website.yml - @norberttech
Removed
- #994 - deprecated classes/methods - @norberttech
- #993 - DataFrame::threadSafe / DataFrame::appendSafe - @norberttech
Deprecated
- #991 - Schema::without - @norberttech
Contributors
Generated by Automation