software_challenge_client 22.1.0 → 23.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +15 -15
  3. data/.rspec +3 -3
  4. data/.rubocop.yml +11 -11
  5. data/.ruby-version +1 -1
  6. data/.stickler.yml +7 -7
  7. data/.vscode/launch.json +40 -40
  8. data/.vscode/settings.json +9 -9
  9. data/AUTHORS +6 -6
  10. data/CODE_OF_CONDUCT.md +13 -13
  11. data/Dockerfile +3 -3
  12. data/Gemfile +5 -5
  13. data/Guardfile +45 -45
  14. data/README.md +172 -147
  15. data/RELEASES.md +144 -140
  16. data/Rakefile +7 -7
  17. data/bin/console +15 -15
  18. data/bin/setup +7 -7
  19. data/develop.sh +3 -3
  20. data/example/client.rb +35 -35
  21. data/example/main.rb +42 -42
  22. data/example/start.bat +2 -2
  23. data/generate-authors.sh +19 -19
  24. data/lib/software_challenge_client/board.rb +149 -127
  25. data/lib/software_challenge_client/client_interface.rb +19 -19
  26. data/lib/software_challenge_client/condition.rb +27 -27
  27. data/lib/software_challenge_client/coordinates.rb +71 -45
  28. data/lib/software_challenge_client/debug_hint.rb +17 -17
  29. data/lib/software_challenge_client/direction.rb +41 -0
  30. data/lib/software_challenge_client/field.rb +70 -69
  31. data/lib/software_challenge_client/game_rule_logic.rb +206 -136
  32. data/lib/software_challenge_client/game_state.rb +57 -29
  33. data/lib/software_challenge_client/invalid_move_exception.rb +15 -15
  34. data/lib/software_challenge_client/logging.rb +26 -26
  35. data/lib/software_challenge_client/move.rb +37 -41
  36. data/lib/software_challenge_client/network.rb +126 -126
  37. data/lib/software_challenge_client/piece.rb +43 -81
  38. data/lib/software_challenge_client/player.rb +31 -31
  39. data/lib/software_challenge_client/protocol.rb +103 -54
  40. data/lib/software_challenge_client/runner.rb +36 -36
  41. data/lib/software_challenge_client/team.rb +23 -25
  42. data/lib/software_challenge_client/util/constants.rb +9 -9
  43. data/lib/software_challenge_client/version.rb +5 -5
  44. data/lib/software_challenge_client.rb +23 -25
  45. data/lib/update_client_module.sh +15 -15
  46. data/push_image_production.sh +12 -12
  47. data/release.sh +9 -9
  48. data/software_challenge_client.gemspec +41 -41
  49. metadata +3 -5
  50. data/lib/software_challenge_client/color.rb +0 -26
  51. data/lib/software_challenge_client/has_hints.rb +0 -11
  52. data/lib/software_challenge_client/piece_type.rb +0 -16
