net-address 0.1.4 → 0.2.1

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: 25229c8e04c1fe3d69a813b68d6b96de643e4a9a95981d238b611a5173b3c951
4
- data.tar.gz: d66aa06f70358b3114a0dcfdf7566094b1ca28267210e883c0c9fbe45b60bd05
3
+ metadata.gz: 218beded001a6aaa1e86bffbaa47ee9c015f69adb9b16deb928f30f984266292
4
+ data.tar.gz: 9ca81975952688f85826ce7a41e2ee849912b0681afdf45c94f9269ac765ac94
5
5
  SHA512:
6
- metadata.gz: 0ebfbbb16890e4c6c32ec12b977402b04041e7cf4ca71bc473626a6d4b4b0f7db7cd791f8eb3cf2775290574b4164e213fb62c0912439c007b927cff05a7a55e
7
- data.tar.gz: fd59553a4651dbde25dc641608cbbae544652d356b3430844e696a123beae2f45e877237b1b355602f101ff19f500b1f4fc2c8ab9e52eb39fb43dc901c5140dd
6
+ metadata.gz: 5abf59048363abba6a56702286c2da3f4a3f7f036ec30d8601ea6f894015af384e00cffc47c8e8ff9df5cbaa7f9c7cf8f94587474295a61f557b9e4aba59561a
7
+ data.tar.gz: 90f01f5d714831bc540a7522ee7af8ea3c11ca260ff82324ff6a06c341444c532d24307970a96a837445102955542b2ec493ad8143cc0df9a6d84c49163329cf
@@ -0,0 +1,40 @@
1
+ name: Ruby Gem
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+
8
+ jobs:
9
+ create-tag:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: actions/checkout@v3
13
+
14
+ - name: Create Git tag
15
+ run: |
16
+ VERSION=$(ruby -e "require 'rubygems'; spec = Gem::Specification.load(Dir.glob('*.gemspec').first); puts spec.version")
17
+ git tag v$VERSION
18
+ git push origin v$VERSION
19
+
20
+ build-and-publish:
21
+ runs-on: ubuntu-latest
22
+ permissions:
23
+ contents: read
24
+ packages: write
25
+ steps:
26
+ - uses: actions/checkout@v3
27
+
28
+ - name: Set up Ruby
29
+ uses: ruby/setup-ruby@v1
30
+
31
+ - name: Publish to RubyGems
32
+ run: |
33
+ mkdir -p $HOME/.gem
34
+ touch $HOME/.gem/credentials
35
+ chmod 0600 $HOME/.gem/credentials
36
+ printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
37
+ gem build *.gemspec
38
+ gem push *.gem
39
+ env:
40
+ GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
@@ -0,0 +1,20 @@
1
+ name: Run Tests
2
+
3
+ on: [push, pull_request]
4
+
5
+ jobs:
6
+ test:
7
+ runs-on: ubuntu-latest
8
+
9
+ steps:
10
+ - name: Checkout code
11
+ uses: actions/checkout@v3
12
+
13
+ - name: Set up Ruby
14
+ uses: ruby/setup-ruby@v1
15
+
16
+ - name: Install dependencies
17
+ run: bundle install
18
+
19
+ - name: Run tests
20
+ run: bundle exec rake spec
data/.ruby-gemset ADDED
@@ -0,0 +1 @@
1
+ net-address
data/.ruby-version ADDED
@@ -0,0 +1 @@
1
+ truffleruby-22.3.1
@@ -4,6 +4,7 @@
4
4
 
5
5
  require 'net/address/mask'
6
6
  require 'ipaddr'
7
+ require 'json'
7
8
 
8
9
  module Net
9
10
  module Address
@@ -30,10 +31,26 @@ module Net
30
31
  "#{to_s}/#{mask.to_cidr}"
31
32
  end
32
33
 
34
+ alias to_cidr to_str
35
+
33
36
  def to_i
34
37
  @address
35
38
  end
36
39
 
40
+ def to_h
41
+ {
42
+ address: self.to_s,
43
+ mask: self.mask.to_s,
44
+ net: self.net.to_s,
45
+ broadcast: self.broadcast.to_s,
46
+ cidr: self.to_cidr
47
+ }
48
+ end
49
+
50
+ def to_json(*params)
51
+ to_h.to_json
52
+ end
53
+
37
54
  def <=>(other)
38
55
  self.to_i <=> (other.is_a?(self.class) ? other.to_i : self.class.new(other).to_i)
39
56
  end
@@ -1,5 +1,5 @@
1
1
  module Net
2
2
  module Address
3
- VERSION = "0.1.4"
3
+ VERSION = "0.2.1"
4
4
  end
