pluginator 1.0.1 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +7 -7
  2. data/.travis.yml +2 -0
  3. data/COPYING +674 -0
  4. data/COPYING.LESSER +165 -0
  5. data/Changelog.md +5 -0
  6. data/Gemfile +19 -5
  7. data/README.md +20 -0
  8. data/Rakefile +21 -0
  9. data/demo/plugins/something/math/decrease.rb +19 -0
  10. data/demo/plugins/something/math/increase.rb +19 -0
  11. data/demo/plugins/something/nested/structure/test.rb +19 -0
  12. data/demo/plugins/something/stats/max.rb +19 -0
  13. data/lib/pluginator.rb +19 -0
  14. data/lib/pluginator/autodetect.rb +37 -3
  15. data/lib/pluginator/errors.rb +19 -0
  16. data/lib/pluginator/extendable_autodetect.rb +19 -0
  17. data/lib/pluginator/group.rb +19 -0
  18. data/lib/pluginator/name_converter.rb +19 -0
  19. data/lib/pluginator/version.rb +20 -1
  20. data/lib/plugins/pluginator/extensions/class_exist.rb +19 -0
  21. data/lib/plugins/pluginator/extensions/conversions.rb +19 -0
  22. data/lib/plugins/pluginator/extensions/first_ask.rb +19 -0
  23. data/lib/plugins/pluginator/extensions/first_class.rb +19 -0
  24. data/lib/plugins/pluginator/extensions/matching.rb +19 -0
  25. data/lib/plugins/pluginator/extensions/plugins_map.rb +19 -0
  26. data/pluginator.gemspec +24 -2
  27. data/test/pluginator/autodetect_test.rb +19 -0
  28. data/test/pluginator/extendable_autodetect_test.rb +19 -0
  29. data/test/pluginator/group_test.rb +19 -0
  30. data/test/pluginator/name_converter_test.rb +19 -0
  31. data/test/pluginator_test.rb +19 -0
  32. data/test/plugins_test/extensions/class_exist_test.rb +19 -0
  33. data/test/plugins_test/extensions/conversions_test.rb +19 -0
  34. data/test/plugins_test/extensions/first_ask_test.rb +19 -0
  35. data/test/plugins_test/extensions/first_class_test.rb +19 -0
  36. data/test/plugins_test/extensions/matching_test.rb +19 -0
  37. data/test/plugins_test/extensions/plugins_map_test.rb +19 -0
  38. data/test/test_helper.rb +21 -0
  39. metadata +52 -42
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require "pluginator/autodetect"
2
21
 
3
22
  module Pluginator
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  module Pluginator
2
21
  # Initial data for pluginator, includes group name and plugins
3
22
  class Group
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  module Pluginator
2
21
  # a helper for handling name / file / class conversions
3
22
  module NameConverter
@@ -1,4 +1,23 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  module Pluginator
2
21
  # Version of Pluginator
3
- VERSION = "1.0.1"
22
+ VERSION = "1.1.0"
4
23
  end
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require "plugins/pluginator/extensions/plugins_map"
2
21
  require "plugins/pluginator/extensions/conversions"
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  module Pluginator::Extensions
2
21
  # a placeholder for methods to convert strings
3
22
  module Conversions
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require "plugins/pluginator/extensions/plugins_map"
2
21
 
3
22
  module Pluginator::Extensions
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require "plugins/pluginator/extensions/plugins_map"
2
21
  require "plugins/pluginator/extensions/conversions"
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require "plugins/pluginator/extensions/plugins_map"
2
21
  require "plugins/pluginator/extensions/conversions"
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require "plugins/pluginator/extensions/conversions"
2
21
 
3
22
  module Pluginator::Extensions
@@ -1,13 +1,35 @@
1
1
  #!/usr/bin/env ruby
2
2
  # -*- encoding: utf-8 -*-
3
3
 
4
+ =begin
5
+ Copyright 2013
6
+ - Michal Papis <mpapis@gmail.com>
7
+ - Jordon Bedwell <envygeeks@gmail.com>
8
+
9
+ This file is part of pluginator.
10
+
11
+ pluginator is free software: you can redistribute it and/or modify
12
+ it under the terms of the GNU Lesser General Public License as published
13
+ by the Free Software Foundation, either version 3 of the License, or
14
+ (at your option) any later version.
15
+
16
+ pluginator is distributed in the hope that it will be useful,
17
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
18
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19
+ GNU Lesser General Public License for more details.
20
+
21
+ You should have received a copy of the GNU Lesser General Public License
22
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
23
+ =end
24
+
4
25
  require File.expand_path("../lib/pluginator/version.rb", __FILE__)
5
26
 
6
27
  Gem::Specification.new do |s|
7
- s.email = ["mpapis@gmail.com"]
8
- s.authors = ["Michal Papis"]
28
+ s.email = ["mpapis@gmail.com", "envygeeks@gmail.com", "mose@mose.com"]
29
+ s.authors = ["Michal Papis", "Jordon Bedwell", "Mose"]
9
30
  s.name = "pluginator"
10
31
  s.version = Pluginator::VERSION
32
+ s.license = "LGPL v3"
11
33
  s.files = `git ls-files`.split("\n")
12
34
  s.required_ruby_version = ">= 1.8.7"
13
35
  s.add_development_dependency("rake")
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'pluginator/autodetect'
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'pluginator/extendable_autodetect'
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'pluginator/group'
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'pluginator/name_converter'
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'pluginator'
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'plugins/pluginator/extensions/class_exist'
3
22
  require 'plugins/something/stats/max'
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'plugins/pluginator/extensions/conversions'
3
22
 
@@ -1,3 +1,22 @@
1
+ =begin
2
+ Copyright 2013 Michal Papis <mpapis@gmail.com>
3
+
4
+ This file is part of pluginator.
5
+
6
+ pluginator is free software: you can redistribute it and/or modify
7
+ it under the terms of the GNU Lesser General Public License as published
8
+ by the Free Software Foundation, either version 3 of the License, or
9
+ (at your option) any later version.
10
+
11
+ pluginator is distributed in the hope that it will be useful,
12
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
13
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
+ GNU Lesser General Public License for more details.
15
+
16
+ You should have received a copy of the GNU Lesser General Public License
17
+ along with pluginator. If not, see <http://www.gnu.org/licenses/>.
18
+ =end
19
+
1
20
  require 'test_helper'
2
21
  require 'plugins/pluginator/extensions/first_ask'
3
22
  require 'plugins/something/stats/max'