mirror of
https://github.com/ruby/setup-ruby.git
synced 2026-09-13 14:34:21 +02:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
fb404b9557 | ||
|
|
d8d83c3960 | ||
|
|
e5ac7b085f | ||
|
|
cad744e24a | ||
|
|
ba79f3f74f | ||
|
|
e9454362e9 | ||
|
|
354a1ad156 | ||
|
|
7886c66535 | ||
|
|
1a615958ad | ||
|
|
922ebc4c52 | ||
|
|
6c79f721fa | ||
|
|
e17c5ea7eb | ||
|
|
f0a4d6bddd | ||
|
|
bbda85882f | ||
|
|
30755d8bf4 | ||
|
|
28233a011b | ||
|
|
277ba2a127 | ||
|
|
04c2e2b8e8 | ||
|
|
88a8155095 | ||
|
|
3ad45c51bf | ||
|
|
32110d4e31 | ||
|
|
28d088d34a | ||
|
|
f2f42b7848 | ||
|
|
5547c873c2 | ||
|
|
d781c1b4ed | ||
|
|
8711a86ab6 | ||
|
|
ef45abe478 | ||
|
|
8388f20e6a | ||
|
|
2654679fe7 | ||
|
|
1287d2b408 | ||
|
|
84b14e9e47 | ||
|
|
28c4deda89 | ||
|
|
fbaef13682 | ||
|
|
f72249c5c9 | ||
|
|
87b48937c9 | ||
|
|
fd2daeae79 | ||
|
|
1d542747a7 | ||
|
|
7a6302104f | ||
|
|
8e51ba9a0a | ||
|
|
868b3f0884 | ||
|
|
4a9ddd6f33 | ||
|
|
bfefad842b | ||
|
|
540484a3c0 | ||
|
|
401c19e14f | ||
|
|
2a18b06812 | ||
|
|
2e3487c00e | ||
|
|
6825c765eb | ||
|
|
9a9fe58c47 | ||
|
|
a2bbe5b1b2 | ||
|
|
46ca53beb3 | ||
|
|
217c988b8c | ||
|
|
c6d4d2ab97 | ||
|
|
8c27ea3449 | ||
|
|
7d3497fd78 | ||
|
|
98aefb3c83 | ||
|
|
7bae1d00b5 | ||
|
|
4d521eadc8 | ||
|
|
1d9686e3ef | ||
|
|
bea2fb915c | ||
|
|
f269373437 | ||
|
|
784fcda67f | ||
|
|
f6e05710ec | ||
|
|
207a39969b | ||
|
|
086ffb1a20 | ||
|
|
27ceac8081 | ||
|
|
aac0c64812 | ||
|
|
727fd4feab | ||
|
|
79c01b8847 | ||
|
|
c04af2bb72 | ||
|
|
17f5c914a0 | ||
|
|
5496baa6db | ||
|
|
0ec4904dc7 | ||
|
|
f321cf5a4d | ||
|
|
6af8267b44 | ||
|
|
a6b46b8a08 | ||
|
|
52753b7da8 | ||
|
|
a6e6f86333 | ||
|
|
bc2ba926aa | ||
|
|
371544706a | ||
|
|
50ba3386b0 | ||
|
|
161cd54b69 | ||
|
|
2a9a743e19 | ||
|
|
3a77c29278 | ||
|
|
382d786c8a | ||
|
|
97e35c5302 | ||
|
|
1d0e911f61 | ||
|
|
c48bc1e88d | ||
|
|
713e0f1ab5 | ||
|
|
af43264f2b | ||
|
|
3251c5c21b | ||
|
|
21a479f2d7 | ||
|
|
3783f195e2 | ||
|
|
ff740bc00a | ||
|
|
78c01b705f | ||
|
|
d5fb7a202f | ||
|
|
0cde4689ba | ||
|
|
a56d16ef33 | ||
|
|
12dfa2bb47 | ||
|
|
68b705993a | ||
|
|
d046db60e3 | ||
|
|
d4138ebc47 | ||
|
|
049eae0450 | ||
|
|
ff22bbb25f |
@@ -1,17 +1,24 @@
|
||||
name: Update the v1 branch when a release is published
|
||||
name: Create a Release
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
workflow_dispatch:
|
||||
permissions:
|
||||
contents: read
|
||||
contents: write # for creating release
|
||||
|
||||
jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: write # for git push
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
GH_REPO: ${{ github.repository }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- uses: ./
|
||||
with:
|
||||
ruby-version: '3.3'
|
||||
- run: ruby release.rb
|
||||
# The same as the update-v1-branch.yml workflow.
|
||||
# That workflow is not triggered by the release created above because of
|
||||
# https://docs.github.com/en/actions/security-guides/automatic-token-authentication#using-the-github_token-in-a-workflow
|
||||
- run: git push origin HEAD:v1
|
||||
|
||||
+76
-21
@@ -17,9 +17,9 @@ jobs:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ ubuntu-20.04, ubuntu-22.04, ubuntu-24.04, macos-11, macos-12, macos-13, macos-14, macos-arm-oss, windows-2019, windows-2022 ]
|
||||
os: [ ubuntu-20.04, ubuntu-22.04, ubuntu-24.04, ubuntu-22.04-arm, ubuntu-24.04-arm, macos-13, macos-14, macos-15, windows-2019, windows-2022, windows-2025 ]
|
||||
ruby: [
|
||||
'1.9', '2.0', '2.1', '2.2', '2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3', ruby-head,
|
||||
'1.9', '2.0', '2.1', '2.2', '2.3', '2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', ruby-head,
|
||||
jruby, jruby-head,
|
||||
truffleruby, truffleruby-head,
|
||||
truffleruby+graalvm, truffleruby+graalvm-head
|
||||
@@ -30,12 +30,17 @@ jobs:
|
||||
- { os: windows-2022, ruby: mingw }
|
||||
- { os: windows-2022, ruby: mswin }
|
||||
- { os: windows-2022, ruby: ucrt }
|
||||
- { os: windows-2025, ruby: mingw }
|
||||
- { os: windows-2025, ruby: mswin }
|
||||
- { os: windows-2025, ruby: ucrt }
|
||||
- { os: ubuntu-24.04, ruby: asan }
|
||||
- { os: ubuntu-24.04, ruby: 3.4-asan }
|
||||
exclude:
|
||||
# https://github.com/ruby/setup-ruby/issues/496
|
||||
- { os: ubuntu-22.04, ruby: '2.2' }
|
||||
- { os: ubuntu-24.04, ruby: '1.9' }
|
||||
- { os: ubuntu-24.04, ruby: '2.2' }
|
||||
# These old Rubies fail to compile on macos-arm-oss (macOS 13, arm64), which is used for ruby/ruby-builder
|
||||
# These old Rubies fail to compile on macOS arm64
|
||||
- { os: macos-14, ruby: '1.9' }
|
||||
- { os: macos-14, ruby: '2.0' }
|
||||
- { os: macos-14, ruby: '2.1' }
|
||||
@@ -43,26 +48,41 @@ jobs:
|
||||
- { os: macos-14, ruby: '2.3' }
|
||||
- { os: macos-14, ruby: '2.4' }
|
||||
- { os: macos-14, ruby: '2.5' }
|
||||
- { os: macos-arm-oss, ruby: '1.9' }
|
||||
- { os: macos-arm-oss, ruby: '2.0' }
|
||||
- { os: macos-arm-oss, ruby: '2.1' }
|
||||
- { os: macos-arm-oss, ruby: '2.2' }
|
||||
- { os: macos-arm-oss, ruby: '2.3' }
|
||||
- { os: macos-arm-oss, ruby: '2.4' }
|
||||
- { os: macos-arm-oss, ruby: '2.5' }
|
||||
# Windows
|
||||
- { os: macos-15, ruby: '1.9' }
|
||||
- { os: macos-15, ruby: '2.0' }
|
||||
- { os: macos-15, ruby: '2.1' }
|
||||
- { os: macos-15, ruby: '2.2' }
|
||||
- { os: macos-15, ruby: '2.3' }
|
||||
- { os: macos-15, ruby: '2.4' }
|
||||
- { os: macos-15, ruby: '2.5' }
|
||||
# These old Rubies fail to compile or segfault on Linux arm64
|
||||
- { os: ubuntu-22.04-arm, ruby: '1.9' }
|
||||
- { os: ubuntu-22.04-arm, ruby: '2.0' }
|
||||
- { os: ubuntu-22.04-arm, ruby: '2.1' }
|
||||
- { os: ubuntu-22.04-arm, ruby: '2.2' }
|
||||
- { os: ubuntu-24.04-arm, ruby: '1.9' }
|
||||
- { os: ubuntu-24.04-arm, ruby: '2.0' }
|
||||
- { os: ubuntu-24.04-arm, ruby: '2.1' }
|
||||
- { os: ubuntu-24.04-arm, ruby: '2.2' }
|
||||
# Windows (note: previews are not available on Windows)
|
||||
- { os: windows-2019, ruby: '1.9' }
|
||||
- { os: windows-2019, ruby: debug }
|
||||
- { os: windows-2019, ruby: truffleruby }
|
||||
- { os: windows-2019, ruby: truffleruby-head }
|
||||
- { os: windows-2019, ruby: truffleruby+graalvm }
|
||||
- { os: windows-2019, ruby: truffleruby+graalvm-head }
|
||||
- { os: windows-2022, ruby: '1.9' }
|
||||
- { os: windows-2025, ruby: '1.9' }
|
||||
- { os: windows-2019, ruby: debug }
|
||||
- { os: windows-2022, ruby: debug }
|
||||
- { os: windows-2025, ruby: debug }
|
||||
- { os: windows-2019, ruby: truffleruby }
|
||||
- { os: windows-2022, ruby: truffleruby }
|
||||
- { os: windows-2025, ruby: truffleruby }
|
||||
- { os: windows-2019, ruby: truffleruby-head }
|
||||
- { os: windows-2022, ruby: truffleruby-head }
|
||||
- { os: windows-2025, ruby: truffleruby-head }
|
||||
- { os: windows-2019, ruby: truffleruby+graalvm }
|
||||
- { os: windows-2022, ruby: truffleruby+graalvm }
|
||||
- { os: windows-2025, ruby: truffleruby+graalvm }
|
||||
- { os: windows-2019, ruby: truffleruby+graalvm-head }
|
||||
- { os: windows-2022, ruby: truffleruby+graalvm-head }
|
||||
- { os: windows-2025, ruby: truffleruby+graalvm-head }
|
||||
|
||||
name: ${{ matrix.os }} ${{ matrix.ruby }}
|
||||
runs-on: ${{ matrix.os }}
|
||||
@@ -140,9 +160,14 @@ jobs:
|
||||
env:
|
||||
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/gem_from_github.gemfile
|
||||
|
||||
- name: which ruby, bundle
|
||||
- name: which ruby
|
||||
shell: bash
|
||||
run: which -a ruby bundle
|
||||
run: which -a ruby
|
||||
- name: which bundle
|
||||
shell: bash
|
||||
run: which -a bundle
|
||||
# https://github.com/ruby/setup-ruby/issues/658
|
||||
if: "matrix.ruby != 'mingw' && matrix.ruby != 'mswin' && matrix.ruby != 'ucrt'"
|
||||
- name: which rake
|
||||
run: which -a rake
|
||||
if: "!startsWith(matrix.os, 'windows')"
|
||||
@@ -161,9 +186,37 @@ jobs:
|
||||
shell: bash
|
||||
run: echo ~ && bundle install
|
||||
- name: Windows JRuby
|
||||
if: startsWith(matrix.os, 'windows') && startsWith(matrix.ruby, 'jruby')
|
||||
# Should be startsWith(matrix.ruby, 'jruby') but broken on jruby-head: https://github.com/jruby/jruby/issues/8623
|
||||
if: startsWith(matrix.os, 'windows') && matrix.ruby == 'jruby'
|
||||
run: gem install sassc
|
||||
|
||||
testDotRubyVersion:
|
||||
name: "Test .ruby-version"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: echo "ruby-3.4.0" > .ruby-version
|
||||
- uses: ./
|
||||
- run: ruby -v | grep -F "ruby 3.4.0"
|
||||
|
||||
testToolVersions:
|
||||
name: "Test .tool-versions"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: echo -e "nodejs 16.0.0\nruby 3.4.0" > .tool-versions
|
||||
- uses: ./
|
||||
- run: ruby -v | grep -F "ruby 3.4.0"
|
||||
|
||||
testMise:
|
||||
name: "Test mise.toml"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- run: echo -e "[tools]\nnode = '18'\nruby = '3.4.0'" > mise.toml
|
||||
- uses: ./
|
||||
- run: ruby -v | grep -F "ruby 3.4.0"
|
||||
|
||||
testNoGemfile:
|
||||
name: "Test with no Gemfile"
|
||||
runs-on: ubuntu-latest
|
||||
@@ -182,8 +235,8 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- { ruby: '3.2', expected_rubygems_version: '3.5.3' }
|
||||
- { ruby: '3.0', expected_rubygems_version: '3.5.3' }
|
||||
- { ruby: '3.2', expected_rubygems_version: '3.6.1' }
|
||||
- { ruby: '3.0', expected_rubygems_version: '3.5.23' }
|
||||
- { ruby: '2.7', expected_rubygems_version: '3.4.22' }
|
||||
- { ruby: '2.6', expected_rubygems_version: '3.4.22' }
|
||||
- { ruby: '2.5', expected_rubygems_version: '3.3.27' }
|
||||
@@ -328,6 +381,8 @@ jobs:
|
||||
ruby-version: '2.6'
|
||||
bundler-cache: true
|
||||
- run: bundle exec rails --version
|
||||
env:
|
||||
RUBYOPT: '-rlogger' # Rails 6 is missing a require 'logger' in active_support/logger_thread_safe_level.rb
|
||||
|
||||
testTruffleRubyNokogiri:
|
||||
name: "Test installing a Gemfile with nokogiri on TruffleRuby"
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
name: Update the v1 branch when a release is published manually
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
permissions:
|
||||
contents: write # for git push
|
||||
|
||||
jobs:
|
||||
update_branch:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- run: git push origin HEAD:v1
|
||||
@@ -24,3 +24,7 @@ $ cp pre-commit .git/hooks/pre-commit
|
||||
|
||||
This is entirely automated now since [this issue](https://github.com/ruby/setup-ruby/issues/254).
|
||||
If you do not see a new version more than 24 hours after it was released feel free to file an issue.
|
||||
|
||||
## Release
|
||||
|
||||
Maintainers can create a release automatically by running [this workflow](https://github.com/ruby/setup-ruby/actions/workflows/release.yml).
|
||||
|
||||
@@ -15,12 +15,19 @@ This action currently supports these versions of MRI, JRuby and TruffleRuby:
|
||||
|
||||
| Interpreter | Versions |
|
||||
| ----------- | -------- |
|
||||
| `ruby` | 1.9.3, 2.0.0, 2.1.9, 2.2, all versions from 2.3.0 until 3.4.0-preview1, head, debug, mingw, mswin, ucrt |
|
||||
| `jruby` | 9.1.17.0 - 9.4.7.0, head |
|
||||
| `truffleruby` | 19.3.0 - 24.0.1, head |
|
||||
| `truffleruby+graalvm` | 21.2.0 - 24.0.1, head |
|
||||
| `ruby` | 1.9.3, 2.0.0, 2.1.9, 2.2, all versions from 2.3.0 until 3.4.3, head, debug, mingw, mswin, ucrt |
|
||||
| `jruby` | 9.1.17.0 - 9.4.12.0, head |
|
||||
| `truffleruby` | 19.3.0 - 24.2.0, head |
|
||||
| `truffleruby+graalvm` | 21.2.0 - 24.2.0, head |
|
||||
|
||||
`ruby-debug` is the same as `ruby-head` but with assertions enabled (`-DRUBY_DEBUG=1`).
|
||||
`ruby-debug` is the same as `ruby-head` but with assertions enabled (`-DRUBY_DEBUG=1`).
|
||||
|
||||
`ruby-asan` is the same as `ruby-head` but with AddressSanitizer (ASan) enabled, helpful for finding memory issues in native extensions.
|
||||
Native extensions are automatically compiled with AddressSanitizer when using `ruby-asan`.
|
||||
`ruby-asan` is currently only available on `ubuntu-24.04`.
|
||||
|
||||
`ruby-3.4-asan` is similar to `ruby-asan` but built from the latest stable 3.4 release tag.
|
||||
Like `ruby-asan`, it's currently only available on `ubuntu-24.04`.
|
||||
|
||||
Regarding Windows ruby master builds, `mingw` is a MSYS2/MinGW build, `head` & `ucrt` are MSYS2/UCRT64
|
||||
builds, and `mswin` is a MSVC/VS 2022 build.
|
||||
@@ -42,8 +49,8 @@ The action works on these [GitHub-hosted runners](https://docs.github.com/en/act
|
||||
|
||||
| Operating System | Supported |
|
||||
| ---------------- | --------- |
|
||||
| Ubuntu | `ubuntu-20.04`, `ubuntu-22.04`, `ubuntu-24.04` |
|
||||
| macOS | `macos-11`, `macos-12`, `macos-13`, `macos-14` |
|
||||
| Ubuntu | `ubuntu-20.04`, `ubuntu-22.04`, `ubuntu-24.04`, `ubuntu-22.04-arm`, `ubuntu-24.04-arm` |
|
||||
| macOS | `macos-13` and newer versions |
|
||||
| Windows | `windows-2019`, `windows-2022` |
|
||||
|
||||
The prebuilt releases are generated by [ruby-builder](https://github.com/ruby/ruby-builder)
|
||||
@@ -51,10 +58,10 @@ and on Windows by [RubyInstaller2](https://github.com/oneclick/rubyinstaller2).
|
||||
The `mingw`, `ucrt` and `mswin` builds are generated by [ruby-loco](https://github.com/MSP-Greg/ruby-loco).
|
||||
`ruby-head` is generated by [ruby-dev-builder](https://github.com/ruby/ruby-dev-builder),
|
||||
`jruby-head` is generated by [jruby-dev-builder](https://github.com/ruby/jruby-dev-builder),
|
||||
`truffleruby-head` is generated by [truffleruby-dev-builder](https://github.com/ruby/truffleruby-dev-builder)
|
||||
and `truffleruby+graalvm` is generated by [graalvm-ce-dev-builds](https://github.com/graalvm/graalvm-ce-dev-builds).
|
||||
The full list of available Ruby versions can be seen in [ruby-builder-versions.json](ruby-builder-versions.json)
|
||||
for Ubuntu and macOS and in [windows-versions.json](windows-versions.json) for Windows.
|
||||
`truffleruby-head` and `truffleruby+graalvm-head` are generated by [truffleruby-dev-builder](https://github.com/ruby/truffleruby-dev-builder).
|
||||
The full list of available Ruby versions can be seen in [ruby-builder-versions.json](ruby-builder-versions.json) for Ubuntu and macOS
|
||||
(although some combinations are not available, see [the full list](https://github.com/ruby/ruby-builder/releases/tag/toolcache))
|
||||
and in [windows-versions.json](windows-versions.json) for Windows.
|
||||
|
||||
## Usage
|
||||
|
||||
@@ -70,7 +77,7 @@ jobs:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: '3.3' # Not needed with a .ruby-version file
|
||||
ruby-version: '3.3' # Not needed with a .ruby-version, .tool-versions or mise.toml
|
||||
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
|
||||
- run: bundle exec rake
|
||||
```
|
||||
@@ -135,11 +142,12 @@ and the [condition and expression syntax](https://help.github.com/en/actions/ref
|
||||
* engine only like `ruby` and `truffleruby`, uses the latest stable release of that implementation
|
||||
* `.ruby-version` reads from the project's `.ruby-version` file
|
||||
* `.tool-versions` reads from the project's `.tool-versions` file
|
||||
* If the `ruby-version` input is not specified, `.ruby-version` is tried first, followed by `.tool-versions`
|
||||
* `mise.toml` reads from the project's `mise.toml` file
|
||||
* If the `ruby-version` input is not specified, `.ruby-version` is tried first, followed by `.tool-versions`, followed by `mise.toml`
|
||||
|
||||
### Working Directory
|
||||
|
||||
The `working-directory` input can be set to resolve `.ruby-version`, `.tool-versions` and `Gemfile.lock`
|
||||
The `working-directory` input can be set to resolve `.ruby-version`, `.tool-versions`, `mise.toml` and `Gemfile.lock`
|
||||
if they are not at the root of the repository, see [action.yml](action.yml) for details.
|
||||
|
||||
### RubyGems
|
||||
@@ -233,6 +241,7 @@ It is recommended to first get your build working on Ubuntu and macOS before try
|
||||
* For Ruby < 2.4, the DevKit MSYS tools are installed and prepended to the `Path`.
|
||||
* Use JRuby 9.2.20+ on Windows (older versions have [bugs](https://github.com/ruby/setup-ruby/issues/18#issuecomment-889072695)).
|
||||
* JRuby on Windows has multiple issues ([jruby/jruby#7106](https://github.com/jruby/jruby/issues/7106), [jruby/jruby#7182](https://github.com/jruby/jruby/issues/7182)).
|
||||
* When compiling extension code, note that the packages required to build Ruby are included when using Windows 2022, but that Windows 2019 does not include all of them, and may require installing package(s). This can be done with [setup-ruby-pkgs](https://github.com/ruby/setup-ruby-pkgs) or via MSYS2's pacman. These packages may be required when installing or updating Ruby std-lib extension gems.
|
||||
|
||||
## Versioning
|
||||
|
||||
|
||||
+2
-2
@@ -6,7 +6,7 @@ branding:
|
||||
icon: download
|
||||
inputs:
|
||||
ruby-version:
|
||||
description: 'Engine and version to use, see the syntax in the README. Reads from .ruby-version or .tool-versions if unset.'
|
||||
description: 'Engine and version to use, see the syntax in the README. Reads from .ruby-version, .tool-versions or mise.toml if unset.'
|
||||
default: 'default'
|
||||
rubygems:
|
||||
description: |
|
||||
@@ -26,7 +26,7 @@ inputs:
|
||||
description: 'Run "bundle install", and cache the result automatically. Either true or false.'
|
||||
default: 'false'
|
||||
working-directory:
|
||||
description: 'The working directory to use for resolving paths for .ruby-version, .tool-versions and Gemfile.lock.'
|
||||
description: 'The working directory to use for resolving paths for .ruby-version, .tool-versions, mise.toml and Gemfile.lock.'
|
||||
cache-version:
|
||||
description: |
|
||||
Arbitrary string that will be added to the cache key of the bundler cache. Set or change it if you need
|
||||
|
||||
@@ -6,9 +6,9 @@ const stream = require('stream')
|
||||
const crypto = require('crypto')
|
||||
const core = require('@actions/core')
|
||||
const tc = require('@actions/tool-cache')
|
||||
const exec = require('@actions/exec')
|
||||
const { performance } = require('perf_hooks')
|
||||
const linuxOSInfo = require('linux-os-info')
|
||||
import macosRelease from 'macos-release'
|
||||
|
||||
export const windows = (os.platform() === 'win32')
|
||||
// Extract to SSD on Windows, see https://github.com/ruby/setup-ruby/pull/14
|
||||
@@ -67,7 +67,8 @@ export async function time(name, block) {
|
||||
}
|
||||
|
||||
export function isHeadVersion(rubyVersion) {
|
||||
return ['head', 'debug', 'mingw', 'mswin', 'ucrt'].includes(rubyVersion)
|
||||
// 3.4-asan counts as "head" because the version cannot be selected -- you can only get whatever's latest
|
||||
return ['head', 'debug', 'mingw', 'mswin', 'ucrt', 'asan', '3.4-asan'].includes(rubyVersion)
|
||||
}
|
||||
|
||||
export function isStableVersion(engine, rubyVersion) {
|
||||
@@ -129,6 +130,8 @@ export function targetRubyVersion(engine, rubyVersion) {
|
||||
return 2.5
|
||||
} else if (version === 9.3) {
|
||||
return 2.6
|
||||
} else if (version === 9.4) {
|
||||
return 3.1
|
||||
}
|
||||
} else if (engine.startsWith('truffleruby')) {
|
||||
if (version < 21.0) {
|
||||
@@ -137,6 +140,10 @@ export function targetRubyVersion(engine, rubyVersion) {
|
||||
return 2.7
|
||||
} else if (version < 23.0) {
|
||||
return 3.0
|
||||
} else if (version < 23.1) {
|
||||
return 3.1
|
||||
} else if (version < 24.2) {
|
||||
return 3.2
|
||||
}
|
||||
}
|
||||
|
||||
@@ -162,74 +169,108 @@ export async function hashFile(file) {
|
||||
return hash.digest('hex')
|
||||
}
|
||||
|
||||
// macos is not listed explicitly, see below
|
||||
const GitHubHostedPlatforms = [
|
||||
'ubuntu-20.04-x64',
|
||||
'ubuntu-22.04-x64',
|
||||
'ubuntu-22.04-arm64',
|
||||
'ubuntu-24.04-x64',
|
||||
'macos-11-x64',
|
||||
'macos-12-x64',
|
||||
'macos-13-x64',
|
||||
'macos-13-arm64',
|
||||
'macos-14-x64',
|
||||
'macos-14-arm64',
|
||||
'ubuntu-24.04-arm64',
|
||||
'windows-2019-x64',
|
||||
'windows-2022-x64',
|
||||
'windows-2025-x64',
|
||||
]
|
||||
|
||||
// Precisely: whether we have builds for that platform and there are GitHub-hosted runners to test it
|
||||
function isSupportedPlatform() {
|
||||
const platform = getOSName()
|
||||
switch (platform) {
|
||||
case 'ubuntu':
|
||||
return GitHubHostedPlatforms.includes(getOSNameVersionArch())
|
||||
case 'macos':
|
||||
// See https://github.com/ruby/ruby-builder/blob/master/README.md#naming
|
||||
// 13 on arm64 because of old macos-arm-oss runners
|
||||
return (os.arch() === 'x64' && parseInt(getOSVersion()) >= 13) ||
|
||||
(os.arch() === 'arm64' && parseInt(getOSVersion()) >= 13)
|
||||
case 'windows':
|
||||
return GitHubHostedPlatforms.includes(getOSNameVersionArch())
|
||||
}
|
||||
}
|
||||
|
||||
// Actually a self-hosted runner for which the OS and OS version does not correspond to a GitHub-hosted runner image,
|
||||
export function isSelfHostedRunner() {
|
||||
if (inputs.selfHosted === undefined) {
|
||||
throw new Error('inputs.selfHosted should have been already set')
|
||||
}
|
||||
|
||||
return inputs.selfHosted === 'true' ||
|
||||
!GitHubHostedPlatforms.includes(getOSNameVersionArch())
|
||||
return inputs.selfHosted === 'true' || !isSupportedPlatform()
|
||||
}
|
||||
|
||||
export function selfHostedRunnerReason() {
|
||||
if (inputs.selfHosted === 'true') {
|
||||
return 'the self-hosted input was set'
|
||||
} else if (!GitHubHostedPlatforms.includes(getOSNameVersionArch())) {
|
||||
} else if (!isSupportedPlatform()) {
|
||||
return 'the platform does not match a GitHub-hosted runner image (or that image is deprecated and no longer supported)'
|
||||
} else {
|
||||
return 'unknown reason'
|
||||
}
|
||||
}
|
||||
|
||||
let osNameVersion = undefined
|
||||
let osName = undefined
|
||||
let osVersion = undefined
|
||||
|
||||
export function getOSNameVersion() {
|
||||
if (osNameVersion !== undefined) {
|
||||
return osNameVersion
|
||||
export function getOSName() {
|
||||
if (osName !== undefined) {
|
||||
return osName
|
||||
}
|
||||
|
||||
const platform = os.platform()
|
||||
let osName
|
||||
let osVersion
|
||||
if (platform === 'linux') {
|
||||
const info = linuxOSInfo({mode: 'sync'})
|
||||
osName = info.id
|
||||
osVersion = info.version_id
|
||||
} else if (platform === 'darwin') {
|
||||
osName = 'macos'
|
||||
osVersion = macosRelease().version
|
||||
} else if (platform === 'win32') {
|
||||
osName = 'windows'
|
||||
} else {
|
||||
throw new Error(`Unknown platform ${platform}`)
|
||||
}
|
||||
|
||||
return osName
|
||||
}
|
||||
|
||||
export function getOSVersion() {
|
||||
if (osVersion !== undefined) {
|
||||
return osVersion
|
||||
}
|
||||
|
||||
const platform = os.platform()
|
||||
if (platform === 'linux') {
|
||||
const info = linuxOSInfo({mode: 'sync'})
|
||||
osVersion = info.version_id
|
||||
} else if (platform === 'darwin') {
|
||||
// See https://github.com/sindresorhus/macos-release/blob/main/index.js
|
||||
const darwinVersion = parseInt(os.release().match(/^\d+/)[0])
|
||||
osVersion = `${darwinVersion - 9}`
|
||||
} else if (platform === 'win32') {
|
||||
osVersion = findWindowsVersion()
|
||||
} else {
|
||||
throw new Error(`Unknown platform ${platform}`)
|
||||
}
|
||||
|
||||
osNameVersion = `${osName}-${osVersion}`
|
||||
return osNameVersion
|
||||
return osVersion
|
||||
}
|
||||
|
||||
export function getOSNameVersion() {
|
||||
return `${getOSName()}-${getOSVersion()}`
|
||||
}
|
||||
|
||||
export function getOSNameVersionArch() {
|
||||
return `${getOSNameVersion()}-${os.arch()}`
|
||||
return `${getOSName()}-${getOSVersion()}-${os.arch()}`
|
||||
}
|
||||
|
||||
function findWindowsVersion() {
|
||||
const version = os.version();
|
||||
const version = os.version()
|
||||
const match = version.match(/^Windows Server (\d+) Datacenter/)
|
||||
if (match) {
|
||||
return match[1]
|
||||
@@ -262,15 +303,14 @@ export function getRunnerToolCache() {
|
||||
|
||||
// Rubies prebuilt by this action embed this path rather than using $RUNNER_TOOL_CACHE
|
||||
function getDefaultToolCachePath() {
|
||||
const platform = getOSNameVersion()
|
||||
if (platform.startsWith('ubuntu-')) {
|
||||
return '/opt/hostedtoolcache'
|
||||
} else if (platform.startsWith('macos-')) {
|
||||
return '/Users/runner/hostedtoolcache'
|
||||
} else if (platform.startsWith('windows-')) {
|
||||
return 'C:\\hostedtoolcache\\windows'
|
||||
} else {
|
||||
throw new Error('Unknown platform')
|
||||
const platform = getOSName()
|
||||
switch (platform) {
|
||||
case 'ubuntu':
|
||||
return '/opt/hostedtoolcache'
|
||||
case 'macos':
|
||||
return '/Users/runner/hostedtoolcache'
|
||||
case 'windows':
|
||||
return 'C:\\hostedtoolcache\\windows'
|
||||
}
|
||||
}
|
||||
|
||||
@@ -364,3 +404,35 @@ export function setupPath(newPathEntries) {
|
||||
core.addPath(newPath.join(path.delimiter))
|
||||
return msys2Type
|
||||
}
|
||||
|
||||
export async function setupJavaHome(rubyPrefix) {
|
||||
await measure("Modifying JAVA_HOME for JRuby", async () => {
|
||||
console.log("attempting to run with existing JAVA_HOME")
|
||||
|
||||
const javaHome = process.env['JAVA_HOME']
|
||||
let java = javaHome ? path.join(javaHome, 'bin/java') : 'java'
|
||||
let ret = await exec.exec(java, ['-jar', path.join(rubyPrefix, 'lib/jruby.jar'), '--version'], {ignoreReturnCode: true})
|
||||
|
||||
if (ret === 0) {
|
||||
console.log("JRuby successfully starts, using existing JAVA_HOME")
|
||||
} else {
|
||||
console.log("JRuby failed to start, try Java 21 envs")
|
||||
|
||||
let arch = os.arch()
|
||||
if (arch === "x64" || os.platform() !== "darwin") {
|
||||
arch = "X64"
|
||||
}
|
||||
|
||||
let newHomeVar = `JAVA_HOME_21_${arch}`
|
||||
let newHome = process.env[newHomeVar]
|
||||
|
||||
if (newHome === "undefined") {
|
||||
throw new Error(`JAVA_HOME is not Java 21+ needed for JRuby and \$${newHomeVar} is not defined`)
|
||||
}
|
||||
|
||||
console.log(`Setting JAVA_HOME to ${newHomeVar} path ${newHome}`)
|
||||
|
||||
core.exportVariable("JAVA_HOME", newHome)
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
+9601
-445
File diff suppressed because one or more lines are too long
@@ -58,8 +58,14 @@ export async function setupRuby(options = {}) {
|
||||
installer = require('./ruby-builder')
|
||||
}
|
||||
|
||||
const engineVersions = installer.getAvailableVersions(platform, engine)
|
||||
const version = validateRubyEngineAndVersion(platform, engineVersions, engine, parsedVersion)
|
||||
let version
|
||||
if (common.isSelfHostedRunner()) {
|
||||
// The list of available Rubies in the hostedtoolcache is unrelated to getAvailableVersions()
|
||||
version = parsedVersion
|
||||
} else {
|
||||
const engineVersions = installer.getAvailableVersions(platform, engine)
|
||||
version = validateRubyEngineAndVersion(platform, engineVersions, engine, parsedVersion)
|
||||
}
|
||||
|
||||
createGemRC(engine, version)
|
||||
envPreInstall()
|
||||
@@ -111,6 +117,8 @@ function parseRubyEngineAndVersion(rubyVersion) {
|
||||
rubyVersion = '.ruby-version'
|
||||
} else if (fs.existsSync('.tool-versions')) {
|
||||
rubyVersion = '.tool-versions'
|
||||
} else if (fs.existsSync('mise.toml')) {
|
||||
rubyVersion = 'mise.toml'
|
||||
} else {
|
||||
throw new Error('input ruby-version needs to be specified if no .ruby-version or .tool-versions file exists')
|
||||
}
|
||||
@@ -121,9 +129,16 @@ function parseRubyEngineAndVersion(rubyVersion) {
|
||||
console.log(`Using ${rubyVersion} as input from file .ruby-version`)
|
||||
} else if (rubyVersion === '.tool-versions') { // Read from .tool-versions
|
||||
const toolVersions = fs.readFileSync('.tool-versions', 'utf8').trim()
|
||||
const rubyLine = toolVersions.split(/\r?\n/).filter(e => /^ruby\s/.test(e))[0]
|
||||
rubyVersion = rubyLine.match(/^ruby\s+(.+)$/)[1]
|
||||
const regexp = /^ruby\s+(\S+)/
|
||||
const rubyLine = toolVersions.split(/\r?\n/).filter(e => regexp.test(e))[0]
|
||||
rubyVersion = rubyLine.match(regexp)[1]
|
||||
console.log(`Using ${rubyVersion} as input from file .tool-versions`)
|
||||
} else if (rubyVersion === 'mise.toml') { // Read from mise.toml
|
||||
const toolVersions = fs.readFileSync('mise.toml', 'utf8').trim()
|
||||
const regexp = /^ruby\s*=\s*['"](.+)['"]$/
|
||||
const rubyLine = toolVersions.split(/\r?\n/).filter(e => regexp.test(e))[0]
|
||||
rubyVersion = rubyLine.match(regexp)[1]
|
||||
console.log(`Using ${rubyVersion} as input from file mise.toml`)
|
||||
}
|
||||
|
||||
let engine, version
|
||||
@@ -159,11 +174,35 @@ function validateRubyEngineAndVersion(platform, engineVersions, engine, parsedVe
|
||||
version = found
|
||||
} else {
|
||||
throw new Error(`Unknown version ${parsedVersion} for ${engine} on ${platform}
|
||||
available versions for ${engine} on ${platform}: ${engineVersions.join(', ')}
|
||||
Available versions for ${engine} on ${platform}: ${engineVersions.join(', ')}
|
||||
Make sure you use the latest version of the action with - uses: ruby/setup-ruby@v1`)
|
||||
}
|
||||
}
|
||||
|
||||
// Well known version-platform combinations which do not work:
|
||||
if (engine === 'ruby' && platform.startsWith('macos') && os.arch() === 'arm64' && common.floatVersion(version) < 2.6) {
|
||||
throw new Error(`CRuby < 2.6 does not support macos-arm64.
|
||||
Either use a newer Ruby version or use a macOS image running on amd64, e.g., macos-13.
|
||||
Note that GitHub changed the meaning of macos-latest from macos-12 (amd64) to macos-14 (arm64):
|
||||
https://github.blog/changelog/2024-04-01-macos-14-sonoma-is-generally-available-and-the-latest-macos-runner-image/
|
||||
|
||||
If you are using a matrix of Ruby versions, a good solution is to run only < 2.6 on amd64, like so:
|
||||
matrix:
|
||||
ruby: ['2.4', '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3']
|
||||
os: [ ubuntu-latest, macos-latest ]
|
||||
# CRuby < 2.6 does not support macos-arm64, so test those on amd64 instead
|
||||
exclude:
|
||||
- { os: macos-latest, ruby: '2.4' }
|
||||
- { os: macos-latest, ruby: '2.5' }
|
||||
include:
|
||||
- { os: macos-13, ruby: '2.4' }
|
||||
- { os: macos-13, ruby: '2.5' }
|
||||
|
||||
But of course you should consider dropping support for these long-EOL Rubies, which cannot even be built on recent macOS machines.`)
|
||||
} else if (engine === 'truffleruby' && platform.startsWith('windows')) {
|
||||
throw new Error('TruffleRuby does not currently support Windows.')
|
||||
}
|
||||
|
||||
return version
|
||||
}
|
||||
|
||||
|
||||
+2
-3
@@ -22,13 +22,12 @@
|
||||
},
|
||||
"homepage": "https://github.com/ruby/setup-ruby",
|
||||
"dependencies": {
|
||||
"@actions/cache": "^3",
|
||||
"@actions/core": "^1.10.0",
|
||||
"@actions/cache": "^4.0.0",
|
||||
"@actions/core": "^1.11.1",
|
||||
"@actions/exec": "^1.1.1",
|
||||
"@actions/io": "^1.1.2",
|
||||
"@actions/tool-cache": "^2",
|
||||
"linux-os-info": "^2.0.0",
|
||||
"macos-release": "^3.1.0",
|
||||
"semver": "^7.3.7"
|
||||
},
|
||||
"devDependencies": {
|
||||
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
require 'json'
|
||||
|
||||
def run(command_line)
|
||||
puts "$ #{command_line}"
|
||||
output = `#{command_line}`
|
||||
puts output
|
||||
raise $?.inspect unless $?.success?
|
||||
output
|
||||
end
|
||||
|
||||
latest_release_tag = run 'gh release view --json tagName'
|
||||
latest_release_tag = JSON.load(latest_release_tag).fetch('tagName')
|
||||
|
||||
raise latest_release_tag unless latest_release_tag =~ /\Av(\d+).(\d+).(\d+)\z/
|
||||
tag = "v#{$1}.#{Integer($2)+1}.0"
|
||||
|
||||
run "gh release create --generate-notes --latest #{tag}"
|
||||
@@ -10,17 +10,17 @@
|
||||
"2.6.0", "2.6.1", "2.6.2", "2.6.3", "2.6.4", "2.6.5", "2.6.6", "2.6.7", "2.6.8", "2.6.9", "2.6.10",
|
||||
"2.7.0", "2.7.1", "2.7.2", "2.7.3", "2.7.4", "2.7.5", "2.7.6", "2.7.7", "2.7.8",
|
||||
"3.0.0-preview1", "3.0.0-preview2", "3.0.0-rc1", "3.0.0", "3.0.1", "3.0.2", "3.0.3", "3.0.4", "3.0.5", "3.0.6", "3.0.7",
|
||||
"3.1.0-preview1", "3.1.0", "3.1.1", "3.1.2", "3.1.3", "3.1.4", "3.1.5",
|
||||
"3.2.0-preview1", "3.2.0-preview2", "3.2.0-preview3", "3.2.0-rc1", "3.2.0", "3.2.1", "3.2.2", "3.2.3", "3.2.4",
|
||||
"3.3.0-preview1", "3.3.0-preview2", "3.3.0-preview3", "3.3.0-rc1", "3.3.0", "3.3.1",
|
||||
"3.4.0-preview1",
|
||||
"head", "debug"
|
||||
"3.1.0-preview1", "3.1.0", "3.1.1", "3.1.2", "3.1.3", "3.1.4", "3.1.5", "3.1.6", "3.1.7",
|
||||
"3.2.0-preview1", "3.2.0-preview2", "3.2.0-preview3", "3.2.0-rc1", "3.2.0", "3.2.1", "3.2.2", "3.2.3", "3.2.4", "3.2.5", "3.2.6", "3.2.7", "3.2.8",
|
||||
"3.3.0-preview1", "3.3.0-preview2", "3.3.0-preview3", "3.3.0-rc1", "3.3.0", "3.3.1", "3.3.2", "3.3.3", "3.3.4", "3.3.5", "3.3.6", "3.3.7", "3.3.8",
|
||||
"3.4.0-preview1", "3.4.0-preview2", "3.4.0-rc1", "3.4.0", "3.4.1", "3.4.2", "3.4.3",
|
||||
"head", "debug", "asan", "3.4-asan"
|
||||
],
|
||||
"jruby": [
|
||||
"9.1.17.0",
|
||||
"9.2.9.0", "9.2.10.0", "9.2.11.0", "9.2.11.1", "9.2.12.0", "9.2.13.0", "9.2.14.0", "9.2.15.0", "9.2.16.0", "9.2.17.0", "9.2.18.0", "9.2.19.0", "9.2.20.0", "9.2.20.1", "9.2.21.0",
|
||||
"9.3.0.0", "9.3.1.0", "9.3.2.0", "9.3.3.0", "9.3.4.0", "9.3.6.0", "9.3.7.0", "9.3.8.0", "9.3.9.0", "9.3.10.0", "9.3.11.0", "9.3.13.0", "9.3.14.0",
|
||||
"9.4.0.0", "9.4.1.0", "9.4.2.0", "9.4.3.0", "9.4.4.0", "9.4.5.0", "9.4.6.0", "9.4.7.0",
|
||||
"9.3.0.0", "9.3.1.0", "9.3.2.0", "9.3.3.0", "9.3.4.0", "9.3.6.0", "9.3.7.0", "9.3.8.0", "9.3.9.0", "9.3.10.0", "9.3.11.0", "9.3.13.0", "9.3.14.0", "9.3.15.0",
|
||||
"9.4.0.0", "9.4.1.0", "9.4.2.0", "9.4.3.0", "9.4.4.0", "9.4.5.0", "9.4.6.0", "9.4.7.0", "9.4.8.0", "9.4.9.0", "9.4.10.0", "9.4.11.0", "9.4.12.0",
|
||||
"head"
|
||||
],
|
||||
"truffleruby": [
|
||||
@@ -29,14 +29,14 @@
|
||||
"21.0.0", "21.1.0", "21.2.0", "21.2.0.1", "21.3.0",
|
||||
"22.0.0.2", "22.1.0", "22.2.0", "22.3.0", "22.3.1",
|
||||
"23.0.0-preview1", "23.0.0", "23.1.0", "23.1.1", "23.1.2",
|
||||
"24.0.0", "24.0.1",
|
||||
"24.0.0", "24.0.1", "24.0.2", "24.1.0", "24.1.1", "24.1.2", "24.2.0",
|
||||
"head"
|
||||
],
|
||||
"truffleruby+graalvm": [
|
||||
"21.2.0", "21.3.0",
|
||||
"22.0.0.2", "22.1.0", "22.2.0", "22.3.0", "22.3.1",
|
||||
"23.0.0-preview1", "23.0.0", "23.1.0", "23.1.1", "23.1.2",
|
||||
"24.0.0", "24.0.1",
|
||||
"24.0.0", "24.0.1", "24.0.2", "24.1.0", "24.1.1", "24.1.2", "24.2.0",
|
||||
"head"
|
||||
]
|
||||
}
|
||||
|
||||
+25
-6
@@ -54,10 +54,9 @@ export async function install(platform, engine, version) {
|
||||
await downloadAndExtract(platform, engine, version, rubyPrefix)
|
||||
}
|
||||
|
||||
// https://github.com/oracle/truffleruby/issues/3390
|
||||
if (engine.startsWith('truffleruby') && common.floatVersion(version) >= 24.0 && !common.isSelfHostedRunner() && common.getOSNameVersionArch() === 'macos-12-x64') {
|
||||
console.log('Setting MACOSX_DEPLOYMENT_TARGET=11.0 to workaround bug in XCode 14.2 linker not respecting RTLD_LAZY, see https://github.com/oracle/truffleruby/issues/3390')
|
||||
core.exportVariable('MACOSX_DEPLOYMENT_TARGET', '11.0')
|
||||
// Ensure JRuby has minimum Java version to run
|
||||
if (engine === "jruby") {
|
||||
await common.setupJavaHome(rubyPrefix)
|
||||
}
|
||||
|
||||
return rubyPrefix
|
||||
@@ -69,7 +68,17 @@ async function downloadAndExtract(platform, engine, version, rubyPrefix) {
|
||||
const downloadPath = await common.measure('Downloading Ruby', async () => {
|
||||
const url = getDownloadURL(platform, engine, version)
|
||||
console.log(url)
|
||||
return await tc.downloadTool(url)
|
||||
try {
|
||||
return await tc.downloadTool(url)
|
||||
} catch (error) {
|
||||
if (error.message.includes('404')) {
|
||||
throw new Error(`Unavailable version ${version} for ${engine} on ${platform}
|
||||
You can request it at https://github.com/ruby/setup-ruby/issues
|
||||
Cause: ${error.message}`)
|
||||
} else {
|
||||
throw error
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
await common.measure('Extracting Ruby', async () => {
|
||||
@@ -87,7 +96,7 @@ async function downloadAndExtract(platform, engine, version, rubyPrefix) {
|
||||
}
|
||||
|
||||
function getDownloadURL(platform, engine, version) {
|
||||
let builderPlatform = platform
|
||||
let builderPlatform = null
|
||||
if (platform.startsWith('windows-') && os.arch() === 'x64') {
|
||||
builderPlatform = 'windows-latest'
|
||||
} else if (platform.startsWith('macos-')) {
|
||||
@@ -96,6 +105,16 @@ function getDownloadURL(platform, engine, version) {
|
||||
} else if (os.arch() === 'arm64') {
|
||||
builderPlatform = 'macos-13-arm64'
|
||||
}
|
||||
} else if (platform.startsWith('ubuntu-')) {
|
||||
if (os.arch() === 'x64') {
|
||||
builderPlatform = platform
|
||||
} else if (os.arch() === 'arm64') {
|
||||
builderPlatform = `${platform}-arm64`
|
||||
}
|
||||
}
|
||||
|
||||
if (builderPlatform === null) {
|
||||
throw new Error(`Unknown download URL for platform ${platform}`)
|
||||
}
|
||||
|
||||
if (common.isHeadVersion(version)) {
|
||||
|
||||
+3
-1
@@ -39,8 +39,10 @@ async function rubygemsLatest(gem, platform, engine, rubyVersion) {
|
||||
const floatVersion = common.floatVersion(rubyVersion)
|
||||
if (common.isHeadVersion(rubyVersion)) {
|
||||
console.log('Ruby master builds use included RubyGems')
|
||||
} else if (floatVersion >= 3.0) {
|
||||
} else if (floatVersion >= 3.1) {
|
||||
await exec.exec(gem, ['update', '--system'])
|
||||
} else if (floatVersion >= 3.0) {
|
||||
await exec.exec(gem, ['update', '--system', '3.5.23'])
|
||||
} else if (floatVersion >= 2.6) {
|
||||
await exec.exec(gem, ['update', '--system', '3.4.22'])
|
||||
} else if (floatVersion >= 2.3) {
|
||||
|
||||
@@ -2,21 +2,32 @@ require 'json'
|
||||
hash = File.read('ruby-builder-versions.json')
|
||||
versions = JSON.load(hash).transform_keys(&:to_sym)
|
||||
|
||||
by_minor = versions[:ruby].group_by { |v| v[/^\d\.\d/] }
|
||||
ONLY_LATEST_PATCH = ENV['ONLY_LATEST_PATCH']
|
||||
|
||||
by_minor.each_pair do |minor, versions|
|
||||
puts versions.map { |v| "ruby-#{v}" }.join(', ') if minor
|
||||
def filter(versions)
|
||||
versions -= %w[head]
|
||||
if ONLY_LATEST_PATCH
|
||||
versions = versions.group_by { |v| v[/^\d+\.\d+/] }.map { _2.last }
|
||||
end
|
||||
versions
|
||||
end
|
||||
|
||||
if ONLY_LATEST_PATCH
|
||||
puts filter(versions[:ruby]).map { |v| "ruby-#{v}" }.join(', ')
|
||||
else
|
||||
by_minor = versions[:ruby].group_by { |v| v[/^\d+\.\d+/] }
|
||||
by_minor.each_pair do |minor, versions|
|
||||
puts versions.map { |v| "ruby-#{v}" }.join(', ') if minor
|
||||
end
|
||||
end
|
||||
|
||||
puts
|
||||
puts (versions[:truffleruby] - %w[head]).map { |v| "truffleruby-#{v}" }.join(', ')
|
||||
puts filter(versions[:truffleruby]).map { |v| "truffleruby-#{v}" }.join(', ')
|
||||
|
||||
puts
|
||||
puts (versions[:"truffleruby+graalvm"] - %w[head]).map { |v| "truffleruby+graalvm-#{v}" }.join(', ')
|
||||
puts filter(versions[:"truffleruby+graalvm"]).map { |v| "truffleruby+graalvm-#{v}" }.join(', ')
|
||||
|
||||
puts
|
||||
puts (versions[:jruby] - %w[head]).map { |v| "jruby-#{v}" }.join(', ')
|
||||
|
||||
(versions[:jruby] - %w[head]).each do |v|
|
||||
puts "- { os: windows-latest, jruby-version: #{v}, ruby: jruby-#{v} }"
|
||||
end
|
||||
puts filter(versions[:jruby]).map { |v| "jruby-#{v}" }.join(', ')
|
||||
puts "For Windows:"
|
||||
puts filter(versions[:jruby]).join(', ')
|
||||
|
||||
@@ -56,13 +56,29 @@
|
||||
"3.1.3": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.3-1/rubyinstaller-3.1.3-1-x64.7z",
|
||||
"3.1.4": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.4-1/rubyinstaller-3.1.4-1-x64.7z",
|
||||
"3.1.5": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.5-1/rubyinstaller-3.1.5-1-x64.7z",
|
||||
"3.1.6": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.6-1/rubyinstaller-3.1.6-1-x64.7z",
|
||||
"3.1.7": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.1.7-1/rubyinstaller-3.1.7-1-x64.7z",
|
||||
"3.2.0": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.0-1/rubyinstaller-3.2.0-1-x64.7z",
|
||||
"3.2.1": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.1-1/rubyinstaller-3.2.1-1-x64.7z",
|
||||
"3.2.2": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.2-1/rubyinstaller-3.2.2-1-x64.7z",
|
||||
"3.2.3": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.3-1/rubyinstaller-3.2.3-1-x64.7z",
|
||||
"3.2.4": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.4-1/rubyinstaller-3.2.4-1-x64.7z",
|
||||
"3.2.5": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.5-1/rubyinstaller-3.2.5-1-x64.7z",
|
||||
"3.2.6": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.6-1/rubyinstaller-3.2.6-1-x64.7z",
|
||||
"3.2.7": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.7-1/rubyinstaller-3.2.7-1-x64.7z",
|
||||
"3.2.8": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.2.8-1/rubyinstaller-3.2.8-1-x64.7z",
|
||||
"3.3.0": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.0-1/rubyinstaller-3.3.0-1-x64.7z",
|
||||
"3.3.1": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.1-1/rubyinstaller-3.3.1-1-x64.7z",
|
||||
"3.3.2": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.2-1/rubyinstaller-3.3.2-1-x64.7z",
|
||||
"3.3.3": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.3-1/rubyinstaller-3.3.3-1-x64.7z",
|
||||
"3.3.4": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.4-1/rubyinstaller-3.3.4-1-x64.7z",
|
||||
"3.3.5": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.5-1/rubyinstaller-3.3.5-1-x64.7z",
|
||||
"3.3.6": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.6-2/rubyinstaller-3.3.6-2-x64.7z",
|
||||
"3.3.7": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.7-1/rubyinstaller-3.3.7-1-x64.7z",
|
||||
"3.3.8": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.3.8-1/rubyinstaller-3.3.8-1-x64.7z",
|
||||
"3.4.1": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.4.1-2/rubyinstaller-3.4.1-2-x64.7z",
|
||||
"3.4.2": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.4.2-1/rubyinstaller-3.4.2-1-x64.7z",
|
||||
"3.4.3": "https://github.com/oneclick/rubyinstaller2/releases/download/RubyInstaller-3.4.3-1/rubyinstaller-3.4.3-1-x64.7z",
|
||||
"head": "https://github.com/oneclick/rubyinstaller2/releases/download/rubyinstaller-head/rubyinstaller-head-x64.7z",
|
||||
"mingw": "https://github.com/MSP-Greg/ruby-loco/releases/download/ruby-master/ruby-mingw.7z",
|
||||
"mswin": "https://github.com/MSP-Greg/ruby-loco/releases/download/ruby-master/ruby-mswin.7z",
|
||||
|
||||
@@ -2,12 +2,12 @@
|
||||
# yarn lockfile v1
|
||||
|
||||
|
||||
"@actions/cache@^3":
|
||||
version "3.2.2"
|
||||
resolved "https://registry.yarnpkg.com/@actions/cache/-/cache-3.2.2.tgz#e7bbb5f9b67c613f96f98f91506c69424c9aa288"
|
||||
integrity sha512-6D0Jq5JrLZRQ3VApeQwQkkV20ZZXjXsHNYXd9VjNUdi9E0h93wESpxfMJ2JWLCUCgHNLcfY0v3GjNM+2FdRMlg==
|
||||
"@actions/cache@^4.0.0":
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@actions/cache/-/cache-4.0.0.tgz#24845cced4326b11b6115fd3e2cff8e7ea3afed2"
|
||||
integrity sha512-WIuxjnZ44lNYtIS4fqSaYvF00hORdy3cSin+jx8xNgBVGWnNIAiCBHjlwusVQlcgExoQC9pHXGrDsZyZr7rCDQ==
|
||||
dependencies:
|
||||
"@actions/core" "^1.10.0"
|
||||
"@actions/core" "^1.11.1"
|
||||
"@actions/exec" "^1.0.1"
|
||||
"@actions/glob" "^0.1.0"
|
||||
"@actions/http-client" "^2.1.1"
|
||||
@@ -15,16 +15,17 @@
|
||||
"@azure/abort-controller" "^1.1.0"
|
||||
"@azure/ms-rest-js" "^2.6.0"
|
||||
"@azure/storage-blob" "^12.13.0"
|
||||
semver "^6.1.0"
|
||||
uuid "^3.3.3"
|
||||
"@protobuf-ts/plugin" "^2.9.4"
|
||||
semver "^6.3.1"
|
||||
twirp-ts "^2.5.0"
|
||||
|
||||
"@actions/core@^1.10.0", "@actions/core@^1.2.6":
|
||||
version "1.10.1"
|
||||
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.10.1.tgz#61108e7ac40acae95ee36da074fa5850ca4ced8a"
|
||||
integrity sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g==
|
||||
"@actions/core@^1.11.1", "@actions/core@^1.2.6":
|
||||
version "1.11.1"
|
||||
resolved "https://registry.yarnpkg.com/@actions/core/-/core-1.11.1.tgz#ae683aac5112438021588030efb53b1adb86f172"
|
||||
integrity sha512-hXJCSrkwfA46Vd9Z3q4cpEpHB1rL5NG04+/rbqW9d3+CSvtB1tYe8UTpAlixa1vj0m/ULglfEK2UKxMGxCxv5A==
|
||||
dependencies:
|
||||
"@actions/exec" "^1.1.1"
|
||||
"@actions/http-client" "^2.0.1"
|
||||
uuid "^8.3.2"
|
||||
|
||||
"@actions/exec@^1.0.0", "@actions/exec@^1.0.1", "@actions/exec@^1.1.1":
|
||||
version "1.1.1"
|
||||
@@ -174,6 +175,42 @@
|
||||
resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.6.0.tgz#de2c6823203d6f319511898bb5de7e70f5267e19"
|
||||
integrity sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g==
|
||||
|
||||
"@protobuf-ts/plugin-framework@^2.0.7", "@protobuf-ts/plugin-framework@^2.9.4":
|
||||
version "2.9.4"
|
||||
resolved "https://registry.yarnpkg.com/@protobuf-ts/plugin-framework/-/plugin-framework-2.9.4.tgz#d7a617dedda4a12c568fdc1db5aa67d5e4da2406"
|
||||
integrity sha512-9nuX1kjdMliv+Pes8dQCKyVhjKgNNfwxVHg+tx3fLXSfZZRcUHMc1PMwB9/vTvc6gBKt9QGz5ERqSqZc0++E9A==
|
||||
dependencies:
|
||||
"@protobuf-ts/runtime" "^2.9.4"
|
||||
typescript "^3.9"
|
||||
|
||||
"@protobuf-ts/plugin@^2.9.4":
|
||||
version "2.9.4"
|
||||
resolved "https://registry.yarnpkg.com/@protobuf-ts/plugin/-/plugin-2.9.4.tgz#4e593e59013aaad313e7abbabe6e61964ef0ca28"
|
||||
integrity sha512-Db5Laq5T3mc6ERZvhIhkj1rn57/p8gbWiCKxQWbZBBl20wMuqKoHbRw4tuD7FyXi+IkwTToaNVXymv5CY3E8Rw==
|
||||
dependencies:
|
||||
"@protobuf-ts/plugin-framework" "^2.9.4"
|
||||
"@protobuf-ts/protoc" "^2.9.4"
|
||||
"@protobuf-ts/runtime" "^2.9.4"
|
||||
"@protobuf-ts/runtime-rpc" "^2.9.4"
|
||||
typescript "^3.9"
|
||||
|
||||
"@protobuf-ts/protoc@^2.9.4":
|
||||
version "2.9.4"
|
||||
resolved "https://registry.yarnpkg.com/@protobuf-ts/protoc/-/protoc-2.9.4.tgz#a92262ee64d252998540238701d2140f4ffec081"
|
||||
integrity sha512-hQX+nOhFtrA+YdAXsXEDrLoGJqXHpgv4+BueYF0S9hy/Jq0VRTVlJS1Etmf4qlMt/WdigEes5LOd/LDzui4GIQ==
|
||||
|
||||
"@protobuf-ts/runtime-rpc@^2.9.4":
|
||||
version "2.9.4"
|
||||
resolved "https://registry.yarnpkg.com/@protobuf-ts/runtime-rpc/-/runtime-rpc-2.9.4.tgz#d6ab2316c0ba67ce5a08863bb23203a837ff2a3b"
|
||||
integrity sha512-y9L9JgnZxXFqH5vD4d7j9duWvIJ7AShyBRoNKJGhu9Q27qIbchfzli66H9RvrQNIFk5ER7z1Twe059WZGqERcA==
|
||||
dependencies:
|
||||
"@protobuf-ts/runtime" "^2.9.4"
|
||||
|
||||
"@protobuf-ts/runtime@^2.9.4":
|
||||
version "2.9.4"
|
||||
resolved "https://registry.yarnpkg.com/@protobuf-ts/runtime/-/runtime-2.9.4.tgz#db8a78b1c409e26d258ca39464f4757d804add8f"
|
||||
integrity sha512-vHRFWtJJB/SiogWDF0ypoKfRIZ41Kq+G9cEFj6Qm1eQaAhJ1LDFvgZ7Ja4tb3iLOQhz0PaoPnnOijF1qmEqTxg==
|
||||
|
||||
"@types/node-fetch@^2.5.0":
|
||||
version "2.6.5"
|
||||
resolved "https://registry.yarnpkg.com/@types/node-fetch/-/node-fetch-2.6.5.tgz#972756a9a0fe354b2886bf3defe667ddb4f0d30a"
|
||||
@@ -224,6 +261,14 @@ brace-expansion@^1.1.7:
|
||||
balanced-match "^1.0.0"
|
||||
concat-map "0.0.1"
|
||||
|
||||
camel-case@^4.1.2:
|
||||
version "4.1.2"
|
||||
resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a"
|
||||
integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==
|
||||
dependencies:
|
||||
pascal-case "^3.1.2"
|
||||
tslib "^2.0.3"
|
||||
|
||||
combined-stream@^1.0.6, combined-stream@^1.0.8:
|
||||
version "1.0.8"
|
||||
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
|
||||
@@ -231,6 +276,11 @@ combined-stream@^1.0.6, combined-stream@^1.0.8:
|
||||
dependencies:
|
||||
delayed-stream "~1.0.0"
|
||||
|
||||
commander@^6.1.0:
|
||||
version "6.2.1"
|
||||
resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c"
|
||||
integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==
|
||||
|
||||
concat-map@0.0.1:
|
||||
version "0.0.1"
|
||||
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
||||
@@ -241,6 +291,14 @@ delayed-stream@~1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
|
||||
integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==
|
||||
|
||||
dot-object@^2.1.4:
|
||||
version "2.1.5"
|
||||
resolved "https://registry.yarnpkg.com/dot-object/-/dot-object-2.1.5.tgz#0ff0f1bff42c47ff06272081b208658c0a0231c2"
|
||||
integrity sha512-xHF8EP4XH/Ba9fvAF2LDd5O3IITVolerVV6xvkxoM8zlGEiCUrggpAnHyOoKJKCrhvPcGATFAUwIujj7bRG5UA==
|
||||
dependencies:
|
||||
commander "^6.1.0"
|
||||
glob "^7.1.6"
|
||||
|
||||
event-target-shim@^5.0.0:
|
||||
version "5.0.1"
|
||||
resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789"
|
||||
@@ -269,11 +327,53 @@ form-data@^4.0.0:
|
||||
combined-stream "^1.0.8"
|
||||
mime-types "^2.1.12"
|
||||
|
||||
fs.realpath@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
|
||||
integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==
|
||||
|
||||
glob@^7.1.6:
|
||||
version "7.2.3"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b"
|
||||
integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==
|
||||
dependencies:
|
||||
fs.realpath "^1.0.0"
|
||||
inflight "^1.0.4"
|
||||
inherits "2"
|
||||
minimatch "^3.1.1"
|
||||
once "^1.3.0"
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
inflight@^1.0.4:
|
||||
version "1.0.6"
|
||||
resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
|
||||
integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==
|
||||
dependencies:
|
||||
once "^1.3.0"
|
||||
wrappy "1"
|
||||
|
||||
inherits@2:
|
||||
version "2.0.4"
|
||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
||||
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
||||
|
||||
linux-os-info@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/linux-os-info/-/linux-os-info-2.0.0.tgz#32a251077c13af1a69dbcb36a168901208e32776"
|
||||
integrity sha512-ZopyH4kT2Ehnmix8iUgS/41pfv7fSlUV1JukIn3DB3qD3byvhBNtgCbUApoAtiqcHRLKXCY3zakXlJgiExm2Qg==
|
||||
|
||||
lodash@^4.17.15:
|
||||
version "4.17.21"
|
||||
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c"
|
||||
integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==
|
||||
|
||||
lower-case@^2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28"
|
||||
integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==
|
||||
dependencies:
|
||||
tslib "^2.0.3"
|
||||
|
||||
lru-cache@^6.0.0:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94"
|
||||
@@ -281,11 +381,6 @@ lru-cache@^6.0.0:
|
||||
dependencies:
|
||||
yallist "^4.0.0"
|
||||
|
||||
macos-release@^3.1.0:
|
||||
version "3.2.0"
|
||||
resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-3.2.0.tgz#dcee82b6a4932971b1538dbf6f3aabc4a903b613"
|
||||
integrity sha512-fSErXALFNsnowREYZ49XCdOHF8wOPWuFOGQrAhP7x5J/BqQv+B02cNsTykGpDgRVx43EKg++6ANmTaGTtW+hUA==
|
||||
|
||||
mime-db@1.52.0:
|
||||
version "1.52.0"
|
||||
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70"
|
||||
@@ -298,13 +393,21 @@ mime-types@^2.1.12:
|
||||
dependencies:
|
||||
mime-db "1.52.0"
|
||||
|
||||
minimatch@^3.0.4:
|
||||
minimatch@^3.0.4, minimatch@^3.1.1:
|
||||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b"
|
||||
integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==
|
||||
dependencies:
|
||||
brace-expansion "^1.1.7"
|
||||
|
||||
no-case@^3.0.4:
|
||||
version "3.0.4"
|
||||
resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d"
|
||||
integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==
|
||||
dependencies:
|
||||
lower-case "^2.0.2"
|
||||
tslib "^2.0.3"
|
||||
|
||||
node-fetch@^2.6.7:
|
||||
version "2.7.0"
|
||||
resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d"
|
||||
@@ -312,6 +415,36 @@ node-fetch@^2.6.7:
|
||||
dependencies:
|
||||
whatwg-url "^5.0.0"
|
||||
|
||||
once@^1.3.0:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
||||
integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==
|
||||
dependencies:
|
||||
wrappy "1"
|
||||
|
||||
pascal-case@^3.1.2:
|
||||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb"
|
||||
integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==
|
||||
dependencies:
|
||||
no-case "^3.0.4"
|
||||
tslib "^2.0.3"
|
||||
|
||||
path-is-absolute@^1.0.0:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
|
||||
integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==
|
||||
|
||||
path-to-regexp@^6.2.0:
|
||||
version "6.3.0"
|
||||
resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-6.3.0.tgz#2b6a26a337737a8e1416f9272ed0766b1c0389f4"
|
||||
integrity sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==
|
||||
|
||||
prettier@^2.5.1:
|
||||
version "2.8.8"
|
||||
resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.8.tgz#e8c5d7e98a4305ffe3de2e1fc4aca1a71c28b1da"
|
||||
integrity sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==
|
||||
|
||||
process@^0.11.10:
|
||||
version "0.11.10"
|
||||
resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182"
|
||||
@@ -322,7 +455,7 @@ sax@>=0.6.0:
|
||||
resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9"
|
||||
integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==
|
||||
|
||||
semver@^6.1.0:
|
||||
semver@^6.1.0, semver@^6.3.1:
|
||||
version "6.3.1"
|
||||
resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4"
|
||||
integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==
|
||||
@@ -339,11 +472,24 @@ tr46@~0.0.3:
|
||||
resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a"
|
||||
integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==
|
||||
|
||||
ts-poet@^4.5.0:
|
||||
version "4.15.0"
|
||||
resolved "https://registry.yarnpkg.com/ts-poet/-/ts-poet-4.15.0.tgz#637145fa554d3b27c56541578df0ce08cd9eb328"
|
||||
integrity sha512-sLLR8yQBvHzi9d4R1F4pd+AzQxBfzOSSjfxiJxQhkUoH5bL7RsAC6wgvtVUQdGqiCsyS9rT6/8X2FI7ipdir5g==
|
||||
dependencies:
|
||||
lodash "^4.17.15"
|
||||
prettier "^2.5.1"
|
||||
|
||||
tslib@^1.10.0:
|
||||
version "1.14.1"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
|
||||
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
|
||||
|
||||
tslib@^2.0.3:
|
||||
version "2.8.1"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"
|
||||
integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
|
||||
|
||||
tslib@^2.2.0:
|
||||
version "2.6.2"
|
||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae"
|
||||
@@ -354,7 +500,24 @@ tunnel@0.0.6, tunnel@^0.0.6:
|
||||
resolved "https://registry.yarnpkg.com/tunnel/-/tunnel-0.0.6.tgz#72f1314b34a5b192db012324df2cc587ca47f92c"
|
||||
integrity sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==
|
||||
|
||||
uuid@^3.3.2, uuid@^3.3.3:
|
||||
twirp-ts@^2.5.0:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.yarnpkg.com/twirp-ts/-/twirp-ts-2.5.0.tgz#b43f09e95868d68ecd5c755ecbb08a7e51388504"
|
||||
integrity sha512-JTKIK5Pf/+3qCrmYDFlqcPPUx+ohEWKBaZy8GL8TmvV2VvC0SXVyNYILO39+GCRbqnuP6hBIF+BVr8ZxRz+6fw==
|
||||
dependencies:
|
||||
"@protobuf-ts/plugin-framework" "^2.0.7"
|
||||
camel-case "^4.1.2"
|
||||
dot-object "^2.1.4"
|
||||
path-to-regexp "^6.2.0"
|
||||
ts-poet "^4.5.0"
|
||||
yaml "^1.10.2"
|
||||
|
||||
typescript@^3.9:
|
||||
version "3.9.10"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8"
|
||||
integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==
|
||||
|
||||
uuid@^3.3.2:
|
||||
version "3.4.0"
|
||||
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
|
||||
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
|
||||
@@ -377,6 +540,11 @@ whatwg-url@^5.0.0:
|
||||
tr46 "~0.0.3"
|
||||
webidl-conversions "^3.0.0"
|
||||
|
||||
wrappy@1:
|
||||
version "1.0.2"
|
||||
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
||||
integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==
|
||||
|
||||
xml2js@^0.5.0:
|
||||
version "0.5.0"
|
||||
resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.5.0.tgz#d9440631fbb2ed800203fad106f2724f62c493b7"
|
||||
@@ -394,3 +562,8 @@ yallist@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72"
|
||||
integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==
|
||||
|
||||
yaml@^1.10.2:
|
||||
version "1.10.2"
|
||||
resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b"
|
||||
integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==
|
||||
|
||||
Reference in New Issue
Block a user