5
5
  end
data/net-address.gemspec CHANGED
@@ -21,9 +21,9 @@ Gem::Specification.new do |spec|
21
21
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
22
22
  spec.require_paths = ["lib"]
23
23
 
24
- spec.add_development_dependency "bundler", "~> 1.16"
25
- spec.add_development_dependency "rake", "~> 10.0"
26
- spec.add_development_dependency "rspec", "~> 3.0"
24
+ spec.add_development_dependency "bundler"
25
+ spec.add_development_dependency "rake"
26
+ spec.add_development_dependency "rspec"
27
27
 
28
- spec.required_ruby_version = '>= 2.2.0'
28
+ spec.required_ruby_version = '>= 3.0.0'
29
29
  end
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: net-address
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piotr Wojcieszonek
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2018-02-20 00:00:00.000000000 Z
11
+ date: 2023-08-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.16'
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.16'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '10.0'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '10.0'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rspec
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '3.0'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '3.0'
54
+ version: '0'
55
55
  description: Net::Address is a Ruby library designed to make manipulation of network
56
56
  addresses such as MAC, IPv4, Netmask.
57
57
  email:
@@ -60,9 +60,12 @@ executables: []
60
60
  extensions: []
61
61
  extra_rdoc_files: []
62
62
  files:
63
+ - ".github/workflows/gem-push.yml"
64
+ - ".github/workflows/run-test.yml"
63
65
  - ".gitignore"
64
66
  - ".rspec"
65
- - ".travis.yml"
67
+ - ".ruby-gemset"
68
+ - ".ruby-version"
66
69
  - CODE_OF_CONDUCT.md
67
70
  - Gemfile
68
71
  - LICENSE.txt
@@ -80,7 +83,7 @@ homepage: https://github.com/pwojcieszonek/net-address
80
83
  licenses:
81
84
  - MIT
82
85
  metadata: {}
83
- post_install_message:
86
+ post_install_message:
84
87
  rdoc_options: []
85
88
  require_paths:
86
89
  - lib
@@ -88,16 +91,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
88
91
  requirements:
89
92
  - - ">="
90
93
  - !ruby/object:Gem::Version
91
- version: 2.2.0
94
+ version: 3.0.0
92
95
  required_rubygems_version: !ruby/object:Gem::Requirement
93
96
  requirements:
94
97
  - - ">="
95
98
  - !ruby/object:Gem::Version
96
99
  version: '0'
97
100
  requirements: []
98
- rubyforge_project:
99
- rubygems_version: 2.7.6
100
- signing_key:
101
+ rubygems_version: 3.2.32
102
+ signing_key:
101
103
  specification_version: 4
102
104
  summary: Ruby library for network addresses
103
105
  test_files: []
data/.travis.yml DELETED
@@ -1,13 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.4.3
5
- before_install: gem install bundler -v 1.16.0
6
- deploy:
7
- provider: rubygems
8
- api_key:
9
- secure: UE5A71MwHTf57ohHMPO6J1+u3n0YKMrXNhiiurgBDWqJqkv1X5KGUJF+MKE/9s0Y0jLcm8+qT3EipRVoxGXR8kHBa+8qt0KzTM9hZBZmmdAmPSWo2/sMJ8+AvW31zRSVU4UA0i4GNcnS//PJTrql5e6FYoyAyrarHCVqXnQYqX0GiywquJfXPjWNPRYZZFbKqvYYJgmUiawJbJe2L9Q6VR9vom//wAgz+cizBnsi0xDp6CD2qw6FcuU5T0/7om/SmnTwz5570RngzwraZFDmEMupL2jW14FijqZLEFCz+NTpxxjp6cRhjGMi9kcsgXJ0ltUINn5b62HHUjPes2UFlpfF62a9TUj48K20xwlYJT2iU7PfeZUWK0qTpejJCfsTC+ylCx6k1zpH/ePmhUTOXLgF0oVx6vdbHCOp7U5eObEk00JKHWFIXOV8qPSgGC3JUloY6xGEJS4V//6l/I/4oqkA+qZGAzVY2xbznh+3JuSrBorqH9xZg0pHePH1CHcKbu0p3v//JbjNMst1KaUKOWC7S8Eu9psktxDdaPDu2ijWYVWqBzquU1s79ft7smnsGU8hxtUdinMDSMWnSvZU79dssfq52rTgUnaP528j72KtxLMYuyxn7Q9twx3Yi2v9vkMZUTreCuMppjqIfOZTuCmYJs+jRyYxVxsj5E32Of8=
10
- gem: net-address
11
- on:
12
- tags: true
13
- repo: pwojcieszonek/net-address