ruby-dagger 0.2.1 → 0.4.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: b4815548df0f3403101f979e8ac7be3af0cca871d6d800cd01186c958d2c112f
4
- data.tar.gz: aeb7536387b287e3e7ea9be20c982d90efb022dc5d7487c435a814a8ed3f124f
3
+ metadata.gz: e96ad2b9e0cccf37e4cfcd9e5f0763500ee5f9fd00c3399c5db3f9c67c8ca7d7
4
+ data.tar.gz: e07684eb3c2f122a5f867474e66905a6741cd77be027b70d63986f44bf644e1c
5
5
  SHA512:
6
- metadata.gz: 59d586af2dd28e3a94412b7d160e95eb4de34bbac6864f58231fe82560b5201bbc73b38c57c4596685316f5b1ae66645edddb7a78e8cfea8323d88d3ea9ce047
7
- data.tar.gz: c8c5e006cd4002ea99edd40e81767418333ec0681c9aea39510e41f8cc06a4a070e30d21ffb54e23d069f991fc7c1bcd3d9c493d17de4e45a25a876596e2d61b
6
+ metadata.gz: 7693348df9d63eed6db63ccbab71fa6b47fa16e51d1ef28d9a681eeecfc16874b794eb9040b9c1637e34d00e26f46c8a230c78fcb917f30a4033eb90ab2612a1
7
+ data.tar.gz: 2b4868e3a017cc8b951b5122dc348d43ef542eadb9d9ff5106932a1b1093b3bcc56e257a740c59e242a388762991fa6daaf58eb7fd0543774074a53dba272290
@@ -0,0 +1,37 @@
1
+ %YAML 1.1
2
+ ---
3
+ # This workflow uses actions that are not certified by GitHub.
4
+ # They are provided by a third-party and are governed by
5
+ # separate terms of service, privacy policy, and support
6
+ # documentation.
7
+ # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
8
+ # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
9
+
10
+ name: Ruby
11
+
12
+ on:
13
+ push:
14
+ pull_request:
15
+ branches: [ main ]
16
+
17
+ jobs:
18
+ test:
19
+
20
+ runs-on: ubuntu-latest
21
+ strategy:
22
+ matrix:
23
+ ruby-version: ['2.6', '2.7', '3.0']
24
+
25
+ steps:
26
+ - uses: actions/checkout@v2
27
+ - name: Set up Ruby
28
+ # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
29
+ # change this to (see https://github.com/ruby/setup-ruby#versioning):
30
+ # uses: ruby/setup-ruby@v1
31
+ uses: ruby/setup-ruby@473e4d8fe5dd94ee328fdfca9f8c9c7afc9dae5e
32
+ with:
33
+ ruby-version: ${{ matrix.ruby-version }}
34
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
35
+ - name: Run tests
36
+ run: bundle exec rake
37
+ ...
data/.rubocop.yml CHANGED
@@ -1,5 +1,8 @@
1
+ %YAML 1.1
2
+ ---
1
3
  AllCops:
2
- TargetRubyVersion: 2.3
4
+ TargetRubyVersion: 2.6
5
+ NewCops: enable
3
6
 
4
7
  Metrics/BlockLength:
5
8
  Exclude:
@@ -8,3 +11,13 @@ Metrics/BlockLength:
8
11
  Style/BlockDelimiters:
9
12
  Exclude:
10
13
  - 'spec/*_spec.rb'
