concurrent-ruby-ext 1.1.3-x64-mingw32 → 1.1.7-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: abd4f6bce88ff54781b83c3bdfaa62705bcb03a79493c55c36c7eec8a386333b
4
- data.tar.gz: 9943999a47c30f6e7c1a714dff074ab7211ae300d5886dda9767cdb3e1d7115c
3
+ metadata.gz: b21d443382fcf5e4acbe7b8dc290cf9a6f3be4b2027f8e8a87664cf8335a4ad5
4
+ data.tar.gz: 924b73adcb56e09877cb6ff1da72f02f44ced70ec67c4d3a1bf7d14742756393
5
5
  SHA512:
6
- metadata.gz: 7cde6b5dc86ffa62f0d9fbf04e9cacf873cbf1e53525dd6879cd83a0d74ccd08597f07a2f8fbbe58fa1c3645945a857f6412795185ca992a09665a5f4e0a9d73
7
- data.tar.gz: 15d31cbbbc9652a24be9eee7aa0d18b1753268c6742e26a1370856f6a9631b33a363b05791619b8bb8a7797c18f8259a79de7ebec3db83c62d068592b105e314
6
+ metadata.gz: df83accf36dc81f4b8a3307018bcade553eec77d330c8bb815ad33d5753e0dc99cf736fc57ccef13c309f931bb0b9fe36f264458cd53c0acc7e47db97e562b6f
7
+ data.tar.gz: 7e0ea2d469c3f90fc227a68aec0b07cbbbee6e09a96ed33bfaf5b2e0b1fe90a1f8ed460995138446fd4d2cace4d4e360a09f69d206254ab5ed2213de65bd8a4a
@@ -1,5 +1,56 @@
1
1
  ## Current
2
2
 
