[ARVADOS] updated: 1.3.0-154-g10a159a92
Git user
git at public.curoverse.com
Tue Jan 15 16:28:40 EST 2019
Summary of changes:
apps/workbench/app/helpers/application_helper.rb | 4 ++
.../app/views/users/_virtual_machines.html.erb | 4 +-
apps/workbench/package-build.version | 1 +
apps/workbench/test/the.patch | 3 +
doc/README.textile | 2 +-
doc/Rakefile | 2 +-
doc/_config.yml | 1 +
.../ssh-access-unix.html.textile.liquid | 19 +++--
sdk/ruby/lib/arvados/keep.rb | 15 ++--
sdk/ruby/test/test_keep_manifest.rb | 2 +
tools/arvbox/bin/arvbox | 18 ++++-
tools/arvbox/lib/arvbox/docker/Dockerfile.base | 4 ++
tools/arvbox/lib/arvbox/docker/Dockerfile.demo | 6 +-
tools/arvbox/lib/arvbox/docker/api-setup.sh | 11 ++-
tools/arvbox/lib/arvbox/docker/common.sh | 10 ++-
.../service/{api => certificate}/log/main/.gitstub | 0
.../docker/service/{api => certificate}/log/run | 0
.../lib/arvbox/docker/service/certificate/run | 81 ++++++++++++++++++++++
.../arvbox/lib/arvbox/docker/service/composer/run | 2 +-
.../lib/arvbox/docker/service/gitolite/run-service | 2 +-
.../lib/arvbox/docker/service/nginx/run-service | 69 +++++++++++++++++-
.../lib/arvbox/docker/service/ready/run-service | 3 +-
tools/arvbox/lib/arvbox/docker/service/ssh/run | 2 +-
.../lib/arvbox/docker/service/sso/run-service | 8 +--
.../arvbox/docker/service/websockets/run-service | 4 +-
.../arvbox/lib/arvbox/docker/service/workbench/run | 2 +
.../arvbox/docker/service/workbench/run-service | 10 +--
.../service/{api => workbench2}/log/main/.gitstub | 0
.../docker/service/{api => workbench2}/log/run | 0
.../docker/service/{composer => workbench2}/run | 2 +-
.../arvbox/docker/service/workbench2/run-service | 33 +++++++++
31 files changed, 263 insertions(+), 57 deletions(-)
create mode 100644 apps/workbench/package-build.version
create mode 100644 apps/workbench/test/the.patch
copy tools/arvbox/lib/arvbox/docker/service/{api => certificate}/log/main/.gitstub (100%)
copy tools/arvbox/lib/arvbox/docker/service/{api => certificate}/log/run (100%)
create mode 100755 tools/arvbox/lib/arvbox/docker/service/certificate/run
copy tools/arvbox/lib/arvbox/docker/service/{api => workbench2}/log/main/.gitstub (100%)
copy tools/arvbox/lib/arvbox/docker/service/{api => workbench2}/log/run (100%)
copy tools/arvbox/lib/arvbox/docker/service/{composer => workbench2}/run (69%)
create mode 100755 tools/arvbox/lib/arvbox/docker/service/workbench2/run-service
via 10a159a92c6b3163df50dbb80fa5a1570d0e2d23 (commit)
via 40104312e89869bd008c156a2897caf1667e9c10 (commit)
via c4b9e5167a6196ad26121816fa82f400a2d7a9d2 (commit)
via 3dca6408c9886ae3591486ed43410096b0a28488 (commit)
via b2b98cbc9c213d2831405b6eb37e0f52fa2e9e17 (commit)
via 36c705beb497a5ef8348e5f977ee6ad6674c7d11 (commit)
via 51c1daf863f3e1920f758f73b4e5d70ff2c706d6 (commit)
via e6bc5eeacc812ac41aadeec6fd7a907b5aab0237 (commit)
via 1b2d73e101e1fb27de201b33142c081e80bb7fc6 (commit)
via 76e3ea1d0d2f865272000a5e12f64266a90b3794 (commit)
via 9c013e7742d72254ae747948f96237698198aa85 (commit)
via 28aa8adcc90108922b1274f5568ce3c5745cca78 (commit)
via 3259e9de3d048f7a0b27e67098811640e9da8230 (commit)
via 2a6cb99cf7a21a273efe8dc793929b74149871f6 (commit)
from 61248e8459dd3c99a62056739609f75231f9e385 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
commit 10a159a92c6b3163df50dbb80fa5a1570d0e2d23
Author: Lucas Di Pentima <ldipentima at veritasgenetics.com>
Date: Tue Jan 15 18:27:29 2019 -0300
14482: Allow unescaped " " on stream and file token regexes (WIP)
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <ldipentima at veritasgenetics.com>
diff --git a/sdk/ruby/lib/arvados/keep.rb b/sdk/ruby/lib/arvados/keep.rb
index d27161033..b8abf0f7c 100644
--- a/sdk/ruby/lib/arvados/keep.rb
+++ b/sdk/ruby/lib/arvados/keep.rb
@@ -101,8 +101,8 @@ module Keep
end
class Manifest
- STRICT_STREAM_TOKEN_REGEXP = /^(\.)(\/[^\/\s]+)*$/
- STRICT_FILE_TOKEN_REGEXP = /^[[:digit:]]+:[[:digit:]]+:([^\s\/]+(\/[^\s\/]+)*)$/
+ STRICT_STREAM_TOKEN_REGEXP = /^(\.)(\/[^\/\t\v\n\r]+)*$/
+ STRICT_FILE_TOKEN_REGEXP = /^[[:digit:]]+:[[:digit:]]+:([^\t\v\n\r\/]+(\/[^\t\v\n\r\/]+)*)$/
EMPTY_DOT_FILE_TOKEN_REGEXP = /^0:0:\.$/
# Class to parse a manifest text and provide common views of that data.
@@ -132,15 +132,14 @@ module Keep
end
end
- def self.unescape(s, except=[])
+ def self.unescape(s)
return nil if s.nil?
# Parse backslash escapes in a Keep manifest stream or file name.
s.gsub(/\\(\\|[0-7]{3})/) do |_|
- if $1 == '\\'
+ case $1
+ when '\\'
'\\'
- elsif except.include? $1
- $1
else
$1.to_i(8).chr
end
@@ -261,7 +260,7 @@ module Keep
count = 0
word = words.shift
- unescaped_word = unescape(word, except=["040"])
+ unescaped_word = unescape(word)
count += 1 if unescaped_word =~ STRICT_STREAM_TOKEN_REGEXP and unescaped_word !~ /\/\.\.?(\/|$)/
raise ArgumentError.new "Manifest invalid for stream #{line_count}: missing or invalid stream name #{word.inspect if word}" if count != 1
@@ -275,7 +274,7 @@ module Keep
count = 0
while unescape(word) =~ EMPTY_DOT_FILE_TOKEN_REGEXP or
- (unescape(word, except=["040"]) =~ STRICT_FILE_TOKEN_REGEXP and ($~[1].split('/') & ['..', '.']).empty?)
+ (unescape(word) =~ STRICT_FILE_TOKEN_REGEXP and ($~[1].split('/') & ['..', '.']).empty?)
word = words.shift
count += 1
end
diff --git a/sdk/ruby/test/test_keep_manifest.rb b/sdk/ruby/test/test_keep_manifest.rb
index f29e978ab..637c998bd 100644
--- a/sdk/ruby/test/test_keep_manifest.rb
+++ b/sdk/ruby/test/test_keep_manifest.rb
@@ -448,7 +448,8 @@ class ManifestTest < Minitest::Test
[false, ". d41d8cd98f00b204e9800998ecf8427e+0 0:0:\\057foo/bar\n",
"Manifest invalid for stream 1: invalid file token \"0:0:\\\\057foo/bar\""],
[true, ". d41d8cd98f00b204e9800998ecf8427e+0 0:0:\\134057foo/bar\n"],
- [false, ". d41d8cd98f00b204e9800998ecf8427e+0 \\040:\\040:foo.txt\n"],
+ [false, ". d41d8cd98f00b204e9800998ecf8427e+0 \\040:\\040:foo.txt\n",
+ "Manifest invalid for stream 1: invalid file token \"\\\\040:\\\\040:foo.txt\""],
].each do |ok, manifest, expected_error=nil|
define_method "test_validate manifest #{manifest.inspect}" do
assert_equal ok, Keep::Manifest.valid?(manifest)
commit 40104312e89869bd008c156a2897caf1667e9c10
Author: Lucas Di Pentima <ldipentima at veritasgenetics.com>
Date: Tue Jan 15 15:33:58 2019 -0300
14482: Adds failing test about partially unescaped file tokens.
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <ldipentima at veritasgenetics.com>
diff --git a/sdk/ruby/test/test_keep_manifest.rb b/sdk/ruby/test/test_keep_manifest.rb
index 5fd1c31e3..f29e978ab 100644
--- a/sdk/ruby/test/test_keep_manifest.rb
+++ b/sdk/ruby/test/test_keep_manifest.rb
@@ -448,6 +448,7 @@ class ManifestTest < Minitest::Test
[false, ". d41d8cd98f00b204e9800998ecf8427e+0 0:0:\\057foo/bar\n",
"Manifest invalid for stream 1: invalid file token \"0:0:\\\\057foo/bar\""],
[true, ". d41d8cd98f00b204e9800998ecf8427e+0 0:0:\\134057foo/bar\n"],
+ [false, ". d41d8cd98f00b204e9800998ecf8427e+0 \\040:\\040:foo.txt\n"],
].each do |ok, manifest, expected_error=nil|
define_method "test_validate manifest #{manifest.inspect}" do
assert_equal ok, Keep::Manifest.valid?(manifest)
commit c4b9e5167a6196ad26121816fa82f400a2d7a9d2
Merge: 61248e845 3dca6408c
Author: Lucas Di Pentima <ldipentima at veritasgenetics.com>
Date: Tue Jan 15 14:34:38 2019 -0300
Merge branch 'master' into 14482-rubysdk-empty-dir
Arvados-DCO-1.1-Signed-off-by: Lucas Di Pentima <ldipentima at veritasgenetics.com>
-----------------------------------------------------------------------
hooks/post-receive
--
More information about the arvados-commits
mailing list