gem-src 0.5.0 → 0.5.1

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: 829ded2173fdb56252ef40be2bbea300a0eb14da
4
- data.tar.gz: 42f85aed1c4311f9a8d3f9d70e17e5f32bbab116
3
+ metadata.gz: 994fa9d12de12ccac86fa26afdc5b205b062c494
4
+ data.tar.gz: 03c3d32859487deb220ca7bb6fd77a9bc5a2c1d3
5
5
  SHA512:
6
- metadata.gz: a2e655aa543cc0d462c3f007a9a47b7a4ea492f1788a95416beeaaa3efba99ace4e9681c053ac7d527170ed8fead517704b90d6d955466cdb73acedcba11d7c4
7
- data.tar.gz: a9f999c47b8e8148b7bcf491a0f442e10364f491eefdc74e17f8dd60bd1f54e278d1b97773f1a71aa35388fd9b498cb28a9c5aed3e5d65a4bbd21b4bd3f2b1a3
6
+ metadata.gz: 38903f66f7c82e5019f28c3fcd2a914da6bdd7c7fae0e8e1d4fcc2d57bfc7af1d86eba77806e11871963b2304415940a2eda8bdb65730b4c8931a9a80eac62ee
7
+ data.tar.gz: 7c644e3ed14e39e17fc6aeac622f06704ccbcdc3388d4ae291d60721ed2f4710f69b0acece5d5a0f42d719b341a45c92e04c42cf6239ecabcf607adab38aea1f
data/gem-src.gemspec CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |gem|
6
6
  gem.name = "gem-src"
7
- gem.version = '0.5.0'
7
+ gem.version = '0.5.1'
8
8
  gem.authors = ["Akira Matsuda"]
9
9
  gem.email = ["ronnie@dio.jp"]
10
10
  gem.description = 'Gem.post_install { `git clone gem_source src` }'
@@ -1,6 +1,7 @@
1
1
  require 'rubygems'
2
2
  require 'rubygems/installer'
3
3
  require 'rubygems/command_manager'
4
+ require 'net/http'
4
5
 
5
6
  Gem::CommandManager.instance.register_command :ginstall
6
7
 
@@ -41,6 +42,14 @@ module Gem
41
42
  !`git ls-remote #{url} 2> /dev/null`.empty?
42
43
  end
43
44
 
45
+ def github?(url)
46
+ URI.parse(url).host == 'github.com'
47
+ end
48
+
49
+ def github_page_exists?(url)
50
+ Net::HTTP.new('github.com', 443).tap {|h| h.use_ssl = true }.request_head(url).code != '404'
51
+ end
52
+
44
53
  def api
45
54
  require 'open-uri'
46
55
  @api ||= open("http://rubygems.org/api/v1/gems/#{installer.spec.name}.yaml", &:read)
@@ -64,6 +73,7 @@ module Gem
64
73
  return if repository.nil? || repository.empty?
65
74
  return if @tested_repositories.include? repository
66
75
  @tested_repositories << repository
76
+ return if github?(repository) && !github_page_exists?(repository)
67
77
  system 'git', 'clone', repository, clone_dir if git?(repository)
68
78
  end
69
79
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gem-src
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Akira Matsuda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-12 00:00:00.000000000 Z
11
+ date: 2014-03-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec