Commit graph

158 commits

Author SHA1 Message Date
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
Anand Balakrishnan
77cda0eae0
refactor(argus-derive): remove unnecessary derives 2023-09-07 13:33:45 -07:00
Anand Balakrishnan
4942a78899
test(pyargus): improve test coverage 2023-09-07 13:32:27 -07:00