Grigorii Kirgizov
22e86bbb89
upd .gitignore
2019-09-11 13:24:01 +03:00
Grigorii Kirgizov
924d07c8ed
Return 'tagDetail' logic in RuleBuilder to handle duplicate tags of rules generated in loops
2019-09-11 13:24:01 +03:00
Grigorii Kirgizov
ff9d109ea6
Add BL typechecking of arrays and boolean consts. Fails now due to rule tag collisions
2019-09-11 13:24:01 +03:00
Grigorii Kirgizov
4ea72e6d4f
Allow checking for "no type" TypecheckingReportItems in typechecking tests
2019-09-11 13:24:01 +03:00
Fedor Isakov
adc115b164
Avoid failure on exception thrown from a template.
...
Produce a program even in case some of applied rules failed.
Allow to recover from failure in apply templates.
2019-09-10 18:37:12 +02:00
Fedor Isakov
b842fb6b9d
Avoid unnecessarily throwing exception on failure.
...
EvaluationFailureException is meant to be only thrown from predicate solvers.
It is specially processed in the reactor engine.
2019-09-10 18:37:12 +02:00
Fedor Isakov
c016ffc01b
Fix a race condition.
...
Instead of an ad-hoc synchronization in implementation use a more broad synchronization in a public method.
2019-09-10 18:37:12 +02:00
Fedor Isakov
51860132b7
Remove overlooked debug output.
2019-09-10 18:37:12 +02:00
Fedor Isakov
5b5798dcad
Switch to reactor lib 0.9.13.
2019-09-10 18:37:11 +02:00
Fedor Isakov
f583c62d93
Drop overrides of removed methods.
2019-09-10 18:37:11 +02:00
Fedor Isakov
1c61352068
Bump up reactor lib's version to 0.9.13.
2019-09-10 13:21:07 +02:00
Fedor Isakov
5cb4e0b289
Deprecate getting "current" EvaluationSession.
2019-09-10 13:19:59 +02:00
Fedor Isakov
487df639e5
Drop unused methods from EvaluationSession.
...
Having unused methods is confusing.
2019-09-10 13:17:34 +02:00
Fedor Isakov
af212ca92e
Refactoring EvaluationSession(Ex): drop controller accessor.
...
The inverse reference to controller from Evaluation session considered harmful.
Drop controller from EvaluationSession, drop ask/tell from EvaluationSession, extend InvocationContext with controller and supervisor accessors.
2019-09-10 13:08:53 +02:00
Fedor Isakov
5478b2e070
Rebuild project.
2019-09-06 11:16:07 +02:00
Fedor Isakov
d3a555c3a4
Ensure correct nodeRef is passed as a feedback template
...
.
2019-09-05 22:56:11 +02:00
Fedor Isakov
cdac933b0c
Refactor TraceObject to contain all traces from all evaluation sesssion.
...
If multiple aspect cliques are used in a model, multiple sessions are launched,
which results in multiple traces.
2019-09-05 22:56:11 +02:00
Fedor Isakov
67284c802e
Drop baseLanguage from imports in a sandbox model.
2019-09-05 22:56:11 +02:00
Fedor Isakov
fc3b69f06e
Make sure the "annotation" lang has a types aspect.
2019-09-05 18:53:52 +02:00
Fedor Isakov
43e34bd14e
Redesing the way aspect cliques are processed.
...
An empty clique singifies that either none of the languages in the clique have the necessary aspects,
or that the "leaf" languages don't.
2019-09-05 18:53:27 +02:00
Fedor Isakov
1636f18f73
Support navigating to rule from editor. Drop implementations of Reporting.report.
2019-09-04 16:53:03 +02:00
Fedor Isakov
e628ea350b
Collect and index all feedback nodes. Support navigating to next/prev feedback.
2019-09-03 16:19:16 +02:00
Fedor Isakov
279678b219
Ensure all feedback gets reported to trace.
2019-09-03 14:53:11 +02:00
Fedor Isakov
1ae5208424
Switch to MPS 2019.2 release.
2019-09-02 17:55:47 +02:00
Fedor Isakov
edc49464e1
Fix the failing test: the error is no longer reported on return statement.
2019-09-02 17:55:46 +02:00
Fedor Isakov
486fbf10af
Rewrite error reporting using target spec or by specifying the target.
2019-09-02 17:55:46 +02:00
Fedor Isakov
ab8ec75878
Rewrite feedback handling without Reporting interface.
...
Instead of using the (deprecated) Reporting interface when handling
feedback, use the more straightforward abstract method.
2019-09-02 17:55:46 +02:00
Fedor Isakov
77be3869a4
Introduce target specification to provide feedback constraint.
...
One should be able to report issues with a target.
The target is normally inferred from the rule's origin, but sometimes it is
necessary to specify the issue's target explicitly.
2019-09-02 17:55:46 +02:00
Fedor Isakov
8b82d7ba4d
Introduce origin block for specifying the constraint rule origin.
2019-09-02 17:55:46 +02:00
Fedor Isakov
5eed118be0
Replace usages of deprecated reporting with error constraint.
...
Having to specify the target for reported messages is a redundancy.
It's better to rely on the built-in feedback mechanism and handle the
messages at the supervisor level.
2019-09-02 17:55:46 +02:00
Fedor Isakov
d279cc64ba
Deprecate report operation and API.
2019-09-02 17:55:46 +02:00
Fedor Isakov
41c4c7e0a3
Fix provide feedback predicate to use the updated API.
2019-09-02 17:55:46 +02:00
Fedor Isakov
0db213725e
fixup! Swith to using reactor lib 0.9.12.
2019-09-02 17:55:46 +02:00
Fedor Isakov
130c273980
Swith to using reactor lib 0.9.12.
2019-09-02 17:37:55 +02:00
Fedor Isakov
a6aed2c22c
Bump up the reactor lib version to 0.9.12.
2019-09-02 17:27:47 +02:00
Fedor Isakov
4080ab519a
Extend EvaluationFeedback with specific methods for creating details feedback; introduce details parameter.
2019-09-02 17:18:02 +02:00
Fedor Isakov
84d07ef5f4
Another strategy to deal with deadlocks: drop requirement to use EDT.
...
Typechecking needs a synch point to update its "types model".
Using either EDT or the sequential scheduler is unfeasible beacause
of possible deadlocks.
2019-08-29 13:19:22 +02:00
Fedor Isakov
46406f8917
Straighten up error processing when launching coderules.
2019-08-29 11:36:54 +02:00
Fedor Isakov
355a503f5e
Various refactorings in trace and reporting.
...
Replace ReportSink with Consumer.
Rename TraceEventsCollector -> TraceEvents.
Collect report items in TraceObject.
Ensure messages view tabs stay pinned.
Enable navigation from messages view to source nodes.
Respect report item's severity.
2019-08-28 21:27:09 +02:00
Fedor Isakov
13526ded21
Prevent ephemeral messages caused by failed ask to propagate.
...
A failed ask predicate constitutes normal evaluation flow, no need to report
this to the user.
2019-08-28 17:46:34 +02:00
Fedor Isakov
7956b8c89c
Ensure type index update is run in EDT, avoid race condition.
2019-08-28 17:46:34 +02:00
Fedor Isakov
91f317b307
Ensure message view tab is disposed, avoid memory leak.
2019-08-27 11:55:35 +02:00
Fedor Isakov
5c239fb4b9
Fix Memoizer race condition.
2019-08-27 11:22:39 +02:00
Fedor Isakov
8d289021d1
Remove toxic imports.
2019-08-26 19:01:26 +02:00
Fedor Isakov
899d6b5208
Avoid producing NPE on missing template.
2019-08-26 17:14:39 +02:00
Fedor Isakov
17cb4654cf
Introduce message handler parameter to rule application session.
...
In some situations it is unreasonable to fail on missing templates,
it's better to produce a working but perhaps incomplete program
than not to produce anything.
2019-08-26 16:53:04 +02:00
Fedor Isakov
b79d174753
More fine-grained reporting of errors during coderules evaluation.
2019-08-26 15:27:04 +02:00
Fedor Isakov
388ea7e268
Minor refactorings in typechecking service. Display number of reported items with query.
2019-08-26 13:06:58 +02:00
Fedor Isakov
c7ed81bd51
Switch to using MessageLog instead of the default message log. Minor fixes.
...
Collect coderules messages in "Messages" tab by default.
2019-08-26 13:06:58 +02:00
Fedor Isakov
e60a2151c0
Avoid using executeCommand to schedule a message view update.
2019-08-23 12:48:43 +02:00