1 | 3.0.0-beta1 / 2019-05-17
|
2 | * BREAKING CHANGES
|
3 | * Previously all conditions with undefined facts would resolve false. With this change, undefined facts values are treated as `undefined`.
|
4 | * Greatly improved performance of `allowUndefinedfacts = true` engine option
|
5 | * Reduce package bundle size by ~40%
|
6 |
|
7 | 2.3.5 / 2019-04-26
|
8 | * Replace debug with vanilla console.log
|
9 |
|
10 | 2.3.4 / 2019-04-26
|
11 | * Use Array.isArray instead of instanceof to test Array parameters to address edge cases
|
12 |
|
13 | 2.3.3 / 2019-04-23
|
14 | * Fix rules cache not clearing after removeRule()
|
15 |
|
16 | 2.3.2 / 2018-12-28
|
17 | * Upgrade all dependencies to latest
|
18 |
|
19 | 2.3.1 / 2018-12-03
|
20 | * IE8 compatibility: replace Array.forEach with for loop (@knalbandianbrightgrove)
|
21 |
|
22 | 2.3.0 / 2018-05-03
|
23 | * Engine.removeFact() - removes fact from the engine (@SaschaDeWaal)
|
24 | * Engine.removeRule() - removes rule from the engine (@SaschaDeWaal)
|
25 | * Engine.removeOperator() - removes operator from the engine (@SaschaDeWaal)
|
26 |
|
27 | 2.2.0 / 2018-04-19
|
28 | * Performance: Constant facts now perform 18-26X better
|
29 | * Performance: Removes await/async transpilation and json.stringify calls, significantly improving overall performance
|
30 |
|
31 | 2.1.0 / 2018-02-19
|
32 | * Publish dist updates for 2.0.3
|
33 |
|
34 | 2.0.3 / 2018-01-29
|
35 | * Add factResult and result to the JSON generated for Condition (@bjacobso)
|
36 |
|
37 | 2.0.2 / 2017-07-24
|
38 | * Bugfix IE8 support
|
39 |
|
40 | 2.0.1 / 2017-07-05
|
41 | * Bugfix rule result serialization
|
42 |
|
43 | 2.0.0 / 2017-04-21
|
44 | * Publishing 2.0.0
|
45 |
|
46 | 2.0.0-beta2 / 2017-04-10
|
47 | ==================
|
48 | * Fix fact path object checking to work with objects that have prototypes (lodash isObjectLike instead of isPlainObject)
|
49 |
|
50 | 2.0.0-beta1 / 2017-04-09
|
51 | ==================
|
52 |
|
53 | * Add rule results
|
54 | * Document fact .path ability to parse properties containing dots
|
55 | * Bump dependencies
|
56 | * BREAKING CHANGES
|
57 | * `engine.on('failure', (rule, almanac))` is now `engine.on('failure', (event, almanac, ruleResult))`
|
58 | * `engine.on(eventType, (eventParams, engine))` is now `engine.on(eventType, (eventParams, almanac, ruleResult))`
|
59 |
|
60 | 1.5.1 / 2017-03-19
|
61 | ==================
|
62 |
|
63 | * Bugfix almanac.factValue skipping interpreting condition "path" for cached facts
|
64 |
|
65 | 1.5.0 / 2017-03-12
|
66 | ==================
|
67 |
|
68 | * Add fact comparison conditions
|
69 |
|
70 | 1.4.0 / 2017-01-23
|
71 | ==================
|
72 |
|
73 | * Add `allowUndefinedFacts` engine option
|
74 |
|
75 | 1.3.1 / 2017-01-16
|
76 | ==================
|
77 |
|
78 | * Bump object-hash dependency to latest
|
79 |
|
80 | 1.3.0 / 2016-10-24
|
81 | ==================
|
82 |
|
83 | * Rule event emissions
|
84 | * Rule chaining
|
85 |
|
86 | 1.2.1 / 2016-10-22
|
87 | ==================
|
88 |
|
89 | * Use Array.indexOf instead of Array.includes for older node version compatibility
|
90 |
|
91 | 1.2.0 / 2016-09-13
|
92 | ==================
|
93 |
|
94 | * Fact path support
|
95 |
|
96 | 1.1.0 / 2016-09-11
|
97 | ==================
|
98 |
|
99 | * Custom operator support
|
100 |
|
101 | 1.0.4 / 2016-06-18
|
102 | ==================
|
103 |
|
104 | * fix issue #6; runtime facts unique to each run()
|
105 |
|
106 | 1.0.3 / 2016-06-15
|
107 | ==================
|
108 |
|
109 | * fix issue #5; dependency error babel-core/register
|
110 |
|
111 | 1.0.0 / 2016-05-01
|
112 | ==================
|
113 |
|
114 | * api stable; releasing 1.0
|
115 | * engine.run() now returns triggered events
|
116 |
|
117 | 1.0.0-beta10 / 2016-04-16
|
118 | ==================
|
119 |
|
120 | * Completed the 'fact-dependecy' advanced example
|
121 | * Updated addFact and addRule engine methods to return 'this' for easy chaining
|
122 |
|
123 | 1.0.0-beta9 / 2016-04-11
|
124 | ==================
|
125 |
|
126 | * Completed the 'basic' example
|
127 | * [BREAKING CHANGE] update engine.on('success') and engine.on('failure') to pass the current almanac instance as the second argument, rather than the engine
|