#!/usr/bin/env ruby # ###################################################################### # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. ###################################################################### # require "erb" require "svn/client" include ERB::Util path = File.expand_path(ARGV.shift || Dir.pwd) html = <<-HEADER #{h path}

#{h path}

HEADER ctx = Svn::Client::Context.new ctx.log(path, "HEAD", 0, 40, true, true) do |changed_paths, rev, author, date, message| html << <<-ENTRY_HEADER

r#{h rev}

#{h message}
by #{h author} at #{date}
ENTRY_HEADER changed_paths.sort.each do |path, changed_path| action = changed_path.action html << <<-ENTRY_PATH ENTRY_PATH end html << <<-ENTRY_FOOTER
ENTRY_FOOTER end html << <<-FOOTER FOOTER puts html