Flux release notes
v0.195.1
- Internal code cleanup.
 
v0.195.0
Features
- Return to internal string references.
 - Allocate memory for string content.
 
Bug fixes
- Join paths correctly in the 
influxdbsource. - Optimize string arrays.
 
Dependency updates
- Update 
github.com/benbjohnson/immutable. - Update 
github.com/SAP/go-hdb. - Build on Rust 1.78.
 
v0.194.5
Bug fixes
- Resolve build error on Rust 1.72.0+.
 
v0.194.4
- Internal code cleanup.
 
v0.194.3
- Internal code cleanup.
 
v0.194.3
Bug fixes
- Make 
histogramQuantile()correctly handle cases of zero samples. 
v0.194.1
Bug fixes
- Make C foreign function interface (FFI) more robust when checking for valid input.
 
v0.194.0
Features
- Add microsecond and nanosecond support to
iox.sqlInterval(). 
Bug fixes
- Fix panic caused by chunking outer joins.
 - Remove 64bit reference counter misalignments.
 
v0.193.0
Features
- Add 
onNonmonotonicparameter tohistogramQuantile()to define behavior when bin counts are not monotonically increasing. - Add the following functions to the 
contrib/qxip/hashpackage: 
Bug fixes
- Convert platform-dependent path separators to slashes.
 use-after-freein optimized String array.
v0.192.0
Breaking changes
- Update iox.sql to detect midstream errors.
 
Features
- Add 
geo.totalDistance()to aggregate total distance of consecutive points. - Add 
iox.sqlInterval()to convert Flux durations to SQL interval strings. - Add the 
contrib/qxip/hashpackage which includes hashing functions. - Add the 
contrib/qxip/logqlpackage which provides functions for working with Grafana Loki and LogQL. - Add 
contrib/qxip/clickhousepackage which provides functions for querying data from Clickhouse. 
v0.191.0
Features
- Associate registry attributes to import statements.
 
v0.190.0
Features
- Add download headers within the CSV dialect.
 
v0.189.0
Features
- Add 
PartialOrdandOrdtoast::Position. - Detect undesirable patterns so we can remove them later.
 
Bug fixes
- Update attribute syntax to require following element.
 - Add 
salsaDatabaseto list of feature passed to Rust. testing.ShouldErrorshould error when no error occurs.- Restore termination defaults for 
holtWintersto improve performance. - Use salsa db when generating documentation.
 
v0.188.1
Bug fixes
- Correctly handle join operations with large input that exceed the buffer size.
 
v0.188.0
Features
- Compile the standard library incrementally.
 - Add attribute parsing to the parser.
 
Bug fixes
- Allow functions receiving dynamic arguments to do member expressions.
 
v0.187.0
Features
- Add 
types.isNumeric()to test for numeric values. - Recommend valid arguments in extra argument errors.
 - Add dynamic type support to standard type conversion functions.
 
Bug fixes
- When using 
experimental.unpivot(), don’t add the_fieldcolumn to the group key by default. - Fix compilation error when using Rust 1.64.
 
v0.186.0
Features
- Add 
dynamic.isType()function. - Add 
dynamic.asArray()function. - Add JSON functions that work with dynamic values:
 - Add runtime support for member expressions and remove index support for dynamic values.
 - Add 
iox.sql()function. 
Bug fixes
- Update the 
toUInt()test to use the correct conversion behavior. - Prevent the Flux formatter from losing precision on float values.
 
v0.185.0
Features
- Add dynamic type.
 - Add dynamic wrapper function.
 - Enable codespan formatting for errors via feature flags.
 
Bug fixes
- Pass context in the 
Runsource helper. - Handle null vector inputs for 
_vecFloat. - Remove broken 
contribpackages:- contrib/jsternberg/aggregate
 - contrib/jsternberg/math
 
 
v0.184.2
Bug fixes
- Remove the 
stackerdependency. - Skip strict null logical evaluator.
 
v0.184.1
- Internal code cleanup.
 
v0.184.0
Breaking changes
- Update logical null handling and align all logical operator implementations (vectorized, row-based, as well as “in the interpreter”) to be consistent and representative of the Flux SPEC.
 
Features
- Add array type conversion functions to the
experimental 
arraypackage. 
Bug fixes
- Update SPEC and fix some inconsistencies.
 - Update 
sort limitto skips chunks with no rows. - Don’t report an error about testcases in the LSP.
 - Prevent the metadata map from being concurrently mutated.
 - Don’t stackoverflow on deeply nested expressions.
 
v0.183.0
Features
- Add support for piped-forward arrays to 
array.from(). - Add parameter to 
experimental.unpivot()for non-field and non-group-key columns. - Add a syntax for describing label literals.
 - Don’t display nulls as 0 in the output of 
experimental.diff(). 
Bug fixes
- Fix duplicate definitions and update issue links in the Flux SPEC.
 - Don’t include opening parentheses in invalid call expressions.
 - Improve error message when joining with an empty table.
 
v0.182.0
Features
- Display yields in 
fluxtest. - Allow 
experimental.unpivot()to work when the_timecolumn is missing. - Add utility to the 
functionpackage to register a source or transformation. - Add Rust binary to sit on top of “headless” REPL backend.
 
Bug fixes
- Correct type for 
fillValueTime. - Correct panic in vectorized division by zero.
 - Correct inconsistent runtime typing for 
logicalVectorEvaluator. - Don’t treat errors in SQL syntax as internal.
 - Improve error handling when missing a property on member expressions.
 - Preserve values of non-string group keys in 
experimental.diff(). 
v0.181.0
Features
- Add “headless” JSON-RPC based REPL.
 - Support vectorized unary operators.
 - Add 
experimental/polylinepackage for downsampling data. - Update function library to have its own arguments struct.
 
Bug fixes
- Update import path for the 
Specpackage in the “headless” REPL. - Update conditional vectorization to handle bad values for 
test,consequent, oralternate. 
v0.180.1
- Internal code cleanup.
 
v0.180.0
Features
- Rewrite calls to 
float()as_vectorizedFloat(). - Reduce the Flux formatter default line length to 100 characters.
 
Bug fixes
- Fix logic bug in planner helper method.
 - Don’t include null columns when unpivoting.
 - Don’t error when formatting boolean literals.
 - Sort columns when printing group keys.
 
v0.179.0
Features
- Add a 
Stringifyutility function fortable.Chunk. - Add support for vectorized binary equality operations.
 - Update 
testing.diff()to useexperimental.diff()permanently. - Add vectorized 
float()builtin function. - Enhance 
fluxtestto use package name withtestandskipflags. - Allow any kind of AST fragment to be formatted.
 - Accept Flux feature flags to the test command.
 
Bug fixes
- Update 
testing.shouldError()to use regular expression matching instead of string matching. - Temporarily remove duplicates test to avoid conflicts downstream.
 - Update 
buildinfodocumnentation comments to match latestgo fmt. - Fix aggregate window rules that left query plans in a bad state.
 - Include filename when printing the AST location.
 
v0.178.0
Features
- Support 
apiKeyparameter inzenoss.event()andzenoss.endpoint(). - Remove 
vectorizedConstfeature flag. 
Bug fixes
- Deprecate 
date/boundariespackage in favor ofexperimental/date/boundaries. - Update pattern matching to specify successor counts.
 - Restore integer return value for 
pagerduty.sendEvent(). 
v0.177.1
Bug fixes
- Update 
strings.substring()to check bounds using rune array instead of string length. 
v0.177.0
Features
- Support conditional expressions in vectorized 
map(). - Compute minimum required dispatcher concurrency from the plan graph.
 - Add a query planner rule to remove redundant sort nodes.
 
Bug fixes
- Guard message processing with mutexes.
 - Update Flux REPL to use unique planner node IDs.
 
v0.176.0
Features
- Promote various feature-flagged features and optimizations to be used by default.
 
Bug fixes
- Support the 
locationoption in theboundariespackage. - Pass epsilon value from Go tests to the Flux test framework.
 - Ignore unknown messages rather than erroring.
 
v0.175.0
Features
- Update 
testing.diff()to useexperimental.diff()as its base. - Add a new diff implementation to the experimental package.
 - Generalize attributes in the query planner.
 - Add support for constants and literals in vectorized 
map(). - Optimize the Holt Winters implementation by using the gonum Nelder-Mead optimization.
 
Bug fixes
- When joining data, provide a default schema for unmatched group keys.
 - Update the join package to be resilient to schema changes.
 
v0.174.1
Bug fixes
- Update 
aggregateWindow()to correctly handle null values when usingsumormean. - Update 
to()andwideTo()to skip empty tag values. 
v0.174.0
Features
- Add coloring highlights to test outputs.
 - Promote 
experimental.to()toinfluxdata.influxdb.wideTo(). - Allow physical plan
attributesto contribute toformatterdetails. - Add tagging support to Flux tests.
 - Add new function 
experimental.catch(). - Add new function 
testing.shouldError(). 
Bug fixes
- Update 
httpWriterstruct to skip invalid floats. - Update 
join()to validate group keys. - Fix unit tests for 
covariance(). - Update all Flux packages to additionally live as Go packages.
 
v0.173.0
Breaking changes
- Format scripts with a trailing newline by default when running the formatter.
 
Features
- Deprecate 
experimental.http.get. - Deprecate 
experimental.csv.from(). - Promote the following functions from 
experimental.arrayinto thearraypackage: - Promote the following functions from 
experimental.http.requestsinto thehttp.requestspackage: - Promote 
experimental.bitwiseinto thebitwisepackage. - Remove all 
Teststatements. New statements are written withTestCase. - Format scripts with a trailing newline by default when running the formatter.
 
Bug fixes
- Return an error if the user modifies group key while using
join 
v0.172.0
Features
- Add multiple new join functions to the 
joinpackage such asjoin.full(). - Add 
initialZeroparameter to the derivative function. - Allow features to enable builtin statements.
 - Provide the comments for each 
SymbolfromPackageExports. - Suggestions now start off by default and added a new flag.
 - Add builtin function 
timeto thedatepackage to convert any timeable into datetime. - Allow vector types to be specified in Flux source.
 
Bug fixes
- Replace extra boolean parameter for suggestions with Flux REPL options.
 - Remove 
