README.md in isolator-0.7.0 vs README.md in isolator-0.8.0
- old
+ new
@@ -102,28 +102,28 @@
# uses a row number based list from the .isolator_todo.yml file
config.ignorer = Isolator::Ignorer
end
```
-Isolator relys on [uniform_notifier][] to send custom notifications.
+Isolator relies on [uniform_notifier][] to send custom notifications.
**NOTE:** `uniform_notifier` should be installed separately (i.e., added to Gemfile).
### Transactional tests support
- Rails' baked-in [use_transactional_tests](api.rubyonrails.org/classes/ActiveRecord/FixtureSet.html#class-ActiveRecord::FixtureSet-label-Transactional+Tests)
- [database_cleaner](https://github.com/DatabaseCleaner/database_cleaner) gem. Make sure that you require isolator _after_ database_cleaner.
### Supported ORMs
-- `ActiveRecord` >= 4.1
+- `ActiveRecord` >= 5.1 (4.2 likely till works, but we do not test against it anymore)
- `ROM::SQL` (only if Active Support instrumentation extension is loaded)
### Adapters
Isolator has a bunch of built-in adapters:
-- `:http` – built on top of [Sniffer][]
+- `:http` – built on top of [Sniffer][]
- `:active_job`
- `:sidekiq`
- `:resque`
- `:resque_scheduler`
- `:sucker_punch`
@@ -159,20 +159,22 @@
You can add as many _ignores_ as you want, the offense is registered iff all of them return false.
### Using with legacy Rails codebases
-If you already have a huge Rails project it can be a tricky to turn Isolator on because you'll immediately get a lot of failed specs. If you want to fix detected issues one by one, you can list all of them in the special file `.isolator_todo.yml` in a following way:
+If you already have a huge Rails project it can be tricky to turn Isolator on because you'll immediately get a lot of failed specs. If you want to fix detected issues one by one, you can list all of them in the special files `.isolator_todo.yml` and `.isolator_ignore.yml` in the following way:
```
sidekiq:
- app/models/user.rb:20
- app/models/sales/**/*.rb
```
All the exceptions raised in the listed lines will be ignored.
+The `.isolator_todo.yml` file is intended to point to the code that should be fixed later, and `.isolator_ignore.yml` points to the code that for some reasons is not expected to be fixed. (See https://github.com/palkan/isolator/issues/40)
+
### Using with legacy Ruby codebases
If you are not using Rails, you'll have to load ignores from file manually, using `Isolator::Ignorer.prepare(path:)`, for instance `Isolator::Ignorer.prepare(path: "./config/.isolator_todo.yml")`
## Custom Adapters
@@ -194,10 +196,10 @@
```
Possible `options` are:
- `exception_class` – an exception class to raise in case of offense
- `exception_message` – custom exception message (could be specified without a class)
-- `details_message` – a block to generate additional exceptin message information:
+- `details_message` – a block to generate additional exception message information:
```ruby
Isolator.isolate :active_job,
target: ActiveJob::Base,
method_name: :enqueue,