tagutils 0.2.2 → 0.3.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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: e34415c99adfedcb4bd078a328b52a7c9f418931
4
+ data.tar.gz: ba4d539d363122e793a0b8fac7609025520623cc
5
+ SHA512:
6
+ metadata.gz: c2ae676b1df654904a593519c0bfbb1874ebaaebf299977809b7c6ff007baef78be882d7ae00ffa1e1a662427b002131d7bc50c517f3a5946a5a1c5e7ffdef53
7
+ data.tar.gz: f262dc809c38d893e7020be236bbfa5c9cbcceac3f49a38d6fc746862f43f268ba69739d578b84c1ec84cd9dec892ae5ba63026e2c18e05abdcad2d071be86fa
data/Rakefile CHANGED
@@ -19,13 +19,15 @@ Hoe.spec 'tagutils' do
19
19
 
20
20
  self.extra_deps = [
21
21
  ['activerecord' ],
22
- ['logutils', '>= 0.6']
22
+ ['props', '>=1.1.2'],
23
+ ['logutils', '>= 0.6.1'],
24
+ ['textutils', '>=0.10.0']
23
25
  ]
24
26
 
25
27
  self.licenses = ['Public Domain']
26
28
 
27
29
  self.spec_extras = {
28
- :required_ruby_version => '>= 1.9.2'
30
+ required_ruby_version: '>= 1.9.2'
29
31
  }
30
32
 
31
33
 
@@ -4,15 +4,9 @@
4
4
  require 'active_record' ## todo: add sqlite3? etc.
5
5
 
6
6
  require 'props'
7
- require 'props/db' # note: also use ConfDb (ConfDb::Model::Prop etc.)
8
7
  require 'logutils'
9
8
  require 'textutils'
10
9
 
11
- #########
12
- # fix/todo:
13
- # move props/db - Props.create_from_fixture! to textutils/db
14
- # require 'textutils/db'
15
-
16
10
 
17
11
  # our own code
18
12
 
@@ -43,4 +37,5 @@ module TagUtils
43
37
  end # module TagUtils
44
38
 
45
39
 
46
- puts TagUtils.banner # say hello
40
+ # say hello
41
+ puts TagUtils.banner if $DEBUG || (defined?($RUBYLIBS_DEBUG) && $RUBYLIBS_DEBUG)
@@ -16,20 +16,46 @@ class TagReader
16
16
  include TextUtils::ValueHelper
17
17
 
18
18
 
19
- attr_reader :include_path
19
+ def self.from_zip( zip_file, entry_path, more_attribs={} )
20
+ ## get text content from zip
21
+ entry = zip_file.find_entry( entry_path )
20
22
 
23
+ text = entry.get_input_stream().read()
24
+ text = text.force_encoding( Encoding::UTF_8 )
25
+
26
+ self.from_string( text, more_attribs )
27
+ end
28
+
29
+ def self.from_file( path, more_attribs={} )
30
+ ## note: assume/enfore utf-8 encoding (with or without BOM - byte order mark)
31
+ ## - see textutils/utils.rb
32
+ text = File.read_utf8( path )
33
+
34
+ self.from_string( text, more_attribs )
35
+ end
36
+
37
+ def self.from_string( text, more_attribs={} )
38
+ TagReader.new( text, more_attribs )
39
+ end
40
+
41
+
42
+ def initialize( text, more_attribs={} )
43
+ ## todo/fix: how to add opts={} ???
44
+ @text = text
45
+ @more_attribs = more_attribs
46
+ end
47
+
48
+ ## fix: for now no way to pass in opts hash
21
49
  def strict?() @strict == true; end
22
50
 
23
- def initialize( include_path, opts = {} )
24
-
51
+ def initialize_old_removeeeee( include_path, opts = {} )
25
52
  @include_path = include_path
26
53
 
27
54
  ## option: for now issue warning on update, that is, if key/record (country,region,city) already exists
28
55
  @strict = opts[:strict].present? ? true : false
29
56
  end
30
57
 
31
-
32
- def read( name )
58
+ def read_old_removeeee( name )
33
59
  ## check for grade in name e.g. tag.1, tag.2 etc.
34
60
 
35
61
  if name =~ /^tag.*\.(\d)$/
@@ -40,14 +66,13 @@ class TagReader
40
66
  end
41
67
 
42
68
 
43
- def read_worker( name, more_attribs={} )
44
-
45
- reader = HashReaderV2.new( name, include_path )
69
+ def read()
70
+ reader = HashReader.from_string( @text ) # NOTE: for now HashReader does NOT accept 2nd more_attributes para - check back later
46
71
 
47
72
  grade = 1
48
73
 
49
- if more_attribs[:grade].present?
50
- grade = more_attribs[:grade].to_i
74
+ if @more_attribs[:grade].present?
75
+ grade = @more_attribs[:grade].to_i
51
76
  end
52
77
 
53
78
  reader.each do |key, value|
@@ -93,7 +118,7 @@ class TagReader
93
118
  end
94
119
  end # each key,value
95
120
 
96
- end # method read_worker
121
+ end # method read
97
122
 
98
123
 
99
124
  end # class TagReader
@@ -1,5 +1,5 @@
1
1
 
2
2
  module TagUtils
3
- VERSION = '0.2.2'
3
+ VERSION = '0.3.0'
4
4
  end
5
5
 
@@ -3,28 +3,15 @@
3
3
 
4
4
  ## minitest setup
5
5
 
6
- # require 'minitest/unit'
7
6
  require 'minitest/autorun'
8
7
 
9
- # include MiniTest::Unit # lets us use TestCase instead of MiniTest::Unit::TestCase
10
-
11
-
12
- # ruby stdlibs
13
-
14
- require 'json'
15
- require 'uri'
16
- require 'pp'
17
- require 'logger'
18
-
19
- # ruby gems
20
-
21
- require 'active_record'
22
-
23
8
 
