puppet-sec-lint 0.1.2 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/main.yml +4 -2
  3. data/.idea/puppet-sec-lint.iml +7 -4
  4. data/Gemfile +3 -1
  5. data/Gemfile.lock +7 -1
  6. data/README.md +35 -18
  7. data/_config.yml +1 -0
  8. data/docs/404.html +24 -0
  9. data/docs/Gemfile +30 -0
  10. data/docs/Gemfile.lock +275 -0
  11. data/docs/_config.yml +41 -0
  12. data/docs/_posts/2021-05-03-welcome-to-jekyll.markdown +25 -0
  13. data/docs/_site/404.html +71 -0
  14. data/docs/_site/feed.xml +13 -0
  15. data/docs/_site/index.html +1 -0
  16. data/docs/_site/jekyll/update/2021/05/03/welcome-to-jekyll.html +77 -0
  17. data/docs/hard-coded-credentials.md +17 -0
  18. data/docs/index.md +6 -0
  19. data/exe/puppet-sec-lint +69 -15
  20. data/lib/configurations/configuration.rb +2 -1
  21. data/lib/configurations/regex_configuration.rb +9 -0
  22. data/lib/facades/configuration_file_facade.rb +3 -1
  23. data/lib/facades/configuration_page_facade.rb +6 -0
  24. data/lib/lol.pp +6 -6
  25. data/lib/puppet-sec-lint/version.rb +3 -1
  26. data/lib/rule_engine.rb +15 -3
  27. data/lib/rules/admin_by_default_rule.rb +33 -0
  28. data/lib/rules/cyrillic_homograph_attack.rb +27 -0
  29. data/lib/rules/empty_password_rule.rb +35 -0
  30. data/lib/rules/hard_coded_credentials_rule.rb +22 -31
  31. data/lib/rules/invalid_ip_addr_binding_rule.rb +37 -0
  32. data/lib/rules/no_http_rule.rb +26 -9
  33. data/lib/rules/rule.rb +72 -0
  34. data/lib/rules/suspicious_comment_rule.rb +28 -0
  35. data/lib/rules/use_weak_crypto_algorithms_rule.rb +28 -0
  36. data/lib/servers/language_server.rb +100 -0
  37. data/lib/servers/linter_server.rb +50 -0
  38. data/lib/{sin.rb → sin/sin.rb} +6 -1
  39. data/lib/sin/sin_type.rb +44 -0
  40. data/lib/test.txt +15 -0
  41. data/lib/test2.rb +16 -0
  42. data/lib/test3.rb +32 -0
  43. data/lib/test_new.rb +19 -0
  44. data/lol2.pp +83 -0
  45. metadata +30 -5
  46. data/lib/language_server.rb +0 -78
  47. data/lib/sin_type.rb +0 -12
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ea42e7ec33e53c24fc84699d82e00b832113a5d238bef9c7c3158bcdc5e44bd0
4
- data.tar.gz: a1234f997eac72b6e0975f5cc9e239ec1884a82e1583ffb5ce61a71cc510cb0c
3
+ metadata.gz: 809fba20ed858642afb88163e0d10a7cbb16bdba42034cc7ee64c6759e972818
4
+ data.tar.gz: aa3f199ba26370c45544219bd7ac6da577bda1bc1de505f3402078335005c8e2
5
5
  SHA512:
6
- metadata.gz: a0554a588075849c0d281abf9667903478c9d22cba79d643a094fcb8f5984d085e5e83d59fa729d226eebd931f6579996145785ca722cbfa7c0ea82633d5a90b
7
- data.tar.gz: a5905f05eeae1b8d2b21a8cb55eaffb653666be9eee74cc679a22214e9b62b2ebaa679f50c381a6b7420804c4e30dd70920717b9131c97b4791c488287ff6cc6
6
+ metadata.gz: 6927190fd45bac7c13952d2ce47a182655edc2d82cbd072dc662bf33e370dfc6f964e35b0f82a05ed194cf87eb4e76121453f5f7381afac7bb702679e198ead6
7
+ data.tar.gz: 3f69d79d76380a44c118e5dadeed7efdd32308453fe65815258a9539a1dc642f8daa24907fb131b2293fed5adc3617f0eb9a8f6776b0ee5dce4e8e76b5595fdf
@@ -11,8 +11,10 @@ jobs:
11
11
  uses: ruby/setup-ruby@v1
