1 | //Changes the Dojo version in a file. Used during the release process. |
---|
2 | |
---|
3 | var |
---|
4 | version = new String(arguments[0]), |
---|
5 | |
---|
6 | filename = new String(arguments[1]), |
---|
7 | |
---|
8 | writeFile= function(filename, contents){ |
---|
9 | var |
---|
10 | outFile = new java.io.File(filename), |
---|
11 | outWriter; |
---|
12 | outWriter = new java.io.OutputStreamWriter(new java.io.FileOutputStream(outFile), "UTF-8"); |
---|
13 | var os = new java.io.BufferedWriter(outWriter); |
---|
14 | try{ |
---|
15 | os.write(contents); |
---|
16 | }finally{ |
---|
17 | os.close(); |
---|
18 | } |
---|
19 | }, |
---|
20 | |
---|
21 | |
---|
22 | changeVersion = function(/*String*/version, /*String*/fileContents){ |
---|
23 | //summary: Changes the version number for dojo. Input should be the fileContents |
---|
24 | //of a file that contains the version number. |
---|
25 | |
---|
26 | //Set version number. |
---|
27 | //First, break apart the version string. |
---|
28 | var verSegments = version.match(/^(\d*)\.?(\d*)\.?(\d*)\.?(.*)$/); |
---|
29 | var majorValue = verSegments[1] || 0; |
---|
30 | var minorValue = verSegments[2] || 0; |
---|
31 | var patchValue = verSegments[3] || 0; |
---|
32 | var flagValue = verSegments[4] || ""; |
---|
33 | |
---|
34 | //Do the final version replacement. |
---|
35 | if(/package/.test(filename)){ |
---|
36 | fileContents = fileContents.replace( |
---|
37 | /['"]version['"]\s*\:\s*['"][\w\.\-]+?["']/, |
---|
38 | '"version":"' + version + '"' |
---|
39 | ); |
---|
40 | }else{ |
---|
41 | fileContents = fileContents.replace( |
---|
42 | /major:\s*\d*,\s*minor:\s*\d*,\s*patch:\s*\d*,\s*flag:\s*".*?"\s*,/g, |
---|
43 | "major: " + majorValue + ", minor: " + minorValue + ", patch: " + patchValue + ", flag: \"" + flagValue + "\"," |
---|
44 | ); |
---|
45 | } |
---|
46 | |
---|
47 | return fileContents; //String |
---|
48 | }; |
---|
49 | |
---|
50 | print(version); |
---|
51 | print(filename); |
---|
52 | var fileContents = readFile(filename, "utf-8"); |
---|
53 | fileContents = changeVersion(version, fileContents); |
---|
54 | writeFile(filename, fileContents); |
---|