Bug Fixes
- Fix GitHub Actions workflows and more python versions support
([164](https://github.com/PRQL/pyprql/pull/164),
[`0901392`](https://github.com/PRQL/pyprql/commit/0901392fe4f698acb3db6d9b9fc9b039782643ae))
I noticed that the checks by CI were not actually using the Python version of the matrix, so I'm
fixing that.
I'm also fixing other errors discovered using actionlint and remove nonworking codecov step.
- Fix python versions ([165](https://github.com/PRQL/pyprql/pull/165),
[`fb70408`](https://github.com/PRQL/pyprql/commit/fb70408e183f4d94c103200362702f1274dd4c92))
IPython is not supporting python 3.7
- **magic**: Support `.prql` file with the `--file` arg option
([158](https://github.com/PRQL/pyprql/pull/158),
[`98dfcab`](https://github.com/PRQL/pyprql/commit/98dfcabecef0db540c11e59fce8c2c7c667176ba))
Build System
- Have ReadTheDocs pass ([153](https://github.com/PRQL/pyprql/pull/153),
[`e66b40c`](https://github.com/PRQL/pyprql/commit/e66b40c2d02636ba7facdccc4cc3ec0546eb8322))
- Move some dependencies to dev-dependencies ([152](https://github.com/PRQL/pyprql/pull/152),
[`9b6f2f5`](https://github.com/PRQL/pyprql/commit/9b6f2f58e9fd439495faca6523d2fc7a027e9058))
Chores
- Depends on prql-python 0.7 ([163](https://github.com/PRQL/pyprql/pull/163),
[`d6c82b5`](https://github.com/PRQL/pyprql/commit/d6c82b57e89d818f2e896b11162b95f5ec7186ad))
- Remove outdated PRQL example files ([157](https://github.com/PRQL/pyprql/pull/157),
[`7beeb01`](https://github.com/PRQL/pyprql/commit/7beeb01758ae97a066101279fabc944d761512b8))
Documentation
- Add `compile` function ([154](https://github.com/PRQL/pyprql/pull/154),
[`917062e`](https://github.com/PRQL/pyprql/commit/917062e0850a96c6d7e9623abfb3f0a9c9397263))
And explain how this differs from `prql-python`. Closes 151.
Features
- **magic**: Add `dryrun` config option to only print SQL output
([159](https://github.com/PRQL/pyprql/pull/159),
[`b5a602f`](https://github.com/PRQL/pyprql/commit/b5a602f2873c43666b6fed0d4423270c27e0f484))
`%config PrqlMagic.dryrun=True` allows to just printing without executing output SQL.
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]users.noreply.github.com>
- **magic**: Support PRQL query in line magic ([160](https://github.com/PRQL/pyprql/pull/160),
[`0b0f8d8`](https://github.com/PRQL/pyprql/commit/0b0f8d87f780930d6dd8852cdcbb52353baed2da))
Supports execution of PRQL queries in line magic, like that.
python results = %prql from p = `products.csv` | aggregate [min unitsInStock, max unitsInStock]
This PR also changes the function that performs argument parsing from `sql.parse.magic_args` to
`IPython.core.magic_arguments.parse_argstring`. In SQL we need to use `sql.parse.magic_args`
because the comment character is `--` in SQL. In PRQL, we do not need to consider `--`.
`IPython.core.magic_arguments.parse_argstring` is more strict and will raise an error for
unsupported arguments such as `--foo`.
default In [1]: %load_ext pyprql.magic
In [2]: %prql --foo from a UsageError: unrecognized arguments: --foo
Refactoring
- Remove deprecated cli module and update dependencies
([162](https://github.com/PRQL/pyprql/pull/162),
[`89e1199`](https://github.com/PRQL/pyprql/commit/89e11996a9f46ea6e16b07c8cba253f2d4e8341b))
Remove the cli module, which has been deprecated since pyprql 0.5.10 (released on PyPI on
2022-12-12) (93), and update dependencies.
This PR also includes a configuration change for python-semantic-release (`major_on_zero = false`),
making the release after this disruptive change `0.7.0` instead of `1.0.0`.