14
+
15
+ Style/HashEachMethods:
16
+ Enabled: true
17
+
18
+ Style/HashTransformKeys:
19
+ Enabled: true
20
+
21
+ Style/HashTransformValues:
22
+ Enabled: true
23
+ ...
data/CHANGELOG.md ADDED
@@ -0,0 +1,83 @@
1
+ # Changelog
2
+ All notable changes to this project will be documented in this file.
3
+
4
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
+
7
+ ## [Unreleased]
8
+
9
+
10
+ ## [0.4.0] - 2021-05-30
11
+
12
+ This release updates dependencies, changes the minimum Ruby version to 2.6, and adds support for Ruby version 3.
13
+
14
+ ### Added
15
+
16
+ - Ruby version 3 is now supported.
17
+
18
+ ### Changed
19
+
20
+ - The minimum required Ruby version is now 2.6.
21
+ - Dependencies have been updated.
22
+
23
+
24
+ ## [0.3.3] - 2019-07-22
25
+
26
+ ### Fixed
27
+
28
+ - When using the `_default.key` syntax to fetch to generate default values,
29
+ the prefix was dropped using the `key_tree ~>0.5` api (inherited from
30
+ Array#drop) instead of the proper `key_tree ~>0.6` api that takes the prefix
31
+ to drop.
32
+
33
+
34
+ ## [0.3.2] - 2019-07-16
35
+
36
+ ### Fixed
37
+
38
+ - When using the `^.key` syntax to fetch a parent key, the prefix was
39
+ dropped using the `key_tree ~>0.5` api (inhertited from Array#drop)
40
+ instead of the proper `key_tree ~>0.6` api that takes the prefix to drop.
41
+
42
+
43
+ ## [0.3.1] - 2019-07-05
44
+
45
+ ### Fixed
46
+
47
+ - There was a debug print statement in numeric default value generation
48
+
49
+
50
+ ## [0.3.0] - 2019-07-05
51
+
52
+ ### Added
53
+ - Numeric default values
54
+ - integer: for rounded integer values
55
+ - float: for floating point values
56
+ - both types also support summarizing functions
57
+ - sum: arithmetic sum of the values
58
+ - product: arithmetic product of the values
59
+ - arithmetic_mean: the [arithmetic mean] of the values
60
+ - geometric_mean: the [geometric mean] of the values
61
+ - harmonic_mean: the [harmonic mean] of the values
62
+
63
+ [arithmethic mean]: https://en.wikipedia.org/wiki/Mean#Arithmetic_mean_(AM)
64
+ [geometric mean]: https://en.wikipedia.org/wiki/Mean#Geometric_mean_(GM)
65
+ [harmonic mean]: https://en.wikipedia.org/wiki/Mean#Harmonic_mean_(HM)
66
+
67
+ ### Changed
68
+ - Default value arguments used to be wrapped in arrays based on responding
69
+ to `#enum`, but are now based on `#to_ary`, to ensure that hashes are also
70
+ wrapped.
71
+
72
+
73
+ ## [Older]
74
+ These releases have no change logs.
75
+
76
+
77
+ [Unreleased]: https://github.com/notCalle/ruby-dagger/compare/v0.4.0..HEAD
78
+ [0.4.0]: https://github.com/notCalle/ruby-dagger/compare/v0.3.3..v0.4.0
79
+ [0.3.3]: https://github.com/notCalle/ruby-dagger/compare/v0.3.2..v0.3.3
80
+ [0.3.2]: https://github.com/notCalle/ruby-dagger/compare/v0.3.1..v0.3.2
81
+ [0.3.1]: https://github.com/notCalle/ruby-dagger/compare/v0.3.0..v0.3.1
82
+ [0.3.0]: https://github.com/notCalle/ruby-dagger/compare/v0.2.1..v0.3.0
83
+ [Older]: https://github.com/notCalle/ruby-dagger/releases/tag/v0.2.1
data/Gemfile CHANGED
@@ -2,10 +2,8 @@
2
2
 
3
3
  source 'https://rubygems.org'
4
4
 
5
- git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
6
-
7
- gem 'key_tree', github: 'notCalle/ruby-keytree'
8
- gem 'tangle', github: 'notCalle/ruby-tangle'
5
+ # gem 'key_tree', github: 'notCalle/ruby-keytree'
6
+ # gem 'tangle', github: 'notCalle/ruby-tangle'
9
7
 
10
8
  # Specify your gem's dependencies in ruby_dagger.gemspec
11
9
  gemspec
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  [![Gem Version](https://badge.fury.io/rb/ruby-dagger.svg)](https://badge.fury.io/rb/ruby-dagger)
2
2
  [![Maintainability](https://api.codeclimate.com/v1/badges/4038215eb129292a826d/maintainability)](https://codeclimate.com/github/notCalle/ruby-dagger/maintainability)
3
3
  [![codecov](https://codecov.io/gh/notCalle/ruby-dagger/branch/master/graph/badge.svg)](https://codecov.io/gh/notCalle/ruby-dagger)
4
- [![Build Status](https://dev.azure.com/notCalle/GitHub%20CI/_apis/build/status/notCalle.ruby-tangle)](https://dev.azure.com/notCalle/GitHub%20CI/_build/latest?definitionId=2)
4
+ [![Ruby](https://github.com/notCalle/ruby-dagger/actions/workflows/ruby.yml/badge.svg)](https://github.com/notCalle/ruby-dagger/actions/workflows/ruby.yml)
5
5
 
6
6
  # Dagger
7
7
 
@@ -26,6 +26,8 @@ spec/fixture/graph
26
26
  └── parent -> ../vertex1 # a.b = 2, c = 3
27
27
  ```
28
28
 
29
+ See the [changelog](CHANGELOG.md) for recent changes.
30
+
29
31
  ## Installation
30
32
 
31
33
  Add this line to your application's Gemfile:
data/Rakefile CHANGED
@@ -13,4 +13,4 @@ desc 'Run RSpec'
13
13
  require 'rspec/core/rake_task'
14
14
  RSpec::Core::RakeTask.new(:spec)
15
15
 
16
- task default: %i[spec rubocop]
16
+ task default: %i[rubocop spec]
@@ -10,8 +10,8 @@ module Dagger
10
10
  class Default
11
11
  using KeyTree::Refinements
12
12
 
13
- def self.proc(*args)
14
- new(*args).default_proc
13
+ def self.proc(*args, **kwargs)
14
+ new(*args, **kwargs).default_proc
15
15
  end
16
16
 
17
17
  # Initialize a default value generator for a +vertex+
@@ -106,8 +106,7 @@ module Dagger
106
106
  # :call-seq:
107
107
  # default_rules(key) => Array of Hash
108
108
  def default_rules(key)
109
- result = @vertex.fetch(@rule_prefix + key, nil)
110
- result
109
+ @vertex.fetch(@rule_prefix + key, nil)
111
110
  end
112
111
 
113
112
  # Process the methods in a rule chain
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../numeric_generator'
4
+
5
+ module Dagger
6
+ module Generate
7
+ # Generate a floating point value from a format string
8
+ #
9
+ # _default.key:
10
+ # - float: "#{key}"
11
+ # - float:
12
+ # - "#{key}"
13
+ # - ...
14
+ class Float < NumericGenerator
15
+ private
16
+
17
+ def from_s(string)
18
+ string.to_f
19
+ end
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative '../numeric_generator'
4
+
5
+ module Dagger
6
+ module Generate
7
+ # Generate an integer value from a format string
8
+ #
9
+ # _default.key:
10
+ # - integer: "#{key}"
11
+ # - integer:
12
+ # - "#{key}"
13
+ # - ...
14
+ # - integer:
15
+ # accumulate:
16
+ class Integer < NumericGenerator
17
+ private
18
+
19
+ def from_s(string)
20
+ string.to_f.round
21
+ end
22
+ end
23
+ end
24
+ end
@@ -35,7 +35,7 @@ module Dagger
35
35
  def match_regexps(key, regexps)
36
36
  string = dictionary[key]
37
37
 
38
- enumerable(regexps).each_with_object({}) do |regexp, matches|
38
+ array(regexps).each_with_object({}) do |regexp, matches|
39
39
  matchdata = ::Regexp.new(regexp).match(string)
40
40
  next if matchdata.nil?
41
41
 
@@ -14,7 +14,7 @@ module Dagger
14
14
  def process(keys)
15
15
  stop unless keys.any? do |key, regexps|
16
16
  string = dictionary[key]
17
- enumerable(regexps).any? do |regexp|
17
+ array(regexps).any? do |regexp|
18
18
  ::Regexp.new(regexp).match?(string)
19
19
  end
20
20
  end
@@ -11,7 +11,7 @@ module Dagger
11
11
  # - ...
12
12
  class RequireName < Dagger::Generator
13
13
  def process(regexps)
14
- stop unless enumerable(regexps).any? do |regexp|
14
+ stop unless array(regexps).any? do |regexp|
15
15
  ::Regexp.new(regexp).match?(vertex.name)
16
16
  end
17
17
  end
@@ -13,7 +13,7 @@ module Dagger
13
13
  # - ...
14
14
  class String < Dagger::Generator
15
15
  def process(strings)
16
- enumerable(strings).each do |fmtstr|
16
+ array(strings).each do |fmtstr|
17
17
  result = format_string(fmtstr)
18
18
  yield result unless result.nil?
19
19
  end
@@ -60,12 +60,12 @@ module Dagger
60
60
  kwargs.each { |key, value| @context[key] = value }
61
61
  end
62
62
 
63
- # Make an array of a value unless it is already enumerable
63
+ # Make an array of a value unless it is already an array
64
64
  #
65
65
  # :call-seq:
66
- # enumerable(value) => value || [value]
67
- def enumerable(value)
68
- value.respond_to?(:each) ? value : [value]
66
+ # array(value) => value || [value]
67
+ def array(value)
68
+ value.respond_to?(:to_ary) ? value : [value]
69
69
  end
70
70
 
71
71
  # Format a +string+ with values from a +dictionary+
@@ -85,4 +85,4 @@ module Dagger
85
85
  end
86
86
  end
87
87
 
88
- Dir[__dir__ + '/generator/*.rb'].each { |file| load(file) }
88
+ Dir["#{__dir__}/generate/*.rb"].each { |file| load(file) }
data/lib/dagger/graph.rb CHANGED
@@ -20,8 +20,8 @@ module Dagger
20
20
  @deferred_edges = []
21
21
  super
22
22
  @deferred_edges.each do |args|
23
- tail, head, *kwargs = args
24
- add_edge(*[tail, head].map { |name| fetch(name) }, *kwargs)
23
+ *args, kwargs = args
24
+ add_edge(*args.map { |name| fetch(name) }, **kwargs)
25
25
  end
26
26
  end
27
27
 
@@ -72,8 +72,8 @@ module Dagger
72
72
  result
73
73
  end
74
74
 
75
- def defer_edge(*args)
76
- @deferred_edges << args
75
+ def defer_edge(*args, **kwargs)
76
+ @deferred_edges << [*args, kwargs]
77
77
  end
78
78
  end
79
79
  end
@@ -0,0 +1,83 @@
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'generator'
4
+
5
+ module Dagger
6
+ module Generate
7
+ # Abstract base for generating numeric values
8
+ class NumericGenerator < Dagger::Generator
9
+ def process(args)
10
+ array(args).each do |arg|
11
+ result = process_recurse(arg)
12
+ yield result unless result.nil?
13
+ end
14
+ end
15
+
16
+ private
17
+
18
+ def process_recurse(arg)
19
+ case arg
20
+ when Hash
21
+ process_hash(arg)
22
+ when ::String
23
+ str = format_string(arg)
24
+ from_s(str) unless str.nil?
25
+ else
26
+ from_s(arg)
27
+ end
28
+ end
29
+
30
+ def process_hash(hash)
31
+ hash.each do |key, args|
32
+ result = process_hash_item(key, args)
33
+ return result unless result.nil?
34
+ end
35
+ end
36
+
37
+ def process_hash_item(key, args)
38
+ case args
39
+ when ::String
40
+ send("numeric_#{key}", dictionary[args])
41
+ else
42
+ send("numeric_#{key}", process_args(args))
43
+ end
44
+ end
45
+
46
+ def process_args(args)
47
+ args = array(args).flat_map { |arg| process_recurse(arg) }
48
+ args.delete(nil)
49
+ args
50
+ end
51
+
52
+ def numeric_values(args)
53
+ args.map { |value| from_s(value) }
54
+ end
55
+
56
+ def numeric_sum(args)
57
+ args.sum
58
+ end
59
+
60
+ def numeric_product(args)
61
+ args.reduce(:*)
62
+ end
63
+
64
+ def numeric_arithmetic_mean(args)
65
+ return if args.empty?
66
+
67
+ numeric_sum(args) / args.length
68
+ end
69
+
70
+ def numeric_geometric_mean(args)
71
+ return if args.empty?
72
+
73
+ numeric_product(args)**(1.0 / args.length)
74
+ end
75
+
76
+ def numeric_harmonic_mean(args)
77
+ return if args.empty?
78
+
79
+ args.length / args.map { |n| 1.0 / n }.sum
80
+ end
81
+ end
82
+ end
83
+ end
data/lib/dagger/vertex.rb CHANGED
@@ -39,16 +39,18 @@ module Dagger
39
39
 
40
40
  def [](key)
41
41
  key = key.to_key_path
42
- return @inherited[key.drop(1)] if key.prefix?('^')
42
+ return @inherited[key.drop('^')] if key.prefix?('^')
43
43
 
44
44
  @forest[key]
45
45
  end
46
46
 
47
47
  def fetch(key, *default, &block)
48
48
  key = key.to_key_path
49
- return @inherited.fetch(key.drop(1), *default, &block) if key.prefix?('^')
50
-
51
- @forest.fetch(key, *default, &block)
49
+ if key.prefix?('^')
50
+ @inherited.fetch(key.drop('^'), *default, &block)
51
+ else
52
+ @forest.fetch(key, *default, &block)
53
+ end
52
54
  end
53
55
 
54
56
  def <<(keytree)
@@ -83,7 +85,7 @@ module Dagger
83
85
  forest = initialize_forest(true)
84
86
 
85
87
  forest.key_paths.select { |key| key.prefix?('_default') }.each do |key|
86
- forest[key.drop(1)]
88
+ forest[key.drop('_default')]
87
89
  end
88
90
 
89
91
  flattened = forest.flatten
@@ -119,7 +121,7 @@ module Dagger
119
121
 
120
122
  def initialize_default_tree(cached)
121
123
  default_args = cached ? { cached: true, fallback: @inherited } : {}
122
- default_proc = Default.proc(self, default_args)
124
+ default_proc = Default.proc(self, **default_args)
123
125
  KeyTree::Tree.new(&default_proc)
124
126
  end
125
127
  end
data/ruby-dagger.gemspec CHANGED
@@ -6,15 +6,15 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
6
6
  require 'dagger/version'
7
7
 
8
8
  dev_deps = {
9
- 'bundler' => '~> 2.0',
10
- 'codecov' => '~> 0.1',
11
- 'git-version-bump' => '~> 0.15',
12
- 'pry' => '~> 0.11',
13
- 'rake' => '~> 10.0',
14
- 'rspec' => '~> 3.0',
15
- 'rubocop' => '~> 0.57',
16
- 'ruby-prof' => '~> 0.17',
17
- 'simplecov' => '~> 0.16'
9
+ 'bundler' => '~> 2.2',
10
+ 'codecov' => '~> 0.5.0',
11
+ 'pry' => '~> 0.14.0',
12
+ 'rake' => '~> 13.0',
13
+ 'rspec' => '~> 3.10',
14
+ 'rubocop' => '~> 1.15',
15
+ 'rubocop-rake' => '~> 0.5.1',
16
+ 'rubocop-rspec' => '~> 2.3',
17
+ 'simplecov' => '~> 0.21.0'
18
18
  }
19
19
 
20
20
  Gem::Specification.new do |spec|
@@ -35,10 +35,12 @@ Gem::Specification.new do |spec|
35
35
  spec.require_paths = ['lib']
36
36
 
37
37
  spec.platform = Gem::Platform::RUBY
38
- spec.required_ruby_version = '~> 2.3'
38
+ spec.required_ruby_version = '>= 2.6', '< 4.0'
39
39
 
40
- spec.add_dependency 'key_tree', '~> 0.6'
41
- spec.add_dependency 'tangle', '~> 0.10'
40
+ spec.add_dependency 'git-version-bump', '~> 0.17.0'
41
+
42
+ spec.add_dependency 'key_tree', '~> 0.8.0'
43
+ spec.add_dependency 'tangle', '~> 0.11.0'
42
44
 
43
45
  dev_deps.each { |d| spec.add_development_dependency(*d) }
44
46
  end
metadata CHANGED
@@ -1,197 +1,214 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-dagger
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Calle Englund
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-07-02 00:00:00.000000000 Z
11
+ date: 2021-05-30 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: git-version-bump
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.17.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.17.0
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: key_tree
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
31
  - - "~>"
18
32
  - !ruby/object:Gem::Version
19
- version: '0.6'
33
+ version: 0.8.0
20
34
  type: :runtime
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
38
  - - "~>"
25
39
  - !ruby/object:Gem::Version
26
- version: '0.6'
40
+ version: 0.8.0
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: tangle
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
45
  - - "~>"
32
46
  - !ruby/object:Gem::Version
33
- version: '0.10'
47
+ version: 0.11.0
34
48
  type: :runtime
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
52
  - - "~>"
39
53
  - !ruby/object:Gem::Version
40
- version: '0.10'
54
+ version: 0.11.0
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: bundler
43
57
  requirement: !ruby/object:Gem::Requirement
44
58
  requirements:
45
59
  - - "~>"
46
60
  - !ruby/object:Gem::Version
47
- version: '2.0'
61
+ version: '2.2'
48
62
  type: :development
49
63
  prerelease: false
50
64
  version_requirements: !ruby/object:Gem::Requirement
51
65
  requirements:
52
66
  - - "~>"
53
67
  - !ruby/object:Gem::Version
54
- version: '2.0'
68
+ version: '2.2'
55
69
  - !ruby/object:Gem::Dependency
56
70
  name: codecov
57
71
  requirement: !ruby/object:Gem::Requirement
58
72
  requirements:
59
73
  - - "~>"
60
74
  - !ruby/object:Gem::Version
61
- version: '0.1'
75
+ version: 0.5.0
62
76
  type: :development
63
77
  prerelease: false
64
78
  version_requirements: !ruby/object:Gem::Requirement
65
79
  requirements:
66
80
  - - "~>"
67
81
  - !ruby/object:Gem::Version
68
- version: '0.1'
82
+ version: 0.5.0
69
83
  - !ruby/object:Gem::Dependency
70
- name: git-version-bump
84
+ name: pry
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
87
  - - "~>"
74
88
  - !ruby/object:Gem::Version
75
- version: '0.15'
89
+ version: 0.14.0
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
- version: '0.15'
96
+ version: 0.14.0
83
97
  - !ruby/object:Gem::Dependency
84
- name: pry
98
+ name: rake
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
101
  - - "~>"
88
102
  - !ruby/object:Gem::Version
89
- version: '0.11'
103
+ version: '13.0'
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
- version: '0.11'
110
+ version: '13.0'
97
111
  - !ruby/object:Gem::Dependency
98
- name: rake
112
+ name: rspec
99
113
  requirement: !ruby/object:Gem::Requirement
100
114
  requirements:
101
115
  - - "~>"
102
116
  - !ruby/object:Gem::Version
103
- version: '10.0'
117
+ version: '3.10'
104
118
  type: :development
105
119
  prerelease: false
106
120
  version_requirements: !ruby/object:Gem::Requirement
107
121
  requirements:
108
122
  - - "~>"
109
123
  - !ruby/object:Gem::Version
110
- version: '10.0'
124
+ version: '3.10'
111
125
  - !ruby/object:Gem::Dependency
112
- name: rspec
126
+ name: rubocop
113
127
  requirement: !ruby/object:Gem::Requirement
114
128
  requirements:
115
129
  - - "~>"
116
130
  - !ruby/object:Gem::Version
117
- version: '3.0'
131
+ version: '1.15'
118
132
  type: :development
119
133
  prerelease: false
120
134
  version_requirements: !ruby/object:Gem::Requirement
121
135
  requirements:
122
136
  - - "~>"
123
137
  - !ruby/object:Gem::Version
124
- version: '3.0'
138
+ version: '1.15'
125
139
  - !ruby/object:Gem::Dependency
126
- name: rubocop
140
+ name: rubocop-rake
127
141
  requirement: !ruby/object:Gem::Requirement
128
142
  requirements:
129
143
  - - "~>"
130
144
  - !ruby/object:Gem::Version
131
- version: '0.57'
145
+ version: 0.5.1
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '0.57'
152
+ version: 0.5.1
139
153
  - !ruby/object:Gem::Dependency
140
- name: ruby-prof
154
+ name: rubocop-rspec
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
157
  - - "~>"
144
158
  - !ruby/object:Gem::Version
145
- version: '0.17'
159
+ version: '2.3'
146
160
  type: :development
147
161
  prerelease: false
148
162
  version_requirements: !ruby/object:Gem::Requirement
149
163
  requirements:
150
164
  - - "~>"
151
165
  - !ruby/object:Gem::Version
152
- version: '0.17'
166
+ version: '2.3'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: simplecov
155
169
  requirement: !ruby/object:Gem::Requirement
156
170
  requirements:
157
171
  - - "~>"
158
172
  - !ruby/object:Gem::Version
159
- version: '0.16'
173
+ version: 0.21.0
160
174
  type: :development
161
175
  prerelease: false
162
176
  version_requirements: !ruby/object:Gem::Requirement
163
177
  requirements:
164
178
  - - "~>"
165
179
  - !ruby/object:Gem::Version
166
- version: '0.16'
167
- description:
180
+ version: 0.21.0
181
+ description:
168
182
  email:
169
183
  - calle@discord.bofh.se
170
184
  executables: []
171
185
  extensions: []
172
186
  extra_rdoc_files: []
173
187
  files:
188
+ - ".github/workflows/ruby.yml"
174
189
  - ".gitignore"
175
190
  - ".rspec"
176
191
  - ".rubocop.yml"
177
- - ".travis.yml"
192
+ - CHANGELOG.md
178
193
  - CODE_OF_CONDUCT.md
179
194
  - Gemfile
180
195
  - LICENSE.txt
181
196
  - README.md
182
197
  - Rakefile
183
- - azure-pipelines.yml
184
198
  - bin/console
185
199
  - bin/setup
186
200
  - lib/dagger.rb
187
201
  - lib/dagger/context.rb
188
202
  - lib/dagger/default.rb
203
+ - lib/dagger/generate/float.rb
204
+ - lib/dagger/generate/integer.rb
205
+ - lib/dagger/generate/regexp.rb
206
+ - lib/dagger/generate/require.rb
207
+ - lib/dagger/generate/require_name.rb
208
+ - lib/dagger/generate/string.rb
189
209
  - lib/dagger/generator.rb
190
- - lib/dagger/generator/regexp.rb
191
- - lib/dagger/generator/require.rb
192
- - lib/dagger/generator/require_name.rb
193
- - lib/dagger/generator/string.rb
194
210
  - lib/dagger/graph.rb
211
+ - lib/dagger/numeric_generator.rb
195
212
  - lib/dagger/version.rb
196
213
  - lib/dagger/vertex.rb
197
214
  - ruby-dagger.gemspec
@@ -200,23 +217,26 @@ homepage: https://github.com/notcalle/ruby-dagger
200
217
  licenses:
201
218
  - MIT
202
219
  metadata: {}
203
- post_install_message:
220
+ post_install_message:
204
221
  rdoc_options: []
205
222
  require_paths:
206
223
  - lib
207
224
  required_ruby_version: !ruby/object:Gem::Requirement
208
225
  requirements:
209
- - - "~>"
226
+ - - ">="
227
+ - !ruby/object:Gem::Version
228
+ version: '2.6'
229
+ - - "<"
210
230
  - !ruby/object:Gem::Version
211
- version: '2.3'
231
+ version: '4.0'
212
232
  required_rubygems_version: !ruby/object:Gem::Requirement
213
233
  requirements:
214
234
  - - ">="
215
235
  - !ruby/object:Gem::Version
216
236
  version: '0'
217
237
  requirements: []
218
- rubygems_version: 3.0.3
219
- signing_key:
238
+ rubygems_version: 3.2.15
239
+ signing_key:
220
240
  specification_version: 4
221
241
  summary: Manage a DAG, stored in posix file structures
222
242
  test_files: []
data/.travis.yml DELETED
@@ -1,5 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.5.0
5
- before_install: gem install bundler -v 1.16.0
data/azure-pipelines.yml DELETED
@@ -1,22 +0,0 @@
1
- # Ruby
2
- # Package your Ruby project.
3
- # Add steps that install rails, analyze code, save build artifacts, deploy, and more:
4
- # https://docs.microsoft.com/azure/devops/pipelines/languages/ruby
5
-
6
- pool:
7
- vmImage: 'Ubuntu 16.04'
8
-
9
- steps:
10
- - task: UseRubyVersion@0
11
- inputs:
12
- versionSpec: '>= 2.5'
13
-
14
- - script: |
15
- gem install bundler git-version-bump
16
- bin/setup
17
- displayName: 'bundle install'
18
-
19
- - script: bundle exec rake
20
- displayName: 'bundle exec rake'
21
- env:
22
- CODECOV_TOKEN: $(codecov.token)