testing.load()fromtestutil.yield(). - Fix a bug in how sort nodes are created for a new join.
 - Removed extra indentation for test cases.
 - Retain the package for identifier referencing the prelude.
 - Only return an error in tests if an assertion fails.
 - Fix 
findColumn()to handle multi-buffer tables. - Point to the function being piped to on argument mismatches.
 - Visit successors before continuing DFS on node.
 
v0.171.0
Breaking changes
- Remove 
testing.loadStorage(). 
Features
- Add 
FromStrto allow the Flux LSP (language server protocol) CLI to run with optional Flux features. - Add method to parallelize aggregate transformations.
 - Report unused symbols.
 - Add 
Fromimplementations forNode/NodeMut. 
Bug fixes
- Pass a seed to the tables generator.
 - Ensure buffers are retained when copying a buffered table.
 - Return an error when using a label variable without the Label constraint.
 
v0.170.1
Bug fixes
- Require an earlier minimum version of 
lsp-types. 
v0.170.0
Features
- Add a 
pretty.rs-based MonoType formatter. 
Bug fixes
- Update vectorized 
map()to properly handle shadowed columns. 
v0.169.0
Features
- Add a 
_statustag to PagerDuty records. - Refactor the operator profile to be in the query statistics.
 
Bug fixes
- Ensure that constraints are checked and propagated fully.
 - Fix math for integral with a single value.
 - Add 
jsontags for the transport profiles in statistics. - Initialize 
Metadatain Flux statistics. - Return a more helpful error message when an HTTP response body exceeds 100MB.
 - Correct several issues found during the implementation of polymorphic labels.
 
v0.168.0
Features
- Enable 
movingAverage()andcumulativeSum()optimizations by default. - Vectorize logical operations in 
map(). - Add a planner rule that expands logical join nodes.
 - Added timezone support to 
hourSelection(). 
Bug fixes
- Attach type when constructing logical expressions.
 - Fix panic with half-diamond logical plan.
 
v0.167.0
Features
- Allow default types to be specified for default arguments.
 - Add 
date.scale()to allow for dynamic duration changes. - Expose aggregate window spec fields for use by the query planner.
 - Add 
experimental.preview(). 
Bug fixes
- Update 
date.add()anddate.sub()to work correctly with timezones enabled. - Fix failing continuous integration tests.
 - Update 
hourSelection()to support overnight time ranges. - Fix logic error in aggregate window planner rule preserve the rule if
table.fillis present. - Use 
MultiplicativeOperatorinMultiplicativeExpression. 
v0.166.0
Features
- Add InfluxData semantic commit and pull request title validator.
 - Add an 
Exprnode to the visitor API. - Add label polymorphism.
 - Vectorize remaining arithmetic operators.
 
Bug fixes
- Remove 
JoinOpSpec.TableNamesin favor ofJoinOpSpec.paramsto stay consistent insidetableFind(). - Fix 
SortLimitfor empty input group. 
v0.165.0
Features
- Add support for options in the 
testcaseextension. - Vectorize addition operations in 
map(). - Add location support to 
date.truncate(). - Accept string literals in properties of a record type.
 - Add trace option to the 
fluxCLI. - Add 
EquiJoinPredicateRule. 
Bug fixes
- Update 
map()test case to include a range. - Don’t set 
BaseLocation.filetoSome(""). - Fix 
strings.joinStrpanic when it receives a null value. - Remove 64bit misalignment.
 - Fix memory releases and add checked allocator to the end of tests.
 
v0.164.1
Bug fixes
- Remove an extraneous 
go generatestatement. 
v0.164.0
Features
- Allow Go to pass compilation options to Rust.
 
Bug fixes
- Do not assume integers are 64bit integers.
 - Update 
prometheus.scrapetype signature to correctly return a stream. 
v0.163.0
Features
- Report skipped tests.
 
Bug fixes
- Update transformation transport adapter to always invoke 
finish. - Add support for “soft paragraphs” (paragraphs that contain single newline characters) in inline Flux documentation.
 
v0.162.0
Features
- Add OpenTracing spans to the Flux runtime.
 - Add the 
cffifeature to reduce WASM binary size. - Replace the main 
fluxCLI with a newfluxCLI that starts a Flux REPL by default or executes a Flux script via stdin. - Track freed memory with 
SetFinalizer. - Move 
addDuration()andsubDuration()from theexperimentalpackage to thedatepackage. 
Bug fixes
- Improve error messages for column conflicts in pivot operations.
 - Create OpenTracing spans for transformations using the proper context.
 - Add errors to OpenTracing spans created for transformations.
 - Restore required features hidden behind the 
cffifeature. 
v0.161.0
Features
- Re-enable the dialer pool and update dependency injection.
 
Bug fixes
- Check length boundary for lower bound of 
strings.substring(). 
v0.160.0
Features
- Remove the 
concurrencyLimitfeature flag and keep it in the dependencies. - Add MQTT Docker integration test.
 - Enable dialer pool.
 - Add an IOx-specific unpivot function to the 
internalpackage. 
Bug fixes
- Update 
join()to properly handle divergent schemas. - Fix line endings in the 
testcaseformat to prevent unnecessarily nesting the body of a test case. - Make 
strings.substring()check bounds correctly. - Fix duration and integer literal scanning.
 - Make 
testcasea semantic check instead of an error. - Skip parallel merge when selecting the result name based on side effects.
 - Add metadata headers to inline documentation.
 
v0.159.0
Features
- Added a 
finishstate to parallel-merge and always protect with a mutex lock. 
Bug fixes
- Use a fork of the 
gosnowflakelibrary to prevent file transfers. - When encoding Flux types as JSON, encode dictionary types as JSON objects.
 - Upgrade Apache Arrow to v7.
 
v0.158.0
Features
- Add inline documentation to the 
universepackage. - Factor parallel execution into the concurrency quota calculation.
 
Bug fixes
- Add parallel merges with no successors to the results set.
 - Correctly use range in an updated 
map()test. 
v0.157.0
Features
- Update 
fill()to use narrow transformation. - Add an attribute-based instantiation of parallel execution nodes.
 - Expose the 
Record::fieldsiterator. - Allow the 
estimate_tdigestmethod inquantile()to process any numeric value. - Optimize 
aggregateWindow()for specific aggregate transformations. 
Bug fixes
- Update vectorized 
map()to handle missing columns. - Remove duplicate line in 
Makefile. - Fix 
cargo docbuild errors. - Reclassify CSV-decoding errors as user errors.
 - Update 
iox.from()andgenerate.from()to use proper stream annotation. 
v0.156.0
Features
- Add second pass to physical planner for parallelization rules.
 - Separate streams from arrays in the type system.
 - Add function to internal/debug to check feature flag values.
 - Allow feature flags to record metrics if configured.
 - Add extra verbose level to dump AST of test.
 - Explain what 
[A], [A:B]etc means in errors. 
Bug fixes
- Make 
buckets()function return a stream. - Remove unnecessary 
TableObjectguards. - Copy 
TagColumnsinto()that may get modified into the transformation. - Update tests to use explicit yields.
 
v0.155.1
Bug fixes
- Update tests to use an explicit yield.
 
v0.155.0
Features
- Add new experimental array functions for operating on arrays.
 
Bug fixes
- Add 
stopparameter to InfluxDB schema functions. - Remove 
os.Exitcalls and allowdefer executor.Closeto run. - Properly handle time zone transitions when there is no daylight savings time in the specified time zone.
 
v0.154.0
Features
- Add 
requests.peek()to return HTTP response data in a table. - Add 
display()to represent any value as a string. - Create a version of 
map()that is columnar and supports vectorization. - Support vectorized functions.
 
Bug fixes
- Add time vector to the 
valuespackage. - Set the correct type for vectorized functions.
 
v0.153.0
Features
- Connect language server protocol (LSP) features through the Flux crate.
 - Add conversion from 
flux.Boundstoplan/execute.Bounds. - Re-index all bound variables to start from 0.
 
Bug fixes
- Int feature flags work properly when returned as floats.
 
v0.152.0
Features
- Add the 
experimental/http/requestspackage to support generic HTTP requests. - Add 
experimental/ioxpackage and a placeholder for theiox.from()function. - Add dependency hooks to the dependency subsystem.
 - Remove unneeded feature flags.
 
Bug fixes
- Revert update to the dependencies package.
 - Return false if contains gets invalid value.
 
v0.151.1
Features
- Update to Rust 1.58.1.
 
v0.151.0
Features
- Expose 
MonoType::parameterandMonoType::field. 
Bug fixes
- Support writing unsigned integers with the 
httpprovider. 
v0.150.1
Bug fixes
- Remove duplicate 
diebuiltin in theuniversepackage. 
v0.150.0
Features
- Update inline documentation in the following packages:
- date
 - experimental
 - testing
 - timezone
 - types
 
 
Bug fixes
- Make iterating the hashmap deterministic.
 - Quote SQL identifiers to mitigate the risk of SQL injection.
 
v0.149.0
Features
- Add 
Getmethods tometadata. - Optimized 
sort |> limitoperations. - Add 
locationoption support to thedatepackage. - Use reference equality for 
Symbol. - Add inline documentation to the following packages:
- socket
 - sql
 - strings
 
 
Bug fixes
- Do not attempt IP validation for BigQuery data source names (DSNs).
 
v0.148.0
Features
- Report multiple errors from a single 
unifycall. - Update 
totransformation to use narrow transformation. - Provide specific error information on function calls.
 - Allow errors to be formatted via 
codespan. - Add an 
internal/debug.opaquefunction. - Provide which package exported a symbol.
 - Add timeable support to 
experimental.addDuration()andexperimental.subDuration(). - Add inline documentation to the following packages:
- interpolate
 - json
 - kafka
 - math
 - regexp
 - runtime
 - sampledata
 - slack
 - system
 - pagerduty
 - profiler
 - pushbullet
 
 
Bug fixes
- Classify IP validation failures as 
Invalid. - Relocate the mutex in the optimized union to avoid a data race.
 - Split the entire pipe chain into multiple lines (if necessary).
 
v0.147.0
Features
- Optimize 
union()transformation. - Optimize 
timeShift()transformation. - Add inline documentation to the following packages:
- experimental/prometheus
 - experimental/query
 - experimental/record
 - experimental/table
 - experimental/usage
 
 
