forked from eventmachine/eventmachine
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge remote-tracking branch 'upstream/master' into sync_fork_for_rub…
…y_3_3
- Loading branch information
Showing
140 changed files
with
6,556 additions
and
2,228 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
root = true | ||
|
||
[*] | ||
charset = utf-8 | ||
end_of_line = lf | ||
insert_final_newline = true | ||
|
||
[*.{cpp,h}] | ||
indent_style = tab | ||
indent_size = 4 | ||
trim_trailing_whitespace = true | ||
|
||
[*.rb] | ||
indent_style = space | ||
indent_size = 2 | ||
trim_trailing_whitespace = true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,116 @@ | ||
name: CI | ||
|
||
on: [ push, pull_request, workflow_dispatch ] | ||
|
||
jobs: | ||
build: | ||
name: >- | ||
${{ matrix.os }} ${{ matrix.ruby }} | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: ${{ (startsWith(matrix.os, 'macos') || startsWith(matrix.os, 'windows')) && 15 || 10 }} | ||
env: | ||
BUNDLE_WITHOUT: documentation | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: | ||
- ubuntu-20.04 | ||
- ubuntu-22.04 | ||
- ubuntu-24.04 | ||
- macos-13 # amd64 | ||
- macos-14 # arm64 | ||
- windows-2022 | ||
|
||
# We currently support four EOL versions of ruby, but only on linux | ||
# versions that were released before that version of ruby went EOL. | ||
ruby: [ '2.5', '2.6', '2.7', '3.0', '3.1', '3.2', '3.3', head ] | ||
|
||
include: | ||
- { os: windows-2022, ruby: ucrt } # used instead of "head" | ||
exclude: | ||
- { os: windows-2022, ruby: head } # uses "ucrt" instead | ||
|
||
# Ubuntu 20.04 was released just prior to ruby 2.4's EOL | ||
# (no exclusions) | ||
|
||
# Ubuntu 22.04 was released just prior to ruby 2.6's EOL | ||
- { os: ubuntu-22.04, ruby: '2.5' } | ||
|
||
# Ubuntu 24.04 was released just prior to ruby 3.0's EOL | ||
- { os: ubuntu-24.04, ruby: '2.5' } | ||
- { os: ubuntu-24.04, ruby: '2.6' } | ||
- { os: ubuntu-24.04, ruby: '2.7' } | ||
|
||
# No EOL versions for macos-13 | ||
- { os: macos-13, ruby: '2.5' } | ||
- { os: macos-13, ruby: '2.6' } | ||
- { os: macos-13, ruby: '2.7' } | ||
- { os: macos-13, ruby: '3.0' } | ||
|
||
# No EOL versions for macos-14 | ||
- { os: macos-14, ruby: '2.5' } | ||
- { os: macos-14, ruby: '2.6' } | ||
- { os: macos-14, ruby: '2.7' } | ||
- { os: macos-14, ruby: '3.0' } | ||
|
||
# No EOL versions for windows-2022 | ||
- { os: windows-2022, ruby: '2.5' } | ||
- { os: windows-2022, ruby: '2.6' } | ||
- { os: windows-2022, ruby: '2.7' } | ||
- { os: windows-2022, ruby: '3.0' } | ||
|
||
steps: | ||
- name: repo checkout | ||
uses: actions/checkout@v4 | ||
|
||
- name: load ruby, run bundle install | ||
uses: ruby/setup-ruby@v1 | ||
with: | ||
ruby-version: ${{ matrix.ruby }} | ||
bundler-cache: true | ||
rubygems: ${{ (matrix.ruby < '2.7') && 'latest' || 'default' }} | ||
|
||
- name: macOS disable firewall | ||
if: startsWith(matrix.os, 'macos') | ||
run: | | ||
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off | ||
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --getglobalstate | ||
- name: compile | ||
run: bundle exec rake compile | ||
|
||
- name: test | ||
run: bundle exec rake test | ||
env: | ||
CI: true | ||
TESTOPTS: -v --no-show-detail-immediately | ||
|
||
pure_ruby: | ||
name: >- | ||
pure ruby (${{ matrix.os }} ${{ matrix.ruby }}) | ||
runs-on: ${{ matrix.os }} | ||
timeout-minutes: 10 | ||
env: | ||
BUNDLE_WITHOUT: documentation | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
# TODO: Fix macos-13, macos-14, windows-2022 | ||
os: [ ubuntu-20.04, ubuntu-22.04, ubuntu-24.04 ] | ||
ruby: [ '3.1', '3.2', '3.3', head ] | ||
steps: | ||
- name: repo checkout | ||
uses: actions/checkout@v4 | ||
|
||
- name: Set up Ruby | ||
uses: ruby/setup-ruby@v1 | ||
with: | ||
ruby-version: ${{ matrix.ruby }} | ||
bundler-cache: true | ||
|
||
- name: test_em_pure_ruby | ||
run: bundle exec rake test_em_pure_ruby | ||
env: | ||
CI: true | ||
EM_PURE_RUBY: true | ||
TESTOPTS: -v --no-show-detail-immediately |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,19 @@ | ||
source 'https://rubygems.org' | ||
|
||
gemspec | ||
|
||
gem 'rake' | ||
|
||
install_if -> { RUBY_VERSION > '3.1' } do | ||
gem 'net-smtp' | ||
end | ||
|
||
# switch to install_if when ruby 2.2 support is dropped | ||
if RUBY_VERSION >= '3.0' | ||
gem 'sorted_set' | ||
end | ||
|
||
group :documentation do | ||
gem 'yard', '>= 0.8.5.2' | ||
gem 'redcarpet' unless RUBY_PLATFORM =~ /java|mswin/ | ||
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.