tagutils 0.2.1 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -14,6 +14,7 @@ lib/tagutils/tags/active_record.rb
14
14
  lib/tagutils/tags/models/tag.rb
15
15
  lib/tagutils/tags/models/tag_comp.rb
16
16
  lib/tagutils/tags/models/tagging.rb
17
+ lib/tagutils/tags/patterns.rb
17
18
  lib/tagutils/tags/readers/tag.rb
18
19
  lib/tagutils/tags/schema.rb
19
20
  lib/tagutils/version.rb
@@ -13,17 +13,6 @@ require 'textutils'
13
13
  # move props/db - Props.create_from_fixture! to textutils/db
14
14
  # require 'textutils/db'
15
15
 
16
- #######################
17
- # fix/remove once removed from HashReaderV2
18
-
19
- module WorldDb
20
- module Model
21
- Prop = ConfDb::Model::Prop
22
- end
23
- Models = Model
24
- end
25
-
26
-
27
16
 
28
17
  # our own code
29
18
 
@@ -2,9 +2,10 @@
2
2
 
3
3
  module CategoryDb
4
4
 
5
- class CreateDb < ActiveRecord::Migration
5
+ class CreateDb
6
6
 
7
7
  def up
8
+ ActiveRecord::Schema.define do
8
9
 
9
10
  create_table :categories do |t|
10
11
  t.string :key, null: false
@@ -33,13 +34,10 @@ add_index :categorizations, :category_id, name: 'categorizations_cats_idx'
33
34
  add_index :categorizations, [:categorizable_id, :categorizable_type], name: 'categorizations_idx'
34
35
  add_index :categorizations, [:categorizable_id, :categorizable_type, :category_id], unique: true, name: 'categorizations_unique_idx'
35
36
 
37
+ end # Schema.define
36
38
  end # method up
37
39
 
38
40
 
39
- def down
40
- raise ActiveRecord::IrreversibleMigration
41
- end
42
-
43
41
  end # class CreateDb
44
42
 
45
43
  end # module CategoryDb
@@ -1,6 +1,7 @@
1
1
 
2
2
 
3
3
  require 'tagutils/tags/schema'
4
+ require 'tagutils/tags/patterns'
4
5
  require 'tagutils/tags/models/tag'
5
6
  require 'tagutils/tags/models/tag_comp'
6
7
  require 'tagutils/tags/models/tagging'
@@ -9,8 +9,7 @@ class Tag < ActiveRecord::Base
9
9
 
10
10
  ## nb: only allow spaces and underscore inbetween;
11
11
  ## do NOT allow digit as first char for now
