5a73ed8
click here to add a description
click here to add a homepage
The official jQuery user interface library. — Read more
http://jqueryui.com/
This URL has Read+Write access
Build: Initial commit for release automation.
Showing 2 changed files with 405 additions and 0 deletions.
@@ -0,0 +1,76 @@
+
+This file contains a shell for the changelog, followed by a list of every commit for this release.
+Choose the appropriate line for the Summary section.
+Move all commit notes to the appropriate section.
+- Each line should be in the following format:
+ [Fixed|Added]: The ticket description. ([Ticket link], [Commit link])
+- If the commit is not related to a bug or feature, e.g., whitepsace cleanup, remove it.
+- 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.
+Post this changelog at: CHANGELOG_URL
+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]].
+= Build =
+= Core & Utilities =
+=== UI Core ===
+=== Mouse ===
+=== Widget Factory ===
+=== Position ===
+= Interactions =
+=== Draggable ===
+=== Droppable ===
+=== Resizable ===
+=== Selectable ===
+=== Sortable ===
+= Widgets =
+=== Accordion ===
+=== Autocomplete ===
+=== Button ===
+=== Datepicker ===
+=== Dialog ===
+=== Progressbar ===
+=== Slider ===
+=== Tabs ===
+= Effects =
+=== Individual effects ===
+= CSS Framework =
+= Demos =
@@ -0,0 +1,329 @@
+#!/bin/sh
+base_dir="`pwd`/jquery-ui-release"
+repo_dir="$base_dir/jquery-ui"
+release_dir="$repo_dir/build/release"
+github_repo="git@github.com:jquery/jquery-ui.git"
+remote_cmd="ssh jqadmin@ui-dev.jquery.com /srv/dev.jqueryui.com/prepare-release"
+#
+# Setup environment
+echo
+echo "--------------------------"
+echo "| SETTING UP ENVIRONMENT |"
+mkdir $base_dir
+cd $base_dir
+echo "Cloning repo from $github_repo..."
+git clone $github_repo
+cd $repo_dir
+echo "Environment setup complete."
+# Figure out which versions we're dealing with
+echo "------------------------"
+echo "| CALCULATING VERSIONS |"
+# NOTE: this will be different for minor and major releases
+version=`$remote_cmd/get-latest-version`
+major_minor=${version%.*}
+point=${version##*.}
+version_new="${major_minor}.$(($point + 1))"
+version_next=`cat version.txt`
+echo "We are going from $version to $version_new."
+echo "version.txt will be set to $version_next when complete."
+echo "Press enter to continue, or ctrl+c to cancel."
+read
+# Generate shell for changelog
+echo "| GENERATING CHANGELOG |"
+echo "Creating shell for changelog..."
+changelog_url="http:\/\/docs.jquery.com\/action\/edit\/UI\/Changelog\/$version_new"
+`sed "s/CHANGELOG_URL/$changelog_url/" <$release_dir/changelog-shell >$base_dir/changelog`
+# find all commits
+echo "Adding commits to changelog..."
+format_ticket='[http://dev.jqueryui.com/ticket/XXXX #XXXX]'
+format_commit='[http://github.com/jquery/jquery-ui/commit/%H %h]'
+format_full="* %s ($format_ticket, $format_commit)"
+git whatchanged $version... --pretty=format:"$format_full" \
+ -- ui themes demos build \
+| sed '/^:/ d' \
+| sed '/^$/ d' \
+| sed 's/\(Fixe[sd] #\)\([0-9][0-9]*\)\(.*\)\(XXXX #XXXX\)/Fixed #\2\3\2 #\2/' \
+| sort -f \
+>> $base_dir/changelog
+# find all fixed tickets
+echo "Adding Trac tickets to changelog..."
+$remote_cmd/generate-changelog >> $base_dir/changelog
+echo "Changelog complete."
+# Generate list of contributors
+echo "| GATHERING CONTRIBUTORS |"
+# find all committers and authors
+echo "Adding commiters and authors..."
+format_contributors='%aN%n%cN'
+git whatchanged $version... --pretty=format:"$format_contributors" \
+> $base_dir/thankyou
+# find all reporters and commenters from Trac
+echo "Adding reporters and commenters from Trac..."
+$remote_cmd/generate-contributors >> $base_dir/thankyou
+# sort names
+echo "Sorting contributors..."
+sort -f $base_dir/thankyou | uniq > $base_dir/_thankyou
+mv $base_dir/_thankyou $base_dir/thankyou
+# find all people that were thanked
+echo "Adding people thanked in commits..."
+git whatchanged $version... \
+| grep -i thank \
+>> $base_dir/thankyou
+echo "Find contributors from duplicates of fixed tickets."
+echo "Press enter when done."
+echo "Contributors list complete."
+# Update version
+echo "--------------------"
+echo "| UPDATING VERSION |"
+echo "Updating version.txt to $version_new..."
+echo $version_new > version.txt
+git commit -a -m "Tagging the $version_new release."
+version_new_time=`git log -1 --pretty=format:"%ad"`
+echo "Committed version.txt at $version_new_time..."
+echo "Tagging $version_new..."
+git tag $version_new
+echo "Updating version.txt to $version_next..."
+echo $version_next > version.txt
+git commit -a -m "Updating the master version to $version_next"
+echo "Committed version.txt..."
+echo "Version update complete."
+# Push to GitHub
+echo "---------------------"
+echo "| PUSHING TO GITHUB |"
+echo "Please review the output and generated files as a sanity check."
+echo "Press enter to continue or ctrl+c to abort."
+git push
+git push --tags
+echo "Push to GitHub complete."
+# Update Trac
+echo "-----------------"
+echo "| UPDATING TRAC |"
+# TODO: automate this
+milestone=`$remote_cmd/get-latest-milestone`
+# Create new milestrone and version
+echo "$version_new was tagged at $version_new_time."
+echo "Create and close $version_new Milestone with the above date and time."
+echo "Create and close $version_new Version with the above date and time."
+# Update milestone for all fixed tickets
+echo "Change all $milestone fixed tickets to $version_new."
+echo "Trac updates complete."
+# Build jQuery UI
+echo "----------------------"
+echo "| BUILDING JQUERY UI |"
+# check out the tagged version
+echo "Checking out $version_new..."
+git checkout $version_new
+# Update the link to the docs (never contains the patch version)
+echo "Updating URL for API docs..."
+sed -i -e "s/UI\/API\/\${release\.version}/UI\/API\/$major_minor/" build.xml >build.xml
+# Run the build
+echo "Running build..."
+cd build
+ant
+echo "Build complete."
+# Upload zip to Google Code
+echo "| UPDATE GOOGLE CODE |"
+echo "Upload zip to Google Code."
+echo " http://code.google.com/p/jquery-ui/downloads/entry"
+echo " Summary: jQuery UI $version_new (Source, demos, docs, themes, tests) STABLE"
+echo " Labels: Featured, Type-Source, OpSys-All"
+echo "Modify the previous release to no longer say STABLE at the end."
+echo "Remove the featured label from the previous release."
+echo "Google Code update complete."
+# Update SVN
+echo "----------------"
+echo "| UPDATING SVN |"
+mkdir svn
+cd svn
+echo "Checking out SVN tags..."
+svn co --depth immediates https://jquery-ui.googlecode.com/svn/tags
+cd tags
+echo "Unzipping build into tags/$version_new..."
+unzip $repo_dir/build/dist/jquery-ui-$version_new.zip
+mv jquery-ui-$version_new $version_new
+echo "Adding files to SVN..."
+svn add $version_new
+echo "Setting svn:mime-type..."
+find $version_new -name \*.js -exec svn propset svn:mime-type text/javascript {} \;
+find $version_new -name \*.css -exec svn propset svn:mime-type text/css {} \;
+find $version_new -name \*.html -exec svn propset svn:mime-type text/html {} \;
+find $version_new -name \*.png -exec svn propset svn:mime-type image/png {} \;
+find $version_new -name \*.gif -exec svn propset svn:mime-type image/gif {} \;
+# TODO: commit
+echo "svn commit with the following message:"
+echo "Created $version_new tag from http://jquery-ui.googlecode.com/files/jquery-ui-$version_new.zip"
+echo "SVN update complete."
+# Generate themes
5a73ed85a73ed8