aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/release/changelog-shell67
-rw-r--r--build/release/release.js42
2 files changed, 73 insertions, 36 deletions
diff --git a/build/release/changelog-shell b/build/release/changelog-shell
index 9e4fbd7e4..7e951d7a6 100644
--- a/build/release/changelog-shell
+++ b/build/release/changelog-shell
@@ -10,70 +10,71 @@ Move all commit notes to the appropriate section.
- If there is no ticket number, search Trac for the relevant ticket.
- If there is no ticket, create one (if needed), or leave just the commit link.
-Double check that "XXXX" does not appear anywhere in the changelog.
+Double check that "TICKETREF" does not appear anywhere in the changelog.
-Post this changelog at: CHANGELOG_URL
+Add this changelog to jqueryui.com.
DELETE EVERYTHING ABOVE THE FOLLOWING LINE
------------------------------------------
+<script>{
+ "title": "{title}"
+}</script>
-= Summary =
-This is the final release of jQuery UI 1.8.
--- OR --
-This is the second maintenance release for [[UI/Changelog/1.8|jQuery UI 1.8]].
+## Summary
+{summary}
-= Build =
+## Build
-= Core &amp; Utilities =
+## Core &amp; Utilities
-=== UI Core ===
+### UI Core
-=== Mouse ===
+### Mouse
-=== Widget Factory ===
+### Widget Factory
-=== Position ===
+### Position
-= Interactions =
+## Interactions
-=== Draggable ===
+### Draggable
-=== Droppable ===
+### Droppable
-=== Resizable ===
+### Resizable
-=== Selectable ===
+### Selectable
-=== Sortable ===
+### Sortable
-= Widgets =
+## Widgets
-=== Accordion ===
+### Accordion
-=== Autocomplete ===
+### Autocomplete
-=== Button ===
+### Button
-=== Datepicker ===
+### Datepicker
-=== Dialog ===
+### Dialog
-=== Progressbar ===
+### Progressbar
-=== Slider ===
+### Slider
-=== Tabs ===
+### Tabs
-= Effects =
+## Effects
-=== Individual effects ===
+### Individual effects
-= CSS Framework =
+## CSS Framework
-= Demos =
+## Demos
-= Website =
+## Website
-=== Download Builder ===
+### Download Builder
diff --git a/build/release/release.js b/build/release/release.js
index 401f2366e..6939c8611 100644
--- a/build/release/release.js
+++ b/build/release/release.js
@@ -1,6 +1,7 @@
#!/usr/bin/env node
-var baseDir, repoDir, prevVersion, newVersion, nextVersion, tagTime,
+var baseDir, repoDir, majorMinorVersion, patchVersion, prevVersion, newVersion,
+ nextVersion, tagTime,
fs = require( "fs" ),
path = require( "path" ),
// support: node <0.8
@@ -103,10 +104,14 @@ function getVersions() {
major = parseInt( parts[ 0 ], 10 );
minor = parseInt( parts[ 1 ], 10 );
patch = parseInt( parts[ 2 ], 10 );
+
// TODO: handle 2.0.0
if ( minor === 0 ) {
abort( "This script is not smart enough to handle the 2.0.0 release." );
}
+
+ majorMinorVersion = [ major, minor ].join( "." );
+ patchVersion = patch;
prevVersion = patch === 0 ?
[ major, minor - 1, 0 ].join( "." ) :
[ major, minor, patch - 1 ].join( "." );
@@ -190,7 +195,14 @@ function generateChangelog() {
var commits,
changelogPath = baseDir + "/changelog",
changelog = cat( "build/release/changelog-shell" ) + "\n",
- fullFormat = "* %s (TICKETREF, [http://github.com/jquery/jquery-ui/commit/%H %h])";
+ fullFormat = "* %s (TICKETREF, [%h](http://github.com/jquery/jquery-ui/commit/%H))";
+
+ changelog = changelog
+ .replace( "{title}", "jQuery UI " + newVersion + " Changelog" )
+ .replace( "{summary}", patchVersion === 0 ?
+ "This is the final release of jQuery UI " + majorMinorVersion + "." :
+ "This is the " + ordinal( patchVersion ) + " maintenance release for " +
+ "[jQuery UI " + majorMinorVersion + "](/changelog/" + majorMinorVersion + ")." );
echo ( "Adding commits..." );
commits = gitLog( fullFormat );
@@ -205,7 +217,7 @@ function generateChangelog() {
});
return tickets.length ?
commit.replace( "TICKETREF", tickets.map(function( ticket ) {
- return "[http://bugs.jqueryui.com/ticket/" + ticket + " #" + ticket + "]";
+ return "[#" + ticket + "](http://bugs.jqueryui.com/ticket/" + ticket + ")";
}).join( ", " ) ) :
// Leave TICKETREF token in place so it's easy to find commits without tickets
commit;
@@ -318,6 +330,30 @@ function writePackage( pkg ) {
JSON.stringify( pkg, null, "\t" ) + "\n" );
}
+function ordinal( number ) {
+ return number === 1 ? "first" :
+ number === 2 ? "second" :
+ number === 3 ? "third" :
+ number === 4 ? "fourth" :
+ number === 5 ? "fifth" :
+ number === 6 ? "sixth" :
+ number === 7 ? "seventh" :
+ number === 8 ? "eighth" :
+ number === 9 ? "ninth" :
+ number === 10 ? "tenth" :
+ number === 11 ? "eleventh" :
+ number === 12 ? "twelfth" :
+ number === 13 ? "thirteenth" :
+ number === 14 ? "fourteenth" :
+ number === 15 ? "fifteenth" :
+ number === 16 ? "sixteenth" :
+ number === 17 ? "seventeenth" :
+ number === 18 ? "eighteenth" :
+ number === 19 ? "nineteenth" :
+ number === 20 ? "twentieth" :
+ "twenty " + ordinal( number - 20 );
+}
+
function bootstrap( fn ) {
console.log( "Determining directories..." );
baseDir = process.cwd() + "/__release";