12
12
  with:
13
13
  ruby-version: 3.0.0
14
- - name: Run the default task
14
+ - name: Install bundle
15
15
  run: |
16
16
  gem install bundler -v 2.2.3
17
17
  bundle install
18
- bundle exec rake
18
+ - name: Run Tests
19
+ run: |
20
+ rake
@@ -11,11 +11,14 @@
11
11
  </content>
12
12
  <orderEntry type="inheritedJdk" />
13
13
  <orderEntry type="sourceFolder" forTests="false" />
14
+ <orderEntry type="library" scope="PROVIDED" name="addressable (v2.7.0, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
14
15
  <orderEntry type="library" scope="PROVIDED" name="bundler (v2.2.3, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
15
16
  <orderEntry type="library" scope="PROVIDED" name="daemons (v1.3.1, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
16
17
  <orderEntry type="library" scope="PROVIDED" name="eventmachine (v1.2.7, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
17
18
  <orderEntry type="library" scope="PROVIDED" name="inifile (v3.0.0, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
19
+ <orderEntry type="library" scope="PROVIDED" name="launchy (v2.5.0, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
18
20
  <orderEntry type="library" scope="PROVIDED" name="minitest (v5.14.4, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
21
+ <orderEntry type="library" scope="PROVIDED" name="public_suffix (v4.0.6, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
19
22
  <orderEntry type="library" scope="PROVIDED" name="puppet-lint (v2.4.2, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
20
23
  <orderEntry type="library" scope="PROVIDED" name="rack (v2.2.3, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
21
24
  <orderEntry type="library" scope="PROVIDED" name="rake (v13.0.3, RVM: ruby-3.0.0 [global]) [gem]" level="application" />
@@ -25,16 +28,16 @@
25
28
  <option name="myRootTask">
26
29
  <RakeTaskImpl id="rake">
27
30
  <subtasks>
28
- <RakeTaskImpl description="Build puppet-sec-lint-0.1.0.gem into the pkg directory" fullCommand="build" id="build" />
31
+ <RakeTaskImpl description="Build puppet-sec-lint-0.1.2.gem into the pkg directory" fullCommand="build" id="build" />
29
32
  <RakeTaskImpl description="Remove any temporary products" fullCommand="clean" id="clean" />
30
33
  <RakeTaskImpl description="Remove any generated files" fullCommand="clobber" id="clobber" />
31
- <RakeTaskImpl description="Build and install puppet-sec-lint-0.1.0.gem into system gems" fullCommand="install" id="install" />
34
+ <RakeTaskImpl description="Build and install puppet-sec-lint-0.1.2.gem into system gems" fullCommand="install" id="install" />
32
35
  <RakeTaskImpl id="install">
33
36
  <subtasks>
34
- <RakeTaskImpl description="Build and install puppet-sec-lint-0.1.0.gem into system gems without network access" fullCommand="install:local" id="local" />
37
+ <RakeTaskImpl description="Build and install puppet-sec-lint-0.1.2.gem into system gems without network access" fullCommand="install:local" id="local" />
35
38
  </subtasks>
36
39
  </RakeTaskImpl>
37
- <RakeTaskImpl description="Create tag v0.1.0 and build and push puppet-sec-lint-0.1.0.gem to TODO: Set to 'http://mygemserver.com'" fullCommand="release[remote]" id="release[remote]" />
40
+ <RakeTaskImpl description="Create tag v0.1.2 and build and push puppet-sec-lint-0.1.2.gem to https://rubygems.org" fullCommand="release[remote]" id="release[remote]" />
38
41
  <RakeTaskImpl description="Run tests" fullCommand="test" id="test" />
39
42
  <RakeTaskImpl description="" fullCommand="default" id="default" />
