riser 0.1.15 → 0.2.0

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: '08ceaae9e40d1be3c20b7391802ec72706387dd4d824eb6b505e68ecfefcd83f'
4
- data.tar.gz: 2f127d9e35fe177b80f9b0098438353b0664e59300057dc9eac9b60c4bc7f871
3
+ metadata.gz: 750e1f8713d2e921c27e53013b4d3c62344423ee84a2f16550cf81fc8beeceeb
4
+ data.tar.gz: c241cff263ce3b2f0dbb66d099bcb206ad2ebdcca5f5530f14722463305d46cd
5
5
  SHA512:
6
- metadata.gz: bd71a9270a3e99b142f92a2b47dc9c59ccc729a457a5de4f10afd989ff01fb672705926918c0ed8df529240297ada597c4ec5608b88b2af44cbb7d88f19bc0ef
7
- data.tar.gz: 9137d6e053db3d5198108d5dac2cfc040d183448e26b02663a419b0acde2c684c6aebdeead4e2a09d1a0e4ee4be2753d8831383ee7a2ebcd8482b9741f76c7ba
6
+ metadata.gz: 85211342b782d8bcecfea766fbdd9280c4a25caee687102e2ecf5900e8c4e2bc34924c1c7d59b3cb91b9fc451ef409840f52ff5485bea6b6973e60fd6e5c0c07
7
+ data.tar.gz: 2d54a51fbf817af15c5db9c790f17f51d237b3041a50945e83787320a06196d2ff6cddfefb1b2a1055a768488ed7460858ae2a43a9a75daa6f1ca4832d3fb6fa
data/.gitignore CHANGED
@@ -8,6 +8,8 @@
8
8
  /tmp/
9
9
  /vendor/
10
10
  /Gemfile.lock
11
+ /README.html
12
+ /CHANGELOG.html
11
13
  *~
12
14
  *.log
13
15
  *.pid
