libdolt 0.33.13 → 0.33.14
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 +8 -8
- data/.gitignore +3 -2
- data/lib/libdolt/git/commit.rb +6 -3
- data/lib/libdolt/html_escape.rb +27 -0
- data/lib/libdolt/version.rb +1 -1
- data/lib/libdolt/view/blob.rb +1 -6
- data/lib/libdolt.rb +1 -0
- data/test/fixtures/dolt-test-repo.git/info/refs +2 -0
- data/test/fixtures/dolt-test-repo.git/objects/19/6e6f2a91c6ab8c7fc2f3cd5124cedb1a2fc83a +3 -0
- data/test/fixtures/dolt-test-repo.git/objects/info/packs +2 -0
- data/test/fixtures/dolt-test-repo.git/objects/pack/pack-a50f04f936dd57b638b5b97a5eeaf8860c97ae2e.idx +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/pack/pack-a50f04f936dd57b638b5b97a5eeaf8860c97ae2e.pack +0 -0
- data/test/fixtures/dolt-test-repo.git/packed-refs +3 -0
- data/test/libdolt/git/repository_test.rb +21 -0
- metadata +9 -29
- data/test/fixtures/dolt-test-repo.git/objects/03/0bc1fa37aac317a5d38fbb4f3a6d22b34c6eba +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/07/4e4c198421bfc8a1bf9a9c0fc117c4569ba0bd +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/12/67a0fbd3ec606c20f3f1dca1f53bb9505ba9b5 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/13/0ddb17c01e1c283669d012ad9e7e92fa1af5b1 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/1a/f9b62325e53f0e9aff8ed80d919b73a6fd18e2 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/26/4c348a80906538018616fa16fc35d04bdf38b0 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/28/5f85e1dae8796d8780106b3986ba47cf989bca +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/36/855d2d2899aa1044c4ea8eba229d7460cc083a +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/38/3216e07edec271936c7fd87b69c346511aedb2 +0 -2
- data/test/fixtures/dolt-test-repo.git/objects/60/eebb9021a6ce7d582c2f2d4aa5bfb3672150ae +0 -2
- data/test/fixtures/dolt-test-repo.git/objects/64/bb41b95d4f696fc9e22ef9718fc2eaf0b6ccac +0 -2
- data/test/fixtures/dolt-test-repo.git/objects/85/026eda8302b98fa54cc24445a118028865a2e2 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/89/cd7e9d4564928de6b803b36c6e3d081c8d9ca1 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/a1/2abf5b47584c947cc7f09b27e5895644c5524d +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/b4/0c249db94476cac7fa91a9d6491c0faf21ec21 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/c0/35ba24bb3bed31589bc6736ca9b116175eb723 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/c8/cc83f1a1fc3640fce14ab73d4fa4b22b6211d8 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/ca/d2309100006f94967cdafe678356b96bb098a5 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/cd/104f8b749c206e7faef1cb7c03f453cbb1aa57 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/cd/888aef50e3742885630ea4aa8c05f12b5518f4 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/d1/f94fb68cf34f7f121a949e89e09d1a8c1b3825 +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/de/dbf2faa4f522716ab727e4325a3d75772e137b +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/e8/d33ae69b8c4d3df1e8fad4733d69720b176849 +0 -1
- data/test/fixtures/dolt-test-repo.git/objects/e9/0021f89616ddf86855d05337c188408d3b417e +0 -0
- data/test/fixtures/dolt-test-repo.git/objects/fc/5f5fb50b435e183925b341909610aace90a413 +0 -0
- data/test/fixtures/dolt-test-repo.git/refs/heads/master +0 -1
- data/test/fixtures/dolt-test-repo.git/refs/tags/testable-tag +0 -1
checksums.yaml
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
---
|
|
2
2
|
!binary "U0hBMQ==":
|
|
3
3
|
metadata.gz: !binary |-
|
|
4
|
-
|
|
4
|
+
MzM5MGFmMDljMzEyY2U1Y2FmNjY5NDNmYmMwNDY2NjRhODE0MzQzZA==
|
|
5
5
|
data.tar.gz: !binary |-
|
|
6
|
-
|
|
6
|
+
MjlmZjFiYzAxYTczY2RlNTVlZTQ0OTM1NzQxNTZmNzFkZGE0ZGZjNA==
|
|
7
7
|
SHA512:
|
|
8
8
|
metadata.gz: !binary |-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
NDgzZTc4OGIwMjBhMzcyY2Y0NDk0NmJmZTk3NjE0OWM5MzRkNDRhYWMxYWI4
|
|
10
|
+
Mjc4MjkwMWE4Y2MwZGQ5YTZkNTRiN2I0MDc3NmMyZjQ3ZGI2ZDNmNGNlMjFj
|
|
11
|
+
Yjk2MjQwMTNkYWVhOWZmOGMyZmNhOWFlNGMyODIxNGI1MWI5OWM=
|
|
12
12
|
data.tar.gz: !binary |-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
NjBmYmRiOWRkZjAxMjBjNzYyZGIxNjg5NThiNmQyOWQzNzFlOGExYjViNTRk
|
|
14
|
+
MzhmYjNiZWE3YjVjNjU3ZDcwMjdmZWY5NTlhYmI3YjkzMDI5ZTc5ZGQ1Mjkz
|
|
15
|
+
NDM1NmQxNzFjMTU4NGQxN2FlOWJlMmQ1OTQxNzhhMmE0MmNiMWI=
|
data/.gitignore
CHANGED
data/lib/libdolt/git/commit.rb
CHANGED
|
@@ -45,7 +45,9 @@ module Dolt
|
|
|
45
45
|
case key
|
|
46
46
|
when :author
|
|
47
47
|
pieces = value.match(/(.*)\s<(.*)>/)
|
|
48
|
-
|
|
48
|
+
name = HTMLEscape.entityfy(pieces[1])
|
|
49
|
+
email = HTMLEscape.entityfy(pieces[2])
|
|
50
|
+
value = { :name => name, :email => email }
|
|
49
51
|
when :date
|
|
50
52
|
value = Time.parse(value)
|
|
51
53
|
end
|
|
@@ -56,7 +58,8 @@ module Dolt
|
|
|
56
58
|
def self.extract_commit_summary(lines)
|
|
57
59
|
summary = lines.shift
|
|
58
60
|
lines.shift if lines.first == ""
|
|
59
|
-
summary.sub(/^ /, "")
|
|
61
|
+
summary = summary.sub(/^ /, "")
|
|
62
|
+
HTMLEscape.entityfy(summary)
|
|
60
63
|
end
|
|
61
64
|
|
|
62
65
|
def self.extract_commit_message(lines)
|
|
@@ -66,7 +69,7 @@ module Dolt
|
|
|
66
69
|
message << lines.shift
|
|
67
70
|
end
|
|
68
71
|
|
|
69
|
-
message
|
|
72
|
+
HTMLEscape.entityfy(message)
|
|
70
73
|
end
|
|
71
74
|
end
|
|
72
75
|
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
#--
|
|
3
|
+
# Copyright (C) 2014 Gitorious AS
|
|
4
|
+
#
|
|
5
|
+
# This program is free software: you can redistribute it and/or modify
|
|
6
|
+
# it under the terms of the GNU Affero General Public License as published by
|
|
7
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
8
|
+
# (at your option) any later version.
|
|
9
|
+
#
|
|
10
|
+
# This program is distributed in the hope that it will be useful,
|
|
11
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
12
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
13
|
+
# GNU Affero General Public License for more details.
|
|
14
|
+
#
|
|
15
|
+
# You should have received a copy of the GNU Affero General Public License
|
|
16
|
+
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
17
|
+
#++
|
|
18
|
+
require "htmlentities"
|
|
19
|
+
|
|
20
|
+
module Dolt
|
|
21
|
+
module HTMLEscape
|
|
22
|
+
def self.entityfy(content)
|
|
23
|
+
@coder ||= HTMLEntities.new
|
|
24
|
+
@coder.encode(content)
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
data/lib/libdolt/version.rb
CHANGED
data/lib/libdolt/view/blob.rb
CHANGED
|
@@ -24,11 +24,6 @@ module Dolt
|
|
|
24
24
|
!content[0...(content.length-1)].index("\000").nil?
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
-
def entityfy(content)
|
|
28
|
-
@coder ||= HTMLEntities.new
|
|
29
|
-
@coder.encode(content)
|
|
30
|
-
end
|
|
31
|
-
|
|
32
27
|
def format_blob(path, content, repo = nil, ref = nil)
|
|
33
28
|
return format_binary_blob(path, content, repo, ref) if binary?(content)
|
|
34
29
|
format_text_blob(path, content, repo, ref)
|
|
@@ -48,7 +43,7 @@ The content you're attempting to browse appears to be binary.
|
|
|
48
43
|
end
|
|
49
44
|
|
|
50
45
|
def format_text_blob(path, content, repository = nil, ref = nil)
|
|
51
|
-
multiline(entityfy(content))
|
|
46
|
+
multiline(HTMLEscape.entityfy(content))
|
|
52
47
|
end
|
|
53
48
|
|
|
54
49
|
def format_whitespace(text)
|
data/lib/libdolt.rb
CHANGED
data/test/fixtures/dolt-test-repo.git/objects/pack/pack-a50f04f936dd57b638b5b97a5eeaf8860c97ae2e.idx
ADDED
|
Binary file
|
|
Binary file
|
|
@@ -163,6 +163,27 @@ describe Dolt::Git::Repository do
|
|
|
163
163
|
}]
|
|
164
164
|
assert_equal expected, log
|
|
165
165
|
end
|
|
166
|
+
|
|
167
|
+
it "escapes summary and message" do
|
|
168
|
+
log = @repository.tree_history("52d702", "")
|
|
169
|
+
|
|
170
|
+
expected = {
|
|
171
|
+
:type => :blob,
|
|
172
|
+
:oid => "e2bd58a7c13c12a39fe882b773e00b66438a9451",
|
|
173
|
+
:filemode => 33188,
|
|
174
|
+
:name => "README.org",
|
|
175
|
+
:history => [{
|
|
176
|
+
:oid => "52d7029425ff0556ff659e570f71393b6c28ac9c",
|
|
177
|
+
:author => { :name => "Foo O'Bar",
|
|
178
|
+
:email => 'script src="foobar.js"/' },
|
|
179
|
+
:summary => "I'm an <script>unsafe</script> summary",
|
|
180
|
+
:date => Time.parse("2014-01-09 13:16:03 +0200"),
|
|
181
|
+
:message => " I'm a <script>scary</script> message"
|
|
182
|
+
}]
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
assert_equal expected, log[1]
|
|
186
|
+
end
|
|
166
187
|
end
|
|
167
188
|
|
|
168
189
|
describe "#readmes" do
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: libdolt
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.33.
|
|
4
|
+
version: 0.33.14
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Christian Johansen
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2014-01-
|
|
11
|
+
date: 2014-01-09 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rugged
|
|
@@ -201,6 +201,7 @@ files:
|
|
|
201
201
|
- lib/libdolt/git/repository.rb
|
|
202
202
|
- lib/libdolt/git/submodule.rb
|
|
203
203
|
- lib/libdolt/git/tree.rb
|
|
204
|
+
- lib/libdolt/html_escape.rb
|
|
204
205
|
- lib/libdolt/repository_lookup.rb
|
|
205
206
|
- lib/libdolt/version.rb
|
|
206
207
|
- lib/libdolt/view.rb
|
|
@@ -226,48 +227,27 @@ files:
|
|
|
226
227
|
- test/fixtures/dolt-test-repo.git/config
|
|
227
228
|
- test/fixtures/dolt-test-repo.git/description
|
|
228
229
|
- test/fixtures/dolt-test-repo.git/info/exclude
|
|
229
|
-
- test/fixtures/dolt-test-repo.git/
|
|
230
|
+
- test/fixtures/dolt-test-repo.git/info/refs
|
|
230
231
|
- test/fixtures/dolt-test-repo.git/objects/04/76d88d4c60823927c52f872ff09e7f84fb3549
|
|
231
|
-
- test/fixtures/dolt-test-repo.git/objects/07/4e4c198421bfc8a1bf9a9c0fc117c4569ba0bd
|
|
232
|
-
- test/fixtures/dolt-test-repo.git/objects/12/67a0fbd3ec606c20f3f1dca1f53bb9505ba9b5
|
|
233
|
-
- test/fixtures/dolt-test-repo.git/objects/13/0ddb17c01e1c283669d012ad9e7e92fa1af5b1
|
|
234
232
|
- test/fixtures/dolt-test-repo.git/objects/19/344f9121eb8871e814efd9534de9a0891631da
|
|
233
|
+
- test/fixtures/dolt-test-repo.git/objects/19/6e6f2a91c6ab8c7fc2f3cd5124cedb1a2fc83a
|
|
235
234
|
- test/fixtures/dolt-test-repo.git/objects/19/a9bccbaadfa2e25f74584c3f13caebd600d23f
|
|
236
|
-
- test/fixtures/dolt-test-repo.git/objects/1a/f9b62325e53f0e9aff8ed80d919b73a6fd18e2
|
|
237
235
|
- test/fixtures/dolt-test-repo.git/objects/1e/cafd67fb977dee90345f0503b0ecc2e62e01d1
|
|
238
236
|
- test/fixtures/dolt-test-repo.git/objects/1f/5508d7182176fa7584096d24d3b5f288a101ab
|
|
239
|
-
- test/fixtures/dolt-test-repo.git/objects/26/4c348a80906538018616fa16fc35d04bdf38b0
|
|
240
|
-
- test/fixtures/dolt-test-repo.git/objects/28/5f85e1dae8796d8780106b3986ba47cf989bca
|
|
241
237
|
- test/fixtures/dolt-test-repo.git/objects/2b/f4bb63d412e8f5730c0fe6da5c6e5e913f26fa
|
|
242
|
-
- test/fixtures/dolt-test-repo.git/objects/36/855d2d2899aa1044c4ea8eba229d7460cc083a
|
|
243
|
-
- test/fixtures/dolt-test-repo.git/objects/38/3216e07edec271936c7fd87b69c346511aedb2
|
|
244
238
|
- test/fixtures/dolt-test-repo.git/objects/3d/2cf127812ba38c74a69ea9f691768d68769df4
|
|
245
239
|
- test/fixtures/dolt-test-repo.git/objects/4f/3b300a2d261163a8b0753aacdd378e3b73b917
|
|
246
240
|
- test/fixtures/dolt-test-repo.git/objects/55/b0879bb70392b5754af3fe2b9ca2b98d22f3fb
|
|
247
|
-
- test/fixtures/dolt-test-repo.git/objects/60/eebb9021a6ce7d582c2f2d4aa5bfb3672150ae
|
|
248
|
-
- test/fixtures/dolt-test-repo.git/objects/64/bb41b95d4f696fc9e22ef9718fc2eaf0b6ccac
|
|
249
241
|
- test/fixtures/dolt-test-repo.git/objects/75/937fa642851b518ccab55f7880d02e854e67f7
|
|
250
|
-
- test/fixtures/dolt-test-repo.git/objects/85/026eda8302b98fa54cc24445a118028865a2e2
|
|
251
|
-
- test/fixtures/dolt-test-repo.git/objects/89/cd7e9d4564928de6b803b36c6e3d081c8d9ca1
|
|
252
242
|
- test/fixtures/dolt-test-repo.git/objects/96/68141a1c781cf4ec352cca52d0cebf8a04fc50
|
|
253
|
-
- test/fixtures/dolt-test-repo.git/objects/a1/2abf5b47584c947cc7f09b27e5895644c5524d
|
|
254
|
-
- test/fixtures/dolt-test-repo.git/objects/b4/0c249db94476cac7fa91a9d6491c0faf21ec21
|
|
255
|
-
- test/fixtures/dolt-test-repo.git/objects/c0/35ba24bb3bed31589bc6736ca9b116175eb723
|
|
256
|
-
- test/fixtures/dolt-test-repo.git/objects/c8/cc83f1a1fc3640fce14ab73d4fa4b22b6211d8
|
|
257
|
-
- test/fixtures/dolt-test-repo.git/objects/ca/d2309100006f94967cdafe678356b96bb098a5
|
|
258
|
-
- test/fixtures/dolt-test-repo.git/objects/cd/104f8b749c206e7faef1cb7c03f453cbb1aa57
|
|
259
|
-
- test/fixtures/dolt-test-repo.git/objects/cd/888aef50e3742885630ea4aa8c05f12b5518f4
|
|
260
|
-
- test/fixtures/dolt-test-repo.git/objects/d1/f94fb68cf34f7f121a949e89e09d1a8c1b3825
|
|
261
243
|
- test/fixtures/dolt-test-repo.git/objects/da/dd1e7ec0c822ba96fcee5d064bea66a7be3d5a
|
|
262
|
-
- test/fixtures/dolt-test-repo.git/objects/de/dbf2faa4f522716ab727e4325a3d75772e137b
|
|
263
244
|
- test/fixtures/dolt-test-repo.git/objects/df/d46204a2c44405a2591c2dbc7e73d1a81b5334
|
|
264
245
|
- test/fixtures/dolt-test-repo.git/objects/e5/d842ae3035a402d34b531ae5117bc03b50ac77
|
|
265
246
|
- test/fixtures/dolt-test-repo.git/objects/e7/271e0e558b55397698b8c73acf13bd7429ebb3
|
|
266
|
-
- test/fixtures/dolt-test-repo.git/objects/
|
|
267
|
-
- test/fixtures/dolt-test-repo.git/objects/
|
|
268
|
-
- test/fixtures/dolt-test-repo.git/objects/
|
|
269
|
-
- test/fixtures/dolt-test-repo.git/refs
|
|
270
|
-
- test/fixtures/dolt-test-repo.git/refs/tags/testable-tag
|
|
247
|
+
- test/fixtures/dolt-test-repo.git/objects/info/packs
|
|
248
|
+
- test/fixtures/dolt-test-repo.git/objects/pack/pack-a50f04f936dd57b638b5b97a5eeaf8860c97ae2e.idx
|
|
249
|
+
- test/fixtures/dolt-test-repo.git/objects/pack/pack-a50f04f936dd57b638b5b97a5eeaf8860c97ae2e.pack
|
|
250
|
+
- test/fixtures/dolt-test-repo.git/packed-refs
|
|
271
251
|
- test/libdolt/controller_actions_test.rb
|
|
272
252
|
- test/libdolt/disk_repo_resolver_test.rb
|
|
273
253
|
- test/libdolt/git/archiver_test.rb
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
x���J1�a�}��$MMg�&x�
|
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
cd104f8b749c206e7faef1cb7c03f453cbb1aa57
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
fc5f5fb50b435e183925b341909610aace90a413
|