virtualfs 0.1.5 → 0.1.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ddf74d9c585a8c3f4cd93dd43ad9ce9726c25b25
4
- data.tar.gz: c9c80761fb9b6b7d81e5fb7e26761c0361e7bd04
3
+ metadata.gz: c78eda7ded80604484d2c739977e57052d26690c
4
+ data.tar.gz: 59ef1c7775cbe1f62447ce31549ac1683929ae78
5
5
  SHA512:
6
- metadata.gz: ee8ebd0a95c9755bbc153a52bde5466b4fb4e07041a1a311c4770ccd70ace6ae65e229e482a50f51fb17b3efdbce94fb235134c240ddcdc974a474e11f4434db
7
- data.tar.gz: 45e203efae0e098ee357b4a8c13dee65aa390d1616eb6e9f8d994e0ebcd9302da99f6f4581c09af76ec0c74c220df5fe56bc9e5f913ad3fdcfb8e66a77b0c842
6
+ metadata.gz: 4c93889b47f62b223b1501ecda09760cbf184b36fc01ed090696178cf6a99ac80b96375480d1d7e0a667889c6f50b45601bfa07b495ce006a5d3c9e8dfaf7581
7
+ data.tar.gz: 67d472616954c102d15525059e32ccd3f99fcaa056926037b9820e738bab9f1daf7561de4aed2b05c6c6ce73ae59508d1ce066d88ebbf0aecd75e25a7ef98763
data/Gemfile.lock CHANGED
@@ -1,9 +1,10 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- virtualfs (0.1.4)
4
+ virtualfs (0.1.6)
5
5
  dalli (~> 2.7)
6
6
  octokit (~> 3.0)
7
+ unicode (~> 0.4.4)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
@@ -28,6 +29,7 @@ GEM
28
29
  sawyer (0.6.0)
29
30
  addressable (~> 2.3.5)
30
31
  faraday (~> 0.8, < 0.10)
32
+ unicode (0.4.4.2)
31
33
 
32
34
  PLATFORMS
33
35
  ruby
@@ -3,6 +3,7 @@ require 'virtualfs/backend'
3
3
  require 'base64'
4
4
  require 'stringio'
5
5
  require 'octokit'
6
+ require 'unicode'
6
7
 
7
8
  module VirtualFS
8
9
  class Github < Backend
@@ -14,7 +15,7 @@ module VirtualFS
14
15
  @user = opts.fetch(:user)
15
16
  @repo = opts.fetch(:repo)
16
17
  @branch = opts.fetch(:branch, 'master')
17
- auth = opts[:authentication]
18
+ auth = opts.fetch(:authentication, {})
18
19
 
19
20
  # @gh = ::Github::GitData.new(opts)
20
21
  @gh = Octokit::Client.new(auth)
@@ -53,7 +54,10 @@ module VirtualFS
53
54
  def internal_items
54
55
  cache do
55
56
  @gh.tree("#{@user}/#{@repo}", @branch, :recursive => true).tree.reduce({}) do |hash, item|
56
- hash[item.path] = item
57
+ # Handle decomposed UTF-8 in Github's response
58
+ path = fix_utf8(item.path)
59
+
60
+ hash[path] = item
57
61
  hash
58
62
  end
59
63
  end
@@ -72,5 +76,9 @@ module VirtualFS
72
76
  Base64.decode64 @gh.blob("#{@user}/#{@repo}", sha).content
73
77
  end
74
78
  end
79
+
80
+ def fix_utf8(string)
81
+ Unicode::normalize_C(string)
82
+ end
75
83
  end
76
84
  end
@@ -1,3 +1,3 @@
1
1
  module VirtualFS
2
- VERSION = "0.1.5"
2
+ VERSION = "0.1.6"
3
3
  end
data/virtualfs.gemspec CHANGED
@@ -16,6 +16,7 @@ Gem::Specification.new do |gem|
16
16
  gem.license = 'MIT'
17
17
 
18
18
  gem.add_dependency 'octokit', '~> 3.0'
19
+ gem.add_dependency 'unicode', '~> 0.4.4'
19
20
  gem.add_dependency 'dalli', '~> 2.7'
20
21
 
21
22
  gem.add_development_dependency 'rspec', '~> 2.12'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: virtualfs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rafał Hirsz
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '3.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: unicode
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: 0.4.4
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: 0.4.4
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: dalli
29
43
  requirement: !ruby/object:Gem::Requirement