3
+ ## Release v1.1.7 (6 August 2020)
4
+
5
+ concurrent-ruby:
6
+
7
+ * (#879) Consider falsy value on `Concurrent::Map#compute_if_absent` for fast non-blocking path
8
+ * (#876) Reset Async queue on forking, makes Async fork-safe
9
+ * (#856) Avoid running problematic code in RubyThreadLocalVar on MRI that occasionally results in segfault
10
+ * (#853) Introduce ThreadPoolExecutor without a Queue
11
+
12
+ ## Release v1.1.6, edge v0.6.0 (10 Feb 2020)
13
+
14
+ concurrent-ruby:
15
+
16
+ * (#841) Concurrent.disable_at_exit_handlers! is no longer needed and was deprecated.
17
+ * (#841) AbstractExecutorService#auto_terminate= was deprecated and has no effect.
18
+ Set :auto_terminate option instead when executor is initialized.
19
+
20
+ ## Release v1.1.6.pre1, edge v0.6.0.pre1 (26 Jan 2020)
21
+
22
+ concurrent-ruby:
23
+
24
+ * (#828) Allow to name executors, the name is also used to name their threads
25
+ * (#838) Implement #dup and #clone for structs
26
+ * (#821) Safer finalizers for thread local variables
27
+ * Documentation fixes
28
+ * (#814) Use Ruby's Etc.nprocessors if available
29
+ * (#812) Fix directory structure not to mess with packaging tools
30
+ * (#840) Fix termination of pools on JRuby
31
+
32
+ concurrent-ruby-edge:
33
+
34
+ * Add WrappingExecutor (#830)
35
+
36
+ ## Release v1.1.5, edge v0.5.0 (10 Mar 2019)
37
+
38
+ concurrent-ruby:
39
+
40
+ * fix potential leak of context on JRuby and Java 7
41
+
42
+ concurrent-ruby-edge:
43
+
44
+ * Add finalized Concurrent::Cancellation
45
+ * Add finalized Concurrent::Throttle
46
+ * Add finalized Concurrent::Promises::Channel
47
+ * Add new Concurrent::ErlangActor
48
+
49
+ ## Release v1.1.4 (14 Dec 2018)
50
+
51
+ * (#780) Remove java_alias of 'submit' method of Runnable to let executor service work on java 11
52
+ * (#776) Fix NameError on defining a struct with a name which is already taken in an ancestor
53
+
3
54
  ## Release v1.1.3 (7 Nov 2018)
4
55
 
5
56
  * (#775) fix partial require of the gem (although not officially supported)
@@ -1,23 +1,21 @@
1
- ```
2
1
  Copyright (c) Jerry D'Antonio -- released under the MIT license.
3
2
 
4
- http://www.opensource.org/licenses/mit-license.php
3
+ http://www.opensource.org/licenses/mit-license.php
5
4
 
6
- Permission is hereby granted, free of charge, to any person obtaining a copy
7
- of this software and associated documentation files (the "Software"), to deal
8
- in the Software without restriction, including without limitation the rights
9
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
- copies of the Software, and to permit persons to whom the Software is
11
- furnished to do so, subject to the following conditions:
12
-
13
- The above copyright notice and this permission notice shall be included in
14
- all copies or substantial portions of the Software.
15
-
16
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
22
- THE SOFTWARE.
23
- ```
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/README.md CHANGED
@@ -42,8 +42,8 @@ appreciate your help. Would you like to contribute? Great! Have a look at
42
42
  ## Thread Safety
43
43
 
44
44
  *Concurrent Ruby makes one of the strongest thread safety guarantees of any Ruby concurrency
45
- library, providing consistent behavior and guarantees on all three of the main Ruby interpreters
46
- (MRI/CRuby, JRuby, and Rubinius).*
45
+ library, providing consistent behavior and guarantees on all four of the main Ruby interpreters
46
+ (MRI/CRuby, JRuby, Rubinius, TruffleRuby).*
47
47
 
48
48
  Every abstraction in this library is thread safe. Specific thread safety guarantees are documented
49
49
  with each abstraction.
@@ -59,7 +59,7 @@ Concurrent Ruby is also the only Ruby library which provides a full suite of thr
59
59
  immutable variable types and data structures.
60
60
 
61
61
  We've also initiated discussion to document [memory model](docs-source/synchronization.md) of Ruby which
62
- would provide consistent behaviour and guarantees on all three of the main Ruby interpreters
62
+ would provide consistent behaviour and guarantees on all four of the main Ruby interpreters
63
63
  (MRI/CRuby, JRuby, Rubinius, TruffleRuby).
64
64
 
65
65
  ## Features & Documentation
@@ -105,9 +105,9 @@ We also have a [IRC (gitter)](https://gitter.im/ruby-concurrency/concurrent-ruby
105
105
  Collection classes that were originally part of the (deprecated) `thread_safe` gem:
106
106
 
107
107
  * [Array](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Array.html) A thread-safe
108
- subclass of Ruby's standard [Array](http://ruby-doc.org/core-2.2.0/Array.html).
108
+ subclass of Ruby's standard [Array](http://ruby-doc.org/core/Array.html).
109
109
  * [Hash](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Hash.html) A thread-safe
110
- subclass of Ruby's standard [Hash](http://ruby-doc.org/core-2.2.0/Hash.html).
110
+ subclass of Ruby's standard [Hash](http://ruby-doc.org/core/Hash.html).
111
111
  * [Set](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Set.html) A thread-safe
112
112
  subclass of Ruby's standard [Set](http://ruby-doc.org/stdlib-2.4.0/libdoc/set/rdoc/Set.html).
113
113
  * [Map](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Map.html) A hash-like object
@@ -122,7 +122,7 @@ Value objects inspired by other languages:
122
122
  immutable object representing an optional value, based on
123
123
  [Haskell Data.Maybe](https://hackage.haskell.org/package/base-4.2.0.1/docs/Data-Maybe.html).
124
124
 
125
- Structure classes derived from Ruby's [Struct](http://ruby-doc.org/core-2.2.0/Struct.html):
125
+ Structure classes derived from Ruby's [Struct](http://ruby-doc.org/core/Struct.html):
126
126
 
127
127
  * [ImmutableStruct](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/ImmutableStruct.html)
128
128
  Immutable struct where values are set at construction and cannot be changed later.
@@ -224,6 +224,38 @@ be obeyed though. Features developed in `concurrent-ruby-edge` are expected to m
224
224
  *Status: will be moved to core soon.*
225
225
  * [LockFreeStack](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/LockFreeStack.html)
226
226
  *Status: missing documentation and tests.*
227
+ * [Promises::Channel](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Promises/Channel.html)
228
+ A first in first out channel that accepts messages with push family of methods and returns
229
+ messages with pop family of methods.
230
+ Pop and push operations can be represented as futures, see `#pop_op` and `#push_op`.
231
+ The capacity of the channel can be limited to support back pressure, use capacity option in `#initialize`.
232
+ `#pop` method blocks ans `#pop_op` returns pending future if there is no message in the channel.
233
+ If the capacity is limited the `#push` method blocks and `#push_op` returns pending future.
234
+ * [Cancellation](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Cancellation.html)
235
+ The Cancellation abstraction provides cooperative cancellation.
236
+
237
+ The standard methods `Thread#raise` of `Thread#kill` available in Ruby
238
+ are very dangerous (see linked the blog posts bellow).
239
+ Therefore concurrent-ruby provides an alternative.
240
+
241
+ * <https://jvns.ca/blog/2015/11/27/why-rubys-timeout-is-dangerous-and-thread-dot-raise-is-terrifying/>
242
+ * <http://www.mikeperham.com/2015/05/08/timeout-rubys-most-dangerous-api/>
243
+ * <http://blog.headius.com/2008/02/rubys-threadraise-threadkill-timeoutrb.html>
244
+
245
+ It provides an object which represents a task which can be executed,
246
+ the task has to get the reference to the object and periodically cooperatively check that it is not cancelled.
247
+ Good practices to make tasks cancellable:
248
+ * check cancellation every cycle of a loop which does significant work,
249
+ * do all blocking actions in a loop with a timeout then on timeout check cancellation
250
+ and if ok block again with the timeout
251
+ * [Throttle](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Throttle.html)
252
+ A tool managing concurrency level of tasks.
253
+ * [ErlangActor](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/ErlangActor.html)
254
+ Actor implementation which precisely matches Erlang actor behaviour.
255
+ Requires at least Ruby 2.1 otherwise it's not loaded.
256
+ * [WrappingExecutor](http://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/WrappingExecutor.html)
257
+ A delegating executor which modifies each task before the task is given to
258
+ the target executor it delegates to.
227
259
 
228
260
  ## Supported Ruby versions
229
261
 
@@ -339,11 +371,14 @@ and to the past maintainers
339
371
  * [Paweł Obrok](https://github.com/obrok)
340
372
  * [Lucas Allan](https://github.com/lucasallan)
341
373
 
374
+ and to [Ruby Association](https://www.ruby.or.jp/en/) for sponsoring a project
375
+ ["Enhancing Ruby’s concurrency tooling"](https://www.ruby.or.jp/en/news/20181106) in 2018.
376
+
342
377
  ## License and Copyright
343
378
 
344
379
  *Concurrent Ruby* is free software released under the
345
380
  [MIT License](http://www.opensource.org/licenses/MIT).
346
381
 
347
- The *Concurrent Ruby* [logo](https://github.com/ruby-concurrency/concurrent-ruby/wiki/Logo) was
382
+ The *Concurrent Ruby* [logo](https://raw.githubusercontent.com/ruby-concurrency/concurrent-ruby/master/docs-source/logo/concurrent-ruby-logo-300x300.png) was
348
383
  designed by [David Jones](https://twitter.com/zombyboy). It is Copyright &copy; 2014
349
384
  [Jerry D'Antonio](https://twitter.com/jerrydantonio). All Rights Reserved.
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: concurrent-ruby-ext
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.3
4
+ version: 1.1.7
5
5
  platform: x64-mingw32
6
6
  authors:
7
7
  - Jerry D'Antonio
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2018-11-07 00:00:00.000000000 Z
12
+ date: 2020-08-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: concurrent-ruby
@@ -17,14 +17,14 @@ dependencies:
17
17
  requirements:
18
18
  - - '='
19
19
  - !ruby/object:Gem::Version
20
- version: 1.1.3
20
+ version: 1.1.7
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - '='
26
26
  - !ruby/object:Gem::Version
27
- version: 1.1.3
27
+ version: 1.1.7
28
28
  description: |2
29
29
  C extensions to optimize the concurrent-ruby gem when running under MRI.
30
30
  Please see http://concurrent-ruby.com for more information.
@@ -33,11 +33,11 @@ executables: []
33
33
  extensions: []
34
34
  extra_rdoc_files:
35
35
  - README.md
36
- - LICENSE.md
36
+ - LICENSE.txt
37
37
  - CHANGELOG.md
38
38
  files:
39
39
  - CHANGELOG.md
40
- - LICENSE.md
40
+ - LICENSE.txt
41
41
  - README.md
42
42
  - ext/concurrent-ruby-ext/atomic_boolean.c
43
43
  - ext/concurrent-ruby-ext/atomic_boolean.h
@@ -48,12 +48,12 @@ files:
48
48
  - ext/concurrent-ruby-ext/extconf.rb
49
49
  - ext/concurrent-ruby-ext/rb_concurrent.c
50
50
  - ext/concurrent-ruby-ext/ruby_193_compatible.h
51
- - lib/concurrent/2.0/concurrent_ruby_ext.so
52
- - lib/concurrent/2.1/concurrent_ruby_ext.so
53
- - lib/concurrent/2.2/concurrent_ruby_ext.so
54
- - lib/concurrent/2.3/concurrent_ruby_ext.so
55
- - lib/concurrent/2.4/concurrent_ruby_ext.so
56
- - lib/concurrent/2.5/concurrent_ruby_ext.so
51
+ - lib/concurrent-ruby/concurrent/2.2/concurrent_ruby_ext.so
52
+ - lib/concurrent-ruby/concurrent/2.3/concurrent_ruby_ext.so
53
+ - lib/concurrent-ruby/concurrent/2.4/concurrent_ruby_ext.so
54
+ - lib/concurrent-ruby/concurrent/2.5/concurrent_ruby_ext.so
55
+ - lib/concurrent-ruby/concurrent/2.6/concurrent_ruby_ext.so
56
+ - lib/concurrent-ruby/concurrent/2.7/concurrent_ruby_ext.so
57
57
  homepage: http://www.concurrent-ruby.com
58
58
  licenses:
59
59
  - MIT
@@ -66,18 +66,17 @@ required_ruby_version: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: '2.0'
69
+ version: '2.2'
70
70
  - - "<"
71
71
  - !ruby/object:Gem::Version
72
- version: '2.6'
72
+ version: 2.8.dev
73
73
  required_rubygems_version: !ruby/object:Gem::Requirement
74
74
  requirements:
75
75
  - - ">="
76
76
  - !ruby/object:Gem::Version
77
77
  version: '0'
78
78
  requirements: []
79
- rubyforge_project:
80
- rubygems_version: 2.7.3
79
+ rubygems_version: 3.1.2
81
80
  signing_key:
82
81
  specification_version: 4
83
82
  summary: C extensions to optimize concurrent-ruby under MRI.