Bug fixes
- Add mutex to the optimized 
uniontransformation. - Ensure arrays are not table streams before calling 
Len(). - Disable flakey 
geo.filterRowstests. 
v0.146.0
Features
- Update 
pkg-configto supportaarch64-apple-darwin. - Add inline documentation to the following packages:
- experimental/geo
 - experimental/http
 - experimental/influxdb
 - experimental/json
 - experimental/mqtt
 - experimental/oee
 
 
Bug fixes
- Update the default 
epsilonparameter fortesting.diffto0.000001. - Fix unsigned integer conversion tests to correctly use an defined conversion.
 
v0.145.0
Features
- Add inline documentation to the following packages:
- experimental/aggregate
 - experimental/array
 - experimental/bigtable
 - experimental/bitwise
 - experimental/csv
 
 
Bug fixes
- Return an error from join operations if a column is not found in the schema.
 
v0.144.0
Features
- Add location and message methods to 
semantic::Error. - Return multiple errors from conversions.
 - Add a vectorized field to semantic graph, 
FunctionExpr. 
Bug fixes
- Set 
GOPATHinDockerfile_build. 
v0.143.1
Bug fixes
- Add targets to 
rust-toolchain. 
v0.143.0
Breaking changes
- Add new parameters to 
difference()to ensureincrease()returns more accurate results on counter reset. 
Features
- Don’t introduce constraints for default arguments.
 - Make error messages more consistent.
 - Use new versions of 
sort()andderivative()by default. - Add inline documentation to the following packages:
- contrib/anaisdg/anomalydetection
 - contrib/anaisdg/statsmodels
 - contrib/bonitoo-io/victorops
 - contrib/bonitoo-io/zenoss
 - contrib/jsternberg/influxdb
 - contrib/rhajek/bigpanda
 - contrib/sranka/telegram
 - experimental
 
 
Bug fixes
- Validate examples in inline documentation as part of CI linting process.
 - Correctly handle trailing dollar signs in string expression.
 - Improve 
fluxdocerror messages. - Fix panic when 
length()is given a stream of tables. - Fix panic when 
json.encode()is given a stream of tables. 
v0.142.0
Features
- Default to erroring dependencies
 
Bug fixes
- Fix Queryd panic when using the 
experimental/geopackage. 
v0.141.0
Features
- Add 
is_typeto query the runtime type. - Add ability to read options from the 
Context. - Ignore documentation for values prefixed with an underscore (
_). - Add inline documentation to the following packages:
- contrib/RohanSreerama5/naiveBayesClassifier
 - contrib/bonitoo-io/alerta
 - contrib/bonitoo-io/hex
 - contrib/bonitoo-io/servicenow
 - contrib/bonitoo-io/tickscript
 - contrib/chobbs/discord
 - contrib/jsternberg/rows/
 - contrib/sranka/opsgenie
 - contrib/sranka/sensu/
 - contrib/sranka/teams
 - contrib/sranka/webexteams
 - contrib/tomhollingworth/events
 - generate
 - http
 - influxdata/influxdb
 - influxdata/influxdb/monitor
 - influxdata/influxdb/sample
 - influxdata/influxdb/schema
 - influxdata/influxdb/secrets
 - influxdata/influxdb/tasks
 - influxdata/influxdb/v1
 
 
Bug fixes
- Propagate the element type through array constructors.
 - Catch unsupported input types in aggregate transformations.
 - Support pipe parameters (
<-) influxdoc. - Fix documentation errors when running 
cargo doc. - Reduce the amount of extra parse errors.
 
v0.140.0
Features
- Support reporting unlimited diagnostics.
 - Support type inference running on invalid ASTs.
 - Add erroring versions for each dependency.
 - Report multiple errors from type inference.
 - Add 
fluxdocformatting documentation. - Add inline documentation to the following packages:
- array
 - csv
 - dict
 
 
Bug fixes
- Handle errors when executing inline examples.
 - Convert fixed array to slice.
 - Compare sorted join keys.
 - Make multiline-formatting consistent.
 - Fix invalid syntax formatting.
 - Improve error checking for null and invalid types.
 
v0.139.0
Features
- Continue type inference through errors at runtime.
 
Bug fixes
- Revert 
runtime.now()and related updates. 
v0.138.0
Features
- Create a BigTable dependency to let Flux mimic or control BigTable API usage.
 - Report multiple type inference errors.
 - Add bitwise operations.
 
Bug fixes
- Update 
fill()to return tables unchanged when usingusePreviousto fill a non-existent column. - Add 
runtime.now()to return the same time throughout a script execution. 
v0.137.0
Features
- Add support for Vertica to the 
sqlpackage. 
Bug fixes
- Correctly handle HTTP errors from the InfluxDB writer.
 
v0.136.0
Features
- Enable executable examples to documentation generated by 
fluxdoc. - Enforces IP validation and timeouts when using 
mqtt. - Add an alternate 
fluxCLI that starts the REPL if no argument is given. - Update lint formatting.
 - Add 
contrib/bonitoo-io/servicenowpackage and support for ServiceNow events. - Add 
componentandcustomDetailsparameters topagerduty.sendEvent(). - Update the 
fluxdocparser to capture more data. - Create a formatter for semantic graph.
 
Bug fixes
- Add 
contrib/bonitoo-io/servicenowto the list offluxdocexceptions. - Disable write retries for the InfluxDB 
httpprovider. 
v0.135.1
Features
- Add a disposable interface for transformations.
 
Bug fixes
- Improve error message when regrouping is required in 
map(). 
v0.134.0
Features
- Add short mode to 
fluxdoc dumpcommand. - Add Analyzer API to 
libflux. - Add 
timezonepackage with fixed offset location. - Add 
record.get()function to dynamically retrieve record properties. - Embed the compiled standard library instead of compiling at runtime.
 
Bug fixes
- Create new annotations when group key columns change.
 - Update 
prometheus.histogramQuantile()to support multiple histograms and metric format versions. 
v0.133.0
Features
- Expose location functionality to 
window(),aggregateWindow(), andexperimental.window(). - Add location functionality to the 
intervalpackage. - Add methods to convert time values to and from local clock time.
 - Add 
mqtt.publish()function. - Add 
retainparameter tomqtt.to. 
Bug fixes
- Add 
range()beforewindow()to set query time bounds in tests. - Use a new 
Fresherinstance for each package. 
v0.132.0
Features
- Copy location-related code from the Go 
timepackage. - Create a 
Vectormonotype. - Refactor and optimize 
derivative()transformation. - Add new InfluxDB sample datasets
and 
sample.alignToNow(). - Allow query concurrency to be set to the number of nodes in the graph.
 
Bug fixes
- Update null check with clear error message.
 - Report errors from function parameters.
 - Propagate all inferred properties to a function argument.
 - Fix 
Staticchecklinter inexecutetest. - Reformat non-formatted Flux files.
 - Make builds reproducible by ordering package members in the 
docpackage. - Prevent the optimized 
derivative()from attempt to replicate a non-existent bug. - Update 
events.duration()to properly handle multiple buffers. 
v0.131.0
Features
- Update 
groupto use newGroupTransformationinterface. - Add 
experimental/recordpackage. - Embed compiled Flux standard library instead of compiling at runtime.
 - Add 
contrib/bonitoo-io/hexpackage to work with hexadecimal string values. 
Bug fixes
- Disallow setting 
allowAllFilesparameter in MySQL DSNs. - Downgrade Snowflake version.
 - Add null support to optimized 
repeatfunction. 
v0.130.0
Features
- Add narrow state transformation transport.
 
v0.129.0
Features
- Make 
flux-dump-docsuse a nested documentation structure. 
Bug fixes
- Add 
booleanpackage to prelude. - Delete obsolete Go formatter code.
 - Fix 
unknown typepanic when usingdifference(). 
v0.128.0
Features
- Add 
sampledatapackage with basic sample datasets. - Add 
GroupTransformationtransport. 
v0.127.3
Bug fixes
- Add 
FormatDurationmethod that can be exported in other repositories. 
v0.127.2
Bug fixes
- Remove 
flux wasmcrate and moved it tolsp. - Delete obsolete packages.
 - Add 
_timeto status sorting. - Fix panic with 
unknown type invalidinreduce()function. 
v0.127.1
Bug fixes
limit()correctly resets the offset after processing a partial buffer.
v0.127.0
Features
- Create an executable to retrieve all 
stdlibdocumentation and updated WASM functions. - Implement 
transportin aggregate transformations. - Add documentation site links and fix 
flux_typesissue. 
Bug fixes
fill()function fails when the specified fill column doesn’t exist.- Add 
linkparameter to function structs. 
v0.126.0
Features
- Update 
filter()to use narrow transformation. 
Bug fixes
- Return JSON for WASM.
 - Check both dynamic types and static values in 
stringspackage. - Check both dynamic types and static values in 
regexppackage. - Change 
dieerror code to invalid. 
v0.125.0
Features
- Add feature flag library as an internal package.
 - Add narrow transformation transport.
 - Add transport-aware dataset.
 - Simplify the transport interface and add a transformation adapter.
 - Add 
contrib/sranka/webexteamspackage. - Add optimized repeat function for arrow arrays.
 - Add two additional internal message types.
 
Bug fixes
- Update transformation adapter to return an error when receiving a flush key for a table that is not present.
 - Fix pivot operations when no data is left to operate on.
 - Update 
join()to produce columns of equivalent length when combining mismatched schemas. 
v0.124.0
Features
- Update the string array builder to support constant data.
 - Expand message interface with message lifetime controls.
 - Create internal Flux array package.
 
Bug fixes
- Register 
sortedPivotand updatesortedPivotkind. - Derive 
Copyonast::Position. - Update 
to()function to properly close the writer on error. - Update 
libfluxinclude paths to usepkg-config. - Properly copy record types with no 
extendsparameter. 
v0.123.0
Breaking changes
- Remove the 
sleep()function. 
Features
- Optimize 
pivot()transformation. - Add InfluxDB sample data package.
 - Use 
table.fill()whenaggregateWindow(createEmpty: true)is used. 
v0.122.0
Features
- Add 
--skipflag to theflux testcommand to skip specific tests. 
v0.121.0
Features
- Update 
experimental.to()to use the Fluxinfluxdbprovider. 
v0.120.1
- Add inline Flux function documentation.
 
