From e6880dc6c72a091944aa12667f020d4acc3152b2 Mon Sep 17 00:00:00 2001 From: Alexander Pann Date: Mon, 19 Aug 2024 10:01:04 +0200 Subject: [PATCH 1/2] mpsutils: create a new language for check-in handlers --- CHANGELOG.md | 4 + .../models/com/mbeddr/platform/build.mps | 110 ++ .../com.mbeddr.mpsutil/.mps/modules.xml | 5 +- ...ddr.mpsutil.checkinHandler.demo.plugin.msd | 52 + ...util.checkinHandler.demo.plugin.plugin.mps | 1159 ++++++++++++++++ ...com.mbeddr.mpsutil.checkinHandler.demo.mps | 1160 ++++++++++++++++ .../com.mbeddr.mpsutil.checkinHandler.msd | 47 + ...m.mbeddr.mpsutil.checkinHandler.plugin.mps | 1165 +++++++++++++++++ 8 files changed, 3701 insertions(+), 1 deletion(-) create mode 100644 code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd create mode 100644 code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps create mode 100644 code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo/models/com.mbeddr.mpsutil.checkinHandler.demo.mps create mode 100644 code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/com.mbeddr.mpsutil.checkinHandler.msd create mode 100644 code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps diff --git a/CHANGELOG.md b/CHANGELOG.md index 1fcab7121d..cde12402ef 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,10 @@ Semantic Versioning and the changes are simply documented in reverse chronologic ## com.mbeddr.platform +### Added + +- A new language `com.mbeddr.mpsutil.checkinHandler` was added that can be used to execute pre-commit handlers which can approve or reject commits or execute arbitrary code before the checkin happens. + ### Removed - The tests build script (`com.mbeddr.platform.tests.ts.build`) is no longer part of the `com.mbeddr.platform` build diff --git a/code/languages/com.mbeddr.build/solutions/com.mbeddr.platform/models/com/mbeddr/platform/build.mps b/code/languages/com.mbeddr.build/solutions/com.mbeddr.platform/models/com/mbeddr/platform/build.mps index 80a2cec901..5175a6f56e 100644 --- a/code/languages/com.mbeddr.build/solutions/com.mbeddr.platform/models/com/mbeddr/platform/build.mps +++ b/code/languages/com.mbeddr.build/solutions/com.mbeddr.platform/models/com/mbeddr/platform/build.mps @@ -20901,6 +20901,10 @@ + + + + @@ -21209,6 +21213,112 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/languages/com.mbeddr.mpsutil/.mps/modules.xml b/code/languages/com.mbeddr.mpsutil/.mps/modules.xml index 3ecfaefb84..daa0d01cae 100644 --- a/code/languages/com.mbeddr.mpsutil/.mps/modules.xml +++ b/code/languages/com.mbeddr.mpsutil/.mps/modules.xml @@ -2,7 +2,6 @@ - @@ -14,6 +13,8 @@ + + @@ -108,6 +109,8 @@ + + diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd new file mode 100644 index 0000000000..9c945b75c8 --- /dev/null +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + 5e43bd52-71f1-484a-90fa-e1e624f7e44b(com.mbeddr.mpsutil.checkinHandler) + f57286e3-4e19-4d8d-8045-3900761f6530(jetbrains.mps.git4idea.stubs) + 498d89d2-c2e9-11e2-ad49-6cf049e62fe5(MPS.IDEA) + 6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core) + ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core) + f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps new file mode 100644 index 0000000000..c8d9133c5f --- /dev/null +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps @@ -0,0 +1,1159 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo/models/com.mbeddr.mpsutil.checkinHandler.demo.mps b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo/models/com.mbeddr.mpsutil.checkinHandler.demo.mps new file mode 100644 index 0000000000..91057f4fd9 --- /dev/null +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo/models/com.mbeddr.mpsutil.checkinHandler.demo.mps @@ -0,0 +1,1160 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/com.mbeddr.mpsutil.checkinHandler.msd b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/com.mbeddr.mpsutil.checkinHandler.msd new file mode 100644 index 0000000000..8f29afcad7 --- /dev/null +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/com.mbeddr.mpsutil.checkinHandler.msd @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + 6354ebe7-c22a-4a0f-ac54-50b52ab9b065(JDK) + 498d89d2-c2e9-11e2-ad49-6cf049e62fe5(MPS.IDEA) + 3f233e7f-b8a6-46d2-a57f-795d56775243(Annotations) + 742f6602-5a2f-4313-aa6e-ae1cd4ffdc61(MPS.Platform) + 6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core) + 8865b7a8-5271-43d3-884c-6fd1d9cfdd34(MPS.OpenAPI) + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps new file mode 100644 index 0000000000..3e9c055b6b --- /dev/null +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps @@ -0,0 +1,1165 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 56104495390e801f614885d8671a7443dc9942be Mon Sep 17 00:00:00 2001 From: Alexander Pann Date: Tue, 20 Aug 2024 13:31:24 +0200 Subject: [PATCH 2/2] mpsutil.checkingHandler: add another example --- ...ddr.mpsutil.checkinHandler.demo.plugin.msd | 8 + ...util.checkinHandler.demo.plugin.plugin.mps | 398 +++++++++++++++++- ...m.mbeddr.mpsutil.checkinHandler.plugin.mps | 27 ++ 3 files changed, 421 insertions(+), 12 deletions(-) diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd index 9c945b75c8..c09b728de1 100644 --- a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/com.mbeddr.mpsutil.checkinHandler.demo.plugin.msd @@ -18,6 +18,8 @@ 6ed54515-acc8-4d1e-a16c-9fd6cfe951ea(MPS.Core) ceab5195-25ea-4f22-9b92-103b95ca8c0c(jetbrains.mps.lang.core) f3061a53-9226-4cc5-a443-f952ceaf5816(jetbrains.mps.baseLanguage) + 742f6602-5a2f-4313-aa6e-ae1cd4ffdc61(MPS.Platform) + 019b622b-0aef-4dd3-86d0-4eef01f3f6bb(jetbrains.mps.ide) @@ -38,15 +40,21 @@ + + + + + + diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps index c8d9133c5f..c263e4b5b8 100644 --- a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler.demo.plugin/models/com.mbeddr.mpsutil.checkinHandler.demo.plugin.plugin.mps @@ -23,9 +23,21 @@ + + + + + + + + + + + + @@ -76,6 +88,9 @@ + + + @@ -86,6 +101,9 @@ + + + @@ -224,15 +242,23 @@ + + + + + + + + @@ -330,7 +356,7 @@ - + @@ -524,7 +550,7 @@ - + @@ -536,7 +562,7 @@ - + @@ -604,7 +630,7 @@ - + @@ -752,7 +778,7 @@ - + @@ -764,7 +790,7 @@ - + @@ -831,7 +857,7 @@ - + @@ -965,7 +991,7 @@ - + @@ -998,7 +1024,7 @@ - + @@ -1062,7 +1088,7 @@ - + @@ -1114,7 +1140,7 @@ - + @@ -1124,7 +1150,7 @@ - + @@ -1156,4 +1182,352 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps index 3e9c055b6b..d80491b7d8 100644 --- a/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps +++ b/code/languages/com.mbeddr.mpsutil/solutions/com.mbeddr.mpsutil.checkinHandler/models/com.mbeddr.mpsutil.checkinHandler.plugin.mps @@ -238,6 +238,10 @@ + + + + @@ -882,6 +886,28 @@ + + + + + + + + + + + + + + + + + + + + + + @@ -1163,3 +1189,4 @@ +