Compare commits

...

2 Commits

Author SHA1 Message Date
a264070d5c Merge 3a2d096025 2024-04-03 17:10:18 -05:00
642712cdfd Adding yq support to Windows platform. 2024-04-03 17:10:01 -05:00
2 changed files with 109 additions and 105 deletions

View File

@ -1,99 +1,99 @@
Class { Class {
#name : #BaselineOfMiniDocs, #name : #BaselineOfMiniDocs,
#superclass : #BaselineOf, #superclass : #BaselineOf,
#category : #BaselineOfMiniDocs #category : #BaselineOfMiniDocs
} }
{ #category : #accessing } { #category : #accessing }
BaselineOfMiniDocs >> baseline: spec [ BaselineOfMiniDocs >> baseline: spec [
<baseline> <baseline>
spec spec
for: #common for: #common
do: [ do: [
"Dependencies" "Dependencies"
self setUpTeapot: spec. self setUpTeapot: spec.
self setUpPetitParser: spec. self setUpPetitParser: spec.
"LepiterBuildingBlocs commented while resolving the conflict with the internal gtoolkit renaming." "LepiterBuildingBlocs commented while resolving the conflict with the internal gtoolkit renaming."
"self setUpLepiterBuildingBlocs: spec" "self setUpLepiterBuildingBlocs: spec"
spec spec
baseline: 'Mustache' with: [ spec repository: 'github://noha/mustache' ]; baseline: 'Mustache' with: [ spec repository: 'github://noha/mustache' ];
baseline: 'Temple' with: [ spec repository: 'github://astares/Pharo-Temple/src' ]; baseline: 'Temple' with: [ spec repository: 'github://astares/Pharo-Temple/src' ];
baseline: 'Tealight' with: [ spec repository: 'github://astares/Tealight:main/src' ]; baseline: 'Tealight' with: [ spec repository: 'github://astares/Tealight:main/src' ];
baseline: 'DataFrame' with: [ spec repository: 'github://PolyMathOrg/DataFrame/src' ]. baseline: 'DataFrame' with: [ spec repository: 'github://PolyMathOrg/DataFrame/src' ].
"self fossil: spec." "self fossil: spec."
self xmlParserHTML: spec. self xmlParserHTML: spec.
"Packages" "Packages"
spec spec
package: 'PetitMarkdown' with: [ spec requires: #('PetitParser')]; package: 'PetitMarkdown' with: [ spec requires: #('PetitParser')];
package: 'MiniDocs' package: 'MiniDocs'
with: [ spec requires: #( with: [ spec requires: #(
'Mustache' 'Temple' "Templating" 'Mustache' 'Temple' "Templating"
'Teapot' 'Tealight' "Web server" 'Teapot' 'Tealight' "Web server"
'PetitMarkdown' 'PetitParser' "Parsers" 'PetitMarkdown' 'PetitParser' "Parsers"
'DataFrame' "Tabular data")]. 'DataFrame' "Tabular data")].
. .
"Groups" "Groups"
]. ].
spec spec
] ]
{ #category : #accessing } { #category : #accessing }
BaselineOfMiniDocs >> fossil: spec [ BaselineOfMiniDocs >> fossil: spec [
| repo | | repo |
repo := ExoRepo new repo := ExoRepo new
repository: 'https://code.sustrato.red/Offray/Fossil'. repository: 'https://code.sustrato.red/Offray/Fossil'.
repo load. repo load.
spec baseline: 'Fossil' with: [ spec repository: 'gitlocal://', repo local fullName ] spec baseline: 'Fossil' with: [ spec repository: 'gitlocal://', repo local fullName ]
] ]
{ #category : #accessing } { #category : #accessing }
BaselineOfMiniDocs >> semanticVersion [ BaselineOfMiniDocs >> semanticVersion [
^ '0.2.0' ^ '0.2.0'
] ]
{ #category : #accessing } { #category : #accessing }
BaselineOfMiniDocs >> setUpLepiterBuildingBlocs: spec [ BaselineOfMiniDocs >> setUpLepiterBuildingBlocs: spec [
spec spec
baseline: 'LepiterBuildingBlocs' baseline: 'LepiterBuildingBlocs'
with: [spec with: [spec
repository: 'github://botwhytho/LepiterBuildingBlocs:main/src'; repository: 'github://botwhytho/LepiterBuildingBlocs:main/src';
loads: #('ALL')]; loads: #('ALL')];
import: 'LepiterBuildingBlocs' import: 'LepiterBuildingBlocs'
] ]
{ #category : #accessing } { #category : #accessing }
BaselineOfMiniDocs >> setUpPetitParser: spec [ BaselineOfMiniDocs >> setUpPetitParser: spec [
spec spec
baseline: 'PetitParser' baseline: 'PetitParser'
with: [ spec with: [ spec
repository: 'github://moosetechnology/PetitParser:v3.x.x/src'; repository: 'github://moosetechnology/PetitParser:v3.x.x/src';
loads: #('Minimal' 'Core' 'Tests' 'Islands')]; loads: #('Minimal' 'Core' 'Tests' 'Islands')];
import: 'PetitParser' import: 'PetitParser'
] ]
{ #category : #accessing } { #category : #accessing }
BaselineOfMiniDocs >> setUpTeapot: spec [ BaselineOfMiniDocs >> setUpTeapot: spec [
spec spec
baseline: 'Teapot' baseline: 'Teapot'
with: [ spec with: [ spec
repository: 'github://zeroflag/Teapot/source'; repository: 'github://zeroflag/Teapot/source';
loads: #('ALL') ]; loads: #('ALL') ];
import: 'Teapot' import: 'Teapot'
] ]
{ #category : #accessing } { #category : #accessing }
BaselineOfMiniDocs >> xmlParserHTML: spec [ BaselineOfMiniDocs >> xmlParserHTML: spec [
spec spec
baseline: 'XMLParserHTML' baseline: 'XMLParserHTML'
with: [ spec with: [ spec
repository: 'github://ruidajo/XML-XMLParserHTML/src'; repository: 'github://ruidajo/XML-XMLParserHTML/src';
loads: #('ALL')]; loads: #('ALL')];
import: 'XMLParserHTML' import: 'XMLParserHTML'
] ]

View File

@ -33,12 +33,16 @@ YQ class >> jsonToYaml: aDictionary [
| jsonFile | | jsonFile |
self binaryFile exists ifFalse: [ YQ install]. self binaryFile exists ifFalse: [ YQ install].
jsonFile := MarkupFile exportAsFileOn: FileLocator temp / 'data.json' containing: aDictionary. jsonFile := MarkupFile exportAsFileOn: FileLocator temp / 'data.json' containing: aDictionary.
OSSUnixSubprocess new (Smalltalk os isUnix or: [ Smalltalk os isMacOS ])
shellCommand: 'cat ', jsonFile fullName,' | yq -y'; ifTrue: [
redirectStdout; OSSUnixSubprocess new
runAndWaitOnExitDo: [ :command :outString | shellCommand: 'cat ', jsonFile fullName,' | yq -y';
^ outString redirectStdout;
]. runAndWaitOnExitDo: [ :command :outString |
^ outString
]].
Smalltalk os isWindows
ifTrue: [ ^ LibC resultOfCommand: 'yq -p=json ', jsonFile fullName ].
] ]
{ #category : #accessing } { #category : #accessing }