impuri 0.12.2 → 0.12.4

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: f5cc899b2f4bb6e635e782943a9d0d59a612865b6bbfd44926849080a0fd1f27
4
- data.tar.gz: 5fb2d56fd7fd4c77b176353395c031712c86c4c490dc407329f9d06bff8ce9c6
3
+ metadata.gz: aab104dee6358b2a2b622ff7dbc2ab1c475efcfe16292c697267291cc9f18864
4
+ data.tar.gz: 17bc26c213a267651ece96bf4d6c381695736a18e87f8dd1fbcf74f7d537e3e6
5
5
  SHA512:
6
- metadata.gz: 2a2a76bb15ea534ea0d4ff62e23ed902bf4eef572c81e95ef06ee0dc239eef0544afc35bab23ee6080665e6a9fbb4beb39bce0d7c063cfc1701cea0d7cbffc5e
7
- data.tar.gz: 7f7231c76af182b6bf4173956d6bc1547d99d5ac80afeabbb2d88cb065587e0c9c4f7a54422d41d734ec269b7528fd5ac5ca3fdff00f4c39d543396d3babe618
6
+ metadata.gz: b4a25caaf3a3094446d53d6f92806588ee30dbe231fca48990d2ecfbeca8946b23520b244c4201f5d22f72c27610db7c6e1502816e1b846fe32babb2e49a4a85
7
+ data.tar.gz: 5fbbfb0301df0e1e44f20e3cf76bea7a840789a4f2c7c6be7a9e2b02d46ef8ace0462db03eef59586b94f48ecc04db7fdc4485a4017c85624d08710404eb5572
data/CHANGELOG CHANGED
@@ -2,6 +2,23 @@
2
2
 
3
3
  ## 20260819
4
4
 
5
+ 0.12.4: + LICENSE, which the gemspec had claimed since 0.8.0 without one being present.
6
+
7
+ 1. + LICENSE: the MIT text, copyright 2011-2026, the repository's first commit being from 2011. spec.license = 'MIT' has been declared since the gemspec was written, so rubygems has shown a licence for this gem that the repository did not carry and the built gem did not contain. Anyone taking the gem at its word had nothing to read.
8
+ 2. ~ impuri.gemspec: + 'LICENSE' to spec.files, without which the file would sit in the repository and still not ship.
9
+ 3. ~ CHANGELOG: 20260805 carried two headings, the first holding 0.11.0, 0.10.1 and 0.10.0 and the second 0.9.0 alone, so one day's work read as two. Merged, with no entry moved, reworded or renumbered. Recorded here rather than released on its own: nobody needs telling that a duplicate heading went.
10
+ 4. ~ ImpURI::VERSION: /0.12.3/0.12.4/
11
+
12
+ 0.12.3: Bring the tests up to standard: a Rakefile, *_test.rb naming, and a test helper.
13
+
14
+ 1. + Rakefile: Rake::TestTask over FileList['test/**/*_test.rb'], with default: :test, a :spec alias and a :version task. Modelled on moby's. Every other gem here is run with rake and this one had no Rakefile at all, the suite being run by hand through a loader.
15
+ 2. ~ test/ImpURI/class_methods.rb --> test/ImpURI/class_methods_test.rb, and instance_methods.rb likewise, so that the runner finds them by pattern rather than by a loader naming each one.
16
+ 3. + test/test_helper.rb: minitest/autorun and the library. Each test file had been repeating gem 'minitest', a $LOAD_PATH.unshift and two requires; they now require the helper alone.
17
+ 4. - test/ImpURI.rb: the hand-written loader. It named each test file, so a new test had to be registered in two places, and both tests added at 0.12.1 and 0.12.2 needed a line there. FileList does that now.
18
+ 5. ~ impuri.gemspec: + 'Rakefile' to spec.files and + rake to spec.development_dependencies, both following from the above.
19
+ 6. ~ test/gemspec_test.rb: + rake to the expected development dependencies, that assertion being exact.
20
+ 7. ~ ImpURI::VERSION: /0.12.2/0.12.3/
21
+
5
22
  0.12.2: Adopt the CHANGELOG-matching version test.
