redmine_acts_as_taggable_on 0.3.0 → 1.0.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.
- checksums.yaml +4 -4
- data/.travis.yml +20 -10
- data/README.md +11 -1
- data/lib/redmine_acts_as_taggable_on/version.rb +1 -1
- data/test/mk_temp_redmine.bash +24 -17
- data/test/run.bash +13 -10
- data/test/test.bats +0 -2
- data/test/test_helpers.bash +10 -14
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7a8aebb95ce3366f4a0a5bca2b04eb5c99e92b9f
|
4
|
+
data.tar.gz: 2107a0155fafe2af5f4eec883fad6fb192de8178
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b476996b9db2467b8129b78b5f6eaae42a0a0dbc3f4f3a161c150bc93c8b935f80bc3bd5ff0eeea3b8bbba9756290bf6b541b2e85026af5f5675cb800935dfcc
|
7
|
+
data.tar.gz: f31a1fe060dff5ea5d7c170c204dc172395105ab3612bb9168c217d72fb4f1f7de1087bd6148bd76ae21db3eb6fd56f7cd7e461977350a7f69b7a701b7e8983e
|
data/.travis.yml
CHANGED
@@ -1,13 +1,23 @@
|
|
1
1
|
language: ruby
|
2
|
-
|
3
|
-
- gem update --system 1.8.25
|
4
|
-
- gem --version
|
2
|
+
install: echo 'explicitly doing nothing'
|
5
3
|
script: ./test/run.bash
|
6
|
-
rvm:
|
7
|
-
|
4
|
+
rvm:
|
5
|
+
- 2.0.0-p0
|
6
|
+
- 1.9.3-p392
|
7
|
+
- 1.8.7-p371
|
8
|
+
env:
|
9
|
+
- branches="trunk"
|
10
|
+
- branches="tags/2.3.1"
|
11
|
+
- branches="tags/2.2.4"
|
12
|
+
- branches="tags/2.1.5"
|
13
|
+
- branches="tags/2.0.4"
|
8
14
|
matrix:
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
- rvm:
|
13
|
-
env: branches="
|
15
|
+
exclude:
|
16
|
+
# these versions are known not to work together, according to
|
17
|
+
# http://www.redmine.org/projects/redmine/wiki/RedmineInstall
|
18
|
+
- rvm: 2.0.0-p0
|
19
|
+
env: branches="tags/2.2.4"
|
20
|
+
- rvm: 2.0.0-p0
|
21
|
+
env: branches="tags/2.1.5"
|
22
|
+
- rvm: 2.0.0-p0
|
23
|
+
env: branches="tags/2.0.4"
|
data/README.md
CHANGED
@@ -52,7 +52,17 @@ some nasty monkey-patching. On the other hand, data loss is no fun at all.
|
|
52
52
|
|
53
53
|
Add it to your plugin's Gemfile:
|
54
54
|
|
55
|
-
gem 'redmine_acts_as_taggable_on', '~>
|
55
|
+
gem 'redmine_acts_as_taggable_on', '~> 1.0'
|
56
|
+
|
57
|
+
**Note**: Please use the above line _verbatim_. This is to avoid being told by
|
58
|
+
Bundler that we aren't allowed to use multiple declarations of the same gem
|
59
|
+
with different version requirements.
|
60
|
+
|
61
|
+
I've chosen the above requirement to ensure that there are no accidental
|
62
|
+
breakages -- the public API (that is, the following paragraph) will remain the
|
63
|
+
same throughout version 1.0. If it does need to change, I'll bump the major
|
64
|
+
version. This should ensure that Bundler only refuses to bundle when there is
|
65
|
+
an actual incompatibility.
|
56
66
|
|
57
67
|
Add the migration:
|
58
68
|
|
data/test/mk_temp_redmine.bash
CHANGED
@@ -1,31 +1,38 @@
|
|
1
1
|
#!/usr/bin/env bash
|
2
2
|
set -e
|
3
3
|
|
4
|
+
# if --verbose is given, output logging info to stdout. Otherwise, to /dev/null
|
5
|
+
if [ "$1" = "--verbose" ]; then
|
6
|
+
shift
|
7
|
+
mk_temp_redmine_out="/dev/fd/2"
|
8
|
+
else
|
9
|
+
mk_temp_redmine_out="/dev/null"
|
10
|
+
fi
|
11
|
+
|
4
12
|
# makes a new Redmine installation in a temporary directory, using SQLite as
|
5
13
|
# the database.
|
6
|
-
|
7
|
-
|
8
|
-
[ -z "$branch" ] && branch="trunk"
|
14
|
+
branch="$1"
|
15
|
+
[ -z "$branch" ] && branch="trunk"
|
9
16
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
17
|
+
# for branches which have slashes in them, like tags/2.3.0
|
18
|
+
branch_filename="${branch//\//-}"
|
19
|
+
temp_redmine=`mktemp -d /tmp/redmine_acts_as_taggable_on.$branch_filename.XXXXXXX`
|
20
|
+
cd "$temp_redmine"
|
14
21
|
|
15
|
-
|
16
|
-
|
22
|
+
svn checkout "http://svn.redmine.org/redmine/$branch" redmine \
|
23
|
+
> "$mk_temp_redmine_out"
|
24
|
+
cd redmine
|
17
25
|
|
18
|
-
|
26
|
+
echo "production:
|
19
27
|
adapter: sqlite3
|
20
28
|
database: db/redmine.sqlite3" > config/database.yml
|
21
29
|
|
22
|
-
|
23
|
-
|
24
|
-
|
30
|
+
bundle install \
|
31
|
+
--without="development test rmagick ldap mysql postgresql" \
|
32
|
+
--gemfile="$PWD/Gemfile" \
|
33
|
+
--binstubs \
|
34
|
+
> "$mk_temp_redmine_out"
|
25
35
|
|
26
|
-
|
27
|
-
popd
|
28
|
-
}
|
36
|
+
rake db:create db:migrate > "$mk_temp_redmine_out"
|
29
37
|
|
30
|
-
make_temp_redmine "$1" >/dev/null
|
31
38
|
echo "$temp_redmine"
|
data/test/run.bash
CHANGED
@@ -3,18 +3,21 @@ set -e
|
|
3
3
|
|
4
4
|
# Run all the tests on a specific branch of Redmine.
|
5
5
|
run_tests_on_branch() {
|
6
|
-
temp_redmine_path="$(test/mk_temp_redmine.bash "$1")"
|
7
|
-
if [ "$?" -ne 0 ]; then
|
6
|
+
local temp_redmine_path="$($redmine_acts_as_taggable_on_path/test/mk_temp_redmine.bash "$1")"
|
7
|
+
if [ "$?" -ne 0 ] || [ -z "$temp_redmine_path" ]; then
|
8
8
|
echo "failed to create temporary redmine on $1: cancelling these tests"
|
9
9
|
return 1
|
10
10
|
fi
|
11
11
|
|
12
12
|
export temp_redmine_path
|
13
|
-
|
14
|
-
[ -f test/bats/bin/bats ] || git submodule update
|
13
|
+
cd "$temp_redmine_path/redmine"
|
15
14
|
|
16
15
|
local test_status=0
|
17
|
-
test/bats/bin/bats
|
16
|
+
"$redmine_acts_as_taggable_on_path/test/bats/bin/bats" \
|
17
|
+
"$redmine_acts_as_taggable_on_path/test/test.bats" || test_status=1
|
18
|
+
|
19
|
+
# avoid 'error retrieving current directory' during the next test
|
20
|
+
cd /tmp
|
18
21
|
|
19
22
|
if [ "$test_status" -eq 1 ]; then
|
20
23
|
echo "Some tests failed on $1. You can inspect the tree at $temp_redmine_path"
|
@@ -22,16 +25,17 @@ run_tests_on_branch() {
|
|
22
25
|
rm -rf "$temp_redmine_path"
|
23
26
|
fi
|
24
27
|
|
25
|
-
temp_redmine_path=""
|
26
28
|
return $test_status
|
27
29
|
}
|
28
30
|
|
29
|
-
RAILS_ENV="production"
|
30
|
-
|
31
|
+
export RAILS_ENV="production"
|
32
|
+
|
33
|
+
# these are needed on Travis CI
|
34
|
+
export BUNDLE_GEMFILE=""
|
35
|
+
export PATH="./bin:$PATH"
|
31
36
|
|
32
37
|
redmine_acts_as_taggable_on_path="$(cd "$(dirname "${BASH_SOURCE[0]}")"/.. && pwd)"
|
33
38
|
export redmine_acts_as_taggable_on_path
|
34
|
-
pushd "$redmine_acts_as_taggable_on_path" >/dev/null
|
35
39
|
|
36
40
|
# branches should be a space-separated string of repo paths to check out.
|
37
41
|
# We don't use an array because they're difficult to export.
|
@@ -48,5 +52,4 @@ for branch in $branches; do
|
|
48
52
|
echo
|
49
53
|
done
|
50
54
|
|
51
|
-
popd >/dev/null
|
52
55
|
exit $test_status
|
data/test/test.bats
CHANGED
@@ -7,7 +7,6 @@ load test_helpers
|
|
7
7
|
preserved_files=(db/redmine.sqlite3 db/schema.rb)
|
8
8
|
|
9
9
|
setup() {
|
10
|
-
pushd "$temp_redmine_path/redmine" >/dev/null
|
11
10
|
for file in ${preserved_files[@]}; do
|
12
11
|
cp $file $file.bak
|
13
12
|
done
|
@@ -18,7 +17,6 @@ teardown() {
|
|
18
17
|
for file in ${preserved_files[@]}; do
|
19
18
|
mv $file.bak $file
|
20
19
|
done
|
21
|
-
popd >/dev/null
|
22
20
|
}
|
23
21
|
|
24
22
|
@test "migrates upwards with solitary proper plugin" {
|
data/test/test_helpers.bash
CHANGED
@@ -4,12 +4,11 @@
|
|
4
4
|
mk_standard_plugin() {
|
5
5
|
local name="redmine_$1"
|
6
6
|
mkdir plugins/$name
|
7
|
-
|
7
|
+
cd plugins/$name
|
8
8
|
|
9
9
|
echo "Redmine::Plugin.register(:$name) { name '$name' }" > init.rb
|
10
10
|
|
11
|
-
|
12
|
-
|
11
|
+
cd ../..
|
13
12
|
echo "Created a standard redmine plugin: $name"
|
14
13
|
}
|
15
14
|
|
@@ -17,7 +16,7 @@ mk_standard_plugin() {
|
|
17
16
|
mk_proper_plugin() {
|
18
17
|
mk_standard_plugin "$1" >/dev/null
|
19
18
|
local name="redmine_$1"
|
20
|
-
|
19
|
+
cd plugins/$name
|
21
20
|
|
22
21
|
echo "source 'https://rubygems.org'
|
23
22
|
gem 'redmine_acts_as_taggable_on',
|
@@ -31,10 +30,8 @@ Redmine::Plugin.register(:$name) { requires_acts_as_taggable_on }" \
|
|
31
30
|
echo "class AddTagsAndTaggings < RedmineActsAsTaggableOn::Migration; end" \
|
32
31
|
> db/migrate/001_add_tags_and_taggings.rb
|
33
32
|
|
34
|
-
|
35
|
-
|
36
|
-
popd >/dev/null
|
37
|
-
|
33
|
+
cd ../..
|
34
|
+
bundle --gemfile="$PWD/Gemfile"
|
38
35
|
echo "Created a redmine plugin using redmine_acts_as_taggable_on: $name"
|
39
36
|
}
|
40
37
|
|
@@ -43,13 +40,12 @@ Redmine::Plugin.register(:$name) { requires_acts_as_taggable_on }" \
|
|
43
40
|
mk_plugin_missing_declaration() {
|
44
41
|
mk_proper_plugin "$1" >/dev/null
|
45
42
|
local name="redmine_$1"
|
46
|
-
|
43
|
+
cd plugins/$name
|
47
44
|
|
48
45
|
echo "require 'redmine_acts_as_taggable_on/initialize'
|
49
46
|
Redmine::Plugin.register(:$name) { name '$name' }" > init.rb
|
50
47
|
|
51
|
-
|
52
|
-
|
48
|
+
cd ../..
|
53
49
|
echo "Created a redmine plugin using redmine_acts_as_taggable_on"
|
54
50
|
echo " (but without the declaration): $name"
|
55
51
|
}
|
@@ -59,13 +55,13 @@ Redmine::Plugin.register(:$name) { name '$name' }" > init.rb
|
|
59
55
|
mk_old_style_plugin() {
|
60
56
|
mk_standard_plugin "$1" >/dev/null
|
61
57
|
local name="redmine_$1"
|
62
|
-
|
58
|
+
cd plugins/$name
|
63
59
|
|
64
60
|
echo "source 'https://rubygems.org'
|
65
61
|
gem 'acts-as-taggable-on'" > Gemfile
|
66
|
-
bundle >/dev/null
|
67
|
-
popd >/dev/null
|
68
62
|
|
63
|
+
cd ../..
|
64
|
+
bundle --gemfile="$PWD/Gemfile"
|
69
65
|
echo "Created a plugin using acts-as-taggable-on without the embedded"
|
70
66
|
echo " migration: $name"
|
71
67
|
}
|