gman 7.0.6 → 8.0.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.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/bin/gman +10 -15
  3. data/bin/gman_filter +1 -1
  4. data/config/domains.txt +21 -408
  5. data/config/vendor/dotgovs.csv +237 -119
  6. data/docs/README.md +3 -1
  7. data/lib/gman/domain_list.rb +1 -1
  8. data/lib/gman/identifier.rb +9 -6
  9. data/lib/gman/importer.rb +1 -1
  10. data/lib/gman/locality.rb +1 -1
  11. data/lib/gman/version.rb +1 -1
  12. data/lib/gman.rb +8 -6
  13. metadata +8 -221
  14. data/.github/CODEOWNERS +0 -3
  15. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -28
  16. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -21
  17. data/.github/config.yml +0 -23
  18. data/.github/dependabot.yml +0 -10
  19. data/.github/funding.yml +0 -1
  20. data/.github/no-response.yml +0 -15
  21. data/.github/release-drafter.yml +0 -4
  22. data/.github/settings.yml +0 -33
  23. data/.github/stale.yml +0 -29
  24. data/.github/workflows/ci.yml +0 -23
  25. data/.github/workflows/clean.yml +0 -31
  26. data/.github/workflows/codeql-analysis.yml +0 -70
  27. data/.github/workflows/validate.yml +0 -30
  28. data/.github/workflows/vendor.yml +0 -29
  29. data/.gitignore +0 -6
  30. data/.rspec +0 -2
  31. data/.rubocop.yml +0 -29
  32. data/.rubocop_todo.yml +0 -84
  33. data/Gemfile +0 -5
  34. data/docs/CODE_OF_CONDUCT.md +0 -46
  35. data/docs/CONTRIBUTING.md +0 -92
  36. data/docs/SECURITY.md +0 -3
  37. data/docs/_config.yml +0 -2
  38. data/gman.gemspec +0 -45
  39. data/script/add +0 -19
  40. data/script/alphabetize +0 -14
  41. data/script/bootstrap +0 -5
  42. data/script/cibuild +0 -8
  43. data/script/console +0 -3
  44. data/script/dedupe +0 -22
  45. data/script/profile +0 -21
  46. data/script/prune +0 -22
  47. data/script/reconcile-us +0 -72
  48. data/script/release +0 -38
  49. data/script/validate-domains +0 -34
  50. data/script/vendor +0 -13
  51. data/script/vendor-federal-de +0 -14
  52. data/script/vendor-gov-list +0 -8
  53. data/script/vendor-public-suffix +0 -28
  54. data/script/vendor-swot +0 -43
  55. data/script/vendor-us +0 -42
  56. data/spec/fixtures/domains.txt +0 -4
  57. data/spec/fixtures/obama.txt +0 -5
  58. data/spec/gman/bin_spec.rb +0 -101
  59. data/spec/gman/country_code_spec.rb +0 -39
  60. data/spec/gman/domain_list_spec.rb +0 -110
  61. data/spec/gman/domains_spec.rb +0 -25
  62. data/spec/gman/identifier_spec.rb +0 -218
  63. data/spec/gman/importer_spec.rb +0 -236
  64. data/spec/gman/locality_spec.rb +0 -24
  65. data/spec/gman_spec.rb +0 -74
  66. data/spec/spec_helper.rb +0 -31
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: fc57dd46a54d019ca356131e6f915b8ce1105fcce38cff2bbfa00bfc14736395
4
- data.tar.gz: d39f45690057d362e1a119b2c6f57ecdf2ff99c37a68ca880315ffe5711ca18b
3
+ metadata.gz: 05dbe9c50c24586c2c071eccee35d04c016224fc909aea2699e09701bf0ac56b
4
+ data.tar.gz: f6aab93cdcec8b9c6330dfaead40263272a2cc48a075ec6549d2378c6f13c12b
5
5
  SHA512:
6
- metadata.gz: 81c4a0bc8b40fdfea16ece37bbe0068cebb8a9c79ec1a970f7da1918470c845b75f2efeaeb88e98c013987fdfded32fb42f9d0795d065e6150b2b4a512418c9d
7
- data.tar.gz: 304d191c1178d976cde998741b2b5c11ea9d331a8c8db2c1ce816d009b9e139014d63b3d3060d333cfd5fa7d4b0a0597d1fbd2f2c4e5c88b34d4f7b7de336295
6
+ metadata.gz: ce3099efeaef338677d10bcfa222c7be2d10405682c9bcd0dbc33d887e6e0050eecf31bbdac2a5b703431e1516534a18f2247cf921d42931e6c12ace08171f57
7
+ data.tar.gz: dfe56fb1e9a5c73710fddc489c6715cd8db0835b5725bc9814c497845d98cef52ed45b9af37464fd679fa7cc1493c7e057656e5b4b3ae8497d9734f439775277
data/bin/gman CHANGED
@@ -15,23 +15,18 @@ class IsoCountryCodes
15
15
  end
16
16
 
17
17
  domain = ARGV[0]
18
+ COLOR = ARGV.last != '--no-color' && ENV.fetch('NO_COLOR', '').empty?
18
19
 
19
- if ARGV.last == '--no-color'
20
- class String
21
- def red
22
- self
23
- end
20
+ def red(string)
21
+ COLOR ? "\e[31m#{string}\e[0m" : string
22
+ end
24
23
 
25
- def green
26
- self
27
- end
28
- end
29
- else
30
- require 'colored'
24
+ def green(string)
25
+ COLOR ? "\e[32m#{string}\e[0m" : string
31
26
  end
32
27
 
33
28
  if domain.to_s.empty? || domain == '--no-color'
34
- puts 'USAGE: gman <domain or email address> [--no-color]'.red
29
+ puts red('USAGE: gman <domain or email address> [--no-color]')
35
30
  exit 1
36
31
  end
37
32
 
@@ -40,16 +35,16 @@ gman = Gman.new(domain)
40
35
  puts "Domain : #{gman.domain}"
41
36
 
42
37
  if gman.domain.nil?
43
- puts "Status : #{'Invalid domain'.red}"
38
+ puts "Status : #{red('Invalid domain')}"
44
39
  exit 1
45
40
  end
46
41
 
47
42
  unless gman.valid?
48
- puts "Status : #{'Not a government domain'.red}"
43
+ puts "Status : #{red('Not a government domain')}"
49
44
  exit 1
50
45
  end
51
46
 
52
- puts "Status : #{'Valid government domain'.green}"
47
+ puts "Status : #{green('Valid government domain')}"
53
48
 
54
49
  %w[type country state city agency].each do |key|
55
50
  value = gman.send(key)
data/bin/gman_filter CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  # Given a list of newline-separated email addresses, retain only government
5
5
 
6
- require './lib/gman'
6
+ require_relative '../lib/gman'
7
7
 
8
8
  # Auto-flush
9
9
  $stdout.sync = true