ruby_git 0.2.0 → 0.3.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.
Files changed (55) hide show
  1. checksums.yaml +4 -4
  2. data/.commitlintrc.yml +16 -0
  3. data/.github/CODEOWNERS +4 -0
  4. data/.github/workflows/continuous_integration.yml +87 -0
  5. data/.github/workflows/enforce_conventional_commits.yml +21 -0
  6. data/.github/workflows/experimental_ruby_builds.yml +65 -0
  7. data/.gitignore +3 -0
  8. data/.husky/commit-msg +1 -0
  9. data/.markdownlint.yml +25 -0
  10. data/.rubocop.yml +13 -15
  11. data/.yardopts +6 -1
  12. data/CHANGELOG.md +50 -0
  13. data/CONTRIBUTING.md +5 -5
  14. data/{LICENSE.md → LICENSE.txt} +1 -1
  15. data/PLAN.md +67 -0
  16. data/README.md +58 -6
  17. data/RELEASING.md +5 -54
  18. data/Rakefile +31 -38
  19. data/RubyGit Class Diagram.svg +1 -0
  20. data/bin/command-line-test +189 -0
  21. data/bin/console +2 -0
  22. data/bin/setup +13 -2
  23. data/lib/ruby_git/command_line/options.rb +61 -0
  24. data/lib/ruby_git/command_line/result.rb +155 -0
  25. data/lib/ruby_git/command_line/runner.rb +296 -0
  26. data/lib/ruby_git/command_line.rb +95 -0
  27. data/lib/ruby_git/encoding_normalizer.rb +49 -0
  28. data/lib/ruby_git/errors.rb +169 -0
  29. data/lib/ruby_git/repository.rb +33 -0
  30. data/lib/ruby_git/status/branch.rb +92 -0
  31. data/lib/ruby_git/status/entry.rb +162 -0
  32. data/lib/ruby_git/status/ignored_entry.rb +44 -0
  33. data/lib/ruby_git/status/ordinary_entry.rb +207 -0
  34. data/lib/ruby_git/status/parser.rb +203 -0
  35. data/lib/ruby_git/status/renamed_entry.rb +257 -0
  36. data/lib/ruby_git/status/report.rb +143 -0
  37. data/lib/ruby_git/status/stash.rb +33 -0
  38. data/lib/ruby_git/status/submodule_status.rb +85 -0
  39. data/lib/ruby_git/status/unmerged_entry.rb +248 -0
  40. data/lib/ruby_git/status/untracked_entry.rb +52 -0
  41. data/lib/ruby_git/status.rb +33 -0
  42. data/lib/ruby_git/version.rb +1 -1
  43. data/lib/ruby_git/worktree.rb +175 -33
  44. data/lib/ruby_git.rb +91 -28
  45. data/package.json +11 -0
  46. data/ruby_git.gemspec +32 -20
  47. metadata +145 -47
  48. data/.travis.yml +0 -26
  49. data/CODEOWNERS +0 -3
  50. data/MAINTAINERS.md +0 -8
  51. data/lib/ruby_git/error.rb +0 -8
  52. data/lib/ruby_git/file_helpers.rb +0 -42
  53. data/lib/ruby_git/git_binary.rb +0 -106
  54. /data/{ISSUE_TEMPLATE.md → .github/ISSUE_TEMPLATE.md} +0 -0
  55. /data/{PULL_REQUEST_TEMPLATE.md → .github/PULL_REQUEST_TEMPLATE.md} +0 -0
data/Rakefile CHANGED
@@ -1,6 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- task default: %i[spec bundle:audit rubocop yardstick:audit yardstick:coverage yard build]
3
+ desc 'Run the same tasks that the CI build will run'
4
+ if RUBY_PLATFORM == 'java'
5
+ task default: %w[spec rubocop bundle:audit build]
6
+ else
7
+ task default: %w[spec rubocop yard bundle:audit build]
8
+ end
4
9
 
5
10
  # Bundler Audit
6
11
 
@@ -12,10 +17,6 @@ Bundler::Audit::Task.new
12
17
  require 'bundler'
13
18
  require 'bundler/gem_tasks'
14
19
 
15
- # Bump
16
-
17
- require 'bump/tasks'
18
-
19
20
  # RSpec
20
21
 
21
22
  require 'rspec/core/rake_task'
@@ -30,49 +31,41 @@ CLEAN << 'rspec-report.xml'
30
31
 
31
32
  require 'rubocop/rake_task'
32
33
 
33
- RuboCop::RakeTask.new do |t|
34
- t.options = %w[
35
- --format progress
36
- --format json --out rubocop-report.json
37
- ]
38
- end
39
-
40
- CLEAN << 'rubocop-report.json'
34
+ RuboCop::RakeTask.new
41
35
 
42
36
  # YARD
43
37
 
44
- require 'yard'
45
- YARD::Rake::YardocTask.new do |t|
46
- t.files = %w[lib/**/*.rb examples/**/*]
47
- end
38
+ unless RUBY_PLATFORM == 'java'
39
+ # yard:build
48
40
 
49
- CLEAN << '.yardoc'
50
- CLEAN << 'doc'
41
+ require 'yard'
51
42
 
52
- # Yardstick
43
+ YARD::Rake::YardocTask.new('yard:build') do |t|
44
+ t.files = %w[lib/**/*.rb examples/**/*]
45
+ t.options = %w[--no-private]
46
+ t.stats_options = %w[--list-undoc]
47
+ end
53
48
 
54
- desc 'Run yardstick to show missing YARD doc elements'
55
- task :'yardstick:audit' do
56
- sh "yardstick 'lib/**/*.rb'"
57
- end
49
+ CLEAN << '.yardoc'
50
+ CLEAN << 'doc'
58
51
 
59
- # Yardstick coverage
52
+ # yard:audit
60
53
 
61
- require 'yardstick/rake/verify'
54
+ desc 'Run yardstick to show missing YARD doc elements'
55
+ task :'yard:audit' do
56
+ sh "yardstick 'lib/**/*.rb'"
57
+ end
62
58
 
63
- Yardstick::Rake::Verify.new(:'yardstick:coverage') do |verify|
64
- verify.threshold = 100
65
- end
59
+ # yard:coverage
60
+
61
+ require 'yardstick/rake/verify'
66
62
 
67
- # Changelog
63
+ Yardstick::Rake::Verify.new(:'yard:coverage') do |verify|
64
+ verify.threshold = 100
65
+ end
68
66
 
69
- require 'github_changelog_generator/task'
67
+ # yard
70
68
 
71
- GitHubChangelogGenerator::RakeTask.new :changelog do |config|
72
- config.header = '# Change Log'
73
- config.user = 'main-branch'
74
- config.project = 'ruby_git'
75
- config.future_release = "v#{RubyGit::VERSION}"
76
- config.release_url = 'https://github.com/main-branch/ruby_git/releases/tag/%s'
77
- config.author = true
69
+ desc 'Run all YARD tasks'
70
+ task yard: %i[yard:build yard:audit yard:coverage]
78
71
  end