Hello!
I'd like to ask what is the equivalent of devDependencies (dependencies to be loaded only when developing, but not when in profuction / used as a dependency) of a baseline. My baseline method looks like: baseline: spec <baseline> spec for: #common do: [ spec package: 'Towergame' with: [ spec requires: 'GarageGlorp'; requires: 'NeoJSON' ]. spec project: 'GarageGlorp' with: [ spec className: 'ConfigurationOfGarageGlorp'; version: #stable; repository: 'http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo60/main' ]. spec project: 'NeoJSON' with: [ spec className: 'ConfigurationOfNeoJSON'; version: #stable; repository: 'http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo60/main' ]. spec baseline: 'Mocketry' with: [ spec repository: 'github://dionisiydk/Mocketry:v4.0.x' ] ] and I want to have Mocketry as dev-only dependency. How to write it and how to load it with dev / without dev dependencies? Atm I load it this way: Metacello new baseline: 'Towergame'; repository: 'gitlocal:///', (hereRef / 'src') fullName; load. where hereRef is file reference to project dir. Thanks, Herby |
You need to specify groups for your project:
Then your script will load default group with everything. And to load Core group use "load: #(Core)" instread of simple #load message. 2017-07-28 14:33 GMT+02:00 Herby Vojčík <[hidden email]>: Hello! |
And if you really have Towergame-Tests package then you will probably define it as And then Tests group can include only Towergame-Tests package because Mocketry will be loaded as dependency. 2017-07-28 15:39 GMT+02:00 Denis Kudriashov <[hidden email]>:
|
On July 28, 2017 3:41:37 PM GMT+02:00, Denis Kudriashov <[hidden email]> wrote: >And if you really have Towergame-Tests package then you will probably >define it as > > spec package: 'Towergame-Tests' with: [ spec requires: #('Towergame' >'Mocketry') ]. > >And then Tests group can include only Towergame-Tests package because >Mocketry will be loaded as dependency. Thank you sir. I don't have Towergame-Tests in its own package but I presume I can save it as one (category I do have of course). Herby > >2017-07-28 15:39 GMT+02:00 Denis Kudriashov <[hidden email]>: > >> You need to specify groups for your project: >> >> spec >> group: 'default' with: #('Core' 'Tests' ); >> group: 'Core' with: #('Towergame' ); >> group: 'Tests' with: #('Towergame-Tests' 'Mocketry') >> >> >> Then your script will load default group with everything. And to load >Core >> group use "load: #(Core)" instread of simple #load message. >> >> 2017-07-28 14:33 GMT+02:00 Herby Vojčík <[hidden email]>: >> >>> Hello! >>> >>> I'd like to ask what is the equivalent of devDependencies >(dependencies >>> to be loaded only when developing, but not when in profuction / used >as a >>> dependency) of a baseline. >>> >>> My baseline method looks like: >>> >>> baseline: spec >>> <baseline> >>> spec for: #common do: [ >>> spec package: 'Towergame' with: [ spec requires: >>> 'GarageGlorp'; requires: 'NeoJSON' ]. >>> spec project: 'GarageGlorp' with: [ >>> spec >>> className: >'ConfigurationOfGarageGlorp'; >>> version: #stable; >>> repository: ' >>> http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo60/main' ]. >>> spec project: 'NeoJSON' with: [ >>> spec >>> className: 'ConfigurationOfNeoJSON'; >>> version: #stable; >>> repository: ' >>> http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo60/main' ]. >>> spec >>> baseline: 'Mocketry' >>> with: [ spec repository: >>> 'github://dionisiydk/Mocketry:v4.0.x' ] >>> ] >>> >>> and I want to have Mocketry as dev-only dependency. How to write it >and >>> how to load it with dev / without dev dependencies? Atm I load it >this way: >>> >>> Metacello new baseline: 'Towergame'; repository: 'gitlocal:///', >(hereRef >>> / 'src') fullName; load. >>> >>> where hereRef is file reference to project dir. >>> >>> Thanks, Herby >>> >>> >> |
In reply to this post by Denis Kudriashov
On July 28, 2017 3:41:37 PM GMT+02:00, Denis Kudriashov <[hidden email]> wrote: >And if you really have Towergame-Tests package then you will probably >define it as > > spec package: 'Towergame-Tests' with: [ spec requires: #('Towergame' >'Mocketry') ]. > >And then Tests group can include only Towergame-Tests package because >Mocketry will be loaded as dependency. And I presume I can make the core the default and one including the tests as #dev if I felt like it (don't know the cultural pattern though, if default is always including tests and production is always special in Pharo world, I am nor going to break it; in js/npm world, prod is the default). Thanks, Herby > >2017-07-28 15:39 GMT+02:00 Denis Kudriashov <[hidden email]>: > >> You need to specify groups for your project: >> >> spec >> group: 'default' with: #('Core' 'Tests' ); >> group: 'Core' with: #('Towergame' ); >> group: 'Tests' with: #('Towergame-Tests' 'Mocketry') >> >> >> Then your script will load default group with everything. And to load >Core >> group use "load: #(Core)" instread of simple #load message. >> >> 2017-07-28 14:33 GMT+02:00 Herby Vojčík <[hidden email]>: >> >>> Hello! >>> >>> I'd like to ask what is the equivalent of devDependencies >(dependencies >>> to be loaded only when developing, but not when in profuction / used >as a >>> dependency) of a baseline. >>> >>> My baseline method looks like: >>> >>> baseline: spec >>> <baseline> >>> spec for: #common do: [ >>> spec package: 'Towergame' with: [ spec requires: >>> 'GarageGlorp'; requires: 'NeoJSON' ]. >>> spec project: 'GarageGlorp' with: [ >>> spec >>> className: >'ConfigurationOfGarageGlorp'; >>> version: #stable; >>> repository: ' >>> http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo60/main' ]. >>> spec project: 'NeoJSON' with: [ >>> spec >>> className: 'ConfigurationOfNeoJSON'; >>> version: #stable; >>> repository: ' >>> http://smalltalkhub.com/mc/Pharo/MetaRepoForPharo60/main' ]. >>> spec >>> baseline: 'Mocketry' >>> with: [ spec repository: >>> 'github://dionisiydk/Mocketry:v4.0.x' ] >>> ] >>> >>> and I want to have Mocketry as dev-only dependency. How to write it >and >>> how to load it with dev / without dev dependencies? Atm I load it >this way: >>> >>> Metacello new baseline: 'Towergame'; repository: 'gitlocal:///', >(hereRef >>> / 'src') fullName; load. >>> >>> where hereRef is file reference to project dir. >>> >>> Thanks, Herby >>> >>> >> |
Free forum by Nabble | Edit this page |