diff --git a/build.gradle b/build.gradle index 445b4c96..06d34df2 100644 --- a/build.gradle +++ b/build.gradle @@ -145,7 +145,7 @@ ant.importBuild('build.xml') { antTarget -> } ant.properties.'ci.build.num' = "${buildNumber().find() ? buildNumber()[0][4] : '9999'}".toString() ant.properties.'ci.build.tag' = "${buildNumber().find() ? buildNumber()[0][4] : 'SNAPSHOT'}".toString() -ant.properties.'ci.mps.release' = "${buildNumber().find() ? buildNumber()[0][1] : '212'}".toString() +ant.properties.'ci.mps.release' = "${buildNumber().find() ? buildNumber()[0][1] : '213'}".toString() ant.properties.'mps.ant.log' = "debug" // ensure 'setup' runs before 'fetchDependencies' and 'declare-mps-tasks' diff --git a/build.xml b/build.xml index 169613de..b2763514 100644 --- a/build.xml +++ b/build.xml @@ -7,7 +7,7 @@ - + @@ -43,7 +43,53 @@ - + + + + + jetbrains.mps.coderules + MPS Coderules Typechecking + Typechecking with Coderules (experimental) + ${ci.mps.release}-0.9-b${ci.build.num} + JetBrains s.r.o. + jetbrains.mps.core + jetbrains.mps.testing + jetbrains.mps.build + + First public EAP + + + + + + + + + + + + + jetbrains.mps.coderules + MPS Coderules Typechecking + Typechecking with Coderules (experimental) + ${ci.mps.release}-0.9-b${ci.build.num} + JetBrains s.r.o. + jetbrains.mps.core + jetbrains.mps.testing + jetbrains.mps.build + + First public EAP + + + + + + + + + + + @@ -136,15 +182,1505 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - + + + @@ -187,12 +1723,12 @@ - + - + - + @@ -209,12 +1745,12 @@ - - + + - - - + + + @@ -222,20 +1758,20 @@ - - - + + + - + - - - + + + @@ -278,9 +1814,9 @@ - + - + @@ -291,7 +1827,7 @@ - + @@ -356,9 +1892,9 @@ - - - + + + @@ -461,11 +1997,11 @@ - + - - - + + + @@ -516,12 +2052,12 @@ - + - + - + @@ -538,12 +2074,12 @@ - - + + - - - + + + @@ -589,9 +2125,9 @@ - + - + @@ -602,11 +2138,11 @@ - + - - - + + + @@ -652,9 +2188,9 @@ - + - + @@ -665,11 +2201,11 @@ - + - - - + + + @@ -694,9 +2230,9 @@ - + - + @@ -707,11 +2243,11 @@ - + - - - + + + @@ -750,9 +2286,9 @@ - - - + + + @@ -763,9 +2299,9 @@ - + - + @@ -776,11 +2312,11 @@ - + - - - + + + @@ -832,9 +2368,9 @@ - + - + @@ -845,11 +2381,11 @@ - + - - - + + + @@ -898,9 +2434,9 @@ - + - + @@ -911,7 +2447,7 @@ - + @@ -983,9 +2519,9 @@ - - - + + + @@ -1068,11 +2604,11 @@ - + - - - + + + @@ -1126,12 +2662,12 @@ - + - + - + @@ -1148,12 +2684,12 @@ - - + + - - - + + + @@ -1186,9 +2722,9 @@ - + - + @@ -1199,11 +2735,11 @@ - + - - - + + + @@ -1212,11 +2748,11 @@ - + - - - + + + @@ -1282,11 +2818,11 @@ - + - - - + + + @@ -1335,12 +2871,12 @@ - + - + - + @@ -1357,12 +2893,12 @@ - - + + - - - + + + @@ -1421,9 +2957,9 @@ - + - + @@ -1434,11 +2970,11 @@ - + - - - + + + @@ -1496,9 +3032,9 @@ - + - + @@ -1509,7 +3045,7 @@ - + @@ -1793,9 +3329,9 @@ - - - + + + @@ -1867,9 +3403,9 @@ - + - + @@ -1880,7 +3416,7 @@ - + @@ -1899,7 +3435,12 @@ Typechecking with Coderules (experimental) ${ci.mps.release}-0.9-b${ci.build.num} JetBrains s.r.o. - + jetbrains.mps.core + jetbrains.mps.testing + jetbrains.mps.build + + First public EAP + @@ -1907,16 +3448,21 @@ - - - + + + jetbrains.mps.coderules MPS Coderules Typechecking Typechecking with Coderules (experimental) ${ci.mps.release}-0.9-b${ci.build.num} JetBrains s.r.o. - + jetbrains.mps.core + jetbrains.mps.testing + jetbrains.mps.build + + First public EAP + @@ -1924,746 +3470,12 @@ - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + @@ -2757,11 +3569,11 @@ - + - - - + + + @@ -2804,12 +3616,12 @@ - + - + - + @@ -2826,12 +3638,960 @@ - - + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -2880,9 +4640,9 @@ - + - + @@ -2893,11 +4653,1280 @@ - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3001,11 +6030,11 @@ - + - - - + + + @@ -3056,12 +6085,12 @@ - + - + - + @@ -3078,12 +6107,12 @@ - - + + - - - + + + @@ -3092,11 +6121,11 @@ - + - - - + + + @@ -3182,11 +6211,11 @@ - + - - - + + + @@ -3240,12 +6269,12 @@ - + - + - + @@ -3262,12 +6291,12 @@ - - + + - - - + + + @@ -3339,9 +6368,9 @@ - + - + @@ -3352,11 +6381,11 @@ - + - - - + + + @@ -3381,9 +6410,9 @@ - + - + @@ -3394,7 +6423,7 @@ - + @@ -5771,31 +8800,32 @@ - - - - - - - - - - - - - + + + + + + + + + + + + + + - - + + diff --git a/coderules/solutions/jetbrains.mps.coderules.build/models/jetbrains.mps.coderules.build.mps b/coderules/solutions/jetbrains.mps.coderules.build/models/jetbrains.mps.coderules.build.mps index d2e9b380..ad74ac20 100644 --- a/coderules/solutions/jetbrains.mps.coderules.build/models/jetbrains.mps.coderules.build.mps +++ b/coderules/solutions/jetbrains.mps.coderules.build/models/jetbrains.mps.coderules.build.mps @@ -22,11 +22,15 @@ + + + + @@ -287,10 +291,19 @@ - + + + + + + + + + + @@ -3500,7 +3513,7 @@ - + diff --git a/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/EvaluationSessionImpl.kt b/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/EvaluationSessionImpl.kt index 4711e976..0adebe56 100644 --- a/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/EvaluationSessionImpl.kt +++ b/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/EvaluationSessionImpl.kt @@ -171,19 +171,23 @@ internal class EvaluationSessionImpl private constructor ( @Suppress("UNCHECKED_CAST") val durations = parameters[ParameterKey.of("profiling.data", MutableMap::class.java)] as MutableMap? - val profiler = durations?.let { Profiler() } + val profiler = durations?.let { (token as? SessionTokenImpl)?.profiler ?: Profiler() } session = EvaluationSessionImpl(ispec, program, supervisor, evaluationTrace, profiler, parameters) Backend.ourBackend.ourSession.set(session) try { val main = parameters[ParameterKey.of("main", Constraint::class.java)] as Constraint - return session.launch(token, main) + val result = session.launch(token, main) + if (profiler != null) { + ((result as EvaluationResultImpl).token as SessionTokenImpl).profiler = profiler + } + return result } finally { try { profiler?.run { formattedData().entries.forEach { e -> durations.put(e.key, e.value) } - clear() +// clear() } } catch (t: Throwable) { @@ -191,7 +195,6 @@ internal class EvaluationSessionImpl private constructor ( } Backend.ourBackend.ourSession.set(null) } - } } diff --git a/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/SessionTokenImpl.kt b/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/SessionTokenImpl.kt index f0fc6d49..3fa07816 100644 --- a/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/SessionTokenImpl.kt +++ b/reactor/Core/src/jetbrains/mps/logic/reactor/core/internal/SessionTokenImpl.kt @@ -22,6 +22,7 @@ import jetbrains.mps.logic.reactor.core.RuleIndex import jetbrains.mps.logic.reactor.evaluation.MatchJournalView import jetbrains.mps.logic.reactor.evaluation.SessionToken import jetbrains.mps.logic.reactor.program.Rule +import jetbrains.mps.logic.reactor.util.Profiler data class SessionTokenImpl( private val journalView: MatchJournal.View, @@ -29,7 +30,8 @@ data class SessionTokenImpl( private val frontState: DispatchingFrontState, val ruleIndex: RuleIndex, val logicalState: LogicalState, - val principalObservers: PrincipalObserverDispatcher = PrincipalObserverDispatcher.EMPTY + val principalObservers: PrincipalObserverDispatcher = PrincipalObserverDispatcher.EMPTY, + var profiler: Profiler? = null ) : SessionToken { override fun getJournalView(): MatchJournalView = journalView