make_taggable 0.6.4 → 0.7.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.dummyrc +17 -0
- data/.github/workflows/ci.yml +132 -21
- data/.gitignore +4 -0
- data/Appraisals +4 -0
- data/CONTRIBUTING.md +5 -31
- data/README.md +61 -37
- data/Rakefile +3 -0
- data/UPGRADING.md +1 -1
- data/gemfiles/rails_6_1.gemfile +9 -0
- data/lib/make_taggable.rb +4 -4
- data/lib/make_taggable/tag.rb +1 -1
- data/lib/make_taggable/version.rb +1 -2
- data/lib/tasks/setup_test_db.rake +8 -0
- data/make_taggable.gemspec +28 -15
- metadata +85 -249
- data/.standard.yml +0 -18
- data/.standard_todo.yml +0 -5
- data/.travis.yml +0 -36
- data/LICENSE.txt +0 -21
- data/spec/dummy/README.md +0 -24
- data/spec/dummy/Rakefile +0 -6
- data/spec/dummy/app/assets/config/manifest.js +0 -2
- data/spec/dummy/app/channels/application_cable/channel.rb +0 -4
- data/spec/dummy/app/channels/application_cable/connection.rb +0 -4
- data/spec/dummy/app/controllers/application_controller.rb +0 -2
- data/spec/dummy/app/controllers/concerns/.keep +0 -0
- data/spec/dummy/app/jobs/application_job.rb +0 -7
- data/spec/dummy/app/mailers/application_mailer.rb +0 -4
- data/spec/dummy/app/models/altered_inheriting_taggable_model.rb +0 -5
- data/spec/dummy/app/models/application_record.rb +0 -3
- data/spec/dummy/app/models/cached_model.rb +0 -3
- data/spec/dummy/app/models/cached_model_with_array.rb +0 -11
- data/spec/dummy/app/models/columns_override_model.rb +0 -5
- data/spec/dummy/app/models/company.rb +0 -15
- data/spec/dummy/app/models/concerns/.keep +0 -0
- data/spec/dummy/app/models/inheriting_taggable_model.rb +0 -4
- data/spec/dummy/app/models/market.rb +0 -2
- data/spec/dummy/app/models/non_standard_id_taggable_model.rb +0 -8
- data/spec/dummy/app/models/ordered_taggable_model.rb +0 -4
- data/spec/dummy/app/models/other_cached_model.rb +0 -3
- data/spec/dummy/app/models/other_taggable_model.rb +0 -4
- data/spec/dummy/app/models/student.rb +0 -4
- data/spec/dummy/app/models/taggable_model.rb +0 -14
- data/spec/dummy/app/models/untaggable_model.rb +0 -3
- data/spec/dummy/app/models/user.rb +0 -3
- data/spec/dummy/app/views/layouts/mailer.html.erb +0 -13
- data/spec/dummy/app/views/layouts/mailer.text.erb +0 -1
- data/spec/dummy/bin/rails +0 -4
- data/spec/dummy/bin/rake +0 -4
- data/spec/dummy/bin/setup +0 -33
- data/spec/dummy/config.ru +0 -5
- data/spec/dummy/config/application.rb +0 -19
- data/spec/dummy/config/boot.rb +0 -5
- data/spec/dummy/config/cable.yml +0 -10
- data/spec/dummy/config/credentials.yml.enc +0 -1
- data/spec/dummy/config/database.yml +0 -25
- data/spec/dummy/config/environment.rb +0 -5
- data/spec/dummy/config/environments/development.rb +0 -52
- data/spec/dummy/config/environments/production.rb +0 -105
- data/spec/dummy/config/environments/test.rb +0 -49
- data/spec/dummy/config/initializers/application_controller_renderer.rb +0 -8
- data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
- data/spec/dummy/config/initializers/cors.rb +0 -16
- data/spec/dummy/config/initializers/filter_parameter_logging.rb +0 -4
- data/spec/dummy/config/initializers/inflections.rb +0 -16
- data/spec/dummy/config/initializers/mime_types.rb +0 -4
- data/spec/dummy/config/initializers/wrap_parameters.rb +0 -14
- data/spec/dummy/config/locales/en.yml +0 -33
- data/spec/dummy/config/master.key +0 -1
- data/spec/dummy/config/puma.rb +0 -38
- data/spec/dummy/config/routes.rb +0 -3
- data/spec/dummy/config/spring.rb +0 -6
- data/spec/dummy/config/storage.yml +0 -34
- data/spec/dummy/db/migrate/20201119220853_create_taggable_models.rb +0 -8
- data/spec/dummy/db/migrate/20201119221037_create_columns_override_models.rb +0 -9
- data/spec/dummy/db/migrate/20201119221121_create_non_standard_id_taggable_models.rb +0 -8
- data/spec/dummy/db/migrate/20201119221228_create_untaggable_models.rb +0 -8
- data/spec/dummy/db/migrate/20201119221247_create_cached_models.rb +0 -9
- data/spec/dummy/db/migrate/20201119221314_create_other_cached_models.rb +0 -11
- data/spec/dummy/db/migrate/20201119221343_create_companies.rb +0 -7
- data/spec/dummy/db/migrate/20201119221416_create_users.rb +0 -7
- data/spec/dummy/db/migrate/20201119221434_create_other_taggable_models.rb +0 -8
- data/spec/dummy/db/migrate/20201119221507_create_ordered_taggable_models.rb +0 -8
- data/spec/dummy/db/migrate/20201119221530_create_cache_methods_injected_models.rb +0 -7
- data/spec/dummy/db/migrate/20201119221629_create_other_cached_with_array_models.rb +0 -11
- data/spec/dummy/db/migrate/20201119221746_create_taggable_model_with_jsons.rb +0 -9
- data/spec/dummy/db/migrate/20201121222007_create_make_taggable_tags.make_taggable_engine.rb +0 -11
- data/spec/dummy/db/migrate/20201121222008_create_make_taggable_taggings.make_taggable_engine.rb +0 -13
- data/spec/dummy/db/migrate/20201121222009_change_tag_name_collation_mysql.make_taggable_engine.rb +0 -8
- data/spec/dummy/db/migrate/20201121222010_add_index_to_tags.make_taggable_engine.rb +0 -6
- data/spec/dummy/db/migrate/20201121222011_add_index_to_taggings.make_taggable_engine.rb +0 -13
- data/spec/dummy/db/schema.rb +0 -117
- data/spec/dummy/db/seeds.rb +0 -7
- data/spec/dummy/lib/tasks/.keep +0 -0
- data/spec/dummy/log/.keep +0 -0
- data/spec/dummy/public/robots.txt +0 -1
- data/spec/dummy/storage/.keep +0 -0
- data/spec/dummy/test/channels/application_cable/connection_test.rb +0 -11
- data/spec/dummy/test/controllers/.keep +0 -0
- data/spec/dummy/test/fixtures/.keep +0 -0
- data/spec/dummy/test/fixtures/files/.keep +0 -0
- data/spec/dummy/test/integration/.keep +0 -0
- data/spec/dummy/test/mailers/.keep +0 -0
- data/spec/dummy/test/models/.keep +0 -0
- data/spec/dummy/test/test_helper.rb +0 -13
- data/spec/dummy/vendor/.keep +0 -0
- data/spec/make_taggable/acts_as_tagger_spec.rb +0 -112
- data/spec/make_taggable/caching_spec.rb +0 -123
- data/spec/make_taggable/default_parser_spec.rb +0 -45
- data/spec/make_taggable/dirty_spec.rb +0 -140
- data/spec/make_taggable/generic_parser_spec.rb +0 -13
- data/spec/make_taggable/make_taggable_spec.rb +0 -260
- data/spec/make_taggable/related_spec.rb +0 -93
- data/spec/make_taggable/single_table_inheritance_spec.rb +0 -220
- data/spec/make_taggable/tag_list_spec.rb +0 -169
- data/spec/make_taggable/tag_spec.rb +0 -297
- data/spec/make_taggable/taggable_spec.rb +0 -804
- data/spec/make_taggable/tagger_spec.rb +0 -149
- data/spec/make_taggable/tagging_spec.rb +0 -115
- data/spec/make_taggable/tags_helper_spec.rb +0 -43
- data/spec/make_taggable/utils_spec.rb +0 -22
- data/spec/make_taggable_spec.rb +0 -5
- data/spec/spec_helper.rb +0 -18
- data/spec/support/array.rb +0 -9
- data/spec/support/helpers.rb +0 -31
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5a7fdfad7146eb2661c6bad8dd120e29ae36a964434e60658598d91ccff7906e
|
4
|
+
data.tar.gz: e4922ea84a7201b91d253401396ce08711906d29cf18f93c973ba1165f91d4dc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a7cd676d93f080ff89753d584e0935a04e605403149fac56c180f5a4293cf7a8fa9f4ced6142ba77009bc68dc9d4dcc1430aba85ac1074578460af36deb1142b
|
7
|
+
data.tar.gz: 2d587f9276d813b08e430ca65212e7bbc698dd0563ddb083c412456f5569f9bca74297552edaa27cc29f1a1bde645bd0f3f35c41e36d61467d3fff0055d4bb13
|
data/.dummyrc
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
--skip-bootsnap
|
2
|
+
--skip-webpack
|
3
|
+
--skip-action-cable
|
4
|
+
--skip-spring
|
5
|
+
--skip-coffee
|
6
|
+
--skip-turbolinks
|
7
|
+
--skip-listen
|
8
|
+
--skip-action-text
|
9
|
+
--skip-active-storage
|
10
|
+
--skip-action-cable
|
11
|
+
--skip-action-mailer
|
12
|
+
--skip-action-mailbox
|
13
|
+
--skip-active-job
|
14
|
+
--skip-javascript
|
15
|
+
--skip-test
|
16
|
+
|
17
|
+
--template=spec/template/test_app_template.rb
|
data/.github/workflows/ci.yml
CHANGED
@@ -1,4 +1,5 @@
|
|
1
|
-
|
1
|
+
---
|
2
|
+
name: CI
|
2
3
|
|
3
4
|
on:
|
4
5
|
pull_request:
|
@@ -8,40 +9,150 @@ on:
|
|
8
9
|
branches:
|
9
10
|
- master
|
10
11
|
jobs:
|
11
|
-
|
12
|
+
# STANDARD RB
|
13
|
+
standard:
|
12
14
|
runs-on: ubuntu-latest
|
13
15
|
strategy:
|
14
16
|
matrix:
|
15
|
-
ruby: [
|
17
|
+
ruby: ['3.0']
|
16
18
|
steps:
|
17
|
-
- uses: actions/checkout@
|
19
|
+
- uses: actions/checkout@v2
|
20
|
+
- name: Set up Ruby ${{ matrix.ruby }}
|
21
|
+
uses: ruby/setup-ruby@v1
|
22
|
+
with:
|
23
|
+
ruby-version: ${{ matrix.ruby }}
|
24
|
+
bundler-cache: true
|
25
|
+
|
26
|
+
- name: Run StandardRB
|
27
|
+
run: bundle exec standardrb --format progress
|
28
|
+
|
18
29
|
|
19
|
-
|
30
|
+
# SQLITE
|
31
|
+
sqlite:
|
32
|
+
runs-on: ubuntu-latest
|
33
|
+
strategy:
|
34
|
+
matrix:
|
35
|
+
ruby: ['2.6', '2.7', '3.0']
|
36
|
+
gemfile:
|
37
|
+
- rails_5
|
38
|
+
- rails_6
|
39
|
+
- rails_6_1
|
40
|
+
- rails_master
|
41
|
+
exclude:
|
42
|
+
- ruby: '3.0'
|
43
|
+
gemfile: rails_5
|
44
|
+
# Rails 7 requires Ruby 2.7 or higher
|
45
|
+
- ruby: '2.6'
|
46
|
+
gemfile: rails_master
|
47
|
+
env:
|
48
|
+
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
|
49
|
+
BUNDLE_PATH_RELATIVE_TO_CWD: true
|
50
|
+
|
51
|
+
steps:
|
52
|
+
- uses: actions/checkout@v2
|
53
|
+
- name: Set up Ruby ${{ matrix.ruby }}
|
20
54
|
uses: ruby/setup-ruby@v1
|
21
55
|
with:
|
22
56
|
ruby-version: ${{ matrix.ruby }}
|
57
|
+
bundler-cache: true
|
58
|
+
|
59
|
+
- name: Run tests
|
60
|
+
env:
|
61
|
+
RAILS_ENV: test
|
62
|
+
run: |
|
63
|
+
bundle exec rake create_test_app
|
64
|
+
bundle exec rake
|
65
|
+
|
66
|
+
|
67
|
+
# MYSQL
|
68
|
+
mysql:
|
69
|
+
runs-on: ubuntu-latest
|
70
|
+
strategy:
|
71
|
+
matrix:
|
72
|
+
ruby: ['2.6', '2.7', '3.0']
|
73
|
+
gemfile:
|
74
|
+
- rails_5
|
75
|
+
- rails_6
|
76
|
+
- rails_6_1
|
77
|
+
- rails_master
|
78
|
+
exclude:
|
79
|
+
- ruby: '3.0'
|
80
|
+
gemfile: rails_5
|
81
|
+
# Rails 7 requires Ruby 2.7 or higher
|
82
|
+
- ruby: '2.6'
|
83
|
+
gemfile: rails_master
|
84
|
+
env:
|
85
|
+
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
|
86
|
+
BUNDLE_PATH_RELATIVE_TO_CWD: true
|
23
87
|
|
24
|
-
|
25
|
-
|
88
|
+
services:
|
89
|
+
mysql:
|
90
|
+
image: mysql:8
|
91
|
+
env:
|
92
|
+
MYSQL_ROOT_PASSWORD: password
|
93
|
+
MSQL_DATABASE: test
|
94
|
+
ports: ['3306:3306']
|
95
|
+
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
|
96
|
+
|
97
|
+
steps:
|
98
|
+
- uses: actions/checkout@v2
|
99
|
+
- name: Set up Ruby ${{ matrix.ruby }}
|
100
|
+
uses: ruby/setup-ruby@v1
|
26
101
|
with:
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
102
|
+
ruby-version: ${{ matrix.ruby }}
|
103
|
+
bundler-cache: true
|
104
|
+
|
105
|
+
- name: Run tests
|
106
|
+
env:
|
107
|
+
DATABASE_URL: mysql2://root:password@127.0.0.1:3306/test
|
108
|
+
RAILS_ENV: test
|
32
109
|
run: |
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
gem install bundler
|
37
|
-
bundle install --jobs 4 --retry 3
|
38
|
-
bundle exec appraisal install
|
110
|
+
bundle exec rake create_test_app
|
111
|
+
bundle exec rake
|
112
|
+
|
39
113
|
|
40
|
-
|
41
|
-
|
114
|
+
# POSTGRES
|
115
|
+
postgres:
|
116
|
+
runs-on: ubuntu-latest
|
117
|
+
strategy:
|
118
|
+
matrix:
|
119
|
+
ruby: ['2.6', '2.7', '3.0']
|
120
|
+
gemfile:
|
121
|
+
- rails_5
|
122
|
+
- rails_6
|
123
|
+
- rails_6_1
|
124
|
+
- rails_master
|
125
|
+
exclude:
|
126
|
+
- ruby: '3.0'
|
127
|
+
gemfile: rails_5
|
128
|
+
# Rails 7 requires Ruby 2.7 or higher
|
129
|
+
- ruby: '2.6'
|
130
|
+
gemfile: rails_master
|
131
|
+
env:
|
132
|
+
BUNDLE_GEMFILE: ${{ github.workspace }}/gemfiles/${{ matrix.gemfile }}.gemfile
|
133
|
+
BUNDLE_PATH_RELATIVE_TO_CWD: true
|
134
|
+
|
135
|
+
services:
|
136
|
+
postgres:
|
137
|
+
image: postgres:12
|
138
|
+
env:
|
139
|
+
POSTGRES_USER: postgres
|
140
|
+
POSTGRES_PASSWORD: password
|
141
|
+
POSTGRES_DB: test
|
142
|
+
ports: ['5432:5432']
|
143
|
+
|
144
|
+
steps:
|
145
|
+
- uses: actions/checkout@v2
|
146
|
+
- name: Set up Ruby ${{ matrix.ruby }}
|
147
|
+
uses: ruby/setup-ruby@v1
|
148
|
+
with:
|
149
|
+
ruby-version: ${{ matrix.ruby }}
|
150
|
+
bundler-cache: true
|
42
151
|
|
43
152
|
- name: Run tests
|
44
153
|
env:
|
154
|
+
DATABASE_URL: postgres://postgres:password@localhost:5432/test
|
45
155
|
RAILS_ENV: test
|
46
156
|
run: |
|
47
|
-
bundle exec
|
157
|
+
bundle exec rake create_test_app
|
158
|
+
bundle exec rake
|
data/.gitignore
CHANGED
data/Appraisals
CHANGED
data/CONTRIBUTING.md
CHANGED
@@ -1,21 +1,8 @@
|
|
1
|
-
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
|
2
|
-
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
|
3
|
-
**Table of Contents** *generated with [DocToc](https://github.com/thlorenz/doctoc)*
|
4
|
-
|
5
|
-
- [How to contribute:](#how-to-contribute)
|
6
|
-
- [Bug reports / Issues](#bug-reports--issues)
|
7
|
-
- [Code](#code)
|
8
|
-
- [Commit Messages](#commit-messages)
|
9
|
-
- [About Pull Requests (PR's)](#about-pull-requests-prs)
|
10
|
-
- [Documentation](#documentation)
|
11
|
-
|
12
|
-
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
|
13
|
-
|
14
1
|
# How to contribute:
|
15
2
|
|
16
3
|
## Bug reports / Issues
|
17
4
|
|
18
|
-
* Is something broken or not working as expected? Check for an existing issue or [create a new one](https://github.com/
|
5
|
+
* Is something broken or not working as expected? Check for an existing issue or [create a new one](https://github.com/MatthewKennedy/make_taggable/issues/new)
|
19
6
|
* IMPORTANT: Include the version of the gem, if you've install from git, what Ruby and Rails you are running, etc.
|
20
7
|
|
21
8
|
## Code
|
@@ -23,15 +10,14 @@
|
|
23
10
|
1. [Fork and clone the repo](https://help.github.com/articles/fork-a-repo)
|
24
11
|
2. Install the gem dependencies: `bundle install`
|
25
12
|
3. Make the changes you want and back them up with tests.
|
26
|
-
|
27
|
-
|
28
|
-
|
13
|
+
4. Run the tests](https://github.com/MatthewKennedy/make_taggable#testing)
|
14
|
+
5. Update the CHANGELOG.md file with your changes and give yourself credit
|
15
|
+
6. Commit and create a pull request with details as to what has been changed and why
|
29
16
|
* Use well-described, small (atomic) commits.
|
30
17
|
* Include links to any relevant github issues.
|
31
18
|
* *Don't* change the VERSION file.
|
32
|
-
6. Extra Credit: [Confirm it runs and tests pass on the rubies specified in the travis config](.travis.yml). I will otherwise confirm it runs on these.
|
33
19
|
|
34
|
-
How I handle pull requests:
|
20
|
+
## How I handle pull requests:
|
35
21
|
|
36
22
|
* If the tests pass and the pull request looks good, I will merge it.
|
37
23
|
* If the pull request needs to be changed,
|
@@ -40,18 +26,6 @@ How I handle pull requests:
|
|
40
26
|
* by force pushing to it
|
41
27
|
* I can make any changes myself and manually merge the code in.
|
42
28
|
|
43
|
-
### Commit Messages
|
44
|
-
|
45
|
-
* [A Note About Git Commit Messages](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
|
46
|
-
* [http://stopwritingramblingcommitmessages.com/](http://stopwritingramblingcommitmessages.com/)
|
47
|
-
* [ThoughtBot style guide](https://github.com/thoughtbot/guides/tree/master/style#git)
|
48
|
-
|
49
|
-
### About Pull Requests (PR's)
|
50
|
-
|
51
|
-
* [All Your Open Source Code Are Belong To Us](http://www.benjaminfleischer.com/2013/07/30/all-your-open-source-code-are-belong-to-us/)
|
52
|
-
* [Using Pull Requests](https://help.github.com/articles/using-pull-requests)
|
53
|
-
* [Github pull requests made easy](http://www.element84.com/github-pull-requests-made-easy.html)
|
54
|
-
|
55
29
|
## Documentation
|
56
30
|
|
57
31
|
* Update the wiki
|
data/README.md
CHANGED
@@ -1,26 +1,15 @@
|
|
1
1
|
# MakeTaggable
|
2
2
|
[![Gem Version](https://badge.fury.io/rb/make_taggable.svg)](https://badge.fury.io/rb/make_taggable)
|
3
|
-
|
4
|
-
[![Ruby Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://github.com/testdouble/standard)
|
3
|
+
![CI](https://github.com/MatthewKennedy/make_taggable/workflows/CI/badge.svg)
|
5
4
|
|
6
|
-
MakeTaggable is a
|
7
|
-
|
8
|
-
Why fork acts-as-taggable-on? Act As Taggable On appears stuck with a set of legacy migrations from rails pre [4.2] that added and removed indexes so much that the migrations do not run on a fresh install using MySQL.
|
9
|
-
|
10
|
-
For the PostgreSQL users, this is not an issue, but if you have an app or gem that used acts-as-taggable-on, you can no longer test against MySQL, so it seems a fresh start would be useful to clear out any legacy issues and move forward.
|
5
|
+
MakeTaggable is a tagging gem for Rails applications that allows custom tagging along dynamic contexts.
|
11
6
|
|
12
7
|
## Installation
|
13
8
|
|
14
|
-
To use
|
15
|
-
|
16
|
-
```ruby
|
17
|
-
gem "make_taggable", "~> 0.6.0"
|
18
|
-
```
|
19
|
-
|
20
|
-
and bundle:
|
9
|
+
To use make_taggable, run the followng from the root of your application:
|
21
10
|
|
22
11
|
```shell
|
23
|
-
bundle
|
12
|
+
bundle add make_taggable
|
24
13
|
```
|
25
14
|
|
26
15
|
#### Post Installation
|
@@ -28,30 +17,30 @@ bundle
|
|
28
17
|
Install migrations
|
29
18
|
|
30
19
|
```shell
|
31
|
-
# For the latest versions :
|
32
20
|
rails make_taggable_engine:install:migrations
|
33
21
|
```
|
34
22
|
|
35
|
-
Review the generated migrations then migrate
|
23
|
+
Review the generated migrations then migrate:
|
36
24
|
```shell
|
37
25
|
rails db:migrate
|
38
26
|
```
|
39
27
|
|
40
28
|
#### For MySql users
|
41
|
-
|
29
|
+
To make MySQL play nice with spÉcial characters you can setting the following line in an initializer file:
|
42
30
|
|
43
31
|
```ruby
|
44
32
|
MakeTaggable.force_binary_collation = true
|
45
33
|
```
|
46
34
|
|
47
|
-
Or by
|
35
|
+
Or by run this rake task:
|
48
36
|
|
49
37
|
```shell
|
50
|
-
rails
|
38
|
+
rails make_taggable_engine:tag_names:collate_bin
|
51
39
|
```
|
52
40
|
|
53
41
|
See the Configuration section for more details.
|
54
42
|
|
43
|
+
|
55
44
|
## Usage
|
56
45
|
|
57
46
|
Setup
|
@@ -182,7 +171,7 @@ MakeTaggable::Tag.least_used(10)
|
|
182
171
|
|
183
172
|
### Finding Tagged Objects
|
184
173
|
|
185
|
-
|
174
|
+
MakeTaggable uses scopes to create an association for tags.
|
186
175
|
This way you can mix and match to filter down your results.
|
187
176
|
|
188
177
|
```ruby
|
@@ -411,6 +400,7 @@ CSS:
|
|
411
400
|
.css4 { font-size: 1.6em; }
|
412
401
|
```
|
413
402
|
|
403
|
+
|
414
404
|
## Configuration
|
415
405
|
|
416
406
|
If you would like to remove unused tag objects after removing taggings, add:
|
@@ -459,35 +449,69 @@ MakeTaggable.delimiter = ','
|
|
459
449
|
*NOTE 1: SQLite by default can't upcase or downcase multibyte characters, resulting in unwanted behavior. Load the SQLite ICU extension for proper handle of such characters. [See docs](http://www.sqlite.org/src/artifact?ci=trunk&filename=ext/icu/README.txt)*
|
460
450
|
|
461
451
|
|
462
|
-
|
452
|
+
## Upgrading
|
463
453
|
|
464
|
-
|
454
|
+
Install new migrations by running:
|
465
455
|
|
466
|
-
|
467
|
-
|
468
|
-
|
456
|
+
```shell
|
457
|
+
rails make_taggable_engine:install:migrations
|
458
|
+
```
|
469
459
|
|
470
460
|
## Compatibility
|
471
461
|
|
472
|
-
|
473
|
-
|
462
|
+
Version 0.7.x is compatible with Ruby 2.5 > and Rails 5.2 >
|
474
463
|
|
475
|
-
## TODO
|
476
|
-
- Review migrations indexes they seem excessive looking at the schema.
|
477
|
-
- See if the newer version of ActiveRecord or arel can be used instead of the MySQL workarounds.
|
478
464
|
|
479
465
|
## Testing
|
480
466
|
|
481
|
-
|
482
|
-
|
467
|
+
MakeTaggable uses RSpec for its test coverage. Inside the gem directory, you can run the specs by following the steps below:
|
468
|
+
|
469
|
+
Install the rquired gems:
|
470
|
+
|
471
|
+
```shell
|
472
|
+
bundle install
|
473
|
+
```
|
474
|
+
|
475
|
+
Setup the dummy test app:
|
476
|
+
|
477
|
+
```shell
|
478
|
+
bundle exec rake test_app
|
479
|
+
```
|
480
|
+
|
481
|
+
Run the spec tests against SQLite use the followiong command.
|
482
|
+
|
483
|
+
```shell
|
484
|
+
bundle exec rake
|
485
|
+
```
|
486
|
+
|
487
|
+
You can also run all the tests across all the Rails versions by running:
|
488
|
+
|
489
|
+
```shell
|
490
|
+
bundle exec appraisal install
|
491
|
+
|
492
|
+
bundle exec appraisal rake
|
493
|
+
```
|
494
|
+
|
495
|
+
## Contributing
|
496
|
+
|
497
|
+
Please use the following Standard Rb commands to format your code before creating a pull request:
|
498
|
+
|
499
|
+
Check for code errors:
|
500
|
+
|
501
|
+
```shell
|
502
|
+
bundle exec standardrb
|
503
|
+
```
|
504
|
+
|
505
|
+
Fix code errors:
|
483
506
|
|
484
507
|
```shell
|
485
|
-
bundle
|
486
|
-
rake spec
|
508
|
+
bundle exec standardrb --fix
|
487
509
|
```
|
510
|
+
For more information please review the [Contributing](https://github.com/MatthewKennedy/make_taggable/blob/master/CONTRIBUTING.md) section.
|
488
511
|
|
489
|
-
|
512
|
+
#### Contributors
|
513
|
+
List of valued contributors From Acts-As-Taggable-On: [Check them all](https://github.com/mbleigh/acts-as-taggable-on/contributors)
|
490
514
|
|
491
515
|
|
492
516
|
## License
|
493
|
-
MIT
|
517
|
+
This gem is available as open source under the terms of the [MIT License](https://github.com/MatthewKennedy/make_taggable/blob/master/LICENSE.md).
|