v0.120.0
Features
- Bootstrap documentation methods.
 
Bug fixes
- Reverse 
math.atan2()parameters. - Fix documentation headers in 
stdlib. - Distinct 
testcaseshould not usetesting.load(). movingAverage()creates columns with the same length whennis the size of the input.- Allow work queue to be resized when work exceeds queue length.
 distinct()appends null values without creating invalid tables.
v0.119.1
- Add inline Flux function documentation.
 
v0.118.1
- Internal code cleanup.
 
v0.118.0
Features
- Add 
excludeparameter topagerduty.dedupKey(). 
Bug fixes
- Ensure PagerDuty tests include a 
_valuecolumn. - Add length check to CSV annotation parsing.
 - Change 
FunctionLiteralprecedence to preserve parentheses. 
v0.117.3
- Internal code cleanup.
 
v0.117.2
Bug fixes
- Remove 
tabstopprocessing from formatter. - Support dividing IEEE float values by zero.
 - Fix multiline collapse when formatting function parameters.
 - Reclassify 
map typeerror asusererror. - Fix acceptance tests to catch different timestamps.
 
v0.117.1
Bug fixes
- Update 
group_no_agg_tableacceptance test to run in a consistent order. - Remove 
xcc.shrelease dependency. - Fix 
staticchecklinter failures. - Replace erroneous line deletions.
 
v0.117.0
Features
to()function writes to a remote InfluxDB instance.
Bug fixes
- Fix unexpected behavior caused by going over the Go/Rust boundary multiple times using JSON serialization.
 - Update 
Assert_eq!output. - Update 
comrakdependency. - Set 
CARGO_HOMEafter removing privileges. - Log uneven columns found when processing tables.
 - Audit and clean up the Docker build image.
 - Switch default InfluxDB port from 
9999to8086. - Add tests for window offset behavior.
 - Update formatting for conditional expressions.
 - Fix string interpolation for basic types.
 
v0.116.0
Features
- Add Jaeger tracing information to profile metadata.
 - Add 
flux fmtstep to the continuous integration pipeline. - Update the 
windowimplementation to useinterval.Window. - Add 
today()function. 
Bug fixes
- Remove deadlock when an error occurs while the dispatcher is stopping.
 - Prevent errors caused by the the auto-formatter removing brackets around 
ifexpressions. - Auto-format remaining Flux files.
 
v0.115.0
Features
- Add Alerta notifications support.
 - Add 
table.fill()function to fill empty tables with a single row. - Add string formatting to 
dicttype. 
Bug fixes
- Refactor semantic printing of types.
 - Do not remove escape characters when auto-formatting.
 - Add 
0.0.0.0to URL validator. - Add new display API for values.
 - Auto-format Flux files in 
stdlib/testing. 
v0.114.1
Bug fixes
- Upgrade 
mssqldbdependency for Go 1.16. - Format Flux files in 
stdlib. 
v0.114.0
Features
- Add 
debug.slurp()anddebug.sink(). - Add 
experimental/influxdbandexperimental/usagepackages. - Add 
fmtsubcommand to thefluxCLI to apply formatting to Flux files. 
Bug fixes
- Format Flux files in 
stdlibandstdlib/testing. - Update the macOS SDK for Go 1.16.
 - Revert check for uneven columns.
 - Wait for the dispatcher to finish before finishing query.
 - Remove 
codecovjob. 
v0.113.0
Features
- Add ported table test.
 - Create 
astutilpackage for AST utilities such as formatting. 
Bug fixes
- Update expected output for acceptance test 
group_no_agg_table. 
v0.112.1
Bug fixes
- Add 
Commentfields to Go AST structs to preserve comments in the AST. 
v0.112.0
Features
- Add 
testing.loadfor using raw tables in tests. - Add remaining experimental built-in types without column parameters.
 - Add OEE (overall equipment effectiveness) package.
 
Bug fixes
- Use new crate name in 
buildinfo. - Add bounded time ranges to fix test cases.
 - Move 
derivehelper attribute afterderivemacro. 
v0.111.0
Features
- Use 
FnvHasherfor hash maps. - Add 
tickscriptpackage. 
Bug fixes
- When finding the parent directory’s root, skip the current directory.
 - Fix 
if elsestatement inaggregate.window(). 
v0.109.1
Bug fixes
- Perform testing checks as part of query 
done. - Delimited multi-result encoder properly releases results before checking for errors.
 
v0.109.0
Features
- Add support for null values in string interpolation.
 - Add support for all basic datatypes in string interpolation.
 - Add support for parsing CSV files without annotations.
 - Support formatting the AST from 
libflux. 
Bug fixes
- Add error handling for wrong number of fields for raw CSV.
 - Change Rust version to be updated manually.
 
v0.108.1
- Internal code cleanup.
 
v0.108.0
Features
- Add BigPanda notification support.
 - Add Zenoss notifications support.
 - Add VictorOps notifications support.
 
Bug fixes
- Classify “Option not found error” as internal.
 - Remove 
as_userparameter fromslack.messagepayload. 
v0.107.0
Features
- Add new 
experimental.kaufmansAMA()function signature. - Add new experimental aggregate function signatures.
 - Add 
extendscapability totestcaseblock to extend tests using a relative path to another file. 
Bug fixes
- Update CSV package to handle large files.
 - Add tests and fix the 
NoHeaderconfiguration for thecsvdecoder. - Remove 
intervalpackage and documentation. - Disable line wrap linter.
 - Fix typo in comment.
 
v0.106.0
Features
- Add new experimental 
integral()function signature. - Add new experimental 
window()function signature. 
Bug fixes
- Switch from 
HashMaptoBTreeMapin the conversion functions from AST to semantic. - Track and reduce memory used by 
tdigest. - Detect and break infinite loops while parsing arrays.
 
v0.105.0
Features
- Add 
intervalpackage towindowtransformation. 
v0.104.0
Features
- Reintroduce 
IsZeromethod on time windows. 
Bug fixes
- Break parse loop when invalid array item is found.
 
v0.103.0
Features
- Add 
testing/expectpackage for test expectations. 
Bug fixes
- Change the default test discovery path from 
./stdlibto.. 
v0.102.0
Features
- Add 
fluxdoccommand to generate JSON and HTML from Flux source code. - Improve performance of random access group lookup by utilizing 
xxhash. - Improve performance for accessing data within a 
Value. 
Bug fixes
- Clean up 
intervalpackage. 
v0.101.0
Features
- Validate IP addresses from the dialer 
Controlfunction. - Expose 
testcommand to be used by external libraries. 
v0.100.0
Features
- Add ability to execute tests from 
.tarand.ziparchives. 
Bug fixes
- Fix endpoint examples in source code.
 
v0.99.0
Features
- Evaluate dictionary literals.
 - Infer the type of dictionary literals.
 - Parse and format dictionary literals.
 - Add a pure Flux test runner.
 
Bug fixes
- Ensure 
csv.from()only returns one result. - Change 
externparsing code to return a more descriptive error message. - Do not allow containers within a record to be null.
 - Retrieve 
nowoption before running a Flux script. - Fix misspellings in the Flux README.
 
v0.98.0
Features
- Transform 
testcaseAST into pure flux. - Added Rust scanner.
 
Bug fixes
- Substring method now works on more indices.
 - Fix typos in 
Dockerfile_build. 
v0.97.0
Features
- Add dict package for interacting with dictionaries.
 - Added Ragel 7 to the Dockerfiles.
 - Add support for 
testcasestatement. - Add Dictionary type syntax.
 - Add Dictionary type unification rule.
 
v0.96.0
Features
- Create a Dictionary type interface and implementation.
 - Add Dictionary type (dict) to the semantic flatbuffers.
 
v0.95.0
Features
- Use 
tabwriterto vertically align tab stops. 
Bug fixes
- Format types in error messages according to Flux grammar.
 
v0.94.0
Features
- Add “everything” Rust benchmark.
 
Bug fixes
- Add multiline support to the Flux formatter.
 - Format types using letters instead of numbers.
 
v0.93.0
Features
- Ensure query plan nodes have unique IDs.
 
v0.92.0
Features
- Add 
fluxinitpackage as an alternative to importingbuiltin. - Add series 
cardinality()function to InfluxDB package. 
Bug fixes
- Do not panic when the value column for 
pivot()does not exist. - Properly truncate timestamps to beginning of window bounds.
 - Updates operator precedence in formatter.
 - Do not panic when a string expression evaluates to null.
 - Add support for multiline conditional logic.
 
v0.91.0
Features
- Aggregate results for 
operatorprofiler. - Add contributed 
eventspackage. - Use 
tableFindand related functions with profiler results. - Add duration support to 
orTimeparameter oflastSuccess(). 
Bug fixes
- Configure the profiler even if 
operatorprofiler is not enabled. - Update formatter to handle newline characters in 
write_string. - Make formatter use spaces instead of tabs.
 - Update formatter double spacing rules.
 - Add support for multiline type expressions.
 - Update 
influxdata/influxdb/taskspackage with new location ofexecutedependencies. - Improve multiline and parentheses support in formatter.
 
v0.90.0
Features
- Add Sensu package.
 
Bug fixes
- Verify dependencies in 
Dockerfile_build. - Fix panic in 
experimental.join. 
v0.89.0
Features
- Add support for SAP HANA databases.
 - Add support for comments preceding 
builtinstatements in code formatting. 
v0.88.0
Features
- Move functions from 
v1package toschemapackage. 
Bug fixes
- Fix field type error in test.
 - Update buildinfo script to handle new and deleted files.
 - Sets default quantile method when not specified.
 - Improve security of Dockerfile for build scripts.
 
v0.87.1
Bug fixes
- Fetch ragel dependency over HTTPS.
 - Ensure 
ast.TextPartis properly escaped when formatting. - Elapsed with multiple buffers per table.
 
v0.87.0
Features
- Linear interpolation.
 - Type signature for linear interpolate function.
 
Bug fixes
- Fix compiler type inference with extended records.
 - Colm Flux grammar updates: keywords, string interpolation, and UTF-8 IDs.
 - Exponent operator have higher precedence.
 
v0.86.0
Features
- Add operator profiler.
 - Add duration conversion.
 - Add naive bayes classification.
 
