advent_of_code_cli 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +7 -0
- data/Gemfile.lock +1 -1
- data/README.md +3 -1
- data/lib/advent_of_code_cli/commands/download.rb +4 -1
- data/lib/advent_of_code_cli/commands/scaffold.rb +9 -9
- data/lib/advent_of_code_cli/commands/solve.rb +1 -3
- data/lib/advent_of_code_cli/version.rb +1 -1
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b2cac14f5226dc5a7c96642991455c2f33c794d2897669393c095ca350cdae2
|
4
|
+
data.tar.gz: e3d32b4654fc79cfb0fb86e2a33004019142ba6fb523215e2da7692b071879c5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2e1723a650da1f128a8f3cae5af52ae0f2e7b04845a883a82181f076d47b14b984a26b3ad6cc79ea4c1ce2272b6232531d2892e8790cd202dbcd053d1ccab98f
|
7
|
+
data.tar.gz: 71fc3eed81a924700eddb86a9c1f06c2a3ce0c43cbaf09e64f34c6078e3876f6d5409bbfbb4e37952165db444c866e3ebbbd5daaf63a79b7a725402570705f92
|
data/.rubocop.yml
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
AllCops:
|
2
2
|
TargetRubyVersion: 2.6
|
3
|
+
NewCops: enable
|
3
4
|
|
4
5
|
Style/Documentation:
|
5
6
|
Enabled: false
|
@@ -14,3 +15,9 @@ Style/StringLiteralsInInterpolation:
|
|
14
15
|
|
15
16
|
Layout/LineLength:
|
16
17
|
Max: 120
|
18
|
+
|
19
|
+
Metrics/AbcSize:
|
20
|
+
Enabled: false
|
21
|
+
|
22
|
+
Metrics/MethodLength:
|
23
|
+
Enabled: false
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
> ⚠️ **Note:** This tool is under active development. I built in in a couple hours with no automated tests. Things may change between versions!
|
4
4
|
|
5
|
-
A little CLI tool that scaffolds and runs [Advent of Code](https://
|
5
|
+
A little CLI tool that scaffolds and runs [Advent of Code](https://adventofcode.com) solutions in Ruby.
|
6
6
|
|
7
7
|
This project is heavily based on [advent-of-code-rust](https://github.com/arturopala/advent-of-code-rust). Go check it out!
|
8
8
|
|
@@ -52,6 +52,8 @@ module Day01
|
|
52
52
|
end
|
53
53
|
```
|
54
54
|
|
55
|
+
...where `input` is an `Array[String]` of all the lines without newlines.
|
56
|
+
|
55
57
|
I would love to make this structure configurable in the future.
|
56
58
|
|
57
59
|
### Download
|
@@ -31,7 +31,7 @@ module AdventOfCode
|
|
31
31
|
private
|
32
32
|
|
33
33
|
def cookie
|
34
|
-
@cookie ||= ENV
|
34
|
+
@cookie ||= ENV.fetch("AOC_COOKIE", nil)
|
35
35
|
end
|
36
36
|
|
37
37
|
def cookie_present?
|
@@ -46,6 +46,9 @@ module AdventOfCode
|
|
46
46
|
|
47
47
|
request = Net::HTTP::Get.new(url)
|
48
48
|
request["Cookie"] = "session=#{cookie}"
|
49
|
+
# The creator of Advent of Code has requested that automated tools send identifying information
|
50
|
+
# when making requests: https://www.reddit.com/r/adventofcode/comments/z9dhtd
|
51
|
+
request["User-Agent"] = "github.com/egiurleo/advent_of_code_cli by emily.samp@icloud.com"
|
49
52
|
|
50
53
|
response = https.request(request)
|
51
54
|
response.read_body
|
@@ -32,17 +32,17 @@ module AdventOfCode
|
|
32
32
|
|
33
33
|
def solution_file_contents
|
34
34
|
<<~RUBY
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
35
|
+
module Day#{day_string}
|
36
|
+
class << self
|
37
|
+
def part_one(input)
|
38
|
+
raise NotImplementedError
|
39
|
+
end
|
40
|
+
|
41
|
+
def part_two(input)
|
42
|
+
raise NotImplementedError
|
43
|
+
end
|
43
44
|
end
|
44
45
|
end
|
45
|
-
end
|
46
46
|
RUBY
|
47
47
|
end
|
48
48
|
end
|
@@ -1,7 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require 'benchmark'
|
4
|
-
|
5
3
|
module AdventOfCode
|
6
4
|
module Commands
|
7
5
|
class Solve < Command
|
@@ -34,7 +32,7 @@ module AdventOfCode
|
|
34
32
|
end_time = Time.now
|
35
33
|
|
36
34
|
say "Part #{part} result: #{result}"
|
37
|
-
say "Took #{end_time-start_time} seconds to solve"
|
35
|
+
say "Took #{end_time - start_time} seconds to solve"
|
38
36
|
end
|
39
37
|
end
|
40
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: advent_of_code_cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Emily Samp
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-12-
|
11
|
+
date: 2022-12-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -54,6 +54,7 @@ licenses:
|
|
54
54
|
metadata:
|
55
55
|
homepage_uri: https://github.com/egiurleo/advent_of_code_cli
|
56
56
|
source_code_uri: https://github.com/egiurleo/advent_of_code_cli
|
57
|
+
rubygems_mfa_required: 'true'
|
57
58
|
post_install_message:
|
58
59
|
rdoc_options: []
|
59
60
|
require_paths:
|
@@ -69,7 +70,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
69
70
|
- !ruby/object:Gem::Version
|
70
71
|
version: '0'
|
71
72
|
requirements: []
|
72
|
-
rubygems_version: 3.3.
|
73
|
+
rubygems_version: 3.3.26
|
73
74
|
signing_key:
|
74
75
|
specification_version: 4
|
75
76
|
summary: A CLI tool to scaffold and run Advent of Code solutions.
|