0.13.0
版本发布时间: 2024-07-26 01:27:49
PRQL/prql最新发布版本:0.13.0(2024-07-26 01:27:49)
0.13.0 brings a new debug logging framework, a big refactor of the parser, a new highlighter, an **
operator for exponentiation, a few bug fixes, and lots of other changes. It has 153 commits from 11 contributors.
Our work continues on rewriting the resolver and completing prqlc fmt
.
Selected changes:
Language:
-
Parentheses are always required around pipelines, even within tuples. For example:
from artists # These parentheses are now required derive {a=(b | math.abs)} # No change — doesn't affect expressions or function calls without pipelines derive {x = 3 + 4}
This is a small breaking change. The new behavior matches the existing documentation. (@max-sixty, #4775)
-
A new
**
operator for exponentiation. (@aljazerzen & @max-sixty, #4125)
Features:
-
prqlc compile --debug-log=log.html
will generate an HTML file with a detailed log of the compilation process. (@aljazerzen, #4646) - Added
prqlc debug json-schema
command to auto-generate JSON Schema representations of commonly exposed IR types such as PL and RQ. (@kgutwin, #4698) - Add documentation comments to the output of the documentation generator. (@vanillajonathan, #4729)
- Add CLI syntax highlighting to
prqlc
. You can try it asprqlc experimental highlight example.prql
. (@vanillajonathan, #4755)
Fixes:
- Using
in
with an empty array pattern (e.g.expr | in []
) will now output a constantfalse
condition instead of anexpr IN ()
, which is syntactically invalid in some SQL dialects (@Globidev, #4598)
Integrations:
- The Snap package previously released on the edge channel is now released on the stable channel. (@vanillajonathan, #4784)
Internal changes:
-
Major reorganization of
prqlc-parser
—prqlc-ast
is merged intoprqlc-parser
, andprqlc-parser
's files are rearranged, including its exports. This is part of an effort to modularize the compiler by stage, reducing the amount of context that's required to understand a single stage. There will likely be some further changes (more detail in the PR description). (@m-span, #4634)- This is a breaking change for any libraries that depend on
prqlc-parser
(which should be fairly rare).
- This is a breaking change for any libraries that depend on
-
Renamed
prql-compiler-macros
toprqlc-macros
for consistency with other crates (@max-sixty, #4565) -
prql-compiler
, the old name forprqlc
, is removed as a facade toprqlc
. It had been deprecated for a few versions and will no longer be updated. (@max-sixty) -
New benchmarks (@max-sixty, #4654)
New Contributors:
- @Globidev, with #4598
1、 prqlc-0.13.0-1.el7.x86_64.rpm 2.99MB
2、 prqlc-0.13.0-aarch64-apple-darwin.tar.gz 4.22MB
3、 prqlc-0.13.0-aarch64-unknown-linux-musl.tar.gz 5.08MB
4、 prqlc-0.13.0-x86_64-pc-windows-msvc.zip 3.17MB
5、 prqlc-0.13.0-x86_64-unknown-linux-musl.tar.gz 5.23MB
6、 prqlc_0.13.0_amd64.deb 5.15MB
7、 prqlc_0.13.0_arm64.deb 5.01MB
8、 prqlc_c-0.13.0-aarch64-apple-darwin.tar.gz 14.33MB
9、 prqlc_c-0.13.0-aarch64-unknown-linux-musl.tar.gz 12.72MB
10、 prqlc_c-0.13.0-x86_64-pc-windows-msvc.zip 14.98MB
11、 prqlc_c-0.13.0-x86_64-unknown-linux-musl.tar.gz 12.34MB