From f1967252552bcc43c79da02db9f761fe5aad4fb8 Mon Sep 17 00:00:00 2001 From: Kilian B <60846047+knowbased@users.noreply.github.com> Date: Thu, 23 Jul 2026 16:24:33 +0200 Subject: [PATCH 1/3] chore: update dependencies (#17) * chore: update fast java to v4 * chore: update / fix dependencies * fix: mocketry version --- .../BaselineOfMooseRuleEngine.class.st | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st b/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st index 5535161..b6c6143 100644 --- a/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st +++ b/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st @@ -20,20 +20,20 @@ BaselineOfMooseRuleEngine >> defineDependencies: spec [ spec baseline: 'Mocketry' - with: [ spec repository: 'github://dionisiydk/Mocketry' ]. + with: [ spec repository: 'github://dionisiydk/Mocketry:v7.0.3' ]. spec baseline: 'LLMAPI' - with: [ spec repository: 'github://Evref-BL/Pharo-LLMAPI:main/src' ]. + with: [ spec repository: 'github://Evref-BL/Pharo-LLMAPI:1.0.4/src' ]. spec baseline: 'SonarqubePharoAPI' with: [ - spec repository: 'github://Evref-BL/Sonarqube-Pharo-API:develop' ]. + spec repository: 'github://Evref-BL/Sonarqube-Pharo-API:0.1.0' ]. spec baseline: 'FASTJava' with: [ spec - repository: 'github://moosetechnology/FAST-Java:v3/src'; + repository: 'github://moosetechnology/FAST-Java:v4/src'; loads: #( 'smacc' ) ] ] From 717ab1145065c7108df9c868e3a905541f27ff87 Mon Sep 17 00:00:00 2001 From: Kilian B <60846047+knowbased@users.noreply.github.com> Date: Thu, 23 Jul 2026 16:44:00 +0200 Subject: [PATCH 2/3] ci: add pharo and moose 12, 13, 14 (#18) * ci: add pharo and moose 12, 13, 14 * ci: remove moose 14 --- .github/workflows/continuous.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index 985bce8..616ab7f 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - smalltalk: [ Pharo64-12 ] + smalltalk: [ Pharo64-12, Pharo64-13, Pharo64-14, Moose64-12, Moose64-13 ] name: ${{ matrix.smalltalk }} steps: - uses: actions/checkout@v2 From e7feb25b1e3101273cabc6a61f44404d19873a52 Mon Sep 17 00:00:00 2001 From: Kilian B <60846047+knowbased@users.noreply.github.com> Date: Thu, 23 Jul 2026 17:07:59 +0200 Subject: [PATCH 3/3] refactor: seperate dependencies from devDependencies (#19) * refactor: seperate dependencies with devDependencies * doc: update readme with new baseline groupes * ci: use tests group --- .smalltalk.ston | 3 +- README.md | 18 ++++++++-- .../BaselineOfMooseRuleEngine.class.st | 33 ++++++++++++------- 3 files changed, 39 insertions(+), 15 deletions(-) diff --git a/.smalltalk.ston b/.smalltalk.ston index 2161231..9fe2564 100644 --- a/.smalltalk.ston +++ b/.smalltalk.ston @@ -4,6 +4,7 @@ SmalltalkCISpec { #baseline : 'MooseRuleEngine', #directory : 'src', #ignoreImage : true, + #load : [ 'tests' ], #onConflict : #useIncoming, #onUpgrade : #useIncoming } @@ -14,4 +15,4 @@ SmalltalkCISpec { #format : #lcov } } -} \ No newline at end of file +} diff --git a/README.md b/README.md index baa64e7..509afab 100644 --- a/README.md +++ b/README.md @@ -35,19 +35,31 @@ Moose-Rule-Engine is a multi-language, rule-based engine designed for code analy ### From Playground -To load the Moose-Rule-Engine from the Playground, run the following script: +To load Moose-Rule-Engine runtime from a Playground: ```st Metacello new githubUser: 'Evref-BL' project: 'Moose-Rule-Engine' commitish: 'main' path: 'src'; baseline: 'MooseRuleEngine'; + loads: #( 'default' ); + onConflict: [ :ex | ex useIncoming ]; + load. +``` + +To load everything for development, including tests: + +```st +Metacello new + githubUser: 'Evref-BL' project: 'Moose-Rule-Engine' commitish: 'main' path: 'src'; + baseline: 'MooseRuleEngine'; + loads: #( 'dev' ); onConflict: [ :ex | ex useIncoming ]; load. ``` ### Baseline Dependency -To include Moose-Rule-Engine as a dependency in your project, add the following to your baseline: +To use Moose-Rule-Engine as a dependency: ```st spec baseline: 'MooseRuleEngine' with: [ @@ -55,6 +67,8 @@ spec baseline: 'MooseRuleEngine' with: [ ]. ``` +By default this loads only the runtime package. Tests and dev dependencies are opt-in through the `tests` or `dev` groups. + --- ## Usage diff --git a/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st b/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st index b6c6143..c069c5d 100644 --- a/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st +++ b/src/BaselineOfMooseRuleEngine/BaselineOfMooseRuleEngine.class.st @@ -10,18 +10,15 @@ BaselineOfMooseRuleEngine >> baseline: spec [ spec for: #common do: [ - self defineDependencies: spec. - self definePackages: spec. - self defineGroups: spec ] + self defineDependencies: spec. + self defineDevDependencies: spec. + self definePackages: spec. + self defineGroups: spec ] ] { #category : 'dependencies' } BaselineOfMooseRuleEngine >> defineDependencies: spec [ - spec - baseline: 'Mocketry' - with: [ spec repository: 'github://dionisiydk/Mocketry:v7.0.3' ]. - spec baseline: 'LLMAPI' with: [ spec repository: 'github://Evref-BL/Pharo-LLMAPI:1.0.4/src' ]. @@ -29,18 +26,30 @@ BaselineOfMooseRuleEngine >> defineDependencies: spec [ spec baseline: 'SonarqubePharoAPI' with: [ - spec repository: 'github://Evref-BL/Sonarqube-Pharo-API:0.1.0' ]. + spec repository: 'github://Evref-BL/Sonarqube-Pharo-API:0.1.0' ] +] + +{ #category : 'dependencies' } +BaselineOfMooseRuleEngine >> defineDevDependencies: spec [ + + spec + baseline: 'Mocketry' + with: [ spec repository: 'github://dionisiydk/Mocketry:v7.0.3' ]. spec baseline: 'FASTJava' with: [ - spec - repository: 'github://moosetechnology/FAST-Java:v4/src'; - loads: #( 'smacc' ) ] + spec + repository: 'github://moosetechnology/FAST-Java:v4/src'; + loads: #( 'smacc' ) ] ] { #category : 'groups' } BaselineOfMooseRuleEngine >> defineGroups: spec [ - + spec + group: 'default' with: #( 'MooseRuleEngine' ); + group: 'tests' with: #( 'MooseRuleEngine-Tests' ); + group: 'dev' with: #( 'default' 'tests' ); + group: 'all' with: #( 'default' 'tests' ) ] { #category : 'packages' }