riser 0.1.15 → 0.2.0

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: '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