rake-compiler-dock 1.3.1 → 1.4.0.rc2

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
  SHA256:
3
- metadata.gz: 0330e7e3a9c83585df7ce3f77b4abfef615a7b86fbd9bf0da5a7f9bdf562acd3
4
- data.tar.gz: c48c0b411ab4f3e6d52f475af134715976af211fbf5bd3379c5f4cadcc5af467
3
+ metadata.gz: 7ac069a9e5f009ece2893c2fca76739a63da1de07479c3c42cbccb5cf0d27634
4
+ data.tar.gz: c576854edab556b7e1a5f02cdc6ae089b098017e853aeab2b1a61cb1142d1321
5
5
  SHA512:
6
- metadata.gz: 31aa3a2b77ff3572270ee64dcad2c9a7606b26638103ef2b1879cafc5a9bf79aff43c1ea0a139020956b8256e16acd15388b068b3efe60acabe5d7ad1096e929
7
- data.tar.gz: 9a7ed2d9d49fab243c038ff094d4781f10608fed2c0a99745e31277c2946f659672f059d43da4a2cb48057b76ddd15b89978530d7435409c6fcc03e2add6a595
6
+ metadata.gz: 678aebb8076cee338bd86a453b080349f8d69f2aaf71a7de28a7882e148b52ffc598f5f9f8ea0047c02618cf714fbda4a6dfa5c2b8550fd970b1fe1d16508fb0
7
+ data.tar.gz: ca62298d67de4d9c50a1528c4d048517ab63d69a32d8b7e5029fdada8d21dc4ac12da336d6d2401589c048b0fbdc8fef64c2571db60dc5a34bed2dd3c351195b
@@ -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
- - master
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
+ - [ ] run `gem build rake-compiler-dock`
13
+ - [ ] create a git tag
14
+ - push
15
+ - [ ] run `bundle exec rake release:images`
16
+ - [ ] run `gem push pkg/rake-compiler-dock*gem`
17
+ - [ ] run `git push && git push --tags`
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.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
@@ -1,8 +1,8 @@
1
1
  <%
2
2
  image = case platform
3
- when /x86_64-linux/ then "quay.io/pypa/manylinux2014_x86_64"
4
- when /x86-linux/ then "quay.io/pypa/manylinux2014_i686"
5
- else "ubuntu:20.04"
3
+ when /x86_64-linux/ then "quay.io/pypa/manylinux2014_x86_64:latest@sha256:355ac32f868c200253f4af55d5b1a63a78593ef29ed9aaf0900b8b2f304ab772"
4
+ when /x86-linux/ then "quay.io/pypa/manylinux2014_i686:latest@sha256:39fb5356017e093825017cba9aea9d032c92f35a21a30d084a4dc4a0003ceaf9"
5
+ else "ubuntu:20.04@sha256:ed4a42283d9943135ed87d4ee34e542f7f5ad9ecf2f244870e23122f703f91c2"
6
6
  end
7
7
  manylinux = !!(image =~ /manylinux/)
8
8
  %>
@@ -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.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.2 && \
129
- echo applying patches to ruby-\$v /home/rvm/patches/rake-compiler-1.2.2/*.patch && \
130
- ( git apply /home/rvm/patches/rake-compiler-1.2.2/*.patch || true ) \
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", true],
145
+ ["3.3.0-rc1: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", false],
144
- ["3.0.0:2.7.0", "3.1.3", true],
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
- # Build xruby versions prior ruby2_keywords in parallel using ruby-2.5
149
- ["2.6.0:2.5.0:2.4.0", "2.5.9", false],
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-rc1: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, parallel| %>
160
+ axrubies.each do |xrubies, rvm| %>
156
161
  ENV XRUBIES <%= xrubies %>
157
162
 
158
163
  <% strip = '-s' if platform !~ /darwin/ %>
159
- # Build xruby versions in parallel
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 <%= "-j`nproc`" if parallel %>' && \
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`, see https://github.com/rake-compiler/rake-compiler-dock/issues/87
198
- RUN find /usr/local/rake-compiler/ruby/*/*/lib/ruby/3.2.0 -name rbconfig.rb | \
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
@@ -1,3 +1,16 @@
1
+ 1.4.0.rc2 / 2023-12-12
2
+ ---------------------
3
+
4
+ * Add Ruby 3.3.0-rc1 cross-compilation support. (@flavorjones)
5
+
6
+
7
+ 1.4.0.rc1 / 2023-11-26
8
+ ----------------------
9
+
10
+ * Add Ruby 3.3.0-preview3 cross-compilation support. #105 (@flavorjones)
11
+ * Update to rake-compiler 1.2.5. #108 (@flavorjones)
12
+
13
+
1
14
  1.3.1 / 2023-10-14
2
15
  ------------------
3
16
 
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 `master` are published weekly to Github Container Registry with the string "snapshot" in place of the version number in the tag name, e.g.:
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
 
@@ -1,4 +1,4 @@
1
1
  module RakeCompilerDock
2
- VERSION = "1.3.1"
3
- IMAGE_VERSION = "1.3.1"
2
+ VERSION = "1.4.0.rc2"
3
+ IMAGE_VERSION = "1.4.0.rc2"
4
4
  end
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.3.1
4
+ version: 1.4.0.rc2
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-10-15 00:00:00.000000000 Z
11
+ date: 2023-12-13 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.2/0004-Enable-build-of-static-libruby.patch
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: '0'
142
+ version: 1.3.1
143
143
  requirements: []
144
144
  rubygems_version: 3.4.19
145
145
  signing_key: