| @@ -0,0 +1,68 | |||
|
|
1 | # BUILD | |
|
|
2 | ||
|
|
3 | Для сборки необходимо иметь | |
|
|
4 | ||
|
|
5 | * nodejs >= 8 | |
|
|
6 | * npm | |
|
|
7 | * eslint | |
|
|
8 | * mercurial (для автоматического определения версии) | |
|
|
9 | ||
|
|
10 | В пцессе сборки будут установлены зависимости из package.json | |
|
|
11 | ||
|
|
12 | ## Properties | |
|
|
13 | ||
|
|
14 | Свойства, испольуземые для управления сборкой, через них можно указать имя, | |
|
|
15 | версию пакета, тип модулей, версию стандарта js для которого осуществляется | |
|
|
16 | сборка. Значения по-умолчанию заданы в `gradle.properties` | |
|
|
17 | ||
|
|
18 | ### npmName | |
|
|
19 | ||
|
|
20 | `default: core` | |
|
|
21 | ||
|
|
22 | Имя пакета в терминологии npm. | |
|
|
23 | ||
|
|
24 | ### npmScope | |
|
|
25 | ||
|
|
26 | `default: @implab` | |
|
|
27 | ||
|
|
28 | Пространство в терминологии npm для пакета. | |
|
|
29 | ||
|
|
30 | ### target | |
|
|
31 | ||
|
|
32 | `default: es5` | |
|
|
33 | ||
|
|
34 | Версии стандарта js в среде выполнения, возможные значения: | |
|
|
35 | ||
|
|
36 | * es3 - требует полифилы для es5, promise | |
|
|
37 | * es5 - требует полифил для promise | |
|
|
38 | * es6 | |
|
|
39 | * es2015 | |
|
|
40 | * es2016 | |
|
|
41 | * es2017 | |
|
|
42 | ||
|
|
43 | ### jsmodule | |
|
|
44 | ||
|
|
45 | `default: amd` | |
|
|
46 | ||
|
|
47 | * amd - requirejs модули, хорошо подходит для использования в браузерах. | |
|
|
48 | * commonjs - формат модулей для nodejs | |
|
|
49 | ||
|
|
50 | ## Tasks | |
|
|
51 | ||
|
|
52 | ### build | |
|
|
53 | ||
|
|
54 | ### test | |
|
|
55 | ||
|
|
56 | ### pack | |
|
|
57 | ||
|
|
58 | ### publish | |
|
|
59 | ||
|
|
60 | ## Examples | |
|
|
61 | ||
|
|
62 | ```shell | |
|
|
63 | ./gradlew test pack -PnpmName=core-amd | |
|
|
64 | ``` | |
|
|
65 | ||
|
|
66 | ```shell | |
|
|
67 | ./gradlew test pack -Pjsmodule=commonjs -Ptarget=es2017 | |
|
|
68 | ``` No newline at end of file | |
| @@ -11,5 +11,6 | |||
|
|
11 | 11 | "**/.git/subtree-cache/**": true, |
|
|
12 | 12 | "**/node_modules/**": true, |
|
|
13 | 13 | "/build": true |
|
|
14 | } | |
|
|
14 | }, | |
|
|
15 | "editor.minimap.enabled": false | |
|
|
15 | 16 | } No newline at end of file |
| @@ -39,7 +39,7 def targetLibs = [ | |||
|
|
39 | 39 | "es5" : "es5,es2015.promise,es2015.symbol,dom,scripthost" |
|
|
40 | 40 | ]; |
|
|
41 | 41 | |
|
|
42 | ext.packageName="$npmScope/$npmName"; | |
|
|
42 | ext.packageName="@$npmScope/$npmName"; | |
|
|
43 | 43 | |
|
|
44 | 44 | def srcDir = "$projectDir/src" |
|
|
45 | 45 | def typingsDir = "$srcDir/typings" |
| @@ -123,6 +123,7 task printVersion { | |||
|
|
123 | 123 | doLast { |
|
|
124 | 124 | println "version: $version" |
|
|
125 | 125 | println "packageName: $packageName" |
|
|
126 | println "bundle: ${pack.outputs.files.join(',')}" | |
|
|
126 | 127 | println "target: $target" |
|
|
127 | 128 | println "module: $jsmodule" |
|
|
128 | 129 | } |
| @@ -242,6 +243,13 task _packageMeta(type: Copy) { | |||
|
|
242 | 243 | |
|
|
243 | 244 | task pack(dependsOn: [build, _packageMeta], type: Exec) { |
|
|
244 | 245 | workingDir distDir |
|
|
246 | outputs.file("$npmScope-$npmName-${version}.tgz") | |
|
|
245 | 247 | |
|
|
246 | 248 | commandLine 'npm', 'pack' |
|
|
249 | } | |
|
|
250 | ||
|
|
251 | task publish(dependsOn: [build, _packageMeta], type: Exec) { | |
|
|
252 | workingDir distDir | |
|
|
253 | ||
|
|
254 | commandLine 'npm', 'publish', '--access', 'public' | |
|
|
247 | 255 | } No newline at end of file |
| @@ -5,5 +5,5 target=es5 | |||
|
|
5 | 5 | description=Dependency injection, logging, simple and fast text template engine |
|
|
6 | 6 | license=BSD-2-Clause |
|
|
7 | 7 | repository=https://bitbucket.org/implab/implabjs-core |
|
|
8 |
npmScope= |
|
|
|
8 | npmScope=implab | |
|
|
9 | 9 | npmName=core No newline at end of file |
| @@ -90,7 +90,7 | |||
|
|
90 | 90 | }, |
|
|
91 | 91 | "duplexer": { |
|
|
92 | 92 | "version": "0.1.1", |
|
|
93 |
"resolved": "http |
|
|
|
93 | "resolved": "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", | |
|
|
94 | 94 | "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", |
|
|
95 | 95 | "dev": true |
|
|
96 | 96 | }, |
| @@ -144,7 +144,7 | |||
|
|
144 | 144 | "dependencies": { |
|
|
145 | 145 | "tape": { |
|
|
146 | 146 | "version": "2.3.3", |
|
|
147 |
"resolved": "http |
|
|
|
147 | "resolved": "http://registry.npmjs.org/tape/-/tape-2.3.3.tgz", | |
|
|
148 | 148 | "integrity": "sha1-Lnzgox3wn41oUWZKcYQuDKUFevc=", |
|
|
149 | 149 | "dev": true, |
|
|
150 | 150 | "requires": { |
| @@ -277,7 +277,7 | |||
|
|
277 | 277 | }, |
|
|
278 | 278 | "minimist": { |
|
|
279 | 279 | "version": "0.0.5", |
|
|
280 |
"resolved": "http |
|
|
|
280 | "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.5.tgz", | |
|
|
281 | 281 | "integrity": "sha1-16oye87PUY+RBqxrjwA/o7zqhWY=", |
|
|
282 | 282 | "dev": true |
|
|
283 | 283 | }, |
| @@ -316,7 +316,7 | |||
|
|
316 | 316 | }, |
|
|
317 | 317 | "readable-stream": { |
|
|
318 | 318 | "version": "1.1.14", |
|
|
319 |
"resolved": "http |
|
|
|
319 | "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", | |
|
|
320 | 320 | "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", |
|
|
321 | 321 | "dev": true, |
|
|
322 | 322 | "requires": { |
| @@ -369,7 +369,7 | |||
|
|
369 | 369 | }, |
|
|
370 | 370 | "string_decoder": { |
|
|
371 | 371 | "version": "0.10.31", |
|
|
372 |
"resolved": "http |
|
|
|
372 | "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", | |
|
|
373 | 373 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", |
|
|
374 | 374 | "dev": true |
|
|
375 | 375 | }, |
| @@ -432,7 +432,7 | |||
|
|
432 | 432 | }, |
|
|
433 | 433 | "through2": { |
|
|
434 | 434 | "version": "0.2.3", |
|
|
435 |
"resolved": "http |
|
|
|
435 | "resolved": "http://registry.npmjs.org/through2/-/through2-0.2.3.tgz", | |
|
|
436 | 436 | "integrity": "sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=", |
|
|
437 | 437 | "dev": true, |
|
|
438 | 438 | "requires": { |
General Comments 0
You need to be logged in to leave comments.
Login now
