ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:92663] [Ruby trunk Misc#15851] stdlib extension gems - building/testing on Windows
       [not found] <redmine.issue-15851.20190515150659@ruby-lang.org>
@ 2019-05-15 15:06 ` Greg.mpls
  2019-07-29  7:04 ` [ruby-core:93969] [Ruby master " ko1
  1 sibling, 0 replies; 2+ messages in thread
From: Greg.mpls @ 2019-05-15 15:06 UTC (permalink / raw)
  To: ruby-core

Issue #15851 has been reported by MSP-Greg (Greg L).

----------------------------------------
Misc #15851: stdlib extension gems - building/testing on Windows
https://bugs.ruby-lang.org/issues/15851

* Author: MSP-Greg (Greg L)
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Along with maintaining ruby-loco, I've encouraged and helped a few popular extension gems with building/testing on Windows/Appveyor.

I decided that a PowerShell based system to compile, build the gem, followed by gem install & test was the best option.  It's on Appveyor as a 7z file, and three files in the gem/repo are needed to run it.

For example output, see https://ci.appveyor.com/project/puma/puma/builds/24337063

A few things I addressed with it:

1. Updates the MSYS2 build system, which can get rather outdated on Appveyor.

2. Handles loading the correct version of OpenSSL back to Ruby 2.0.

3. Installs packages in either the old MSYS build system or MSYS2.

4. Can install and use ragel.

5. Parses test results from Minitest, Rspec, & test-unit.

Since #1 is expensive, the system builds a standard pre-compiled gem file usable with all Ruby versions under test (test files are included in the gem).  It then installs the gem in each Ruby version, and runs the tests using a custom rake file.  Hence, one build job handles multiple Ruby versions.  This also may speed up Appveyor CI times.

The code is here:
https://github.com/MSP-Greg/av-gem-build-test

Since the Ruby organization has a number of extension gems/repos, script like this would make things much simpler for Windows CI.  I've build several extension gems with it, and I think it's stable.

Hence, might this be of interest?



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [ruby-core:93969] [Ruby master Misc#15851] stdlib extension gems - building/testing on Windows
       [not found] <redmine.issue-15851.20190515150659@ruby-lang.org>
  2019-05-15 15:06 ` [ruby-core:92663] [Ruby trunk Misc#15851] stdlib extension gems - building/testing on Windows Greg.mpls
@ 2019-07-29  7:04 ` ko1
  1 sibling, 0 replies; 2+ messages in thread
From: ko1 @ 2019-07-29  7:04 UTC (permalink / raw)
  To: ruby-core

Issue #15851 has been updated by ko1 (Koichi Sasada).


Greg, who should have a ball?

----------------------------------------
Misc #15851: stdlib extension gems - building/testing on Windows
https://bugs.ruby-lang.org/issues/15851#change-80160

* Author: MSP-Greg (Greg L)
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Along with maintaining ruby-loco, I've encouraged and helped a few popular extension gems with building/testing on Windows/Appveyor.

I decided that a PowerShell based system to compile, build the gem, followed by gem install & test was the best option.  It's on Appveyor as a 7z file, and three files in the gem/repo are needed to run it.

For example output, see https://ci.appveyor.com/project/puma/puma/builds/24337063

A few things I addressed with it:

1. Updates the MSYS2 build system, which can get rather outdated on Appveyor.

2. Handles loading the correct version of OpenSSL back to Ruby 2.0.

3. Installs packages in either the old MSYS build system or MSYS2.

4. Can install and use ragel.

5. Parses test results from Minitest, Rspec, & test-unit.

Since #1 is expensive, the system builds a standard pre-compiled gem file usable with all Ruby versions under test (test files are included in the gem).  It then installs the gem in each Ruby version, and runs the tests using a custom rake file.  Hence, one build job handles multiple Ruby versions.  This also may speed up Appveyor CI times.

The code is here:
https://github.com/MSP-Greg/av-gem-build-test

Since the Ruby organization has a number of extension gems/repos, script like this would make things much simpler for Windows CI.  I've build several extension gems with it, and I think it's stable.

Hence, might this be of interest?



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-07-29  7:05 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <redmine.issue-15851.20190515150659@ruby-lang.org>
2019-05-15 15:06 ` [ruby-core:92663] [Ruby trunk Misc#15851] stdlib extension gems - building/testing on Windows Greg.mpls
2019-07-29  7:04 ` [ruby-core:93969] [Ruby master " ko1

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).