delegate 0.3.0 → 0.4.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: 4e866777bc83135233d96ebe09f3d7e4206e6d477afab28095ecf8481c3efde1
4
- data.tar.gz: 3964f37ef7c61538dcc895c5d0cd1b17db828ccda4c46628727852b2462c7b3f
3
+ metadata.gz: 26e783faa009ab88d7d397307819b967c1ee35025e531f634b45bd8ef8b45d08
4
+ data.tar.gz: df1a5706de8e3bfd18d05372b91d490e1c50a6908e98fec857bba923cd7cf9d8
5
5
  SHA512:
6
- metadata.gz: ff7d08ab37f382addb6737c90c3a636694c7ed578ad843615465319c2fdd6d247562a7ee37c46a6124dedd193df61d417928630b925e3279e0d4d5bf2e90c66e
7
- data.tar.gz: 888dc049d92b1dde0fa900e024e1e0921a43be6dbab3685cfbf59abf450ab3d63ed43cec1fffb56b2272d466d2d5fe8dbba13c46044c7082792ce62a188671dd
6
+ metadata.gz: f0a4a912cf47aa19d62a6827bd1db9cb3022659af13a7902a65a890d801c1be8d7558e0c10c36bcc31f5ca27f5252138d61310d8a203eb5eba00519b74ab042b
7
+ data.tar.gz: 248eb7d6cde226b135f984510d1584cb8f1aa94b49b7ce50f59b92401cc54e611c369ba267a4af24104ea88eefd12a42dbf21eb5f93a572b28218d8c45f1f4af
@@ -0,0 +1,46 @@
1
+ name: Publish gem to rubygems.org
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ permissions:
9
+ contents: read
10
+
11
+ jobs:
12
+ push:
13
+ if: github.repository == 'ruby/delegate'
14
+ runs-on: ubuntu-latest
15
+
16
+ environment:
17
+ name: rubygems.org
18
+ url: https://rubygems.org/gems/delegate
19
+
20
+ permissions:
21
+ contents: write
22
+ id-token: write
23
+
24
+ steps:
25
+ - name: Harden Runner
26
+ uses: step-security/harden-runner@91182cccc01eb5e619899d80e4e971d6181294a7 # v2.10.1
27
+ with:
28
+ egress-policy: audit
29
+
30
+ - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4
31
+
32
+ - name: Set up Ruby
33
+ uses: ruby/setup-ruby@a6e6f86333f0a2523ece813039b8b4be04560854 # v1.190.0
34
+ with:
35
+ bundler-cache: true
36
+ ruby-version: ruby
37
+
38
+ - name: Publish to RubyGems
39
+ uses: rubygems/release-gem@612653d273a73bdae1df8453e090060bb4db5f31 # v1
40
+
41
+ - name: Create GitHub release
42
+ run: |
43
+ tag_name="$(git describe --tags --abbrev=0)"
44
+ gh release create "${tag_name}" --verify-tag --generate-notes
45
+ env:
46
+ GITHUB_TOKEN: ${{ secrets.MATZBOT_GITHUB_WORKFLOW_TOKEN }}
@@ -4,14 +4,10 @@ on: [push, pull_request]
4
4
 
5
5
  jobs:
6
6
  ruby-versions:
7
- runs-on: ubuntu-latest
8
- outputs:
9
- versions: ${{ steps.versions.outputs.value }}
10
- steps:
11
- - id: versions
12
- run: |
13
- versions=$(curl -s 'https://cache.ruby-lang.org/pub/misc/ci_versions/cruby.json' | jq -c '. - ["2.7"]')
14
- echo "::set-output name=value::${versions}"
7
+ uses: ruby/actions/.github/workflows/ruby_versions.yml@master
8
+ with:
9
+ engine: cruby
10
+ min_version: 3.0
15
11
  test:
16
12
  needs: ruby-versions
17
13
  name: build (${{ matrix.ruby }} / ${{ matrix.os }})
@@ -21,11 +17,11 @@ jobs:
21
17
  os: [ ubuntu-latest, macos-latest ]
22
18
  runs-on: ${{ matrix.os }}