6
23
 
7
24
  1. + test/ImpURI/VERSION_test.rb: that ImpURI::VERSION is a String, that it is three numbers separated by dots, and that it matches the newest entry in the CHANGELOG. The last is the one with teeth — a release which moves the constant and forgets the CHANGELOG, or the reverse, fails here rather than shipping — and it was verified by pointing it at a stale constant, which it caught. Modelled on moby's, which is where this pair was settled.
@@ -28,6 +45,7 @@
28
45
  5. + Nine tests over both directions, the password, the port number, and a descriptor with no path at all, which gives hostname and a colon, that being the login directory.
29
46
  6. Written for git-boot, which had been interpolating "#{username}@#{hostname}:#{path}" and getting git@github.com:/thoran/lineage for its trouble: a URI path spliced into a position where the leading slash means something else. That is a fault in the caller and not here, but a library which parses both forms may as well render both.
30
47
 
48
+
31
49
  ## 20260805
32
50
 
33
51
  0.11.0: Name the entry point and the gemspec for the gem.
@@ -47,9 +65,6 @@
47
65
  2. - ImpURI.gemspec: the development dependency upon minitest-global_expectations, which was added in 0.9.0 only to keep the tests running while they were in the old form.
48
66
  3. ~ tests: require 'minitest/global_expectations/autorun' --> require 'minitest/autorun'.
49
67
 
50
-
51
- ## 20260805
52
-
53
68
  0.9.0: Make the gem loadable on its own, rather than only where the helper files were already on the load path.
54
69
 
55
70
  1. Moved the vendored helpers from lib/ImpURI/ up into lib/, so that they sit where they are required from. 0.8.0 shipped all seventeen of them, but one directory too deep: only lib/ goes onto the load path, so require '_meta/blankQ' looked for lib/_meta/blankQ.rb while the file sat at lib/ImpURI/_meta/blankQ.rb. The gem could therefore only be loaded on a machine which already had those helpers elsewhere on the load path, which is to say mine.
data/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2011-2026 thoran
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
data/Rakefile ADDED
@@ -0,0 +1,22 @@
1
+ # Rakefile
2
+
3
+ require 'rake/testtask'
4
+
5
+ Rake::TestTask.new(:test) do |t|
6
+ t.libs << 'lib'
7
+ t.libs << 'test'
8
+ t.test_files = FileList['test/**/*_test.rb']
9
+ t.verbose = true
10
+ t.warning = false
11
+ end
12
+
13
+ task default: :test
14
+
15
+ desc "Run tests"
16
+ task :spec => :test
17
+
18
+ desc "Show version"
19
+ task :version do
20
+ require_relative './lib/ImpURI/VERSION'
21
+ puts "impuri #{ImpURI::VERSION}"
22
+ end
data/impuri.gemspec CHANGED
@@ -36,11 +36,14 @@ Gem::Specification.new do |spec|
36
36
  'CHANGELOG',
37
37
  'Gemfile',
38
38
  'impuri.gemspec',
39
+ 'LICENSE',
40
+ 'Rakefile',
39
41
  'README.md',
40
42
  'TODO.txt',
41
43
  ].flatten
42
44
 
43
45
  spec.development_dependencies = [
44
46
  ['minitest', '~> 6.0'],
47
+ ['rake'],
45
48
  ]
46
49
  end
@@ -2,5 +2,5 @@
2
2
  # ImpURI::VERSION
3
3
 
4
4
  class ImpURI
5
- VERSION = '0.12.2'
5
+ VERSION = '0.12.4'
6
6
  end
@@ -1,11 +1,6 @@
1
1
  # test/ImpURI/VERSION_test.rb
2
2
 
3
- gem 'minitest'
4
-
5
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib')))
6
-
7
- require 'impuri'
8
- require 'minitest/autorun'
3
+ require_relative '../test_helper'
9
4
 
10
5
  describe ImpURI do
