omgdav 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dc9720d03885d1269642550cceabf47b5fc9e2e8
4
- data.tar.gz: fa741e1b07b302acd7e1c77bb0812d44bc543c9c
3
+ metadata.gz: 7f3a6e9e7c42aa5095c298edb334f4f692033d6d
4
+ data.tar.gz: 4ef711cda472a34c7265b772a66024682add2ef1
5
5
  SHA512:
6
- metadata.gz: 8ae05ad0fd3588403d2361405e29ce63c8905564e5a731a534d11243e86b4d08cce328ded767ef529476983dc5fa21bc068cd87fd011ba078ab6443647120d01
7
- data.tar.gz: e5a3ab615aeb24ea760c4ad7331f9410a4206de3b6d4e2b0941f88990b03109e573f8b56d070c87e1538c6ae7d98f24caa465b7b10a1db6dea302a4917972008
6
+ metadata.gz: 2981d63b2891643e9f1b96d48daa1dbc8671ffdeff6d6d1b41b0b78b40c93c86eb9eec637ce5bfe8cac2266df1fc74a9e6cc79eb6825f6a2c8623f5c62dedefb
7
+ data.tar.gz: c9432379b8424873364018a38df6c3a9a7785101c7a3345cf4013ab08069d0ecab37a79878efafa5cbbad66cf99d3f202e0bc666ffcfb44f11ac1f07162fd5bd
data/.document CHANGED
@@ -1,3 +1,2 @@
1
- ChangeLog
2
1
  NEWS
3
2
  README
data/.gitignore CHANGED
@@ -5,8 +5,7 @@
5
5
  log/
6
6
  pkg/
7
7
  /vendor
8
- /NEWS
9
- /ChangeLog
8
+ /NEWS*
10
9
  /.manifest
11
10
  /GIT-VERSION-FILE
12
11
  /man
File without changes
data/GIT-VERSION-GEN CHANGED
@@ -2,7 +2,7 @@
2
2
  CONSTANT = "OMGDAV::VERSION"
3
3
  RVF = "lib/omgdav/version.rb"
4
4
  GVF = "GIT-VERSION-FILE"
5
- DEF_VER = "v0.0.2"
5
+ DEF_VER = "v0.0.3"
6
6
  vn = DEF_VER
7
7
 
8
8
  # First see if there is a version file (included in release tarballs),
data/GNUmakefile CHANGED
@@ -1,6 +1,5 @@
1
1
  all::
2
2
  RSYNC_DEST := bogomips.org:/srv/bogomips/omgdav
3
- rfproject := rainbows
4
3
  rfpackage := omgdav
5
4
  pkg_extra += lib/omgdav/version.rb
6
5
  include pkg.mk
data/lib/omgdav.rb CHANGED
@@ -9,7 +9,6 @@ require 'nokogiri'
9
9
  require 'json'
10
10
  require 'sequel'
11
11
  require 'mogilefs'
12
- require 'fast_xs'
13
12
  require 'rack'
14
13
  require 'rack/request'
15
14
  # :startdoc:
@@ -20,6 +20,7 @@ class OMGDAV::InputWrapper # :nodoc:
20
20
  while @input.read(16384, buf)
21
21
  # drain input
22
22
  end
23
+ buf.clear
23
24
  raise "too many bytes for XML: #@bytes > #@max"
24
25
  end
25
26
  end
@@ -16,7 +16,7 @@ class OMGDAV::PropfindResponse # :nodoc:
16
16
 
17
17
  # no line buffering
18
18
  def each
19
- buf = ""
19
+ buf = Thread.current[:omgdav_xmltmp_rbuf] ||= ""
20
20
  while read(16384, buf)
21
21
  yield buf
22
22
  end
@@ -82,7 +82,8 @@ class OMGDAV::PropfindResponse # :nodoc:
82
82
  end
83
83
 
