shoe 0.5.1 → 0.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. data/{doc/bundler.rdoc → BUNDLER.rdoc} +0 -0
  2. data/CHANGELOG.rdoc +15 -0
  3. data/Gemfile +2 -0
  4. data/Gemfile.lock +21 -3
  5. data/README.rdoc +22 -2
  6. data/TODO.rdoc +3 -3
  7. data/bin/shoe +16 -2
  8. data/data/shoe/templates/application.erb +23 -0
  9. data/data/shoe/templates/executable.erb +18 -0
  10. data/data/shoe/templates/extconf.erb +2 -0
  11. data/data/shoe/templates/extension.erb +9 -0
  12. data/data/shoe/templates/gemspec.erb +50 -0
  13. data/data/shoe/templates/gitignore.erb +4 -0
  14. data/data/shoe/templates/gitkeep.erb +0 -0
  15. data/data/shoe/templates/manpage.erb +30 -0
  16. data/data/shoe/templates/module.erb +31 -0
  17. data/data/shoe/templates/module_test.rb +7 -0
  18. data/data/shoe/templates/rakefile.erb +3 -0
  19. data/data/shoe/templates/readme.erb +3 -0
  20. data/data/shoe/templates/test_helper.erb +2 -0
  21. data/features/cucumber.feature +7 -8
  22. data/features/generator.feature +32 -0
  23. data/features/release.feature +8 -8
  24. data/features/step_definitions/shoe_steps.rb +0 -9
  25. data/features/support/env.rb +5 -9
  26. data/features/test.feature +4 -4
  27. data/lib/shoe.rb +20 -2
  28. data/lib/shoe/extensions.rb +10 -0
  29. data/lib/shoe/extensions/doc_manager.rb +11 -0
  30. data/lib/shoe/extensions/option_parser.rb +25 -0
  31. data/lib/shoe/extensions/pathname.rb +16 -0
  32. data/lib/shoe/extensions/source_index.rb +17 -0
  33. data/lib/shoe/extensions/specification.rb +19 -0
  34. data/lib/shoe/extensions/validator.rb +15 -0
  35. data/lib/shoe/generator.rb +122 -40
  36. data/lib/shoe/tasks.rb +2 -0
  37. data/lib/shoe/tasks/abstract.rb +3 -69
  38. data/lib/shoe/tasks/compile.rb +3 -1
  39. data/lib/shoe/tasks/cucumber.rb +13 -10
  40. data/lib/shoe/tasks/rdoc.rb +3 -22
  41. data/lib/shoe/tasks/release.rb +7 -12
  42. data/lib/shoe/tasks/ronn.rb +77 -0
  43. data/lib/shoe/tasks/test.rb +2 -26
  44. data/man/shoe.1 +64 -0
  45. data/man/shoe.1.ronn +63 -0
  46. data/shoe.gemspec +4 -1
  47. metadata +59 -15
  48. data/features/getting_started.feature +0 -29
  49. data/lib/shoe/templates/gemspec.erb +0 -41
  50. data/lib/shoe/templates/rakefile.erb +0 -3
  51. data/lib/shoe/templates/readme.erb +0 -3
  52. data/lib/shoe/templates/version.erb +0 -3
  53. data/lib/shoe/version.rb +0 -3
@@ -1,29 +0,0 @@
1
- Feature: Getting started
2
- In order to start using shoe
3
- As a developer
4
- I want a little help generating my Rakefile
5
-
6
- Scenario: Running shoe with no arguments in an empty directory
7
- Given I have created a directory called "my_project"
8
- And I have created a file called "my_project/Gemfile" containing:
9
- """
10
- source :rubygems
11
- gem 'shoe', :group => :development
12
- """
13
- When I run bundle exec shoe . inside "my_project"
14
- Then I should see a file "my_project/Rakefile"
15
- And I should see a file "my_project/README.rdoc"
16
- And I should see a file "my_project/lib/my_project/version.rb"
17
- And I should see a file "my_project/my_project.gemspec"
18
-
19
- Scenario: Running shoe with no arguments in a directory that already has a Rakefile
20
- Given I have created a directory called "my_project"
21
- And I have created a file called "my_project/Gemfile" containing:
22
- """
23
- source :rubygems
24
- gem 'shoe', :group => :development
25
- """
26
- And I have created a file called "my_project/Rakefile" containing "# RAKEFILE CONTENTS"
27
- When I run bundle exec shoe . inside "my_project"
28
- Then I should see "Rakefile exists. Not clobbering." on standard error
29
- And the contents of "my_project/Rakefile" should still be "# RAKEFILE CONTENTS"
@@ -1,41 +0,0 @@
1
- $:.unshift File.expand_path('../lib', __FILE__)
2
- require '<%= project_name %>/version'
3
-
4
- Gem::Specification.new do |spec|
5
- spec.name = '<%= project_name %>'
6
- spec.version = <%= project_module %>::VERSION
7
-
8
- spec.summary = ''
9
- spec.description = <<-END.gsub(/^ */, '')
10
- #{spec.summary}
11
-
12
- Further description here.
13
- END
14
-
15
- spec.author = '<%= `git config --get user.name`.chomp %>'
16
- spec.email = '<%= `git config --get user.email`.chomp %>'
17
- spec.homepage = 'http://github.com/<%= `git config --get github.user`.chomp %>/<%= project_name %>'
18
-
19
- # You may find these helpful:
20
- # spec.requirements = ['git']
21
- # spec.required_rubygems_version = ">= 1.3.6"
22
- # spec.add_runtime_dependency 'nokogiri'
23
- # spec.add_development_dependency 'cucumber'
24
- # spec.add_bundler_dependencies # though I'm not sure how to use this yet...
25
-
26
- def spec.git_files(glob=nil)
27
- `git ls-files -z --cached --other --exclude-standard #{glob}`.split("\0")
28
- end
29
-
30
- spec.files = spec.git_files
31
- spec.executables = spec.git_files('bin/*').map &File.method(:basename)
32
- spec.extensions = spec.git_files('ext/**/extconf.rb')
33
- spec.test_files = spec.git_files('test/{,**/}*_test.rb')
34
-
35
- spec.extra_rdoc_files = spec.git_files('{,**/}*.rdoc')
36
- spec.rdoc_options = %W(
37
- --main README.rdoc
38
- --title #{spec.full_name}
39
- --inline-source
40
- )
41
- end
@@ -1,3 +0,0 @@
1
- require 'shoe'
2
-
3
- Shoe::Tasks.define('<%= gemspec_path %>')
@@ -1,3 +0,0 @@
1
- = <%= project_module %>
2
-
3
- <%= project_module %> is one of my favorite things! Let me tell you about it:
@@ -1,3 +0,0 @@
1
- module <%= project_module %>
2
- VERSION = '<%= project_version %>'
3
- end
@@ -1,3 +0,0 @@
1
- module Shoe
2
- VERSION = '0.5.1'
3
- end