Bug fixes
- Reset pointer after scanning invalid Unicode.
 - Catch references to non-existent columns.
 - Propagate span context to 
source.Run. 
v0.85.0
Features
- Add 
Aggregate.windowfor an alternative windowing aggregate. 
Bug fixes
- Remove months parameter.
 
v0.84.0
Breaking changes
- Remove time-column parameters from 
range()function and update type signature. 
Features
- Add Opsgenie package.
 - Implement 
lastSuccess()in thetaskspackage. - Support duration values in 
aggregateWindow. - Update Apache Arrow to 1.0.1.
 
Bug fixes
- Ensure meta columns are never part of group key.
 
v0.83.1
Bug fixes
- Single value integral interpolation.
 
v0.83.0
Features
- Improve window errors.
 - Add BigQuery support to
sqlpackage. - Add 
TypeExpressiontoBuiltinStmtand fix tests. - Add time-weighted average (
timeWeightedAvg()function). - Update 
integral()with linear interpolation. - Make experimental tracing an attribute of the context.
 
Bug fixes
- Update builtin statement for 
integral(). - Add Rust JSON tests.
 - CSV no longer deadlocks when next transformation does not consume table.
 
v0.82.2
Features
- Add 
tasks.lastSuccessfunction to retrieve the time of the last successful run of an InfluxDB task. 
v0.82.1
- Internal code cleanup.
 
v0.82.0
Features
- Add the 
profilerpackage. - Add a documentation URL field to Flux errors.
 - Check InfluxDB schema compatibility.
 
Bug fixes
- Panic when a map object property contains an invalid type.
 
v0.81.0
Features
- Delete old parser.
 - Add function to indicate duplicate option assignments.
 
Bug fixes
- Calculate distinct key values.
 - Handle pipe arguments inside of compiler.
 
v0.80.0
Features
- Add 
nullsparameter togen.tables(). 
Bug fixes
- Revert the timeable constraint for integer.
 - Make socket/sql URL test robust.
 
v0.79.0
Features
- Add 
array.from()function to convert Flux values into a table. 
Bug fixes
- Add bounds to Geo package end-to-end tests.
 
v0.78.0
Breaking changes
- Removed 
correlationKeyparameter fromgeo.toRowsandgeo.shapeData. 
Features
- Add functions to convert semantic monotype to AST type.
 - Add BigQuery support.
 - Rust flatbuffer serialization for 
MonoTypeandTypeExpression. - Extend with Geo package with GIS functions and unit support.
 
Bug fixes
- String interpolation in arrays.
 
v0.77.1
Bug fixes
- Write tests and fix issues with 
rows.map. 
v0.77.0
Features
- Add a faster 
map()function (user-contributed/contrib/jsternberg/rowspackage). - Add an 
influxdb.select()function (user-contributed). - Flatbuffer deserialization for type expression AST nodes.
 - Flatbuffer types for monotype and type expression AST nodes.
 - Go AST nodes for type expression syntax.
 - Get all options and properties.
 - Add 
parse_functioninparser/mod.rs. - Add an alternative aggregate package to user-contributed packages.
 
Bug fixes
- Fix string interpolation in arrays.
 
v0.76.1
Bug fixes
- Fix data race in metadata.
 
v0.76.0
Features
- Add query plan to query metadata.
 
v0.75.0
Features
- Update 
parse_recordto returnMonoTypefor consistent results from functions used byparse_monotype. - Internal command utility for comparing CSV tables.
 - Update 
mod.rswithparse_record. - Add planner tests for window min and max.
 - CRUD options and properties.
 - Update 
mod.rswithparse_constraints. - Update 
mod.rswithArrayTypeand addArrayto theMonotypeenumeration. 
Bug fixes
- Statuses are always sorted by source timestamp.
 - Multiple 
docalls will fail with an empty table. 
v0.74.0
Features
- Add 
discord.endpoint()function. - Enhance the static table API.
 - Update 
mod.rswithparse_type_expressionand other supporting functions. - Expose static table package and table diff functions.
 Find_var_type()API.- Add 
stringifymethod for a table and a diff utility. - Added range to end-to-end tests.
 - Add types grammar to SPEC.
 
Bug fixes
- Normalize Monotype.
 
v0.73.0
Features
- Add parameter for applying substitution to top-level environment.
 - Add MergeFilterRule to 
universe.filter 
Bug fixes
- Use query strings instead of AST for remote InfluxDB queries. This lets you query remote InfluxDB instances in the Flux REPL.
 
v0.72.1
Bug fixes
- Correctly classify “duplicate yield” error.
 
v0.72.0
Features
- Update 
from()to useTimeable. 
Bug fixes
- Fix appending an array of booleans with null values.
 - Pass the context to the planner when using the table object compiler.
 - Add 
diffoutput to release script on error. - Appending empty tables to a buffered builder normalizes the schema.
 - Remove 
bad_sqlite_path1test. - Classify spec build errors as user errors.
 - Verify index expression bounds in evaluation.
 - Substitute array element types correctly.
 
v0.71.1
Bug fixes
- Add a check to ensure 
everyis non-negative. 
v0.71.0
Features
- Apply 
Timeableconstraint to integer type to support integer values in time-related function parameters. - Implement schema mutation functions without performing any copies.
 - Add 
http.pathEscape()function. 
v0.70.0
Features
- Update all 
datefunctions to accept time and duration types. - Add Microsoft Teams package.
 - Evaluate and store 
nowin execution dependencies fortableFind(). - Add 
Timeableconstraint for time and duration types. - Add SQL Server support to 
sqlpackage. - Add Telegram package.
 - Add Amazon Athena support to 
sqlpackage. - Add support for macOS builds.
 
Bug fixes
- Move semantic analysis to the finalize step.
 - Fix check for stream equality.
 - Fix the compiler’s return type when 
withoperator is used. - Include 
stdlibFlux dependencies from the Fluxbuild.rs. - Include a hash of the sources for 
libflux. - Flux test for experimental 
json.parse(). - Reorder 
go generatecall tolibfluxinstdlib. 
v0.69.2
Bug fixes
- Include a hash of sources for 
libflux. 
v0.69.1
Bug fixes
- Fix experimental 
json.parse()test. 
v0.69.0
Features
- Add Discord package (contributed by @chobbs).
 - Add 
json.parse()function. 
Bug fixes
- Adjust error handling in Flux 
datepackage. 
v0.68.0
This version of Flux introduces an updated type inference system that improves performance, error messaging, and usability of the Flux Language Server Protocol (LSP).
Breaking Changes
- Change signature of 
group()function. 
Features
- Add 
fieldKeys()andmeasurementFieldKeys()to v1 package. - Add a context to 
plantest.RuleTestCase. - Add Snowflake support to SQL package.
 - Add 
experimental.chain()function. - Add semantic nodes for bad statement and bad expression.
 - Add 
findColumn()andfindRecord()functions. - Return 
falseifcontains()is called with an empty set. - Various performance optimizations.
 - Add a dynamically linked Valgrind test.
 - Add location information to type error messages.
 - Add all Linux cross-compilation tools to release Docker image.
 - Support remote 
buckets()andv1.databases()calls. - Add support for static linking.
 - Add 
influxdbsource. - Add support for 
pkg-config. - Transform semantic nodes back to AST nodes.
 - Handle multi-file packages.
 - Make 
Eval()andEvalAST()use libflux for parsing and analysis. - Add 
lookuptypefunction for stdlib builtins. 
Bug Fixes
- Re-enable Clippy linter rule match single binding.
 - Fix bug in object equal method.
 - Add builtin formatting.
 - Implement 
TimeBoundsforinfluxdb.fromRemote. - Inject the URL validator into 
NewDefaultClient. - Fix race condition in the 
filter()function. - Validate HTTP redirects against private IPs.
 - Hide DNS information in HTTP.
 - Fix concurrent map write in 
filter()transformation. - Copy all fields of 
WindowProcedureSpecinCopy(). - Run 
go generateon libflux whengo generateis run on stdlib. - Fix panic when 
map()overwrites group column. - Support execution contexts in the REPL.
 - Apply substitution fully when compiling lambda.
 - Planner rewrite rules take a context.
 - Fix panics when functions operate on null values.
 - Fix logic for merging packages with no package clause.
 - Compute function’s return type after substitution.
 - Resolve member expressions.
 - Improve error message descriptions.
 - Check types of parts when evaluating 
StringExpression. - Bind appropriate interpreter when evaluating functions.
 - Tweak Rust JSON serialization and add tests.
 - Pivot sends update watermark and processing time exactly once.
 - Calculate diff’s watermark using both predecessors.
 - Add length check to avoid allocs checking for JSON 
null. - Make compilers robust to 
nullkeyword inexternfield. - Address issues in 
RemoveTrivialFilterRule. - Bind appropriate interpreter when evaluating functions.
 - Convert 
HashMapin semantic package toBTreeMap. - Use static linking when creating the Valgrind test.
 - Update 
flatbuffersdependency. - Fix JSON serialization of Rust AST.
 - Remove unused environment variables.
 - Make 
merge_packagesallow no package clauses. - Do not call 
CheckKindwhen evaluating logical expressions. - Force the Go libflux wrapper to rebuild using 
go generate. - Adjust 
test-benchconfig for Circle CI. - Fix Valgrind test code.
 - Let Rust parser parse with file name.
 - Remove Algorithm-W to-do list.
 JoinStrreturns a string, not an empty record.- Only add visible properties to output of 
map(). - Serialize the correct sign duration literal.
 - Remove code in semantic package that depends on Rust/Cgo code.
 - Remove 
componentfield from API. - Remove unused notification rule fields from Slack and PagerDuty APIs.
 - Array builders accept array types as input.
 - Enable 
map()tests with null values. - Remove tests for marshalling semantic graph.
 - Run 
make generateto generate stdlib. - Fix type error in benchmark test.
 - Update 
TableObjecttest. - Do not call 
LocalRangeon nil scope. - Type assertion error in 
length()tests. - Update type inference test case with test for 
union(). - Make non-test CI steps pass.
 - Fix semantic check for option reassignment.
 - Type inference tests for binary comparison operators.
 - Fix typo in builtins.
 - Update 
holtWinters()to makeseasonalityoptional. - Fix type errors in tests.
 - Remove default value from notify data.
 - Allow options to be set in scope.
 - Replace 