84
84
  x << %Q(<D:response #{prop_ns}xmlns:lp1="DAV:" xmlns:lp2="#{OMGDAV::LP2}">)
85
- name = node_to_key(row, @n2k_cache).fast_xs
85
+ name = node_to_key(row, @n2k_cache)
86
+ name.encode!(xml: :text)
86
87
  name << "/" if is_col && ! row[:name].empty?
87
88
 
88
89
  x << "<D:href>#@script_name/#{name}</D:href>"
@@ -99,7 +100,12 @@ class OMGDAV::PropfindResponse # :nodoc:
99
100
  getcontenttype = content_type(row, @ct_cache)
100
101
  x << "<lp1:getcontenttype>#{getcontenttype}</lp1:getcontenttype>"
101
102
  end
102
- x << props_str if props_str
103
+
104
+ if props_str
105
+ x << props_str
106
+ props_str.clear
107
+ prop_ns.clear
108
+ end
103
109
 
104
110
  created = Time.at(row[:created]).utc.xmlschema
105
111
  x << "<lp1:creationdate>#{created}</lp1:creationdate>"
@@ -42,6 +42,8 @@ module OMGDAV::RackUtil
42
42
  parts
43
43
  end
44
44
 
45
+ # some clients may send extra stuff in the input body we ignore, ensure
46
+ # persistent connections stay working
45
47
  def drain_input(env)
46
48
  input = env["rack.input"]
47
49
  bytes = 0
@@ -50,6 +52,7 @@ module OMGDAV::RackUtil
50
52
  while input.read(666, buf)
51
53
  bytes += buf.size
52
54
  end
55
+ buf.clear
53
56
  end
54
57
  bytes
55
58
  end
data/omgdav.gemspec CHANGED
@@ -1,8 +1,8 @@
1
1
  # -*- encoding: binary -*-
2
2
  ENV["VERSION"] or abort "VERSION= must be specified"
3
3
  manifest = File.readlines('.manifest').map! { |x| x.chomp! }
4
- require 'wrongdoc'
5
- extend Wrongdoc::Gemspec
4
+ require 'olddoc'
5
+ extend Olddoc::Gemspec
6
6
  name, summary, title = readme_metadata
7
7
 
8
8
  Gem::Specification.new do |s|
@@ -10,26 +10,23 @@ Gem::Specification.new do |s|
10
10
  s.version = ENV["VERSION"].dup
11
11
 
12
12
  s.authors = ["OMGDAV hackers"]
13
- s.date = Time.now.utc.strftime('%Y-%m-%d')
14
13
  s.description = readme_description
15
14
  s.email = %q{normalperson@yhbt.net}
16
15
  s.extra_rdoc_files = extra_rdoc_files(manifest)
17
16
  s.files = manifest
18
- s.homepage = Wrongdoc.config[:rdoc_url]
17
+ s.homepage = Olddoc.config['rdoc_url']
19
18
  s.summary = summary
20
- s.rdoc_options = rdoc_options
21
19
  s.executables = %w(omgdav-setup omgdav-sync)
22
20
  s.test_files = Dir['test/test_*.rb']
23
21
  s.add_dependency('rack', ['~> 1.4'])
24
22
  s.add_dependency('kgio', ['~> 2.7'])
25
23
  s.add_dependency('kcar', ['~> 0.4'])
26
- s.add_dependency('fast_xs', ['~> 0.8'])
27
24
  s.add_dependency('mogilefs-client', ['~> 3.4'])
28
25
  s.add_dependency('nokogiri', ['~> 1.5'])
29
26
  s.add_dependency('sequel', ['~> 4.0'])
30
27
  s.required_ruby_version = '>= 1.9'
31
- s.add_development_dependency('unicorn', '~> 4.4.0')
32
- s.add_development_dependency('wrongdoc', '~> 1.8')
28
+ s.add_development_dependency('unicorn', '~> 4.4')
29
+ s.add_development_dependency('olddoc', '~> 1.0')
33
30
 
34
31
  s.licenses = %w(AGPLv3+)
35
32
  end
data/pkg.mk CHANGED
@@ -1,7 +1,8 @@
1
1
  RUBY = ruby
2
2
  RAKE = rake
3
3
  RSYNC = rsync
4
- WRONGDOC = wrongdoc
4
+ OLDDOC = olddoc
5
+ RDOC = rdoc
5
6
 
6
7
  GIT-VERSION-FILE: .FORCE-GIT-VERSION-FILE
7
8
  @./GIT-VERSION-GEN
@@ -12,14 +13,6 @@ RUBY_VERSION := $(shell $(RUBY) -e 'puts RUBY_VERSION')
12
13
  RUBY_ENGINE := $(shell $(RUBY) -e 'puts((RUBY_ENGINE rescue "ruby"))')
13
14
  lib := lib
14
15
 
15
- ifeq ($(shell test -f script/isolate_for_tests && echo t),t)
16
- isolate_libs := tmp/isolate/$(RUBY_ENGINE)-$(RUBY_VERSION)/isolate.mk
17
- $(isolate_libs): script/isolate_for_tests
18
- @$(RUBY) script/isolate_for_tests
19
- -include $(isolate_libs)
20
- lib := $(lib):$(ISOLATE_LIBS)
21
- endif
22
-
23
16
  ext := $(firstword $(wildcard ext/*))
24
17
  ifneq ($(ext),)
25
18
  ext_pfx := tmp/ext/$(RUBY_ENGINE)-$(RUBY_VERSION)
@@ -36,7 +29,7 @@ $(ext_pfx)/$(ext)/%: $(ext)/% $(ext_d)
36
29
  install -m 644 $< $@
37
30
  $(ext_pfx)/$(ext)/Makefile: $(ext)/extconf.rb $(ext_d) $(ext_h)
38
31
  $(RM) -f $(@D)/*.o
39
- cd $(@D) && $(RUBY) $(CURDIR)/$(ext)/extconf.rb
32
+ cd $(@D) && $(RUBY) $(CURDIR)/$(ext)/extconf.rb $(EXTCONF_ARGS)
40
33
  ext_sfx := _ext.$(DLEXT)
41
34
  ext_dl := $(ext_pfx)/$(ext)/$(notdir $(ext)_ext.$(DLEXT))
42
35
  $(ext_dl): $(ext_src) $(ext_pfx_src) $(ext_pfx)/$(ext)/Makefile
@@ -48,10 +41,10 @@ else
48
41
  build:
49
42
  endif
50
43
 
51
- pkg_extra += GIT-VERSION-FILE NEWS ChangeLog LATEST
52
- ChangeLog: GIT-VERSION-FILE .wrongdoc.yml
53
- $(WRONGDOC) prepare
54
- NEWS LATEST: ChangeLog
44
+ pkg_extra += GIT-VERSION-FILE NEWS LATEST
45
+ NEWS: GIT-VERSION-FILE .olddoc.yml
46
+ $(OLDDOC) prepare
47
+ LATEST: NEWS
55
48
 
56
49
  manifest:
57
50
  $(RM) .manifest
@@ -63,28 +56,20 @@ manifest:
63
56
  cmp $@+ $@ || mv $@+ $@
64
57
  $(RM) $@+
65
58
 
66
- doc:: .document .wrongdoc.yml $(pkg_extra)
59
+ doc:: .document .olddoc.yml $(pkg_extra) $(PLACEHOLDERS)
67
60
  -find lib -type f -name '*.rbc' -exec rm -f '{}' ';'
68
61
  -find ext -type f -name '*.rbc' -exec rm -f '{}' ';'
69
62
  $(RM) -r doc
70
- $(WRONGDOC) all
63
+ $(RDOC) -f oldweb
64
+ $(OLDDOC) merge
71
65
  install -m644 COPYING doc/COPYING
66
+ install -m644 NEWS doc/NEWS
67
+ install -m644 NEWS.atom.xml doc/NEWS.atom.xml
72
68
  install -m644 $(shell LC_ALL=C grep '^[A-Z]' .document) doc/
73
69
 
74
70
  ifneq ($(VERSION),)
75
71
  pkggem := pkg/$(rfpackage)-$(VERSION).gem
76
72
  pkgtgz := pkg/$(rfpackage)-$(VERSION).tgz
77
- release_notes := release_notes-$(VERSION)
78
- release_changes := release_changes-$(VERSION)
79
-
80
- release-notes: $(release_notes)
81
- release-changes: $(release_changes)
82
- $(release_changes):
83
- $(WRONGDOC) release_changes > $@+
84
- $(VISUAL) $@+ && test -s $@+ && mv $@+ $@
85
- $(release_notes):
86
- $(WRONGDOC) release_notes > $@+
87
- $(VISUAL) $@+ && test -s $@+ && mv $@+ $@
88
73
 
89
74
  # ensures we're actually on the tagged $(VERSION), only used for release
90
75
  verify:
@@ -120,31 +105,18 @@ $(pkgtgz): manifest fix-perms
120
105
 
121
106
  package: $(pkgtgz) $(pkggem)
122
107
 
123
- test-release:: verify package $(release_notes) $(release_changes)
124
- # make tgz release on RubyForge
125
- @echo rubyforge add_release -f \
126
- -n $(release_notes) -a $(release_changes) \
127
- $(rfproject) $(rfpackage) $(VERSION) $(pkgtgz)
128
- @echo gem push $(pkggem)
129
- @echo rubyforge add_file \
130
- $(rfproject) $(rfpackage) $(VERSION) $(pkggem)
131
- release:: verify package $(release_notes) $(release_changes)
132
- # make tgz release on RubyForge
133
- rubyforge add_release -f -n $(release_notes) -a $(release_changes) \
134
- $(rfproject) $(rfpackage) $(VERSION) $(pkgtgz)
108
+ release:: verify package
135
109
  # push gem to RubyGems.org
136
110
  gem push $(pkggem)
137
- # in case of gem downloads from RubyForge releases page
138
- rubyforge add_file \
139
- $(rfproject) $(rfpackage) $(VERSION) $(pkggem)
140
111
  else
141
112
  gem install-gem: GIT-VERSION-FILE
142
113
  $(MAKE) $@ VERSION=$(GIT_VERSION)
143
114
  endif
144
115
 
145
- all:: test
116
+ all:: check
146
117
  test_units := $(wildcard test/test_*.rb)
147
- test: test-unit
118
+ test: check
119
+ check: test-unit
148
120
  test-unit: $(test_units)
149
121
  $(test_units): build
150
122
  $(RUBY) -I $(lib) $@ $(RUBY_TEST_OPTS)
@@ -154,8 +126,6 @@ ifneq ($(RSYNC_DEST),)
154
126
  publish_doc:
155
127
  -git set-file-times
156
128
  $(MAKE) doc
157
- find doc/images -type f | \
158
- TZ=UTC xargs touch -d '1970-01-01 00:00:06' doc/rdoc.css
159
129
  $(MAKE) doc_gz
160
130
  $(RSYNC) -av doc/ $(RSYNC_DEST)/
161
131
  git ls-files | xargs touch
@@ -163,7 +133,7 @@ endif
163
133
 
164
134
  # Create gzip variants of the same timestamp as the original so nginx
165
135
  # "gzip_static on" can serve the gzipped versions directly.
166
- doc_gz: docs = $(shell find doc -type f ! -regex '^.*\.\(gif\|jpg\|png\|gz\)$$')
136
+ doc_gz: docs = $(shell find doc -type f ! -regex '^.*\.gz$$')
167
137
  doc_gz:
168
138
  for i in $(docs); do \
169
139
  gzip --rsyncable -9 < $$i > $$i.gz; touch -r $$i $$i.gz; done
@@ -171,5 +141,10 @@ check-warnings:
171
141
  @(for i in $$(git ls-files '*.rb'| grep -v '^setup\.rb$$'); \
172
142
  do $(RUBY) -d -W2 -c $$i; done) | grep -v '^Syntax OK$$' || :
173
143
 
174
- .PHONY: all .FORCE-GIT-VERSION-FILE doc test $(test_units) manifest
144
+ ifneq ($(PLACEHOLDERS),)
145
+ $(PLACEHOLDERS):
146
+ echo olddoc_placeholder > $@
147
+ endif
148
+
149
+ .PHONY: all .FORCE-GIT-VERSION-FILE doc check test $(test_units) manifest
175
150
  .PHONY: check-warnings
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: omgdav
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - OMGDAV hackers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-27 00:00:00.000000000 Z
11
+ date: 2015-01-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rack
@@ -52,20 +52,6 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0.4'
55
- - !ruby/object:Gem::Dependency
56
- name: fast_xs
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '0.8'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '0.8'
69
55
  - !ruby/object:Gem::Dependency
70
56
  name: mogilefs-client
71
57
  requirement: !ruby/object:Gem::Requirement
@@ -114,28 +100,28 @@ dependencies:
114
100
  requirements:
115
101
  - - "~>"
116
102
  - !ruby/object:Gem::Version
117
- version: 4.4.0
103
+ version: '4.4'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
108
  - - "~>"
123
109
  - !ruby/object:Gem::Version
124
- version: 4.4.0
110
+ version: '4.4'
125
111
  - !ruby/object:Gem::Dependency
126
- name: wrongdoc
112
+ name: olddoc
127
113
  requirement: !ruby/object:Gem::Requirement
128
114
  requirements:
129
115
  - - "~>"
130
116
  - !ruby/object:Gem::Version
131
- version: '1.8'
117
+ version: '1.0'
132
118
  type: :development
133
119
  prerelease: false
134
120
  version_requirements: !ruby/object:Gem::Requirement
135
121
  requirements:
136
122
  - - "~>"
137
123
  - !ruby/object:Gem::Version
138
- version: '1.8'
124
+ version: '1.0'
139
125
  description: |-
140
126
  omgdav exposes an existing MogileFS domain over WebDAV. There is
141
127
  absolutely no commitment or modification needed to your existing
@@ -146,16 +132,14 @@ executables:
146
132
  - omgdav-sync
147
133
  extensions: []
148
134
  extra_rdoc_files:
149
- - ChangeLog
150
135
  - NEWS
151
136
  - README
152
137
  files:
153
138
  - ".document"
154
139
  - ".gitignore"
155
140
  - ".manifest"
156
- - ".wrongdoc.yml"
141
+ - ".olddoc.yml"
157
142
  - COPYING
158
- - ChangeLog
159
143
  - GIT-VERSION-FILE
160
144
  - GIT-VERSION-GEN
161
145
  - GNUmakefile
@@ -211,11 +195,7 @@ licenses:
211
195
  - AGPLv3+
212
196
  metadata: {}
213
197
  post_install_message:
214
- rdoc_options:
215
- - "-t"
216
- - omgdav - Rack app for bridging WebDAV and MogileFS
217
- - "-W"
218
- - http://bogomips.org/omgdav.git/tree/%s
198
+ rdoc_options: []
219
199
  require_paths:
220
200
  - lib
221
201
  required_ruby_version: !ruby/object:Gem::Requirement
@@ -230,7 +210,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
230
210
  version: '0'
231
211
  requirements: []
232
212
  rubyforge_project:
233
- rubygems_version: 2.2.2
213
+ rubygems_version: 2.4.5
234
214
  signing_key:
235
215
  specification_version: 4
236
216
  summary: Rack app for bridging WebDAV and MogileFS