Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Target Ruby 3.3 #126

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/test.yml
Expand Up @@ -8,7 +8,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
ruby: ['3.1', '3.2', 'head']
ruby: ['3.1', '3.2', '3.3', 'head']

name: >-
${{matrix.os}}, ${{matrix.ruby}}
Expand All @@ -20,7 +20,7 @@ jobs:

steps:
- name: Setup machine
uses: actions/checkout@v3
uses: actions/checkout@v4
- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/test_io_uring.yml
Expand Up @@ -8,15 +8,15 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest]
ruby: ['3.1', '3.2', 'head']
ruby: ['3.1', '3.2', '3.3', 'head']

name: >-
${{matrix.os}}, ${{matrix.ruby}}

runs-on: ${{matrix.os}}
steps:
- name: Checkout repository and submodules
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
submodules: recursive
- name: Setup Ruby
Expand Down
5 changes: 3 additions & 2 deletions .rubocop.yml
@@ -1,5 +1,5 @@
AllCops:
TargetRubyVersion: 3.2
TargetRubyVersion: 3.3
RubyInterpreters:
- ruby
Exclude:
Expand All @@ -9,6 +9,7 @@ AllCops:
- 'Gemfile*'
- 'ext/**/*.rb'
- lib/polyphony/adapters/irb.rb
NewCops: enable

Style/LambdaCall:
Enabled: false
Expand Down Expand Up @@ -202,4 +203,4 @@ Style/SlicingWithRange:

Style/RaiseArgs:
Exclude:
- lib/polyphony/extensions/fiber.rb
- lib/polyphony/extensions/fiber.rb
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -23,7 +23,7 @@
## What is Polyphony?

Polyphony is a library for building concurrent applications in Ruby. Polyphony
harnesses the power of [Ruby fibers](https://rubyapi.org/3.2/o/fiber) to provide
harnesses the power of [Ruby fibers](https://rubyapi.org/3.3/o/fiber) to provide
a cooperative, sequential coroutine-based concurrency model. Under the hood,
Polyphony uses [io_uring](https://unixism.net/loti/what_is_io_uring.html) or
[libev](https://github.com/enki/libev) to maximize I/O performance.
Expand Down
4 changes: 2 additions & 2 deletions docs/advanced-io.md
Expand Up @@ -119,7 +119,7 @@ minimizing memory use and GC pressure.
## Compressing and decompressing in-flight data

You might be familiar with Ruby's [zlib](https://github.com/ruby/zlib) gem (docs
[here](https://rubyapi.org/3.2/o/zlib)), which can be used to compress and
[here](https://rubyapi.org/3.3/o/zlib)), which can be used to compress and
uncompress data using the popular gzip format. Imagine we want to implement an
HTTP server that can serve files compressed using gzip:

Expand Down Expand Up @@ -318,4 +318,4 @@ provided by Polyphony, which lets us write less code, have it run faster, have
it run concurrently, and minimize memory allocations and pressure on the Ruby
GC. Feel free to browse the [IO
examples](https://github.com/digital-fabric/polyphony/tree/master/examples/io)
included in Polyphony.
included in Polyphony.
2 changes: 1 addition & 1 deletion docs/readme.md
Expand Up @@ -25,7 +25,7 @@
## What is Polyphony?

Polyphony is a library for building concurrent applications in Ruby. Polyphony
harnesses the power of [Ruby fibers](https://rubyapi.org/3.2/o/fiber) to provide
harnesses the power of [Ruby fibers](https://rubyapi.org/3.3/o/fiber) to provide
a cooperative, sequential coroutine-based concurrency model. Under the hood,
Polyphony uses [io_uring](https://unixism.net/loti/what_is_io_uring.html) or
[libev](https://github.com/enki/libev) to maximize I/O performance.
Expand Down
20 changes: 13 additions & 7 deletions polyphony.gemspec
Expand Up @@ -20,15 +20,21 @@ Gem::Specification.new do |s|
s.require_paths = ["lib"]
s.required_ruby_version = '>= 3.1'

s.add_development_dependency 'rake-compiler', '1.2.1'
s.add_development_dependency 'minitest', '5.17.0'
s.add_development_dependency 'rake-compiler', '1.2.7'
s.add_development_dependency 'minitest', '5.22.3'
s.add_development_dependency 'simplecov', '0.22.0'
s.add_development_dependency 'rubocop', '1.45.1'
s.add_development_dependency 'rubocop', '1.62.1'
s.add_development_dependency 'pry', '0.14.2'

s.add_development_dependency 'msgpack', '1.6.0'
s.add_development_dependency 'msgpack', '1.7.2'
s.add_development_dependency 'httparty', '0.21.0'
s.add_development_dependency 'localhost', '1.1.10'
s.add_development_dependency 'debug', '1.8.0'
s.add_development_dependency 'benchmark-ips', '2.10.0'
s.add_development_dependency 'localhost', '1.2.0'
s.add_development_dependency 'debug', '1.9.1'
s.add_development_dependency 'benchmark-ips', '2.13.0'

# FIXME: remove gems when all other dependencies have bundled them (not part of stdlib since Ruby 3.4)
s.add_development_dependency 'base64', '0.2.0'
s.add_development_dependency 'bigdecimal', '3.1.7'
s.add_development_dependency 'csv', '3.3.0'
s.add_development_dependency 'mutex_m', '0.2.0'
end
1 change: 1 addition & 0 deletions test/helper.rb
Expand Up @@ -11,6 +11,7 @@
require_relative './eg'

require 'minitest/autorun'
require 'minitest/unit'

::Exception.__disable_sanitized_backtrace__ = true

Expand Down