40
43
  <RakeTaskImpl description="" fullCommand="release" id="release" />
data/Gemfile CHANGED
@@ -15,4 +15,6 @@ gem "rack"
15
15
 
16
16
  gem 'thin'
17
17
 
18
- gem 'inifile'
18
+ gem 'inifile'
19
+
20
+ gem 'launchy'
data/Gemfile.lock CHANGED
@@ -1,15 +1,20 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- puppet-sec-lint (0.1.1)
4
+ puppet-sec-lint (0.1.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
+ addressable (2.7.0)
10
+ public_suffix (>= 2.0.2, < 5.0)
9
11
  daemons (1.3.1)
10
12
  eventmachine (1.2.7)
11
13
  inifile (3.0.0)
14
+ launchy (2.5.0)
15
+ addressable (~> 2.7)
12
16
  minitest (5.14.4)
17
+ public_suffix (4.0.6)
13
18
  puppet-lint (2.4.2)
14
19
  rack (2.2.3)
15
20
  rake (13.0.3)
@@ -23,6 +28,7 @@ PLATFORMS
23
28
 
24
29
  DEPENDENCIES
25
30
  inifile
31
+ launchy
26
32
  minitest (~> 5.0)
27
33
  puppet-lint
28
34
  puppet-sec-lint!
data/README.md CHANGED
@@ -1,43 +1,60 @@
1
- # Puppet::Sec::Lint
1
+ # Puppet Security Linter
2
2
 
3
- Welcome to your new gem! In this directory, you'll find the files you need to be able to package up your Ruby library into a gem. Put your Ruby code in the file `lib/puppet/sec/lint`. To experiment with that code, run `bin/console` for an interactive prompt.
4
-
5
- TODO: Delete this and the text above, and describe your gem
3
+ Puppet linter focused on finding security vulnerabilities in code.
6
4
 
7
5
  ## Installation
8
6
 
9
- Add this line to your application's Gemfile:
7
+ Install the Ruby gem:
10
8
 
11
- ```ruby
12
- gem 'puppet-sec-lint'
9
+ ```bash
10
+ gem install puppet-sec-lint
13
11
  ```
12
+ ## Usage
14
13
 
15
- And then execute:
14
+ To analyze a puppet file, simply call the newly installed linter:
16
15
 
17
- $ bundle install
16
+ ```bash
17
+ puppet-sec-lint /folder/script.pp
18
+ ```
18
19
 
19
- Or install it yourself as:
20
+ If the linter is called with a folder, all puppet files inside are recursively analyzed:
20
21
 
21
- $ gem install puppet-sec-lint
22
+ ```bash
23
+ puppet-sec-lint /folder
24
+ ```
25
+
26
+ To open the configurations page to better tune the different rules applied, use the appropriate flag:
27
+
28
+ ```bash
29
+ puppet-sec-lint -c
30
+ ```
31
+ (this will open the configurations page on the computer default web browser)
32
+
33
+
34
+ ### Integration with Visual Studio Code
35
+
36
+ The linter can also work inside Visual Studio code. For it, please ensure that the 'puppet-sec-lint' gem was installed on your system.
37
+
38
+ Then, install the [puppet-sec-lint VSCode extension](https://marketplace.visualstudio.com/items?itemName=tiago1998.puppet-sec-lint-vscode).
39
+
40
+ Now, after that the extension is activate, it should be activated automatically when a Puppet file is opened, analyzing and displaying warnings in real time.
22
41
 
23
- ## Usage
24
42
 
25
- TODO: Write usage instructions here
26
43
 
27
44
  ## Development
28
45
 
29
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
46
+ <!--After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
30
47
 
31
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
48
+ To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).-->
32
49
 
33
50
  ## Contributing
34
51
 
35
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/puppet-sec-lint. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/puppet-sec-lint/blob/master/CODE_OF_CONDUCT.md).
52
+ <!-- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/puppet-sec-lint. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [code of conduct](https://github.com/[USERNAME]/puppet-sec-lint/blob/master/CODE_OF_CONDUCT.md). -->
36
53
 
37
54
  ## License
38
55
 
39
- The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
56
+ <!-- The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).-->
40
57
 
41
58
  ## Code of Conduct
42
59
 
43
- Everyone interacting in the Puppet::Sec::Lint project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/puppet-sec-lint/blob/master/CODE_OF_CONDUCT.md).
60
+ <!-- Everyone interacting in the Puppet::Sec::Lint project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the [code of conduct](https://github.com/[USERNAME]/puppet-sec-lint/blob/master/CODE_OF_CONDUCT.md).-->
data/_config.yml ADDED
@@ -0,0 +1 @@
1
+ theme: jekyll-theme-cayman
data/docs/404.html ADDED
@@ -0,0 +1,24 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ <style type="text/css" media="screen">
6
+ .container {
7
+ margin: 10px auto;
8
+ max-width: 600px;
9
+ text-align: center;
10
+ }
11
+ h1 {
12
+ margin: 30px 0;
13
+ font-size: 4em;
14
+ line-height: 1;
15
+ letter-spacing: -1px;
16
+ }
17
+ </style>
18
+
19
+ <div class="container">
20
+ <h1>404</h1>
21
+
22
+ <p><strong>Page not found :(</strong></p>
23
+ <p>The requested page could not be found.</p>
24
+ </div>
data/docs/Gemfile ADDED
@@ -0,0 +1,30 @@
1
+ source "https://rubygems.org"
2
+
3
+ # Hello! This is where you manage which Jekyll version is used to run.
4
+ # When you want to use a different version, change it below, save the
5
+ # file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
6
+ #
7
+ # bundle exec jekyll serve
8
+ #
9
+ # This will help ensure the proper Jekyll version is running.
10
+ # Happy Jekylling!
11
+ #gem "jekyll", "~> 3.8.3"
12
+
13
+ # This is the default theme for new Jekyll sites. You may change this to anything you like.
14
+ gem "jekyll-theme-hacker"
15
+
16
+ # If you want to use GitHub Pages, remove the "gem "jekyll"" above and
17
+ # uncomment the line below. To upgrade, run `bundle update github-pages`.
18
+ gem "github-pages", "~> 214", group: :jekyll_plugins
19
+
20
+ # If you have any plugins, put them here!
21
+ group :jekyll_plugins do
22
+ gem "jekyll-feed", "~> 0.6"
23
+ end
24
+
25
+ # Windows does not include zoneinfo files, so bundle the tzinfo-data gem
26
+ gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby]
27
+
28
+ # Performance-booster for watching directories on Windows
29
+ gem "wdm", "~> 0.1.0" if Gem.win_platform?
30
+
data/docs/Gemfile.lock ADDED
@@ -0,0 +1,275 @@
1
+ GEM
2
+ remote: https://rubygems.org/
3
+ specs:
4
+ activesupport (6.0.3.6)
5
+ concurrent-ruby (~> 1.0, >= 1.0.2)
6
+ i18n (>= 0.7, < 2)
7
+ minitest (~> 5.1)
8
+ tzinfo (~> 1.1)
9
+ zeitwerk (~> 2.2, >= 2.2.2)
10
+ addressable (2.7.0)
11
+ public_suffix (>= 2.0.2, < 5.0)
12
+ coffee-script (2.4.1)
13
+ coffee-script-source
14
+ execjs
15
+ coffee-script-source (1.11.1)
16
+ colorator (1.1.0)
17
+ commonmarker (0.17.13)
18
+ ruby-enum (~> 0.5)
19
+ concurrent-ruby (1.1.8)
20
+ dnsruby (1.61.5)
21
+ simpleidn (~> 0.1)
22
+ em-websocket (0.5.2)
23
+ eventmachine (>= 0.12.9)
24
+ http_parser.rb (~> 0.6.0)
25
+ ethon (0.14.0)
26
+ ffi (>= 1.15.0)
27
+ eventmachine (1.2.7)
28
+ execjs (2.7.0)
29
+ faraday (1.4.1)
30
+ faraday-excon (~> 1.1)
31
+ faraday-net_http (~> 1.0)
32
+ faraday-net_http_persistent (~> 1.1)
33
+ multipart-post (>= 1.2, < 3)
34
+ ruby2_keywords (>= 0.0.4)
35
+ faraday-excon (1.1.0)
36
+ faraday-net_http (1.0.1)
37
+ faraday-net_http_persistent (1.1.0)
38
+ ffi (1.15.0)
39
+ forwardable-extended (2.6.0)
40
+ gemoji (3.0.1)
41
+ github-pages (214)
42
+ github-pages-health-check (= 1.17.0)
43
+ jekyll (= 3.9.0)
44
+ jekyll-avatar (= 0.7.0)
45
+ jekyll-coffeescript (= 1.1.1)
46
+ jekyll-commonmark-ghpages (= 0.1.6)
47
+ jekyll-default-layout (= 0.1.4)
48
+ jekyll-feed (= 0.15.1)
49
+ jekyll-gist (= 1.5.0)
50
+ jekyll-github-metadata (= 2.13.0)
51
+ jekyll-mentions (= 1.6.0)
52
+ jekyll-optional-front-matter (= 0.3.2)
53
+ jekyll-paginate (= 1.1.0)
54
+ jekyll-readme-index (= 0.3.0)
55
+ jekyll-redirect-from (= 0.16.0)
56
+ jekyll-relative-links (= 0.6.1)
57
+ jekyll-remote-theme (= 0.4.3)
58
+ jekyll-sass-converter (= 1.5.2)
59
+ jekyll-seo-tag (= 2.7.1)
60
+ jekyll-sitemap (= 1.4.0)
61
+ jekyll-swiss (= 1.0.0)
62
+ jekyll-theme-architect (= 0.1.1)
63
+ jekyll-theme-cayman (= 0.1.1)
64
+ jekyll-theme-dinky (= 0.1.1)
65
+ jekyll-theme-hacker (= 0.1.2)
66
+ jekyll-theme-leap-day (= 0.1.1)
67
+ jekyll-theme-merlot (= 0.1.1)
68
+ jekyll-theme-midnight (= 0.1.1)
69
+ jekyll-theme-minimal (= 0.1.1)
70
+ jekyll-theme-modernist (= 0.1.1)
71
+ jekyll-theme-primer (= 0.5.4)
72
+ jekyll-theme-slate (= 0.1.1)
73
+ jekyll-theme-tactile (= 0.1.1)
74
+ jekyll-theme-time-machine (= 0.1.1)
75
+ jekyll-titles-from-headings (= 0.5.3)
76
+ jemoji (= 0.12.0)
77
+ kramdown (= 2.3.1)
78
+ kramdown-parser-gfm (= 1.1.0)
79
+ liquid (= 4.0.3)
80
+ mercenary (~> 0.3)
81
+ minima (= 2.5.1)
82
+ nokogiri (>= 1.10.4, < 2.0)
83
+ rouge (= 3.26.0)
84
+ terminal-table (~> 1.4)
85
+ github-pages-health-check (1.17.0)
86
+ addressable (~> 2.3)
87
+ dnsruby (~> 1.60)
88
+ octokit (~> 4.0)
89
+ public_suffix (>= 2.0.2, < 5.0)
90
+ typhoeus (~> 1.3)
91
+ html-pipeline (2.14.0)
92
+ activesupport (>= 2)
93
+ nokogiri (>= 1.4)
94
+ http_parser.rb (0.6.0)
95
+ i18n (0.9.5)
96
+ concurrent-ruby (~> 1.0)
97
+ jekyll (3.9.0)
98
+ addressable (~> 2.4)
99
+ colorator (~> 1.0)
100
+ em-websocket (~> 0.5)
101
+ i18n (~> 0.7)
102
+ jekyll-sass-converter (~> 1.0)
103
+ jekyll-watch (~> 2.0)
104
+ kramdown (>= 1.17, < 3)
105
+ liquid (~> 4.0)
106
+ mercenary (~> 0.3.3)
107
+ pathutil (~> 0.9)
108
+ rouge (>= 1.7, < 4)
109
+ safe_yaml (~> 1.0)
110
+ jekyll-avatar (0.7.0)
111
+ jekyll (>= 3.0, < 5.0)
112
+ jekyll-coffeescript (1.1.1)
113
+ coffee-script (~> 2.2)
114
+ coffee-script-source (~> 1.11.1)
115
+ jekyll-commonmark (1.3.1)
116
+ commonmarker (~> 0.14)
117
+ jekyll (>= 3.7, < 5.0)
118
+ jekyll-commonmark-ghpages (0.1.6)
119
+ commonmarker (~> 0.17.6)
120
+ jekyll-commonmark (~> 1.2)
121
+ rouge (>= 2.0, < 4.0)
122
+ jekyll-default-layout (0.1.4)
123
+ jekyll (~> 3.0)
124
+ jekyll-feed (0.15.1)
125
+ jekyll (>= 3.7, < 5.0)
126
+ jekyll-gist (1.5.0)
127
+ octokit (~> 4.2)
128
+ jekyll-github-metadata (2.13.0)
129
+ jekyll (>= 3.4, < 5.0)
130
+ octokit (~> 4.0, != 4.4.0)
131
+ jekyll-mentions (1.6.0)
132
+ html-pipeline (~> 2.3)
133
+ jekyll (>= 3.7, < 5.0)
134
+ jekyll-optional-front-matter (0.3.2)
135
+ jekyll (>= 3.0, < 5.0)
136
+ jekyll-paginate (1.1.0)
137
+ jekyll-readme-index (0.3.0)
138
+ jekyll (>= 3.0, < 5.0)
139
+ jekyll-redirect-from (0.16.0)
140
+ jekyll (>= 3.3, < 5.0)
141
+ jekyll-relative-links (0.6.1)
142
+ jekyll (>= 3.3, < 5.0)
143
+ jekyll-remote-theme (0.4.3)
144
+ addressable (~> 2.0)
145
+ jekyll (>= 3.5, < 5.0)
146
+ jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0)
147
+ rubyzip (>= 1.3.0, < 3.0)
148
+ jekyll-sass-converter (1.5.2)
149
+ sass (~> 3.4)
150
+ jekyll-seo-tag (2.7.1)
151
+ jekyll (>= 3.8, < 5.0)
152
+ jekyll-sitemap (1.4.0)
153
+ jekyll (>= 3.7, < 5.0)
154
+ jekyll-swiss (1.0.0)
155
+ jekyll-theme-architect (0.1.1)
156
+ jekyll (~> 3.5)
157
+ jekyll-seo-tag (~> 2.0)
158
+ jekyll-theme-cayman (0.1.1)
159
+ jekyll (~> 3.5)
160
+ jekyll-seo-tag (~> 2.0)
161
+ jekyll-theme-dinky (0.1.1)
162
+ jekyll (~> 3.5)
163
+ jekyll-seo-tag (~> 2.0)
164
+ jekyll-theme-hacker (0.1.2)
165
+ jekyll (> 3.5, < 5.0)
166
+ jekyll-seo-tag (~> 2.0)
167
+ jekyll-theme-leap-day (0.1.1)
168
+ jekyll (~> 3.5)
169
+ jekyll-seo-tag (~> 2.0)
170
+ jekyll-theme-merlot (0.1.1)
171
+ jekyll (~> 3.5)
172
+ jekyll-seo-tag (~> 2.0)
173
+ jekyll-theme-midnight (0.1.1)
174
+ jekyll (~> 3.5)
175
+ jekyll-seo-tag (~> 2.0)
176
+ jekyll-theme-minimal (0.1.1)
177
+ jekyll (~> 3.5)
178
+ jekyll-seo-tag (~> 2.0)
179
+ jekyll-theme-modernist (0.1.1)
180
+ jekyll (~> 3.5)
181
+ jekyll-seo-tag (~> 2.0)
182
+ jekyll-theme-primer (0.5.4)
183
+ jekyll (> 3.5, < 5.0)
184
+ jekyll-github-metadata (~> 2.9)
185
+ jekyll-seo-tag (~> 2.0)
186
+ jekyll-theme-slate (0.1.1)
187
+ jekyll (~> 3.5)
188
+ jekyll-seo-tag (~> 2.0)
189
+ jekyll-theme-tactile (0.1.1)
190
+ jekyll (~> 3.5)
191
+ jekyll-seo-tag (~> 2.0)
192
+ jekyll-theme-time-machine (0.1.1)
193
+ jekyll (~> 3.5)
194
+ jekyll-seo-tag (~> 2.0)
195
+ jekyll-titles-from-headings (0.5.3)
196
+ jekyll (>= 3.3, < 5.0)
197
+ jekyll-watch (2.2.1)
198
+ listen (~> 3.0)
199
+ jemoji (0.12.0)
200
+ gemoji (~> 3.0)
201
+ html-pipeline (~> 2.2)
202
+ jekyll (>= 3.0, < 5.0)
203
+ kramdown (2.3.1)
204
+ rexml
205
+ kramdown-parser-gfm (1.1.0)
206
+ kramdown (~> 2.0)
207
+ liquid (4.0.3)
208
+ listen (3.5.1)
209
+ rb-fsevent (~> 0.10, >= 0.10.3)
210
+ rb-inotify (~> 0.9, >= 0.9.10)
211
+ mercenary (0.3.6)
212
+ mini_portile2 (2.5.1)
213
+ minima (2.5.1)
214
+ jekyll (>= 3.5, < 5.0)
215
+ jekyll-feed (~> 0.9)
216
+ jekyll-seo-tag (~> 2.1)
217
+ minitest (5.14.4)
218
+ multipart-post (2.1.1)
219
+ nokogiri (1.11.3)
220
+ mini_portile2 (~> 2.5.0)
221
+ racc (~> 1.4)
222
+ nokogiri (1.11.3-x86_64-linux)
223
+ racc (~> 1.4)
224
+ octokit (4.21.0)
225
+ faraday (>= 0.9)
226
+ sawyer (~> 0.8.0, >= 0.5.3)
227
+ pathutil (0.16.2)
228
+ forwardable-extended (~> 2.6)
229
+ public_suffix (4.0.6)
230
+ racc (1.5.2)
231
+ rb-fsevent (0.10.4)
232
+ rb-inotify (0.10.1)
233
+ ffi (~> 1.0)
234
+ rexml (3.2.5)
235
+ rouge (3.26.0)
236
+ ruby-enum (0.9.0)
237
+ i18n
238
+ ruby2_keywords (0.0.4)
239
+ rubyzip (2.3.0)
240
+ safe_yaml (1.0.5)
241
+ sass (3.7.4)
242
+ sass-listen (~> 4.0.0)
243
+ sass-listen (4.0.0)
244
+ rb-fsevent (~> 0.9, >= 0.9.4)
245
+ rb-inotify (~> 0.9, >= 0.9.7)
246
+ sawyer (0.8.2)
247
+ addressable (>= 2.3.5)
248
+ faraday (> 0.8, < 2.0)
249
+ simpleidn (0.2.1)
250
+ unf (~> 0.1.4)
251
+ terminal-table (1.8.0)
252
+ unicode-display_width (~> 1.1, >= 1.1.1)
253
+ thread_safe (0.3.6)
254
+ typhoeus (1.4.0)
255
+ ethon (>= 0.9.0)
256
+ tzinfo (1.2.9)
257
+ thread_safe (~> 0.1)
258
+ unf (0.1.4)
259
+ unf_ext
260
+ unf_ext (0.0.7.7)
261
+ unicode-display_width (1.7.0)
262
+ zeitwerk (2.4.2)
263
+
264
+ PLATFORMS
265
+ ruby
266
+ x86_64-linux
267
+
268
+ DEPENDENCIES
269
+ github-pages (~> 214)
270
+ jekyll-feed (~> 0.6)
271
+ jekyll-theme-hacker
272
+ tzinfo-data
273
+
274
+ BUNDLED WITH
275
+ 2.2.3