@@ -0,0 +1,115 @@
1
+ Change Log
2
+ ==========
3
+
4
+ <!--
5
+ subsections:
6
+ ### Added
7
+ ### Changed
8
+ ### Removed
9
+ ### Fixed
10
+ -->
11
+
12
+ 0.2.0
13
+ -----
14
+ Released on 2020-02-13.
15
+
16
+ ### Added
17
+ - Added changelog.
18
+ [#10](https://github.com/y10k/riser/issues/10)
19
+
20
+ ### Changed
21
+ - Changed to semantic versioning.
22
+ [#7](https://github.com/y10k/riser/issues/7)
23
+
24
+ ### Fixed
25
+ - Suppressed warnings on Ruby 2.7.
26
+ [#8](https://github.com/y10k/riser/issues/8)
27
+ - Arguments forwarding compatible with Ruby 2.6 and 2.7.
28
+ [#9](https://github.com/y10k/riser/issues/9)
29
+
30
+ 0.1.15
31
+ ------
32
+ Released on 2019-12-11.
33
+
34
+ ### Fixed
35
+ - In Ruby 2.6, to avoid converting keyword arguments to Hash on
36
+ stream's gets method.
37
+ [89dc97cd](https://github.com/y10k/riser/commit/89dc97cd7baa48d992c6d15d8a05d4a10bc9b351)
38
+
39
+ 0.1.14
40
+ ------
41
+ Released on 2019-12-10.
42
+
43
+ ### Added
44
+ - Stream's gets method may take optional arguments.
45
+ [#6](https://github.com/y10k/riser/issues/6)
46
+
47
+ 0.1.13
48
+ ------
49
+ Released on 2019-11-19.
50
+
51
+ ### Fixed
52
+ - Make tags not missing on read operations of wrapped stream.
53
+ [30918d4c](https://github.com/y10k/riser/commit/30918d4c8a72bdb04aba4fc7b68ecc7e88ea4eee)
54
+
55
+ 0.1.12
56
+ ------
57
+ Released on 2019-11-15.
58
+
59
+ ### Added
60
+ - Logging I/O operations with readable tag.
61
+ [#4](https://github.com/y10k/riser/issues/4)
62
+ - Umask(2) for security.
63
+ [#5](https://github.com/y10k/riser/issues/5)
64
+
65
+ 0.1.11
66
+ ------
67
+ Released on 2019-08-08.
68
+
69
+ ### Added
70
+ - Add optional DRb server configuration to DRb services.
71
+ [#3](https://github.com/y10k/riser/issues/3)
72
+
73
+ 0.1.10
74
+ ------
75
+ Released on 2019-07-04.
76
+
77
+ 0.1.9
78
+ -----
79
+ Released on 2019-06-09.
80
+
81
+ 0.1.8
82
+ -----
83
+ Released on 2019-04-14.
84
+
85
+ 0.1.7
86
+ -----
87
+ Released on 2019-04-01.
88
+
89
+ 0.1.6
90
+ -----
91
+ Released on 2019-03-17.
92
+
93
+ 0.1.5
94
+ -----
95
+ Released on 2019-03-01.
96
+
97
+ 0.1.4
98
+ -----
99
+ Released on 2019-02-22.
100
+
101
+ 0.1.3
102
+ -----
103
+ Released on 2019-02-16.
104
+
105
+ 0.1.2
106
+ -----
107
+ Released on 2019-02-09.
108
+
109
+ 0.1.1
110
+ -----
111
+ Released on 2019-02-06.
112
+
113
+ 0.1.0
114
+ -----
115
+ Released on 2019-02-06.
data/Rakefile CHANGED
@@ -17,14 +17,18 @@ Rake::RDocTask.new do |rd|
17
17
  rd.rdoc_files.include('lib/**/*.rb')
18
18
  end
19
19
 
20
+ rule '.html' => '.md' do |t|
21
+ sh "pandoc --from=markdown --to=html5 --standalone --self-contained --css=$HOME/.pandoc/github.css --output=#{t.name} #{t.source}"
22
+ end
23
+
20
24
  desc 'Build README.html from markdown source'
21
25
  task :readme => %w[ README.html ]
22
-
23
- file 'README.html' => [ 'README.md' ] do
24
- sh "pandoc --from=markdown --to=html5 --standalone --self-contained --css=$HOME/.pandoc/github.css --output=README.html README.md"
25
- end
26
26
  CLOBBER.include 'README.html'
27
27
 
28
+ desc 'Build CHANGELOG.html from markdown source'
29
+ task :changelog => %w[ CHANGELOG.html ]
30
+ CLOBBER.include 'CHANGELOG.html'
31
+
28
32
  # Local Variables:
29
33
  # mode: Ruby
30
34
  # indent-tabs-mode: nil
@@ -1,5 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
 
3
+ require 'anytick'
3
4
  require 'delegate'
4
5
  require 'drb'
5
6
  require 'forwardable'
@@ -96,13 +97,16 @@ module Riser
96
97
  end
97
98
 
98
99
  module DelegateUnrefAlias
99
- def method_missing(name, *args, &block)
100
- if (@unref_alias_set.include? name.to_sym) then
101
- __unref__
102
- else
103
- super
104
- end
105
- end
100
+ extend Anytick.rule(Anytick::DefineMethod)
101
+
102
+ `def method_missing(name, [...])
103
+ if (@unref_alias_set.include? name.to_sym) then
104
+ __unref__
105
+ else
106
+ super
107
+ end
108
+ end
109
+ `
106
110
 
107
111
  def respond_to_missing?(name, include_private)
108
112
  if (@unref_alias_set.include? name.to_sym) then
@@ -621,8 +621,8 @@ module Riser
621
621
  def_delegator :@server, :detach, :detach_server # for forked child process
622
622
  def_delegator :@server, :stop, :stop_server
623
623
 
624
- def start_client(*args)
625
- @call.start(*args, config: @client_config)
624
+ def start_client(*args, **kw_args)
625
+ @call.start(*args, **kw_args, config: @client_config)
626
626
  end
627
627
 
628
628
  def_delegators :@call, :get_service, :call_service, :[]
@@ -1,9 +1,11 @@
1
1
  # -*- coding: utf-8 -*-
2
2
 
3
+ require 'anytick'
3
4
  require 'digest'
4
5
 
5
6
  module Riser
6
7
  class Stream
8
+ extend Anytick.rule(Anytick::DefineMethod)
7
9
  using CompatibleStringIO
8
10
 
9
11
  def initialize(io)
@@ -14,13 +16,11 @@ module Riser
14
16
  @io.to_io
15
17
  end
16
18
 
17
- def gets(*args, **kw_args)
18
- if (kw_args.empty?) then
19
- @io.gets(*args) # to avoid converting keyword arguments to Hash in Ruby 2.6
20
- else
21
- @io.gets(*args, **kw_args)
22
- end
23
- end
19
+ # compatible with Ruby 2.6 and 2.7
20
+ `def gets(...)
21
+ @io.gets(...)
22
+ end
23
+ `
24
24
 
25
25
  def read(size)
26
26
  @io.read(size)
@@ -110,11 +110,13 @@ module Riser
110
110
  @logger.debug("#{@tag} start") if @logger.debug?
111
111
  end
112
112
 
113
- def gets(*args, **kw_args)
114
- line = super
115
- @logger.info("#{@tag} r #{line.inspect}") if @logger.info?
116
- line
117
- end
113
+ # compatible with Ruby 2.6 and 2.7
114
+ `def gets(...)
115
+ line = super
116
+ @logger.info("\#{@tag} r \#{line.inspect}") if @logger.info?
117
+ line
118
+ end
119
+ `
118
120
 
119
121
  def read(size)
120
122
  data = super
@@ -1,7 +1,7 @@
1
1
  # -*- coding: utf-8 -*-
2
2
 
3
3
  module Riser
4
- VERSION = '0.1.15'.freeze
4
+ VERSION = '0.2.0'.freeze
5
5
  end
6
6
 
7
7
  # Local Variables:
@@ -26,6 +26,7 @@ Gem::Specification.new do |spec|
26
26
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
27
27
  spec.require_paths = ['lib']
28
28
 
29
+ spec.add_runtime_dependency 'anytick', '>= 0.2.0'
29
30
  spec.add_development_dependency 'bundler'
30
31
  spec.add_development_dependency 'rake'
31
32
  spec.add_development_dependency 'test-unit'
metadata CHANGED
@@ -1,15 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: riser
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.15
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - TOKI Yoshinori
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-12-11 00:00:00.000000000 Z
11
+ date: 2020-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: anytick
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.2.0
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 0.2.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: bundler
15
29
  requirement: !ruby/object:Gem::Requirement
@@ -90,6 +104,7 @@ extensions: []
90
104
  extra_rdoc_files: []
91
105
  files:
92
106
  - ".gitignore"
107
+ - CHANGELOG.md
93
108
  - Gemfile
94
109
  - LICENSE.txt
95
110
  - README.md
@@ -140,7 +155,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
140
155
  - !ruby/object:Gem::Version
141
156
  version: '0'
142
157
  requirements: []
143
- rubygems_version: 3.0.3
158
+ rubygems_version: 3.1.2
144
159
  signing_key:
145
160
  specification_version: 4
146
161
  summary: Riser is a library of Ruby Infrastructure for cooperative multi-thread/multi-process