Skip to content
This repository has been archived by the owner on Aug 24, 2023. It is now read-only.

Commit

Permalink
Many improvements
Browse files Browse the repository at this point in the history
Changes are described in `CHANGELOG.md`.
  • Loading branch information
AlexWayfer committed Apr 22, 2021
1 parent 8611238 commit ee0ba9d
Show file tree
Hide file tree
Showing 61 changed files with 5,158 additions and 801 deletions.
14 changes: 14 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
root = true

[*]
indent_style = space
indent_size = 2
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
max_line_length = 100

[*.md]
indent_style = space
indent_size = 4
3 changes: 3 additions & 0 deletions .rspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
--color
--format documentation
--require spec_helper.rb
24 changes: 24 additions & 0 deletions .rubocop.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
require:
- rubocop-performance
- rubocop-rspec

Layout/LineLength:
Max: 100
Layout/MultilineOperationIndentation:
EnforcedStyle: indented
Layout/MultilineMethodCallIndentation:
EnforcedStyle: indented
Layout/ArgumentAlignment:
EnforcedStyle: with_fixed_indentation

AllCops:
NewCops: enable

Metrics/BlockLength:
Exclude:
- spec/**/*.rb

RSpec/NestedGroups:
Max: 5
RSpec/MultipleMemoizedHelpers:
Enabled: false
41 changes: 41 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
## master

* Remove `Twitch.new`, use `Twitch::Client.new`.
* Use `twitch_oauth2` gem for authentication (parameters changed).
Check `README` for additional info.
* Add `tokens`, `access_token` and `refresh_token` getters.
* Replace custom adapters and `HTTParty` with `Faraday` and its adapters.
* Delete undocumented `channel_panels` and `chat_links` methods
not from Kraken version.
* Rename `edit_channel` to `update_channel`.
* Add support of options (`stream_type`) for `stream`.
* Add `retriable`: retry requests on fails.
* Add `Twitch::ServerError` for 5xx HTTP errors, apply `retriable` to them.
* Specify required Ruby version, 2.4, and support Ruby 3.
* Use [`VCR`](https://relishapp.com/vcr/vcr/docs) (recorded HTTP requests)
for tests.
* Add [RuboCop](https://docs.rubocop.org/).
* Add [EditorConfig](https://editorconfig.org/) file.
* Increase max line length from 80 (previous RuboCop's default)
to 100 (average between previous and new RuboCop's default, 120).
* Replace `add_dependency` with more explicit `add_runtime_dependency` in gem spec.

## 0.1.3

* Add options to `following` and `followed` methods.
* Add `channel_panels` method.

## 0.1.2

* Fix `Twitch::Client#unfollow` method name.
* Allow `Twitch::Client#subscribed` method to receive query string options.

## 0.1.1

* Allow to override `oauth_token` in options.

## 0.1.0

* Replace `camelCase` method names with `snake_case`.
* Remove `get_` prefix from method names.
* Make `your_` prefix optional (e.g. `user` and `your_user` are equal).
3 changes: 3 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,2 +1,5 @@
# frozen_string_literal: true

source 'https://rubygems.org'

gemspec
102 changes: 80 additions & 22 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -1,38 +1,96 @@
PATH
remote: .
specs:
twitch (0.1.2)
httparty
json
twitch (0.1.3)
faraday (~> 1.0)
faraday_middleware (~> 1.0)
retriable (~> 3.0)
twitch_oauth2 (~> 0.2.0)

GEM
remote: https://rubygems.org/
specs:
diff-lcs (1.2.5)
httparty (0.13.7)
json (~> 1.8)
multi_xml (>= 0.5.2)
json (1.8.3)
multi_xml (0.5.5)
rspec (3.0.0)
rspec-core (~> 3.0.0)
rspec-expectations (~> 3.0.0)
rspec-mocks (~> 3.0.0)
rspec-core (3.0.3)
rspec-support (~> 3.0.0)
rspec-expectations (3.0.3)
ast (2.4.2)
byebug (11.1.3)
coderay (1.1.3)
diff-lcs (1.4.4)
docile (1.3.5)
faraday (1.3.0)
faraday-net_http (~> 1.0)
multipart-post (>= 1.2, < 3)
ruby2_keywords
faraday-net_http (1.0.1)
faraday_middleware (1.0.0)
faraday (~> 1.0)
method_source (1.0.0)
multipart-post (2.1.1)
parallel (1.20.1)
parser (3.0.1.0)
ast (~> 2.4.1)
pry (0.13.1)
coderay (~> 1.1)
method_source (~> 1.0)
pry-byebug (3.9.0)
byebug (~> 11.0)
pry (~> 0.13.0)
rainbow (3.0.0)
regexp_parser (2.1.1)
retriable (3.1.2)
rexml (3.2.5)
rspec (3.10.0)
rspec-core (~> 3.10.0)
rspec-expectations (~> 3.10.0)
rspec-mocks (~> 3.10.0)
rspec-core (3.10.1)
rspec-support (~> 3.10.0)
rspec-expectations (3.10.1)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.0.0)
rspec-mocks (3.0.3)
rspec-support (~> 3.0.0)
rspec-support (3.0.3)
rspec-support (~> 3.10.0)
rspec-mocks (3.10.2)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.10.0)
rspec-support (3.10.2)
rubocop (0.89.1)
parallel (~> 1.10)
parser (>= 2.7.1.1)
rainbow (>= 2.2.2, < 4.0)
regexp_parser (>= 1.7)
rexml
rubocop-ast (>= 0.3.0, < 1.0)
ruby-progressbar (~> 1.7)
unicode-display_width (>= 1.4.0, < 2.0)
rubocop-ast (0.8.0)
parser (>= 2.7.1.5)
rubocop-performance (1.8.1)
rubocop (>= 0.87.0)
rubocop-ast (>= 0.4.0)
rubocop-rspec (1.44.1)
rubocop (~> 0.87)
rubocop-ast (>= 0.7.1)
ruby-progressbar (1.11.0)
ruby2_keywords (0.0.4)
simplecov (0.18.5)
docile (~> 1.1)
simplecov-html (~> 0.11)
simplecov-html (0.12.3)
twitch_oauth2 (0.2.0)
faraday (~> 1.0)
faraday_middleware (~> 1.0)
unicode-display_width (1.7.0)
vcr (6.0.0)

PLATFORMS
ruby

DEPENDENCIES
rspec
pry-byebug (~> 3.9)
rspec (~> 3.9)
rubocop (~> 0.89.0)
rubocop-performance (~> 1.5)
rubocop-rspec (~> 1.38)
simplecov (~> 0.18.0)
twitch!
vcr (~> 6.0)

BUNDLED WITH
1.11.2
2.2.6
Loading

0 comments on commit ee0ba9d

Please sign in to comment.