Skip to content

Commit 6210def

Browse files
committed
initial commit
0 parents  commit 6210def

16 files changed

+222
-0
lines changed

.github/workflows/main.yml

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Ruby
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
8+
pull_request:
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-latest
13+
name: Ruby ${{ matrix.ruby }}
14+
strategy:
15+
matrix:
16+
ruby:
17+
- '3.1.1'
18+
19+
steps:
20+
- uses: actions/checkout@v2
21+
- name: Set up Ruby
22+
uses: ruby/setup-ruby@v1
23+
with:
24+
ruby-version: ${{ matrix.ruby }}
25+
bundler-cache: true
26+
- name: Run the default task
27+
run: bundle exec rake

.gitignore

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
/.bundle/
2+
/.yardoc
3+
/_yardoc/
4+
/coverage/
5+
/doc/
6+
/pkg/
7+
/spec/reports/
8+
/tmp/
9+
10+
# rspec failure tracking
11+
.rspec_status
12+
13+
Gemfile.lock
14+
*.gem

.rspec

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
--format documentation
2+
--color
3+
--require spec_helper

.rubocop.yml

+13
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
AllCops:
2+
TargetRubyVersion: 2.6
3+
4+
Style/StringLiterals:
5+
Enabled: true
6+
EnforcedStyle: double_quotes
7+
8+
Style/StringLiteralsInInterpolation:
9+
Enabled: true
10+
EnforcedStyle: double_quotes
11+
12+
Layout/LineLength:
13+
Max: 120

CHANGELOG.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
## [Unreleased]
2+
3+
## [0.1.0] - 2022-07-13
4+
5+
- Initial release

Gemfile

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# frozen_string_literal: true
2+
3+
source "https://rubygems.org"
4+
5+
# Specify your gem's dependencies in rubocop-grape.gemspec
6+
gemspec
7+
8+
gem "rake", "~> 13.0"
9+
10+
gem "rspec", "~> 3.0"
11+
12+
gem "rubocop", "~> 1.21"

README.md

+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# Rubocop::Grape
2+
3+
Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/rubocop/grape`. To experiment with that code, run `bin/console` for an interactive prompt.
4+
5+
TODO: Delete this and the text above, and describe your gem
6+
7+
## Installation
8+
9+
Add this line to your application's Gemfile:
10+
11+
```ruby
12+
gem 'rubocop-grape'
13+
```
14+
15+
And then execute:
16+
17+
$ bundle install
18+
19+
Or install it yourself as:
20+
21+
$ gem install rubocop-grape
22+
23+
## Usage
24+
25+
TODO: Write usage instructions here
26+
27+
## Development
28+
29+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
30+
31+
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
32+
33+
## Contributing
34+
35+
Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/rubocop-grape.

Rakefile

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
# frozen_string_literal: true
2+
3+
require "bundler/gem_tasks"
4+
require "rspec/core/rake_task"
5+
6+
RSpec::Core::RakeTask.new(:spec)
7+
8+
require "rubocop/rake_task"
9+
10+
RuboCop::RakeTask.new
11+
12+
task default: %i[spec rubocop]

bin/console

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
#!/usr/bin/env ruby
2+
# frozen_string_literal: true
3+
4+
require "bundler/setup"
5+
require "rubocop/grape"
6+
7+
# You can add fixtures and/or initialization code here to make experimenting
8+
# with your gem easier. You can also use a different console, if you like.
9+
10+
# (If you use this, don't forget to add pry to your Gemfile!)
11+
# require "pry"
12+
# Pry.start
13+
14+
require "irb"
15+
IRB.start(__FILE__)

bin/setup

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
IFS=$'\n\t'
4+
set -vx
5+
6+
bundle install
7+
8+
# Do any other automated setup that you need to do here

lib/rubocop/grape.rb

+10
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# frozen_string_literal: true
2+
3+
require_relative "grape/version"
4+
5+
module Rubocop
6+
module Grape
7+
class Error < StandardError; end
8+
# Your code goes here...
9+
end
10+
end

lib/rubocop/grape/version.rb

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# frozen_string_literal: true
2+
3+
module Rubocop
4+
module Grape
5+
VERSION = "0.1.0"
6+
end
7+
end

rubocop-grape.gemspec

+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# frozen_string_literal: true
2+
3+
require_relative "lib/rubocop/grape/version"
4+
5+
Gem::Specification.new do |spec|
6+
spec.name = "rubocop-grape"
7+
spec.version = Rubocop::Grape::VERSION
8+
spec.authors = ["Akito Hikasa"]
9+
spec.email = ["wetsand.wfs@gmail.com"]
10+
11+
spec.summary = "Automatice Grape code style checking tool."
12+
spec.description = <<~DESCRIPTION
13+
Automatic Grape code style checking tool.
14+
A RuboCop extension focused on enforcing Grape best practices and coding conventions.
15+
DESCRIPTION
16+
17+
spec.homepage = "https://github.com/kakubin/rubocop-grape"
18+
spec.required_ruby_version = ">= 2.6.0"
19+
20+
spec.metadata["allowed_push_host"] = "TODO: Set to your gem server 'https://example.com'"
21+
22+
spec.metadata["homepage_uri"] = spec.homepage
23+
spec.metadata["source_code_uri"] = spec.homepage
24+
spec.metadata["changelog_uri"] = "https://github.com/kakubin/rubocop-grape/blob/master/CHANGELOG.md"
25+
26+
spec.files = `git ls-files bin config lib LICENSE.txt README.md`.split($RS)
27+
28+
spec.add_runtime_dependency "rubocop", ">= 1.7.0", "< 2.0"
29+
end

sig/rubocop/grape.rbs

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
module Rubocop
2+
module Grape
3+
VERSION: String
4+
# See the writing guide of rbs: https://github.com/ruby/rbs#guides
5+
end
6+
end

spec/rubocop/grape_spec.rb

+11
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# frozen_string_literal: true
2+
3+
RSpec.describe Rubocop::Grape do
4+
it "has a version number" do
5+
expect(Rubocop::Grape::VERSION).not_to be nil
6+
end
7+
8+
it "does something useful" do
9+
expect(false).to eq(true)
10+
end
11+
end

spec/spec_helper.rb

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
# frozen_string_literal: true
2+
3+
require "rubocop/grape"
4+
5+
RSpec.configure do |config|
6+
# Enable flags like --only-failures and --next-failure
7+
config.example_status_persistence_file_path = ".rspec_status"
8+
9+
# Disable RSpec exposing methods globally on `Module` and `main`
10+
config.disable_monkey_patching!
11+
12+
config.expect_with :rspec do |c|
13+
c.syntax = :expect
14+
end
15+
end

0 commit comments

Comments
 (0)