From 1827b390d8c3dbff6c5ac10c90360ab198a4d34e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Scott=20Gonz=C3=A1lez?= Date: Thu, 20 Sep 2012 20:21:32 -0400 Subject: [PATCH] Build: Convert changelog to markdown. --- build/release/changelog-shell | 67 ++++++++++++++++++----------------- build/release/release.js | 42 ++++++++++++++++++++-- 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 ------------------------------------------ + -= 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 & Utilities = +## Core & 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"; -- 2.39.5