advent_of_code_cli 0.1.3 → 0.1.4
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.
- 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.
|