Anand Balakrishnan
017cecc8a4
ci: add a manually triggered workflow for releasing the project to test.pypi [skip ci]
2023-10-06 00:14:22 -07:00
Anand Balakrishnan
c9c3778ce2
ci: try to generate lockfile before caching
2023-10-05 23:43:06 -07:00
Anand Balakrishnan
29040fd0e6
fix(ci): don't have to specify interpreter for maturin develop
2023-10-05 23:34:11 -07:00
Anand Balakrishnan
22479aa7af
fix(ci): don't let cargo run test for pyargus
2023-10-05 23:29:27 -07:00
Anand Balakrishnan
ca96c75af8
fix(ci): remember that the CI script is only for testing
2023-10-05 23:23:02 -07:00
Anand Balakrishnan
db24e3c172
ci: try using --no-index for pip
2023-10-05 22:50:49 -07:00
Anand Balakrishnan
cc74411d95
fix(ci): try to install for pytest from wheel
2023-10-05 17:07:34 -07:00
Anand Balakrishnan
1a4d8cc845
fix(ci): cache key should be the singla Cargo.lock
2023-10-05 16:53:54 -07:00
Anand Balakrishnan
c8b3a08619
ci: activate mamba environments for pytest
2023-10-05 16:51:01 -07:00
Anand Balakrishnan
4c7e3a0fb5
ci: add a testing CI
2023-10-05 16:38:43 -07:00
Anand Balakrishnan
ca68d32a4b
cleanup environment files
2023-10-05 16:38:29 -07:00
Anand Balakrishnan
69c6c6abc2
docs(pyargus): create initial documentation for pyargus
2023-10-05 15:42:57 -07:00
Anand Balakrishnan
d39e3d3e12
feat!(pyargus): simplify the API surface
...
- Get rid of helper functions. It is not that much more verbose to
create signals with `argus.FloatSignal(...)` than
`argus.signal(..., dtype=argus.dtype.float64`).
- Make the package hierarchy flat: everything is under `argus`. If this
is an issue, it can be changed in the future.
- Add type hints for interval types.
2023-10-05 15:28:59 -07:00
Anand Balakrishnan
3714cd5936
begin documentation
2023-10-05 08:41:41 -07:00
Anand Balakrishnan
4ddca1f177
fix(ci): correctly download wheel artifacts
2023-10-04 17:38:10 -07:00
Anand Balakrishnan
5f07fca816
ci: macos and windows can't handle install from wheel...
2023-10-04 17:12:25 -07:00
Anand Balakrishnan
71def21d02
ci: don't run tests for aarch64 (for now)
2023-10-04 17:06:11 -07:00
Anand Balakrishnan
fae3021f6b
ci: add permission to upload wheels to release
2023-10-04 16:58:10 -07:00
Anand Balakrishnan
24f7583f88
fix(pyargus): add typing-extensions as dependency
2023-10-04 16:51:36 -07:00
Anand Balakrishnan
10e09c0a12
fix(ci): try to make pytest actually detect argus
2023-10-04 16:48:26 -07:00
Anand Balakrishnan
ec0224d511
fix(ci): actually install the test dependencies
2023-10-04 16:37:03 -07:00
Anand Balakrishnan
1fb8459b3b
fix(ci): install test dependencies
2023-10-04 16:30:49 -07:00
Anand Balakrishnan
2c234a929a
ci: add initial CI
2023-10-04 16:21:07 -07:00
Anand Balakrishnan
c616d201aa
feat: TRUE and FALSE are keywords in parser
2023-10-04 15:54:20 -07:00
Anand Balakrishnan
e3b020c6ed
tests: better cargo test arguments
2023-10-04 15:51:35 -07:00
Anand Balakrishnan
91441d4d3f
fix!: add explicit interpolation method for more functions
2023-10-04 15:50:25 -07:00
Anand Balakrishnan
f97d593926
feat: expose parser in argus
2023-10-04 14:46:32 -07:00
Anand Balakrishnan
50d5a0a78a
feat!: make interpolation method explicit
...
All methods that need to perform interpolation of some sort need an
explicit interpolation method. In Rust, this manifests as a generic
parameter, while in Python, this is a string parameter.
2023-10-04 14:42:51 -07:00
Anand Balakrishnan
e2cff9449e
feat: expose parser in argus
2023-10-04 14:37:51 -07:00
Anand Balakrishnan
1b3512543e
fix(argus-parser): correctly type variables under relationals
...
Also accept unicode symbols for temporal operations
2023-10-04 14:36:47 -07:00
Anand Balakrishnan
f6b26b61ab
chore: clean up unnecessary numpy dependency (and better pre-commit)
2023-10-04 14:33:17 -07:00
Anand Balakrishnan
246f4704c3
update environment files
2023-10-04 14:28:39 -07:00
Anand Balakrishnan
9ca6748c50
feat(pyargus): add interpolation method parameter for Signal construction
2023-10-03 19:46:17 -07:00
Anand Balakrishnan
ad0e62eee5
build: don't run install on reused nox environments
2023-10-03 19:33:57 -07:00
Anand Balakrishnan
444d60197d
refactor(pyargus): make pyargus depend only on argus
2023-10-03 17:34:17 -07:00
Anand Balakrishnan
db3a63f9e1
make argus the common crate
2023-10-03 17:13:20 -07:00
Anand Balakrishnan
0df9aba559
edit mypy allowlist
2023-10-03 17:13:10 -07:00
Anand Balakrishnan
0498dd0f57
set common parameters in the workspace
2023-10-03 16:59:06 -07:00
Anand Balakrishnan
2319668e2b
feat!(argus-parser): complete parser
...
This changes the API for `ExprBuilder`, but that is OK.
2023-10-03 16:11:18 -07:00
Anand Balakrishnan
17042a2544
feat(argus-parser): complete the syntax parser
2023-10-03 11:05:08 -07:00
Anand Balakrishnan
3adf2ff723
complete parser, but compile time is slow
2023-10-02 17:23:43 -07:00
Anand Balakrishnan
6632e897ba
add Expr type for union of BoolExpr or NumExpr
2023-09-29 14:00:24 -07:00
Anand Balakrishnan
7c81b30a8f
don't try to do an Any trampoline for Expr
2023-09-29 13:59:16 -07:00
Anand Balakrishnan
b2e56594b0
initial parser signature
2023-09-29 13:09:04 -07:00
Anand Balakrishnan
cc423a0bec
feat(argus-parser): complete lexer
2023-09-15 16:20:58 -07:00
Anand Balakrishnan
49408a310b
begin writing parser
2023-09-08 13:48:05 -07:00
Anand Balakrishnan
3d6157e03a
refactor(pyargus): define a runtime checkable Signal protocol
2023-09-07 16:34:13 -07:00
Anand Balakrishnan
8027f86213
refactor(pyargus): implement new for PySignal
2023-09-07 15:44:46 -07:00
Anand Balakrishnan
e2cfe3da56
refactor(pyargus): data type name
2023-09-07 15:43:04 -07:00
Anand Balakrishnan
8093ab7c9f
build: add clean to nox and remove coverage from default sessions
2023-09-07 13:55:14 -07:00