23
19
  steps:
24
- - uses: actions/checkout@v3
20
+ - uses: actions/checkout@v4
25
21
  - name: Set up Ruby
26
22
  uses: ruby/setup-ruby@v1
27
23
  with:
28
24
  ruby-version: ${{ matrix.ruby }}
29
- bundler-cache: true # 'bundle install' and cache gems
25
+ - run: bundle install --jobs 4 --retry 3
30
26
  - name: Run test
31
27
  run: bundle exec rake test
@@ -4,10 +4,10 @@ Redistribution and use in source and binary forms, with or without
4
4
  modification, are permitted provided that the following conditions
5
5
  are met:
6
6
  1. Redistributions of source code must retain the above copyright
7
- notice, this list of conditions and the following disclaimer.
7
+ notice, this list of conditions and the following disclaimer.
8
8
  2. Redistributions in binary form must reproduce the above copyright
9
- notice, this list of conditions and the following disclaimer in the
10
- documentation and/or other materials provided with the distribution.
9
+ notice, this list of conditions and the following disclaimer in the
10
+ documentation and/or other materials provided with the distribution.
11
11
 
12
12
  THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
13
13
  ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
data/COPYING ADDED
@@ -0,0 +1,56 @@
1
+ Ruby is copyrighted free software by Yukihiro Matsumoto <matz@netlab.jp>.
2
+ You can redistribute it and/or modify it under either the terms of the
3
+ 2-clause BSDL (see the file BSDL), or the conditions below:
4
+
5
+ 1. You may make and give away verbatim copies of the source form of the
6
+ software without restriction, provided that you duplicate all of the
7
+ original copyright notices and associated disclaimers.
8
+
9
+ 2. You may modify your copy of the software in any way, provided that
10
+ you do at least ONE of the following:
11
+
12
+ a. place your modifications in the Public Domain or otherwise
13
+ make them Freely Available, such as by posting said
14
+ modifications to Usenet or an equivalent medium, or by allowing
15
+ the author to include your modifications in the software.
16
+
17
+ b. use the modified software only within your corporation or
18
+ organization.
19
+
20
+ c. give non-standard binaries non-standard names, with
21
+ instructions on where to get the original software distribution.
22
+
23
+ d. make other distribution arrangements with the author.
24
+
25
+ 3. You may distribute the software in object code or binary form,
26
+ provided that you do at least ONE of the following:
27
+
28
+ a. distribute the binaries and library files of the software,
29
+ together with instructions (in the manual page or equivalent)
30
+ on where to get the original distribution.
31
+
32
+ b. accompany the distribution with the machine-readable source of
33
+ the software.
34
+
35
+ c. give non-standard binaries non-standard names, with
36
+ instructions on where to get the original software distribution.
37
+
38
+ d. make other distribution arrangements with the author.
39
+
40
+ 4. You may modify and include the part of the software into any other
41
+ software (possibly commercial). But some files in the distribution
42
+ are not written by the author, so that they are not under these terms.
43
+
44
+ For the list of those files and their copying conditions, see the
45
+ file LEGAL.
46
+
47
+ 5. The scripts and library files supplied as input to or produced as
48
+ output from the software do not automatically fall under the
49
+ copyright of the software, but belong to whomever generated them,
50
+ and may be sold commercially, and may be aggregated with this
51
+ software.
52
+
53
+ 6. THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
54
+ IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
55
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
56
+ PURPOSE.
data/Gemfile CHANGED
@@ -6,4 +6,5 @@ group :development do
6
6
  gem "bundler"
7
7
  gem "rake"
8
8
  gem "test-unit"
9
+ gem "test-unit-ruby-core"
9
10
  end
data/Rakefile CHANGED
@@ -7,11 +7,4 @@ Rake::TestTask.new(:test) do |t|
7
7
  t.test_files = FileList["test/**/test_*.rb"]
8
8
  end
9
9
 
10
- task :sync_tool do
11
- require 'fileutils'
12
- FileUtils.cp "../ruby/tool/lib/core_assertions.rb", "./test/lib"
13
- FileUtils.cp "../ruby/tool/lib/envutil.rb", "./test/lib"
14
- FileUtils.cp "../ruby/tool/lib/find_executable.rb", "./test/lib"
15
- end
16
-
17
10
  task :default => :test
