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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0330e7e3a9c83585df7ce3f77b4abfef615a7b86fbd9bf0da5a7f9bdf562acd3
4
- data.tar.gz: c48c0b411ab4f3e6d52f475af134715976af211fbf5bd3379c5f4cadcc5af467
3
+ metadata.gz: b51824ca3f8d8154a7ff22e08ed20953bb77731242d145af462ae198f3900f85
4
+ data.tar.gz: 1ec5c570ea206a0320a3b6aa9254cc70a53f7e59e24a94b9753bce96a088f8f5
5
5
  SHA512:
6
- metadata.gz: 31aa3a2b77ff3572270ee64dcad2c9a7606b26638103ef2b1879cafc5a9bf79aff43c1ea0a139020956b8256e16acd15388b068b3efe60acabe5d7ad1096e929
7
- data.tar.gz: 9a7ed2d9d49fab243c038ff094d4781f10608fed2c0a99745e31277c2946f659672f059d43da4a2cb48057b76ddd15b89978530d7435409c6fcc03e2add6a595
6
+ metadata.gz: 7416974cb6181d737adda2e60ce217bbe66b349f0f195498c7a37374de48b43cd83881f1457378d49854a6e23bec9e84ac5f604afe0606db8bd4ea808f505ba4
7
+ data.tar.gz: b92e1eb19c5c19672c5ec8e5c77fac6d09f4c1e65fbc1895cbf402130fa4fc2162b510d4cbc118a55d0bade597a935b294f921ba6e097ecf3a7ebff23c54b875
@@ -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
+ - [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.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.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-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", 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-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, 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,10 @@
1
+ 1.4.0.rc1 / 2023-11-26
2
+ -----------------
3
+
4
+ * Add Ruby 3.3.0-preview3 cross-compilation support. #105 (@flavorjones)
5
+ * Update to rake-compiler 1.2.5. #108 (@flavorjones)
6
+
7
+
1
8
  1.3.1 / 2023-10-14
2
9
  ------------------
3
10
 
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.rc1"
3
+ IMAGE_VERSION = "1.4.0.rc1"
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.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-10-15 00:00:00.000000000 Z
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.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: