polyphony 0.70 → 0.71

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: 65be64df5933c24a4afb38b24c139213dcc71a7fbde7689c46c862d7bb04eef3
4
- data.tar.gz: 3feec6f48ea17b15468790c91a790438d163b1d905d5ef6c7a2ffd6d3e47bac8
3
+ metadata.gz: 36566e2f3d8ca8535569ec2766183295a6b17f3af67123a6442242881b004ef8
4
+ data.tar.gz: d38059a39ce762cb043c68374829050b6abd4596fc900f68d24120e843efa9db
5
5
  SHA512:
6
- metadata.gz: 3417d863dcd7e99c3123fbc81923627a77c6a5b45ed20d6e84148eabb945ecb38f429873be01fc53d5c35f36a225045c42e51b2c36f543fb3539ebc7d91f8bcf
7
- data.tar.gz: be39ff1ec9616998fc2a5df0bd9af368687e3424cf4b97776466e803624953440bbf75fc166cd273f8f3d4502eefee4a13283c4129c3ed02113cc2015d314428
6
+ metadata.gz: 4d85656e6ca42458d262433bed6817e6fe5d60b194fddce269fae9ab9d479a7167b3460ac01cdb3c3018d9e3bf3b61ea5560aa2f186dedb841ac81dec311ffb5
7
+ data.tar.gz: 6db9f437744ece1eeae09c738ac31172439472acd21e8956e75defbdf4b113b5fd61e04ff73ef9f29046b54baf44e0064350b6c04df9883c34b16efd9bad35e1
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## 0.71 2021-08-20
2
+
3
+ - Fix compilation on Ruby 3.0
4
+
1
5
  ## 0.70 2021-08-19
2
6
 
3
7
  - New implementation for `#supervise`
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- polyphony (0.70)
4
+ polyphony (0.71)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -75,4 +75,4 @@ DEPENDENCIES
75
75
  simplecov (= 0.17.1)
76
76
 
77
77
  BUNDLED WITH
78
- 2.2.3
78
+ 2.2.26
@@ -1526,10 +1526,6 @@ void Init_Backend() {
1526
1526
  rb_define_method(cBackend, "waitpid", Backend_waitpid, 1);
1527
1527
  rb_define_method(cBackend, "write", Backend_write_m, -1);
1528
1528
 
1529
- #ifdef POLYPHONY_UNSET_NONBLOCK
1530
- ID_ivar_is_nonblocking = rb_intern("@is_nonblocking");
1531
- #endif
1532
-
1533
1529
  SYM_io_uring = ID2SYM(rb_intern("io_uring"));
1534
1530
  SYM_send = ID2SYM(rb_intern("send"));
1535
1531
  SYM_splice = ID2SYM(rb_intern("splice"));
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Polyphony
4
- VERSION = '0.70'
4
+ VERSION = '0.71'
5
5
  end
data/test/stress.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  count = ARGV[0] ? ARGV[0].to_i : 100
4
4
  test_name = ARGV[1]
5
5
 
6
- $test_cmd = +'ruby test/run.rb'
6
+ $test_cmd = +'ruby test/run.rb --name test_receive_cross_thread_exception'
7
7
  if test_name
8
8
  $test_cmd << " --name #{test_name}"
9
9
  end
data/test/test_fiber.rb CHANGED
@@ -949,6 +949,27 @@ class MailboxTest < MiniTest::Test
949
949
  assert_equal ['foo'] * 100, messages
950
950
  end
951
951
 
952
+ def test_receive_exception
953
+ e = RuntimeError.new 'foo'
954
+ spin { Fiber.current.parent << e }
955
+ r = receive
956
+ assert_equal e, r
957
+
958
+ spin { Fiber.current.parent.schedule e }
959
+ assert_raises(RuntimeError) { receive }
960
+ end
961
+
962
+ def test_receive_cross_thread_exception
963
+ e = RuntimeError.new 'foo'
964
+ f = Fiber.current
965
+ Thread.new { f << e }
966
+ r = receive
967
+ assert_equal e, r
968
+
969
+ Thread.new { f.schedule e }
970
+ assert_raises(RuntimeError) { receive }
971
+ end
972
+
952
973
  def test_receive_all_pending
953
974
  assert_equal [], receive_all_pending
954
975
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: polyphony
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.70'
4
+ version: '0.71'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sharon Rosner
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-19 00:00:00.000000000 Z
11
+ date: 2021-08-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake-compiler
@@ -421,7 +421,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
421
421
  - !ruby/object:Gem::Version
422
422
  version: '0'
423
423
  requirements: []
424
- rubygems_version: 3.1.6
424
+ rubygems_version: 3.1.4
425
425
  signing_key:
426
426
  specification_version: 4
427
427
  summary: Fine grained concurrency for Ruby