data/README.md CHANGED
@@ -1,147 +1,172 @@
1
- # Software-Challenge Client
2
-
3
- This gem includes everything to build a client for the coding
4
- competition [Software-Challenge](http://www.software-challenge.de).
5
-
6
- ------------------------------------------------------------------------
7
-
8
- _Language:_ Most documentation will be in german language, because it is intended
9
- to be used by pupils taking part in the Software-Challenge programming
10
- competition. Only internal documentation is in english.
11
-
12
- ------------------------------------------------------------------------
13
-
14
- _Sprache:_ Ein Grossteil der Dokumentation ist in deutscher Sprache verfasst, da
15
- sie dazu gedacht ist, von am Programmierwettbewerb Software-Challenge
16
- teilnehmenden Schülerinnen und Schülern gelesen zu werden. Interne Dokumentation
17
- ist weiterhin in englisch.
18
-
19
- ------------------------------------------------------------------------
20
-
21
- ## Installation
22
-
23
- Um die Software-Challenge Bibliothek in deinem Computerspieler zu verwenden, füge folgende Zeile in das Gemfile deines Projektes ein:
24
-
25
- gem 'software_challenge_client'
26
-
27
- Installiere das Gem dann mit dem Befehl:
28
-
29
- $ bundle
30
-
31
- Oder installiere das Gem ohne ein Gemfile mit:
32
-
33
- $ gem install software_challenge_client
34
-
35
- ## Verwendung
36
-
37
- Ein Beispielprojekt zur Verwendung der Bibliothek findet man im Verzeichnis `example` ([Beispielprojekt auf GitHub](https://github.com/CAU-Kiel-Tech-Inf/socha_ruby_client/tree/master/example)).
38
-
39
- Du kannst den Beispielclient mittels
40
-
41
- ruby main.rb
42
-
43
- in einer Konsole ausführen (dazu musst du dich im Verzeichnis `example` befinden).
44
-
45
- Damit dies funktioniert, muss das Gem bereits wie oben beschrieben installiert
46
- sein und es muss ein Spielserver auf eine Verbindung warten (also zum Beispiel
47
- ein Spiel mit einem manuell gestarteten Spieler in der grafischen Oberfläche
48
- angelegt worden sein).
49
-
50
- Neben Beiwerk wie dem Initialisieren der Verbindung zum Spielserver und
51
- Verarbeiten der Startparameter (was beides in `main.rb` des Beispielprojektes
52
- passiert), musst du nur eine Klasse implementieren, um einen lauffähigen
53
- Computerspieler zu haben (`client.rb` im Beispielprojekt):
54
-
55
- require 'software_challenge_client'
56
-
57
- class Client < ClientInterface
58
- include Logging
59
-
60
- attr_accessor :gamestate
61
-
62
- def initialize(log_level)
63
- logger.level = log_level
64
- logger.info 'Einfacher Spieler wurde erstellt.'
65
- end
66
-
67
- # gets called, when it's your turn
68
- def move_requested
69
- logger.info "Spielstand: #{gamestate.points_for_player(gamestate.current_player)} - #{gamestate.points_for_player(gamestate.other_player)}"
70
- move = best_move
71
- logger.debug "Zug gefunden: #{move}" unless move.nil?
72
- move
73
- end
74
-
75
- def best_move
76
- GameRuleLogic.possible_moves(gamestate).sample
77
- end
78
- end
79
-
80
- ## Generating the Documentation
81
-
82
- Code documentation can be generated using YARD in the project root (source code
83
- needs to be checked out and `bundle` has to be executed,
84
- see [Installation](#installation)):
85
-
86
- yard
87
-
88
- After generation, the docs can be found in the `doc` directory. Start at
89
- `index.html`.
90
-
91
- Documentation for the latest source can also be found
92
- on
93
- [rubydoc.info](http://www.rubydoc.info/github/CAU-Kiel-Tech-Inf/socha_ruby_client).
94
-
95
- When updating the docs, you may use
96
-
97
- yard server --reload
98
-
99
- or inside a docker container
100
-
101
- yard server --reload --bind 0.0.0.0
102
-
103
- to get a live preview of them at [http://localhost:8808](http://localhost:8808).
104
-
105
- ## Development
106
-
107
- After checking out the repo, run `bin/setup` to install
108
- dependencies. Then, run `rspec` to run the tests. You can also
109
- run `bin/console` for an interactive prompt that will allow you to
110
- experiment.
111
-
112
- To install this gem onto your local machine, run `gem uninstall
113
- software_challenge_client` to remove an existing gem and then `bundle exec rake
114
- install` to install the current version.
115
-
116
- To develop inside a docker container, make sure you have Docker installed and execute
117
- `develop.sh`.
118
-
119
- ### Specs
120
-
121
- The gem is tested using RSpec. To run all tests, execute `rspec`. When
122
- developing, you may use Guard to execute tests when files change. To do this,
123
- execute `guard`. Tests will then be automatically run when you change a file.
124
-
125
- ### Linting
126
-
127
- Linting by rubocop is included in the guard config. It is run when all specs
128
- pass.
129
-
130
- ### Releasing
131
-
132
- To release a new version, update the version number in
133
- `lib/software_challenge_client/version.rb` and update RELEASES.md.
134
-
135
- Then run `bundle exec rake release`, which will create a git tag for the
136
- version, push git commits and tags, and push the `.gem` file to
137
- [rubygems.org](https://rubygems.org). You may also use the `release.sh` script
138
- which executes `bundle exec rake release` in a suitable docker container.
139
-
140
- ## Contributing
141
-
142
- Bug reports and pull requests are welcome on GitHub at
143
- https://github.com/CAU-Kiel-Tech-Inf/socha_ruby_client. This project is intended
144
- to be a safe, welcoming space for collaboration, and contributors are expected
145
- to adhere to the [code of
146
- conduct](https://github.com/CAU-Kiel-Tech-Inf/socha-client-ruby/blob/master/CODE_OF_CONDUCT.md)
147
- (from [Contributor Covenant](http://contributor-covenant.org)).
1
+ # Software-Challenge Client
2
+
3
+ This gem includes everything to build a client for the coding
4
+ competition [Software-Challenge](http://www.software-challenge.de).
5
+
6
+ ------------------------------------------------------------------------
7
+
8
+ _Language:_ Most documentation will be in german language, because it is intended
9
+ to be used by pupils taking part in the Software-Challenge programming
10
+ competition. Only internal documentation is in english.
11
+
12
+ ------------------------------------------------------------------------
13
+
14
+ _Sprache:_ Ein Grossteil der Dokumentation ist in deutscher Sprache verfasst, da
15
+ sie dazu gedacht ist, von am Programmierwettbewerb Software-Challenge
16
+ teilnehmenden Schülerinnen und Schülern gelesen zu werden. Interne Dokumentation
17
+ ist weiterhin in englisch.
18
+
19
+ ------------------------------------------------------------------------
20
+
21
+ ## Installation
22
+
23
+ Um die Software-Challenge Bibliothek in deinem Computerspieler zu verwenden, füge folgende Zeile in das Gemfile deines Projektes ein:
24
+
25
+ $ gem 'software_challenge_client'
26
+
27
+ Installiere das Gem dann mit dem Befehl:
28
+
29
+ $ bundle
30
+
31
+ Oder installiere das Gem ohne ein Gemfile mit:
32
+
33
+ $ gem install software_challenge_client
34
+
35
+ ## Verwendung
36
+
37
+ Ein Beispielprojekt zur Verwendung der Bibliothek findet man im Verzeichnis `example` ([Beispielprojekt auf GitHub](https://github.com/CAU-Kiel-Tech-Inf/socha_ruby_client/tree/master/example)).
38
+
39
+ Du kannst den Beispielclient mittels
40
+
41
+ $ ruby main.rb
42
+
43
+ in einer Konsole ausführen (dazu musst du dich im Verzeichnis `example` befinden).
44
+
45
+ Damit dies funktioniert, muss das Gem bereits wie oben beschrieben installiert
46
+ sein und es muss ein Spielserver auf eine Verbindung warten (also zum Beispiel
47
+ ein Spiel mit einem manuell gestarteten Spieler in der grafischen Oberfläche
48
+ angelegt worden sein).
49
+
50
+ Neben Beiwerk wie dem Initialisieren der Verbindung zum Spielserver und
51
+ Verarbeiten der Startparameter (was beides in `main.rb` des Beispielprojektes
52
+ passiert), musst du nur eine Klasse implementieren, um einen lauffähigen
53
+ Computerspieler zu haben (`client.rb` im Beispielprojekt):
54
+
55
+ require 'software_challenge_client'
56
+
57
+ class Client < ClientInterface
58
+ include Logging
59
+
60
+ attr_accessor :gamestate
61
+
62
+ def initialize(log_level)
63
+ logger.level = log_level
64
+ logger.info 'Einfacher Spieler wurde erstellt.'
65
+ end
66
+
67
+ # gets called, when it's your turn
68
+ def move_requested
69
+ logger.info "Spielstand: #{gamestate.points_for_player(gamestate.current_player)} - #{gamestate.points_for_player(gamestate.other_player)}"
70
+ move = best_move
71
+ logger.debug "Zug gefunden: #{move}" unless move.nil?
72
+ move
73
+ end
74
+
75
+ def best_move
76
+ GameRuleLogic.possible_moves(gamestate).sample
77
+ end
78
+ end
79
+
80
+ ### Abgabe des Clients im SC Wettkampfsystem
81
+
82
+ Da Ruby eine interpretierte Sprache ist, muss der Ruby-Quellcode direkt
83
+ in ein ZIP-Archiv gepackt und auf das [Wettkampfsystem](https://docs.software-challenge.de/glossary/contest) hochgeladen
84
+ werden. Auf dem [Wettkampfsystem](https://docs.software-challenge.de/glossary/contest) ist ein Ruby-Interpreter sowie das
85
+ aktuellste `software_challenge_client` Gem installiert. Alle weiteren
86
+ Bibliotheken müssen im ZIP-Archiv vorhanden sein. Nach dem Hochladen des ZIP-Archivs muss die auszuführende Hauptdatei im [Wettkampfsystem](https://docs.software-challenge.de/glossary/contest)
87
+ ausgewählt werden. Diese wird dann zum Start des Computerspielers
88
+ gestartet. Damit dies richtig funktioniert, ist es entscheidend, dass
89
+ die Hauptdatei mit einer sogenannten "Shebang"-Zeile beginnt:
90
+
91
+ #!/usr/bin/env ruby
92
+
93
+ Weiterhin ist es ratsam, den Magic-Comment zum Encoding direkt unter die
94
+ Shebang-Zeile zu schreiben:
95
+
96
+ # encoding: UTF-8
97
+
98
+ Ein vollständiges Beispiel für einen abgabefertigen Ruby-Computerspieler
99
+ gibt es im [example Verzeichnis des Computerspieler-Gems bei
100
+ Github](https://github.com/software-challenge/client-ruby/tree/main/example).
101
+ Packt man die beiden Dateien `client.rb` und `main.rb` in ein
102
+ ZIP-Archiv, hat man einen abgabefertigen Computerspieler. Beim Hochladen
103
+ wählt man `main.rb` als Hauptdatei.
104
+
105
+ ## Generating the Documentation
106
+
107
+ Code documentation can be generated using YARD in the project root (source code
108
+ needs to be checked out and `bundle` has to be executed,
109
+ see [Installation](#installation)):
110
+
111
+ $ yard
112
+
113
+ After generation, the docs can be found in the `doc` directory. Start at
114
+ `index.html`.
115
+
116
+ Documentation for the latest source can also be found
117
+ on
118
+ [rubydoc.info](http://www.rubydoc.info/github/CAU-Kiel-Tech-Inf/socha_ruby_client).
119
+
120
+ When updating the docs, you may use
121
+
122
+ $ yard server --reload
123
+
124
+ or inside a docker container
125
+
126
+ $ yard server --reload --bind 0.0.0.0
127
+
128
+ to get a live preview of them at [http://localhost:8808](http://localhost:8808).
129
+
130
+ ## Development
131
+
132
+ After checking out the repo, run `bin/setup` to install
133
+ dependencies. Then, run `rspec` to run the tests. You can also
134
+ run `bin/console` for an interactive prompt that will allow you to
135
+ experiment.
136
+
137
+ To install this gem onto your local machine, run `gem uninstall
138
+ software_challenge_client` to remove an existing gem and then `bundle exec rake
139
+ install` to install the current version.
140
+
141
+ To develop inside a docker container, make sure you have Docker installed and execute
142
+ `develop.sh`.
143
+
144
+ ### Specs
145
+
146
+ The gem is tested using RSpec. To run all tests, execute `rspec`. When
147
+ developing, you may use Guard to execute tests when files change. To do this,
148
+ execute `guard`. Tests will then be automatically run when you change a file.
149
+
150
+ ### Linting
151
+
152
+ Linting by rubocop is included in the guard config. It is run when all specs
153
+ pass.
154
+
155
+ ### Releasing
156
+
157
+ To release a new version, update the version number in
158
+ `lib/software_challenge_client/version.rb` and update RELEASES.md.
159
+
160
+ Then run `bundle exec rake release`, which will create a git tag for the
161
+ version, push git commits and tags, and push the `.gem` file to
162
+ [rubygems.org](https://rubygems.org). You may also use the `release.sh` script
163
+ which executes `bundle exec rake release` in a suitable docker container.
164
+
165
+ ## Contributing
166
+
167
+ Bug reports and pull requests are welcome on GitHub at
168
+ https://github.com/CAU-Kiel-Tech-Inf/socha_ruby_client. This project is intended
169
+ to be a safe, welcoming space for collaboration, and contributors are expected
170
+ to adhere to the [code of
171
+ conduct](https://github.com/CAU-Kiel-Tech-Inf/socha-client-ruby/blob/master/CODE_OF_CONDUCT.md)
172
+ (from [Contributor Covenant](http://contributor-covenant.org)).
data/RELEASES.md CHANGED
@@ -1,140 +1,144 @@
1
- = 22.1.0
2
-
3
- Fix gamestate.round
4
-
5
- = 22.0.3
6
-
7
- First tagged Version for Osteseeschach
8
-
9
- = 21.2.0
10
-
11
- Adjustments for Backend version 21.2.0
12
-
13
- = 21.1.0
14
-
15
- Pieces are now mutable and `==` of pieces considers rotated shapes which result in the same covered board fields as equal.
16
-
17
- = 21.0.2
18
-
19
- Fixed problem which caused `last_move` of a `GameState` always be `nil` (thanks to wollw!).
20
-
21
- = 21.0.1
22
-
23
- Improved performance and defined Ruby version 2.5.5 as minimum requirement
24
-
25
- = 21.0.0
26
-
27
- First version for game "Blokus"
28
-
29
- = 20.2.4
30
-
31
- Update game name in documentation
32
-
33
- = 20.2.3
34
-
35
- Improve method documentation
36
-
37
- = 20.2.1 & 20.2.2
38
-
39
- Bugfixes for performing moves on a gamestate
40
-
41
- = 20.2.0
42
-
43
- First version for game "Hive"
44
-
45
- = 19.1.0
46
-
47
- - winning condition is now set when changing a gamestate with Move#perform!
48
-
49
- = 19.0.4
50
-
51
- - fixed one more bug in in Move#perform! (thanks to wollw!)
52
-
53
- = 19.0.3
54
-
55
- - fixed another bug in in Move#perform! (thanks to wollw!)
56
-
57
- = 19.0.2
58
-
59
- - fixed bug in Move#perform! (thanks to wollw!)
60
-
61
- = 19.0.1
62
-
63
- - fixed bug in swarm size calculation (thanks to wollw!)
64
-
65
- = 19.0.0
66
-
67
- First version for game "Piranhas"
68
-
69
- = 1.2.1
70
-
71
- - fixed a bug which could lead to an infinite loop in the possible_move method
72
-
73
- = 1.2.0
74
-
75
- - fixed connection code
76
- - fixed bug which lead to a exception when testing for playability of fallback card
77
-
78
- = 1.1.0
79
-
80
- Added missing perform! methods for actions.
81
-
82
- = 1.0.0
83
-
84
- First version for game "Hase und Igel".
85
-
86
- = 0.3.4
87
-
88
- Last version for game "Mississippi Queen".
89
-
90
- - Renamed Turn#direction to Turn#turn_steps to make clearer that a number should be given, not a Direction instance.
91
- - Corrected generation of XML for Push-actions
92
-
93
- = 0.3.3
94
-
95
- - Corrected checking/updating of coal for decelerations.
96
-
97
- = 0.3.2
98
-
99
- - Corrected some return types in the documentation (thanks to wollw!).
100
-
101
- = 0.3.1
102
-
103
- - Fixed bug: Coal was not read from server-XML (thanks to wollw!)
104
-
105
- = 0.3.0
106
-
107
- - Fixed bug where wrong (old) method getMove was called, the new name is
108
- move_requested
109
- - Improved end game handling
110
-
111
- = 0.2.0
112
-
113
- - First working version for Mississippi Queen
114
-
115
- = 0.1.5
116
-
117
- - Fixed bug in reservation code.
118
-
119
- = 0.1.4
120
-
121
- - Added support for reservation ID to let clients work on contest system.
122
-
123
- = 0.1.3
124
-
125
- - Fixed bug in makeClearBoard method (thanks to wollw!).
126
-
127
- = 0.1.2
128
-
129
- - Fixed bug in == (test for equality) method of connections (thanks to
130
- wollw!).
131
- - Fixed link in readme to code of conduct.
132
- - Removed trailing whitespace.
133
-
134
- = 0.1.1
135
-
136
- Compatibility to Ruby 1.9 (source encoding issues)
137
-
138
- = 0.1.0
139
-
140
- First complete version.
1
+ = 23.0.2
2
+
3
+ First Version for "Hey, Danke für den Fisch"
4
+
5
+ = 22.1.0
6
+
7
+ Fix gamestate.round
8
+
9
+ = 22.0.3
10
+
11
+ First tagged Version for Osteseeschach
12
+
13
+ = 21.2.0
14
+
15
+ Adjustments for Backend version 21.2.0
16
+
17
+ = 21.1.0
18
+
19
+ Pieces are now mutable and `==` of pieces considers rotated shapes which result in the same covered board fields as equal.
20
+
21
+ = 21.0.2
22
+
23
+ Fixed problem which caused `last_move` of a `GameState` always be `nil` (thanks to wollw!).
24
+
25
+ = 21.0.1
26
+
27
+ Improved performance and defined Ruby version 2.5.5 as minimum requirement
28
+
29
+ = 21.0.0
30
+
31
+ First version for game "Blokus"
32
+
33
+ = 20.2.4
34
+
35
+ Update game name in documentation
36
+
37
+ = 20.2.3
38
+
39
+ Improve method documentation
40
+
41
+ = 20.2.1 & 20.2.2
42
+
43
+ Bugfixes for performing moves on a gamestate
44
+
45
+ = 20.2.0
46
+
47
+ First version for game "Hive"
48
+
49
+ = 19.1.0
50
+
51
+ - winning condition is now set when changing a gamestate with Move#perform!
52
+
53
+ = 19.0.4
54
+
55
+ - fixed one more bug in in Move#perform! (thanks to wollw!)
56
+
57
+ = 19.0.3
58
+
59
+ - fixed another bug in in Move#perform! (thanks to wollw!)
60
+
61
+ = 19.0.2
62
+
63
+ - fixed bug in Move#perform! (thanks to wollw!)
64
+
65
+ = 19.0.1
66
+
67
+ - fixed bug in swarm size calculation (thanks to wollw!)
68
+
69
+ = 19.0.0
70
+
71
+ First version for game "Piranhas"
72
+
73
+ = 1.2.1
74
+
75
+ - fixed a bug which could lead to an infinite loop in the possible_move method
76
+
77
+ = 1.2.0
78
+
79
+ - fixed connection code
80
+ - fixed bug which lead to a exception when testing for playability of fallback card
81
+
82
+ = 1.1.0
83
+
84
+ Added missing perform! methods for actions.
85
+
86
+ = 1.0.0
87
+
88
+ First version for game "Hase und Igel".
89
+
90
+ = 0.3.4
91
+
92
+ Last version for game "Mississippi Queen".
93
+
94
+ - Renamed Turn#direction to Turn#turn_steps to make clearer that a number should be given, not a Direction instance.
95
+ - Corrected generation of XML for Push-actions
96
+
97
+ = 0.3.3
98
+
99
+ - Corrected checking/updating of coal for decelerations.
100
+
101
+ = 0.3.2
102
+
103
+ - Corrected some return types in the documentation (thanks to wollw!).
104
+
105
+ = 0.3.1
106
+
107
+ - Fixed bug: Coal was not read from server-XML (thanks to wollw!)
108
+
109
+ = 0.3.0
110
+
111
+ - Fixed bug where wrong (old) method getMove was called, the new name is
112
+ move_requested
113
+ - Improved end game handling
114
+
115
+ = 0.2.0
116
+
117
+ - First working version for Mississippi Queen
118
+
119
+ = 0.1.5
120
+
121
+ - Fixed bug in reservation code.
122
+
123
+ = 0.1.4
124
+
125
+ - Added support for reservation ID to let clients work on contest system.
126
+
127
+ = 0.1.3
128
+
129
+ - Fixed bug in makeClearBoard method (thanks to wollw!).
130
+
131
+ = 0.1.2
132
+
133
+ - Fixed bug in == (test for equality) method of connections (thanks to
134
+ wollw!).
135
+ - Fixed link in readme to code of conduct.
136
+ - Removed trailing whitespace.
137
+
138
+ = 0.1.1
139
+
140
+ Compatibility to Ruby 1.9 (source encoding issues)
141
+
142
+ = 0.1.0
143
+
144
+ First complete version.
data/Rakefile CHANGED
@@ -1,7 +1,7 @@
1
- # frozen_string_literal: true
2
- require 'bundler/gem_tasks'
3
- require 'yard'
4
-
5
- YARD::Rake::YardocTask.new do |t|
6
- t.files = ['lib/**/*.rb'] # optional
7
- end
1
+ # frozen_string_literal: true
2
+ require 'bundler/gem_tasks'
3
+ require 'yard'
4
+
5
+ YARD::Rake::YardocTask.new do |t|
6
+ t.files = ['lib/**/*.rb'] # optional
7
+ end
data/bin/console CHANGED
@@ -1,15 +1,15 @@
1
- #!/usr/bin/env ruby
2
- # frozen_string_literal: true
3
-
4
- require 'bundler/setup'
5
- require 'software_challenge_client'
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
1
+ #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
3
+
4
+ require 'bundler/setup'
5
+ require 'software_challenge_client'
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