ScopeComparerwithScopeTransformer. - Use 
LocalRangein compile tests. - Add missing parameter to type of 
to(). - Get 
TableObjecttest case to compile. - Fix typo in test case.
 - Update 
TableObjectsto typeArray. - Use array type method correctly.
 - Update schema mutators.
 - Return proper types for type conversion functions.
 - Enable complete package to compile and pass tests.
 - Make stdlib compile.
 - Expect monotypes for function values.
 - Require successful lookup of stdlib builtins or panic.
 - Optimize lookup function using hashmap.
 - Include function type when deserializing function expressions.
 
v0.67.0
Features
- Planner Pattern interface supplies a set of ProcedureKind as root.
 - Initial prototype of a table-based Flux.
 - Evaluate and store “now” in execution dependencies for 
tableFind()to use. - Static analysis tool for listing entry points to Flux.
 - Pass context to rewrite rules in the planner.
 
Bug fixes
- Pivot sends update watermark and processing time exactly once.
 system.time()checks context for override.- Add bounds to alignTime tests.
 
v0.66.1
Bug fixes
- Add bounds to 
alignTime()tests. 
v0.66.0
Features
- Add 
epsilonparameter totesting.diff(). - Add 
experimental.alignTime()function. - Add random access group lookup.
 - Add Pushbullet package.
 - Add a helper for testing 
execute.Source. 
Bug fixes
- Use RandomAccessGroupLookup in 
testing.diff(). - Address deleted state 
GroupLookup. - Add test case for errors when AST is bad.
 - Reduce memory usage during CI testing.
 
v0.65.0
Features
- Add 
experimental.join()function. - Store comments in the AST and preserve on format.
 - Add 
shapeData()function to Geo package. - Expose format to Wasm users.
 
Bug fixes
- Reimplement 
stateChanges()function. - Remove the 
set -xin the xcc script. - Publishes Flux as a public npm package.
 - Pivot message passing.
 
v0.64.0
Features
- Hand-transpile 
elapsed()aggregate. - Hand-transpile 
cumulative_sum(). - Experimental 
csvpackage. 
Bug fixes
- Add response reader as dependency to tune response size.
 - Handle unfinished option statement without panic.
 - Simplify libflux C API and resolve memory leaks.
 - Don’t construct a 
compiler.compilerScopewith a nilvalue.Scopeas base. - Influxql-decode to handle the case without tag set.
 
v0.63.0
Features
- Experimental 
geopackage. - Initial grammar for Flux and a partial grammar for InfluxQL.
 
v0.62.0
Features
- InfluxQL decode and series aggregation tests.
 
Bug fixes
- Properly categorize parse errors as “invalid”.
 - Fail gracefully when 
tableFinddoes not have an execution context. 
v0.61.0
Features
- Add experimental aggregate package with 
rate()function. 
Bug fixes
- Deserialize the default vector if array elements are null.
 - Allow array and row types to be equatable.
 
v0.60.0
Features
- Add experimental 
querypackage. - Create a Docker environment for Flux releases.
 - Validate there are no free type variables in prelude/stdlib build.
 - Add formatter library.
 
Bug fixes
derivative()works properly across multiple buffers.- Fix free type variable found in 
tripleExponentialDerivative(). - Update type of 
window()function. - Freshen row types using deterministic property order.
 - Libflux JSON deserialization uses type properly.
 - Expose the builtin polytypes when analyzing a 
stdlibpackage. - Deserialize call expressions when arguments are missing.
 - Handled malformed data as well as EOF.
 - Allow unsigned integers to be subtractable.
 - Link both 
libfluxandliblibstdfor flux-config. - Link 
libstdinto thelibdirectory instead oflibflux. - Flux-config correctly copies 
stdlibwhen using a module. - Add 169.254/16 range to URL validator.
 - Update 
uuidlibrary to improve security. - Handle invalid string literals.
 - Remove ’tags’ line from local tags.
 
v0.59.6
Bug fixes
derivative()works properly across multiple buffers.
v0.59.5
Bug fixes
- Revert window optimizations to fix regression in output row sorting.
 
v0.59.4
Bug fixes
- Remove 
tagsline from local tags. - Handle malformed data as well as EOF.
 
v0.59.3
Bug fixes
- Link both 
libfluxandlibstdfor flux-config. 
v0.59.2
Bug fixes
- Link 
libstdinto the lib directory instead oflibflux. 
v0.59.1
Bug fixes
- Flux-config correctly copies 
stdlibwhen using a module. - UUID security.
 
v0.59.0
Features
- Add Go/Rust API for getting semantic graph.
 - Optimize 
limit()transformation. - Optimize 
group()transformation. 
Bug fixes
- AST json serialization glitches.
 - Better messaging for malformed CSV.
 - Skip stdlib symlink was removed erroneously.
 - Ensure stdlib directory is created.
 - Correctly skip the stdlib symlink in libflux.
 - Ensure that stdlib is present when building with flux-config.
 
v0.58.4
Bug fixes
- Skip stdlib symlink was removed erroneously.
 
v0.58.3
Bug fixes
- Ensure stdlib directory is created.
 
v0.58.2
Bug fixes
- Correctly skip the stdlib symlink in libflux.
 
v0.58.1
Bug fixes
- Ensure that stdlib is present when building with flux-config.
 
v0.58.0
Features
- Serialize semantic graph flatbuffers.
 - Implement 
onEmptyparameter forfilter(). - Serialize Flux standard library types as part of build process.
 - Add type declarations for universe.
 - Methods for type checking package dependencies.
 - Add type declarations for strings.
 
Bug fixes
- Expose tracing flag.
 - Update 
countbuiltin type. - Update 
experimental.setbuiltin type. - Update the type of 
influxdb.toto be a passthrough. - Update 
fillbuiltin type. - Remove redundant clones found by a new version of Clippy.
 - Fix durations in Rust semantic graph.
 - Removes unnecessary rc clone in semantic serializer.
 - Do not stall forever in flux-config when an error happens with verbose.
 - Update function block return statements to produce a stmt and not an expression.
 - Fix token location for 
scan_with_regex. - Cache environment variable for performance.
 - Fix a couple errors in builtin types.
 - Annotate variable assignment with polytype (not monotype).
 
v0.57.0
Features
- Categorize more Flux errors with codes.
 - Teach flux-config how to download the sources when using vendor.
 - Opentracing in query execution runtime.
 - Reduce memory allocations for operations in values.
 - Translate FlatBuffers semantic graph to Go.
 - Add types for some universe builtins.
 - Add type declarations for builtins.
 - Add Numeric and Row kind constraints.
 
Bug fixes
- Enable strict mode by default.
 
v0.56.0
Features
- Crate for typing Flux standard library.
 - Serialize type environment.
 - Improve filter performance when filtering on values.
 - Update usage duration test to exclude queue and requeue time.
 - Add types for some built-ins.
 - Add 
timeoutparameter to experimentalhttp.get(). 
Bug fixes
- Properly use a fake version with 
flux-configwhen no version is present. - Address Clippy lints.
 - Add bytes monotype to Rust semantic module.
 - Allow underscores (
_) in type expressions. 
v0.55.1
Bug fixes
- Fix e2e usage test so that their queries are properly pushed down.
 
v0.55.0
Breaking changes
- Expand the interface for 
BufferedTable. 
Features
- Expose optimized 
pivot()function. - Create utility program for building 
libflux. - Create a tool that measures performance of calling Rust from Go.
 - Inject types in the semantic graph.
 - MonoType and PolyType flatbuffer encodings.
 - MonoType and PolyType flatbuffer schemas.
 - Update Rust flatbuffers to more closely match Rust semantic graph.
 - Flatbuffers AST to Go AST.
 - Port immutable walk and fix mutable walk.
 - Define the flatbuffers schema for semantic graph.
 - Infer imported package types.
 - Unify and infer function types.
 - Add support for safely converting bytes to strings.
 - Add sqlite3 support.
 - Add internal table utility for streaming tables.
 
Bug fixes
- Update semantic graph FlatBuffers schema for identifiers.
 - Ignore order when comparing record types.
 - Operands for 
<=and>=are comparable AND equatable. - Constrain unary expressions to be same type as operand.
 
v0.54.0
Features
- Expose function to analyze from string.
 - Added semantic expression constraints to libflux.
 - Custom 
PartialEqfor polytypes. - Extensible record unification.
 Semantic.Walk.
Bug fixes
- Do not constrain type variables with empty kinds.
 - Update usage tests to filter on 
_field. - Record labels are scoped and fields are ordered.
 - Parse row variables.
 - Update make release to confirm remote and local are in sync.
 - Make 
walk_rcpublic. 
v0.53.0
Breaking changes
- Interpret months as part of the semantic duration.
 
Features
- Macros for type inference tests.
 - Let-polymorphism with test example.
 - Generalization, instantiation, and constraint solving.
 - Type environment.
 - Convert Rust AST to FlatBuffers format.
 - Allow lexing and parsing of string polytypes according to polytype grammar rules.
 - Add month support when adding durations to a time value.
 - Interpret months as part of the semantic duration.
 
Bug fixes
- Type variable constraints.
 - Apply sub to both sides of constraint before unifying.
 - Instantiate quantified vars, not free vars.
 
v0.52.0
Features
VisitorusesRcfor nodes.- Add 
EvalOptions. 
Bug fixes
- Correctly lex 
µs. 
v0.51.0
Breaking changes
- Update the Flux SPEC to remove duration addition and subtraction.
 - Turn duration value into a vector.
 
Features
- Implementations for type substitutions and constraints.
 - Add semantic analysis.
 - Updated the duration value to include months and negative flag.
 - Create a flatbuffers schema for AST.
 - Add initial C binding for parsing an AST.
 - Create a tool for updating 
.fluxtests in-place. - Add walk implementation.
 - Turn duration value into a vector.
 - Define initial Flux data types.
 
Bug fixes
- Update libflux parser to match the Go parser.
 - Allow data collected by 
prometheus.scrape()to be used byhistogramQuantile(). - Remove mock allocator.
 - Validate URL for 
sql.from(),sql.to(), andsocket.from(). 
v0.50.2
Bug fixes
- Make 
keep()anddrop()throw an error if merging tables with different schemas. 
v0.50.1
Bug fixes
- Add annotated errors to the execute package where it affects normal usage.
 - Reorder variables in the allocator for atomic operations.
 
