rake-compiler-dock 1.3.1 → 1.4.0.rc1
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 +4 -4
- data/.github/workflows/ci.yml +14 -1
- data/CONTRIBUTING.md +17 -0
- data/Dockerfile.jruby +1 -1
- data/Dockerfile.mri.erb +25 -18
- data/History.md +7 -0
- data/README.md +1 -1
- data/lib/rake_compiler_dock/version.rb +2 -2
- metadata +5 -5
- /data/build/patches2/{rake-compiler-1.2.2 → rake-compiler-1.2.5}/0004-Enable-build-of-static-libruby.patch +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b51824ca3f8d8154a7ff22e08ed20953bb77731242d145af462ae198f3900f85
|
4
|
+
data.tar.gz: 1ec5c570ea206a0320a3b6aa9254cc70a53f7e59e24a94b9753bce96a088f8f5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7416974cb6181d737adda2e60ce217bbe66b349f0f195498c7a37374de48b43cd83881f1457378d49854a6e23bec9e84ac5f604afe0606db8bd4ea808f505ba4
|
7
|
+
data.tar.gz: b92e1eb19c5c19672c5ec8e5c77fac6d09f4c1e65fbc1895cbf402130fa4fc2162b510d4cbc118a55d0bade597a935b294f921ba6e097ecf3a7ebff23c54b875
|
data/.github/workflows/ci.yml
CHANGED
@@ -8,7 +8,7 @@ on:
|
|
8
8
|
- cron: "0 5 * * 3" # At 05:00 on Wednesday # https://crontab.guru/#0_5_*_*_3
|
9
9
|
push:
|
10
10
|
branches:
|
11
|
-
-
|
11
|
+
- main
|
12
12
|
tags:
|
13
13
|
- "*.*.*"
|
14
14
|
pull_request:
|
@@ -120,6 +120,7 @@ jobs:
|
|
120
120
|
os:
|
121
121
|
- ubuntu
|
122
122
|
ruby:
|
123
|
+
- "head" # 3.3
|
123
124
|
- "3.2"
|
124
125
|
- "3.1"
|
125
126
|
- "3.0"
|
@@ -156,6 +157,7 @@ jobs:
|
|
156
157
|
- macos
|
157
158
|
- ubuntu
|
158
159
|
ruby:
|
160
|
+
- "head" # 3.3
|
159
161
|
- "3.2"
|
160
162
|
- "3.1"
|
161
163
|
- "3.0"
|
@@ -179,11 +181,16 @@ jobs:
|
|
179
181
|
- os: windows
|
180
182
|
ruby: "3.2"
|
181
183
|
platform: x64-mingw-ucrt
|
184
|
+
- os: windows
|
185
|
+
ruby: "head"
|
186
|
+
platform: x64-mingw-ucrt
|
182
187
|
exclude:
|
183
188
|
- os: windows
|
184
189
|
ruby: "3.1"
|
185
190
|
- os: windows
|
186
191
|
ruby: "3.2"
|
192
|
+
- os: windows
|
193
|
+
ruby: "head"
|
187
194
|
|
188
195
|
runs-on: ${{ matrix.os }}-latest
|
189
196
|
steps:
|
@@ -213,6 +220,7 @@ jobs:
|
|
213
220
|
os:
|
214
221
|
- windows
|
215
222
|
ruby:
|
223
|
+
- "head" # 3.3
|
216
224
|
- "3.2"
|
217
225
|
- "3.1"
|
218
226
|
- "3.0"
|
@@ -229,11 +237,16 @@ jobs:
|
|
229
237
|
- os: windows
|
230
238
|
ruby: "3.2"
|
231
239
|
platform: x64-mingw-ucrt
|
240
|
+
- os: windows
|
241
|
+
ruby: "head"
|
242
|
+
platform: x64-mingw-ucrt
|
232
243
|
exclude:
|
233
244
|
- os: windows
|
234
245
|
ruby: "3.1"
|
235
246
|
- os: windows
|
236
247
|
ruby: "3.2"
|
248
|
+
- os: windows
|
249
|
+
ruby: "head"
|
237
250
|
|
238
251
|
runs-on: ${{ matrix.os }}-latest
|
239
252
|
steps:
|
data/CONTRIBUTING.md
CHANGED
@@ -2,6 +2,23 @@
|
|
2
2
|
|
3
3
|
This document is intended for the rake-compiler-dock contributors.
|
4
4
|
|
5
|
+
## Cutting a release
|
6
|
+
|
7
|
+
- prep
|
8
|
+
- [x] make sure CI is green!
|
9
|
+
- [x] update `History.md` and `lib/rake_compiler_dock/version.rb`
|
10
|
+
- build
|
11
|
+
- [-] run the steps below to generate the images locally
|
12
|
+
- [x] run `gem build rake-compiler-dock`
|
13
|
+
- [ ] create a git tag
|
14
|
+
- push
|
15
|
+
- [ ] run `git push && git push --tags`
|
16
|
+
- [ ] run `bundle exec rake release:images`
|
17
|
+
- [ ] run `gem push rake-compiler-dock*gem`
|
18
|
+
- announce
|
19
|
+
- [ ] create a release at https://github.com/rake-compiler/rake-compiler-dock/releases
|
20
|
+
|
21
|
+
|
5
22
|
## Building a versioned image
|
6
23
|
|
7
24
|
We want to preserve the cache if we can, so patch releases don't change _all_ the layers. There are a few ways to do this.
|
data/Dockerfile.jruby
CHANGED
@@ -39,7 +39,7 @@ RUN bash -c " \
|
|
39
39
|
rvm all do gem update --system --no-document && \
|
40
40
|
rvm all do gem update --no-document && \
|
41
41
|
rvm all do gem install bundler --no-document && \
|
42
|
-
rvm all do gem install --no-document rake-compiler:1.2.
|
42
|
+
rvm all do gem install --no-document rake-compiler:1.2.5 && \
|
43
43
|
find /usr/local/rvm -type d -print0 | sudo xargs -0 chmod g+sw \
|
44
44
|
"
|
45
45
|
|
data/Dockerfile.mri.erb
CHANGED
@@ -114,7 +114,7 @@ RUN /home/rvm/mk_osxcross.sh
|
|
114
114
|
##
|
115
115
|
USER rvm
|
116
116
|
|
117
|
-
RUN bash -c "rvm all do gem install --no-document rake-compiler:1.2.
|
117
|
+
RUN bash -c "rvm all do gem install --no-document rake-compiler:1.2.5"
|
118
118
|
|
119
119
|
# Install rake-compiler's cross rubies in global dir instead of /root
|
120
120
|
RUN sudo mkdir -p /usr/local/rake-compiler && \
|
@@ -125,39 +125,43 @@ RUN sudo mkdir -p /usr/local/rake-compiler && \
|
|
125
125
|
COPY build/patches2 /home/rvm/patches/
|
126
126
|
RUN bash -c " \
|
127
127
|
for v in ${RVM_RUBIES} ; do \
|
128
|
-
cd /usr/local/rvm/gems/ruby-\$v/gems/rake-compiler-1.2.
|
129
|
-
echo applying patches to ruby-\$v /home/rvm/patches/rake-compiler-1.2.
|
130
|
-
( git apply /home/rvm/patches/rake-compiler-1.2.
|
128
|
+
cd /usr/local/rvm/gems/ruby-\$v/gems/rake-compiler-1.2.5 && \
|
129
|
+
echo applying patches to ruby-\$v /home/rvm/patches/rake-compiler-1.2.5/*.patch && \
|
130
|
+
( git apply /home/rvm/patches/rake-compiler-1.2.5/*.patch || true ) \
|
131
131
|
done \
|
132
132
|
"
|
133
133
|
|
134
134
|
<%
|
135
|
+
#
|
136
|
+
# Build ruby versions prior to ruby2_keywords using ruby-2.5
|
137
|
+
# Build ruby versions with ruby2_keywords using ruby-3.x
|
138
|
+
#
|
139
|
+
# Note that parallel builds of ruby with make flag `-j` are often flaky, see
|
140
|
+
# https://bugs.ruby-lang.org/issues/18506
|
141
|
+
#
|
135
142
|
axrubies = if platform =~ /x64-mingw-ucrt/
|
136
143
|
[
|
137
144
|
# Rubyinstaller-3.1.0+ is platform x64-mingw-ucrt
|
138
|
-
["3.2.0:3.1.0", "3.1.3"
|
145
|
+
["3.3.0-preview3:3.2.0:3.1.0", "3.1.3"],
|
139
146
|
]
|
140
147
|
elsif platform =~ /x64-mingw32/
|
141
148
|
[
|
142
149
|
# Rubyinstaller prior to 3.1.0 is platform x64-mingw32
|
143
|
-
["2.6.0:2.5.0:2.4.0", "2.5.9"
|
144
|
-
["3.0.0:2.7.0", "3.1.3"
|
150
|
+
["2.6.0:2.5.0:2.4.0", "2.5.9"],
|
151
|
+
["3.0.0:2.7.0", "3.1.3"],
|
145
152
|
]
|
146
153
|
else
|
147
154
|
[
|
148
|
-
|
149
|
-
["
|
150
|
-
# Build xruby versions with ruby2_keywords in parallel using ruby-3.x
|
151
|
-
["3.2.0:3.1.0:3.0.0:2.7.0", "3.1.3", true],
|
155
|
+
["2.6.0:2.5.0:2.4.0", "2.5.9"],
|
156
|
+
["3.3.0-preview3:3.2.0:3.1.0:3.0.0:2.7.0", "3.1.3"],
|
152
157
|
]
|
153
158
|
end
|
154
159
|
|
155
|
-
axrubies.each do |xrubies, rvm
|
160
|
+
axrubies.each do |xrubies, rvm| %>
|
156
161
|
ENV XRUBIES <%= xrubies %>
|
157
162
|
|
158
163
|
<% strip = '-s' if platform !~ /darwin/ %>
|
159
|
-
# Build xruby versions
|
160
|
-
# Then cleanup all build artifacts
|
164
|
+
# Build xruby versions, then cleanup all build artifacts
|
161
165
|
RUN bash -c " \
|
162
166
|
rvm use <%= rvm %> && \
|
163
167
|
export CPPFLAGS='<%= "-D__USE_MINGW_ANSI_STDIO=1" if platform=~/x64-mingw-ucrt/ %>' && \
|
@@ -165,7 +169,7 @@ RUN bash -c " \
|
|
165
169
|
export LDFLAGS='-pipe <%= strip %>' && \
|
166
170
|
<%= "export LIBS='-l:libssp.a' &&" if platform =~ /mingw/ %> \
|
167
171
|
<%= "export CC=#{target}-clang &&" if platform =~ /darwin/ %> \
|
168
|
-
export MAKE='make V=1
|
172
|
+
export MAKE='make V=1' && \
|
169
173
|
rake-compiler cross-ruby VERSION=$XRUBIES HOST=<%= target %> && \
|
170
174
|
rm -rf ~/.rake-compiler/builds ~/.rake-compiler/sources && \
|
171
175
|
find /usr/local/rvm -type d -print0 | sudo xargs -0 chmod g+sw \
|
@@ -194,8 +198,11 @@ RUN find /usr/local/rake-compiler/ruby -name lib*-ruby*.dll.a | while read f ; d
|
|
194
198
|
RUN find /usr/local/rake-compiler/ruby -name rbconfig.rb | while read f ; do sed -i 's/-lcrypt//' $f ; done
|
195
199
|
|
196
200
|
<% if platform=~/darwin/ %>
|
197
|
-
# ruby-3.2 on darwin links with `-bundle_loader`,
|
198
|
-
|
201
|
+
# ruby-3.2+ on darwin links with `-bundle_loader`,
|
202
|
+
# - see https://github.com/rake-compiler/rake-compiler-dock/issues/87
|
203
|
+
# - note that we do this for "3.[2-9].0" to match rubies 3.2 and later
|
204
|
+
# - and we add a "*" on the end for "3.[2-9].0*" to match prereleases like "3.3.0+0"
|
205
|
+
RUN find /usr/local/rake-compiler/ruby/*/*/lib/ruby/3.[2-9].0* -name rbconfig.rb | \
|
199
206
|
while read f ; do sed -i 's/\["EXTDLDFLAGS"\] = "/&-Wl,-flat_namespace /' $f ; done
|
200
207
|
<% end %>
|
201
208
|
|
@@ -262,6 +269,6 @@ RUN bash -c " \
|
|
262
269
|
rvm use default \
|
263
270
|
"
|
264
271
|
|
265
|
-
ENV RUBY_CC_VERSION 3.2.0:3.1.0:3.0.0:2.7.0:2.6.0:2.5.0:2.4.0
|
272
|
+
ENV RUBY_CC_VERSION 3.3.0:3.2.0:3.1.0:3.0.0:2.7.0:2.6.0:2.5.0:2.4.0
|
266
273
|
|
267
274
|
CMD bash
|
data/History.md
CHANGED
data/README.md
CHANGED
@@ -221,7 +221,7 @@ For an example of rake tasks that support this style of invocation, visit https:
|
|
221
221
|
|
222
222
|
### Living on the edge: using weekly snapshots
|
223
223
|
|
224
|
-
OCI images snapshotted from `
|
224
|
+
OCI images snapshotted from `main` are published weekly to Github Container Registry with the string "snapshot" in place of the version number in the tag name, e.g.:
|
225
225
|
|
226
226
|
- `ghcr.io/rake-compiler/rake-compiler-dock-image:snapshot-mri-x86_64-linux`
|
227
227
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rake-compiler-dock
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0.rc1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Lars Kanis
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-11-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -88,7 +88,7 @@ files:
|
|
88
88
|
- build/parallel_docker_build.rb
|
89
89
|
- build/patches/ruby-2.5.9/no_sendfile.patch
|
90
90
|
- build/patches/ruby-3.1.3/no_sendfile.patch
|
91
|
-
- build/patches2/rake-compiler-1.2.
|
91
|
+
- build/patches2/rake-compiler-1.2.5/0004-Enable-build-of-static-libruby.patch
|
92
92
|
- build/rcd-env.sh
|
93
93
|
- build/runas
|
94
94
|
- build/sigfw.c
|
@@ -137,9 +137,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
137
137
|
version: '0'
|
138
138
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
139
139
|
requirements:
|
140
|
-
- - "
|
140
|
+
- - ">"
|
141
141
|
- !ruby/object:Gem::Version
|
142
|
-
version:
|
142
|
+
version: 1.3.1
|
143
143
|
requirements: []
|
144
144
|
rubygems_version: 3.4.19
|
145
145
|
signing_key:
|
File without changes
|