11
6
  describe "VERSION" do
@@ -1,11 +1,6 @@
1
- # test/ImpURI/class_methods.rb
1
+ # test/ImpURI/class_methods_test.rb
2
2
 
3
- gem 'minitest'
4
-
5
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib')))
6
-
7
- require 'impuri'
8
- require 'minitest/autorun'
3
+ require_relative '../test_helper'
9
4
 
10
5
  describe ImpURI do
11
6
  describe 'ImpURI class methods' do
@@ -1,11 +1,6 @@
1
- # test/ImpURI/instance_methods.rb
1
+ # test/ImpURI/instance_methods_test.rb
2
2
 
3
- gem 'minitest'
4
-
5
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib')))
6
-
7
- require 'impuri'
8
- require 'minitest/autorun'
3
+ require_relative '../test_helper'
9
4
 
10
5
  describe ImpURI do
11
6
  describe 'attribute readers' do
data/test/gemspec_test.rb CHANGED
@@ -1,11 +1,6 @@
1
1
  # test/gemspec_test.rb
2
2
 
3
- gem 'minitest'
4
-
5
- $LOAD_PATH.unshift(File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib')))
6
-
7
- require 'impuri'
8
- require 'minitest/autorun'
3
+ require_relative './test_helper'
9
4
 
10
5
  describe 'impuri.gemspec' do
11
6
  let(:spec){Gem::Specification.load(File.expand_path('../impuri.gemspec', __dir__))}
@@ -37,6 +32,6 @@ describe 'impuri.gemspec' do
37
32
  end
38
33
 
39
34
  it "declares its development dependencies" do
40
- _(spec.development_dependencies.map(&:name).sort).must_equal(%w{minitest})
35
+ _(spec.development_dependencies.map(&:name).sort).must_equal(%w{minitest rake})
41
36
  end
42
37
  end
@@ -0,0 +1,5 @@
1
+ # test/test_helper.rb
2
+
3
+ require 'minitest/autorun'
4
+
5
+ require_relative '../lib/impuri'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: impuri
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.2
4
+ version: 0.12.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - thoran
@@ -23,6 +23,20 @@ dependencies:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
25
  version: '6.0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: rake
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
26
40
  description: This is a hand-written non-validating parser for URI's and ssh/scp almost
27
41
  URI resource descriptors, which is intended to be cleaner and simpler than Ruby's
28
42
  standard URI.
@@ -33,7 +47,9 @@ extra_rdoc_files: []
33
47
  files:
34
48
  - CHANGELOG
35
49
  - Gemfile
50
+ - LICENSE
36
51
  - README.md
52
+ - Rakefile
37
53
  - TODO.txt
38
54
  - impuri.gemspec
39
55
  - lib/Array/all_but_first.rb
@@ -56,11 +72,11 @@ files:
56
72
  - lib/TrueClass/blankQ.rb
57
73
  - lib/_meta/blankQ.rb
58
74
  - lib/impuri.rb
59
- - test/ImpURI.rb
60
75
  - test/ImpURI/VERSION_test.rb
61
- - test/ImpURI/class_methods.rb
62
- - test/ImpURI/instance_methods.rb
76
+ - test/ImpURI/class_methods_test.rb
77
+ - test/ImpURI/instance_methods_test.rb
63
78
  - test/gemspec_test.rb
79
+ - test/test_helper.rb
64
80
  homepage: https://github.com/thoran/ImpURI
65
81
  licenses:
66
82
  - MIT
data/test/ImpURI.rb DELETED
@@ -1,11 +0,0 @@
1
- # test/ImpURI.rb
2
-
3
- gem 'minitest'
4
-
5
- test_dir = File.dirname(File.expand_path(__FILE__))
6
- $LOAD_PATH.unshift(test_dir) unless $LOAD_PATH.include?(test_dir)
7
-
8
- require 'ImpURI/class_methods'
9
- require 'ImpURI/instance_methods'
10
- require 'gemspec_test'
11
- require 'ImpURI/VERSION_test'