Gentoo Archives: gentoo-commits

From: Patrice Clement <monsieurp@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-emulation/vagrant/, app-emulation/vagrant/files/
Date: Sun, 16 Jul 2017 22:14:19
Message-Id: 1500241926.356593d8f2e0951c3dd4571e2af59f9fcfe460d7.monsieurp@gentoo
1 commit: 356593d8f2e0951c3dd4571e2af59f9fcfe460d7
2 Author: Tomas Mozes <hydrapolic <AT> gmail <DOT> com>
3 AuthorDate: Thu Jul 6 05:54:18 2017 +0000
4 Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org>
5 CommitDate: Sun Jul 16 21:52:06 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=356593d8
7
8 app-emulation/vagrant: version bump to 1.9.6, drop old.
9
10 Package-Manager: Portage-2.3.6, Repoman-2.3.2
11 Closes: https://github.com/gentoo/gentoo/pull/5049
12
13 app-emulation/vagrant/Manifest | 2 +-
14 .../files/vagrant-1.9.3-thread-deadlock.patch | 98 ----------------------
15 .../vagrant/files/{vagrant-1.9.3 => vagrant-1.9.6} | 2 +-
16 .../{vagrant-1.9.3.ebuild => vagrant-1.9.6.ebuild} | 14 ++--
17 4 files changed, 7 insertions(+), 109 deletions(-)
18
19 diff --git a/app-emulation/vagrant/Manifest b/app-emulation/vagrant/Manifest
20 index 91e43dc13dd..c93dba623e6 100644
21 --- a/app-emulation/vagrant/Manifest
22 +++ b/app-emulation/vagrant/Manifest
23 @@ -1,2 +1,2 @@
24 -DIST vagrant-1.9.3.tar.gz 1819192 SHA256 4b141f60e7e59e654b9a77eb137f208613349db331cdbfcd9a8354b8ebba5c00 SHA512 9adfeddd75821fda0ccdbd327861844752fb2d626ff5643527bd5af12ac2399b5565c6cbe5ca4d98f79dbeffd4408b29f57eb3cb967d9e47dafe247c31ffe3a8 WHIRLPOOL b34ca7e027ba2f209c41368c8191a1576b1cdd96a76e8e9f7cd91f0b1a2b0f23fa2e8c32b76a55a143c2fe4e15a7ae23faacd52bf14819d67f7ceeca3768f72d
25 DIST vagrant-1.9.5.tar.gz 1100561 SHA256 69eb8ede3148b6f94389be5fd2d6cb2b6c79ba78cbcacdc354d2c73f12eccc2a SHA512 8d2ace3cbac5b08d3d046a254ef617fead3677e9243da47c4b5131cef783244f403e4771e05075d1f5e9308edcfd52e9a7d792f89f4f39aefc9a949c79c64697 WHIRLPOOL b5e3a8f433c5637c85834900adfc43aaec2c740424e7250da02cf3a5de6f0d553113aa3f386eb74ef5402e0205238f6024b33a55db495d8f21eef19db84b2208
26 +DIST vagrant-1.9.6.tar.gz 1115853 SHA256 08cde24b5def90e7674d333149ca9d9aec585bdb54ca41598e16ea91a56675bb SHA512 d8ed38a1fcffe31d974e94cf48b8dc4902a8005747dfe7311faa21ab53d838c88974c4c200dcbc0fb27fd50f2e3278e1fd21856e4afa37eaf4ef8602e0f5ca5d WHIRLPOOL cb8f1334f9db55be65fb5fd6dc670535681ed0b5457f15f86599fc2ca37fa791304665b913e5085d78012af7b7bd56c6281b78b70e4f054abb5d460cc14a1174
27
28 diff --git a/app-emulation/vagrant/files/vagrant-1.9.3-thread-deadlock.patch b/app-emulation/vagrant/files/vagrant-1.9.3-thread-deadlock.patch
29 deleted file mode 100644
30 index 75cb63a2fb1..00000000000
31 --- a/app-emulation/vagrant/files/vagrant-1.9.3-thread-deadlock.patch
32 +++ /dev/null
33 @@ -1,98 +0,0 @@
34 -From bfc2af4cf9c5e9280f0e7d74de226b7af7c18a2a Mon Sep 17 00:00:00 2001
35 -From: Chris Roberts <code@××××××××××××.org>
36 -Date: Mon, 27 Mar 2017 12:55:15 -0700
37 -Subject: [PATCH] Always provide timeout on thread join to prevent deadlock
38 - errors
39 -
40 ----
41 - lib/vagrant/batch_action.rb | 6 ++++--
42 - lib/vagrant/environment.rb | 2 +-
43 - lib/vagrant/shared_helpers.rb | 6 ++++++
44 - lib/vagrant/ui.rb | 6 +++---
45 - 4 files changed, 14 insertions(+), 6 deletions(-)
46 -
47 -diff --git a/lib/vagrant/batch_action.rb b/lib/vagrant/batch_action.rb
48 -index 9b6900f..d27e87d 100644
49 ---- a/lib/vagrant/batch_action.rb
50 -+++ b/lib/vagrant/batch_action.rb
51 -@@ -123,7 +123,9 @@ def run
52 - # Set some attributes on the thread for later
53 - thread[:machine] = machine
54 -
55 -- thread.join if !par
56 -+ if !par
57 -+ thread.join(THREAD_MAX_JOIN_TIMEOUT) while thread.alive?
58 -+ end
59 - threads << thread
60 - end
61 -
62 -@@ -131,7 +133,7 @@ def run
63 -
64 - threads.each do |thread|
65 - # Wait for the thread to complete
66 -- thread.join
67 -+ thread.join(THREAD_MAX_JOIN_TIMEOUT) while thread.alive?
68 -
69 - # If the thread had an error, then store the error to show later
70 - if thread[:error]
71 -diff --git a/lib/vagrant/environment.rb b/lib/vagrant/environment.rb
72 -index 8fad272..125070f 100644
73 ---- a/lib/vagrant/environment.rb
74 -+++ b/lib/vagrant/environment.rb
75 -@@ -295,7 +295,7 @@ def batch(parallel=true)
76 - #
77 - # @return [Hash]
78 - def checkpoint
79 -- @checkpoint_thr.join
80 -+ @checkpoint_thr.join(THREAD_MAX_JOIN_TIMEOUT)
81 - return @checkpoint_thr[:result]
82 - end
83 -
84 -diff --git a/lib/vagrant/shared_helpers.rb b/lib/vagrant/shared_helpers.rb
85 -index c5d6ea6..5522272 100644
86 ---- a/lib/vagrant/shared_helpers.rb
87 -+++ b/lib/vagrant/shared_helpers.rb
88 -@@ -12,6 +12,12 @@ module Vagrant
89 - # @return [String]
90 - DEFAULT_SERVER_URL = "https://atlas.hashicorp.com"
91 -
92 -+ # Max number of seconds to wait for joining an active thread.
93 -+ #
94 -+ # @return [Integer]
95 -+ # @note This is not the maxium time for a thread to complete.
96 -+ THREAD_MAX_JOIN_TIMEOUT = 60
97 -+
98 - # This holds a global lock for the duration of the block. This should
99 - # be invoked around anything that is modifying process state (such as
100 - # environmental variables).
101 -diff --git a/lib/vagrant/ui.rb b/lib/vagrant/ui.rb
102 -index 8092493..2a52c90 100644
103 ---- a/lib/vagrant/ui.rb
104 -+++ b/lib/vagrant/ui.rb
105 -@@ -53,7 +53,7 @@ def initialize_copy(original)
106 - # We're being called in a trap-context. Wrap in a thread.
107 - Thread.new do
108 - @logger.info { "#{method}: #{message}" }
109 -- end.join
110 -+ end.join(THREAD_MAX_JOIN_TIMEOUT)
111 - end
112 - end
113 - end
114 -@@ -128,7 +128,7 @@ def machine(type, *data)
115 - @lock.synchronize do
116 - safe_puts("#{Time.now.utc.to_i},#{target},#{type},#{data.join(",")}")
117 - end
118 -- end.join
119 -+ end.join(THREAD_MAX_JOIN_TIMEOUT)
120 - end
121 - end
122 -
123 -@@ -244,7 +244,7 @@ def say(type, message, **opts)
124 - safe_puts(format_message(type, message, **opts),
125 - io: channel, printer: printer)
126 - end
127 -- end.join
128 -+ end.join(THREAD_MAX_JOIN_TIMEOUT)
129 - end
130 -
131 - def format_message(type, message, **opts)
132
133 diff --git a/app-emulation/vagrant/files/vagrant-1.9.3 b/app-emulation/vagrant/files/vagrant-1.9.6
134 similarity index 98%
135 rename from app-emulation/vagrant/files/vagrant-1.9.3
136 rename to app-emulation/vagrant/files/vagrant-1.9.6
137 index a8018a64446..ef264888f3f 100644
138 --- a/app-emulation/vagrant/files/vagrant-1.9.3
139 +++ b/app-emulation/vagrant/files/vagrant-1.9.6
140 @@ -4,7 +4,7 @@
141 # Vagrant installation directory. This sets up proper environmental variables
142 # so that everything loads and compiles to proper directories.
143
144 -VAGRANT_DIR="$( ruby -e 'print Gem::default_path[-1] + "/gems/vagrant-1.9.3"' )"
145 +VAGRANT_DIR="$( ruby -e 'print Gem::default_path[-1] + "/gems/vagrant-1.9.6"' )"
146
147 # Export GEM_HOME based on VAGRANT_HOME
148 #
149
150 diff --git a/app-emulation/vagrant/vagrant-1.9.3.ebuild b/app-emulation/vagrant/vagrant-1.9.6.ebuild
151 similarity index 88%
152 rename from app-emulation/vagrant/vagrant-1.9.3.ebuild
153 rename to app-emulation/vagrant/vagrant-1.9.6.ebuild
154 index b0e16387ba3..b8c4920bc85 100644
155 --- a/app-emulation/vagrant/vagrant-1.9.3.ebuild
156 +++ b/app-emulation/vagrant/vagrant-1.9.6.ebuild
157 @@ -2,7 +2,7 @@
158 # Distributed under the terms of the GNU General Public License v2
159
160 EAPI="5"
161 -USE_RUBY="ruby21 ruby22 ruby23"
162 +USE_RUBY="ruby22 ruby23"
163
164 RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
165 RUBY_FAKEGEM_GEMSPEC="vagrant.gemspec"
166 @@ -26,17 +26,17 @@ RDEPEND="${RDEPEND}
167 virtualbox? ( || ( app-emulation/virtualbox app-emulation/virtualbox-bin ) )"
168
169 ruby_add_rdepend "
170 - >=dev-ruby/childprocess-0.5.0
171 + >=dev-ruby/childprocess-0.6.0
172 >=dev-ruby/erubis-2.7.0
173 >=dev-ruby/i18n-0.6.0:* <dev-ruby/i18n-0.8.0:*
174 >=dev-ruby/listen-3.1.5
175 >=dev-ruby/hashicorp-checkpoint-0.1.1
176 >=dev-ruby/log4r-1.1.9 <dev-ruby/log4r-1.1.11
177 - >=dev-ruby/net-ssh-3.0.1:*
178 + >=dev-ruby/net-ssh-4.1.0:*
179 >=dev-ruby/net-sftp-2.1
180 - >=dev-ruby/net-scp-1.1.0
181 + >=dev-ruby/net-scp-1.2.0
182 || ( >=dev-ruby/rest-client-1.6.0:0 dev-ruby/rest-client:2 )
183 - >=dev-ruby/nokogiri-1.6.7.1
184 + >=dev-ruby/nokogiri-1.7.1
185 >=dev-ruby/mime-types-2.6.2:* <dev-ruby/mime-types-3:*
186 "
187
188 @@ -52,7 +52,6 @@ all_ruby_prepare() {
189 # loosen dependencies
190 sed -e '/hashicorp-checkpoint\|listen\|net-ssh\|net-scp\|rake\|childprocess/s/~>/>=/' \
191 -e '/ruby_dep/s/<=/>=/' \
192 - -e '/nokogiri/s/=/>=/' \
193 -i ${PN}.gemspec || die
194
195 # remove windows-specific gems
196 @@ -68,9 +67,6 @@ all_ruby_prepare() {
197
198 # fix rvm issue (bug #474476)
199 epatch "${FILESDIR}"/${PN}-1.8.1-rvm.patch
200 -
201 - # fix thread deadlock (bug #616426)
202 - epatch "${FILESDIR}"/${P}-thread-deadlock.patch
203 }
204
205 all_ruby_install() {