v0.50.0
Features
- Add 
experimental/prometheuspackage. - Add a memory manager to the memory allocator.
 - Add an internal function for generating data.
 - Switch to using discarding mode for transformations.
 - Group key join on 
_time. 
Bug fixes
- Require 
dataparameter inmonitor.check(). - Return the EOF error when reading metadata.
 - Re-add missing import.
 - Fix broken links in SPEC.
 - Return error from cache.
 - Update the 
universepackage to use flux errors throughout. - Parse escape characters in string interpolation expressions.
 - Improve CSV error message for serialized Flux error.
 - Have the interpreter return annotated Flux errors.
 
v0.49.0
Features
- Optimize 
filter()to pass through tables when possible. - Additional arrow builder utilities.
 - Add a 
benchmark()function to the testing package. - Add an arrow backed version of the table buffer.
 
Bug fixes
- Fix 
sql.from()connection leak. - Fix some of the memory leaks within the standard library.
 - Fix 
mqtt.to()topic parameter. 
v0.48.0
Breaking changes
- Convert the Flux memory allocator into an arrow allocator.
 
Features
- New dependency injection framework.
 - Add planner options to Flux language.
 - Make Flux 
internal/promql/quantilebehavior match PromQLquantileaggregate. 
Bug fixes
- Passing context to WalkIR.
 - Make 
join()reject input tables lackingoncolumns. 
v0.47.1
Bug fixes
- Pass dependencies to WalkIR
 
v0.47.0
Bug fixes
- Introduce ParenExpression.
 - Make fmt runs cargo fmt on Rust directories.
 - Update 
Hex.Dumptohex.EncodeToString. - Integrate the Promql transpiler into Flux.
 
v0.46.2
Bug fixes
- Make 
touse URL validator. - Add filesystem to default test dependencies.
 
v0.46.1
Bug fixes
- Add a filesystem service.
 - Do a pointer comparison for table objects instead of a deep compare.
 
v0.46.0
Features
- Replace EnvironmentSecretService with EmptySecret….
 - Source location for rust parser.
 
Bug fixes
- Push error for bad string expression.
 - Remove 
tokenparameter frompagerduty.endpoint. 
v0.45.2
Bug fixes
- Push the tag before running goreleaser.
 - Additional opentracing spans for debugging query flow.
 
v0.45.1
Bug fixes
- Ensure 
http.postrespects the context. 
v0.45.0
Features
- Added Google Bigtable 
from(). 
Bug fixes
- Add 
pagerduty.severityFromLevel()helper function. - Sleep function now gets canceled when the context is canceled.
 - Categorize the undefined identifier as an invalid status code.
 - Panic from 
CheckKindinmemberEvaluator. 
v0.44.0
Features
- Add 
http.basicAuthfunction. - Add measurement filters to 
monitor.fromandmonitor.logs. 
Bug fixes
- changed the default HTTP client to be more robust.
 
v0.43.0
Features
- PagerDuty endpoint for alerts and notifications.
 
v0.42.0
Features
- Add 
stateChangesfunction. 
Bug fixes
- Race condition in looking up types in 
map. - Support bool equality expressions.
 - Calculating a type variable’s free type variables.
 - Do not generate fresh type variables for member expressions.
 - Array instantiation.
 
v0.41.0
Features
- Add ability to validate URLs before making 
http.postrequests. - Evaluate string interpolation.
 - Implement the 
secrets.getfunction. - Added secret service interface.
 - Add secrets package that will construct a secret object.
 - Added a SecretService interface and a new dependencies package and a basic test of functionality.
 - Add Slack endpoint.
 
Bug fixes
- Make 
reset()check for non-nil data before callingRelease(). - Add test case for 
notifyfunction. - Add missing math import to test case.
 - Make packages aware of options.
 - Resolved 
holtWinterspanic. - Use non-pointer receiver for 
interpreter.function. 
v0.40.2
Bug fixes
- Resolved 
holtWinters()panic. 
v0.40.1
Bug fixes
- Use non-pointer receiver for 
interpreter.function. 
v0.40.0
Breaking changes
- Update compiler package to use true scope.
 - Add 
httpandjsonto prelude. 
Features
- Add 
alerts.check()function. - Add 
alerts.notifyfunction. - Add 
kaufmansER()andkaufmansAMA()functions. - Add 
experimental.to()function. - Add 
experimental.set()function to update entire object. - Add 
experimental.objectKeys()function. - Add 
tripleExponentialDerivative()function. - Add 
json.encode()function. - Add 
mqtt.to()function. - Add Bytes type.
 - Update compiler package to use true scope.
 - Add http endpoint.
 - Add post method implementation.
 - String interpolation.
 
Bug fixes
- Avoid wrapping table errors in the CSV encoder.
 - Remove irrelevant TODOs.
 mode()now properly considers nulls when calculating the mode.- Add 
httpandjsonto prelude. - Rename all Flux test files to use 
_test.flux. 
v0.39.0
In Flux 0.39.0, holtWinters() can cause the query engine to panic.
Flux 0.40.2 resolves this panic.
Breaking changes
- Implement the scanning components for string expressions.
 
Features
- Add 
tail()function. - Add framework for 
http.post()function. - Implement 
deadman()function. - Time arithmetic functions.
 - Alerts package.
 - Add an experimental 
group()function with modeextend. - Implement the scanning components for string expressions.
 - Add 
chandeMomentumOscillator()function. - Add 
hourSelection()function. - Add 
date.year()function 
Bug fixes
- Update object to use Invalid type instead of nil monotypes.
 - Make it so the alerts package can be defined in pure Flux.
 - Close connection after 
sql.to(). 
v0.38.0
Features
- Update selectors to operate on time columns.
 - Add 
relativeStrengthIndex()transformation. - Add double and triple exponential average transformations (
doubleEMA()andtripleEMA()). - Add 
holtWinters()transformation. - Add 
keepFirstparameter todifference(). - DatePart equivalent functions.
 - Add runtime package.
 - Add and subtract duration literal arithmetic.
 - Allow 
keep()to run regardless of nonexistent columns. If all columns given are nonexistent,keep()returns an empty table. - Scanner returns positioning.
 
Bug fixes
- Function resolver now keeps track of local assignments that may be evaluated at runtime.
 - Fixed InfluxDB test errors.
 - Add range to tests to pass in InfluxDB.
 - Allow converting a duration to a duration.
 - Catch integer overflow and underflow for literals.
 
v0.37.2
- General cleanup of internal code.
 
v0.37.1
Bug fixes
- Fixed InfluxDB test errors.
 - Add range to tests to pass in InfluxDB.
 
v0.37.0
Features
- Add PromQL to Flux transpiler and Flux helper functions.
 - Add mutable arrow array builders.
 - Created date package.
 - Return query and result errors in the multi result encoder.
 - Add 
exponentialMovingAverage(). - Add full draft of Rust parser.
 - Implement more production rules.
 - AST marshalling.
 - Parse statements.
 - Parse integer and float literals.
 - Add initial Rust implementation of parser.
 
v0.36.2
Bug fixes
- Add helper methods for comparing entire result sets.
 - Map will not panic when a record is 
null. 
v0.36.1
Bug fixes
- Add 
rangecall to some end-to-end tests. - Fix implementation of 
strings.replaceAll. 
v0.36.0
Features
- Updated 
movingAverage()and addedtimedMovingAverage. elapsed()function.mode()function.sleep()function.- Modify error usage in places to use the new enriched errors.
 - Enriched error interface.
 - End-to-end tests that show how to mimic pandas functionality.
 - End-to-end tests for string functions.
 
Bug fixes
- Fix 
difference()so that it returns an error instead of panicking when given a_timecolumn. - Added end-to-end tests for type conversion functions.
 - Make 
map()error if return type is not an object. - Fixed miscounted allocations in the 
ColListTableBuilder. - Support formatting 
with. 
Breaking changes
- Updated 
movingAverage()totimedMovingAverageand added newmovingAverage()implementation. 
v0.35.1
Bug fixes
- Re-add 
mergeKeyparameter tomap()in deprecated state. 
v0.35.0
Breaking changes
- Remove 
mergeKeyparameter from themap()function. 
Features
- Add 
sql.to()function. - Add 
movingAverage()function. - Add 
strlen()andsubstring()functions to thestringspackage. 
Bug fixes
- Remove 
mergeKeyparameter from themap()function. - Parse float types with PostgreSQL.
 
v0.34.2
Bug fixes
- Parse float types with PostgreSQL.
 
v0.34.1
Features
- Add custom PostgreSQL type support.
 - Added MySQL type support.
 - Nulls work in table and row functions.
 
Bug fixes
- Fixed boolean literal type conversion problem and added tests.
 - Diff should track memory allocations when it copies the table.
 - Copy table will report if it is empty correctly.
 
v0.33.2
Bug fixes
- Use 
strings.Replaceinstead ofstrings.ReplaceAllfor compatibility. 
v0.33.1
Bug fixes
- Copy table will report if it is empty correctly.
 
v0.33.0
Breaking changes
- Implement nulls in the compiler runtime.
 
Features
- Add Go 
regexpfunctions to Flux. - Add the exists operator to the compiler runtime.
 - Implement nulls in the compiler runtime.
 - Add nullable kind.
 - Support “with” syntax for objects in row functions.
 - Port several string functions from go 
stringslibrary to Flux. - Add exists unary operator.
 
Bug fixes
- Add range to map_extension_with.flux.
 - Row function resets records map with each call to prepare.
 - Fix 
joinStr, including adding an EndToEnd Test. - Fix 
string_trimLeftandstring_trimRightso that they pass in InfluxDB. - Add length check for empty tables in fill.
 
v0.32.1
Bug fixes
- Identify memory limit exceeded errors in dispatcher.
 
v0.32.0
Breaking changes
- Remove the control package.
 
Bug fixes
- Changelog generator now handles merge commits better.
 - Return count of errors when checking AST.
 
v0.31.1
Bug fixes
- Do not call done after calling the function.
 
v0.31.0
Breaking changes
- Copy the table when a table is used multiple times.
 
Features
- Support for dynamic queries.
 
Bug fixes
- Copy the table when a table is used multiple times.
 
