virtualfs 0.1.5 → 0.1.6

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: 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