README.md in overrides_tracker-0.2.3 vs README.md in overrides_tracker-0.3.0
- old
+ new
@@ -18,151 +18,56 @@
1. Add OverridesTracker to your Gemfile and bundle install:
```ruby
gem 'overrides_tracker', group: [:test, :development]
```
-2. Add `overrides_tracker/*.otf` to your .gitignore file because you want to keep hold of your report file when switching branches.
+2. Add `overrides_tracker/*` to your .gitignore file because you want to keep hold of your report file when switching branches.
-3. Track you overrides by running:
+3. Track your overrides by running:
```ruby
bundle exec overrides_tracker track
```
- The output will look like this.
+ This will print out all overrides on the terminal as well as generate a nice and clean HTML summary.
+ That summary can be found under overrides_tracker/summary.html and will look somewhat like this:
- ```
- Reading all methods...
- Checking...AClass
- Checking...BClass
- Method is a new instance method: AClass#a_new_method
- Method is instance override: AClass#a_instance_method_override
- .
- .
- .
- Checking...YClass
- Method is a new singleton method: YClass#a_new_method
- Method is singleton override: YClass#a_singelton_method_override
- Checking...ZClass
+<p float="left">
+<img width="800" alt="" src="https://user-images.githubusercontent.com/9799974/219690881-40c44093-70d1-4326-aa7b-8196b2f1742b.png">
+</p>
- ===========
- Report saved to /PATH_TO_PROJECT/overrides_tracker/BRANCH_NAME#LAST_COMMIT_ID.otf
- ```
-
4. This will create a folder called overrides_tracker and a file containing all methods you override as well as your overrides in that branch.
5. Switch branch and follow steps 1-3 again. If you want to compare multiple branches you need to redo these steps for every branch.
-6. Now you have at least 2 files in the overrides_tracker folder
+6. Now you have at least 2 otf-files in the overrides_tracker folder
7. It's time to compare these overrides accross branches.
```ruby
bundle exec overrides_tracker compare
````
-8. The result gives you an overview on what has changed and what not.
+8. The result will be printed on the terminal as well as written as nice and clean HTML.
+ That comparison can be found under overrides_tracker/compare.html and will look somewhat like this:
- ```
- ===========================================================================================
+<p float="left">
+<img width="800" alt="" src="https://user-images.githubusercontent.com/9799974/219691633-b270db0f-8587-4b2b-91b7-8aecc36501dc.png">
+</p>
- 1) Override: OrdinaryGem::AnotherTypicalClass#a_singleton_method_that_stays_the_same
+## Integrate Overrides Tracker into your CI/CD pipeline with Overrides.io
- ...........................................................................................
-
- main#cc5a31dc4833734a177f01bd161047f8c7909e16.otf
- -------------------------------------------------------------------------------------------
-
- Original:
-
- def self.a_singleton_method_that_stays_the_same
- "This is the implementation of a simple singleton method."
- "This method will stay the same in the next version."
- end
-
-
- in BUNDLE_PATH/bundler/gems/ordinary-gem-e67e062189bb/lib/ordinary_gem/another_typical_class.rb:19
-
-
- -------------------------------------------------------------------------------------------
-
- Override:
-
- def self.a_singleton_method_that_stays_the_same
- "This is our override of a simple singleton method."
- "This method should stay the same in the next version."
- end
-
-
- in: APP_PATH/app/models/ordinary_gem/another_typical_class_monkey_patch.rb:2
-
-
-
- ...........................................................................................
-
- attached-to-next-version#a7231014c006a4a5848eb4d92bb465eb5c89ee01.otf
- -------------------------------------------------------------------------------------------
-
- Original:
-
- def self.a_singleton_method_that_stays_the_same
- "This is the implementation of a simple singleton method."
- "This method will stay the same in the next version."
- end
-
-
- in BUNDLE_PATH/bundler/gems/ordinary-gem-f92e5a1a70a6/lib/ordinary_gem/another_typical_class.rb:13
-
-
- -------------------------------------------------------------------------------------------
-
- Override:
-
- def self.a_singleton_method_that_stays_the_same
- "This is our override of a simple singleton method."
- "This method should stay the same in the next version."
- end
-
-
- in: APP_PATH/app/models/ordinary_gem/another_typical_class_monkey_patch.rb:2
-
-
-
- ...........................................................................................
-
- main#1d279724b26c9491e6e5a01e9711b61a73e9f7e0.otf
- Method not available
-
-
-
-
-
- ...........................................................................................
- .
- .
- .
- .
- ===========================================================================================
-
- Summary:
-
- Investigated methods: 70
- Diffences on overrides: 42
- Diffences on added methods: 28
-
- ```
-
-## Overrides.io integration
-<img width="1000" alt="Bildschirmfoto 2023-01-10 um 21 39 42" src="https://user-images.githubusercontent.com/9799974/211657428-c2a7e272-ae86-4c1c-8e77-0a07acc1a4a0.png">
-
Overrides.io is a service that monitors code you override for changes. It notifies you whenever those changes occur.
Additionally it gives you a beautiful overview of all the methods you have overridden as well as your overrides side by side.
<p float="left">
-<img width="500" alt="Bildschirmfoto 2023-01-10 um 21 39 15" src="https://user-images.githubusercontent.com/9799974/211658325-60c21057-1a07-4b55-a4d5-3d82470fb3ee.png">
-<img width="500" alt="Bildschirmfoto 2023-01-10 um 21 39 28" src="https://user-images.githubusercontent.com/9799974/211658362-f50435dd-56c5-498b-9038-f702addb0717.png">
+<img width="500" alt="Project View" src="https://user-images.githubusercontent.com/9799974/211658325-60c21057-1a07-4b55-a4d5-3d82470fb3ee.png">
+<img width="500" alt="Build View" src="https://user-images.githubusercontent.com/9799974/211658362-f50435dd-56c5-498b-9038-f702addb0717.png">
+<img width="500" alt="Comparison View" src="https://user-images.githubusercontent.com/9799974/219853892-988d8c81-01ba-4d95-a335-cd9ceeddcf67.png">
</p>
-Overrides Tracker can easily be integrated into you CI/CD pipeline and configured to send the result files to overrides.io.
-You basically just have to set OVERRIDES_API_TOKEN environment variable and call 'bundle exec overrides_tracker track'.
-To push it to overrides.io locally you could also just call 'bundle exec overrides_tracker track YOUR_OVERRIDES_API_TOKEN'.
+Overrides Tracker can easily be integrated into your CI/CD pipeline.
+Just sign up at Overrides.io and setup your project within a view seconds and you will receive an OVERRIDES_API_TOKEN.
+
+Now just set OVERRIDES_API_TOKEN environment variable with the value of that token and call 'bundle exec overrides_tracker track'.
+To push the result file to overrides.io manually you could also just call 'bundle exec overrides_tracker track YOUR_OVERRIDES_API_TOKEN'.
You can find a detailed description how to integrate it with CircleCI, GitHub Action and Jenkins here:
https://www.overrides.io/continuous_integration