net-address 0.1.4 → 0.2.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: 25229c8e04c1fe3d69a813b68d6b96de643e4a9a95981d238b611a5173b3c951
4
- data.tar.gz: d66aa06f70358b3114a0dcfdf7566094b1ca28267210e883c0c9fbe45b60bd05
3
+ metadata.gz: dc39be4370950044d0e5f2bb5c0ca1b7a77410894689e757679f768b3aa62022
4
+ data.tar.gz: 60a6c90af147d3e6a7d20de2897d286dabdd5314bacaf587f36760f24ac6dccf
5
5
  SHA512:
6
- metadata.gz: 0ebfbbb16890e4c6c32ec12b977402b04041e7cf4ca71bc473626a6d4b4b0f7db7cd791f8eb3cf2775290574b4164e213fb62c0912439c007b927cff05a7a55e
7
- data.tar.gz: fd59553a4651dbde25dc641608cbbae544652d356b3430844e696a123beae2f45e877237b1b355602f101ff19f500b1f4fc2c8ab9e52eb39fb43dc901c5140dd
6
+ metadata.gz: c98fbadf8d8cd07610256fbbeec9137259823f48ed003af09f53265b9e9dedf1dfbdba595f00f21ff2f7a6680208bb6a83f17065792e0d5013b954ee5a1e4348
7
+ data.tar.gz: 26a9d42997f61d6c650d2b120db09a03031608ca3d180e1e86f4947a14f6ba54d0556d2af763f9d3aa13353268494f6c3681ab37ddfb5561a722deee50d0a86f
@@ -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
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.0"
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.0
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