All Versions
31
Latest Version
Avg Release Cycle
103 days
Latest Release
1048 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v1.1.0 Changes
October 31, 2018๐ concurrent-ruby:
- ๐ requires at least Ruby 2.0
- ๐ Promises
๐ are moved fromconcurrent-ruby-edge
toconcurrent-ruby
- โ Add support for TruffleRuby
- (#734) Fix Array/Hash/Set construction broken on TruffleRuby
- AtomicReference fixed
- ๐ fixed documentation and README links
- ๐ fix Set for TruffleRuby and Rubinius
- CI stabilization
- โ remove sharp dependency edge -> core
- โ remove warnings
- ๐ documentation updates
- Exchanger is no longer documented as edge since it was already available in
๐concurrent-ruby
- ๐ (#644) Fix Map#each and #each_pair not returning enumerator outside of MRI
- ๐ (#659) Edge promises fail during error handling
- ๐ (#741) Raise on recursive Delay#value call
- ๐ (#727) #717 fix global IO executor on JRuby
- ๐ (#740) Drop support for CRuby 1.9, JRuby 1.7, Rubinius.
- ๐ (#737) Move AtomicMarkableReference out of Edge
- ๐ (#708) Prefer platform specific memory barriers
- ๐ (#735) Fix wrong expected exception in channel spec assertion
- ๐ (#729) Allow executor option in
Promise#then
- ๐ (#725) fix timeout check to use timeout_interval
- โก๏ธ (#719) update engine detection
- ๐ (#660) Add specs for Promise#zip/Promise.zip ordering
- ๐ (#654) Promise.zip execution changes
- ๐ (#666) Add thread safe set implementation
- ๐ (#651) #699 #to_s, #inspect should not output negative object IDs.
- โ (#685) Avoid RSpec warnings about raise_error
- ๐ (#680) Avoid RSpec monkey patching, persist spec results locally, use RSpec
v3.7.0 - ๐ (#665) Initialize the monitor for new subarrays on Rubinius
- ๐ (#661) Fix error handling in edge promises
๐ concurrent-ruby-edge:
- ๐ (#659) Edge promises fail during error handling
- Edge files clearly separated in
lib-edge
- โ added ReInclude
- add Promises.zip_futures_over_on
-
v1.1.0.pre2 Changes
September 18, 2018๐ concurrent-ruby:
- ๐ fixed documentation and README links
- ๐ fix Set for TruffleRuby and Rubinius
- ๐ use properly supported TruffleRuby APIs
๐ concurrent-ruby-edge:
- add Promises.zip_futures_over_on
-
v1.1.0.pre1 Changes
August 15, 2018๐ concurrent-ruby:
- ๐ requires at least Ruby 2.0
- ๐ Promises
are moved from
concurrent-ruby-edge
toconcurrent-ruby
- โ Add support for TruffleRuby
- (#734) Fix Array/Hash/Set construction broken on TruffleRuby
- AtomicReference fixed
- CI stabilization
- โ remove sharp dependency edge -> core
- โ remove warnings
- ๐ documentation updates
- Exchanger is no longer documented as edge since it was already available in
concurrent-ruby
- (#644) Fix Map#each and #each_pair not returning enumerator outside of MRI
- (#659) Edge promises fail during error handling
- (#741) Raise on recursive Delay#value call
- ๐ (#727) #717 fix global IO executor on JRuby
- ๐ (#740) Drop support for CRuby 1.9, JRuby 1.7, Rubinius.
- ๐ (#737) Move AtomicMarkableReference out of Edge
- (#708) Prefer platform specific memory barriers
- ๐ป (#735) Fix wrong expected exception in channel spec assertion
- (#729) Allow executor option in
Promise#then
- โฑ (#725) fix timeout check to use timeout_interval
- โก๏ธ (#719) update engine detection
- (#660) Add specs for Promise#zip/Promise.zip ordering
- (#654) Promise.zip execution changes
- (#666) Add thread safe set implementation
- (#651) #699 #to_s, #inspect should not output negative object IDs.
- โ (#685) Avoid RSpec warnings about raise_error
- (#680) Avoid RSpec monkey patching, persist spec results locally, use RSpec v3.7.0
- (#665) Initialize the monitor for new subarrays on Rubinius
- (#661) Fix error handling in edge promises
๐ concurrent-ruby-edge:
- (#659) Edge promises fail during error handling
- Edge files clearly separated in
lib-edge
- โ added ReInclude
-
v1.0.5 Changes
February 26, 2017๐ concurrent-ruby:
- ๐ Documentation for Event and Semaphore
- ๐ Use Unsafe#fullFence and #loadFence directly since the shortcuts were removed in JRuby
- ๐ Do not depend on org.jruby.util.unsafe.UnsafeHolder
๐ concurrent-ruby-edge:
- (#620) Actors on Pool raise an error
- (#624) Delayed promises did not interact correctly with flatting
- Fix arguments yielded by callback methods
- 0๏ธโฃ Overridable default executor in promises factory methods
- Asking actor to terminate will always resolve to
true
-
v1.0.4 Changes
December 27, 2016๐ concurrent-ruby:
- Nothing
๐ concurrent-ruby-edge:
- ๐ New promises' API renamed, lots of improvements, edge bumped to 0.3.0
- Incompatible with previous 0.2.3 version
- see https://github.com/ruby-concurrency/concurrent-ruby/pull/522
-
v1.0.3 Changes
December 17, 2016- Trigger execution of flattened delayed futures
- Avoid forking for processor_count if possible
- ๐ Semaphore Mutex and JRuby parity
- โ Adds Map#each as alias to Map#each_pair
- ๐ Fix uninitialized instance variables
- ๐ Make Fixnum, Bignum merger ready
- ๐ Allows Promise#then to receive an executor
- TimerSet now survives a fork
- ๐ป Reject promise on any exception
- ๐ Allow ThreadLocalVar to be initialized with a block
- ๐ Support Alpha with
Concurrent::processor_count
- Fixes format-security error when compiling ruby_193_compatible.h
- ๐ Concurrent::Atom#swap fixed: reraise the exceptions from block
-
v1.0.2 Changes
May 02, 2016- ๐ Fix bug with
Concurrent::Map
MRI backend#inspect
method - ๐ Fix bug with
Concurrent::Map
MRI backend usingHash#value?
- ๐ Improved documentation and examples
- โก๏ธ Minor updates to Edge
- ๐ Fix bug with
-
v1.0.1 Changes
February 27, 2016- ๐ Fix "uninitialized constant Concurrent::ReentrantReadWriteLock" error.
- ๐ Better handling of
autoload
vs.require
. - ๐ Improved API for Edge
Future
zipping. - ๐ Fix reference leak in Edge
Future
constructor . - ๐ Fix bug which prevented thread pools from surviving a
fork
. - ๐ Fix bug in which
TimerTask
did not correctly specify all its dependencies. - ๐ Improved support for JRuby+Truffle
- ๐ Improved error messages.
- ๐ Improved documentation.
- โก๏ธ Updated README and CONTRIBUTING.
-
v1.0.0 Changes
November 13, 2015- Rename
attr_volatile_with_cas
toattr_atomic
- โ Add
clear_each
toLockFreeStack
- ๐ Update
AtomicReference
documentation - โก๏ธ Further updates and improvements to the synchronization layer.
- ๐ Performance and memory usage performance with
Actor
logging. - ๐ Fixed
ThreadPoolExecutor
task count methods. - ๐ Improved
Async
performance for both short and long-lived objects. - ๐ Fixed bug in
LockFreeLinkedSet
. - ๐ Fixed bug in which
Agent#await
triggered a validation failure. - โก๏ธ Further
Channel
updates. - Adopted a project Code of Conduct
- โ Cleared interpreter warnings
- ๐ Fixed bug in
ThreadPoolExecutor
task count methods - ๐ Fixed bug in 'LockFreeLinkedSet'
- ๐ Improved Java extension loading
- ๐ป Handle Exception children in Edge::Future
- Continued improvements to channel
- โ Removed interpreter warnings.
- Shared constants now in
lib/concurrent/constants.rb
- ๐จ Refactored many tests.
- ๐ Improved synchronization layer/memory model documentation.
- ๐ Bug fix in Edge
Future#flat
- Brand new
Channel
implementation in Edge gem. - ๐ Simplification of
RubySingleThreadExecutor
Async
improvements- Each object uses its own
SingleThreadExecutor
instead of the global thread pool. - No longers supports executor injection
- Much better documentation
- Each object uses its own
- โก๏ธ
Atom
updates- No longer
Dereferenceable
- Now
Observable
- Added a
#reset
method
- No longer
- Brand new
Agent
API and implementation. Now functionally equivalent to Clojure. - ๐ Continued improvements to the synchronization layer
- ๐ Merged in the
thread_safe
gemConcurrent::Array
Concurrent::Hash
Concurrent::Map
(formerly ThreadSafe::Cache)Concurrent::Tuple
- Minor improvements to Concurrent::Map
- Complete rewrite of
Exchanger
- โ Removed all deprecated code (classes, methods, constants, etc.)
- โก๏ธ Updated Agent, MutexAtomic, and BufferedChannel to inherit from Synchronization::Object.
- โ Many improved tests
- Some internal reorganization
- Rename
-
v0.9.1 Changes
August 09, 2015- ๐ Fixed a Rubiniux bug in synchronization object
- ๐ Fixed all interpreter warnings (except circular references)
- ๐ Fixed require statements when requiring
Atom
alone - ๐ Significantly improved
ThreadLocalVar
on non-JRuby platforms - ๐ Fixed error handling in Edge
Concurrent.zip
- ๐
AtomicFixnum
methods#increment
and#decrement
now support optional delta - ๐ New
AtomicFixnum#update
method - Minor optimizations in
ReadWriteLock
- ๐ New
ReentrantReadWriteLock
class ThreadLocalVar#bind
method is now public- ๐จ Refactored many tests