##// END OF EJS Templates
Added support for commonjs module format, all tests are pass.
Added support for commonjs module format, all tests are pass.

File last commit:

r60:b23fe4a1683a default
r60:b23fe4a1683a default
Show More
build.gradle
206 lines | 4.6 KiB | text/x-groovy | GroovyLexer
cin
split @implab/core into a separate repository
r27 if (release != 'rtm') {
version += "-$release"
}
cin
repository reorganized
r0
cin
working on multiplaftorm support (node, browser)
r47 if(!npmName)
npmName = name;
cin
working on support commonjs modules format
r59 if(!["amd", "commonjs", "system", "umd", "es6", "esnext"].contains(jsmodule))
throw new Exception("Invalid jsmodule specified: $jsmodule");
if(!["es3", "es5", "es6", "es2016", "es2017", "esnext"].contains(target))
throw new Exception("Invalid target specified: $target")
cin
working version...
r51
cin
working on support commonjs modules format
r59 def targetLibs = [
"es3" : "es5,es2015.promise,es2015.symbol,dom,scripthost",
"es5" : "es5,es2015.promise,es2015.symbol,dom,scripthost"
];
cin
repository reorganized
r0
cin
working on support commonjs modules format
r59 ext.packageName="$npmScope/$npmName";
cin
working version...
r51
def srcDir = "$projectDir/src"
def typingsDir = "$srcDir/typings"
cin
working on support commonjs modules format
r59 def distDir = "$buildDir/dist"
def testDir = "$buildDir/test"
def lib = targetLibs[target] ?: "${target},dom";
println "lib: $lib";
def sourceSets = ["main", "amd", "cjs"];
def testSets = ["test", "testAmd", "testCjs"];
task beforeBuild {
}
def createSoursetTasks = { String name, String outDir ->
def setName = name.capitalize();
def destDir = "$buildDir/compile/$name"
def declDir = "$typingsDir/$name"
def setDir = "$projectDir/src/$name"
def beforeBuildTask = task "beforeBuild$setName"(dependsOn: beforeBuild) {
}
def copyJsTask = task "copyJs$setName"(dependsOn: beforeBuildTask, type: Copy) {
from "$setDir/js"
into outDir
}
cin
Added support for commonjs module format, all tests are pass.
r60 def compileTsTask = task "compileTs$setName"(dependsOn: beforeBuildTask, type: Exec) {
cin
working on support commonjs modules format
r59 inputs.dir("$setDir/ts")
inputs.file("$srcDir/tsconfig.json")
inputs.file("$setDir/tsconfig.json")
cin
Added support for commonjs module format, all tests are pass.
r60 outputs.dir(destDir)
cin
working on support commonjs modules format
r59 outputs.dir(declDir)
cin
working version...
r51
cin
working on support commonjs modules format
r59 commandLine 'node_modules/.bin/tsc',
'-p', "$setDir/tsconfig.json",
'-t', target,
'-m', jsmodule,
'-d',
cin
Added support for commonjs module format, all tests are pass.
r60 '--outDir', destDir,
cin
working on support commonjs modules format
r59 '--declarationDir', declDir
if (lib)
args '--lib', lib
}
def copyTsOutputTask = task "copyTsOutput$setName"(dependsOn: compileTsTask, type: Copy) {
cin
Added support for commonjs module format, all tests are pass.
r60 from destDir
cin
working on support commonjs modules format
r59 into outDir
}
cin
Added support for commonjs module format, all tests are pass.
r60 def copyTypingsTask = task "copyTypings$setName"(dependsOn: compileTsTask, type: Copy) {
from declDir
cin
working on support commonjs modules format
r59 into outDir
}
task "build$setName"(dependsOn: [copyTypingsTask, copyTsOutputTask, copyJsTask]) {
}
}
cin
working on multiplaftorm support (node, browser)
r47
task printVersion {
cin
working on multi-platform support
r48 doLast {
println "version: $version"
println "packageName: $packageName"
cin
working on support commonjs modules format
r59 println "target: $target"
println "module: $jsmodule"
cin
working on multi-platform support
r48 }
cin
working on multiplaftorm support (node, browser)
r47 }
cin
improved core/build.gradle script
r4 task clean {
doLast {
delete buildDir
cin
working version...
r51 delete typingsDir
cin
improved core/build.gradle script
r4 }
cin
working on dependencies
r2 }
cin
working on support commonjs modules format
r59 task _initBuild {
mustRunAfter clean
def buildInfoFile = "$buildDir/platform";
inputs.property('target',target);
inputs.property('jsmodule',jsmodule);
outputs.file(buildInfoFile);
doLast {
delete buildDir
mkdir buildDir
def f = new File(buildInfoFile);
f << "$target-$jsmodule";
}
}
cin
improved core/build.gradle script
r4 task cleanNpm {
doLast {
delete 'node_modules'
cin
working on dependencies
r2 }
}
cin
repository reorganized
r0
cin
improved core/build.gradle script
r4 task _npmInstall() {
inputs.file("package.json")
outputs.dir("node_modules")
doLast {
exec {
commandLine 'npm', 'install'
cin
sync
r1 }
}
cin
repository reorganized
r0 }
cin
working on support commonjs modules format
r59 beforeBuild {
dependsOn _initBuild
dependsOn _npmInstall
}
cin
working version...
r51
cin
working on support commonjs modules format
r59 sourceSets.each { createSoursetTasks(it, distDir) }
cin
working version...
r51
cin
working on support commonjs modules format
r59 testSets.each { createSoursetTasks(it, testDir) }
cin
working version...
r51
cin
working on support commonjs modules format
r59 compileTsAmd {
cin
Added support for commonjs module format, all tests are pass.
r60 dependsOn compileTsMain
cin
improved core/build.gradle script
r4 }
cin
Added support for commonjs module format, all tests are pass.
r60 compileTsCjs {
dependsOn compileTsMain
cin
working on support commonjs modules format
r59 }
task build(dependsOn: buildMain) {
if (jsmodule == "amd")
dependsOn buildAmd
cin
Added support for commonjs module format, all tests are pass.
r60 if (jsmodule == "commonjs")
dependsOn buildCjs
cin
working version...
r51 }
cin
core/Uuid rewritten in typescript
r8
cin
working on support commonjs modules format
r59 compileTsTest {
dependsOn build
cin
working version...
r51 }
cin
working on support commonjs modules format
r59 compileTsTestAmd {
cin
Added support for commonjs module format, all tests are pass.
r60 dependsOn compileTsTest
}
compileTsTestCjs {
dependsOn compileTsTest
cin
working on support commonjs modules format
r59 }
cin
Added support for commonjs module format, all tests are pass.
r60 task _installLocalCjsDependency(dependsOn: [buildTestCjs, "_packageMeta"], type: Exec) {
inputs.file("$distDir/package.json")
outputs.upToDateWhen {
new File("$testDir/$packageName").exists()
}
workingDir testDir
commandLine 'npm', 'install', '--no-save', '--force', distDir
}
task test(dependsOn: [buildTest], type: Exec) {
if (jsmodule == "amd")
dependsOn buildTestAmd
if (jsmodule == "commonjs") {
dependsOn buildTestCjs
dependsOn _installLocalCjsDependency
}
commandLine 'node', "$testDir/run-tests.js"
cin
core/Uuid rewritten in typescript
r8 }
cin
improved core/build.gradle script
r4 task _packageMeta(type: Copy) {
cin
working on support commonjs modules format
r59 mustRunAfter build
cin
improved core/build.gradle script
r4 inputs.property("version", version)
from('.') {
cin
working version...
r51 include '.npmignore', 'readme.md', 'license', 'history.md'
}
cin
working on support commonjs modules format
r59 from("$srcDir/package.${jsmodule}.tmpl.json") {
cin
working version...
r51 expand project.properties
rename { "package.json" }
cin
improved core/build.gradle script
r4 }
into distDir
}
cin
working on support commonjs modules format
r59 task pack(dependsOn: [build, _packageMeta], type: Exec) {
cin
working version...
r51 workingDir distDir
cin
repository reorganized
r0
commandLine 'npm', 'pack'
}