24
9
  # our own code
25
10
 
26
11
  require 'tagutils'
27
- require 'logutils/db' # NB: explict require required for LogDb (not automatic)
12
+
13
+ require 'logutils/activerecord' # NB: explict require required for LogDb (not automatic)
14
+ require 'props/activerecord' # NB: explict require required for ConfDb (not automatic)
28
15
 
29
16
 
30
17
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'helper'
4
4
 
5
- class TestModels < MiniTest::Unit::TestCase
5
+ class TestModels < MiniTest::Test
6
6
 
7
7
  def setup
8
8
  TagDb.delete!
@@ -2,7 +2,7 @@
2
2
 
3
3
  require 'helper'
4
4
 
5
- class TestTagReader < MiniTest::Unit::TestCase
5
+ class TestTagReader < MiniTest::Test
6
6
 
7
7
  def setup
8
8
  TagDb.delete!
@@ -13,10 +13,12 @@ class TestTagReader < MiniTest::Unit::TestCase
13
13
 
14
14
  def test_read
15
15
  include_path = "#{TagUtils.root}/test"
16
- puts "[TestTagReader.test_read] include_path: #{include_path}"
17
-
18
- reader = TagDb::TagReader.new( include_path )
19
- reader.read( 'tags.1' )
16
+
17
+ path = "#{include_path}/tags.1.yml"
18
+ puts "[TestTagReader.test_read] path: #{path}"
19
+
20
+ reader = TagDb::TagReader.from_file( path )
21
+ reader.read()
20
22
  end
21
23
 
22
24
 
metadata CHANGED
@@ -1,60 +1,99 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tagutils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
5
- prerelease:
4
+ version: 0.3.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Gerald Bauer
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-04-14 00:00:00.000000000 Z
11
+ date: 2014-12-04 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: activerecord
16
- requirement: &75986000 !ruby/object:Gem::Requirement
17
- none: false
15
+ requirement: !ruby/object:Gem::Requirement
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
- version_requirements: *75986000
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: props
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 1.1.2
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 1.1.2
25
41
  - !ruby/object:Gem::Dependency
26
42
  name: logutils
27
- requirement: &75985420 !ruby/object:Gem::Requirement
28
- none: false
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: 0.6.1
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: 0.6.1
55
+ - !ruby/object:Gem::Dependency
56
+ name: textutils
57
+ requirement: !ruby/object:Gem::Requirement
29
58
  requirements:
30
- - - ! '>='
59
+ - - ">="
31
60
  - !ruby/object:Gem::Version
32
- version: '0.6'
61
+ version: 0.10.0
33
62
  type: :runtime
34
63
  prerelease: false
35
- version_requirements: *75985420
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: 0.10.0
36
69
  - !ruby/object:Gem::Dependency
37
70
  name: rdoc
38
- requirement: &75984750 !ruby/object:Gem::Requirement
39
- none: false
71
+ requirement: !ruby/object:Gem::Requirement
40
72
  requirements:
41
- - - ~>
73
+ - - "~>"
42
74
  - !ruby/object:Gem::Version
43
75
  version: '4.0'
44
76
  type: :development
45
77
  prerelease: false
46
- version_requirements: *75984750
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '4.0'
47
83
  - !ruby/object:Gem::Dependency
48
84
  name: hoe
49
- requirement: &75984290 !ruby/object:Gem::Requirement
50
- none: false
85
+ requirement: !ruby/object:Gem::Requirement
51
86
  requirements:
52
- - - ~>
87
+ - - "~>"
53
88
  - !ruby/object:Gem::Version
54
- version: '3.11'
89
+ version: '3.13'
55
90
  type: :development
56
91
  prerelease: false
57
- version_requirements: *75984290
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '3.13'
58
97
  description: tagutils - tag utilities (tag, taggings, tag list, etc.)
59
98
  email: openmundi@googlegroups.com
60
99
  executables: []
@@ -64,6 +103,7 @@ extra_rdoc_files:
64
103
  - Manifest.txt
65
104
  - README.md
66
105
  files:
106
+ - ".gemtest"
67
107
  - HISTORY.md
68
108
  - Manifest.txt
69
109
  - README.md
@@ -88,33 +128,31 @@ files:
88
128
  - test/tags.1.yml
89
129
  - test/test_models.rb
90
130
  - test/test_tag_reader.rb
91
- - .gemtest
92
131
  homepage: https://github.com/rubylibs/tagutils
93
132
  licenses:
94
133
  - Public Domain
134
+ metadata: {}
95
135
  post_install_message:
96
136
  rdoc_options:
97
- - --main
137
+ - "--main"
98
138
  - README.md
99
139
  require_paths:
100
140
  - lib
101
141
  required_ruby_version: !ruby/object:Gem::Requirement
102
- none: false
103
142
  requirements:
104
- - - ! '>='
143
+ - - ">="
105
144
  - !ruby/object:Gem::Version
106
145
  version: 1.9.2
107
146
  required_rubygems_version: !ruby/object:Gem::Requirement
108
- none: false
109
147
  requirements:
110
- - - ! '>='
148
+ - - ">="
111
149
  - !ruby/object:Gem::Version
112
150
  version: '0'
113
151
  requirements: []
114
152
  rubyforge_project:
115
- rubygems_version: 1.8.17
153
+ rubygems_version: 2.4.2
116
154
  signing_key:
117
- specification_version: 3
155
+ specification_version: 4
118
156
  summary: tagutils - tag utilities (tag, taggings, tag list, etc.)
119
157
  test_files:
120
158
  - test/test_models.rb