ifuture 0.3.3 → 0.3.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +7 -8
- data/ifuture.gemspec +0 -1
- data/lib/ifuture/version.rb +1 -1
- metadata +3 -17
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 55844d1b4d6b1f6ba99eaad9fe13e9531d76f0ce
|
4
|
+
data.tar.gz: d39740ea924e54fd21ceb9308d43c5347125ab80
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b31e7a0d69ba207aa5fdf9050c820e2f1f41628cc26fb84bdb5b51c8f2b72b344ad734cc866beb030d2ad0aceedd9bcbc3b3ff9d0b2aa81a2c2ebca7b8f905ec
|
7
|
+
data.tar.gz: 4ba09a0fe1a1275c84bbc60871e4011a7e03a37945aae271359ba45118ed32e25b1d1a3f404facaa7fbd42e9aae3493478444d855436e19a9c70d1117354791e
|
data/README.md
CHANGED
@@ -2,7 +2,13 @@
|
|
2
2
|
[![Build Status](https://secure.travis-ci.org/havenwood/ifuture.png?branch=master)](http://travis-ci.org/havenwood/ifuture)
|
3
3
|
[![Code Climate](https://codeclimate.com/badge.png)](https://codeclimate.com/github/havenwood/ifuture)
|
4
4
|
|
5
|
-
|
5
|
+
## Deprecation Notice
|
6
|
+
|
7
|
+
### THIS GEM IS DEPRECATED!
|
8
|
+
|
9
|
+
ifuture was implemented with the no-longer-supported ichannel gem for interprocess communication over either a Unix Socket or Redis. Futures can be implemented more elegantly and with less overhead by intraprocess communication with a GVL-less Ruby like [JRuby](https://github.com/jruby/jruby#readme), [Rubinius](https://github.com/rubinius/rubinius#readme) or Ruby 3+.
|
10
|
+
|
11
|
+
ifuture uses processes forking rather than threads. This allows parallelism with early versions of MRI without the GVL blocking as it might with threads. Run your code in another process and get the result back later!
|
6
12
|
|
7
13
|
The Future starts running right away, but isn't blocking because it runs in its own forked process and uses ichannel to communicate with the parent process. If the value is asked for and it is ready, it will be returned right away. If the value is asked for early, the Future blocks until delivery.
|
8
14
|
|
@@ -55,10 +61,3 @@ future = IFuture.redis Marshal, {host: 'localhost', key: 'readme'} do
|
|
55
61
|
end
|
56
62
|
future.value #=> 42
|
57
63
|
```
|
58
|
-
|
59
|
-
## Contributing
|
60
|
-
|
61
|
-
1. Fork it
|
62
|
-
2. Commit your changes
|
63
|
-
3. Create a pull request
|
64
|
-
4. :cake:
|
data/ifuture.gemspec
CHANGED
data/lib/ifuture/version.rb
CHANGED
metadata
CHANGED
@@ -1,29 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ifuture
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Shannon Skipper
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2015-03-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: ichannel
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 8.1.0
|
20
|
-
type: :development
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: 8.1.0
|
27
13
|
- !ruby/object:Gem::Dependency
|
28
14
|
name: minitest
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -104,7 +90,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
104
90
|
version: '0'
|
105
91
|
requirements: []
|
106
92
|
rubyforge_project:
|
107
|
-
rubygems_version: 2.
|
93
|
+
rubygems_version: 2.4.6
|
108
94
|
signing_key:
|
109
95
|
specification_version: 4
|
110
96
|
summary: A Futures gem for Ruby implemented with IChannel for interprocess communication
|