metasploit-erd 2.0.4 → 4.0.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
- SHA1:
3
- metadata.gz: 720f9afde8a2a8b6fa8f45837fff1c88fbf6536a
4
- data.tar.gz: 564ff59279e1349c191314d35908cfcb7c28a166
2
+ SHA256:
3
+ metadata.gz: 0cbc0c8942a56262c657c4999b6a41aef1c8d98178398e58c395340fb0572094
4
+ data.tar.gz: 911e2e4a3f8300a70ed7a89743d774c694f25b360009d63f8969ee8911e0430d
5
5
  SHA512:
6
- metadata.gz: 4608c57841b606c2b3edd68ae6fb7758af0a62ac776a39f8b48828554a23b82c91e4bd92f30acd5b6f461de64df5b068b26df97db2998eb9b2dcf52e82cb7846
7
- data.tar.gz: 312dac6b725e0be991023243f791046658b3e783251beb4c1de18905c2afeb5db9d1390bfc1e4b2bd0d7a749402f6b55e25a57a46887cc1bd568773fbe702937
6
+ metadata.gz: 9aff92fe3185e89966f4f7ddda211704a12740f6abec91d4d2afe25417486b627a53d987f848583f48095eed355e03f86435348aa8bb4c2c066987a9e63207ef
7
+ data.tar.gz: bb38953c08d8ffd8a74355c71b464c0fd4a093e9d110e1356b77686dfea7f0751c271a60586cff1438f1acb9475bf2091673338d088db9a3437373a37d7a50c3
checksums.yaml.gz.sig CHANGED
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -0,0 +1,64 @@
1
+ name: Verify
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - '*'
7
+ pull_request:
8
+ branches:
9
+ - '*'
10
+
11
+ jobs:
12
+ test:
13
+ runs-on: ubuntu-16.04
14
+ timeout-minutes: 40
15
+
16
+ strategy:
17
+ fail-fast: true
18
+ matrix:
19
+ ruby:
20
+ - 2.5
21
+ - 2.6
22
+ - 2.7
23
+
24
+ env:
25
+ RAILS_ENV: test
26
+
27
+ name: Ruby ${{ matrix.ruby }}
28
+ steps:
29
+ - name: Install system dependencies
30
+ run: sudo apt-get install graphviz
31
+
32
+ - name: Checkout code
33
+ uses: actions/checkout@v2
34
+
35
+ - uses: actions/setup-ruby@v1
36
+ with:
37
+ ruby-version: ${{ matrix.ruby }}
38
+
39
+ - name: Setup bundler
40
+ run: |
41
+ gem install bundler
42
+ - uses: actions/cache@v2
43
+ with:
44
+ path: vendor/bundle
45
+ key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
46
+ restore-keys: |
47
+ ${{ runner.os }}-gems-
48
+ - name: Bundle install
49
+ run: |
50
+ bundle config path vendor/bundle
51
+ bundle install --jobs 4 --retry 3
52
+
53
+ - name: Test
54
+ run: |
55
+ bundle exec rake spec
56
+ bundle exec rake yard
57
+
58
+ - name: Upload coverage report
59
+ uses: actions/upload-artifact@v2
60
+ with:
61
+ name: coverage-${{ matrix.ruby }}
62
+ path: |
63
+ coverage/
64
+ retention-days: 1
data/Gemfile CHANGED
@@ -8,16 +8,10 @@ group :development do
8
8
  gem 'kramdown', platforms: :jruby
9
9
  # markdown formatting for yard
10
10
  gem 'redcarpet', platforms: :ruby
11
- # documentation
12
- # 0.8.7.4 has a bug where setters are not documented when @!attribute is used
13
- gem 'yard', '< 0.8.7.4'
11
+ gem 'yard'
14
12
  end
15
13
 
16
14
  group :test do
17
- # blank?
18
- gem 'activesupport', '~> 4.2.6'
19
- # Upload coverage reports to coveralls.io
20
- gem 'coveralls', require: false
21
15
  # code coverage of tests
22
16
  gem 'simplecov', :require => false