data/delegate.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  name = File.basename(__FILE__, ".gemspec")
4
- version = ["lib", Array.new(name.count("-")+1, "..").join("/")].find do |dir|
4
+ version = ["lib", Array.new(name.count("-")+1, ".").join("/")].find do |dir|
5
5
  break File.foreach(File.join(__dir__, dir, "#{name.tr('-', '/')}.rb")) do |line|
6
6
  /^\s*VERSION\s*=\s*"(.*)"/ =~ line and break $1
7
7
  end rescue nil
@@ -22,8 +22,8 @@ Gem::Specification.new do |spec|
22
22
  spec.metadata["source_code_uri"] = spec.homepage
23
23
 
24
24
  spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
25
- `git ls-files -z 2>/dev/null`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
25
+ `git ls-files -z 2>#{IO::NULL}`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
26
26
  end
27
27
  spec.require_paths = ["lib"]
28
- spec.required_ruby_version = '>= 2.7'
28
+ spec.required_ruby_version = '>= 3.0'
29
29
  end
data/lib/delegate.rb CHANGED
@@ -39,7 +39,7 @@
39
39
  # Be advised, RDoc will not detect delegated methods.
40
40
  #
41
41
  class Delegator < BasicObject
42
- VERSION = "0.3.0"
42
+ VERSION = "0.4.0"
43
43
 
44
44
  kernel = ::Kernel.dup
45
45
  kernel.class_eval do
@@ -186,7 +186,7 @@ class Delegator < BasicObject
186
186
  # method calls are being delegated to.
187
187
  #
188
188
  def __getobj__
189
- __raise__ ::NotImplementedError, "need to define `__getobj__'"
189
+ __raise__ ::NotImplementedError, "need to define '__getobj__'"
190
190
  end
191
191
 
192
192
  #
@@ -194,7 +194,7 @@ class Delegator < BasicObject
194
194
  # to _obj_.
195
195
  #
196
196
  def __setobj__(obj)
197
- __raise__ ::NotImplementedError, "need to define `__setobj__'"
197
+ __raise__ ::NotImplementedError, "need to define '__setobj__'"
198
198
  end
199
199
 
200
200
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: delegate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yukihiro Matsumoto
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-05 00:00:00.000000000 Z
11
+ date: 2024-11-07 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Provides three abilities to delegate method calls to an object.
14
14
  email:
@@ -18,10 +18,12 @@ extensions: []
18
18
  extra_rdoc_files: []
19
19
  files:
20
20
  - ".github/dependabot.yml"
21
+ - ".github/workflows/push_gem.yml"
21
22
  - ".github/workflows/test.yml"
22
23
  - ".gitignore"
24
+ - BSDL
25
+ - COPYING
23
26
  - Gemfile
24
- - LICENSE.txt
25
27
  - README.md
26
28
  - Rakefile
27
29
  - bin/console
@@ -35,7 +37,7 @@ licenses:
35
37
  metadata:
36
38
  homepage_uri: https://github.com/ruby/delegate
37
39
  source_code_uri: https://github.com/ruby/delegate
38
- post_install_message:
40
+ post_install_message:
39
41
  rdoc_options: []
40
42
  require_paths:
41
43
  - lib
@@ -43,15 +45,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
43
45
  requirements:
44
46
  - - ">="
45
47
  - !ruby/object:Gem::Version
46
- version: '2.7'
48
+ version: '3.0'
47
49
  required_rubygems_version: !ruby/object:Gem::Requirement
48
50
  requirements:
49
51
  - - ">="
50
52
  - !ruby/object:Gem::Version
51
53
  version: '0'
52
54
  requirements: []
53
- rubygems_version: 3.4.0.dev
54
- signing_key:
55
+ rubygems_version: 3.5.11
56
+ signing_key:
55
57
  specification_version: 4
56
58
  summary: Provides three abilities to delegate method calls to an object.
57
59
  test_files: []