diff options
author | Eric Wong <e@80x24.org> | 2015-01-13 03:31:15 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2015-01-13 03:31:15 +0000 |
commit | affd74c73ec8f11ae8f7f3fd790f837fc528ab34 (patch) | |
tree | eb3724b63e3834838a70acf89558080d49a7e7f2 | |
parent | 8bc42c582343dd944b23189c05a544e5553fe933 (diff) | |
download | zbatery-affd74c73ec8f11ae8f7f3fd790f837fc528ab34.tar.gz |
switch docs + website to olddoc
wrongdoc was difficult to maintain because of the tidy-ffi dependency and the HTML5 changes in Darkfish could not be handled well by Tidy. olddoc is superior as it generates leaner HTML which loads faster, requires less scrolling and less processing power to render. Aesthetic comparisons are subjective of course but completely unimportant compared to speed and accessibility. The presence of images and CSS on the old (Darkfish-based) site probably set unreasonable expectations as to my ability and willingness to view such things. No more, the new website is entirely simple HTML which renders well with even the wimpiest browser (hell, olddoc even tries to generate readable raw HTML).
-rw-r--r-- | .document | 2 | ||||
-rw-r--r-- | .gitignore | 4 | ||||
-rw-r--r-- | .olddoc.yml (renamed from .wrongdoc.yml) | 1 | ||||
-rw-r--r-- | GNUmakefile | 12 | ||||
-rw-r--r-- | Rakefile | 62 | ||||
-rw-r--r-- | pkg.mk | 71 |
6 files changed, 28 insertions, 124 deletions
@@ -1,7 +1,5 @@ -ChangeLog LICENSE NEWS README FAQ zbatery_1 -LATEST @@ -11,9 +11,9 @@ log/ pkg/ /vendor -/NEWS -/ChangeLog +/NEWS* /.manifest /GIT-VERSION-FILE /man /LATEST +*_1 diff --git a/.wrongdoc.yml b/.olddoc.yml index 7f9fea0..d36b837 100644 --- a/.wrongdoc.yml +++ b/.olddoc.yml @@ -2,7 +2,6 @@ cgit_url: http://bogomips.org/zbatery.git git_url: git://bogomips.org/zbatery.git rdoc_url: http://zbatery.bogomip.org/ -changelog_start: v0.3.1 merge_html: zbatery_1: Documentation/zbatery.1.html public_email: rainbows-public@bogomips.org diff --git a/GNUmakefile b/GNUmakefile index c53b494..e7e9df1 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -1,20 +1,14 @@ all:: RSYNC_DEST := zbatery.bogomip.org:/srv/zbatery -rfproject := rainbows rfpackage := zbatery +PLACEHOLDERS := zbatery_1 + man-rdoc: man html - for i in $(man1_rdoc); do echo > $$i; done doc:: man-rdoc include pkg.mk -ifneq ($(VERSION),) -release:: - $(RAKE) publish_news VERSION=$(VERSION) - $(RAKE) fm_update VERSION=$(VERSION) -endif base_bins := zbatery bins := $(addprefix bin/, $(base_bins)) -man1_rdoc := $(addsuffix _1, $(base_bins)) man1_bins := $(addsuffix .1, $(base_bins)) man1_paths := $(addprefix man/man1/, $(man1_bins)) clean: @@ -22,9 +16,9 @@ clean: man html: $(MAKE) -C Documentation install-$@ + pkg_extra += $(man1_paths) doc:: - $(RM) $(man1_rdoc) all:: test test: diff --git a/Rakefile b/Rakefile deleted file mode 100644 index d1ca285..0000000 --- a/Rakefile +++ /dev/null @@ -1,62 +0,0 @@ -# -*- encoding: binary -*- -autoload :Gem, 'rubygems' - -cgit_url = "http://bogomips.org/zbatery.git" -git_url = 'git://bogomips.org/zbatery.git' - -desc "read news article from STDIN and post to rubyforge" -task :publish_news do - require 'rubyforge' - spec = Gem::Specification.load('zbatery.gemspec') - tmp = Tempfile.new('rf-news') - _, subject, body = `git cat-file tag v#{spec.version}`.split(/\n\n/, 3) - tmp.puts subject - tmp.puts - tmp.puts spec.description.strip - tmp.puts "" - tmp.puts "* #{spec.homepage}" - tmp.puts "* #{spec.email}" - tmp.puts "* #{git_url}" - tmp.print "\nChanges:\n\n" - tmp.puts body - tmp.flush - system(ENV["VISUAL"], tmp.path) or abort "#{ENV["VISUAL"]} failed: #$?" - msg = File.readlines(tmp.path) - subject = msg.shift - blank = msg.shift - blank == "\n" or abort "no newline after subject!" - subject.strip! - body = msg.join("").strip! - - rf = RubyForge.new.configure - rf.login - rf.post_news('rainbows', subject, body) -end - -desc "post to FM" -task :fm_update do - require 'tempfile' - require 'net/http' - require 'net/netrc' - require 'json' - version = ENV['VERSION'] or abort "VERSION= needed" - uri = URI.parse('http://freecode.com/projects/zbatery/releases.json') - rc = Net::Netrc.locate('zbatery-fm') or abort "~/.netrc not found" - api_token = rc.password - _, subject, body = `git cat-file tag v#{version}`.split(/\n\n/, 3) - tmp = Tempfile.new('fm-changelog') - system(ENV["VISUAL"], tmp.path) or abort "#{ENV["VISUAL"]} failed: #$?" - changelog = File.read(tmp.path).strip - - req = { - "auth_code" => api_token, - "release" => { - "tag_list" => "Stable", - "version" => version, - "changelog" => changelog, - }, - }.to_json - Net::HTTP.start(uri.host, uri.port) do |http| - p http.post(uri.path, req, {'Content-Type'=>'application/json'}) - end -end @@ -1,7 +1,8 @@ RUBY = ruby RAKE = rake RSYNC = rsync -WRONGDOC = wrongdoc +OLDDOC = olddoc +RDOC = rdoc GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE @./GIT-VERSION-GEN @@ -12,14 +13,6 @@ RUBY_VERSION := $(shell $(RUBY) -e 'puts RUBY_VERSION') RUBY_ENGINE := $(shell $(RUBY) -e 'puts((RUBY_ENGINE rescue "ruby"))') lib := lib -ifeq ($(shell test -f script/isolate_for_tests && echo t),t) -isolate_libs := tmp/isolate/$(RUBY_ENGINE)-$(RUBY_VERSION)/isolate.mk -$(isolate_libs): script/isolate_for_tests - @$(RUBY) script/isolate_for_tests --include $(isolate_libs) -lib := $(lib):$(ISOLATE_LIBS) -endif - ext := $(firstword $(wildcard ext/*)) ifneq ($(ext),) ext_pfx := tmp/ext/$(RUBY_ENGINE)-$(RUBY_VERSION) @@ -36,7 +29,7 @@ $(ext_pfx)/$(ext)/%: $(ext)/% $(ext_d) install -m 644 $< $@ $(ext_pfx)/$(ext)/Makefile: $(ext)/extconf.rb $(ext_d) $(ext_h) $(RM) -f $(@D)/*.o - cd $(@D) && $(RUBY) $(CURDIR)/$(ext)/extconf.rb + cd $(@D) && $(RUBY) $(CURDIR)/$(ext)/extconf.rb $(EXTCONF_ARGS) ext_sfx := _ext.$(DLEXT) ext_dl := $(ext_pfx)/$(ext)/$(notdir $(ext)_ext.$(DLEXT)) $(ext_dl): $(ext_src) $(ext_pfx_src) $(ext_pfx)/$(ext)/Makefile @@ -48,10 +41,10 @@ else build: endif -pkg_extra += GIT-VERSION-FILE NEWS ChangeLog LATEST -ChangeLog: GIT-VERSION-FILE .wrongdoc.yml - $(WRONGDOC) prepare -NEWS LATEST: ChangeLog +pkg_extra += GIT-VERSION-FILE NEWS LATEST +NEWS: GIT-VERSION-FILE .olddoc.yml + $(OLDDOC) prepare +LATEST: NEWS manifest: $(RM) .manifest @@ -63,28 +56,20 @@ manifest: cmp $@+ $@ || mv $@+ $@ $(RM) $@+ -doc:: .document .wrongdoc.yml $(pkg_extra) +doc:: .document .olddoc.yml $(pkg_extra) $(PLACEHOLDERS) -find lib -type f -name '*.rbc' -exec rm -f '{}' ';' -find ext -type f -name '*.rbc' -exec rm -f '{}' ';' $(RM) -r doc - $(WRONGDOC) all + $(RDOC) -f oldweb + $(OLDDOC) merge install -m644 COPYING doc/COPYING + install -m644 NEWS doc/NEWS + install -m644 NEWS.atom.xml doc/NEWS.atom.xml install -m644 $(shell LC_ALL=C grep '^[A-Z]' .document) doc/ ifneq ($(VERSION),) pkggem := pkg/$(rfpackage)-$(VERSION).gem pkgtgz := pkg/$(rfpackage)-$(VERSION).tgz -release_notes := release_notes-$(VERSION) -release_changes := release_changes-$(VERSION) - -release-notes: $(release_notes) -release-changes: $(release_changes) -$(release_changes): - $(WRONGDOC) release_changes > $@+ - $(VISUAL) $@+ && test -s $@+ && mv $@+ $@ -$(release_notes): - $(WRONGDOC) release_notes > $@+ - $(VISUAL) $@+ && test -s $@+ && mv $@+ $@ # ensures we're actually on the tagged $(VERSION), only used for release verify: @@ -120,31 +105,18 @@ $(pkgtgz): manifest fix-perms package: $(pkgtgz) $(pkggem) -test-release:: verify package $(release_notes) $(release_changes) - # make tgz release on RubyForge - @echo rubyforge add_release -f \ - -n $(release_notes) -a $(release_changes) \ - $(rfproject) $(rfpackage) $(VERSION) $(pkgtgz) - @echo gem push $(pkggem) - @echo rubyforge add_file \ - $(rfproject) $(rfpackage) $(VERSION) $(pkggem) -release:: verify package $(release_notes) $(release_changes) - # make tgz release on RubyForge - rubyforge add_release -f -n $(release_notes) -a $(release_changes) \ - $(rfproject) $(rfpackage) $(VERSION) $(pkgtgz) +release:: verify package # push gem to RubyGems.org gem push $(pkggem) - # in case of gem downloads from RubyForge releases page - rubyforge add_file \ - $(rfproject) $(rfpackage) $(VERSION) $(pkggem) else gem install-gem: GIT-VERSION-FILE $(MAKE) $@ VERSION=$(GIT_VERSION) endif -all:: test +all:: check test_units := $(wildcard test/test_*.rb) -test: test-unit +test: check +check: test-unit test-unit: $(test_units) $(test_units): build $(RUBY) -I $(lib) $@ $(RUBY_TEST_OPTS) @@ -154,8 +126,6 @@ ifneq ($(RSYNC_DEST),) publish_doc: -git set-file-times $(MAKE) doc - find doc/images -type f | \ - TZ=UTC xargs touch -d '1970-01-01 00:00:06' doc/rdoc.css $(MAKE) doc_gz $(RSYNC) -av doc/ $(RSYNC_DEST)/ git ls-files | xargs touch @@ -163,7 +133,7 @@ endif # Create gzip variants of the same timestamp as the original so nginx # "gzip_static on" can serve the gzipped versions directly. -doc_gz: docs = $(shell find doc -type f ! -regex '^.*\.\(gif\|jpg\|png\|gz\)$$') +doc_gz: docs = $(shell find doc -type f ! -regex '^.*\.gz$$') doc_gz: for i in $(docs); do \ gzip --rsyncable -9 < $$i > $$i.gz; touch -r $$i $$i.gz; done @@ -171,5 +141,10 @@ check-warnings: @(for i in $$(git ls-files '*.rb'| grep -v '^setup\.rb$$'); \ do $(RUBY) -d -W2 -c $$i; done) | grep -v '^Syntax OK$$' || : -.PHONY: all .FORCE-GIT-VERSION-FILE doc test $(test_units) manifest +ifneq ($(PLACEHOLDERS),) +$(PLACEHOLDERS): + echo olddoc_placeholder > $@ +endif + +.PHONY: all .FORCE-GIT-VERSION-FILE doc check test $(test_units) manifest .PHONY: check-warnings |