stefan-gorules
53f3b5a430
feat: merge function ( #438 )
...
* feat: merge function
* add mergeDeep function
* default merge to return empty object instead of empty array
2026-03-15 14:44:32 +01:00
stefan-gorules
6beecb423f
fix: simplify compilation ( #429 )
...
* fix: simplify compilation
* improve opcodecache structure
2026-02-11 16:07:34 +01:00
stefan-gorules
73d5d5c6cb
feat: function scope alias ( #426 )
...
* feat: function scope alias
* fix types
2026-01-19 10:44:16 +01:00
bcrevar-gorules and Stefan
7bfebd90fe
feat: precompile decision content ( #401 )
...
* precompile first
* test
* add Opcode cache through Option<T>
* Compiled support for decisionTable,
default compile of new DecisionContent for node.js and py bindings
* format
* DecisionContent refactored to model module
* fmt
* added back BaseDecisionContent
* tests and benchmark
---------
Co-authored-by: Stefan <stefan@gorules.io >
2025-11-21 14:44:24 +01:00
stefan-gorules and Ivan Miletic
922a262e98
feat: wasm support ( #404 )
...
* feat: wasm support
* add http callback
* streamline structs
* fix: wasm workflow
* fix: wasi path
* fix: wasm
* fix: wasm path
* fix: clang dev
* fix: libclang static
* fix: build
* fix: node
* fix: wasm
* fix: wasm wasi
* fix: npm dirs
* fix: node workflow
* fix: testing
* fix: test
* update version
* fix: targets
* fix: wasm fix
* fix: commit files
---------
Co-authored-by: Ivan Miletic <vnmiletic@gmail.com >
2025-11-13 12:36:59 +01:00
stefan-gorules
91509821be
feat: refactor engine ( #390 )
...
* temp: refactor engine
* temp
* implement remaining nodes
* resolve snapshot tests
* improve decision graph implementation
* implement changes in bindings
* implement changes in bindings
* fix function impl gaps
* update cargo.toml
* fix issues with trace
2025-09-04 18:54:32 +02:00
stefan-gorules and bojancrevar
80fe4021c2
feat: compact trace ( #384 )
...
* feat: compact trace
* align with changes
* add deserialization
* add tests and deserializer
* fix bindings
* first draft
* mock time; update snapshots
* fix
* Node.js test fix
* fix merge
* fix utc override
* fix cross-env
* fix workflow
* fix
---------
Co-authored-by: bojancrevar <bojan.crevar@gorules.io >
2025-08-25 12:33:07 +02:00
bcrevar-gorules and Stefan
4a59f222db
feat: add snapshot tests ( #385 )
...
* first draft
* mock time; update snapshots
* fix
* Node.js test fix
---------
Co-authored-by: Stefan <stefan@gorules.io >
2025-08-20 16:30:28 +02:00
stefan-gorules
09f59e9bb2
fix: timezone caching ( #371 )
2025-07-04 10:05:35 +02:00
stefan-gorules
f2fcb95ad9
feat: assignment ( #366 )
...
* feat: assignment
* add tests
2025-06-18 10:43:01 +02:00
stefan-gorules
bdf51dec11
fix: safe division ( #365 )
...
* fix: safe division
* add test
2025-06-16 09:47:35 +02:00
stefan-gorules
815729aca4
fix: update rounding strategy ( #361 )
...
* fix: update rounding strategy
* add test
2025-06-03 12:04:47 +02:00
stefan-gorules
a911a623cb
fix: align date diff with dayjs ( #360 )
2025-06-03 09:48:57 +02:00
stefan-gorules
c9d11f12dd
fix: normalize number during serialization ( #359 )
2025-06-02 14:47:16 +02:00
stefan-gorules
173d7bcb79
feat: improve stack resiliency ( #357 )
2025-05-27 17:46:00 +02:00
stefan-gorules
29ce060ac7
feat: number scientific notation ( #355 )
...
* feat: number scientific notation
* add tests
2025-05-23 11:46:33 +02:00
stefan-gorules
34de232d3a
feat: dates min/max ( #353 )
2025-05-23 11:18:50 +02:00
stefan-gorules
71b949b1e1
fix: number fn type ( #354 )
2025-05-23 11:18:23 +02:00
stefan-gorules
157859ca37
fix: lossy exponent fallback ( #352 )
2025-05-21 11:46:44 +02:00
stefan-gorules
e09f2ede5e
fix: date method signature ( #351 )
2025-05-20 00:36:07 +02:00
stefan-gorules
d179552b3c
feat: trunc function and decimal places for round (optional) ( #349 )
2025-05-14 08:21:29 +02:00
stefan-gorules
6027f5a6a1
fix: date endOf for a year and isAfter comparison for units ( #348 )
...
* fix: date endOf for a year and isAfter comparison for units
* fix test
* improve impl
2025-05-14 01:27:58 +02:00
stefan-gorules
de6d13e1c7
feat: date v2 ( #345 )
...
* feat: date v2
* implement more date functions
* improve type safety
* add more methods for dates
* update utc to tz and add support
* add unary node behaviour for date methods
* add tests; fix errors in bindings
* add date operators
* fix types
* change set date signature
* update nightly
2025-05-12 22:39:08 +02:00
stefan-gorules
6535d44e03
feat: expression function system ( #340 )
...
* feat: expression function system
* cleanup
* improve parser
* revert test changes
* add more tests
* minor fixes
2025-04-28 00:40:32 +02:00
stefan-gorules
36c32814b8
feat: interval iterator ( #336 )
2025-04-24 12:00:15 +02:00
stefan-gorules
f81d1188f6
fix: correctly throw an error when closed bracket is missing in function call ( #337 )
2025-04-24 11:59:38 +02:00
stefan-gorules
d7624311f6
fix: py validate methods ( #316 )
...
* fix: py validate methods
* fix
2025-02-15 21:46:55 +01:00
Jake Potrebic
94e1da239a
feat: add validation methods to python bindings ( #305 )
...
* add validation methods to python bindings
* centralize validation logic
* rename functions
* format
2025-02-15 20:41:18 +01:00
stefan-gorules
ae40aff163
feat: compiled bytecode ( #307 )
...
* feat: compiled bytecode
* optimize bytecode
* add compiled expression struct
* add fetch fast and better abstraction
* fix
* rename evaluate_with for Expression<Unary>
2025-02-10 10:07:24 +01:00
stefan-gorules
df2a44f8b3
fix: unary closure expression ( #301 )
2025-01-20 14:08:13 +01:00
kyle-mwnz
49814e1aa0
feat: add trim function to string data type ( #279 )
...
* feat: add trim function to string data type
* Linting
* Extra test
2024-11-28 10:15:22 +01:00
stefan-gorules
92879f9c05
feat: bump rquickjs, fix loop cache for decisionTable ( #274 )
...
* fix: loop cache
* update rquickjs
* bump version
2024-11-19 13:38:17 +01:00
stefan-gorules and Ivan Miletic
47812143a0
feat: passthrough nodes ( #261 )
...
* feat: passthrough nodes
* update bindings
* update model
* update exclusion
* fix merge strategy
* fix
* fix merge
* add tests
* fix walk
* fix merge
* fix
* fix: add tests
* fix types
---------
Co-authored-by: Ivan Miletic <vnmiletic@gmail.com >
2024-10-23 15:59:31 +02:00
stefan-gorules
5a37ef319d
fix: improve type errors ( #259 )
2024-10-13 21:08:57 +02:00
stefan-gorules
7b861d0642
feat: deserialize variable type ( #256 )
2024-10-10 11:20:51 +02:00
stefan-gorules
ec6004a6d4
fix: double borrow ( #252 )
2024-10-04 22:53:49 +02:00
stefan-gorules
9d0ef4060b
fix: add operator typecheck ( #250 )
2024-10-04 14:39:47 +02:00
stefan-gorules
6c85cbc04d
fix: number serde ( #248 )
2024-10-01 09:51:41 +02:00
stefan-gorules
9a873675db
fix: number serialization ( #247 )
...
* fix: number serialization
* simplify
* fix
* fix
* fix format
2024-09-30 19:57:53 +02:00
stefan-gorules
91598166ce
feat: rc variable ( #246 )
...
* feat: rc variable
* feat: implement variable in engine
* add exports
* fix bindings and improve clone accuracy
* fix tests, fix bindings
* fix fmt
* improve code
2024-09-30 18:34:54 +02:00
stefan-gorules
9fba1ff7be
fix: date fn type ( #245 )
2024-09-23 10:23:30 +02:00
stefan-gorules
3e7cdfcde1
feat: intellisense ( #244 )
...
* local: fault tolerant parser
* fix tests
* add intellisense
* fix minor issues
* improve support
* fix fmt
* fix
* fix: improve error messages
* improve error handling and ast
* fix lint
* fix tests
* exclude zen-nodejs from rust tests
2024-09-23 09:23:48 +02:00
stefan-gorules
a903982e17
fix: empty object ( #241 )
2024-09-10 15:48:56 +02:00
stefan-gorules
719d43a26d
feat: upgrade dependencies ( #240 )
2024-09-10 15:48:39 +02:00
stefan-gorules
c9d1e9cc32
feat: object support ( #226 )
...
* feat: object support
* add object tests
* fix fmt
* fix: fmt
2024-08-08 10:39:32 +02:00
stefan-gorules
7cb676d36a
feat: template string ( #225 )
...
* feat: template string
* add tests
* fix cargo fmt
2024-08-07 09:50:49 +02:00
stefan-gorules
e452df33e9
feat: implement new functions - part 1 ( #205 )
...
* feat: implement new functions - part 1
* add enumiter to BuiltInFunction
* fix ci
* remove centos test
* fix workflow
2024-07-04 16:39:58 +02:00
stefan-gorules
6271d8ab1a
feat: expression chain ( #166 )
...
* feat: expression chain
* fix implementation
* fix
* implement env update on expression execution
* fix error handling for serde
* rebase
* update deps
* add $ prefix for expression reference
2024-05-24 14:46:57 +02:00
stefan-gorules
7ce6ceb9e4
feat: fuzzy match ( #168 )
2024-05-23 12:00:58 +02:00
stefan-gorules
daecf901e6
feat: custom node ( #138 )
...
* feat: custom node
* add zen template, expose $nodes and $root
* add custom handler to go and nodejs
* add support for python, improve bindings, add error to zen template
* fix: correct binding exports for nodejs and python
* fix benchmark
* improve rust api, trim template in zen templates
* update cargo action
* update expression version
* compile action
* fix action format
2024-04-03 16:09:51 +02:00