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' }