Looks like we are on the same wavelength but...
Look how this is done in PHP with Composer:
- simple Json file
- declares repositories
- requires and requiresdev
- uses semver versions
so, 'composer install' will fetch and install deps.
composer update will update deps.
composer.json
{
�� �� "name": "zendframework/skeleton-application",
�� �� "description": "Skeleton Application for ZF2",
�� �� "license": "BSD-3-Clause",
�� �� "keywords": [
�� �� �� �� "framework",
�� �� �� �� "zf2"
�� �� ],
�� �� "repositories": [{
�� �� �� �� "type": "vcs",
�� �� �� �� }],
�� �� "require": {
�� �� �� �� "php": ">=5.5",
�� �� �� �� "zendframework/zendframework": "~2.5",
�� �� �� �� "zendframework/zftool": "dev-master",
�� �� �� �� "firephp/firephp-core": "dev-master",
�� �� �� �� "videlalvaro/php-amqplib": "^2.5"
�� �� },
�� �� "require-dev": {
�� �� �� �� "snapshotpl/zf-snap-event-debugger": "1.*",
�� �� �� �� "zendframework/zend-developer-tools": "dev-master",
�� �� �� �� "phpunit/phpunit": "4.8.*"
�� �� }
}
In the JS Ecosystem, eg. bower.json
{
�� "name": "adsdaq",
�� "authors": [
�� ],
�� "description": "adsdaq-frontend",
�� "main": "",
�� "moduleType": [],
�� "license": "Adlogix",
�� "private": true,
�� "ignore": [
�� �� "**/.*",
�� �� "node_modules",
�� �� "bower_components",
�� �� "vendor/bower_components",
�� �� "test",
�� �� "tests"
�� ],
�� "dependencies": {
�� �� "angular": "~1.4.7",
�� �� "restangular": "~1.5.1",
�� �� "lodash": "~3.10.1",
�� �� "angular-route": "~1.4.7",
�� �� "angular-spinner": "~0.8.0",
�� �� "angular-bootstrap": "~0.14.3",
�� �� "typeahead.js": "~0.11.1"
�� }
}
So, basic module names in deps and semver.
The st code you show is more cryptic.
Is there a sweet spot ?
Ston is a great format and is Json compatible if we are careful (meaning I can actually use vim and json syntax checkers plugins)
St code is indeed more powerful but it leaves a lot of people in the dust with configurations.
What do you think?
Phil