From f2a49d912e1c640a607e5fd15f3cfdea07fe8dcb Mon Sep 17 00:00:00 2001 From: Ross Smith II Date: Thu, 12 Jan 2017 06:59:00 -0800 Subject: [PATCH 1/6] Change licence to license --- bucket/ack.json | 2 +- bucket/ag.json | 2 +- bucket/curl.json | 2 +- bucket/pt.json | 2 +- bucket/rg.json | 2 +- bucket/thrift.json | 2 +- bucket/yarn.json | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/bucket/ack.json b/bucket/ack.json index b7dc466a6..a1fa34d1e 100644 --- a/bucket/ack.json +++ b/bucket/ack.json @@ -1,6 +1,6 @@ { "homepage": "http://beyondgrep.com/", - "licence": "http://opensource.org/licenses/Artistic-2.0", + "license": "http://opensource.org/licenses/Artistic-2.0", "version": "2.14", "url": "http://beyondgrep.com/ack-2.14-single-file", "hash": "1d203cfbc52ce8f49e3992be1cd3e4d7d5dfb7daa3739e8628aa9858ccc5b9df", diff --git a/bucket/ag.json b/bucket/ag.json index 70d16d832..e56a6dbee 100644 --- a/bucket/ag.json +++ b/bucket/ag.json @@ -1,6 +1,6 @@ { "homepage": "http://geoff.greer.fm/ag/", - "licence": "Apache 2.0", + "license": "Apache 2.0", "version": "0.29.1", "url": "https://kjkpub.s3.amazonaws.com/software/the_silver_searcher/rel/0.29.1-1641/ag.zip", "hash": "0f2643b925df66a56df82d419262c88c076ba257ab3a57c77291fce7b4479530", diff --git a/bucket/curl.json b/bucket/curl.json index 1e5ac8cc9..13b11d6f5 100644 --- a/bucket/curl.json +++ b/bucket/curl.json @@ -1,7 +1,7 @@ { "homepage": "https://curl.haxx.se/", "version": "7.52.1", - "licence": "MIT", + "license": "MIT", "architecture": { "64bit": { "url": "https://winampplugins.co.uk/curl/curl_7_52_0_openssl_nghttp2_x64.7z", diff --git a/bucket/pt.json b/bucket/pt.json index 4a92c520c..1f2759a9c 100644 --- a/bucket/pt.json +++ b/bucket/pt.json @@ -1,6 +1,6 @@ { "homepage": "https://github.com/monochromegane/the_platinum_searcher", - "licence": "MIT", + "license": "MIT", "version": "2.1.5", "architecture": { "64bit": { diff --git a/bucket/rg.json b/bucket/rg.json index 8a8ce7cb3..5084aec11 100644 --- a/bucket/rg.json +++ b/bucket/rg.json @@ -1,6 +1,6 @@ { "homepage": "https://github.com/BurntSushi/ripgrep", - "licence": "MIT", + "license": "MIT", "version": "0.3.2", "architecture": { "64bit": { diff --git a/bucket/thrift.json b/bucket/thrift.json index 1671959b7..f32ca87a1 100644 --- a/bucket/thrift.json +++ b/bucket/thrift.json @@ -1,7 +1,7 @@ { "homepage": "https://thrift.apache.org/", "version": "0.10.0", - "licence": "Apache License v2.0", + "license": "Apache License v2.0", "url": "https://www-us.apache.org/dist/thrift/0.10.0/thrift-0.10.0.exe", "hash": "85aca25c5193c48ec6cc1c0a4c40fac5ea3fde2192c2ffaaad92a9b56d7a8f9a", "bin": "thrift.exe", diff --git a/bucket/yarn.json b/bucket/yarn.json index b9d49d2be..2b3d0e0e2 100644 --- a/bucket/yarn.json +++ b/bucket/yarn.json @@ -1,6 +1,6 @@ { "homepage": "https://yarnpkg.com/", - "licence": "BSD", + "license": "BSD", "version": "0.18.1", "depends": "nodejs", "url": "https://github.com/yarnpkg/yarn/releases/download/v0.18.1/yarn-0.18.1.msi", From 489e90c40089ddac3e548ae3623df8c3ae2e2ebf Mon Sep 17 00:00:00 2001 From: Ross Smith II Date: Thu, 12 Jan 2017 07:02:38 -0800 Subject: [PATCH 2/6] Change set_env to env_set --- bucket/grails.json | 2 +- bucket/groovy.json | 2 +- bucket/kotlin.json | 2 +- bucket/scala.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bucket/grails.json b/bucket/grails.json index 789942af6..8b8e9dd0f 100644 --- a/bucket/grails.json +++ b/bucket/grails.json @@ -8,7 +8,7 @@ "bin": [ "bin\\grails.bat" ], - "set_env": { + "env_set": { "GRAILS_HOME": "$dir" }, "depends": "openjdk", diff --git a/bucket/groovy.json b/bucket/groovy.json index 834e3f732..c9b93492b 100644 --- a/bucket/groovy.json +++ b/bucket/groovy.json @@ -15,7 +15,7 @@ "bin\\java2groovy.bat", "bin\\startGroovy.bat" ], - "set_env": { + "env_set": { "GROOVY_HOME": "$dir" }, "depends": "openjdk", diff --git a/bucket/kotlin.json b/bucket/kotlin.json index 5e7bcf96a..c26528a7a 100644 --- a/bucket/kotlin.json +++ b/bucket/kotlin.json @@ -11,7 +11,7 @@ "bin\\kotlinc-js.bat", "bin\\kotlinc-jvm.bat" ], - "set_env": { + "env_set": { "KOTLIN_HOME": "$dir" }, "depends": "openjdk", diff --git a/bucket/scala.json b/bucket/scala.json index 4c0c04d40..76bfd63bc 100644 --- a/bucket/scala.json +++ b/bucket/scala.json @@ -12,7 +12,7 @@ "bin\\scaladoc.bat", "bin\\scalap.bat" ], - "set_env": { + "env_set": { "SCALA_HOME": "$dir" }, "depends": "openjdk", From a319cad82604d4c37a4bd77ce29bc26e6c170dcd Mon Sep 17 00:00:00 2001 From: Ross Smith II Date: Thu, 12 Jan 2017 07:18:06 -0800 Subject: [PATCH 3/6] Add manifest schema (all manifests pass) --- schema.json | 398 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 398 insertions(+) create mode 100644 schema.json diff --git a/schema.json b/schema.json new file mode 100644 index 000000000..39cb232d3 --- /dev/null +++ b/schema.json @@ -0,0 +1,398 @@ +{ + "$id": "http://scoop.sh/draft/schema#", + "$schema": "http://scoop.sh/draft/schema#", + "definitions": { + "architecture": { + "additionalProperties": false, + "properties": { + "bin": { + "$ref": "#/definitions/stringOrArrayOfStringsOrAnArrayOfArrayOfStrings" + }, + "extract_dir": { + "$ref": "#/definitions/stringOrArrayOfStringsMin1" + }, + "hash": { + "$ref": "#/definitions/stringOrArrayOfStringsMin1" + }, + "installer": { + "$ref": "#/definitions/installer" + }, + "msi": { + "$ref": "#/definitions/stringOrArrayOfStringsMin1" + }, + "post_install": { + "$ref": "#/definitions/stringOrArrayOfStringsMin1" + }, + "pre_install": { + "$ref": "#/definitions/stringOrArrayOfStringsMin1" + }, + "uninstaller": { + "$ref": "#/definitions/uninstaller" + }, + "url": { + "$ref": "#/definitions/uriOrArrayOfUris" + } + }, + "type": "object" + }, + "arrayOfArrayOfStrings": { + "items": { + "items": { + "type": "string" + }, + "type": "array" + }, + "type": "array" + }, + "autoupdate": { + "additionalProperties": false, + "properties": { + "architecture": { + "additionalProperties": false, + "properties": { + "32bit": { + "additionalProperties": false, + "properties": { + "extract_dir": { + "type": "string" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "type": "object" + }, + "64bit": { + "additionalProperties": false, + "properties": { + "extract_dir": { + "type": "string" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "extract_dir": { + "$ref": "#/definitions/stringOrArrayOfStringsMin1" + }, + "hash": { + "additionalProperties": false, + "properties": { + "find": { + "type": "string" + }, + "mode": { + "type": "string" + }, + "type": { + "type": "string" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "type": "object" + }, + "note": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "type": "object" + }, + "checkver": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": false, + "properties": { + "github": { + "format": "uri", + "type": "string" + }, + "re": { + "format": "regex", + "type": "string" + }, + "url": { + "format": "uri", + "type": "string" + } + }, + "type": "object" + } + ] + }, + "installer": { + "additionalProperties": false, + "properties": { + "_comment": { + "type": "string" + }, + "args": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "file": { + "type": "string" + }, + "keep": { + "type": "string" + } + }, + "type": "object" + }, + "stringOrArrayOfStrings": { + "anyOf": [ + { + "type": "string" + }, + { + "items": { + "type": "string" + }, + "type": "array" + } + ] + }, + "stringOrArrayOfStringsMin1": { + "anyOf": [ + { + "type": "string" + }, + { + "items": { + "type": "string" + }, + "minItems": 1, + "type": "array", + "uniqueItems": true + } + ] + }, + "stringOrArrayOfStringsOrAnArrayOfArrayOfStrings": { + "anyOf": [ + { + "type": "string" + }, + { + "items": { + "anyOf": [ + { + "type": "string" + }, + { + "items": { + "type": "string" + }, + "type": "array" + } + ] + }, + "type": "array" + } + ] + }, + "uninstaller": { + "properties": { + "_comment": { + "type": "string" + }, + "args": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "file": { + "type": "string" + } + }, + "type": "object" + }, + "uriOrArrayOfUris": { + "anyOf": [ + { + "format": "uri", + "type": "string" + }, + { + "items": { + "format": "uri", + "type": "string" + }, + "minItems": 1, + "type": "array", + "uniqueItems": true + } + ] + } + }, + "additionalProperties": false, + "properties": { + "_comment": { + "type": "string" + }, + "architecture": { + "additionalProperties": false, + "properties": { + "32bit": { + "additionalProperties": false, + "properties": { + "bin": { + "$ref": "#/definitions/stringOrArrayOfStringsOrAnArrayOfArrayOfStrings" + }, + "checkver": { + "$ref": "#/definitions/checkver" + }, + "extract_dir": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "hash": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "installer": { + "$ref": "#/definitions/installer" + }, + "msi": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "post_install": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "pre_install": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "uninstaller": { + "$ref": "#/definitions/uninstaller" + }, + "url": { + "$ref": "#/definitions/uriOrArrayOfUris" + } + }, + "type": "object" + }, + "64bit": { + "additionalProperties": false, + "properties": { + "bin": { + "$ref": "#/definitions/stringOrArrayOfStringsOrAnArrayOfArrayOfStrings" + }, + "checkver": { + "$ref": "#/definitions/checkver" + }, + "extract_dir": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "hash": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "installer": { + "$ref": "#/definitions/installer" + }, + "msi": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "post_install": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "pre_install": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "uninstaller": { + "$ref": "#/definitions/uninstaller" + }, + "url": { + "$ref": "#/definitions/uriOrArrayOfUris" + } + }, + "type": "object" + } + }, + "type": "object" + }, + "autoupdate": { + "$ref": "#/definitions/autoupdate" + }, + "bin": { + "$ref": "#/definitions/stringOrArrayOfStringsOrAnArrayOfArrayOfStrings" + }, + "checkver": { + "$ref": "#/definitions/checkver" + }, + "cookie": { + "type": "object" + }, + "depends": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "description": { + "type": "string" + }, + "env_add_path": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "env_set": { + "type": "object" + }, + "extract_dir": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "extract_to": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "hash": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "homepage": { + "type": "string" + }, + "innosetup": { + "type": "boolean" + }, + "installer": { + "$ref": "#/definitions/installer" + }, + "license": { + "type": "string" + }, + "msi": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "notes": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "post_install": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "pre_install": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "shortcuts": { + "$ref": "#/definitions/arrayOfArrayOfStrings" + }, + "travel_dirs": { + "$ref": "#/definitions/stringOrArrayOfStrings" + }, + "uninstaller": { + "$ref": "#/definitions/uninstaller" + }, + "url": { + "$ref": "#/definitions/uriOrArrayOfUris" + }, + "version": { + "type": "string" + } + }, + "title": "scoop app manifest schema", + "type": "object" +} \ No newline at end of file From c0f8e9800c8c093198331e61383f043e81a043f4 Mon Sep 17 00:00:00 2001 From: Ross Smith II Date: Thu, 12 Jan 2017 08:27:15 -0800 Subject: [PATCH 4/6] Add nl to schema.json --- schema.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/schema.json b/schema.json index 39cb232d3..73d471946 100644 --- a/schema.json +++ b/schema.json @@ -395,4 +395,4 @@ }, "title": "scoop app manifest schema", "type": "object" -} \ No newline at end of file +} From c5ba44eb192cd2ac946af91229e32d9356f623e5 Mon Sep 17 00:00:00 2001 From: Ross Smith II Date: Thu, 12 Jan 2017 09:12:10 -0800 Subject: [PATCH 5/6] Add documentation to schema --- schema.json | 43 ++++++++++++++++++++++++++++++++++--------- 1 file changed, 34 insertions(+), 9 deletions(-) diff --git a/schema.json b/schema.json index 73d471946..0cd6ae563 100644 --- a/schema.json +++ b/schema.json @@ -1,6 +1,7 @@ { "$id": "http://scoop.sh/draft/schema#", "$schema": "http://scoop.sh/draft/schema#", + "additionalProperties": false, "definitions": { "architecture": { "additionalProperties": false, @@ -18,7 +19,8 @@ "$ref": "#/definitions/installer" }, "msi": { - "$ref": "#/definitions/stringOrArrayOfStringsMin1" + "$ref": "#/definitions/stringOrArrayOfStringsMin1", + "description": "Deprecated" }, "post_install": { "$ref": "#/definitions/stringOrArrayOfStringsMin1" @@ -86,13 +88,22 @@ "additionalProperties": false, "properties": { "find": { + "format": "regex", "type": "string" }, "mode": { - "type": "string" + "enum": [ + "download", + "extract", + "rdf" + ] }, "type": { - "type": "string" + "enum": [ + "sha1", + "sha256", + "sha512" + ] }, "url": { "format": "uri", @@ -114,6 +125,7 @@ "checkver": { "anyOf": [ { + "format": "regex", "type": "string" }, { @@ -140,6 +152,7 @@ "additionalProperties": false, "properties": { "_comment": { + "description": "Undocumented", "type": "string" }, "args": { @@ -208,6 +221,7 @@ "uninstaller": { "properties": { "_comment": { + "description": "Undocumented", "type": "string" }, "args": { @@ -217,6 +231,9 @@ "type": "string" } }, + "required": [ + "file" + ], "type": "object" }, "uriOrArrayOfUris": { @@ -237,9 +254,9 @@ ] } }, - "additionalProperties": false, "properties": { "_comment": { + "description": "Undocumented", "type": "string" }, "architecture": { @@ -264,7 +281,8 @@ "$ref": "#/definitions/installer" }, "msi": { - "$ref": "#/definitions/stringOrArrayOfStrings" + "$ref": "#/definitions/stringOrArrayOfStrings", + "description": "Deprecated" }, "post_install": { "$ref": "#/definitions/stringOrArrayOfStrings" @@ -300,7 +318,8 @@ "$ref": "#/definitions/installer" }, "msi": { - "$ref": "#/definitions/stringOrArrayOfStrings" + "$ref": "#/definitions/stringOrArrayOfStrings", + "description": "Deprecated" }, "post_install": { "$ref": "#/definitions/stringOrArrayOfStrings" @@ -330,6 +349,7 @@ "$ref": "#/definitions/checkver" }, "cookie": { + "description": "Undocumented: only found in https://github.com/lukesampson/scoop-extras/blob/master/oraclejdk*.json", "type": "object" }, "depends": { @@ -348,15 +368,18 @@ "$ref": "#/definitions/stringOrArrayOfStrings" }, "extract_to": { - "$ref": "#/definitions/stringOrArrayOfStrings" + "$ref": "#/definitions/stringOrArrayOfStrings", + "description": "Undocumented: only found in https://github.com/lukesampson/scoop/blob/master/bucket/ruby*.json" }, "hash": { "$ref": "#/definitions/stringOrArrayOfStrings" }, "homepage": { + "format": "uri", "type": "string" }, "innosetup": { + "description": "Undocumented: found in 6 manifests in https://github.com/lukesampson/scoop/blob/master/bucket", "type": "boolean" }, "installer": { @@ -366,7 +389,8 @@ "type": "string" }, "msi": { - "$ref": "#/definitions/stringOrArrayOfStrings" + "$ref": "#/definitions/stringOrArrayOfStrings", + "description": "Deprecated" }, "notes": { "$ref": "#/definitions/stringOrArrayOfStrings" @@ -381,7 +405,8 @@ "$ref": "#/definitions/arrayOfArrayOfStrings" }, "travel_dirs": { - "$ref": "#/definitions/stringOrArrayOfStrings" + "$ref": "#/definitions/stringOrArrayOfStrings", + "description": "Undocumented: only found in https://github.com/lukesampson/scoop-extras/blob/master/kibana.json" }, "uninstaller": { "$ref": "#/definitions/uninstaller" From 7d76dd5da1a9e4d4b6cd5a8e45f8d1a52a98994f Mon Sep 17 00:00:00 2001 From: Ross Smith II Date: Thu, 12 Jan 2017 10:35:33 -0800 Subject: [PATCH 6/6] Update descriptions in schema --- schema.json | 31 ++++++++++++++----------------- 1 file changed, 14 insertions(+), 17 deletions(-) diff --git a/schema.json b/schema.json index 0cd6ae563..a161f86e2 100644 --- a/schema.json +++ b/schema.json @@ -10,23 +10,23 @@ "$ref": "#/definitions/stringOrArrayOfStringsOrAnArrayOfArrayOfStrings" }, "extract_dir": { - "$ref": "#/definitions/stringOrArrayOfStringsMin1" + "$ref": "#/definitions/stringOrArrayOfOneOrMoreStrings" }, "hash": { - "$ref": "#/definitions/stringOrArrayOfStringsMin1" + "$ref": "#/definitions/stringOrArrayOfOneOrMoreStrings" }, "installer": { "$ref": "#/definitions/installer" }, "msi": { - "$ref": "#/definitions/stringOrArrayOfStringsMin1", + "$ref": "#/definitions/stringOrArrayOfOneOrMoreStrings", "description": "Deprecated" }, "post_install": { - "$ref": "#/definitions/stringOrArrayOfStringsMin1" + "$ref": "#/definitions/stringOrArrayOfOneOrMoreStrings" }, "pre_install": { - "$ref": "#/definitions/stringOrArrayOfStringsMin1" + "$ref": "#/definitions/stringOrArrayOfOneOrMoreStrings" }, "uninstaller": { "$ref": "#/definitions/uninstaller" @@ -82,7 +82,7 @@ "type": "object" }, "extract_dir": { - "$ref": "#/definitions/stringOrArrayOfStringsMin1" + "$ref": "#/definitions/stringOrArrayOfOneOrMoreStrings" }, "hash": { "additionalProperties": false, @@ -152,7 +152,7 @@ "additionalProperties": false, "properties": { "_comment": { - "description": "Undocumented", + "description": "Undocumented: only used in scoop-extras/oraclejdk* and scoop-extras/appengine-go", "type": "string" }, "args": { @@ -180,7 +180,7 @@ } ] }, - "stringOrArrayOfStringsMin1": { + "stringOrArrayOfOneOrMoreStrings": { "anyOf": [ { "type": "string" @@ -220,10 +220,6 @@ }, "uninstaller": { "properties": { - "_comment": { - "description": "Undocumented", - "type": "string" - }, "args": { "$ref": "#/definitions/stringOrArrayOfStrings" }, @@ -256,7 +252,7 @@ }, "properties": { "_comment": { - "description": "Undocumented", + "description": "Undocumented: only found in scoop/git* and 6 manifests in scoop-extras", "type": "string" }, "architecture": { @@ -349,13 +345,14 @@ "$ref": "#/definitions/checkver" }, "cookie": { - "description": "Undocumented: only found in https://github.com/lukesampson/scoop-extras/blob/master/oraclejdk*.json", + "description": "Undocumented: only found in scoop-extras/oraclejdk*", "type": "object" }, "depends": { "$ref": "#/definitions/stringOrArrayOfStrings" }, "description": { + "description": "Undocumented: only found in scoop/gibo", "type": "string" }, "env_add_path": { @@ -369,7 +366,7 @@ }, "extract_to": { "$ref": "#/definitions/stringOrArrayOfStrings", - "description": "Undocumented: only found in https://github.com/lukesampson/scoop/blob/master/bucket/ruby*.json" + "description": "Undocumented: only found in scoop/ruby*" }, "hash": { "$ref": "#/definitions/stringOrArrayOfStrings" @@ -379,7 +376,7 @@ "type": "string" }, "innosetup": { - "description": "Undocumented: found in 6 manifests in https://github.com/lukesampson/scoop/blob/master/bucket", + "description": "Undocumented: only found in 6 manifests in scoop", "type": "boolean" }, "installer": { @@ -406,7 +403,7 @@ }, "travel_dirs": { "$ref": "#/definitions/stringOrArrayOfStrings", - "description": "Undocumented: only found in https://github.com/lukesampson/scoop-extras/blob/master/kibana.json" + "description": "Undocumented: only found in scoop-extras/kibana" }, "uninstaller": { "$ref": "#/definitions/uninstaller"