12
- validates :key, :format => { :with => /^([a-z]|[a-z][a-z0-9_ ]*[a-z0-9])$/,
13
- :message => 'expected one or more lowercase letters a-z or 0-9 digits or space or underscore' }
12
+ validates :key, format: { with: /#{TAG_KEY_PATTERN}/, message: TAG_KEY_PATTERN_MESSAGE }
14
13
 
15
14
  scope :by_key, -> { order( 'key desc' ) }
16
15
  scope :by_name, -> { order( 'name desc' ) }
@@ -0,0 +1,37 @@
1
+ # encoding: utf-8
2
+
3
+ module TagDb
4
+
5
+ # collection of regex patterns for reuse (TagDb specific)
6
+
7
+ ### todo: add a patterns.md page to github ??
8
+ ## - add regexper pics??
9
+
10
+ ############
11
+ # about ruby regexps
12
+ #
13
+ # try the rubular - Ruby regular expression editor and tester
14
+ # -> http://rubular.com
15
+ # code -> ?? by ??
16
+ #
17
+ #
18
+ # Jeff Avallone's Regexper - Shows State-Automata Diagrams
19
+ # try -> http://regexper.com
20
+ # code -> https://github.com/javallone/regexper
21
+ #
22
+ #
23
+ # Regular Expressions | The Bastards Book of Ruby by Dan Nguyen
24
+ # http://ruby.bastardsbook.com/chapters/regexes/
25
+ #
26
+ # move to notes regex|patterns on geraldb.github.io ??
27
+ #
28
+
29
+
30
+ ## nb: only allow spaces and underscore inbetween;
31
+ ## do NOT allow digit as first char for now
32
+ TAG_KEY_PATTERN = '\A(?:[a-z]|[a-z][a-z0-9_ ]*[a-z0-9])\z'
33
+ TAG_KEY_PATTERN_MESSAGE = "expected one or more lowercase letters a-z or 0-9 digits or space or underscore /#{TAG_KEY_PATTERN}/"
34
+
35
+
36
+ end # module TagDb
37
+
@@ -2,9 +2,10 @@
2
2
 
3
3
  module TagDb
4
4
 
5
- class CreateDb < ActiveRecord::Migration
5
+ class CreateDb
6
6
 
7
7
  def up
8
+ ActiveRecord::Schema.define do
8
9
 
9
10
  create_table :tags do |t|
10
11
  t.string :key, null: false
@@ -33,13 +34,10 @@ add_index :taggings, :tag_id
33
34
  add_index :taggings, [:taggable_id, :taggable_type]
34
35
  add_index :taggings, [:taggable_id, :taggable_type, :tag_id], unique: true
35
36
 
37
+ end # Schema.define
36
38
  end # method up
37
39
 
38
40
 
39
- def down
40
- raise ActiveRecord::IrreversibleMigration
41
- end
42
-
43
41
  end # class CreateDb
44
42
 
45
43
  end # module TagDb
@@ -1,4 +1,5 @@
1
1
 
2
2
  module TagUtils
3
- VERSION = '0.2.1'
3
+ VERSION = '0.2.2'
4
4
  end
5
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tagutils
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-03-18 00:00:00.000000000 Z
12
+ date: 2014-04-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activerecord
16
- requirement: &86092400 !ruby/object:Gem::Requirement
16
+ requirement: &75986000 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *86092400
24
+ version_requirements: *75986000
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: logutils
27
- requirement: &86091990 !ruby/object:Gem::Requirement
27
+ requirement: &75985420 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,35 +32,37 @@ dependencies:
32
32
  version: '0.6'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *86091990
35
+ version_requirements: *75985420
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rdoc
38
- requirement: &86091650 !ruby/object:Gem::Requirement
38
+ requirement: &75984750 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
42
42
  - !ruby/object:Gem::Version
43
- version: '3.10'
43
+ version: '4.0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *86091650
46
+ version_requirements: *75984750
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: hoe
49
- requirement: &86091280 !ruby/object:Gem::Requirement
49
+ requirement: &75984290 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ~>
53
53
  - !ruby/object:Gem::Version
54
- version: '3.3'
54
+ version: '3.11'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *86091280
57
+ version_requirements: *75984290
58
58
  description: tagutils - tag utilities (tag, taggings, tag list, etc.)
59
59
  email: openmundi@googlegroups.com
60
60
  executables: []
61
61
  extensions: []
62
62
  extra_rdoc_files:
63
+ - HISTORY.md
63
64
  - Manifest.txt
65
+ - README.md
64
66
  files:
65
67
  - HISTORY.md
66
68
  - Manifest.txt
@@ -78,6 +80,7 @@ files:
78
80
  - lib/tagutils/tags/models/tag.rb
79
81
  - lib/tagutils/tags/models/tag_comp.rb
80
82
  - lib/tagutils/tags/models/tagging.rb
83
+ - lib/tagutils/tags/patterns.rb
81
84
  - lib/tagutils/tags/readers/tag.rb
82
85
  - lib/tagutils/tags/schema.rb
83
86
  - lib/tagutils/version.rb
@@ -108,7 +111,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
108
111
  - !ruby/object:Gem::Version
109
112
  version: '0'
110
113
  requirements: []
111
- rubyforge_project: tagutils
114
+ rubyforge_project:
112
115
  rubygems_version: 1.8.17
113
116
  signing_key:
114
117
  specification_version: 3