Fedor Isakov
2b146e886b
Migrate to latest MPS 2026.1 EAP
2026-04-24 11:22:20 +02:00
Fedor Isakov
17dd2a6c01
Appply migrations from MPS 243 branch
2024-12-11 11:57:18 +01:00
Fedor Isakov
6e5fcc639b
Introduce minimal rx framework; drop RxJava lib; drop obsolete actions
2024-08-20 17:16:21 +02:00
Fedor Isakov
c7ae020862
Redesign Activation Trace View for better usability; minor fixes
...
- use pictograms and tooltips, reduce UI clutter
- drop "occurrences" column, move everything to the events tree
- fix jumping table widths
2024-08-12 12:23:53 +02:00
Fedor Isakov
41fff3d299
Better display of occurrences store in Activation Trace view
...
1. Display "discarded" occurrences by default
2. Use styles to differentiate among the event kinds
3. Use selection in the store panel to highlight "relevant" occurrences
4. Support multiple selection in activation panel
2024-07-26 18:06:16 +02:00
Fedor Isakov
c9e3374540
Implement support for "tellPattern" trace event
2024-07-22 14:14:16 +02:00
Fedor Isakov
0830a34c1b
Support navigating to constraint and predicate declarations from trace view
2024-07-19 16:39:57 +02:00
Fedor Isakov
e64677041e
Cleanup code and drop deprecated stuff
2024-07-18 11:01:24 +02:00
Fedor Isakov
4ce08f4b99
Refactor project structure and reduce the number of modules
2024-07-04 18:17:56 +02:00
Fedor Isakov
e83b92575b
Switch to new initialization methods
2024-06-16 21:50:28 +02:00
Fedor Isakov
a19d02b8ae
Switch initialization to use ModuleActivator; drop unused imports
2024-06-16 16:11:38 +02:00
Fedor Isakov
64ed2d41b8
Update models to reflect changes in reactor API
2024-06-14 13:45:54 +02:00
Fedor Isakov
f3010743c1
Migration: FixExpandMacroTemplate
2023-10-13 18:13:08 +02:00
Fedor Isakov
3cf666e633
Apply migrations and make project
2023-07-31 12:57:24 +02:00
Fedor Isakov
6a849f82f2
Apply migrations and rebuild project
2023-06-12 12:01:02 +02:00
Fedor Isakov
6ebc8782b9
Avoid issues when opening root project
...
Only UI-specific code related to settings left in "idea" project solution,
everything else moved to MPS-managed plugins.
2023-02-23 11:48:19 +01:00
Fedor Isakov
ad3ea9d63d
Apply all migrations from 2022.2
2022-11-21 11:25:13 +01:00
Fedor Isakov
d2ca45aa02
Extract bootstrap code to idea plugin; CR options to become app-level
...
CR typechecking options are now application-level.
The solution j.m.c.ideaplugin contains the code responsible
for accessing and setting the options. This solution is loaded
as IDEA plugin on deploy and as regular module in source project.
Also merge code from two modules into j.m.c.typechecking.
2022-08-25 12:59:36 +02:00
Fedor Isakov
e3870d1397
Switch to using built-in messages view for Coderules messages
2022-08-01 14:11:38 +02:00
Fedor Isakov
f24169ba26
Refactor Config to be immutable; allow multi-project MPSCR-105
...
Drop hacks that try to figure out the active project.
Instead introduce new ones that cache the instance of `ProjectRepository`
(unfortunately, there is no way around that now).
Stop accessing and modifying the singleton `Config` instance,
instead make an instance of `Config` a parameter to `TypecheckingService`.
2022-07-07 12:56:30 +02:00
Fedor Isakov
710c5ddc9b
Ensure failure during trace view update is gracefully handled
2022-05-25 13:37:55 +02:00
Fedor Isakov
c192a529a6
Display undo activate/discard events in trace view. MPSCR-102
2022-03-15 15:48:56 +01:00
Fedor Isakov
4ccbff779f
Refactoring in the UI: merging tool windows into one
2021-11-18 10:59:58 +01:00
Fedor Isakov
1bb8763816
Refactor AspectLookup to depend on repository, cache results
2021-05-18 12:32:03 +02:00
Fedor Isakov
ff6b5ec6ae
Apply migrations and rebuild project
2021-04-14 13:19:50 +02:00
Fedor Isakov
62e8e7d013
Switch to MPS 2020.3 release.
2021-01-08 11:00:02 +01:00
Fedor Isakov
acc3167e21
A bunch of optimizations and minor refactorings.
...
Consolidate options, configure all from typechecking plugin.
Introduce a computable option to control using traces.
Introduce shared state to be used at generation time.
Drop repository cache holder, replace with a field in state.
Fix singleton type collector.
Fix memory leak in strategy by cleaning it up after execution.
2020-11-24 13:41:25 +01:00
Grigorii Kirgizov
99c823d4f7
Integrate tmpl trace in ApplyTemplatesStep with TypecheckingOptions
...
Introduce TraceReport object for passing program results
(traces+report items) instead of using tuples.
2020-10-08 17:34:43 +03:00
Fedor Isakov
29bb1c72cd
Allow Config.init() to be called multiple times. Ensure test passes alone.
2020-08-06 17:45:47 +02:00
Fedor Isakov
14780b5561
Apply automatic migrations.
2020-05-09 15:04:25 +02:00
Grigorii Kirgizov
be89545202
Adapt to method rename in EvaluationTrace interface
2020-04-19 13:43:05 +03:00
Grigorii Kirgizov
b672778235
Fix build, add impl in plugin code of observers methods in Logical interface
2019-12-24 02:41:46 +03:00
Fedor Isakov
036f8393b5
Avoid null-ifying Config fields on dispose. Fix stupid bug in TypecheckingOptions. Fixes MPSCR-8.
2019-11-11 10:58:49 +01:00
Grigorii Kirgizov
53ddcb8492
Small cleanup of TraceTool for incremental processing
2019-11-07 17:15:56 +03:00
Fedor Isakov
4160c186e1
Introduce dependency to Config in typechecking options and service. Avoid relying on static getInstance() method to access Config.
...
Config is an application-level "component" initialized from an application plugin.
All usages on application/project-level should declare explicit dependency on it.
Tests can either create a new instance or access the shared one.
2019-10-23 15:39:17 +02:00
Fedor Isakov
1534864ffb
Separately register USER-level typechecking options, drop synch barrier. Keep it simple and stupid.
...
Options providers are registed in application plugin and project plugin.
Application plugin registers the USER level options, project plugin
is responsible for UI level.
Option providers are cleard on closing project/closing app.
2019-10-22 21:20:15 +02:00
Fedor Isakov
fc4ff2875c
Implement more fine-grained Config reset: drop all levels >= given.
2019-10-19 10:22:17 +02:00
Fedor Isakov
2c514f08fd
Fix Config initialization from tests. Replace init/deinit with single reset method.
2019-10-18 17:03:18 +02:00
Fedor Isakov
6c63cb409f
Introduce Config component. Make typechecker pref page nicer. Consolidate all typechecking options.
...
A reusable Config app component to be responsible for all level of configurations: default/system/user/ui.
Swith to Config interface instead of map<string,Object> for options.
Add an UI option to control whether trace is enabled.
2019-10-18 11:58:51 +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
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
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
Fedor Isakov
aef7e4c2ee
Extract the non-UI part of trace view to j.m.coderules solution.
2019-08-20 23:11:19 +02:00
Fedor Isakov
9178e8c913
Coderules-specific MessageViewTool and MessageLog for providing feedback.
...
Certain compromises have to be made: for one, it is assumed there is only one
project open and it is a MPSProject. Feedback is only reported to the messages
view and the view itself is not yet integrated into the main messages view.
2019-08-20 23:11:19 +02:00
Fedor Isakov
66c9222a95
Run migrations with MPS 2019.2 EAP3.
2019-07-26 17:27:18 +02:00
Fedor Isakov
ca894c9030
Move control over reactor lifecycle to app plugin.
2019-07-26 17:17:07 +02:00
Fedor Isakov
79b08c6f83
Revert "Apply migrations from EAP3 and rebuild project."
...
This reverts commit 9c5bf858c3 .
2019-07-26 15:30:30 +02:00
Fedor Isakov
9c5bf858c3
Apply migrations from EAP3 and rebuild project.
2019-07-19 12:28:27 +02:00
Fedor Isakov
cd37daaa07
Apply migrations after switching to the latest EAP build of MPS.
2019-06-07 09:16:21 +02:00