Site: Automagically generate release notes

This commit is contained in:
Pieter de Bie
2009-03-28 21:23:55 +00:00
parent 728627cfdd
commit 8c0fbaae9b
3 changed files with 53 additions and 102 deletions
+2
View File
@@ -3,6 +3,8 @@ require 'erb'
task :generate => [:generate_usermanual] do
require 'rdiscount'
require 'lib/release_notes'
`rm -rf output`
FileUtils.mkdir("output")
`cat text/*.markdown > output/UserManual.markdown`
+50
View File
@@ -0,0 +1,50 @@
#!/usr/bin/ruby
RELEASE_NOTES_PATH = File.join(File.dirname(__FILE__), "..", "..", "Documentation", "ReleaseNotes")
module ReleaseNotes
VERSION_MATCH = /v([0-9.]*).txt$/
# Find all release not files
def self.release_files
notes = Dir.glob(File.join(RELEASE_NOTES_PATH, "v*.txt"))
# Sort files by version number
notes.sort do |x,y|
x = x.match VERSION_MATCH
y = y.match VERSION_MATCH
# Puts nonmatching files at the bottom
if !x && y
1
elsif !y && x
-1
else
# compare version strings, newest at the top
y[1].split(".").map { |a| a.to_i } <=> x[1].split(".").map { |a| a.to_i }
end
end
end
# Aggregate all release notes in a string
def self.aggregate_notes
file = ""
release_files.each do |x|
file << File.read(x)
file << "\n"
end
file
end
def self.last_version
last_file = release_files.first
if last_file =~ VERSION_MATCH
return $1
end
nil
end
def self.last_notes
File.read(release_files.first)
end
end
+1 -102
View File
@@ -3,105 +3,4 @@
Release history
</h2>
### Changes in v0.6.1:
This is a bugfix release. The following bugs have been fixed:
* The commit view shows new files with linebreaks
* The history view works with Git >= 1.5.4 again
* Reloading the detailed view in the History no longer causes an empty page
### Changes in v0.6
This release has the following new features and enhancements:
* The diff display now looks much nicer, using boxes to segment files
* The toolbar can now me customized
* Images that have been changed or added in a commit can now be viewed
inline in GitX
* GitX has gained a preference pane which allows you to specify a git path
and disable the Gist and Gravatar integration
* The commit interface is now more intuitive. Particularly, you can now
select multiple files and use drag and drop to stage / unstage files
* You can now drag and drop files out of the commit view
* The files in the commit view have gained a context menu that allows you
to revert changes / open the file / ignore the file
* It is now possible to adjust the amount of context lines in the commit view.
Using a smaller context size allows you to do more fine-grained commits
* The branch menu is now organized in branches/remotes/tags
* The view switch button now uses icons rather than words
* The view shortcuts have changed to use command 1/2 for the history/commit
view. The history's subviews can now be changed using command-option-1/2/3
* Listing commits has become much faster
* GitX no longer spawns zombie processes
* GitX now shows a list of files that have been changed in a commit
* GitX now uses libgit2 to store object id's, reducing it's memory footprint
In addition many bugs were fixed, including the correct calculation of a
gravatar MD5 hash.
### Changes in v0.5
This feature release has several new smaller or larger features:
* The current branch is now highlighted
* In the commit view, there is an option to amend commits
* The "Gist it" button now respects github.user/token
* Display a gravatar of the committer
* The commit message view now displays a vertical line at 50 characters
* It is now possible to revert changes by using the context menu in the
commit view
* You can now stage only parts of a file by using the "Stage Hunk" buttons
in the commit view
* You can now use GitX to show a diff of anything, for example by using
'gitx --diff HEAD^^' or 'git diff HEAD~3 | gitx --diff'
* You can now drag and drop refs to move them and also create branches
In addition, the following bugs have been fixed:
* Better detection of git version
* Branch lines are no longer interspersed with half a pixel of whitespace
* The toolbar keeps its state when switching views
<h3>Changes in v0.4.1:</h3>
<ul>
<li>The diff display is now much faster</li>
<li>More locations are now searched for a default git</li>
<li>Code pasted online is now private</li>
</ul>
<h3>Changes in v0.4:</h3>
<ul>
<li>A new commitview, allowing you to selectively add changes and commit them.</li>
<li>You can now upload a commit as a patch to gist.github.com</li>
<li>GitX now searches for your git binary in more directories and is smarter
about reporting errors regarding git paths.</li>
<li>You can now remove branches by right-clicking on them in the detailed view</li>
<li>GitX now comes with a spicy new icon</li>
<li>The diff view has become prettier and now also highlights trailing
whitespace.</li>
<li>Various little changes and stability improvement</li>
</ul>
<h3>Changes in v0.3:</h3>
<ul>
<li>You can now pass on command-line arguments just like you can with git log</li>
<li>The program has an icon</li>
<li>Also displays remote branches in the branch list</li>
<li>Is better in determining if a directory is a bare git repository</li>
<li>Support for—left-right: use gitx—left-right <span class="caps">HEAD</span>..origin/master
to see which commits are only on your branch or on their branch</li>
<li>Navigate through changed hunks by using j/k keys</li>
<li>Scroll down in webview by using space / shift-space</li>
</ul>
<h3>Changes in v0.2.1:</h3>
<ul>
<li>Added supercool auto-update feature (Sparkle)</li>
</ul>
<h3>Changes in v0.2</h3>
<ul>
<li>Branch lines now have colors</li>
<li>Ref labels added to commits</li>
</ul>
<%= ReleaseNotes::aggregate_notes %>