3611 lines
98 KiB
Markdown
3611 lines
98 KiB
Markdown
---
|
|
title: Flux release notes
|
|
description: Important changes and and what's new in each version of Flux.
|
|
weight: 1
|
|
menu:
|
|
flux_v0_ref:
|
|
name: Release notes
|
|
aliases:
|
|
- /influxdb/v2/reference/release-notes/flux/
|
|
- /influxdb/cloud/reference/release-notes/flux/
|
|
---
|
|
|
|
## v0.195.1 {date="2024-06-11"}
|
|
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.195.0 {date="2024-06-11"}
|
|
|
|
### Features
|
|
|
|
- Return to internal string references.
|
|
- Allocate memory for string content.
|
|
|
|
### Bug fixes
|
|
|
|
- Join paths correctly in the `influxdb` source.
|
|
- Optimize string arrays.
|
|
|
|
### Dependency updates
|
|
|
|
- Update `github.com/benbjohnson/immutable`.
|
|
- Update `github.com/SAP/go-hdb`.
|
|
- Build on Rust 1.78.
|
|
|
|
---
|
|
|
|
## v0.194.5 {date="2023-11-22"}
|
|
|
|
### Bug fixes
|
|
|
|
- Resolve build error on Rust 1.72.0+.
|
|
|
|
---
|
|
|
|
## v0.194.4 {date="2023-10-25"}
|
|
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.194.3 {date="2023-05-26"}
|
|
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.194.3 {date="2023-05-26"}
|
|
|
|
### Bug fixes
|
|
|
|
- Make [`histogramQuantile()`](/flux/v0/stdlib/universe/histogramquantile/)
|
|
correctly handle cases of zero samples.
|
|
|
|
---
|
|
|
|
## v0.194.1 {date="2023-04-17"}
|
|
|
|
### Bug fixes
|
|
- Make C foreign function interface (FFI) more robust when checking for valid input.
|
|
|
|
---
|
|
|
|
## v0.194.0 {date="2023-04-06"}
|
|
|
|
### Features
|
|
- Add microsecond and nanosecond support to
|
|
[`iox.sqlInterval()`](/flux/v0/stdlib/experimental/iox/sqlinterval/).
|
|
|
|
### Bug fixes
|
|
- Fix panic caused by chunking outer joins.
|
|
- Remove 64bit reference counter misalignments.
|
|
|
|
---
|
|
|
|
## v0.193.0 {date="2023-02-23"}
|
|
|
|
### Features
|
|
- Add `onNonmonotonic` parameter to [`histogramQuantile()`](/flux/v0/stdlib/universe/histogramquantile/)
|
|
to define behavior when bin counts are not monotonically increasing.
|
|
- Add the following functions to the `contrib/qxip/hash` package:
|
|
- [`hash.sha1()`](/flux/v0/stdlib/contrib/qxip/hash/sha1/)
|
|
- [`hash.md5()`](/flux/v0/stdlib/contrib/qxip/hash/md5/)
|
|
- [`hash.b64()`](/flux/v0/stdlib/contrib/qxip/hash/b64/)
|
|
- [`hash.hmac()`](/flux/v0/stdlib/contrib/qxip/hash/hmac/)
|
|
|
|
### Bug fixes
|
|
- Convert platform-dependent path separators to slashes.
|
|
- `use-after-free` in optimized String array.
|
|
|
|
---
|
|
|
|
## v0.192.0 {date="2023-01-09"}
|
|
|
|
### Breaking changes
|
|
- Update iox.sql to detect midstream errors.
|
|
|
|
### Features
|
|
- Add [`geo.totalDistance()`](/flux/v0/stdlib/experimental/geo/totaldistance/)
|
|
to aggregate total distance of consecutive points.
|
|
- Add [`iox.sqlInterval()`](/flux/v0/stdlib/experimental/iox/sqlinterval/) to
|
|
convert Flux durations to SQL interval strings.
|
|
- Add the [`contrib/qxip/hash`](/flux/v0/stdlib/contrib/qxip/hash/) package
|
|
which includes hashing functions.
|
|
- Add the [`contrib/qxip/logql`](/flux/v0/stdlib/contrib/qxip/logql/) package
|
|
which provides functions for working with
|
|
[Grafana Loki](https://grafana.com/oss/loki/) and [LogQL](https://grafana.com/docs/loki/latest/logql/).
|
|
- Add [`contrib/qxip/clickhouse`](/flux/v0/stdlib/contrib/qxip/clickhouse/)
|
|
package which provides functions for querying data from
|
|
[Clickhouse](https://clickhouse.com/).
|
|
|
|
---
|
|
|
|
## v0.191.0 {date="2022-11-14"}
|
|
|
|
### Features
|
|
- Associate registry attributes to import statements.
|
|
|
|
---
|
|
|
|
## v0.190.0 {date="2022-11-09"}
|
|
|
|
### Features
|
|
- Add download headers within the CSV dialect.
|
|
|
|
---
|
|
|
|
## v0.189.0 {date="2022-11-02"}
|
|
|
|
### Features
|
|
- Add `PartialOrd` and `Ord` to `ast::Position`.
|
|
- Detect undesirable patterns so we can remove them later.
|
|
|
|
### Bug fixes
|
|
- Update attribute syntax to require following element.
|
|
- Add `salsaDatabase` to list of feature passed to Rust.
|
|
- `testing.ShouldError` should error when no error occurs.
|
|
- Restore termination defaults for `holtWinters` to improve performance.
|
|
- Use salsa db when generating documentation.
|
|
|
|
---
|
|
|
|
## v0.188.1 {date="2022-10-31"}
|
|
|
|
### Bug fixes
|
|
- Correctly handle join operations with large input that exceed the buffer size.
|
|
|
|
---
|
|
|
|
## v0.188.0 {date="2022-10-25"}
|
|
|
|
### 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 {date="2022-10-17"}
|
|
|
|
### Features
|
|
|
|
- Add [`types.isNumeric()`](/flux/v0/stdlib/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 `_field` column to the
|
|
group key by default.
|
|
- Fix compilation error when using Rust 1.64.
|
|
|
|
---
|
|
|
|
## v0.186.0 {date="2022-10-11"}
|
|
|
|
### Features
|
|
- Add [`dynamic.isType()` function](/flux/v0/stdlib/experimental/dynamic/istype/).
|
|
- Add [`dynamic.asArray()` function](/flux/v0/stdlib/experimental/dynamic/asarray/).
|
|
- Add JSON functions that work with dynamic values:
|
|
- [`dynamic.jsonParse()`](/flux/v0/stdlib/experimental/dynamic/jsonparse/)
|
|
- [`dynamic.jsonEncode()`](/flux/v0/stdlib/experimental/dynamic/jsonencode/)
|
|
- Add runtime support for member expressions and remove index support for dynamic values.
|
|
- Add [`iox.sql()` function](/flux/v0/stdlib/experimental/iox/sql/).
|
|
|
|
### 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 {date="2022-10-03"}
|
|
|
|
### Features
|
|
- Add dynamic type.
|
|
- Add dynamic wrapper function.
|
|
- Enable codespan formatting for errors via feature flags.
|
|
|
|
### Bug fixes
|
|
- Pass context in the `Run` source helper.
|
|
- Handle null vector inputs for `_vecFloat`.
|
|
- Remove broken `contrib` packages:
|
|
- contrib/jsternberg/aggregate
|
|
- contrib/jsternberg/math
|
|
|
|
---
|
|
|
|
## v0.184.2 {date="2022-09-26"}
|
|
|
|
### Bug fixes
|
|
- Remove the `stacker` dependency.
|
|
- Skip strict _null_ logical evaluator.
|
|
|
|
---
|
|
|
|
## v0.184.1 {date="2022-09-21"}
|
|
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.184.0 {date="2022-09-21"}
|
|
|
|
### 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 `array` package](/flux/v0/stdlib/experimental/array/).
|
|
|
|
### Bug fixes
|
|
- Update SPEC and fix some inconsistencies.
|
|
- Update `sort limit` to 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 {date="2022-09-12"}
|
|
|
|
### Features
|
|
- Add support for piped-forward arrays to [`array.from()`](/flux/v0/stdlib/array/from/).
|
|
- Add parameter to [`experimental.unpivot()`](/flux/v0/stdlib/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 {date="2022-09-06"}
|
|
|
|
### Features
|
|
- Display yields in `fluxtest`.
|
|
- Allow [`experimental.unpivot()`](/flux/v0/stdlib/experimental/unpivot/) to
|
|
work when the `_time` column is missing.
|
|
- Add utility to the `function` package 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 {date="2022-08-29"}
|
|
|
|
### Features
|
|
- Add "headless" JSON-RPC based REPL.
|
|
- Support vectorized unary operators.
|
|
- Add [`experimental/polyline` package](/flux/v0/stdlib/experimental/polyline)
|
|
for downsampling data.
|
|
- Update function library to have its own arguments struct.
|
|
|
|
### Bug fixes
|
|
- Update import path for the `Spec` package in the "headless" REPL.
|
|
- Update conditional vectorization to handle bad values for `test`,
|
|
`consequent`, or `alternate`.
|
|
|
|
---
|
|
|
|
## v0.180.1 {date="2022-08-22"}
|
|
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.180.0 {date="2022-08-22"}
|
|
|
|
### 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 {date="2022-08-15"}
|
|
|
|
### Features
|
|
- Add a `Stringify` utility function for `table.Chunk`.
|
|
- Add support for vectorized binary equality operations.
|
|
- Update `testing.diff()` to use `experimental.diff()` permanently.
|
|
- Add vectorized `float()` builtin function.
|
|
- Enhance `fluxtest` to use package name with `test` and `skip` flags.
|
|
- 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 `buildinfo` documnentation comments to match latest `go fmt`.
|
|
- Fix aggregate window rules that left query plans in a bad state.
|
|
- Include filename when printing the AST location.
|
|
|
|
---
|
|
|
|
## v0.178.0 {date="2022-08-09"}
|
|
|
|
### Features
|
|
- Support `apiKey` parameter in [`zenoss.event()`](/flux/v0/stdlib/contrib/bonitoo-io/zenoss/event/)
|
|
and [`zenoss.endpoint()`](/flux/v0/stdlib/contrib/bonitoo-io/zenoss/endpoint/).
|
|
- Remove `vectorizedConst` feature flag.
|
|
|
|
### Bug fixes
|
|
- Deprecate `date/boundaries` package in favor of [`experimental/date/boundaries`](/flux/v0/stdlib/experimental/date/boundaries/).
|
|
- Update pattern matching to specify successor counts.
|
|
- Restore integer return value for [`pagerduty.sendEvent()`](/flux/v0/stdlib/pagerduty/sendevent/).
|
|
|
|
---
|
|
|
|
## v0.177.1 {date="2022-08-08"}
|
|
|
|
### Bug fixes
|
|
- Update `strings.substring()` to check bounds using rune array instead of string length.
|
|
|
|
---
|
|
|
|
## v0.177.0 {date="2022-08-01"}
|
|
|
|
### 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 {date="2022-07-25"}
|
|
|
|
### Features
|
|
- Promote various feature-flagged features and optimizations to be used by default.
|
|
|
|
### Bug fixes
|
|
- Support the [`location` option](/flux/v0/stdlib/internal/location/#options)
|
|
in the [`boundaries` package](/flux/v0/stdlib/date/boundaries/).
|
|
- Pass epsilon value from Go tests to the Flux test framework.
|
|
- Ignore unknown messages rather than erroring.
|
|
|
|
---
|
|
|
|
## v0.175.0 {date="2022-07-19"}
|
|
|
|
### Features
|
|
- Update [`testing.diff()`](/flux/v0/stdlib/testing/diff/) to use
|
|
[`experimental.diff()`](/flux/v0/stdlib/experimental/diff/) as its base.
|
|
- Add a new diff implementation to the [experimental package](/flux/v0/stdlib/experimental/).
|
|
- 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](https://github.com/gonum/gonum/blob/master/optimize/neldermead.go).
|
|
|
|
### 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 {date="2022-07-12"}
|
|
|
|
### Bug fixes
|
|
|
|
- Update [`aggregateWindow()`](/flux/v0/stdlib/universe/aggregatewindow/)
|
|
to correctly handle null values when using `sum` or `mean`.
|
|
- Update [`to()`](/flux/v0/stdlib/influxdata/influxdb/to/) and
|
|
[`wideTo()`](/flux/v0/stdlib/influxdata/influxdb/wideto/) to skip empty tag
|
|
values.
|
|
|
|
---
|
|
|
|
## v0.174.0 {date="2022-07-05"}
|
|
|
|
### Features
|
|
|
|
- Add coloring highlights to test outputs.
|
|
- Promote [`experimental.to()`](/flux/v0/stdlib/experimental/to/) to
|
|
[`influxdata.influxdb.wideTo()`](/flux/v0/stdlib/influxdata/influxdb/wideto/).
|
|
- Allow physical plan
|
|
[`attributes`](https://github.com/influxdata/flux/blob/master/plan/attributes.go)
|
|
to contribute to
|
|
[`formatter`](https://github.com/influxdata/flux/blob/master/plan/format.go)
|
|
details.
|
|
- Add tagging support to Flux tests.
|
|
- Add new function [`experimental.catch()`](/flux/v0/stdlib/experimental/catch/).
|
|
- Add new function [`testing.shouldError()`](/flux/v0.x/stdlib/testing/shoulderror/).
|
|
|
|
### Bug fixes
|
|
|
|
- Update `httpWriter` struct to skip invalid floats.
|
|
- Update [`join()`](/flux/v0/stdlib/join/) to validate group keys.
|
|
- Fix unit tests for [`covariance()`](/flux/v0/stdlib/universe/covariance/).
|
|
- Update all Flux packages to additionally live as Go packages.
|
|
|
|
---
|
|
|
|
## v0.173.0 {date="2022-06-29"}
|
|
|
|
### Breaking changes
|
|
|
|
- Format scripts with a trailing newline by default when running the formatter.
|
|
|
|
### Features
|
|
|
|
- Deprecate [`experimental.http.get`](/flux/v0/stdlib/experimental/http/get/).
|
|
- Deprecate [`experimental.csv.from()`](/flux/v0/stdlib/experimental/csv/from/).
|
|
- Promote the following functions from `experimental.array` into the
|
|
[`array`](/flux/v0/stdlib/array) package:
|
|
- [`array.concat()`](/flux/v0/stdlib/array/concat/)
|
|
- [`array.filter()`](/flux/v0/stdlib/array/filter/)
|
|
- [`array.map()`](/flux/v0/stdlib/array/map/)
|
|
- Promote the following functions from `experimental.http.requests` into the
|
|
[`http.requests`](/flux/v0/stdlib/http/requests/) package:
|
|
- [`http.requests.do()`](/flux/v0/stdlib/http/requests/do/)
|
|
- [`http.requests.get()`](/flux/v0/stdlib/http/requests/get/)
|
|
- [`http.requests.peek()`](/flux/v0/stdlib/http/requests/peek/)
|
|
- [`http.requests.post()`](/flux/v0/stdlib/http/requests/post/)
|
|
- Promote `experimental.bitwise` into the [`bitwise`](/flux/v0/stdlib/bitwise/)
|
|
package.
|
|
- Remove all `Test` statements. New statements are written with `TestCase`.
|
|
- 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`](/flux/v0/stdlib/join/)
|
|
|
|
---
|
|
|
|
## v0.172.0 {date="2022-06-24"}
|
|
|
|
### Features
|
|
- Add multiple new join functions to the [`join`](/flux/v0/stdlib/join/)
|
|
package such as [`join.full()`](/flux/v0/stdlib/join/full/).
|
|
- Add [`initialZero`](/flux/v0/stdlib/universe/derivative/#initialzero)
|
|
parameter to the derivative function.
|
|
- Allow features to enable builtin statements.
|
|
- Provide the comments for each `Symbol` from `PackageExports`.
|
|
- Suggestions now start off by default and added a new flag.
|
|
- Add builtin function [`time`](/flux/v0/stdlib/date/time/) to the `date`
|
|
package 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()`](/flux/v0/stdlib/testing/load/)
|
|
from [`testutil.yield()`](/flux/v0/stdlib/internal/testutil/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()`](/flux/v0/stdlib/universe/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 {date="2022-06-14"}
|
|
|
|
### Breaking changes
|
|
- Remove `testing.loadStorage()`.
|
|
|
|
### Features
|
|
- Add `FromStr` to allow the Flux LSP (language server protocol) CLI to run with
|
|
optional Flux features.
|
|
- Add method to parallelize aggregate transformations.
|
|
- Report unused symbols.
|
|
- Add `From` implementations for `Node/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 {date="2022-06-06"}
|
|
|
|
### Bug fixes
|
|
- Require an earlier minimum version of `lsp-types`.
|
|
|
|
---
|
|
|
|
## v0.170.0 {date="2022-06-02"}
|
|
|
|
### Features
|
|
- Add a `pretty.rs`-based MonoType formatter.
|
|
|
|
### Bug fixes
|
|
- Update vectorized `map()` to properly handle shadowed columns.
|
|
|
|
---
|
|
|
|
## v0.169.0 {date="2022-05-31"}
|
|
|
|
### Features
|
|
- Add a `_status` tag 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 `json` tags for the transport profiles in statistics.
|
|
- Initialize `Metadata` in 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 {date="2022-05-23"}
|
|
|
|
### Features
|
|
- Enable [`movingAverage()`](/flux/v0/stdlib/universe/movingaverage/) and
|
|
[`cumulativeSum()`](/flux/v0/stdlib/universe/cumulativesum/) optimizations
|
|
by default.
|
|
- Vectorize logical operations in [`map()`](/flux/v0/stdlib/universe/map/).
|
|
- Add a planner rule that expands logical join nodes.
|
|
- Added timezone support to [`hourSelection()`](/flux/v0/stdlib/universe/hourselection/).
|
|
|
|
### Bug fixes
|
|
- Attach type when constructing logical expressions.
|
|
- Fix panic with half-diamond logical plan.
|
|
|
|
---
|
|
|
|
## v0.167.0 {date="2022-05-16"}
|
|
|
|
### Features
|
|
- Allow default types to be specified for default arguments.
|
|
- Add [`date.scale()`](/flux/v0/stdlib/date/scale/) to allow for dynamic duration changes.
|
|
- Expose aggregate window spec fields for use by the query planner.
|
|
- Add [`experimental.preview()`](/flux/v0/stdlib/experimental/preview/).
|
|
|
|
### Bug fixes
|
|
- Update `date.add()` and `date.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.fill` is present.
|
|
- Use `MultiplicativeOperator` in `MultiplicativeExpression`.
|
|
|
|
---
|
|
|
|
## v0.166.0 {date="2022-05-09"}
|
|
|
|
### Features
|
|
- Add InfluxData semantic commit and pull request title validator.
|
|
- Add an `Expr` node to the visitor API.
|
|
- Add label polymorphism.
|
|
- Vectorize remaining arithmetic operators.
|
|
|
|
### Bug fixes
|
|
- Remove `JoinOpSpec.TableNames` in favor of `JoinOpSpec.params` to stay
|
|
consistent inside `tableFind()`.
|
|
- Fix `SortLimit` for empty input group.
|
|
|
|
---
|
|
|
|
## v0.165.0 {date="2022-04-25"}
|
|
|
|
### Features
|
|
- Add support for options in the `testcase` extension.
|
|
- 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 `flux` CLI.
|
|
- Add `EquiJoinPredicateRule`.
|
|
|
|
### Bug fixes
|
|
- Update `map()` test case to include a range.
|
|
- Don't set `BaseLocation.file` to `Some("")`.
|
|
- Fix `strings.joinStr` panic when it receives a null value.
|
|
- Remove 64bit misalignment.
|
|
- Fix memory releases and add checked allocator to the end of tests.
|
|
|
|
---
|
|
|
|
## v0.164.1 {date="2022-04-18"}
|
|
|
|
### Bug fixes
|
|
- Remove an extraneous `go generate` statement.
|
|
|
|
---
|
|
|
|
## v0.164.0 {date="2022-04-13"}
|
|
|
|
### Features
|
|
- Allow Go to pass compilation options to Rust.
|
|
|
|
### Bug fixes
|
|
- Do not assume integers are 64bit integers.
|
|
- Update `prometheus.scrape` type signature to correctly return a stream.
|
|
|
|
---
|
|
|
|
## v0.163.0 {date="2022-04-07"}
|
|
|
|
### 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 {date="2022-04-05"}
|
|
|
|
### Features
|
|
- Add [OpenTracing spans](https://opentracing.io/docs/overview/spans/) to the Flux runtime.
|
|
- Add the `cffi` feature to reduce WASM binary size.
|
|
- Replace the main `flux` CLI with a new `flux` CLI that starts a Flux REPL by
|
|
default or executes a Flux script via stdin.
|
|
- Track freed memory with `SetFinalizer`.
|
|
- Move [`addDuration()`](/flux/v0/stdlib/date/add/) and
|
|
[`subDuration()`](/flux/v0/stdlib/date/sub/) from the `experimental`
|
|
package to the `date` package.
|
|
|
|
### 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 `cffi` feature.
|
|
|
|
---
|
|
|
|
## v0.161.0 {date="2022-03-24"}
|
|
|
|
### Features
|
|
- Re-enable the dialer pool and update dependency injection.
|
|
|
|
### Bug fixes
|
|
- Check length boundary for lower bound of [`strings.substring()`](/flux/v0/stdlib/strings/substring/).
|
|
|
|
---
|
|
|
|
## v0.160.0 {date="2022-03-22"}
|
|
|
|
### Features
|
|
- Remove the `concurrencyLimit` feature flag and keep it in the dependencies.
|
|
- Add MQTT Docker integration test.
|
|
- Enable dialer pool.
|
|
- Add an IOx-specific unpivot function to the `internal` package.
|
|
|
|
### Bug fixes
|
|
- Update [`join()`](/flux/v0/stdlib/universe/join/) to properly handle divergent schemas.
|
|
- Fix line endings in the `testcase` format to prevent unnecessarily nesting the
|
|
body of a test case.
|
|
- Make [`strings.substring()`](/flux/v0/stdlib/strings/substring/) check bounds correctly.
|
|
- Fix duration and integer literal scanning.
|
|
- Make `testcase` a 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 {date="2022-03-14"}
|
|
|
|
### Features
|
|
- Added a `finish` state to parallel-merge and always protect with a mutex lock.
|
|
|
|
### Bug fixes
|
|
- Use a fork of the `gosnowflake` library to prevent file transfers.
|
|
- When encoding Flux types as JSON, encode dictionary types as JSON objects.
|
|
- Upgrade Apache Arrow to v7.
|
|
|
|
---
|
|
|
|
## v0.158.0 {date="2022-03-09"}
|
|
|
|
### Features
|
|
- Add inline documentation to the `universe` package.
|
|
- 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 {date="2022-03-03"}
|
|
|
|
### Features
|
|
- Update `fill()` to use narrow transformation.
|
|
- Add an attribute-based instantiation of parallel execution nodes.
|
|
- Expose the `Record::fields` iterator.
|
|
- Allow the `estimate_tdigest` method in `quantile()` 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 doc` build errors.
|
|
- Reclassify CSV-decoding errors as user errors.
|
|
- Update `iox.from()` and `generate.from()` to use proper stream annotation.
|
|
|
|
---
|
|
|
|
## v0.156.0 {date="2022-02-22"}
|
|
|
|
### 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 `TableObject` guards.
|
|
- Copy `TagColumns` in `to()` that may get modified into the transformation.
|
|
- Update tests to use explicit yields.
|
|
|
|
---
|
|
|
|
## v0.155.1 {date="2022-02-15"}
|
|
|
|
### Bug fixes
|
|
- Update tests to use an explicit yield.
|
|
|
|
---
|
|
|
|
## v0.155.0 {date="2022-02-14"}
|
|
|
|
### Features
|
|
- Add new [experimental array functions](/flux/v0/stdlib/experimental/array/)
|
|
for operating on arrays.
|
|
|
|
### Bug fixes
|
|
- Add `stop` parameter to [InfluxDB schema functions](/flux/v0/stdlib/influxdata/influxdb/schema/).
|
|
- Remove `os.Exit` calls and allow `defer executor.Close` to run.
|
|
- Properly handle time zone transitions when there is no daylight savings time
|
|
in the specified time zone.
|
|
|
|
---
|
|
|
|
## v0.154.0 {date="2022-02-09"}
|
|
|
|
### Features
|
|
- Add [`requests.peek()`](/flux/v0/stdlib/experimental/http/requests/peek/) to
|
|
return HTTP response data in a table.
|
|
- Add [`display()`](/flux/v0/stdlib/universe/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 `values` package.
|
|
- Set the correct type for vectorized functions.
|
|
|
|
---
|
|
|
|
## v0.153.0 {date="2022-02-07"}
|
|
|
|
### Features
|
|
- Connect language server protocol (LSP) features through the Flux crate.
|
|
- Add conversion from `flux.Bounds` to `plan/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 {date="2022-01-31"}
|
|
|
|
### Features
|
|
- Add the [`experimental/http/requests` package](/flux/v0/stdlib/experimental/http/requests/)
|
|
to support generic HTTP requests.
|
|
- Add [`experimental/iox` package](/flux/v0/stdlib/experimental/iox/) and a
|
|
placeholder for the `iox.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 {date="2022-01-24"}
|
|
|
|
### Features
|
|
- Update to Rust 1.58.1.
|
|
|
|
---
|
|
|
|
## v0.151.0 {date="2022-01-20"}
|
|
|
|
### Features
|
|
- Expose `MonoType::parameter` and `MonoType::field`.
|
|
|
|
### Bug fixes
|
|
- Support writing unsigned integers with the `http` provider.
|
|
|
|
---
|
|
|
|
## v0.150.1 {date="2022-01-19"}
|
|
|
|
### Bug fixes
|
|
- Remove duplicate `die` builtin in the `universe` package.
|
|
|
|
---
|
|
|
|
## v0.150.0 {date="2022-01-19"}
|
|
|
|
### 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 {date="2022-01-12"}
|
|
|
|
### Features
|
|
- Add `Get` methods to `metadata`.
|
|
- Optimized `sort |> limit` operations.
|
|
- Add [`location` option](/flux/v0/stdlib/universe/#location) support to the `date` package.
|
|
- 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 {date="2022-01-10"}
|
|
|
|
### Features
|
|
- Report multiple errors from a single `unify` call.
|
|
- Update [`to`](/flux/v0/stdlib/influxdata/influxdb/to/) transformation to use
|
|
narrow transformation.
|
|
- Provide specific error information on function calls.
|
|
- Allow errors to be formatted via `codespan`.
|
|
- Add an `internal/debug.opaque` function.
|
|
- Provide which package exported a symbol.
|
|
- Add timeable support to [`experimental.addDuration()`](/flux/v0/stdlib/experimental/addduration/)
|
|
and [`experimental.subDuration()`](/flux/v0/stdlib/experimental/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 {date="2021-12-14"}
|
|
|
|
### Features
|
|
- Optimize [`union()` transformation](/flux/v0/stdlib/universe/union/).
|
|
- Optimize [`timeShift()` transformation](/flux/v0/stdlib/universe/timeshift/).
|
|
- Add inline documentation to the following packages:
|
|
- experimental/prometheus
|
|
- experimental/query
|
|
- experimental/record
|
|
- experimental/table
|
|
- experimental/usage
|
|
|
|
### Bug fixes
|
|
- Add mutex to the optimized `union` transformation.
|
|
- Ensure arrays are not table streams before calling `Len()`.
|
|
- Disable flakey `geo.filterRows` tests.
|
|
|
|
---
|
|
|
|
## v0.146.0 {date="2021-12-13"}
|
|
|
|
### Features
|
|
- Update `pkg-config` to support `aarch64-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 `epsilon` parameter for `testing.diff` to `0.000001`.
|
|
- Fix unsigned integer conversion tests to correctly use an defined conversion.
|
|
|
|
---
|
|
|
|
## v0.145.0 {date="2021-12-08"}
|
|
|
|
### 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 {date="2021-12-06"}
|
|
|
|
### 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 `GOPATH` in `Dockerfile_build`.
|
|
|
|
---
|
|
|
|
## v0.143.1 {date="2021-11-22"}
|
|
|
|
### Bug fixes
|
|
- Add targets to `rust-toolchain`.
|
|
|
|
---
|
|
|
|
## v0.143.0 {date="2021-11-22"}
|
|
|
|
### Breaking changes
|
|
- Add new parameters to [`difference()`](/flux/v0/stdlib/universe/difference/)
|
|
to ensure [`increase()`](/flux/v0/stdlib/universe/increase/) 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()` and `derivative()` 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 `fluxdoc` error 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 {date="2021-11-22"}
|
|
|
|
### Features
|
|
- Default to erroring dependencies
|
|
|
|
### Bug fixes
|
|
- Fix Queryd panic when using the `experimental/geo` package.
|
|
|
|
---
|
|
|
|
## v0.141.0 {date="2021-11-22"}
|
|
|
|
### Features
|
|
- Add `is_type` to 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 (`<-`) in `fluxdoc`.
|
|
- Fix documentation errors when running `cargo doc`.
|
|
- Reduce the amount of extra parse errors.
|
|
|
|
---
|
|
|
|
## v0.140.0 {date="2021-11-22"}
|
|
|
|
### 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 `fluxdoc` formatting 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 {date="2021-11-01"}
|
|
|
|
### Features
|
|
- Continue type inference through errors at runtime.
|
|
|
|
### Bug fixes
|
|
- Revert `runtime.now()` and related updates.
|
|
|
|
---
|
|
|
|
## v0.138.0 {date="2021-11-01"}
|
|
|
|
### Features
|
|
- Create a BigTable dependency to let Flux mimic or control BigTable API usage.
|
|
- Report multiple type inference errors.
|
|
- Add [bitwise operations](/flux/v0/stdlib/experimental/bitwise/).
|
|
|
|
### Bug fixes
|
|
- Update [`fill()`](/flux/v0/stdlib/universe/fill/) to return tables unchanged
|
|
when using `usePrevious` to fill a non-existent column.
|
|
- Add `runtime.now()` to return the same time throughout a script execution.
|
|
|
|
---
|
|
|
|
## v0.137.0 {date="2021-10-28"}
|
|
|
|
### Features
|
|
- Add support for [Vertica](https://www.vertica.com/) to the [`sql` package](/flux/v0/stdlib/sql/).
|
|
|
|
### Bug fixes
|
|
- Correctly handle HTTP errors from the InfluxDB writer.
|
|
|
|
---
|
|
|
|
## v0.136.0 {date="2021-10-25"}
|
|
|
|
### Features
|
|
- Enable executable examples to documentation generated by `fluxdoc`.
|
|
- Enforces IP validation and timeouts when using `mqtt`.
|
|
- Add an alternate `flux` CLI that starts the REPL if no argument is given.
|
|
- Update lint formatting.
|
|
- Add [`contrib/bonitoo-io/servicenow` package](/flux/v0/stdlib/contrib/bonitoo-io/servicenow/)
|
|
and support for [ServiceNow](https://servicenow.com/) events.
|
|
- Add `component` and `customDetails` parameters to [`pagerduty.sendEvent()`](/flux/v0/stdlib/pagerduty/sendevent/).
|
|
- Update the `fluxdoc` parser to capture more data.
|
|
- Create a formatter for semantic graph.
|
|
|
|
### Bug fixes
|
|
- Add `contrib/bonitoo-io/servicenow` to the list of `fluxdoc` exceptions.
|
|
- Disable write retries for the InfluxDB `http` provider.
|
|
|
|
---
|
|
|
|
## v0.135.1 {date="2021-10-18"}
|
|
|
|
### Features
|
|
- Add a disposable interface for transformations.
|
|
|
|
### Bug fixes
|
|
- Improve error message when regrouping is required in `map()`.
|
|
|
|
---
|
|
|
|
## v0.134.0 {date="2021-10-15"}
|
|
|
|
### Features
|
|
- Add short mode to `fluxdoc dump` command.
|
|
- Add Analyzer API to `libflux`.
|
|
- Add [`timezone` package](/flux/v0/stdlib/timezone/) with fixed offset location.
|
|
- Add [`record.get()` function](/flux/v0/stdlib/experimental/record/get/) 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()`](/flux/v0/stdlib/experimental/prometheus/histogramquantile/)
|
|
to support multiple histograms and metric format versions.
|
|
|
|
---
|
|
|
|
## v0.133.0 {date="2021-10-04"}
|
|
|
|
### Features
|
|
- Expose location functionality to [`window()`](/flux/v0/stdlib/universe/window/),
|
|
[`aggregateWindow()`](/flux/v0/stdlib/universe/aggregatewindow/), and
|
|
[`experimental.window()`](/flux/v0/stdlib/experimental/window/).
|
|
- Add location functionality to the `interval` package.
|
|
- Add methods to convert time values to and from local clock time.
|
|
- Add [`mqtt.publish()` function](/flux/v0/stdlib/experimental/mqtt/publish/).
|
|
- Add [`retain` parameter](/flux/v0/stdlib/experimental/mqtt/to/#retain) to
|
|
[`mqtt.to`](/flux/v0/stdlib/experimental/mqtt/to/).
|
|
|
|
### Bug fixes
|
|
- Add `range()` before `window()` to set query time bounds in tests.
|
|
- Use a new `Fresher` instance for each package.
|
|
|
|
---
|
|
|
|
## v0.132.0 {date="2021-09-28"}
|
|
|
|
### Features
|
|
- Copy location-related code from the Go `time` package.
|
|
- Create a `Vector` monotype.
|
|
- Refactor and optimize [`derivative()` transformation](/flux/v0/stdlib/universe/derivative/).
|
|
- Add new [InfluxDB sample datasets](/flux/v0/stdlib/influxdata/influxdb/sample/data/#available-influxdb-sample-datasets)
|
|
and [`sample.alignToNow()`](/flux/v0/stdlib/influxdata/influxdb/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 `Staticcheck` linter in `executetest`.
|
|
- Reformat non-formatted Flux files.
|
|
- Make builds reproducible by ordering package members in the `doc` package.
|
|
- Prevent the optimized `derivative()` from attempt to replicate a non-existent bug.
|
|
- Update [`events.duration()`](/flux/v0/stdlib/contrib/tomhollingworth/events/duration/)
|
|
to properly handle multiple buffers.
|
|
|
|
---
|
|
|
|
## v0.131.0 {date="2021-09-20"}
|
|
|
|
### Features
|
|
- Update `group` to use new `GroupTransformation` interface.
|
|
- Add [`experimental/record` package](/flux/v0/stdlib/experimental/record/).
|
|
- Embed compiled Flux standard library instead of compiling at runtime.
|
|
- Add [`contrib/bonitoo-io/hex` package](/flux/v0/stdlib/contrib/bonitoo-io/hex/)
|
|
to work with hexadecimal string values.
|
|
|
|
### Bug fixes
|
|
- Disallow setting [`allowAllFiles` parameter](https://github.com/go-sql-driver/mysql#allowallfiles)
|
|
in [MySQL DSNs](/flux/v0/query-data/sql/mysql/#mysql-data-source-name).
|
|
- Downgrade [Snowflake](/flux/v0/query-data/sql/snowflake/) version.
|
|
- Add _null_ support to optimized `repeat` function.
|
|
|
|
---
|
|
|
|
## v0.130.0 {date="2021-09-15"}
|
|
|
|
### Features
|
|
- Add narrow state transformation transport.
|
|
|
|
---
|
|
|
|
## v0.129.0 {date="2021-09-14"}
|
|
|
|
### Features
|
|
- Make `flux-dump-docs` use a nested documentation structure.
|
|
|
|
### Bug fixes
|
|
- Add `boolean` package to prelude.
|
|
- Delete obsolete Go formatter code.
|
|
- Fix `unknown type` panic when using `difference()`.
|
|
|
|
---
|
|
|
|
## v0.128.0 {date="2021-09-07"}
|
|
|
|
### Features
|
|
- Add [`sampledata` package](/flux/v0/stdlib/sampledata/) with basic sample datasets.
|
|
- Add `GroupTransformation` transport.
|
|
|
|
---
|
|
|
|
## v0.127.3 {date="2021-09-01"}
|
|
|
|
### Bug fixes
|
|
- Add `FormatDuration` method that can be exported in other repositories.
|
|
|
|
---
|
|
|
|
## v0.127.2 {date="2021-09-01"}
|
|
|
|
### Bug fixes
|
|
- Remove `flux wasm` crate and moved it to `lsp`.
|
|
- Delete obsolete packages.
|
|
- Add `_time` to status sorting.
|
|
- Fix panic with `unknown type invalid` in `reduce()` function.
|
|
|
|
---
|
|
|
|
## v0.127.1 {date="2021-08-30"}
|
|
|
|
### Bug fixes
|
|
- `limit()` correctly resets the offset after processing a partial buffer.
|
|
|
|
---
|
|
|
|
## v0.127.0 {date="2021-08-26"}
|
|
|
|
### Features
|
|
- Create an executable to retrieve all `stdlib` documentation and updated WASM functions.
|
|
- Implement `transport` in aggregate transformations.
|
|
- Add documentation site links and fix `flux_types` issue.
|
|
|
|
### Bug fixes
|
|
- `fill()` function fails when the specified fill column doesn't exist.
|
|
- Add `link` parameter to function structs.
|
|
|
|
---
|
|
|
|
## v0.126.0 {date="2021-08-19"}
|
|
|
|
### Features
|
|
- Update `filter()` to use narrow transformation.
|
|
|
|
### Bug fixes
|
|
- Return JSON for WASM.
|
|
- Check both dynamic types and static values in `strings` package.
|
|
- Check both dynamic types and static values in `regexp` package.
|
|
- Change `die` error code to invalid.
|
|
|
|
---
|
|
|
|
## v0.125.0 {date="2021-08-11"}
|
|
|
|
### 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/webexteams` package](/flux/v0/stdlib/contrib/sranka/webexteams/).
|
|
- 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 {date="2021-08-03"}
|
|
|
|
### 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 `sortedPivot` and update `sortedPivot` kind.
|
|
- Derive `Copy` on `ast::Position`.
|
|
- Update `to()` function to properly close the writer on error.
|
|
- Update `libflux` include paths to use `pkg-config`.
|
|
- Properly copy record types with no `extends` parameter.
|
|
|
|
---
|
|
|
|
## v0.123.0 {date="2021-07-19"}
|
|
|
|
### Breaking changes
|
|
- Remove the `sleep()` function.
|
|
|
|
### Features
|
|
- Optimize [`pivot()` transformation](/flux/v0/stdlib/universe/pivot/).
|
|
- Add [InfluxDB sample data package](/flux/v0/stdlib/influxdata/influxdb/sample/).
|
|
- Use `table.fill()` when `aggregateWindow(createEmpty: true)` is used.
|
|
|
|
---
|
|
|
|
## v0.122.0 {date="2021-07-13"}
|
|
|
|
### Features
|
|
- Add `--skip` flag to the `flux test` command to skip specific tests.
|
|
|
|
---
|
|
|
|
## v0.121.0 {date="2021-07-12"}
|
|
|
|
### Features
|
|
- Update [`experimental.to()`](/flux/v0/stdlib/experimental/to/)
|
|
to use the Flux `influxdb` provider.
|
|
|
|
---
|
|
|
|
## v0.120.1 {date="2021-07-06"}
|
|
- _Add inline Flux function documentation._
|
|
|
|
---
|
|
|
|
## v0.120.0 {date="2021-07-06"}
|
|
|
|
### Features
|
|
- Bootstrap documentation methods.
|
|
|
|
### Bug fixes
|
|
- Reverse [`math.atan2()`](/flux/v0/stdlib/math/atan2/) parameters.
|
|
- Fix documentation headers in `stdlib`.
|
|
- Distinct `testcase` should not use `testing.load()`.
|
|
- `movingAverage()` creates columns with the same length when `n` is 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 {date="2021-06-29"}
|
|
- _Add inline Flux function documentation._
|
|
|
|
---
|
|
|
|
|
|
## v0.118.1 {date="2021-06-15"}
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.118.0 {date="2021-06-15"}
|
|
|
|
### Features
|
|
- Add `exclude` parameter to `pagerduty.dedupKey()`.
|
|
|
|
### Bug fixes
|
|
- Ensure PagerDuty tests include a `_value` column.
|
|
- Add length check to CSV annotation parsing.
|
|
- Change `FunctionLiteral` precedence to preserve parentheses.
|
|
|
|
---
|
|
|
|
## v0.117.3 {date="2021-06-07"}
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.117.2 {date="2021-06-07"}
|
|
|
|
### Bug fixes
|
|
- Remove `tabstop` processing from formatter.
|
|
- Support dividing IEEE float values by zero.
|
|
- Fix multiline collapse when formatting function parameters.
|
|
- Reclassify `map type` error as `user` error.
|
|
- Fix acceptance tests to catch different timestamps.
|
|
|
|
---
|
|
|
|
## v0.117.1 {date="2021-06-01"}
|
|
|
|
### Bug fixes
|
|
- Update `group_no_agg_table` acceptance test to run in a consistent order.
|
|
- Remove `xcc.sh` release dependency.
|
|
- Fix `staticcheck` linter failures.
|
|
- Replace erroneous line deletions.
|
|
|
|
---
|
|
|
|
## v0.117.0 {date="2021-05-24"}
|
|
|
|
### Features
|
|
- [`to()`](/flux/v0/stdlib/influxdata/influxdb/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 `comrak` dependency.
|
|
- Set `CARGO_HOME` after removing privileges.
|
|
- Log uneven columns found when processing tables.
|
|
- Audit and clean up the Docker build image.
|
|
- Switch default InfluxDB port from `9999` to `8086`.
|
|
- Add tests for window offset behavior.
|
|
- Update formatting for conditional expressions.
|
|
- Fix string interpolation for basic types.
|
|
|
|
---
|
|
|
|
## v0.116.0 {date="2021-05-17"}
|
|
|
|
### Features
|
|
- Add Jaeger tracing information to profile metadata.
|
|
- Add `flux fmt` step to the continuous integration pipeline.
|
|
- Update the `window` implementation to use `interval.Window`.
|
|
- Add [`today()` function](/flux/v0/stdlib/universe/today/).
|
|
|
|
### Bug fixes
|
|
- Remove deadlock when an error occurs while the dispatcher is stopping.
|
|
- Prevent errors caused by the the auto-formatter removing brackets around `if` expressions.
|
|
- Auto-format remaining Flux files.
|
|
|
|
---
|
|
|
|
## v0.115.0 {date="2021-05-11"}
|
|
|
|
### Features
|
|
- Add [Alerta notifications support](/flux/v0/stdlib/contrib/bonitoo-io/alerta/).
|
|
- Add [`table.fill()` function](/flux/v0/stdlib/experimental/table/fill/)
|
|
to fill empty tables with a single row.
|
|
- Add string formatting to `dict` type.
|
|
|
|
### Bug fixes
|
|
- Refactor semantic printing of types.
|
|
- Do not remove escape characters when auto-formatting.
|
|
- Add `0.0.0.0` to URL validator.
|
|
- Add new display API for values.
|
|
- Auto-format Flux files in `stdlib/testing`.
|
|
|
|
---
|
|
|
|
## v0.114.1 {date="2021-05-04"}
|
|
|
|
### Bug fixes
|
|
- Upgrade `mssqldb` dependency for Go 1.16.
|
|
- Format Flux files in `stdlib`.
|
|
|
|
---
|
|
|
|
## v0.114.0 {date="2021-05-03"}
|
|
|
|
### Features
|
|
- Add `debug.slurp()` and `debug.sink()`.
|
|
- Add [`experimental/influxdb`](/flux/v0/stdlib/experimental/influxdb/)
|
|
and [`experimental/usage`](/flux/v0/stdlib/experimental/usage/) packages.
|
|
- Add `fmt` subcommand to the `flux` CLI to apply formatting to Flux files.
|
|
|
|
### Bug fixes
|
|
- Format Flux files in `stdlib` and `stdlib/testing`.
|
|
- Update the macOS SDK for Go 1.16.
|
|
- Revert check for uneven columns.
|
|
- Wait for the dispatcher to finish before finishing query.
|
|
- Remove `codecov` job.
|
|
|
|
## v0.113.0 {date="2021-04-21"}
|
|
|
|
### Features
|
|
- Add ported table test.
|
|
- Create `astutil` package for AST utilities such as formatting.
|
|
|
|
### Bug fixes
|
|
- Update expected output for acceptance test `group_no_agg_table`.
|
|
|
|
---
|
|
|
|
## v0.112.1 {date="2021-04-12"}
|
|
|
|
### Bug fixes
|
|
- Add `Comment` fields to Go AST structs to preserve comments in the AST.
|
|
|
|
----
|
|
|
|
## v0.112.0 {date="2021-04-06"}
|
|
|
|
### Features
|
|
- Add [`testing.load`](/flux/v0/stdlib/testing/load/) for using raw tables in tests.
|
|
- Add remaining experimental built-in types without column parameters.
|
|
- Add [OEE (overall equipment effectiveness) package](/flux/v0/stdlib/experimental/oee/).
|
|
|
|
### Bug fixes
|
|
- Use new crate name in `buildinfo`.
|
|
- Add bounded time ranges to fix test cases.
|
|
- Move `derive` helper attribute after `derive` macro.
|
|
|
|
---
|
|
|
|
## v0.111.0 {date="2021-03-30"}
|
|
|
|
### Features
|
|
- Use `FnvHasher` for hash maps.
|
|
- Add [`tickscript` package](/flux/v0/stdlib/contrib/bonitoo-io/tickscript/).
|
|
|
|
### Bug fixes
|
|
- When finding the parent directory's root, skip the current directory.
|
|
- Fix `if else` statement in `aggregate.window()`.
|
|
|
|
---
|
|
|
|
## v0.109.1 {date="2021-03-24"}
|
|
|
|
### Bug fixes
|
|
- Perform testing checks as part of query `done`.
|
|
- Delimited multi-result encoder properly releases results before checking for errors.
|
|
|
|
---
|
|
|
|
## v0.109.0 {date="2021-03-23"}
|
|
|
|
### 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 {date="2021-03-15"}
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.108.0 {date="2021-03-15"}
|
|
|
|
### Features
|
|
- Add [BigPanda notification support](/flux/v0/stdlib/contrib/rhajek/bigpanda/).
|
|
- Add [Zenoss notifications support](/flux/v0/stdlib/contrib/bonitoo-io/zenoss/).
|
|
- Add [VictorOps notifications support](/flux/v0/stdlib/contrib/bonitoo-io/victorops/).
|
|
|
|
### Bug fixes
|
|
- Classify "Option not found error" as internal.
|
|
- Remove `as_user` parameter from `slack.message` payload.
|
|
|
|
## v0.107.0 {date="2021-03-09"}
|
|
|
|
### Features
|
|
- Add new [`experimental.kaufmansAMA()` function](/flux/v0/stdlib/experimental/kaufmansama/) signature.
|
|
- Add new [experimental aggregate function](/flux/v0/stdlib/experimental/#experimental-functions) signatures.
|
|
- Add `extends` capability to `testcase` block to extend tests using a relative path to another file.
|
|
|
|
### Bug fixes
|
|
- Update CSV package to handle large files.
|
|
- Add tests and fix the `NoHeader` configuration for the `csv` decoder.
|
|
- Remove `interval` package and documentation.
|
|
- Disable line wrap linter.
|
|
- Fix typo in comment.
|
|
|
|
---
|
|
|
|
## v0.106.0 {date="2021-02-22"}
|
|
|
|
### Features
|
|
- Add new [experimental `integral()` function](/flux/v0/stdlib/experimental/integral/) signature.
|
|
- Add new [experimental `window()` function](/flux/v0/stdlib/experimental/window/) signature.
|
|
|
|
# Bug fixes
|
|
- Switch from `HashMap` to `BTreeMap` in 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 {date="2021-02-03"}
|
|
|
|
### Features
|
|
- Add `interval` package to `window` transformation.
|
|
|
|
---
|
|
|
|
## v0.104.0 {date="2021-02-02"}
|
|
|
|
### Features
|
|
- Reintroduce `IsZero` method on time windows.
|
|
|
|
### Bug fixes
|
|
- Break parse loop when invalid array item is found.
|
|
|
|
---
|
|
|
|
## v0.103.0 {date="2021-02-01"}
|
|
|
|
### Features
|
|
- Add `testing/expect` package for test expectations.
|
|
|
|
### Bug fixes
|
|
- Change the default test discovery path from `./stdlib` to `.`.
|
|
|
|
---
|
|
|
|
## v0.102.0 {date="2021-01-25"}
|
|
|
|
### Features
|
|
- Add `fluxdoc` command 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 `interval` package.
|
|
|
|
---
|
|
|
|
## v0.101.0 {date="2021-01-19"}
|
|
|
|
### Features
|
|
- Validate IP addresses from the dialer `Control` function.
|
|
- Expose `test` command to be used by external libraries.
|
|
|
|
---
|
|
|
|
## v0.100.0 {date="2021-01-07"}
|
|
|
|
### Features
|
|
- Add ability to execute tests from `.tar` and `.zip` archives.
|
|
|
|
### Bug fixes
|
|
- Fix endpoint examples in source code.
|
|
|
|
---
|
|
|
|
## v0.99.0 {date="2020-12-14"}
|
|
|
|
### Features
|
|
- Evaluate [dictionary literals](/flux/v0/spec/expressions/#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 `extern` parsing code to return a more descriptive error message.
|
|
- Do not allow containers within a record to be null.
|
|
- Retrieve `now` option before running a Flux script.
|
|
- Fix misspellings in the [Flux README](https://github.com/influxdata/flux/blob/master/README.md).
|
|
|
|
---
|
|
|
|
## v0.98.0 {date="2020-12-07"}
|
|
|
|
### Features
|
|
- Transform `testcase` AST into pure flux.
|
|
- Added Rust scanner.
|
|
|
|
### Bug fixes
|
|
- Substring method now works on more indices.
|
|
- Fix typos in `Dockerfile_build`.
|
|
|
|
---
|
|
|
|
## v0.97.0 {date="2020-12-01"}
|
|
|
|
### Features
|
|
- Add dict package for interacting with dictionaries.
|
|
- Added Ragel 7 to the Dockerfiles.
|
|
- Add support for `testcase` statement.
|
|
- Add Dictionary type syntax.
|
|
- Add Dictionary type unification rule.
|
|
|
|
---
|
|
|
|
## v0.96.0 {date="2020-11-23"}
|
|
|
|
### Features
|
|
- Create a Dictionary type interface and implementation.
|
|
- Add Dictionary type (dict) to the semantic flatbuffers.
|
|
|
|
---
|
|
|
|
## v0.95.0 {date="2020-11-16"}
|
|
|
|
### Features
|
|
- Use `tabwriter` to vertically align tab stops.
|
|
|
|
### Bug fixes
|
|
- Format types in error messages according to Flux grammar.
|
|
|
|
---
|
|
|
|
## v0.94.0 {date="2020-11-09"}
|
|
|
|
### Features
|
|
- Add "everything" Rust benchmark.
|
|
|
|
### Bug fixes
|
|
- Add multiline support to the Flux formatter.
|
|
- Format types using letters instead of numbers.
|
|
|
|
---
|
|
|
|
## v0.93.0 {date="2020-11-02"}
|
|
|
|
### Features
|
|
- Ensure query plan nodes have unique IDs.
|
|
|
|
---
|
|
|
|
## v0.92.0 {date="2020-10-30"}
|
|
|
|
### Features
|
|
- Add `fluxinit` package as an alternative to importing `builtin`.
|
|
- Add [series `cardinality()` function](/flux/v0/stdlib/influxdata/influxdb/cardinality/) 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 {date="2020-10-26"}
|
|
|
|
### Features
|
|
- Aggregate results for `operator` profiler.
|
|
- Add contributed [`events` package](/flux/v0/stdlib/contrib/tomhollingworth/events/).
|
|
- Use `tableFind` and related functions with profiler results.
|
|
- Add duration support to [`orTime` parameter](/flux/v0/stdlib/influxdata/influxdb/tasks/lastsuccess/#ortime)
|
|
of `lastSuccess()`.
|
|
|
|
### Bug fixes
|
|
- Configure the profiler even if `operator` profiler 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/tasks` package with new location of `execute` dependencies.
|
|
- Improve multiline and parentheses support in formatter.
|
|
|
|
---
|
|
|
|
## v0.90.0 {date="2020-10-19"}
|
|
|
|
### Features
|
|
- Add [Sensu package](/flux/v0/stdlib/contrib/sranka/sensu).
|
|
|
|
### Bug fixes
|
|
- Verify dependencies in `Dockerfile_build`.
|
|
- Fix panic in `experimental.join`.
|
|
|
|
---
|
|
|
|
## v0.89.0 {date="2020-10-12"}
|
|
|
|
### Features
|
|
- Add support for SAP HANA databases.
|
|
- Add support for comments preceding `builtin` statements in code formatting.
|
|
|
|
---
|
|
|
|
## v0.88.0 {date="2020-10-05"}
|
|
|
|
### Features
|
|
- Move functions from `v1` package to `schema` package.
|
|
|
|
### 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 {date="2020-10-01"}
|
|
|
|
### Bug fixes
|
|
- Fetch ragel dependency over HTTPS.
|
|
- Ensure `ast.TextPart` is properly escaped when formatting.
|
|
- Elapsed with multiple buffers per table.
|
|
|
|
---
|
|
|
|
## v0.87.0 {date="2020-09-28"}
|
|
|
|
### 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 {date="2020-09-21"}
|
|
|
|
### 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 {date="2020-09-14"}
|
|
|
|
### Features
|
|
- Add `Aggregate.window` for an alternative windowing aggregate.
|
|
|
|
### Bug fixes
|
|
- Remove months parameter.
|
|
|
|
---
|
|
|
|
## v0.84.0 {date="2020-09-09"}
|
|
|
|
### Breaking changes
|
|
- Remove time-column parameters from `range()` function and update type signature.
|
|
|
|
### Features
|
|
- Add [Opsgenie package](/flux/v0/stdlib/contrib/sranka/opsgenie/).
|
|
- Implement [`lastSuccess()`](/flux/v0/stdlib/influxdata/influxdb/tasks/lastsuccess/) in the `tasks` package.
|
|
- 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 {date="2020-09-02"}
|
|
|
|
### Bug fixes
|
|
- Single value integral interpolation.
|
|
|
|
---
|
|
|
|
## v0.83.0 {date="2020-09-01"}
|
|
|
|
### Features
|
|
- Improve window errors.
|
|
- Add [BigQuery](https://cloud.google.com/bigquery) support to
|
|
[`sql` package](/flux/v0/stdlib/sql/).
|
|
- Add `TypeExpression` to `BuiltinStmt` and fix tests.
|
|
- Add time-weighted average ([`timeWeightedAvg()` function](/flux/v0/stdlib/universe/timeweightedavg/)).
|
|
- Update [`integral()`](/flux/v0/stdlib/universe/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 {date="2020-08-25"}
|
|
|
|
### Features
|
|
- Add [`tasks.lastSuccess` function](/flux/v0/stdlib/influxdata/influxdb/tasks/lastsuccess/)
|
|
to retrieve the time of the last successful run of an InfluxDB task.
|
|
|
|
---
|
|
|
|
## v0.82.1 {date="2020-08-25"}
|
|
- _Internal code cleanup._
|
|
|
|
---
|
|
|
|
## v0.82.0 {date="2020-08-24"}
|
|
|
|
### Features
|
|
- Add the [`profiler` package](/flux/v0/stdlib/profiler/).
|
|
- 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 {date="2020-08-17"}
|
|
|
|
### 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 {date="2020-08-12"}
|
|
|
|
### Features
|
|
- Add `nulls` parameter to `gen.tables()`.
|
|
|
|
### Bug fixes
|
|
- Revert the timeable constraint for integer.
|
|
- Make socket/sql URL test robust.
|
|
|
|
---
|
|
|
|
## v0.79.0 {date="2020-08-11"}
|
|
|
|
### 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 {date="2020-08-10"}
|
|
|
|
### Breaking changes
|
|
- Removed `correlationKey` parameter from `geo.toRows` and `geo.shapeData`.
|
|
|
|
### Features
|
|
- Add functions to convert semantic monotype to AST type.
|
|
- Add BigQuery support.
|
|
- Rust flatbuffer serialization for `MonoType` and `TypeExpression`.
|
|
- Extend with Geo package with GIS functions and
|
|
[unit support](/flux/v0/stdlib/experimental/geo/#distance-units).
|
|
|
|
### Bug fixes
|
|
- String interpolation in arrays.
|
|
|
|
---
|
|
|
|
## v0.77.1 {date="2020-08-03"}
|
|
|
|
### Bug fixes
|
|
- Write tests and fix issues with `rows.map`.
|
|
|
|
---
|
|
|
|
## v0.77.0 {date="2020-08-03"}
|
|
|
|
### Features
|
|
- Add a faster `map()` function _(user-contributed `/contrib/jsternberg/rows` package)_.
|
|
- Add an [`influxdb.select()` function](/flux/v0/stdlib/contrib/jsternberg/influxdb/select/) _(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_function` in `parser/mod.rs`.
|
|
- Add an alternative aggregate package to user-contributed packages.
|
|
|
|
### Bug fixes
|
|
- Fix string interpolation in arrays.
|
|
|
|
---
|
|
|
|
## v0.76.1 {date="2020-07-27"}
|
|
|
|
### Bug fixes
|
|
- Fix data race in metadata.
|
|
|
|
---
|
|
|
|
## v0.76.0 {date="2020-07-27"}
|
|
|
|
### Features
|
|
- Add query plan to query metadata.
|
|
|
|
---
|
|
|
|
## v0.75.0 {date="2020-07-27"}
|
|
|
|
### Features
|
|
- Update `parse_record` to return `MonoType` for consistent results from functions
|
|
used by `parse_monotype`.
|
|
- Internal command utility for comparing CSV tables.
|
|
- Update `mod.rs` with `parse_record`.
|
|
- Add planner tests for window min and max.
|
|
- CRUD options and properties.
|
|
- Update `mod.rs` with `parse_constraints`.
|
|
- Update `mod.rs` with `ArrayType` and add `Array` to the `Monotype` enumeration.
|
|
|
|
### Bug fixes
|
|
- Statuses are always sorted by source timestamp.
|
|
- Multiple `do` calls will fail with an empty table.
|
|
|
|
---
|
|
|
|
## v0.74.0 {date="2020-07-21"}
|
|
|
|
### Features
|
|
- Add `discord.endpoint()` function.
|
|
- Enhance the static table API.
|
|
- Update `mod.rs` with `parse_type_expression` and other supporting functions.
|
|
- Expose static table package and table diff functions.
|
|
- `Find_var_type()` API.
|
|
- Add `stringify` method 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 {date="2020-07-13"}
|
|
|
|
### 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 {date="2020-07-09"}
|
|
|
|
### Bug fixes
|
|
- Correctly classify "duplicate yield" error.
|
|
|
|
---
|
|
|
|
## v0.72.0 {date="2020-07-09"}
|
|
|
|
### Features
|
|
- Update `from()` to use `Timeable`.
|
|
|
|
### Bug fixes
|
|
- Fix appending an array of booleans with null values.
|
|
- Pass the context to the planner when using the table object compiler.
|
|
- Add `diff` output to release script on error.
|
|
- Appending empty tables to a buffered builder normalizes the schema.
|
|
- Remove `bad_sqlite_path1` test.
|
|
- Classify spec build errors as user errors.
|
|
- Verify index expression bounds in evaluation.
|
|
- Substitute array element types correctly.
|
|
|
|
---
|
|
|
|
## v0.71.1 {date="2020-07-03"}
|
|
|
|
### Bug fixes
|
|
- Add a check to ensure `every` is non-negative.
|
|
|
|
---
|
|
|
|
## v0.71.0 {date="2020-06-30"}
|
|
|
|
### Features
|
|
- Apply `Timeable` constraint to integer type to support integer values in
|
|
time-related function parameters.
|
|
- Implement schema mutation functions without performing any copies.
|
|
- Add [`http.pathEscape()` function](/flux/v0/stdlib/http/pathescape/).
|
|
|
|
---
|
|
|
|
## v0.70.0 {date="2020-06-29"}
|
|
### Features
|
|
- Update all `date` functions to accept time and duration types.
|
|
- Add [Microsoft Teams package](/flux/v0/stdlib/contrib/sranka/teams/).
|
|
- Evaluate and store `now` in execution dependencies for `tableFind()`.
|
|
- Add `Timeable` constraint for time and duration types.
|
|
- Add [SQL Server support](/flux/v0/stdlib/sql/from/#query-a-sql-server-database) to `sql` package.
|
|
- Add [Telegram package](/flux/v0/stdlib/contrib/sranka/telegram/).
|
|
- Add [Amazon Athena support](/flux/v0/stdlib/sql/from/#query-an-amazon-athena-database) to `sql` package.
|
|
- 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 `with` operator is used.
|
|
- Include `stdlib` Flux dependencies from the Flux `build.rs`.
|
|
- Include a hash of the sources for `libflux`.
|
|
- Flux test for [experimental `json.parse()`](/flux/v0/stdlib/experimental/json/parse/).
|
|
- Reorder `go generate` call to `libflux` in `stdlib`.
|
|
|
|
---
|
|
|
|
## v0.69.2 {date="2020-06-10"}
|
|
|
|
### Bug fixes
|
|
- Include a hash of sources for `libflux`.
|
|
|
|
---
|
|
|
|
## v0.69.1 {date="2020-06-09"}
|
|
|
|
### Bug fixes
|
|
- Fix experimental `json.parse()` test.
|
|
|
|
---
|
|
|
|
## v0.69.0 {date="2020-06-08"}
|
|
|
|
### Features
|
|
- Add [Discord package](/flux/v0/stdlib/contrib/chobbs/discord/)
|
|
_(contributed by [@chobbs](https://github.com/chobbs))_.
|
|
- Add [`json.parse()` function](/flux/v0/stdlib/experimental/json/parse/).
|
|
|
|
### Bug fixes
|
|
- Adjust error handling in Flux `date` package.
|
|
|
|
---
|
|
|
|
## v0.68.0 {date="2020-05-28"}
|
|
This version of Flux introduces an updated type inference system that improves
|
|
performance, error messaging, and usability of the
|
|
[Flux Language Server Protocol (LSP)](https://github.com/influxdata/flux-lsp).
|
|
|
|
### Breaking Changes
|
|
- Change signature of `group()` function.
|
|
|
|
### Features
|
|
- Add [`fieldKeys()`](/flux/v0/stdlib/influxdata/influxdb/v1/fieldkeys/) and
|
|
[`measurementFieldKeys()`](/flux/v0/stdlib/influxdata/influxdb/v1/measurementfieldkeys/)
|
|
to v1 package.
|
|
- Add a context to `plantest.RuleTestCase`.
|
|
- Add Snowflake support to SQL package.
|
|
- Add [`experimental.chain()`](/flux/v0/stdlib/experimental/chain/) function.
|
|
- Add semantic nodes for bad statement and bad expression.
|
|
- Add [`findColumn()`](/flux/v0/stdlib/universe/findcolumn/)
|
|
and [`findRecord()`](/flux/v0/stdlib/universe/findrecord/) functions.
|
|
- Return `false` if `contains()` 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()` and `v1.databases()` calls.
|
|
- Add support for static linking.
|
|
- Add `influxdb` source.
|
|
- Add support for `pkg-config`.
|
|
- Transform semantic nodes back to AST nodes.
|
|
- Handle multi-file packages.
|
|
- Make `Eval()` and `EvalAST()` use libflux for parsing and analysis.
|
|
- Add `lookuptype` function for stdlib builtins.
|
|
|
|
### Bug Fixes
|
|
- Re-enable Clippy linter rule match single binding.
|
|
- Fix bug in object equal method.
|
|
- Add builtin formatting.
|
|
- Implement `TimeBounds` for `influxdb.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 `WindowProcedureSpec` in `Copy()`.
|
|
- Run `go generate` on libflux when `go generate` is 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 `null` keyword in `extern` field.
|
|
- Address issues in `RemoveTrivialFilterRule`.
|
|
- Bind appropriate interpreter when evaluating functions.
|
|
- Convert `HashMap` in semantic package to `BTreeMap`.
|
|
- Use static linking when creating the Valgrind test.
|
|
- Update `flatbuffers` dependency.
|
|
- Fix JSON serialization of Rust AST.
|
|
- Remove unused environment variables.
|
|
- Make `merge_packages` allow no package clauses.
|
|
- Do not call `CheckKind` when evaluating logical expressions.
|
|
- Force the Go libflux wrapper to rebuild using `go generate`.
|
|
- Adjust `test-bench` config for Circle CI.
|
|
- Fix Valgrind test code.
|
|
- Let Rust parser parse with file name.
|
|
- Remove Algorithm-W to-do list.
|
|
- `JoinStr` returns 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 `component` field 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 generate` to generate stdlib.
|
|
- Fix type error in benchmark test.
|
|
- Update `TableObject` test.
|
|
- Do not call `LocalRange` on 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 make `seasonality` optional.
|
|
- Fix type errors in tests.
|
|
- Remove default value from notify data.
|
|
- Allow options to be set in scope.
|
|
- Replace `ScopeComparer` with `ScopeTransformer`.
|
|
- Use `LocalRange` in compile tests.
|
|
- Add missing parameter to type of `to()`.
|
|
- Get `TableObject` test case to compile.
|
|
- Fix typo in test case.
|
|
- Update `TableObjects` to type `Array`.
|
|
- 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 {date="2020-04-28"}
|
|
|
|
### 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 {date="2020-04-14"}
|
|
|
|
### Bug fixes
|
|
- Add bounds to `alignTime()` tests.
|
|
|
|
---
|
|
|
|
## v0.66.0 {date="2020-04-13"}
|
|
|
|
### Features
|
|
- Add [`epsilon` parameter](/flux/v0/stdlib/testing/diff/#epsilon) to `testing.diff()`.
|
|
- Add [`experimental.alignTime()` function](/flux/v0/stdlib/experimental/aligntime/).
|
|
- Add random access group lookup.
|
|
- Add [Pushbullet package](/flux/v0/stdlib/pushbullet/).
|
|
- 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 {date="2020-03-27"}
|
|
|
|
### Features
|
|
- Add [`experimental.join()`](/flux/v0/stdlib/experimental/join/) function.
|
|
- Store comments in the AST and preserve on format.
|
|
- Add [`shapeData()`](/flux/v0/stdlib/experimental/geo/shapedata/) function to Geo package.
|
|
- Expose format to Wasm users.
|
|
|
|
### Bug fixes
|
|
- Reimplement `stateChanges()` function.
|
|
- Remove the `set -x` in the xcc script.
|
|
- Publishes Flux as a public npm package.
|
|
- Pivot message passing.
|
|
|
|
---
|
|
|
|
## v0.64.0 {date="2020-03-11"}
|
|
|
|
### Features
|
|
- Hand-transpile `elapsed()` aggregate.
|
|
- Hand-transpile `cumulative_sum()`.
|
|
- Experimental `csv` package.
|
|
|
|
### 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.compilerScope` with a nil `value.Scope` as base.
|
|
- Influxql-decode to handle the case without tag set.
|
|
|
|
---
|
|
|
|
## v0.63.0 {date="2020-03-03"}
|
|
|
|
### Features
|
|
- Experimental `geo` package.
|
|
- Initial grammar for Flux and a partial grammar for InfluxQL.
|
|
|
|
---
|
|
|
|
## v0.62.0 {date="2020-02-28"}
|
|
|
|
### Features
|
|
- InfluxQL decode and series aggregation tests.
|
|
|
|
### Bug fixes
|
|
- Properly categorize parse errors as "invalid".
|
|
- Fail gracefully when `tableFind` does not have an execution context.
|
|
|
|
---
|
|
|
|
## v0.61.0 {date="2020-02-21"}
|
|
|
|
### 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 {date="2020-02-19"}
|
|
|
|
### Features
|
|
- Add experimental `query` package.
|
|
- 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 `stdlib` package.
|
|
- Deserialize call expressions when arguments are missing.
|
|
- Handled malformed data as well as EOF.
|
|
- Allow unsigned integers to be subtractable.
|
|
- Link both `libflux` and `liblibstd` for flux-config.
|
|
- Link `libstd` into the `lib` directory instead of `libflux`.
|
|
- Flux-config correctly copies `stdlib` when using a module.
|
|
- Add 169.254/16 range to URL validator.
|
|
- Update `uuid` library to improve security.
|
|
- Handle invalid string literals.
|
|
- Remove 'tags' line from local tags.
|
|
|
|
---
|
|
|
|
## v0.59.6 {date="2020-02-13"}
|
|
|
|
### Bug fixes
|
|
- `derivative()` works properly across multiple buffers.
|
|
|
|
---
|
|
|
|
## v0.59.5 {date="2020-01-24"}
|
|
|
|
### Bug fixes
|
|
- Revert window optimizations to fix regression in output row sorting.
|
|
|
|
---
|
|
|
|
## v0.59.4 {date="2020-01-21"}
|
|
|
|
### Bug fixes
|
|
- Remove `tags` line from local tags.
|
|
- Handle malformed data as well as EOF.
|
|
|
|
---
|
|
|
|
## v0.59.3 {date="2020-01-16"}
|
|
|
|
### Bug fixes
|
|
- Link both `libflux` and `libstd` for flux-config.
|
|
|
|
---
|
|
|
|
## v0.59.2 {date="2020-01-16"}
|
|
|
|
### Bug fixes
|
|
- Link `libstd` into the lib directory instead of `libflux`.
|
|
|
|
---
|
|
|
|
## v0.59.1 {date="2020-01-16"}
|
|
|
|
### Bug fixes
|
|
- Flux-config correctly copies `stdlib` when using a module.
|
|
- UUID security.
|
|
|
|
---
|
|
|
|
## v0.59.0 {date="2020-01-14"}
|
|
|
|
### 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 {date="2020-01-07"}
|
|
|
|
### Bug fixes
|
|
- Skip stdlib symlink was removed erroneously.
|
|
|
|
---
|
|
|
|
## v0.58.3 {date="2020-01-07"}
|
|
|
|
### Bug fixes
|
|
- Ensure stdlib directory is created.
|
|
|
|
---
|
|
|
|
## v0.58.2 {date="2020-01-07"}
|
|
|
|
### Bug fixes
|
|
- Correctly skip the stdlib symlink in libflux.
|
|
|
|
---
|
|
|
|
## v0.58.1 {date="2020-01-07"}
|
|
|
|
### Bug fixes
|
|
- Ensure that stdlib is present when building with flux-config.
|
|
|
|
---
|
|
|
|
## v0.58.0 {date="2020-01-06"}
|
|
|
|
### Features
|
|
- Serialize semantic graph flatbuffers.
|
|
- Implement `onEmpty` parameter for `filter()`.
|
|
- 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 `count` builtin type.
|
|
- Update `experimental.set` builtin type.
|
|
- Update the type of `influxdb.to` to be a passthrough.
|
|
- Update `fill` builtin 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 {date="2019-12-10"}
|
|
|
|
### 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 {date="2019-12-05"}
|
|
|
|
### 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 `timeout` parameter to experimental `http.get()`.
|
|
|
|
### Bug fixes
|
|
- Properly use a fake version with `flux-config` when no version is present.
|
|
- Address Clippy lints.
|
|
- Add bytes monotype to Rust semantic module.
|
|
- Allow underscores (`_`) in type expressions.
|
|
|
|
---
|
|
|
|
## v0.55.1 {date="2019-12-02"}
|
|
|
|
### Bug fixes
|
|
- Fix e2e usage test so that their queries are properly pushed down.
|
|
|
|
---
|
|
|
|
## v0.55.0 {date="2019-12-02"}
|
|
|
|
### 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 {date="2019-11-11"}
|
|
|
|
### Features
|
|
- Expose function to analyze from string.
|
|
- Added semantic expression constraints to libflux.
|
|
- Custom `PartialEq` for 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_rc` public.
|
|
|
|
---
|
|
|
|
## v0.53.0 {date="2019-11-05"}
|
|
|
|
### 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 {date="2019-10-30"}
|
|
|
|
### Features
|
|
- `Visitor` uses `Rc` for nodes.
|
|
- Add `EvalOptions`.
|
|
|
|
### Bug fixes
|
|
- Correctly lex `µs`.
|
|
|
|
---
|
|
|
|
## v0.51.0 {date="2019-10-24"}
|
|
|
|
### 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 `.flux` tests 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 by `histogramQuantile()`.
|
|
- Remove mock allocator.
|
|
- Validate URL for `sql.from()`, `sql.to()`, and `socket.from()`.
|
|
|
|
---
|
|
|
|
## v0.50.2 {date="2019-10-24"}
|
|
|
|
### Bug fixes
|
|
- Make `keep()` and `drop()` throw an error if merging tables with different schemas.
|
|
|
|
---
|
|
|
|
## v0.50.1 {date="2019-10-24"}
|
|
|
|
### 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 {date="2019-10-11"}
|
|
|
|
### Features
|
|
- Add `experimental/prometheus` package.
|
|
- 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 `data` parameter in `monitor.check()`.
|
|
- Return the EOF error when reading metadata.
|
|
- Re-add missing import.
|
|
- Fix broken links in SPEC.
|
|
- Return error from cache.
|
|
- Update the `universe` package 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 {date="2019-09-24"}
|
|
|
|
### 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 {date="2019-09-20"}
|
|
|
|
### 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/quantile` behavior match PromQL `quantile` aggregate.
|
|
|
|
### Bug fixes
|
|
- Passing context to WalkIR.
|
|
- Make `join()` reject input tables lacking `on` columns.
|
|
|
|
---
|
|
|
|
## v0.47.1 {date="2019-09-18"}
|
|
|
|
### Bug fixes
|
|
- Pass dependencies to WalkIR
|
|
|
|
---
|
|
|
|
## v0.47.0 {date="2019-09-13"}
|
|
|
|
### Bug fixes
|
|
- Introduce ParenExpression.
|
|
- Make fmt runs cargo fmt on Rust directories.
|
|
- Update `Hex.Dump` to `hex.EncodeToString`.
|
|
- Integrate the Promql transpiler into Flux.
|
|
|
|
---
|
|
|
|
## v0.46.2 {date="2019-09-12"}
|
|
|
|
### Bug fixes
|
|
- Make `to` use URL validator.
|
|
- Add filesystem to default test dependencies.
|
|
|
|
---
|
|
|
|
## v0.46.1 {date="2019-09-11"}
|
|
|
|
### Bug fixes
|
|
- Add a filesystem service.
|
|
- Do a pointer comparison for table objects instead of a deep compare.
|
|
|
|
---
|
|
|
|
## v0.46.0 {date="2019-09-10"}
|
|
|
|
### Features
|
|
- Replace EnvironmentSecretService with EmptySecret….
|
|
- Source location for rust parser.
|
|
|
|
### Bug fixes
|
|
- Push error for bad string expression.
|
|
- Remove `token` parameter from `pagerduty.endpoint`.
|
|
|
|
---
|
|
|
|
## v0.45.2 {date="2019-09-10"}
|
|
|
|
### Bug fixes
|
|
- Push the tag before running goreleaser.
|
|
- Additional opentracing spans for debugging query flow.
|
|
|
|
---
|
|
|
|
## v0.45.1 {date="2019-09-09"}
|
|
|
|
### Bug fixes
|
|
- Ensure `http.post` respects the context.
|
|
|
|
---
|
|
|
|
## v0.45.0 {date="2019-09-06"}
|
|
|
|
### 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 `CheckKind` in `memberEvaluator`.
|
|
|
|
---
|
|
|
|
## v0.44.0 {date="2019-09-05"}
|
|
|
|
### Features
|
|
- Add `http.basicAuth` function.
|
|
- Add measurement filters to `monitor.from` and `monitor.logs`.
|
|
|
|
### Bug fixes
|
|
- changed the default HTTP client to be more robust.
|
|
|
|
---
|
|
|
|
## v0.43.0 {date="2019-09-04"}
|
|
|
|
### Features
|
|
- PagerDuty endpoint for alerts and notifications.
|
|
|
|
---
|
|
|
|
## v0.42.0 {date="2019-08-30"}
|
|
|
|
### Features
|
|
- Add `stateChanges` function.
|
|
|
|
### 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 {date="2019-08-26"}
|
|
|
|
### Features
|
|
- Add ability to validate URLs before making `http.post` requests.
|
|
- Evaluate string interpolation.
|
|
- Implement the `secrets.get` function.
|
|
- 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 calling `Release()`.
|
|
- Add test case for `notify` function.
|
|
- Add missing math import to test case.
|
|
- Make packages aware of options.
|
|
- Resolved `holtWinters` panic.
|
|
- Use non-pointer receiver for `interpreter.function`.
|
|
|
|
---
|
|
|
|
## v0.40.2 {date="2019-08-22"}
|
|
|
|
### Bug fixes
|
|
- Resolved `holtWinters()` panic.
|
|
|
|
---
|
|
|
|
## v0.40.1 {date="2019-08-21"}
|
|
|
|
### Bug fixes
|
|
- Use non-pointer receiver for `interpreter.function`.
|
|
|
|
---
|
|
|
|
## v0.40.0 {date="2019-08-20"}
|
|
|
|
### Breaking changes
|
|
- Update compiler package to use true scope.
|
|
- Add `http` and `json` to prelude.
|
|
|
|
### Features
|
|
- Add `alerts.check()` function.
|
|
- Add `alerts.notify` function.
|
|
- Add `kaufmansER()` and `kaufmansAMA()` 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 `http` and `json` to prelude.
|
|
- Rename all Flux test files to use `_test.flux`.
|
|
|
|
---
|
|
|
|
## v0.39.0 {date="2019-08-13"}
|
|
|
|
{{% warn %}}
|
|
In Flux 0.39.0, `holtWinters()` can cause the query engine to panic.
|
|
**Flux 0.40.2 resolves this panic.**
|
|
{{% /warn %}}
|
|
|
|
### 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 mode `extend`.
|
|
- 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 {date="2019-08-06"}
|
|
|
|
### Features
|
|
- Update selectors to operate on time columns.
|
|
- Add `relativeStrengthIndex()` transformation.
|
|
- Add double and triple exponential average transformations (`doubleEMA()` and `tripleEMA()`).
|
|
- Add `holtWinters()` transformation.
|
|
- Add `keepFirst` parameter to `difference()`.
|
|
- 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 {date="2019-07-24"}
|
|
|
|
- _General cleanup of internal code._
|
|
|
|
---
|
|
|
|
## v0.37.1 {date="2019-07-23"}
|
|
|
|
### Bug fixes
|
|
- Fixed InfluxDB test errors.
|
|
- Add range to tests to pass in InfluxDB.
|
|
|
|
---
|
|
|
|
## v0.37.0 {date="2019-07-22"}
|
|
|
|
### 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 {date="2019-07-12"}
|
|
|
|
### Bug fixes
|
|
- Add helper methods for comparing entire result sets.
|
|
- Map will not panic when a record is `null`.
|
|
|
|
---
|
|
|
|
## v0.36.1 {date="2019-07-10"}
|
|
|
|
### Bug fixes
|
|
- Add `range` call to some end-to-end tests.
|
|
- Fix implementation of `strings.replaceAll`.
|
|
|
|
---
|
|
|
|
## v0.36.0 {date="2019-07-09"}
|
|
|
|
### Features
|
|
- Updated `movingAverage()` and added `timedMovingAverage`.
|
|
- `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 `_time` column.
|
|
- 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()` to `timedMovingAverage` and added new
|
|
`movingAverage()` implementation.
|
|
|
|
---
|
|
|
|
## v0.35.1 {date="2019-07-03"}
|
|
|
|
### Bug fixes
|
|
- Re-add `mergeKey` parameter to `map()` in deprecated state.
|
|
|
|
---
|
|
|
|
## v0.35.0 {date="2019-07-02"}
|
|
|
|
### Breaking changes
|
|
- Remove `mergeKey` parameter from the `map()` function.
|
|
|
|
### Features
|
|
- Add `sql.to()` function.
|
|
- Add `movingAverage()` function.
|
|
- Add `strlen()` and `substring()` functions to the `strings` package.
|
|
|
|
### Bug fixes
|
|
- Remove `mergeKey` parameter from the `map()` function.
|
|
- Parse float types with PostgreSQL.
|
|
|
|
---
|
|
|
|
## v0.34.2 {date="2019-06-27"}
|
|
|
|
### Bug fixes
|
|
- Parse float types with PostgreSQL.
|
|
|
|
---
|
|
|
|
## v0.34.1 {date="2019-06-26"}
|
|
|
|
### 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 {date="2019-06-25"}
|
|
|
|
### Bug fixes
|
|
- Use `strings.Replace` instead of `strings.ReplaceAll` for compatibility.
|
|
|
|
---
|
|
|
|
## v0.33.1 {date="2019-06-20"}
|
|
|
|
### Bug fixes
|
|
- Copy table will report if it is empty correctly.
|
|
|
|
---
|
|
|
|
## v0.33.0 {date="2019-06-18"}
|
|
|
|
### Breaking changes
|
|
- Implement nulls in the compiler runtime.
|
|
|
|
### Features
|
|
- Add Go `regexp` functions 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 `strings` library 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_trimLeft` and `string_trimRight` so that they pass in InfluxDB.
|
|
- Add length check for empty tables in fill.
|
|
|
|
---
|
|
|
|
## v0.32.1 {date="2019-06-10"}
|
|
|
|
### Bug fixes
|
|
- Identify memory limit exceeded errors in dispatcher.
|
|
|
|
---
|
|
|
|
## v0.32.0 {date="2019-06-05"}
|
|
|
|
### 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 {date="2019-05-29"}
|
|
|
|
### Bug fixes
|
|
- Do not call done after calling the function.
|
|
|
|
---
|
|
|
|
## v0.31.0 {date="2019-05-28"}
|
|
|
|
### 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 {date="2019-05-16"}
|
|
|
|
### Features
|
|
- Support for dynamic queries.
|
|
|
|
---
|
|
|
|
## v0.29.0 {date="2019-05-15"}
|
|
|
|
### Breaking changes
|
|
- Make `on` a required parameter to `join()`.
|
|
|
|
### Features
|
|
- Add stream table index functions (
|
|
[`tableFind()`](/flux/v0/stdlib/universe/tablefind/),
|
|
[`getRecord()`](/flux/v0/stdlib/universe/getrecord/),
|
|
[`getColumn()`](/flux/v0/stdlib/universe/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).Done` method.
|
|
- Fix table functions test.
|
|
- Add `column` parameter to `median()`.
|
|
- Modify `median` to work with `aggregateWindow()`.
|
|
- `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 {date="2019-05-01"}
|
|
|
|
### Bug fixes
|
|
|
|
- Fix request results labels to count runtime errors.
|
|
- An error when joining could result in two calls to finish.
|
|
|
|
---
|
|
|
|
## v0.28.2 {date="2019-04-26"}
|
|
|
|
### Bug fixes
|
|
- Preallocate data when constructing a new string array.
|
|
|
|
---
|
|
|
|
## v0.28.1 {date="2019-04-25"}
|
|
|
|
### Bug fixes
|
|
- Make executor respect memory limit from caller.
|
|
|
|
---
|
|
|
|
## v0.28.0 {date="2019-04-24"}
|
|
|
|
### 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 {date="2019-04-22"}
|
|
|
|
### Features
|
|
- Add `trimSuffix` and `trimPrefix` functions 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.
|
|
- `tagKeys` should include a call to `distinct`.
|
|
|
|
---
|
|
|
|
## v0.26.0 {date="2019-04-18"}
|
|
|
|
### Breaking changes
|
|
- Aggregates now accept only a `column` parameter. `columns` not used.
|
|
|
|
### Features
|
|
- Add handling for conditional expressions to type inference.
|
|
- Add `if`/`then`/`else` syntax 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 `json` tag so go vet passes.
|
|
- The controller pump could reference a nil pointer.
|
|
- Create a DependenciesAwareProgram so controller can assign dependencies.
|
|
- Make `Program.Start` start execution synchronously.
|
|
- Read the metadata channel in a separate goroutine.
|
|
- Remove dead code in controller so `staticcheck` passes.
|
|
- Allow Flux unit tests to pass.
|
|
- Require a Github token to perform a release.
|
|
- Change example name to make go vet pass.
|
|
- Make `csv.from` return decode error.
|
|
|
|
---
|
|
|
|
## v0.25.0 {date="2019-04-08"}
|
|
|
|
### 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 {date="2019-04-01"}
|
|
|
|
### Breaking changes
|
|
- Rename `percentile()` function to `quantile()`.
|
|
|
|
### 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 {date="2019-03-26"}
|
|
|
|
### 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 {date="2019-03-18"}
|
|
|
|
### 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 {date="2019-03-06"}
|
|
|
|
### 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 {date="2019-03-05"}
|
|
|
|
### 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 {date="2019-03-01"}
|
|
|
|
### Bug fixes
|
|
- Add AST compiler to mappings.
|
|
|
|
---
|
|
|
|
## v0.21.1 {date="2019-03-01"}
|
|
|
|
### 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 {date="2019-02-25"}
|
|
|
|
### 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 {date="2019-02-20"}
|
|
|
|
### 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 {date="2019-02-11"}
|
|
|
|
### Breaking changes
|
|
- Make `window()` parameters match SPEC.
|
|
- Split FromProcedureSpec into logical and physical specs.
|
|
|
|
### Features
|
|
- Add `contains()` function to check for membership in lists.
|
|
- `test` keyword.
|
|
|
|
### Bug fixes
|
|
- Raw query test case.
|
|
|
|
---
|
|
|
|
## v0.18.0 {date="2019-02-07"}
|
|
|
|
### 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 {date="2019-01-22"}
|
|
|
|
### Features
|
|
- Checks for option dependencies.
|
|
- Add query success and error metrics.
|
|
- Track nested blocks in the parser.
|
|
- Update `aggregateWindow()` to include `createEmpty` as 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 {date="2019-01-17"}
|
|
|
|
### Bug fixes
|
|
- Copy packages for importer copy.
|
|
|
|
---
|
|
|
|
## v0.16.0 {date="2019-01-17"}
|
|
|
|
### 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 `assertEquals` did not check tables without a match in both streams.
|
|
- Clear return for each REPL command.
|
|
|
|
---
|
|
|
|
## v0.15.0 {date="2019-01-16"}
|
|
|
|
### 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 {date="2019-01-14"}
|
|
|
|
### 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 {date="2019-01-07"}
|
|
|
|
### 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 {date="2019-01-02"}
|
|
|
|
### 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 {date="2018-12-18"}
|
|
|
|
### 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 {date="2018-12-17"}
|
|
|
|
### 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.
|
|
- `makefile` for generating the scanner after clean was incorrect.
|
|
|
|
---
|
|
|
|
## v0.9.0 {date="2018-12-11"}
|
|
|
|
### Features
|
|
- Option Editor.
|
|
|
|
### Bug fixes
|
|
- Return the source attribute in the location correctly.
|
|
|
|
---
|
|
|
|
## v0.8.0 {date="2018-12-11"}
|
|
|
|
### Features
|
|
- Rule to chain group operations.
|
|
- Add package and import support to the semantic graph.
|
|
- Add `assertEquals` function 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 {date="2018-12-04"}
|
|
|
|
### Bug Fixes
|
|
- Add missing comparison operators.
|
|
|
|
---
|
|
|
|
## v0.7.3 {date="2018-12-04"}
|
|
|
|
### Bug Fixes
|
|
- Fix the ident statement to use expression suffix. |