23
17
  # in-memory database for ActiveRecord association traversal
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Metasploit::ERD [![Build Status](https://travis-ci.org/rapid7/metasploit-erd.svg?branch=feature/port)](https://travis-ci.org/rapid7/metasploit-erd)[![Code Climate](https://codeclimate.com/github/rapid7/metasploit-erd.png)](https://codeclimate.com/github/rapid7/metasploit-erd)[![Coverage Status](https://coveralls.io/repos/rapid7/metasploit-erd/badge.png)](https://coveralls.io/r/rapid7/metasploit-erd)[![Dependency Status](https://gemnasium.com/rapid7/metasploit-erd.png)](https://gemnasium.com/rapid7/metasploit-erd)[![Gem Version](https://badge.fury.io/rb/metasploit-erd.png)](http://badge.fury.io/rb/metasploit-erd)
1
+ # Metasploit::ERD [![Build Status](https://github.com/rapid7/metasploit-erd/actions/workflows/verify.yml/badge.svg)](https://github.com/rapid7/metasploit-erd/actions/workflows/verify.yml)[![Code Climate](https://codeclimate.com/github/rapid7/metasploit-erd.png)](https://codeclimate.com/github/rapid7/metasploit-erd)[![Coverage Status](https://coveralls.io/repos/rapid7/metasploit-erd/badge.png)](https://coveralls.io/r/rapid7/metasploit-erd)[![Dependency Status](https://gemnasium.com/rapid7/metasploit-erd.png)](https://gemnasium.com/rapid7/metasploit-erd)[![Gem Version](https://badge.fury.io/rb/metasploit-erd.png)](http://badge.fury.io/rb/metasploit-erd)
2
2
 
3
3
  Traces the `belongs_to` associations on `ActiveRecord::Base.descendants` to find the minimum cluster in which all
4
4
  foreign keys are fulfilled in the Entity-Relationship Diagram.'
@@ -31,7 +31,7 @@ class Metasploit::ERD::Entity::Namespace
31
31
  # @return [Array<Class<ActiveRecord::Base>
32
32
  def classes
33
33
  ActiveRecord::Base.descendants.select { |klass|
34
- klass.parents.any? { |parent|
34
+ klass.module_parents.any? { |parent|
35
35
  parent.name == namespace_name
36
36
  }
37
37
  }
@@ -63,4 +63,4 @@ class Metasploit::ERD::Entity::Namespace
63
63
 
64
64
  super(super_options)
65
65
  end
66
- end
66
+ end
@@ -1,7 +1,7 @@
1
1
  module Metasploit
2
2
  module ERD
3
3
  # VERSION is managed by GemRelease
4
- VERSION = '2.0.4'
4
+ VERSION = '4.0.0'
5
5
 
6
6
  # @return [String]
7
7
  #
@@ -6,8 +6,8 @@ require 'metasploit/erd/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = 'metasploit-erd'
8
8
  spec.version = Metasploit::ERD::VERSION
9
- spec.authors = ['Luke Imhoff']
10
- spec.email = ['luke_imhoff@rapid7.com']
9
+ spec.authors = ['Metasploit Hackers']
10
+ spec.email = ['msfdev@metasploit.com']
11
11
  spec.summary = 'Extensions to rails-erd to find clusters of models to generate subdomains specific to each model'
12
12
  spec.description = 'Traces the belongs_to associations on ActiveRecord::Base descendants to find the minimum ' \
13
13
  'cluster in which all foreign keys are fulfilled in the Entity-Relationship Diagram.'
@@ -19,14 +19,13 @@ Gem::Specification.new do |spec|
19
19
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
20
20
  spec.require_paths = ['lib']
21
21
 
22
- spec.required_ruby_version = '>= 2.1'
22
+ spec.required_ruby_version = '>= 2.2.0'
23
23
 
24
- spec.add_development_dependency 'bundler', '~> 1.5'
25
24
  spec.add_development_dependency 'metasploit-yard'
26
25
  spec.add_development_dependency 'rake'
27
- spec.add_development_dependency 'rspec', '~> 3.2'
26
+ spec.add_development_dependency 'rspec'
28
27
 
29
- spec.add_runtime_dependency 'activerecord', '~> 4.2.6'
30
- spec.add_runtime_dependency 'activesupport', '~> 4.2.6'
31
- spec.add_runtime_dependency 'rails-erd', '~> 1.1'
28
+ spec.add_runtime_dependency 'activerecord', '~> 6.0'
29
+ spec.add_runtime_dependency 'activesupport', '~> 6.0'
30
+ spec.add_runtime_dependency 'rails-erd'
32
31
  end
@@ -124,13 +124,10 @@ RSpec.describe Metasploit::ERD::Relationship do
124
124
 
125
125
  ActiveRecord::Migration.create_table :owners do |t|
126
126
  t.references :thing
127
-
128
- t.timestamp
129
127
  end
130
128
 
131
129
  things.each do |thing|
132
130
  ActiveRecord::Migration.create_table thing.table_name do |t|
133
- t.timestamp
134
131
  end
135
132
  end
136
133
  end
@@ -210,8 +207,6 @@ RSpec.describe Metasploit::ERD::Relationship do
210
207
  group_names.each do |group_name|
211
208
  t.references group_name.underscore.to_sym
212
209
  end
213
-
214
- t.timestamp
215
210
  end
216
211
 
217
212
  polymorphics_by_group_name.each do |group_name, polymorphics|
@@ -241,4 +236,4 @@ RSpec.describe Metasploit::ERD::Relationship do
241
236
  end
242
237
  end
243
238
  end
244
- end
239
+ end
data/spec/spec_helper.rb CHANGED
@@ -2,17 +2,8 @@ require 'bundler/setup'
2
2
 
3
3
  # require before 'metasploit/erd' so coverage is shown for files required by 'metasploit/erd'
4
4
  require 'simplecov'
5
- require 'coveralls'
6
5
 
7
- # if ENV['TRAVIS'] == 'true'
8
- # # don't generate local report as it is inaccessible on travis-ci, which is why coveralls is being used.
9
- # SimpleCov.formatter = Coveralls::SimpleCov::Formatter
10
- # else
11
- SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter.new(
12
- # either generate the local report
13
- SimpleCov::Formatter::HTMLFormatter
14
- )
15
- # end
6
+ SimpleCov.formatter = SimpleCov::Formatter::HTMLFormatter
16
7
 
17
8
  #
18
9
  # Project
@@ -7,6 +7,6 @@ RSpec.shared_context 'ActiveRecord::Base connection' do
7
7
  end
8
8
 
9
9
  after(:example) do
10
- ActiveRecord::Base.connection.disconnect!
10
+ ActiveRecord::Base.connection.disconnect! rescue nil
11
11
  end
12
- end
12
+ end
@@ -6,6 +6,12 @@ RSpec.shared_context 'ActiveRecord::Base.descendants cleaner' do
6
6
  after(:example) do
7
7
  # `ActiveSupport::DescendantsTracker.clear` will not clear ActiveRecord::Base subclasses because
8
8
  # ActiveSupport::Dependencies is loaded
9
- ActiveRecord::Base.direct_descendants.clear
9
+ if ActiveRecord.version >= Gem::Version.new("6.0.0.rc1")
10
+ cv = ActiveSupport::DescendantsTracker.class_variable_get(:@@direct_descendants)
11
+ cv.delete(ActiveRecord::Base)
12
+ ActiveSupport::DescendantsTracker.class_variable_set(:@@direct_descendants, cv)
13
+ else
14
+ ActiveRecord::Base.direct_descendants.clear
15
+ end
10
16
  end
11
- end
17
+ end
metadata CHANGED
@@ -1,109 +1,100 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: metasploit-erd
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4
4
+ version: 4.0.0
5
5
  platform: ruby
6
6
  authors:
7
- - Luke Imhoff
7
+ - Metasploit Hackers
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G
14
- A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp
15
- Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4
16
- MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG
17
- A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI
18
- hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8
19
- RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT
20
- gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm
21
- KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd
22
- QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ
23
- XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw
24
- DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o
25
- LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU
26
- RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp
27
- jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK
28
- 6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX
29
- mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs
30
- Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH
31
- WD9f
13
+ MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
14
+ MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
15
+ d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
16
+ b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
17
+ EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
18
+ cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
19
+ MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
20
+ JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
21
+ mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
22
+ wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
23
+ VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
24
+ AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
25
+ AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
26
+ BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
27
+ pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
28
+ dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
29
+ fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
30
+ NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
31
+ H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
32
+ +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
32
33
  -----END CERTIFICATE-----
33
34
  - |
34
35
  -----BEGIN CERTIFICATE-----
35
- MIIElDCCA3ygAwIBAgIOSBtqBybS6D8mAtSCWs0wDQYJKoZIhvcNAQELBQAwTDEg
36
- MB4GA1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2Jh
37
- bFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMTYwNjE1MDAwMDAwWhcNMjQw
38
- NjE1MDAwMDAwWjBaMQswCQYDVQQGEwJCRTEZMBcGA1UEChMQR2xvYmFsU2lnbiBu
39
- di1zYTEwMC4GA1UEAxMnR2xvYmFsU2lnbiBDb2RlU2lnbmluZyBDQSAtIFNIQTI1
40
- NiAtIEczMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjYVVI6kfU6/J
41
- 7TbCKbVu2PlC9SGLh/BDoS/AP5fjGEfUlk6Iq8Zj6bZJFYXx2Zt7G/3YSsxtToZA
42
- F817ukcotdYUQAyG7h5LM/MsVe4hjNq2wf6wTjquUZ+lFOMQ5pPK+vldsZCH7/g1
43
- LfyiXCbuexWLH9nDoZc1QbMw/XITrZGXOs5ynQYKdTwfmOPLGC+MnwhKkQrZ2TXZ
44
- g5J2Yl7fg67k1gFOzPM8cGFYNx8U42qgr2v02dJsLBkwXaBvUt/RnMngDdl1EWWW
45
- 2UO0p5A5rkccVMuxlW4l3o7xEhzw127nFE2zGmXWhEpX7gSvYjjFEJtDjlK4Prau
46
- niyX/4507wIDAQABo4IBZDCCAWAwDgYDVR0PAQH/BAQDAgEGMB0GA1UdJQQWMBQG
47
- CCsGAQUFBwMDBggrBgEFBQcDCTASBgNVHRMBAf8ECDAGAQH/AgEAMB0GA1UdDgQW
48
- BBQPOueslJF0LZYCc4OtnC5JPxmqVDAfBgNVHSMEGDAWgBSP8Et/qC5FJK5NUPpj
49
- move4t0bvDA+BggrBgEFBQcBAQQyMDAwLgYIKwYBBQUHMAGGImh0dHA6Ly9vY3Nw
50
- Mi5nbG9iYWxzaWduLmNvbS9yb290cjMwNgYDVR0fBC8wLTAroCmgJ4YlaHR0cDov
51
- L2NybC5nbG9iYWxzaWduLmNvbS9yb290LXIzLmNybDBjBgNVHSAEXDBaMAsGCSsG
52
- AQQBoDIBMjAIBgZngQwBBAEwQQYJKwYBBAGgMgFfMDQwMgYIKwYBBQUHAgEWJmh0
53
- dHBzOi8vd3d3Lmdsb2JhbHNpZ24uY29tL3JlcG9zaXRvcnkvMA0GCSqGSIb3DQEB
54
- CwUAA4IBAQAVhCgM7aHDGYLbYydB18xjfda8zzabz9JdTAKLWBoWCHqxmJl/2DOK
55
- XJ5iCprqkMLFYwQL6IdYBgAHglnDqJQy2eAUTaDVI+DH3brwaeJKRWUtTUmQeGYy
56
- DrBowLCIsI7tXAb4XBBIPyNzujtThFKAzfCzFcgRCosFeEZZCNS+t/9L9ZxqTJx2
57
- ohGFRYzUN+5Q3eEzNKmhHzoL8VZEim+zM9CxjtEMYAfuMsLwJG+/r/uBAXZnxKPo
58
- 4KvcM1Uo42dHPOtqpN+U6fSmwIHRUphRptYCtzzqSu/QumXSN4NTS35nfIxA9gcc
59
- sK8EBtz4bEaIcpzrTp3DsLlUo7lOl8oU
36
+ MIIFMDCCBBigAwIBAgIQBAkYG1/Vu2Z1U0O1b5VQCDANBgkqhkiG9w0BAQsFADBl
37
+ MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
38
+ d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
39
+ b3QgQ0EwHhcNMTMxMDIyMTIwMDAwWhcNMjgxMDIyMTIwMDAwWjByMQswCQYDVQQG
40
+ EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
41
+ cnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgQ29kZSBT
42
+ aWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+NOzHH8O
43
+ Ea9ndwfTCzFJGc/Q+0WZsTrbRPV/5aid2zLXcep2nQUut4/6kkPApfmJ1DcZ17aq
44
+ 8JyGpdglrA55KDp+6dFn08b7KSfH03sjlOSRI5aQd4L5oYQjZhJUM1B0sSgmuyRp
45
+ wsJS8hRniolF1C2ho+mILCCVrhxKhwjfDPXiTWAYvqrEsq5wMWYzcT6scKKrzn/p
46
+ fMuSoeU7MRzP6vIK5Fe7SrXpdOYr/mzLfnQ5Ng2Q7+S1TqSp6moKq4TzrGdOtcT3
47
+ jNEgJSPrCGQ+UpbB8g8S9MWOD8Gi6CxR93O8vYWxYoNzQYIH5DiLanMg0A9kczye
48
+ n6Yzqf0Z3yWT0QIDAQABo4IBzTCCAckwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNV
49
+ HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwMweQYIKwYBBQUHAQEEbTBr
50
+ MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYIKwYBBQUH
51
+ MAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJ
52
+ RFJvb3RDQS5jcnQwgYEGA1UdHwR6MHgwOqA4oDaGNGh0dHA6Ly9jcmw0LmRpZ2lj
53
+ ZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmwwOqA4oDaGNGh0dHA6
54
+ Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmww
55
+ TwYDVR0gBEgwRjA4BgpghkgBhv1sAAIEMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
56
+ d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCgYIYIZIAYb9bAMwHQYDVR0OBBYEFFrEuXsq
57
+ CqOl6nEDwGD5LfZldQ5YMB8GA1UdIwQYMBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgP
58
+ MA0GCSqGSIb3DQEBCwUAA4IBAQA+7A1aJLPzItEVyCx8JSl2qB1dHC06GsTvMGHX
59
+ fgtg/cM9D8Svi/3vKt8gVTew4fbRknUPUbRupY5a4l4kgU4QpO4/cY5jDhNLrddf
60
+ RHnzNhQGivecRk5c/5CxGwcOkRX7uq+1UcKNJK4kxscnKqEpKBo6cSgCPC6Ro8Al
61
+ EeKcFEehemhor5unXCBc2XGxDI+7qPjFEmifz0DLQESlE/DmZAwlCEIysjaKJAL+
62
+ L3J+HNdJRZboWR3p+nRka7LrZkPas7CM1ekN3fYBIM6ZMWM9CBoYs4GbT8aTEAb8
63
+ B4H6i9r5gkn3Ym6hU/oSlBiFLpKR6mhsRDKyZqHnGKSaZFHv
60
64
  -----END CERTIFICATE-----
61
65
  - |
62
66
  -----BEGIN CERTIFICATE-----
63
- MIIE5jCCA86gAwIBAgIMKDuO03uv6RWXR1uAMA0GCSqGSIb3DQEBCwUAMFoxCzAJ
64
- BgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMTAwLgYDVQQDEydH
65
- bG9iYWxTaWduIENvZGVTaWduaW5nIENBIC0gU0hBMjU2IC0gRzMwHhcNMTYwOTEz
66
- MTgxMDIyWhcNMTkxMTExMTUxNTM4WjBgMQswCQYDVQQGEwJVUzEWMBQGA1UECBMN
67
- TWFzc2FjaHVzZXR0czEPMA0GA1UEBxMGQm9zdG9uMRMwEQYDVQQKEwpSYXBpZDcg
68
- TExDMRMwEQYDVQQDEwpSYXBpZDcgTExDMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A
69
- MIIBCgKCAQEAl0HeC0FzN1BJ4nQkxsBng3peS9Bdi9rpSGx+g0Ximd+M/7twmund
70
- bzn2JPbNK/Gp/rq/SytrNSLcUzcbH/0z5Ltyw1/jQsGtRBrns0NZSRXqupQDW5R6
71
- HFpaIAl3OdsesmIQc/fm0uhh8dkfHVo7UsZO/TeCPoy0uHXTI6aFBPzMMsdz+gf3
72
- cCCLsnNKQh/T2Q/jwBs3NTPoyza/pPZcvGogKcWCeNihTO5Rn1Fc71sMHSjQsDtn
73
- 1fWGKYGi0qjvZ4lpGM9IFZMTbySKHbPLhhHnBOoV7avGemdky3AEsUeiT+6DY0P1
74
- IydBy24uVNhGATglME1ttlT4Eme/to0M6wIDAQABo4IBpDCCAaAwDgYDVR0PAQH/
75
- BAQDAgeAMIGUBggrBgEFBQcBAQSBhzCBhDBIBggrBgEFBQcwAoY8aHR0cDovL3Nl
76
- Y3VyZS5nbG9iYWxzaWduLmNvbS9jYWNlcnQvZ3Njb2Rlc2lnbnNoYTJnM29jc3Au
77
- Y3J0MDgGCCsGAQUFBzABhixodHRwOi8vb2NzcDIuZ2xvYmFsc2lnbi5jb20vZ3Nj
78
- b2Rlc2lnbnNoYTJnMzBWBgNVHSAETzBNMEEGCSsGAQQBoDIBMjA0MDIGCCsGAQUF
79
- BwIBFiZodHRwczovL3d3dy5nbG9iYWxzaWduLmNvbS9yZXBvc2l0b3J5LzAIBgZn
80
- gQwBBAEwCQYDVR0TBAIwADA/BgNVHR8EODA2MDSgMqAwhi5odHRwOi8vY3JsLmds
81
- b2JhbHNpZ24uY29tL2dzY29kZXNpZ25zaGEyZzMuY3JsMBMGA1UdJQQMMAoGCCsG
82
- AQUFBwMDMB0GA1UdDgQWBBSm8RBpBC/cK9VmxzO2+RWnacN8CTAfBgNVHSMEGDAW
83
- gBQPOueslJF0LZYCc4OtnC5JPxmqVDANBgkqhkiG9w0BAQsFAAOCAQEANVO3uYQl
84
- h8iicbaXE3odrL+kXXmeeNgt4BD3x7GKAVIVixtwBS6pvrshjc1LN0tm3ruiv8oy
85
- cq4FiEmVUXZejSRvVVtABeWdZWo+lJ8NxCBUEYYmnMrjgFIbGiEbBsg7PGtyeQsA
86
- 5Wbg7Lx889mS1tKfQBcPif8EjpTiXNfMiywmpaMYmvm+yQgzrRLDbjz6JV0Rc5Ga
87
- WChka+LTPnMtsWJuFM8ka8icMeS28/nAGERdewxWvz+DeAPMORdTJ7aqb6+Y9xuz
88
- G+Hmcg1v810agasPdoydE0RTVZgEOOMoQ07qu7JFXVWZ9ZQpHT7qJATWL/b2csFG
89
- 8mVuTXnyJOKRJA==
67
+ MIIFIzCCBAugAwIBAgIQCMePMbkSxvnPeJhYXIfaxzANBgkqhkiG9w0BAQsFADBy
68
+ MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
69
+ d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg
70
+ SUQgQ29kZSBTaWduaW5nIENBMB4XDTIwMTAwNzAwMDAwMFoXDTIzMTEwNjEyMDAw
71
+ MFowYDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxDzANBgNV
72
+ BAcTBkJvc3RvbjETMBEGA1UEChMKUmFwaWQ3IExMQzETMBEGA1UEAxMKUmFwaWQ3
73
+ IExMQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALNTz4zvAy7h/vQp
74
+ 4dr1txXHlABAagkwYYwTMCtHs5PXsJITx/5SAjx5swuaLfze5kPBNF2YImvFlOXY
75
+ WaB+0PsOnXnaARsDZU683xFlj8izU6IN6VrAHzDLKFBzruJENrOJD/ikbEtbjO/q
76
+ gFbmS9J9v5ohG/pcRSS0t4ZPAwymf8eCp6QsvOKK/Aymp1RhlRaP8N6N5CIpkhz1
77
+ 9p968iCE+DjOXVYxcWE+jE/7uB1dbgrXykNBujMSS3GULOvVEY28n6NCmrPlo23g
78
+ yRjYVJ2Vy14nBqnxDZ/yRIfWRVjWoT9TsAEbe9gY29oDpSCSs4wSmLQd5zGCpZ9h
79
+ r0HDFB8CAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZl
80
+ dQ5YMB0GA1UdDgQWBBTLBL7DTwumVEKtdCdpHVYMXOFeDzAOBgNVHQ8BAf8EBAMC
81
+ B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwdwYDVR0fBHAwbjA1oDOgMYYvaHR0cDov
82
+ L2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJlZC1jcy1nMS5jcmwwNaAzoDGG
83
+ L2h0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3Js
84
+ MEwGA1UdIARFMEMwNwYJYIZIAYb9bAMBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
85
+ d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQQBMIGEBggrBgEFBQcBAQR4MHYw
86
+ JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcw
87
+ AoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3Vy
88
+ ZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEL
89
+ BQADggEBAN+GL5/myPWg7oH4mVrG7/OhXF1MoYQF0ddaNiqaweEHMuKJBQCVZRbL
90
+ 37HojoKXXv2yyRJBCeTB+ojrxX+5PdLVZa0ss7toWzJ2A1poPXZ1eZvm5xeFD32z
91
+ YQaTmmNWNI3PCDTyJ2PXUc+bDiNNwcZ7yc5o78UNRvp9Jxghya17Q76c9Ov9wvnv
92
+ dxxQKWGOQy0m4fBrkyjAyH9Djjn81RbQrqYgPuhd5nD0HjN3VUQLhQbIJrk9TVs0
93
+ EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
94
+ 9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
90
95
  -----END CERTIFICATE-----
91
- date: 2016-11-21 00:00:00.000000000 Z
96
+ date: 2021-04-28 00:00:00.000000000 Z
92
97
  dependencies:
93
- - !ruby/object:Gem::Dependency
94
- name: bundler
95
- requirement: !ruby/object:Gem::Requirement
96
- requirements:
97
- - - "~>"
98
- - !ruby/object:Gem::Version
99
- version: '1.5'
100
- type: :development
101
- prerelease: false
102
- version_requirements: !ruby/object:Gem::Requirement
103
- requirements:
104
- - - "~>"
105
- - !ruby/object:Gem::Version
106
- version: '1.5'
107
98
  - !ruby/object:Gem::Dependency
108
99
  name: metasploit-yard
109
100
  requirement: !ruby/object:Gem::Requirement
@@ -136,72 +127,71 @@ dependencies:
136
127
  name: rspec
137
128
  requirement: !ruby/object:Gem::Requirement
138
129
  requirements:
139
- - - "~>"
130
+ - - ">="
140
131
  - !ruby/object:Gem::Version
141
- version: '3.2'
132
+ version: '0'
142
133
  type: :development
143
134
  prerelease: false
144
135
  version_requirements: !ruby/object:Gem::Requirement
145
136
  requirements:
146
- - - "~>"
137
+ - - ">="
147
138
  - !ruby/object:Gem::Version
148
- version: '3.2'
139
+ version: '0'
149
140
  - !ruby/object:Gem::Dependency
150
141
  name: activerecord
151
142
  requirement: !ruby/object:Gem::Requirement
152
143
  requirements:
153
144
  - - "~>"
154
145
  - !ruby/object:Gem::Version
155
- version: 4.2.6
146
+ version: '6.0'
156
147
  type: :runtime
157
148
  prerelease: false
158
149
  version_requirements: !ruby/object:Gem::Requirement
159
150
  requirements:
160
151
  - - "~>"
161
152
  - !ruby/object:Gem::Version
162
- version: 4.2.6
153
+ version: '6.0'
163
154
  - !ruby/object:Gem::Dependency
164
155
  name: activesupport
165
156
  requirement: !ruby/object:Gem::Requirement
166
157
  requirements:
167
158
  - - "~>"
168
159
  - !ruby/object:Gem::Version
169
- version: 4.2.6
160
+ version: '6.0'
170
161
  type: :runtime
171
162
  prerelease: false
172
163
  version_requirements: !ruby/object:Gem::Requirement
173
164
  requirements:
174
165
  - - "~>"
175
166
  - !ruby/object:Gem::Version
176
- version: 4.2.6
167
+ version: '6.0'
177
168
  - !ruby/object:Gem::Dependency
178
169
  name: rails-erd
179
170
  requirement: !ruby/object:Gem::Requirement
180
171
  requirements:
181
- - - "~>"
172
+ - - ">="
182
173
  - !ruby/object:Gem::Version
183
- version: '1.1'
174
+ version: '0'
184
175
  type: :runtime
185
176
  prerelease: false
186
177
  version_requirements: !ruby/object:Gem::Requirement
187
178
  requirements:
188
- - - "~>"
179
+ - - ">="
189
180
  - !ruby/object:Gem::Version
190
- version: '1.1'
181
+ version: '0'
191
182
  description: Traces the belongs_to associations on ActiveRecord::Base descendants
192
183
  to find the minimum cluster in which all foreign keys are fulfilled in the Entity-Relationship
193
184
  Diagram.
194
185
  email:
195
- - luke_imhoff@rapid7.com
186
+ - msfdev@metasploit.com
196
187
  executables: []
197
188
  extensions: []
198
189
  extra_rdoc_files: []
199
190
  files:
200
- - ".coveralls.yml"
191
+ - ".github/workflows/verify.yml"
201
192
  - ".gitignore"
202
193
  - ".rspec"
203
194
  - ".simplecov"
204
- - ".travis.yml"
205
195
  - ".yardopts"
206
196
  - CHANGELOG.md
207
197
  - CONTRIBUTING.md
@@ -243,7 +233,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
243
233
  requirements:
244
234
  - - ">="
245
235
  - !ruby/object:Gem::Version
246
- version: '2.1'
236
+ version: 2.2.0
247
237
  required_rubygems_version: !ruby/object:Gem::Requirement
248
238
  requirements:
249
239
  - - ">="
@@ -251,7 +241,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
251
241
  version: '0'
252
242
  requirements: []
253
243
  rubyforge_project:
254
- rubygems_version: 2.4.8
244
+ rubygems_version: 2.7.10
255
245
  signing_key:
256
246
  specification_version: 4
257
247
  summary: Extensions to rails-erd to find clusters of models to generate subdomains
@@ -267,4 +257,3 @@ test_files:
267
257
  - spec/support/shared/contexts/active_record_base_connection.rb
268
258
  - spec/support/shared/contexts/active_record_base_descendants_cleaner.rb
269
259
  - spec/support/shared/examples/metasploit/erd/clusterable.rb
270
- has_rdoc:
metadata.gz.sig CHANGED
Binary file
data/.coveralls.yml DELETED
@@ -1 +0,0 @@
1
- service_name: travis-ci
data/.travis.yml DELETED
@@ -1,14 +0,0 @@
1
- group: stable
2
- sudo: false
3
- language: ruby
4
- addons:
5
- apt:
6
- packages:
7
- - graphviz
8
- rvm:
9
- - 2.3.2
10
- before_install:
11
- - gem update bundler
12
- script:
13
- - bundle exec rake spec
14
- - bundle exec rake yard