v0.30.0
Features
- Support for dynamic queries.
 
v0.29.0
Breaking changes
- Make 
ona required parameter tojoin(). 
Features
- Add stream table index functions (
tableFind(),getRecord(),getColumn()). - Construct invalid binary expressions when given multiple expressions.
 
Bug fixes
- Properly use RefCount to reference count tables.
 - Remove the race condition within the 
(*Query).Donemethod. - Fix table functions test.
 - Add 
columnparameter tomedian(). - Modify 
medianto work withaggregateWindow(). pivot()now uses the correct column type when filling nulls.- Add error handling for property list.
 - Return the error from the context in the executor.
 
v0.28.3
Bug fixes
- Fix request results labels to count runtime errors.
 - An error when joining could result in two calls to finish.
 
v0.28.2
Bug fixes
- Preallocate data when constructing a new string array.
 
v0.28.1
Bug fixes
- Make executor respect memory limit from caller.
 
v0.28.0
Features
- Allow choosing sample/population mode in 
stddev(). 
Bug fixes
- Fix 
reduce()so it resets the reduce value to the neutral element value for each new group key and reports an error when two reducers write to the same destination group key. 
v0.27.0
Features
- Add 
trimSuffixandtrimPrefixfunctions to the strings package. - Add support for conditional expressions to compiler.
 - Add conditional expression handling to interpreter.
 
Bug fixes
- Enforce memory and concurrency limits in controller.
 - Format conditional expression.
 tagKeysshould include a call todistinct.
v0.26.0
Breaking changes
- Aggregates now accept only a 
columnparameter.columnsnot used. 
Features
- Add handling for conditional expressions to type inference.
 - Add 
if/then/elsesyntax to Flux parser. - Added a WalkIR function that external programs can use to traverse an opSpec structure.
 - Add planner options to compile options.
 - Add example on how to use Flux as a library.
 duplicate()will now overwrite a column if the as label already exists.
Bug fixes
- Format right child with good parentheses.
 - Make staticcheck pass.
 - Rename 
jsontag so go vet passes. - The controller pump could reference a nil pointer.
 - Create a DependenciesAwareProgram so controller can assign dependencies.
 - Make 
Program.Startstart execution synchronously. - Read the metadata channel in a separate goroutine.
 - Remove dead code in controller so 
staticcheckpasses. - Allow Flux unit tests to pass.
 - Require a Github token to perform a release.
 - Change example name to make go vet pass.
 - Make 
csv.fromreturn decode error. 
v0.25.0
Breaking changes
- Fix logical operators (
and,or) precedence. 
Bug fixes
- Omit space between unary operator and operand.
 - Format AST preserving operator precedence.
 
v0.24.0
Breaking changes
- Rename 
percentile()function toquantile(). 
Bug fixes
- Handle when a non-call expression is parsed as the pipe destination.
 - Add error message to Compile methods for empty Spec.
 
v0.23.0
Breaking changes
- Remove unused statistics from the struct.
 
Features
- Define comparison operators between time types.
 - Parse signed duration.
 - Added 
reduce()function and supporting go API for implementation. - Fix for recognizing locally scoped objects and arrays in a row function.
 
Bug fixes
- Columns in percentile signature and more strict param checking.
 - Report the error received when parsing a bad regex literal.
 - Remove unused statistics from the struct.
 
v0.22.0
Features
- Added a math package and ported all 64 bit go math library functions.
 
Bug fixes
- Make read-like access patterns for objects thread-safe.
 
v0.21.4
Bug fixes
- Test union.flux correctly uses sort.
 - Pivot orders rowKey and columnKey by the input parameters, rather than the table column order.
 - Deterministic sorting of input tables in join.
 - Group key comparison works regardless of column ordering.
 
v0.21.3
Bug fixes
- Fix test to pass in InfluxDB.
 - Write table and result name in each row of CSV output.
 - Make time() function accept any format that parser accepts.
 - Return errors when evaluating functions.
 - Prevent a deadlock in the array expression parser.
 
v0.21.2
Bug fixes
- Add AST compiler to mappings.
 
v0.21.1
Bug fixes
- Make ASTCompiler marshalable.
 - Fix a controller test to be less flaky.
 from()must send deep table copies to its downstream transformations.
v0.21.0
Breaking changes
- Support attaching arbitrary query metadata from the executor.
 
Features
- Support attaching arbitrary query metadata from the executor.
 - Socket source.
 
Bug fixes
- Add locks to make diff threadsafe.
 
v0.20.0
Features
- AST match.
 - Generate ASTs from Flux test files for external consumption.
 - Add compile subcommand that compiles Flux to spec.
 
Bug fixes
- Change loadStorage and loadMem to be options so that they are modifiable.
 - Generate skipped tests; skip in test driver.
 
v0.19.0
Breaking changes
- Make 
window()parameters match SPEC. - Split FromProcedureSpec into logical and physical specs.
 
Features
- Add 
contains()function to check for membership in lists. testkeyword.
Bug fixes
- Raw query test case.
 
v0.18.0
Features
- Add strings package with functions to trim/change string case.
 - Make duration conversion public.
 - Add assertEmpty method and use it with testing.test.
 - Expose literal parsers used within the parser.
 - Add testing.diff function.
 - Execute command.
 
Bug fixes
- Refactor the controller to remove data races.
 - Member expressions using a string literal use the incorrect end bracket.
 - Skip lambda evaluation when referencing nulls.
 - Options editor should use ast.Expression.
 - Fix decoder bug where a default table ID is given when none is required.
 - Add close to SourceIterator.
 
v0.17.0
Features
- Checks for option dependencies.
 - Add query success and error metrics.
 - Track nested blocks in the parser.
 - Update 
aggregateWindow()to includecreateEmptyas parameter to allow for null results. - Add query function count metrics.
 
Bug fixes
- Multiplicative operators are above additive operators in precedence.
 - Fix panic when copying lambda.
 - Only print a package’s public exports.
 - Cannot access imports of imports.
 - Check for schema collision when appending columns to a table.
 - Process test helper had bad logic to check for errors.
 - Handle rune errors correctly when decoding an illegal token.
 
v0.16.1
Bug fixes
- Copy packages for importer copy.
 
v0.16.0
Features
- Adds various v1 meta queries helper functions
 
Bug fixes
- Fixes various UX issues.
 - Object polytype.
 - Fix edge case panic in 
assertEquals. - Check for equality in time columns correctly.
 - Fix bug where 
assertEqualsdid not check tables without a match in both streams. - Clear return for each REPL command.
 
v0.15.0
Features
- Add rule to remove filter true nodes.
 - Checks for variable reassignment and option declarations below package block.
 
Bug fixes
- Move a test file into the testing/testdata folder.
 
v0.14.0
Breaking changes
- Implement and require builtin statements.
 - Fix keys to output group key.
 - Organizes builtin code into Flux packages.
 - Change flux command to be a REPL.
 
Features
- Implement and require builtin statements.
 - Added a new utility library for generating test data.
 columns()function.- Add fill function to set a default value for null values in a column.
 - Organizes built-in code into Flux packages.
 - Change flux command to be a REPL.
 - Refactored the table builder interfaces to support null value creation.
 - Aggregates process empty/all-null tables by creating a null row.
 - Show nulls in REPL as empty string.
 - Add ability to define built-in packages.
 - Treat omitted values with no defaults as nil in CSV.
 - Build arrow columns with null values.
 - Converting limit to use arrow arrays.
 - TableBuilder interface and ColListTableBuilder implementation support creation of nil values.
 
Bug fixes
- Count nulls in the count aggregate.
 - Fix keys to output group key.
 - Adding test for type mismatch in group.
 - Nest extern blocks for each level in scope.
 - Memory leak in limit when slicing.
 - Prettier formatting for package.
 - Change Package.Path to be json omitempty.
 
v0.13.0
Breaking changes
- Add File and Package nodes to the AST.
 
Features
- Embed errors into the ast from the parser.
 - Add no-points optimization for 
from() |> keys(). - Add File and Package nodes to the AST.
 - Add a function for checking for errors within the AST.
 
Bug fixes
- Remove unneeded use of memory allocator.
 - Allow the memory allocator to be nil for arrow arrays.
 - Fix several bugs in copy methods add tests.
 - Fix a flaky test in the controller shutdown.
 
v0.12.0
Features
- Slice utils.
 - Parse string literal object keys.
 - Add tests for multi-line and escaped strings.
 - Arrow helper method.
 - Converting all aggregates to use arrow arrays.
 
Bug fixes
- Embed plan.DefaultCost in input and output functions.
 - Side effect statements are now copied between related interpreter scopes.
 
v0.11.0
Features
- Add utility methods for converting a slice into an arrow array buffer.
 
Bug fixes
- Do not panic with unbalanced parenthesis.
 - Respect positive timeout for toHTTP.
 
v0.10.0
Breaking changes
- Change “label” to “column” for state tracking functions.
 
Features
- Plan validation.
 - Testing framework no longer checks output.
 - Integrate arrow arrays into the table builder.
 - Support packages and imports.
 
Bug fixes
- Cancel all queries after timeout elapses.
 makefilefor generating the scanner after clean was incorrect.
v0.9.0
Features
- Option Editor.
 
Bug fixes
- Return the source attribute in the location correctly.
 
v0.8.0
Features
- Rule to chain group operations.
 - Add package and import support to the semantic graph.
 - Add 
assertEqualsfunction to transformations. - Parse import and package statements
 - Walk pattern for AST.
 - AST formatting.
 - Switch over to the new parser.
 
Bug fixes
- Make controller return planner failures.
 - Collision between external and fresh type vars.
 - fmt for import and package.
 - Add import/package nodes to ast.Walk.
 - Improve panic message when the wrong column type is used.
 - Check nil results when computing stats.
 - Suppress group push down for _time and _value.
 - Terminal output functions must produce results.
 - Fix race in interpreter.doCall.
 - Fix ast.Walk for Assignment rename.
 - Improve error message for missing object properties.
 - Add unary logical expression to the parser.
 - Variable declarator node needs to duplicate the location information.
 
v0.7.4
Bug Fixes
- Add missing comparison operators.
 
v0.7.3
Bug Fixes
- Fix the ident statement to use expression suffix.
 
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for Flux and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.