{"id":20779116,"url":"https://github.com/solidusio/rubocop-solidus","last_synced_at":"2025-04-30T19:40:37.512Z","repository":{"id":173965277,"uuid":"618358937","full_name":"solidusio/rubocop-solidus","owner":"solidusio","description":"Automatic Solidus code style checking tool.","archived":false,"fork":false,"pushed_at":"2024-03-06T01:37:28.000Z","size":140,"stargazers_count":4,"open_issues_count":8,"forks_count":4,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-04-23T11:05:45.624Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/solidusio.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"open_collective":"solidus"}},"created_at":"2023-03-24T09:50:35.000Z","updated_at":"2024-04-15T17:50:25.000Z","dependencies_parsed_at":"2023-07-24T17:39:06.168Z","dependency_job_id":"cfc3c311-cc0e-48fc-8ad1-d18967bcc849","html_url":"https://github.com/solidusio/rubocop-solidus","commit_stats":null,"previous_names":["nebulab/rubocop-solidus","solidusio/rubocop-solidus"],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidusio%2Frubocop-solidus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidusio%2Frubocop-solidus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidusio%2Frubocop-solidus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solidusio%2Frubocop-solidus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/solidusio","download_url":"https://codeload.github.com/solidusio/rubocop-solidus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251770930,"owners_count":21641176,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-17T13:26:07.123Z","updated_at":"2025-04-30T19:40:37.480Z","avatar_url":"https://github.com/solidusio.png","language":"Ruby","funding_links":["https://opencollective.com/solidus"],"categories":[],"sub_categories":[],"readme":"# Rubocop::Solidus\n\nAutomatic Solidus code style checking tool.\nA RuboCop extension focused on enforcing Solidus best practices and coding conventions.\n\n## Getting started\n\n### Installation\n\nAdd this line to your application's Gemfile:\n\n```ruby\ngem 'rubocop-solidus', require: false\n```\n\nAnd then execute:\n\n    $ bundle install\n\nOr install it yourself as:\n\n    $ gem install rubocop-solidus\n\n### Usage\n\nTo Start using this extension in your application add the following lines to your `.rubocop.yml` file\n\n```yaml\nrequire:\n    - rubocop-solidus\n```\n\n\nAfter this^, simply use the `rubocop` command to start linting your Ruby(`.rb`) files.\n\n### For linting `.erb` files\n\nWe recommend to run rubocop solidus cops on ERB files. The simplest method to do this is via\n[erblint](https://github.com/Shopify/erb-lint)\n\n#### Add ERBlint to your Gemfile\n```ruby\n  gem 'erb_lint'\n```\n\n#### Add ERBlint config (`.erb-lint.yml`)\nThis is the most basic ERBlint config that can be used to run all and only the Solidus cops in any project\n```yaml\n---\nEnableDefaultLinters: false\nlinters:\n  Rubocop:\n    enabled: true\n    rubocop_config:\n      inherit_from:\n        - .rubocop.yml\n    only:\n      - Solidus\n```\n\n#### To run ERBlint for all ERB files\n```bash\n# From project directory\nbundle exec erblint .\n```\n\n#### To run autocorrect on ERB files\nAny cop that supports autocorrect for rubocop implicitly supports autocorrect\nfor ERB files as well.\n```bash\n# From project directory\nbundle exec erblint -a .\n```\n\n## Documentation\n\nYou can read about each cop supplied by RuboCop Solidus in [the docs](https://solidusio.github.io/rubocop-solidus/).\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/solidusio/rubocop-solidus.\n\nTo contribute a new cop, please see the sections below.\n\n### Creating new cops\n\nTo create a new cop, run the following command:\n\n```bash\n$ bundle exec rake 'new_cop[Solidus/NameOfTheCop]'\n```\n\nand then follow the instructions on the screen.\n\n### Creating changelog entries\n\nChangelog entries are just files under the `changelog/` folder that will be merged\ninto `CHANGELOG.md` at release time. You can create new changelog entries like this:\n\n```console\n$ bundle exec rake changelog:new|fix|change\n```\n\nThe type of the changelog correspond to \"new feature\", \"bug-fix\" and \"changed\" entries in the changelog.\n\n#### Changelog entry format\n\nHere are a few examples:\n\n```markdown\n* [#46](https://github.com/solidusio/rubocop-solidus/issues/46): **(Breaking)** Remove support for old Ruby versions. ([@MassimilianoLattanzio][])\n* [#4](https://github.com/solidusio/rubocop-solidus/pull/4): Update CHANGELOG. ([@piyushswain][])\n```\n\n* Create one file `changelog/{type}_{some_description}.md`, where `type` is `new` (New feature), `fix` or `change`, and `some_description` is unique to avoid conflicts. Task `changelog:fix` (or `:new` or `:change`) can help you.\n* Mark it up in [Markdown syntax][1].\n* The entry should be a single line, starting with `* ` (an asterisk and a space).\n* If the change has a related GitHub issue (e.g. a bug fix for a reported issue), put a link to the issue as `[#123](https://github.com/solidusio/rubocop-solidus/issues/123): `.\n* Describe the brief of the change. The sentence should end with a punctuation.\n* If this is a breaking change, mark it with `**(Breaking)**`.\n* At the end of the entry, add an implicit link to your GitHub user page as `([@username][])`.\n\n### Release a new version\n\nTo release a new version, run the following command:\n\n```bash\n$ bundle exec rake cut_release:major|minor|patch\n```\n\nand then follow the instructions on the screen.\n\nThe type of the release is determined by:\n- `major` if there are breaking changes\n- `minor` if there are new cops or new features\n- `patch` if there are only bug fixes\n\nTo deploy the new version to RubyGems, run the following command:\n\n```bash\n$ bundle exec rake release\n```\n\n## License\n\nThe gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).\n\n[1]: https://www.markdownguide.org/basic-syntax/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolidusio%2Frubocop-solidus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsolidusio%2Frubocop-solidus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolidusio%2Frubocop-solidus/lists"}