Compare commits

..

885 Commits

Author SHA1 Message Date
Parker Moore
35848b9c06 Handle Liquid v4 'empty' and 'blank' values explicitly
Prevents a lookup error since Liquid::Expression::MethodLiteral doesn't exist in v5
2022-04-11 13:22:14 -07:00
Parker Moore
e2850341d2 Include MethodLiteral for Liquid v4 support 2022-04-11 13:11:05 -07:00
Parker Moore
7a3dd9a0e3 Gemfile: filter empty LIQUID_VERSION vars 2022-04-11 12:26:06 -07:00
Parker Moore
6a32be65e9 compare_property_vs_target: match "" for empty & blank
The MethodLiteral was a leaky abstraction. We needed to match against the to_liquid value, which is "" in both cases.
2022-04-11 12:25:06 -07:00
Parker Moore
03ac1d727b Add Liquid v4 to CI 2022-04-11 12:23:23 -07:00
Parker Moore
f8540633c3 Upgrade from Liquid 4 to Liquid 5 2022-04-10 11:54:27 -07:00
jekyllbot
0d0fd3f41b Update history to reflect merge of #8986 [ci skip] 2022-04-07 03:53:40 -07:00
dependabot[bot]
23a2451459 Bump actions/checkout from 2 to 3 (#8986)
Merge pull request 8986
2022-04-07 03:53:38 -07:00
jekyllbot
d1ecbcbff4 Update history to reflect merge of #8955 [ci skip] 2022-04-07 01:56:44 -07:00
Ashwin Maroli
e052d2090c Stop testing with Rubies older than 2.7 on non-Windows (#8955)
Merge pull request 8955
2022-04-07 01:56:42 -07:00
jekyllbot
354110d393 Update history to reflect merge of #9015 [ci skip] 2022-04-03 09:58:58 -07:00
Ashwin Maroli
9c7972dc38 Check symlink outside site_source without Pathutil (#9015)
Merge pull request 9015
2022-04-03 09:58:57 -07:00
jekyllbot
19868d5602 Update history to reflect merge of #9017 [ci skip] 2022-04-02 08:25:56 -07:00
Daryl Hepting
1d5bae583b Update permalinks.md (#9017)
Merge pull request 9017
2022-04-02 08:25:55 -07:00
jekyllbot
e7cc390d2b Update history to reflect merge of #8853 [ci skip] 2022-04-02 08:25:17 -07:00
JT
6f31b362eb Improve document about Github Actions section (#8853)
Merge pull request 8853
2022-04-02 08:25:16 -07:00
jekyllbot
e7ce73d593 Update history to reflect merge of #8858 [ci skip] 2022-04-01 06:42:03 -07:00
MichaelCordingley
66e337984e Allow Configurable Converters on CSV (#8858)
Merge pull request 8858
2022-04-01 06:42:01 -07:00
jekyllbot
d4e10d5954 Update history to reflect merge of #8363 [ci skip] 2022-04-01 06:35:26 -07:00
lm
2a0272cc38 Only enable BOM encoding option on UTF encodings (#8363)
Merge pull request 8363
2022-04-01 06:35:24 -07:00
jekyllbot
3c46d844cf Update history to reflect merge of #8761 [ci skip] 2022-04-01 06:24:57 -07:00
JJ
776748e13f Expose basename from document.rb as name to Liquid templates (#8761)
Merge pull request 8761
2022-04-01 06:24:55 -07:00
jekyllbot
310459370a Update history to reflect merge of #8993 [ci skip] 2022-03-28 20:46:22 -07:00
Moncef Belyamani
65158c2368 Simplify macOS installation docs (#8993)
Merge pull request 8993
2022-03-28 20:46:20 -07:00
jekyllbot
e695c1e24b Update history to reflect merge of #9013 [ci skip] 2022-03-27 13:28:30 -07:00
Parker Moore
c4387f69fc Add Jekyll 3.9.2 release post to 'master' branch (#9013)
Merge pull request 9013
2022-03-27 13:28:29 -07:00
jekyllbot
75df28c27a Update history to reflect merge of #8961 [ci skip] 2022-03-24 09:06:00 -07:00
Ashwin Maroli
9d86974e1f Expose collection static files via site.static_files (#8961)
Merge pull request 8961
2022-03-24 09:05:58 -07:00
jekyllbot
79869e7225 Update history to reflect merge of #9007 [ci skip] 2022-03-24 09:03:55 -07:00
lucafrance
b98db02f36 Remove Aerobatic (#9007)
Merge pull request 9007
2022-03-24 09:03:54 -07:00
jekyllbot
4194f62dd7 Update history to reflect merge of #9005 [ci skip] 2022-03-23 06:39:49 -07:00
jaybe@jekyll
1096648473 Update README.markdown re IRC Pointer (#9005)
Merge pull request 9005
2022-03-23 06:39:47 -07:00
jekyllbot
dd0c5fc3bc Update history to reflect merge of #8337 [ci skip] 2022-03-21 08:00:43 -07:00
Ashwin Maroli
94dc98cb6b Trigger livereload in sites without pages (#8337)
Merge pull request 8337
2022-03-21 08:00:41 -07:00
jekyllbot
e6d3d90b52 Update history to reflect merge of #8996 [ci skip] 2022-03-17 12:25:32 -07:00
Emily Grace Seville
6984a64932 Add quiet/verbose options (#8996)
Merge pull request 8996
2022-03-17 12:25:31 -07:00
jekyllbot
62ef1580ec Update history to reflect merge of #8997 [ci skip] 2022-03-14 04:02:43 -07:00
Nicholas Paxford
88cbd7a783 Update manual.md (#8997)
Merge pull request 8997
2022-03-14 04:02:41 -07:00
jekyllbot
de7da5f6c3 Update history to reflect merge of #8992 [ci skip] 2022-03-11 02:00:28 -08:00
Emily Grace Seville
f48d500586 Enhace option's case for Jekyll configuration (#8992)
Merge pull request 8992
2022-03-11 02:00:27 -08:00
jekyllbot
62d9c8c30c Update history to reflect merge of #8991 [ci skip] 2022-03-09 09:06:00 -08:00
Gary
06abe7fd0c Update document by fix yaml syntax error (#8991)
Merge pull request 8991
2022-03-09 09:05:58 -08:00
Ashwin Maroli
380c3fe815 Bump RuboCop to v1.26.x 2022-03-09 22:33:28 +05:30
jekyllbot
b7056373af Update history to reflect merge of #8984 [ci skip] 2022-03-04 08:06:29 -08:00
Ashwin Maroli
36cbca0ece Document releasing off *-stable branches (#8984)
Merge pull request 8984
2022-03-04 08:06:27 -08:00
Ashwin Maroli
0faa2a4c12 Release 💎 v4.2.2 2022-03-03 16:31:14 +05:30
jekyllbot
3d5bed24e2 Update history to reflect merge of #8982 [ci skip] 2022-03-03 02:51:16 -08:00
Ashwin Maroli
493ed1571e Release post for v4.2.2 (#8982)
Merge pull request 8982
2022-03-03 02:51:14 -08:00
jekyllbot
e27088555d Update history to reflect merge of #8965 [ci skip] 2022-02-25 13:12:25 -08:00
Ashwin Maroli
034d3e9f4b Fix response header for content served via jekyll serve (#8965)
Merge pull request 8965
2022-02-25 13:12:23 -08:00
jekyllbot
86907653ca Update history to reflect merge of #8960 [ci skip] 2022-02-09 19:29:03 -08:00
Ashwin Maroli
88044a2ece Fix deprecation message for missing doc method (#8960)
Merge pull request 8960
2022-02-09 19:29:01 -08:00
jekyllbot
d46bef774a Update history to reflect merge of #8946 [ci skip] 2022-01-31 11:19:07 -05:00
Tyler887
c644d9a568 Hakiri sunsetting down (#8946)
Merge pull request 8946
2022-01-31 11:19:04 -05:00
jekyllbot
92c6dc6578 Update history to reflect merge of #8951 [ci skip] 2022-01-31 10:21:45 -05:00
Robert Martin
285f79306b Update bug_report.yml (#8951)
Merge pull request 8951
2022-01-31 10:21:44 -05:00
Ashwin Maroli
a3290166dc Improve note on use of actions/cache [skip ci] 2022-01-28 15:06:02 +05:30
jekyllbot
5dcfc22cba Update history to reflect merge of #8948 [ci skip] 2022-01-28 04:22:01 -05:00
Attaphong Rattanaveerachanon
e133183f6f Update document for github-actions workflow by adding cache step. (#8948)
Merge pull request 8948
2022-01-28 04:22:00 -05:00
jekyllbot
1306cd7be9 Update history to reflect merge of #8940 [ci skip] 2022-01-20 21:50:50 -05:00
Parker Moore
07cd645ce6 Run vendor-mimes to update mime.types (#8940)
Merge pull request 8940
2022-01-20 21:50:49 -05:00
Ashwin Maroli
4ec6902cdb Bump RuboCop to v1.25.x
Closes #8941
2022-01-19 15:39:09 +05:30
jekyllbot
9fac4c6ec7 Update history to reflect merge of #8934 [ci skip] 2022-01-14 10:30:06 -05:00
Korbs
8578d735bc Fix link for "CloudSh" (#8934)
Merge pull request 8934
2022-01-14 10:30:04 -05:00
jekyllbot
e3cbe584f2 Update history to reflect merge of #8928 [ci skip] 2022-01-08 10:42:33 -05:00
Ashwin Maroli
d4a4d951c5 Improve maintainers guide on releasing a new version (#8928)
Merge pull request 8928
2022-01-08 10:42:31 -05:00
Ashwin Maroli
7b7a286b4a Adjust line-length in doc on releasing versions [skip ci] 2022-01-07 11:26:29 +05:30
jekyllbot
ba07bb3648 Update history to reflect merge of #8921 [ci skip] 2022-01-06 10:16:02 -05:00
Ashwin Maroli
b0a68d56fc Rewrite documentation on installing plugins (#8921)
Merge pull request 8921
2022-01-06 10:16:00 -05:00
jekyllbot
1008f1b4e3 Update history to reflect merge of #8925 [ci skip] 2022-01-03 15:49:25 -05:00
Laurence Andrews
77282e45fd Update resources.md (#8925)
Merge pull request 8925
2022-01-03 15:49:23 -05:00
jekyllbot
df765950ba Update history to reflect merge of #8919 [ci skip] 2021-12-30 17:30:24 -05:00
Toshimaru
0107747606 Update REAMDE generated by jekyll new-theme (#8919)
Merge pull request 8919
2021-12-30 17:30:22 -05:00
jekyllbot
c34fa6181e Update history to reflect merge of #8918 [ci skip] 2021-12-30 11:02:00 -05:00
Ashwin Maroli
a7a7b7a815 Lock gem psych to v3.x (#8918)
Merge pull request 8918
2021-12-30 11:01:58 -05:00
Ashwin Maroli
d0eb07ba29 Add gem "matrix" to Gemfile
gem "matrix" is no longer a default gem from Ruby 3.1 onward.
Adding the gem to Gemfile is necessary until `classifier-reborn` adds it as a dependency.

Avoiding RUBY_VERSION constraints to ensure the gem is used on older Ruby versions in CI matrix
2021-12-29 19:02:06 +05:30
Ashwin Maroli
07e510f964 Add Ruby 3.1 to CI Matrix 2021-12-29 18:02:53 +05:30
jekyllbot
0967c71097 Update history to reflect merge of #8915 [ci skip] 2021-12-27 13:06:35 -05:00
Rishi Raj Jain
5b0ea4b220 docs: add Layer0 deployment guide (#8915)
Merge pull request 8915
2021-12-27 13:06:34 -05:00
Ashwin Maroli
66b399c6d3 Lock rdoc to v6.3.x to avoid psych-4.x
Psych 4.x appears to mess with our Cucumber-based tests with:

```
Tried to load unspecified class: Date (Psych::DisallowedClass)
```
2021-12-27 23:27:01 +05:30
Ashwin Maroli
659683dbb2 Bump RuboCop to v1.24.x 2021-12-23 17:27:06 +05:30
jekyllbot
1ac5386820 Update history to reflect merge of #8908 [ci skip] 2021-12-17 10:14:20 -05:00
Ashwin Maroli
e6928dab2e Manage repository meta documents consistently (#8908)
Merge pull request 8908
2021-12-17 10:14:19 -05:00
jekyllbot
30f795f5a7 Update history to reflect merge of #8823 [ci skip] 2021-12-16 09:17:38 -05:00
Parker Moore
5aeb2bfe4e Add Security Policy document (#8823)
Merge pull request 8823
2021-12-16 09:17:36 -05:00
jekyllbot
2abf1787ca Update history to reflect merge of #8907 [ci skip] 2021-12-16 08:54:56 -05:00
Maik Riechert
23af360ef0 Remove text on GITHUB_TOKEN which is now built-in (#8907)
Merge pull request 8907
2021-12-16 08:54:55 -05:00
Ashwin Maroli
23284eb6db Remove history entry for reverted unreleased change [skip ci] 2021-12-16 17:51:45 +05:30
jekyllbot
fafcc2ce4e Update history to reflect merge of #8880 [ci skip] 2021-12-08 06:35:44 -05:00
Phil Ross
9c9cf3e82b Support both tzinfo v1 and v2 alongwith non-half hour offsets. (#8880)
Merge pull request 8880
2021-12-08 06:35:42 -05:00
jekyllbot
956701f96c Update history to reflect merge of #8900 [ci skip] 2021-12-08 06:30:31 -05:00
Kantanat-Stamp
7fdae26c25 Linting README,markdown (#8900)
Merge pull request 8900
2021-12-08 06:30:29 -05:00
Ashwin Maroli
9fa340af65 Remove lock on Bundler version in CI
Bundler 2.2.33 has been released
2021-12-08 16:22:42 +05:30
Ashwin Maroli
1434644dcc Lock Bundler to v2.2.31 and bump JRuby version
- Bundler 2.2.32 causes our CI to fail prematurely, affecting checks of pull requests.
- JRuby 9.2.20.1 is a recommended security fix.
2021-12-02 16:36:28 +05:30
Ashwin Maroli
a4a7e70fa1 Allow creating issues from a blank slate [skip ci] 2021-11-22 22:45:09 +05:30
jekyllbot
b8947f95b3 Update history to reflect merge of #8815 [ci skip] 2021-11-22 08:01:35 -05:00
Michael Gerzabek
a8ccdd6d2f Propagate _data folder from theme (#8815)
Merge pull request 8815
2021-11-22 08:01:33 -05:00
Ashwin Maroli
9a3122020e Upgrade Bug-report template to beta form template 2021-11-22 15:22:27 +05:30
Ashwin Maroli
bb49d93713 Stop assigning Frank to docs-related issues 2021-11-22 10:52:17 +05:30
Ashwin Maroli
f51ccbfad3 Bump RuboCop to v1.23.x 2021-11-17 19:52:51 +05:30
jekyllbot
44926fd14d Update history to reflect merge of #8884 [ci skip] 2021-11-17 04:48:05 -05:00
Phil Ross
3a688fe55a Fix random test failures in TestExcerpt #to_liquid. (#8884)
Merge pull request 8884
2021-11-17 04:48:03 -05:00
jekyllbot
d81cc40c9f Update history to reflect merge of #8877 [ci skip] 2021-11-12 11:16:14 -05:00
Ashwin Maroli
369c345107 Improve readability of CI logs (#8877)
Merge pull request 8877
2021-11-12 11:16:13 -05:00
jekyllbot
c90d083ef5 Update history to reflect merge of #8830 [ci skip] 2021-11-05 06:29:08 -04:00
Ashwin Maroli
db3f034f9e Add a workflow to build gems consistently (#8830)
Merge pull request 8830
2021-11-05 06:29:07 -04:00
Ashwin Maroli
10a73596d9 Add lang identifiers to shell based codeblocks 2021-10-28 12:29:31 +05:30
jekyllbot
7c619a7e2f Update history to reflect merge of #8857 [ci skip] 2021-10-28 01:04:29 -04:00
Ashwin Maroli
47b0abe1f0 Slightly update lang sh code-block styling (#8857)
Merge pull request 8857
2021-10-28 01:04:27 -04:00
jekyllbot
75b27ec328 Update history to reflect merge of #8852 [ci skip] 2021-10-23 14:15:33 -04:00
Meet Gor
868d9af3cb Added docs for running locally (#8852)
Merge pull request 8852
2021-10-23 14:15:32 -04:00
Ashwin Maroli
26a949df85 Add manual workflow to run benchmarks [skip ci] 2021-10-17 16:58:00 +05:30
Ashwin Maroli
e1838db156 Update spell-check workflow configuration 2021-10-10 12:55:55 +05:30
Ashwin Maroli
8af22d0852 Regenerate RuboCop TODO file 2021-10-06 17:58:22 +05:30
jekyllbot
d8b38f78b6 Update history to reflect merge of #8835 [ci skip] 2021-10-01 15:08:22 -04:00
Meg Gutshall
45fdf35cc3 Fix typo (#8835)
Merge pull request 8835
2021-10-01 15:08:21 -04:00
jekyllbot
ec8212ad74 Update history to reflect merge of #8831 [ci skip] 2021-09-30 11:22:54 -04:00
Matt Rogers
cfcc0c524e Relax Rubocop Dependency (#8831)
Merge pull request 8831
2021-09-30 11:22:51 -04:00
jekyllbot
8d324d9241 Update history to reflect merge of #8829 [ci skip] 2021-09-30 10:37:14 -04:00
Ricardo N Feliciano
32e97a7881 Update CircleCI example (#8829)
Merge pull request 8829
2021-09-30 10:37:13 -04:00
Ashwin Maroli
5687bf97d8 Release 💎 4.2.1 2021-09-27 16:52:08 +05:30
jekyllbot
0db36cec4b Update history to reflect merge of #8818 [ci skip] 2021-09-27 07:06:32 -04:00
Ashwin Maroli
5cc308825e Release post for v4.2.1 (#8818)
Merge pull request 8818
2021-09-27 07:06:30 -04:00
jekyllbot
1968e998a5 Update history to reflect merge of #8821 [ci skip] 2021-09-23 14:39:15 -04:00
Matt Rogers
a05b0d94cd Remove the warning about auto-regeneration on Windows (#8821)
Merge pull request 8821
2021-09-23 14:39:12 -04:00
jekyllbot
86d6b04a97 Update history to reflect merge of #8813 [ci skip] 2021-09-16 12:51:50 -04:00
Matt Rogers
70a6702a6a Move Frank to Emeritus Core Team Members (#8813)
Merge pull request 8813
2021-09-16 12:51:48 -04:00
jekyllbot
925442d91f Update history to reflect merge of #8812 [ci skip] 2021-09-16 12:48:55 -04:00
Matt Rogers
b27fb044e7 Remove AWS Amplify from the showcase (#8812)
Merge pull request 8812
2021-09-16 12:48:53 -04:00
jekyllbot
0ada71db18 Update history to reflect merge of #8798 [ci skip] 2021-09-16 12:24:44 -04:00
Ashwin Maroli
891a78685a Always hide cache-dir contents from Git (#8798)
Merge pull request 8798
2021-09-16 12:24:42 -04:00
jekyllbot
f0314eec56 Update history to reflect merge of #8797 [ci skip] 2021-09-16 11:19:56 -04:00
SaintMalik
00289460df Update feature_request.md (#8797)
Merge pull request 8797
2021-09-16 11:19:55 -04:00
jekyllbot
91c0e46a7b Update history to reflect merge of #8811 [ci skip] 2021-09-16 11:19:20 -04:00
Matt Rogers
9b2126a365 Prefer Libera. Remove Freenode (#8811)
Merge pull request 8811
2021-09-16 11:19:18 -04:00
jekyllbot
7fbd29496e Update history to reflect merge of #8803 [ci skip] 2021-09-16 11:09:23 -04:00
Atlas Cove
fe563b15bd Update index.html (#8803)
Merge pull request 8803
2021-09-16 11:09:22 -04:00
jekyllbot
60cb817c16 Update history to reflect merge of #8620 [ci skip] 2021-09-15 09:53:42 -04:00
Ben Keith
faef38b5db Revert #7253: "Don't reset site.url to localhost:4000 by default" (#8620)
Merge pull request 8620
2021-09-15 09:53:40 -04:00
jekyllbot
c238346ca2 Update history to reflect merge of #8807 [ci skip] 2021-09-14 15:32:00 -04:00
Matt Rogers
f831286557 Goodbye Frank. We'll miss you. 💔 (#8807)
Merge pull request 8807
2021-09-14 15:31:58 -04:00
Ashwin Maroli
1aea1580c1 Utilize previously allocated local variable
Follow-up to aa9a416
2021-08-30 14:33:21 +05:30
jekyllbot
e482574b84 Update history to reflect merge of #8777 [ci skip] 2021-08-29 07:15:13 -04:00
Qasim Qureshi
84c8252f11 Update troubleshooting.md (#8777)
Merge pull request 8777
2021-08-29 07:15:12 -04:00
jekyllbot
0b12fd26ae Update history to reflect merge of #8786 [ci skip] 2021-08-29 03:22:43 -04:00
Ashwin Maroli
eca450454f Fix regression in Convertible module from v4.2.0 (#8786)
Merge pull request 8786
2021-08-29 03:22:42 -04:00
Nahin Khan
493b800edb Remove trailing whitespace in _config.yml template (#8774) 2021-08-20 11:18:32 +05:30
Ashwin Maroli
2568aea6ea Fix RuboCop offenses in tests 2021-08-18 15:21:08 +05:30
jekyllbot
dc5e39fad9 Update history to reflect merge of #8623 [ci skip] 2021-08-09 08:31:11 -04:00
Sampath Sukesh Ravolaparthi
ddbc8263de Tags:Highlight: Decomposed HTMLLegacy formatter (#8623)
Merge pull request 8623
2021-08-09 08:31:09 -04:00
jekyllbot
ca2f106c8f Update history to reflect merge of #8756 [ci skip] 2021-08-05 11:10:03 -04:00
Ashwin Maroli
aa9a4164d0 Respect collections_dir config within include tag (#8756)
Merge pull request 8756
2021-08-05 11:10:01 -04:00
jekyllbot
55b6972ea7 Update history to reflect merge of #8693 [ci skip] 2021-07-23 10:47:06 -04:00
Jeff Wilcox
9c7015138b Fixing URL in MacOS install for rbenv-doctor (#8693)
Merge pull request 8693
2021-07-23 10:47:05 -04:00
jekyllbot
9587a73c53 Update history to reflect merge of #8293 [ci skip] 2021-07-23 10:45:35 -04:00
Alex Malaszkiewicz
94fcfdd787 Enable Rubocop accessor grouping, fix existing offenses (#8293)
Merge pull request 8293
2021-07-23 10:45:34 -04:00
jekyllbot
fcd56a5680 Update history to reflect merge of #8718 [ci skip] 2021-07-23 10:42:17 -04:00
Aram Akhavan
9bb98edb29 use location.protocol to inject the livereload script instead of forcing http (#8718)
Merge pull request 8718
2021-07-23 10:42:15 -04:00
jekyllbot
0ce9a7c179 Update history to reflect merge of #8741 [ci skip] 2021-07-22 13:58:42 -04:00
Andrew Davis
3f46f02108 Update rubocop from 1.12 to 1.18 and min ruby from 2.4 to 2.5 (#8741)
Merge pull request 8741
2021-07-22 13:58:40 -04:00
jekyllbot
beca094841 Update history to reflect merge of #8684 [ci skip] 2021-07-22 13:57:52 -04:00
Mike Kasberg
0eb9239151 Improve GitHub Flavored Markdown Docs (#8684)
Merge pull request 8684
2021-07-22 13:57:51 -04:00
jekyllbot
5a441c24e2 Update history to reflect merge of #8740 [ci skip] 2021-07-22 13:53:16 -04:00
dependabot[bot]
b31f933cd1 Bump check-spelling/check-spelling from 0.0.18 to 0.0.19 (#8740)
Merge pull request 8740
2021-07-22 13:53:15 -04:00
jekyllbot
a0ed9550cd Update history to reflect merge of #8706 [ci skip] 2021-07-22 13:52:25 -04:00
jaybe@jekyll
37612632c5 IRC networks - Libera, Freenode (#8706)
Merge pull request 8706
2021-07-22 13:52:24 -04:00
jekyllbot
8926ae1aac Update history to reflect merge of #8701 [ci skip] 2021-07-22 13:49:56 -04:00
Parikshit87
8a6dd9e494 Update windows.md (#8701)
Merge pull request 8701
2021-07-22 13:49:55 -04:00
jekyllbot
915248ff18 Update history to reflect merge of #8727 [ci skip] 2021-07-22 13:46:13 -04:00
Miguel Brandão
bcaf878b65 Add 'webrick' warning note to "Quickstart" Docs (#8727)
Merge pull request 8727
2021-07-22 13:46:12 -04:00
jekyllbot
ea535a9ab7 Update history to reflect merge of #8425 [ci skip] 2021-07-22 13:43:49 -04:00
fauno
0dee66260f Optimize Jekyll::Utils.parse_date (#8425)
Merge pull request 8425
2021-07-22 13:43:47 -04:00
jekyllbot
76517175e7 Update history to reflect merge of #8681 [ci skip] 2021-05-18 03:34:15 -04:00
Mike Kasberg
b5e910acfb Improve the "Markdown Options" Docs (#8681)
Merge pull request 8681
2021-05-18 03:34:13 -04:00
jekyllbot
6ff7d680e0 Update history to reflect merge of #8680 [ci skip] 2021-05-18 02:31:36 -04:00
Frank Taillandier
42dacc1091 fix(security): CVE-2021-28834 (#8680)
Merge pull request 8680
2021-05-18 02:31:34 -04:00
Frank Taillandier
e5dd889750 Update expect.txt 2021-05-17 23:55:11 +02:00
Frank Taillandier
889fe4130b Update expect.txt 2021-05-16 22:13:21 +02:00
Frank Taillandier
7605b0a474 Update History.markdown 2021-05-16 22:12:49 +02:00
jekyllbot
e724b587e3 Update history to reflect merge of #8478 [ci skip] 2021-05-16 16:10:46 -04:00
Edson Jiménez
1ffda285d6 Add step to set SDKROOT (#8478)
Merge pull request 8478
2021-05-16 16:10:45 -04:00
jekyllbot
f267dafc0c Update history to reflect merge of #8471 [ci skip] 2021-05-16 16:09:24 -04:00
nusu
49a00ebbec Add formcarry to forms section (#8471)
Merge pull request 8471
2021-05-16 16:09:23 -04:00
jekyllbot
30b397c046 Update history to reflect merge of #8585 [ci skip] 2021-05-16 16:06:06 -04:00
Liam Bigelow
93ef9389ba Load Jekyll plugins from BUNDLE_GEMFILE location (#8585)
Merge pull request 8585
2021-05-16 16:06:05 -04:00
jekyllbot
6a6d735db2 Update history to reflect merge of #8676 [ci skip] 2021-05-16 16:00:55 -04:00
Kelvin M. Klann
7e350ac031 Revert "style: run rubocop -a" (#8676)
Merge pull request 8676
2021-05-16 16:00:53 -04:00
jekyllbot
0274943bcd Update history to reflect merge of #8677 [ci skip] 2021-05-16 15:58:45 -04:00
Josh Soref
92633c6996 Update expect to cover docs/_posts (#8677)
Merge pull request 8677
2021-05-16 15:58:44 -04:00
jekyllbot
02b12e5dfc Update history to reflect merge of #8675 [ci skip] 2021-05-16 08:14:48 -04:00
Josh Soref
bdad4f2b09 Spell check action for markdown documentation (#8675)
Merge pull request 8675
2021-05-16 08:14:47 -04:00
jekyllbot
f027b6e547 Update history to reflect merge of #7834 [ci skip] 2021-05-16 04:50:10 -04:00
Daniel Haim
e23b85f837 Improvements to CSS (#7834)
Merge pull request 7834
2021-05-16 04:50:09 -04:00
jekyllbot
8a0f7f2908 Update history to reflect merge of #8614 [ci skip] 2021-05-16 04:43:24 -04:00
Sesh Sadasivam
56ef270e27 Use official Ruby setup GH action (#8614)
Merge pull request 8614
2021-05-16 04:43:23 -04:00
Alaz Tetik
43d0ef3fa0 Correct a typo for word (#8674) 2021-05-16 10:41:41 +02:00
jekyllbot
fa0e0eba3e Update history to reflect merge of #8587 [ci skip] 2021-05-14 16:39:14 -04:00
Sesh Sadasivam
9ed85a028a Add documentation for Sass configuration options (#8587)
Merge pull request 8587
2021-05-14 16:39:12 -04:00
jekyllbot
2a4d9dfedf Update history to reflect merge of #8652 [ci skip] 2021-05-14 16:33:43 -04:00
alena-ko
3259064723 Update third-party.md (#8652)
Merge pull request 8652
2021-05-14 16:33:41 -04:00
jekyllbot
f32b8bedff Update history to reflect merge of #8624 [ci skip] 2021-05-14 16:31:08 -04:00
Ben Keith
579d0d9ffc Specify default port and host for serve commands (#8624)
Merge pull request 8624
2021-05-14 16:31:07 -04:00
jekyllbot
e91e9a3576 Update history to reflect merge of #8656 [ci skip] 2021-05-14 16:30:18 -04:00
Shyam Mohan K
d5a46fcd31 razorops cicd added (#8656)
Merge pull request 8656
2021-05-14 16:30:15 -04:00
jekyllbot
e2b1bc678e Update history to reflect merge of #8654 [ci skip] 2021-05-14 15:54:31 -04:00
Kelvin M. Klann
5d35cf217b style: run rubocop -a (#8654)
Merge pull request 8654
2021-05-14 15:54:30 -04:00
Frank Taillandier
827bfcff58 chore(styles): align hash 2021-05-14 21:52:16 +02:00
jekyllbot
b9b4d85fb1 Update history to reflect merge of #8646 [ci skip] 2021-05-14 15:37:45 -04:00
Kelvin M. Klann
d85c89e8b4 docs: clarify where .jekyll-metadata comes from (#8646)
Merge pull request 8646
2021-05-14 15:37:43 -04:00
Jonathan Darrer
813da60a53 Action configuration to use "main" as default repo (#8578)
Updates the action configuration to use "main" as default repository name

The default GitHub branch when creating a repository is now "main" and no longer "master", but included a comment for those with older repositories.

https://github.com/github/renaming
https://www.zdnet.com/article/github-to-replace-master-with-main-starting-next-month/

Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2021-05-14 21:27:47 +02:00
jekyllbot
f9e14a5704 Update history to reflect merge of #8648 [ci skip] 2021-05-14 15:24:57 -04:00
Kelvin M. Klann
2e65d6d3a9 docs: add overview of .jekyll-cache dir (#8648)
Merge pull request 8648
2021-05-14 15:24:55 -04:00
jekyllbot
60e01d3671 Update history to reflect merge of #8651 [ci skip] 2021-05-14 15:19:19 -04:00
Kelvin M. Klann
15ad8f4bdd fix: pin rubocop to 1.12 due to error with ruby 2.4 (#8651)
Merge pull request 8651
2021-05-14 15:19:17 -04:00
Josh Soref
4fbbefeb7e Spelling (#8661)
* spelling: always

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: apostrophe

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: articles

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: bajillion

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: bandwidth

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: compatibilize

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: congratulations

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: consistent

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: containing

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: correspondents

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: debuggability

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: definitions

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: engine

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: expectations

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: framework

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: gallery

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: github

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: gitlab

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: hesitant

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: hesitate

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: highlighter

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: installation

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: internal

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: kramdown

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: link

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: markdown

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: markdownify

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: metadata

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: multiple

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: object

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: overridden

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: paths

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: positions

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: powershell

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: proceeding

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: pygments settings

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: referencing

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: retrieve

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: separating

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: several

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: specific

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: suppress

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: upgrading

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: variable

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: variables

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: whitespace

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: with

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
2021-05-14 21:18:13 +02:00
Vinhas Kevin
3fea30c862 Document JEKYLL_LOG_LEVEL and JEKYLL_NO_BUNDLER_REQUIRE (#8553)
While adding `JEKYLL_LOG_LEVEL`, I also found out that `JEKYLL_NO_BUNDLER_REQUIRE` wasn't mentioned in the docs.

I am not sure it belong to this exact place in the doc, so I followed the only env variables example I could find in the doc (`JEKYLL_ENV`)
This diff closes #8480
2021-05-14 21:16:57 +02:00
shorty
da68570406 Update filters.md (#8655)
Provide people an on-ramp to creating custom Liquid template filters in the docs.
2021-05-14 21:12:12 +02:00
Nick Coish
8940ad65b1 Fix typo in 02-liquid.md (#8637) 2021-05-14 21:11:29 +02:00
Chris Keefe
47a17e2cab ruby-devel required for OpenSuse (#8640)
Initially raised in https://github.com/jekyll/jekyll/issues/8118, this patches the installation requirements
2021-05-14 21:10:20 +02:00
Jesse van der Pluijm
c523f041fc Replace references to 'master' branch with 'main' (#8657)
As the default branch name on GitHub has been `main` for a while now: https://github.blog/changelog/2020-10-01-the-default-branch-for-newly-created-repositories-is-now-main/
2021-05-14 21:05:40 +02:00
Daniel Kehoe
62ba3c03b7 Update macos.md (#8663)
Explain the choice between installation with Homebrew and rbenv. Mention the other Ruby version managers (asdf, chruby, rvm). Provide a link to a guide that gives more detail and explains the benefits and drawbacks of installation with Homebrew and various version managers. (I'm proposing this addition because there have been frequent questions on Reddit /r/ruby and Stack Overflow by users who installed Ruby for Jekyll with Homebrew and later needed to switch Ruby versions).
2021-05-14 20:58:42 +02:00
Ikko Ashimine
e53fd19bc3 Fix typo in contributing.md (#8666)
specfic -> specific
2021-05-14 20:57:55 +02:00
jaybe@jekyll
af5bb813aa Update community.md and fix up IRC reference link (#8672) 2021-05-14 20:57:21 +02:00
dependabot[bot]
73637a41b1 Bump actions/cache from v2.1.3 to v2.1.5 (#8645)
Bumps [actions/cache](https://github.com/actions/cache) from v2.1.3 to v2.1.5.
- [Release notes](https://github.com/actions/cache/releases)
- [Commits](https://github.com/actions/cache/compare/v2.1.3...1a9e2138d905efd099035b49d8b7a3888c653ca8)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-05-14 20:53:30 +02:00
Parker Moore
6855200ebd Merge pull request #8635 from jekyll/add-3-9-1-stuff 2021-04-08 11:53:04 -04:00
Parker Moore
eb88a791e1 Add Jekyll 3.9.1 info to the docs website 2021-04-08 10:56:11 -04:00
jekyllbot
c7ccec20c4 Update history to reflect merge of #8560 [ci skip] 2021-03-29 08:56:08 -04:00
David Zhang
63ce7d66bf docs: troubleshoot macOS with ARM64 architecture (#8560)
Merge pull request 8560
2021-03-29 08:56:06 -04:00
jekyllbot
f5a137d3c6 Update history to reflect merge of #8579 [ci skip] 2021-03-27 12:27:00 -04:00
Jonathan Darrer
91c0f2a08d Use latest Jekyll-action configuration (#8579)
Merge pull request 8579
2021-03-27 12:26:59 -04:00
jekyllbot
dfc65090ea Update history to reflect merge of #8496 [ci skip] 2021-03-27 12:25:31 -04:00
Moncef Belyamani
b828ffd559 Fix for important missing step in macOS Installation Docs: Add the Homebrew gems directory to the PATH (#8496)
Merge pull request 8496
2021-03-27 12:25:29 -04:00
Eric Cousineau
2aa33c8043 liquid: Replace "mutually exclusive" with "orthogonal" (#8584)
Was a bit confused when I saw "mutually exclusive" regarding `error_mode` and (`strict_variables`, `strict_filters`), then to see both sets turned on.

Perhaps "orthogonal" (they don't affect each other) is slightly better wording than "mutually exclusive" (they can't "exist" at the same time)?
2021-03-27 17:08:47 +01:00
jekyllbot
fdbb03b258 Update history to reflect merge of #8618 [ci skip] 2021-03-27 11:36:13 -04:00
Parker Moore
5d01099e22 Update include tag to be more permissive (#8618)
Merge pull request 8618
2021-03-27 11:36:12 -04:00
Frank Taillandier
6c170f11af styles: Rubocop 1.12 2021-03-27 16:29:18 +01:00
Otto Urpelainen
734cf2324e Relax dependency version constraints (#8586)
During Fedora 34 development, Jekyll 4.2.0 has been tested against
dependency versions outside of current definitions. This commit
relaxes constraints to allow some versions that were found compatible:

* `mercenary` was 0.3.6 in Fedora, works correctly. Nothing in
  [changelist][1] indicates problems, either.
* `terminal-table` was 1.8.0 in Fedora, then updated directly to
  3.0.0. Both were tested and found to work well. The [changelist][2]
  also shows that breaking changes between terminal-table 1 and 3 are
  either deprecation of very old Ruby runtimes or tiny changes to
  terminal output.

[1]: https://github.com/jekyll/mercenary/blob/master/History.markdown
[2]: https://github.com/tj/terminal-table/blob/master/History.rdoc
2021-03-26 15:12:50 +01:00
Robert Martin
5e7172c9ab Update macOS install docs for Big Sur (#8595)
Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2021-03-26 15:11:17 +01:00
Robert Martin
d25db24065 Update current Ruby version to 3.0.0 (#8596) 2021-03-26 15:09:17 +01:00
David Bruant
17beafeca7 docs: Clarify relative_url and absolute_url filters (#8612)
Co-authored-by: Michael Currin <18750745+MichaelCurrin@users.noreply.github.com>
Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2021-03-26 15:07:15 +01:00
jekyllbot
69e9705512 Update history to reflect merge of #8610 [ci skip] 2021-03-25 20:47:15 -04:00
Adam Bell
df24131349 Cross Version Testing Locally and Faster CI (#8610)
Merge pull request 8610
2021-03-25 20:47:13 -04:00
Frank Taillandier
c9c9dc7dac chore(deps): rubocop 1.10
fix #8583
2021-02-19 09:26:10 +01:00
jekyllbot
a988f9da14 Update history to reflect merge of #8572 [ci skip] 2021-02-05 00:24:03 -05:00
SNVMK
32d9320d34 Update 3-to-4.md (#8572)
Merge pull request 8572
2021-02-05 00:24:01 -05:00
jekyllbot
f1bfbf7d19 Update history to reflect merge of #8567 [ci skip] 2021-02-01 05:54:53 -05:00
Frank Taillandier
fe64d9841b style: add rubocop 1.9 cops (#8567)
Merge pull request 8567
2021-02-01 05:54:51 -05:00
jekyllbot
5a64aefcea Update history to reflect merge of #8564 [ci skip] 2021-01-31 11:21:19 -05:00
Tejas Bubane
d460fae31a Pin rubocop version (#8564)
Merge pull request 8564
2021-01-31 11:21:17 -05:00
Frank Taillandier
e0e856f216 chore: check-html-links 2021-01-30 23:23:54 +01:00
jekyllbot
872132e725 Update history to reflect merge of #8399 [ci skip] 2021-01-19 03:56:12 -05:00
Shannon Kularathna
d46897fabf Step By Step Instructions Review (#8399)
Merge pull request 8399
2021-01-19 03:56:09 -05:00
jekyllbot
4f0dbdb9e8 Update history to reflect merge of #8543 [ci skip] 2021-01-13 02:31:34 -05:00
dependabot[bot]
6dcd470f3d Update actions/cache requirement to v2.1.3 (#8543)
Merge pull request 8543
2021-01-13 02:31:32 -05:00
jekyllbot
2313c4d748 Update history to reflect merge of #8542 [ci skip] 2021-01-13 02:30:51 -05:00
Alex Saveau
cbf656877e Regenerate supported mime types (#8542)
Merge pull request 8542
2021-01-13 02:30:49 -05:00
jekyllbot
50a47e34c2 Update history to reflect merge of #8540 [ci skip] 2021-01-12 18:50:22 -05:00
John Losito
c4055cd3d6 Allow dependabot to keep github actions up-to-date (#8540)
Merge pull request 8540
2021-01-12 18:50:20 -05:00
jekyllbot
a80b131819 Update history to reflect merge of #8533 [ci skip] 2021-01-12 18:44:30 -05:00
Ben Whetton
13152e1247 Remove GitHub Pages content which is in GitHub docs (#8533)
Merge pull request 8533
2021-01-12 18:44:28 -05:00
jekyllbot
e9d7934156 Update history to reflect merge of #8538 [ci skip] 2021-01-12 18:39:43 -05:00
Frank Taillandier
8c8326e9ab style: enable new cops (#8538)
Merge pull request 8538
2021-01-12 18:39:41 -05:00
jekyllbot
1e34cbaee6 Update history to reflect merge of #8524 [ci skip] 2021-01-10 16:25:31 -05:00
Clayton Smith
5c797ba136 Add webrick as a dependency (#8524)
Merge pull request 8524
2021-01-10 16:25:28 -05:00
Frank Taillandier
31e152b0d0 docs: update guide
- use latest versions
- link to https://github.com/limjh16/jekyll-action-ts
2021-01-07 16:17:23 +01:00
jekyllbot
03712b0188 Update history to reflect merge of #8529 [ci skip] 2021-01-03 04:53:02 -05:00
Phil Kirlin
d78fc653a6 Fix i.e. typos in collections.md (#8529)
Merge pull request 8529
2021-01-03 04:53:00 -05:00
jekyllbot
5e141b1e5e Update history to reflect merge of #8532 [ci skip] 2021-01-03 04:51:33 -05:00
Jeffrey Veen
e4031b21c9 Fixes typo in layouts_dir documentation (#8532)
Merge pull request 8532
2021-01-03 04:51:31 -05:00
jekyllbot
ed952e1ca0 Update history to reflect merge of #8527 [ci skip] 2021-01-01 11:29:28 -05:00
Ashwin Maroli
319cc95254 Improve documentation on developing generators (#8527)
Merge pull request 8527
2021-01-01 11:29:26 -05:00
jekyllbot
fc76919c69 Update history to reflect merge of #8525 [ci skip] 2021-01-01 11:19:10 -05:00
Ashwin Maroli
75a895c95d Add a disclaimer to tutorials involving Ruby code (#8525)
Merge pull request 8525
2021-01-01 11:19:08 -05:00
Ashwin Maroli
92e50227bd 2020/12/31 is no longer a future date 2020-12-31 23:40:23 +05:30
jekyllbot
17a9efa376 Update history to reflect merge of #8488 [ci skip] 2020-12-31 12:34:47 -05:00
Craig H Maynard
d1173c9d06 Document support for TSV files consistently (#8488)
Merge pull request 8488
2020-12-31 12:34:45 -05:00
jekyllbot
deb1a712b4 Update history to reflect merge of #8518 [ci skip] 2020-12-31 12:32:41 -05:00
Curious Cat
52fd9451b6 typo - do instead of don't (#8518)
Merge pull request 8518
2020-12-31 12:32:39 -05:00
Ashwin Maroli
ca03e7ab8f Jekyll 4 can be run on Ruby 2.4 2020-12-16 20:06:13 +05:30
Frank Taillandier
871a05a9a4 Release 💎 4.2.0 2020-12-14 13:31:52 +01:00
Frank Taillandier
98d06862ee Release: Jekyll 4.2.0 (#8466)
* chore(release): 4.2.0 💎

Co-authored-by: Ashwin Maroli <ashmaroli@gmail.com>
2020-12-14 13:30:45 +01:00
Ashwin Maroli
1e2d72a574 Remove redundant quotes around YAML value 2020-12-11 19:53:44 +05:30
Frank Taillandier
0d7665c517 docs: new homebrew script [skip ci] 2020-12-11 00:27:54 +01:00
Ashwin Maroli
3ca9d6e891 Format History entries for changes on HEAD 2020-12-10 20:25:16 +05:30
jekyllbot
c571b3bd5a Update history to reflect merge of #8497 [ci skip] 2020-12-10 09:00:26 -05:00
Ashwin Maroli
01825f51db Stash attribute hash for Liquid computed for pages (#8497)
Merge pull request 8497
2020-12-10 09:00:23 -05:00
Ashwin Maroli
c70437e2de Correct offenses reported by RuboCop 1.6.0 2020-12-09 23:07:40 +05:30
Ashwin Maroli
84deb286ed Improve maintainability of showcase data and page 2020-12-09 22:25:46 +05:30
jekyllbot
d268e356f8 Update history to reflect merge of #8504 [ci skip] 2020-12-06 17:55:14 -05:00
Frank Taillandier
46cb37f479 fix: showcase (#8504)
Merge pull request 8504
2020-12-06 17:55:12 -05:00
jekyllbot
716fc3627c Update history to reflect merge of #8492 [ci skip] 2020-12-04 13:38:48 -05:00
Ashwin Maroli
91aed9ff8b Migrate TravisCI jobs to GitHub Actions (#8492)
Merge pull request 8492
2020-12-04 13:38:46 -05:00
Toby Glei
c4d493072d docs: update deployment docs for 21yunbox (#8494)
* docs: new deployment docs for 21yunbox

Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2020-12-04 11:47:26 +01:00
Frank Taillandier
f4a7eee57a docs: shell-based instructions
Fix #8483
2020-12-04 11:17:01 +01:00
Frank Taillandier
2f1ba8e7be docs: Shell-based instructions
Fix #8483
2020-12-04 11:07:07 +01:00
jekyllbot
9a6d3ea51e Update history to reflect merge of #8489 [ci skip] 2020-12-02 12:27:35 -05:00
Ashwin Maroli
c80ccbebf7 Optimize Page#dir with a private method (#8489)
Merge pull request 8489
2020-12-02 12:27:33 -05:00
Jacobo Vidal
686165af12 Add Arengu to form services list documentation (#8414)
* Add Arengu to form services list
2020-12-02 14:12:52 +01:00
Ashwin Maroli
371298f69b Compute hash of Gemfile.lock in workflow 2020-12-02 12:10:27 +05:30
jekyllbot
df09c414d8 Update history to reflect merge of #8485 [ci skip] 2020-12-02 00:56:54 -05:00
Ashwin Maroli
573b431abb Reduce allocations from computing item property (#8485)
Merge pull request 8485
2020-12-02 00:56:51 -05:00
Dan Nemenyi
68497a4d4b Echo PATH to .zshenv for newer macOS's (#8483)
* Add PATH to Zsh for newer macOSs 

Apple switched the default shell to Zsh with Catalina, so updating the PATH in .bash_profile will not have effect for relevant users, and is increasingly now the legacy approach.

This commit adds instructions to echo the PATH to .zshenv, the Zsh equivalent of .bash_profile, as well as to check which version of macOS the user is using.

* Update PATH in local macOS documentation
2020-12-01 14:57:05 +01:00
Frank Taillandier
6132653d5a docs: Homebrew bash script
Fix ##8490
2020-12-01 14:55:11 +01:00
Ashwin Maroli
9084f9f752 Configure new cops 2020-11-30 22:30:48 +05:30
jekyllbot
1ebde7c4cb Update history to reflect merge of #8486 [ci skip] 2020-11-29 14:21:11 -05:00
Adam Alton
568f4c5b76 structure.md: add link to Assets page from _sass section (#8486)
Merge pull request 8486
2020-11-29 14:21:09 -05:00
Ashwin Maroli
97db005336 Remove version constraint on gem tomlrb
This gem is required by the test-suite
2020-11-27 14:13:02 +05:30
jekyllbot
74c3055952 Update history to reflect merge of #8481 [ci skip] 2020-11-26 13:21:52 -05:00
Ashwin Maroli
58368cdacc Debug reading data files in a site (#8481)
Merge pull request 8481
2020-11-26 13:21:50 -05:00
Frank Taillandier
d8d1feec71 style: auo-gen-exclude 2020-11-23 16:58:18 +01:00
Frank Taillandier
8559fbfbe8 style: append o option to regexp
Performance/ConstantRegexp: Extract this regexp into a constant or append an /o option to its options.
2020-11-23 16:53:10 +01:00
Frank Taillandier
d560d53266 style: fix rubocop 1.40 offense 2020-11-23 16:46:50 +01:00
jekyllbot
3e3d9bce64 Update history to reflect merge of #8473 [ci skip] 2020-11-18 05:43:41 -05:00
Ashwin Maroli
a7e1ec901b Add custom debug strings for Jekyll objects (#8473)
Merge pull request 8473
2020-11-18 05:43:38 -05:00
jekyllbot
8a01e6aed9 Update history to reflect merge of #8472 [ci skip] 2020-11-18 05:42:10 -05:00
Ashwin Maroli
37df92dd29 Explicitly return nil after site process phase (#8472)
Merge pull request 8472
2020-11-18 05:42:08 -05:00
Ashwin Maroli
430167b9b9 Do not exclude CNAME from site build 2020-11-12 12:32:11 +05:30
Ashwin Maroli
ed7a4857a5 chore: rake site:generate 2020-11-12 12:18:43 +05:30
Frank Taillandier
6f8ca8c764 chore: cleanup 4.1.1 changelog 2020-11-11 21:24:44 +01:00
Frank Taillandier
68f117f5b3 docs: Ruby 2.7.2 2020-11-11 21:18:43 +01:00
jekyllbot
8ae4bf3f4a Update history to reflect merge of #8201 [ci skip] 2020-11-11 14:52:56 -05:00
iBug
10943d1f3a Build docs site with GitHub Actions (#8201)
Merge pull request 8201
2020-11-11 14:52:53 -05:00
jekyllbot
4d31a8c51b Update history to reflect merge of #8467 [ci skip] 2020-11-11 12:45:22 -05:00
Ashwin Maroli
e210e337bc Improve documentation on Hooks in Jekyll (#8467)
Merge pull request 8467
2020-11-11 12:45:20 -05:00
Frank Taillandier
6dd5bf21b9 chore: site generate 2020-11-11 16:28:56 +01:00
jekyllbot
ec3c0115c7 Update history to reflect merge of #7253 [ci skip] 2020-11-11 07:59:47 -05:00
Ashwin Maroli
91a3dd9e6f Don't reset site.url to localhost:4000 by default (#7253)
Merge pull request 7253
2020-11-11 07:59:44 -05:00
jekyllbot
9fbb7b57c9 Update history to reflect merge of #7414 [ci skip] 2020-11-11 07:50:00 -05:00
Ashwin Maroli
eae71e6235 Rendering arbitrary Liquid variables by default (#7414)
Merge pull request 7414
2020-11-11 07:49:58 -05:00
jekyllbot
661f0fa1b1 Update history to reflect merge of #8292 [ci skip] 2020-11-11 07:39:42 -05:00
Ashwin Maroli
fadbe9eba4 Test that Liquid expressions are not deeply evaled (#8292)
Merge pull request 8292
2020-11-11 07:39:40 -05:00
jekyllbot
83a2b30b76 Update history to reflect merge of #8100 [ci skip] 2020-11-11 07:29:07 -05:00
Ashwin Maroli
26086409bf Debug reading Page and Layout objects (#8100)
Merge pull request 8100
2020-11-11 07:29:05 -05:00
jekyllbot
d3299a8e02 Update history to reflect merge of #8406 [ci skip] 2020-11-11 05:38:05 -05:00
Ashwin Maroli
054d9356b9 Reduce allocations from rendering item as liquid (#8406)
Merge pull request 8406
2020-11-11 05:38:03 -05:00
jekyllbot
9de60bbf48 Update history to reflect merge of #8465 [ci skip] 2020-11-11 05:36:56 -05:00
Ashwin Maroli
c12a04dbc1 Allow triggering :post_convert events atomically (#8465)
Merge pull request 8465
2020-11-11 05:36:54 -05:00
jekyllbot
11ff8aa0dd Update history to reflect merge of #8463 [ci skip] 2020-11-09 07:03:17 -05:00
Ashwin Maroli
db9ca22c24 Generate items from site.include list only once (#8463)
Merge pull request 8463
2020-11-09 07:03:16 -05:00
jekyllbot
ddae19bbb4 Update history to reflect merge of #8459 [ci skip] 2020-11-08 11:15:19 -05:00
Ashwin Maroli
ce441d32ec Enhance detection of conflicting destination URLs (#8459)
Merge pull request 8459
2020-11-08 11:15:17 -05:00
jekyllbot
bcbc451a26 Update history to reflect merge of #8458 [ci skip] 2020-11-06 08:05:04 -05:00
Ashwin Maroli
920c6f4ddc Memoize destination of pages, documents and staticfiles (#8458)
Merge pull request 8458
2020-11-06 08:05:02 -05:00
jekyllbot
56d59a1782 Update history to reflect merge of #8457 [ci skip] 2020-11-05 09:38:54 -05:00
Ashwin Maroli
5054e57fa5 Enable Lint/NoReturnInBeginEndBlocks Cop (#8457)
Merge pull request 8457
2020-11-05 09:38:52 -05:00
Ashwin Maroli
0dedc09ab3 Move PathManager methods into its singleton class 2020-11-05 17:30:59 +05:30
jekyllbot
9b96cdfa7d Update history to reflect merge of #8456 [ci skip] 2020-11-05 06:45:36 -05:00
Enrico Tolotto
accce8656b docs: installation: fedora: add additional dependencies (#8456)
Merge pull request 8456
2020-11-05 06:45:34 -05:00
Ashwin Maroli
d3e3225fc1 Configure cops introduced in RuboCop v1.2 2020-11-05 16:00:33 +05:30
jekyllbot
80fce9fcc3 Update history to reflect merge of #8453 [ci skip] 2020-11-04 10:31:02 -05:00
Ashwin Maroli
bf18b27e2a Reduce array allocations from merging categories (#8453)
Merge pull request 8453
2020-11-04 10:31:00 -05:00
Ashwin Maroli
02d25d1cf2 actions/setup-ruby does not support patch versions 2020-11-03 12:17:14 +05:30
jekyllbot
3de3e7be8e Update history to reflect merge of #8444 [ci skip] 2020-11-02 16:31:02 -05:00
Ashwin Maroli
137de414c1 Use Ruby 2.7.1 in GitHub Actions (#8444)
Merge pull request 8444
2020-11-02 16:31:00 -05:00
Frank Taillandier
1099f73d2d fix(deps): Terminal Table 2.0
fix #8452
2020-11-02 22:29:52 +01:00
jekyllbot
95a7b20787 Update history to reflect merge of #8451 [ci skip] 2020-11-02 04:04:23 -05:00
Ashwin Maroli
a6bbcb7fb6 Memoize defaults computed for Convertibles (#8451)
Merge pull request 8451
2020-11-02 04:04:21 -05:00
Ashwin Maroli
e06641f423 Configure cops from RuboCop 1.1 2020-10-29 23:36:51 +05:30
Ashwin Maroli
4bda8cefb8 Refer to Bundler as a proper noun [ci skip] 2020-10-29 22:44:50 +05:30
Rachel Cheyfitz - Owner
5ec7a8e289 Update 07-assets.md (#8449)
Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2020-10-29 18:07:32 +01:00
jekyllbot
2c18ddcd80 Update history to reflect merge of #8450 [ci skip] 2020-10-29 13:03:48 -04:00
Rachel Cheyfitz - Owner
ebac932f10 docs: init project (#8450)
Merge pull request 8450
2020-10-29 13:03:46 -04:00
jekyllbot
25ccfd5b49 Update history to reflect merge of #8447 [ci skip] 2020-10-26 16:24:19 -04:00
Gabriel Staples
bd063ae0f0 Add links to all Jekyll themes on GitHub tagged with #jekyll-theme (#8447)
Merge pull request 8447
2020-10-26 16:24:17 -04:00
Ashwin Maroli
1ae2a1dd04 Bump RuboCop to v1.x 2020-10-21 17:57:08 +05:30
jekyllbot
8948277363 Update history to reflect merge of #8421 [ci skip] 2020-10-16 08:31:11 -04:00
Ashwin Maroli
7c56e397c9 Memoize array of drop getter method names (#8421)
Merge pull request 8421
2020-10-16 08:31:09 -04:00
SaintMalik
20abb8f62b Fix broken url in docs (#8435) 2020-10-12 11:22:30 +02:00
jekyllbot
e4db593814 Update history to reflect merge of #8394 [ci skip] 2020-10-11 05:15:49 -04:00
Ashwin Maroli
5dc43a88de Stash frequently used Drop setter keys for reuse (#8394)
Merge pull request 8394
2020-10-11 05:15:46 -04:00
jekyllbot
e0221ed3a8 Update history to reflect merge of #8393 [ci skip] 2020-10-11 04:41:28 -04:00
Ashwin Maroli
34a78e1ea2 Check default front matter scope against symbols (#8393)
Merge pull request 8393
2020-10-11 04:41:25 -04:00
Corey Megown
6d30bac845 correcting lightburn company spelling (#8433) 2020-10-10 21:42:53 +02:00
jekyllbot
9f8ac4eb7a Update history to reflect merge of #8430 [ci skip] 2020-10-08 15:32:51 -04:00
Frank Taillandier
bcff13a16a chore(deps): bump Rubocop to 0.93.0 (#8430)
Merge pull request 8430
2020-10-08 15:32:49 -04:00
jekyllbot
01d0b78abb Update history to reflect merge of #8427 [ci skip] 2020-10-08 10:03:18 -04:00
Ashwin Maroli
335429b10c Use Regexp#match? when MatchData is not required (#8427)
Merge pull request 8427
2020-10-08 10:03:16 -04:00
jekyllbot
e739c777fc Update history to reflect merge of #8424 [ci skip] 2020-10-07 10:39:09 -04:00
fauno
59bafa802b Cache Jekyll.sanitized_path (#8424)
Merge pull request 8424
2020-10-07 10:39:06 -04:00
Ashwin Maroli
56e15c5ace Profile allocations from lib/jekyll.rb as well 2020-10-07 18:47:29 +05:30
Ashwin Maroli
e59e998b42 Allow testing on Ruby 2.4 as well
Cucumber 5.x requires at least Ruby 2.5
2020-10-04 16:12:10 +05:30
jekyllbot
c9b84e2b35 Update history to reflect merge of #8400 [ci skip] 2020-10-01 09:53:15 -04:00
Ashwin Maroli
ecbfa58d65 Reduce allocation from normalize_whitespace filter (#8400)
Merge pull request 8400
2020-10-01 09:53:12 -04:00
jekyllbot
f0e342d390 Update history to reflect merge of #8403 [ci skip] 2020-10-01 09:51:43 -04:00
Ashwin Maroli
11020f80fa Utilize flexibility of Site#in_dest_dir (#8403)
Merge pull request 8403
2020-10-01 09:51:41 -04:00
Pratyaksh Gautam
d26970cf25 Update your-first-plugin.md (#8420) 2020-10-01 13:13:42 +02:00
jekyllbot
b17cb5fe2a Update history to reflect merge of #8404 [ci skip] 2020-09-30 02:49:14 -04:00
Ashwin Maroli
f7292ec9cc Enable Performance/ChainArrayAllocation cop (#8404)
Merge pull request 8404
2020-09-30 02:49:12 -04:00
jekyllbot
166796c448 Update history to reflect merge of #8408 [ci skip] 2020-09-30 02:11:30 -04:00
Ashwin Maroli
7cb10df0b8 Compute relative_path of pages using PathManager (#8408)
Merge pull request 8408
2020-09-30 02:11:28 -04:00
Ashwin Maroli
7d8a839a21 Restore Gemfile to prior state
rubocop-ast-0.7.1 has dropped the dependency on gem 'strscan'.
So the workaround is no longer necessary.

https://rubygems.org/gems/rubocop-ast/versions/0.7.1
2020-09-30 11:19:07 +05:30
jekyllbot
b71a26d11d Update history to reflect merge of #8418 [ci skip] 2020-09-28 10:21:59 -04:00
Ashwin Maroli
711986d19f Fix test suite compatibility with JRuby (#8418)
Merge pull request 8418
2020-09-28 10:21:57 -04:00
jekyllbot
c7c7be9b3a Update history to reflect merge of #8415 [ci skip] 2020-09-28 04:42:05 -04:00
Ashwin Maroli
98b7a4626a Handle nil argument to Jekyll.sanitized_path (#8415)
Merge pull request 8415
2020-09-28 04:42:01 -04:00
Frank Taillandier
16f8370ccd test: pubish cucumber report
--publish automatically publishes reports to reports.cucumber.io
https://github.com/cucumber/cucumber-ruby/blob/master/CHANGELOG.md#500
2020-09-26 20:15:53 +02:00
jekyllbot
fe898af92f Update history to reflect merge of #8413 [ci skip] 2020-09-26 03:27:39 -04:00
jesuslerma
adc0a2e182 Update cucumber gem version to 5.1.2 (#8413)
Merge pull request 8413
2020-09-26 03:27:36 -04:00
Frank Taillandier
2518dd16ff docs: Rubocop 0.92.0 [ci-skip] 2020-09-25 10:59:25 +02:00
Frank Taillandier
8b7847c8e6 chore(deps): bump Rubocop to 0.92.0 2020-09-25 10:58:05 +02:00
jekyllbot
993960ba8c Update history to reflect merge of #8409 [ci skip] 2020-09-25 03:50:07 -04:00
Takuya N
3f4a0da4d5 Remove NOKOGIRI_USE_SYSTEM_LIBRARIES from Travis CI docs (#8409)
Merge pull request 8409
2020-09-25 03:50:05 -04:00
jekyllbot
6326b1f9d4 Update history to reflect merge of #8410 [ci skip] 2020-09-25 03:47:51 -04:00
Takuya N
30ac3e07ba Remove CircleCI v1 docs as it was sunset in 2019 (#8410)
Merge pull request 8410
2020-09-25 03:47:49 -04:00
Ashwin Maroli
0ee9331892 Disable Continuous Integration workflow [ci skip] 2020-09-24 23:52:17 +05:30
jekyllbot
fd8a7e7e3b Update history to reflect merge of #8401 [ci skip] 2020-09-24 07:36:13 -04:00
Ashwin Maroli
51b976ed05 Check if site is in incremental mode optimally (#8401)
Merge pull request 8401
2020-09-24 07:36:10 -04:00
jekyllbot
715fe0c572 Update history to reflect merge of #8183 [ci skip] 2020-09-23 16:13:07 -04:00
Ashwin Maroli
53f175516b Implement custom delegators for drop methods (#8183)
Merge pull request 8183
2020-09-23 16:13:05 -04:00
Ashwin Maroli
c5d4bbd434 Exclude test files from a Layout RuboCop cop 2020-09-23 20:45:30 +05:30
m-naumann
eb4d91d5e5 docs: Clarify gem installation instructions (#8407) 2020-09-22 14:51:55 +02:00
Frank Taillandier
f8c72089dd docs: GitHub Pages is using 3.9.0
https://pages.github.com/versions/
2020-09-18 14:34:36 +02:00
jekyllbot
609fa612be Update history to reflect merge of #8392 [ci skip] 2020-09-18 07:23:10 -04:00
Ashwin Maroli
a401f0387e Reduce string allocations from generating doc URLs (#8392)
Merge pull request 8392
2020-09-18 07:23:08 -04:00
Ashwin Maroli
07e1eb1f27 Use commit message flag to control workflows 2020-09-17 20:30:26 +05:30
jekyllbot
49c11725b3 Update history to reflect merge of #8398 [ci skip] 2020-09-17 09:53:37 -04:00
Ashwin Maroli
c066999fa0 Add workflow to build and profile third-party repo (#8398)
Merge pull request 8398
2020-09-17 09:53:35 -04:00
Nicholas Paxford
94930c5a58 Update 05-includes.md (#8364)
Added two commas (line 19 and 60)
2020-09-16 19:46:41 +02:00
jekyllbot
7e0f907c64 Update history to reflect merge of #8391 [ci skip] 2020-09-16 06:36:28 -04:00
Ashwin Maroli
3fd7449fa1 Bump RuboCop to v0.91.x (#8391)
Merge pull request 8391
2020-09-16 06:36:26 -04:00
jekyllbot
0d337c8a93 Update history to reflect merge of #8389 [ci skip] 2020-09-14 09:37:58 -04:00
Ashwin Maroli
bd04997fee Stash documents write? attribute in a variable (#8389)
Merge pull request 8389
2020-09-14 09:37:56 -04:00
jekyllbot
c9ab616ace Update history to reflect merge of #8192 [ci skip] 2020-09-14 07:36:13 -04:00
Ashwin Maroli
f2b463bb85 Optimize parsing of parameters in include tag (#8192)
Merge pull request 8192
2020-09-14 07:36:10 -04:00
jekyllbot
3fb307dc25 Update history to reflect merge of #8387 [ci skip] 2020-09-11 09:24:27 -04:00
Ashwin Maroli
51bb40913b Reduce string allocations from the link tag (#8387)
Merge pull request 8387
2020-09-11 09:24:25 -04:00
jekyllbot
959fc18db5 Update history to reflect merge of #7236 [ci skip] 2020-09-09 12:05:02 -04:00
Ashwin Maroli
b456a69fa2 Refactor Jekyll::Utils::Platforms (#7236)
Merge pull request 7236
2020-09-09 12:04:59 -04:00
jekyllbot
ae2ec98262 Update history to reflect merge of #8383 [ci skip] 2020-09-09 05:18:22 -04:00
Ashwin Maroli
d1093e0160 Improve maintainability of config option data (#8383)
Merge pull request 8383
2020-09-09 05:18:20 -04:00
jekyllbot
1fbc4c28ea Update history to reflect merge of #8380 [ci skip] 2020-09-08 14:08:20 -04:00
Malathi
23f59f4153 Docs: Use data file(s) to render table(s) at https://jekyllrb.com/docs/configuration/options/ (#8380)
Merge pull request 8380
2020-09-08 14:08:17 -04:00
jekyllbot
e9b62b89a4 Update history to reflect merge of #8377 [ci skip] 2020-09-07 13:38:08 -04:00
Malathi
5924eb19f6 Use data file to render table at /docs/configuration/options/#global-configuration (#8377)
Merge pull request 8377
2020-09-07 13:38:06 -04:00
jekyllbot
ae7115638a Update history to reflect merge of #8375 [ci skip] 2020-09-07 09:40:14 -04:00
Ashwin Maroli
34add02e8b Fix path matching regex in post_url Liquid tag (#8375)
Merge pull request 8375
2020-09-07 09:40:12 -04:00
jekyllbot
abdbb58d8a Update history to reflect merge of #8359 [ci skip] 2020-09-06 11:57:51 -04:00
Shannon Kularathna
7188eac40f Add note about rebooting system after installation (#8359)
Merge pull request 8359
2020-09-06 11:57:48 -04:00
jekyllbot
6847a6cfcb Update history to reflect merge of #8372 [ci skip] 2020-09-05 10:52:07 -04:00
Shannon Kularathna
85508ccbf3 Docs Review: Getting Started (#8372)
Merge pull request 8372
2020-09-05 10:52:04 -04:00
jekyllbot
a0d7900bbe Update history to reflect merge of #8313 [ci skip] 2020-09-04 16:10:44 -04:00
jnozsc
e824f6b9cc Update rubocop gem to 0.90.0 (#8313)
Merge pull request 8313
2020-09-04 16:10:41 -04:00
jekyllbot
5aaa69da3e Update history to reflect merge of #8365 [ci skip] 2020-09-04 09:59:31 -04:00
Chuck Houpt
a88e5ef2b1 Add missing flag and options doc for build and serve commands (#8365)
Merge pull request 8365
2020-09-04 09:59:29 -04:00
jekyllbot
0de0f7ec35 Update history to reflect merge of #8358 [ci skip] 2020-09-04 08:33:00 -04:00
Thelonius Kort
910782e349 Replacing GIT_REPO by GIT_DIR (#8358)
Merge pull request 8358
2020-09-04 08:32:57 -04:00
jekyllbot
bed94b8ee7 Update history to reflect merge of #8369 [ci skip] 2020-09-04 06:08:16 -04:00
Ashwin Maroli
822bb57d41 Configure Performance cops (#8369)
Merge pull request 8369
2020-09-04 06:08:14 -04:00
Ashwin Maroli
ae6911d38a Update history to reflect merge of #8368 [ci skip] 2020-09-04 12:37:15 +05:30
Liam Cooke
eac6eb25b8 Add post_convert hook to modify HTML content before layout (#8368)
Co-authored-by: John Hughes <johnkhughes@users.noreply.github.com>
2020-09-04 12:31:24 +05:30
jekyllbot
badc9c2d30 Update history to reflect merge of #8354 [ci skip] 2020-08-27 12:50:20 -04:00
Shannon Kularathna
bc9895aa9b Clarify description of safe option (#8354)
Merge pull request 8354
2020-08-27 12:50:17 -04:00
Lou Rectoret
4299095d21 Run server with Autoreload (#8355)
* docs: livereload option

Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2020-08-25 15:44:58 +02:00
jekyllbot
b561413a81 Update history to reflect merge of #8353 [ci skip] 2020-08-24 10:42:13 -04:00
Shannon Kularathna
37a250bd8d Update default.md with info requested in #8314 (#8353)
Merge pull request 8353
2020-08-24 10:42:10 -04:00
jekyllbot
cac8d6ca5f Update history to reflect merge of #8352 [ci skip] 2020-08-23 10:39:08 -04:00
joelkennedy
0edc075818 Update documentation on third party site (#8352)
Merge pull request 8352
2020-08-23 10:39:06 -04:00
jekyllbot
0a2315d3af Update history to reflect merge of #8347 [ci skip] 2020-08-19 13:16:21 -04:00
Seeker
4f81011442 Supress warning issued for redirect pages (#8347)
Merge pull request 8347
2020-08-19 13:16:18 -04:00
jekyllbot
2afa51b9e1 Update history to reflect merge of #8349 [ci skip] 2020-08-17 11:58:06 -04:00
Frank Taillandier
d3126f57fd fix: security bump (#8349)
Merge pull request 8349
2020-08-17 11:58:02 -04:00
Ashwin Maroli
9dc60e4088 Update history regarding cherry-picks from docs-40 2020-08-16 22:40:26 +05:30
Alexey Pelykh
6a444634db Added docs for enhanced link tag 2020-08-16 22:29:11 +05:30
Nikita Skalkin
f26d70b53c Docs for remove support for Redcarpet
via #6990 and #8344


Co-authored-by: Emil Sågfors <emil.sagfors@iki.fi>
2020-08-16 22:17:38 +05:30
Frank Taillandier
190cffe875 rdiscount is not supported anymore 2020-08-16 22:04:43 +05:30
jekyllbot
b5201c50ff Update history to reflect merge of #8342 [ci skip] 2020-08-16 06:48:22 -04:00
Seeker
a4f5b850af Warn on command-line with permalink conflict (#8342)
Merge pull request 8342
2020-08-16 06:48:19 -04:00
Ashwin Maroli
9a7955d9b3 Update test to reflect changes in the latest Rouge 2020-08-12 16:12:59 +05:30
Ashwin Maroli
56ed7bed5d Stop testing on Windows via GitHub Actions
The builds seem to be choking for the past few days due to the presence of symlinked files.

Fortunately, AppVeyor builds continue to run as before.
2020-08-12 15:34:09 +05:30
Parker Moore
24a509f68b Merge pull request #8326 from jekyll/release-jekyll-3-9-0
Add Jekyll 3.9.0 release post
2020-08-05 14:44:54 -04:00
Parker Moore
180673b5a5 Add Jekyll 3.9.0 release post to main documentation 2020-08-05 14:43:06 -04:00
jekyllbot
95f45a0a04 Update history to reflect merge of #8325 [ci skip] 2020-08-05 14:19:28 -04:00
jekyllbot
ef2736d9a6 Update history to reflect merge of #8323 [ci skip] 2020-08-05 14:16:51 -04:00
Frank Taillandier
a39509678e fix: W3C HTML5 Validator warning
The type attribute is unnecessary for JavaScript resources.
2020-08-03 12:01:08 +02:00
jekyllbot
f9aa4b921e Update history to reflect merge of #8320 [ci skip] 2020-07-29 16:38:34 -04:00
Christopher Brown
113aa48ca6 Clarify target of subordinate clause (#8320)
Merge pull request 8320
2020-07-29 16:38:32 -04:00
jekyllbot
319c0d214e Update history to reflect merge of #8319 [ci skip] 2020-07-29 13:18:00 -04:00
bytecode1024
6256ae0719 Extra apostrophes in an URL (#8319)
Merge pull request 8319
2020-07-29 13:17:58 -04:00
jekyllbot
b728eda026 Update history to reflect merge of #8312 [ci skip] 2020-07-23 03:03:51 -04:00
iBug ♦
975c091d14 Fix IRB error "ubygems" (#8199) (#8312)
Merge pull request 8312
2020-07-23 03:03:48 -04:00
jekyllbot
df7589ae18 Update history to reflect merge of #7864 [ci skip] 2020-07-17 06:44:25 -04:00
Brittany Joiner
943a6fdb87 Update resources.md (#7864)
Merge pull request 7864
2020-07-17 06:44:23 -04:00
Steven Xu
d90d1f2494 add punctuation (#8306) 2020-07-16 18:28:22 +02:00
jekyllbot
581fcaddab Update history to reflect merge of #8305 [ci skip] 2020-07-16 12:23:07 -04:00
Francesco Bianco
e2159f72e3 Update default.html (#8305)
Merge pull request 8305
2020-07-16 12:23:05 -04:00
Ashwin Maroli
716536b551 Clarify relevance of data file basename [skip ci] 2020-07-12 21:40:05 +05:30
jekyllbot
1a03aafb81 Update history to reflect merge of #8297 [ci skip] 2020-07-10 14:38:57 -04:00
Alex Malaszkiewicz
f11fc5c1d1 Add refactoring type to PULL_REQUEST_TEMPLATE (#8297)
Merge pull request 8297
2020-07-10 14:38:55 -04:00
jekyllbot
1ab4dffe3c Update history to reflect merge of #8296 [ci skip] 2020-07-10 04:45:56 -04:00
Alex Malaszkiewicz
261fb28b11 Update RuboCop to-do file (#8296)
Merge pull request 8296
2020-07-10 04:45:54 -04:00
jekyllbot
43a8a4666d Update history to reflect merge of #8294 [ci skip] 2020-07-09 14:26:01 -04:00
Alex Malaszkiewicz
f5826eed3c Replace nested conditional with guard clauses (#8294)
Merge pull request 8294
2020-07-09 14:25:59 -04:00
jekyllbot
119c490ad2 Update history to reflect merge of #8291 [ci skip] 2020-07-08 14:46:09 -04:00
Ashwin Maroli
a5b6602ffd Add a note on the rendering process in the docs (#8291)
Merge pull request 8291
2020-07-08 14:46:06 -04:00
jekyllbot
6c640012a2 Update history to reflect merge of #8287 [ci skip] 2020-07-08 14:32:43 -04:00
Alex Malaszkiewicz
bdc67c4474 Update rubocop gem to 0.87.1 (#8287)
Merge pull request 8287
2020-07-08 14:32:40 -04:00
jekyllbot
bbde471f53 Update history to reflect merge of #8283 [ci skip] 2020-07-06 08:12:14 -04:00
Joe Marshall
8a1073733d Add Formcake to forms section (#8283)
Merge pull request 8283
2020-07-06 08:12:12 -04:00
jekyllbot
c94c9aab33 Update history to reflect merge of #8282 [ci skip] 2020-07-05 15:16:03 -04:00
Alex Malaszkiewicz
2c793fcf77 Move permalink styles data to constant (#8282)
Merge pull request 8282
2020-07-05 15:16:01 -04:00
jekyllbot
f693faf1b6 Update history to reflect merge of #8278 [ci skip] 2020-07-03 14:11:21 -04:00
Alex Malaszkiewicz
7e26a8623c Update cucumber gem to version 4.1 (#8278)
Merge pull request 8278
2020-07-03 14:11:17 -04:00
jekyllbot
690183baf5 Update history to reflect merge of #8230 [ci skip] 2020-07-01 02:35:17 -04:00
Felix Breidenstein
148608256a Fix 'page 1' special treatment in pagination docs (#8230)
Merge pull request 8230
2020-07-01 02:35:14 -04:00
jekyllbot
d596ceb5c2 Update history to reflect merge of #8274 [ci skip] 2020-07-01 02:32:47 -04:00
jaybe@jekyll
930c65fb20 Update pointer to special permalink variables for collections (#8274)
Merge pull request 8274
2020-07-01 02:32:44 -04:00
Frank Taillandier
b3b9fae4bc Release 💎 4.1.1 2020-06-24 18:57:46 +02:00
Frank Taillandier
06b969db5d chore: generate site 2020-06-24 18:57:25 +02:00
Frank Taillandier
baf0274234 chore: bump to 4.1.1 2020-06-24 18:55:53 +02:00
jekyllbot
3ec61e6a68 Update history to reflect merge of #8243 [ci skip] 2020-06-24 12:53:32 -04:00
Ashwin Maroli
a7b8d27bda Release post for v4.1.1 (#8243)
Merge pull request 8243
2020-06-24 12:53:29 -04:00
jekyllbot
3ebbb7994f Update history to reflect merge of #8265 [ci skip] 2020-06-24 08:02:28 -04:00
HonkingGoose
3f6e230d53 Change word (#8265)
Merge pull request 8265
2020-06-24 08:02:25 -04:00
jekyllbot
5446e0ed54 Update history to reflect merge of #8264 [ci skip] 2020-06-24 07:59:42 -04:00
HonkingGoose
edbafe8c98 Update link to Netlify step-by-step guide (#8264)
Merge pull request 8264
2020-06-24 07:59:40 -04:00
Ashwin Maroli
52a1db530a Bump RuboCop to v0.86.x 2020-06-22 20:02:29 +05:30
jekyllbot
c250b2abd3 Update history to reflect merge of #8231 [ci skip] 2020-06-22 09:40:06 -04:00
Ashwin Maroli
8136d490e3 Allow hyperlinks to specific filter documentation (#8231)
Merge pull request 8231
2020-06-22 09:40:04 -04:00
jekyllbot
5481ba0f22 Update history to reflect merge of #8261 [ci skip] 2020-06-20 17:59:45 -04:00
Bianca Power
b3de5ab83a correct typo (#8261)
Merge pull request 8261
2020-06-20 17:59:43 -04:00
jekyllbot
0975bd7990 Update history to reflect merge of #8236 [ci skip] 2020-06-17 09:26:56 -04:00
Ashwin Maroli
ba29de02d4 Make page excerpts consistent with doc excerpts (#8236)
Merge pull request 8236
2020-06-17 09:26:53 -04:00
jekyllbot
c78ecc8d82 Update history to reflect merge of #8250 [ci skip] 2020-06-13 14:55:55 -04:00
jaybe@jekyll
d89b0974a2 Update liquid.md (#8250)
Merge pull request 8250
2020-06-13 14:55:52 -04:00
jekyllbot
35e2f7cc3e Update history to reflect merge of #8249 [ci skip] 2020-06-13 02:59:24 -04:00
jaybe@jekyll
426e050b32 Add language and examples to describe how to use the configuration options. (#8249)
Merge pull request 8249
2020-06-13 02:59:21 -04:00
Markoz Peña
a7e74122f3 Fix typo name of repository (#8248) 2020-06-12 23:28:26 +02:00
jekyllbot
cddaa4de6f Update history to reflect merge of #8247 [ci skip] 2020-06-12 15:10:47 -04:00
Markoz Peña
e874ba3044 Change name to ▲Vercel (#8247)
Merge pull request 8247
2020-06-12 15:10:44 -04:00
jekyllbot
df75b3babf Update history to reflect merge of #8241 [ci skip] 2020-06-09 16:50:23 -04:00
Lucas Alves
6a8b9fc35d Including correct Sketch website (#8241)
Merge pull request 8241
2020-06-09 16:50:21 -04:00
jekyllbot
f4b7db18a5 Update history to reflect merge of #8234 [ci skip] 2020-06-08 08:39:52 -04:00
Ashwin Maroli
ee20e844aa Don't generate excerpts for non-html pages (#8234)
Merge pull request 8234
2020-06-08 08:39:50 -04:00
jekyllbot
0bb04d45c7 Update history to reflect merge of #8235 [ci skip] 2020-06-08 01:28:44 -04:00
Anthony
72c7529e27 Replace deprecated 'show' command with 'info' (#8235)
Merge pull request 8235
2020-06-08 01:28:42 -04:00
jekyllbot
81c13507c8 Update history to reflect merge of #8227 [ci skip] 2020-06-05 03:05:14 -04:00
Ashwin Maroli
75ae986208 Expect drive letter only on vanilla windows (#8227)
Merge pull request 8227
2020-06-05 03:05:12 -04:00
Ashwin Maroli
03256d7b80 Revert re-introduction of PageDrop
Reverts commit 1bfb12b210.
2020-06-04 20:08:35 +05:30
Ashwin Maroli
1bfb12b210 Revert deletion of PageDrop
Reverts commit 8590ab0768.
Reverts commit 69154c2ef7.
2020-06-04 19:24:51 +05:30
jekyllbot
69154c2ef7 Update history to reflect merge of #8221 [ci skip] 2020-06-04 08:54:19 -04:00
Ashwin Maroli
8590ab0768 Revert introduction of PageDrop (#8221)
Merge pull request 8221
2020-06-04 08:54:16 -04:00
jekyllbot
53c76b8a4b Update history to reflect merge of #8222 [ci skip] 2020-06-04 04:57:13 -04:00
Ashwin Maroli
8b22c9dcd5 Disable page excerpts by default (#8222)
Merge pull request 8222
2020-06-04 04:57:10 -04:00
Ashwin Maroli
4b57a4187e Revert temporary locks on ffi gem for Windows
This reverts commit 4046ca2322.
This reverts commit da61a16ee2.
2020-06-03 15:28:13 +05:30
jekyllbot
c7c645ed6e Update history to reflect merge of #8223 [ci skip] 2020-06-01 14:07:45 -04:00
Ashwin Maroli
751b8f9c3c Bump RuboCop to v0.85.x (#8223)
Merge pull request 8223
2020-06-01 14:07:43 -04:00
Ashwin Maroli
4046ca2322 Temporarily lock ffi gem to v1.12.x on Windows 2020-06-01 22:50:34 +05:30
Ashwin Maroli
da61a16ee2 Temporarily lock ffi gem to v1.12.x on Windows 2020-06-01 22:29:00 +05:30
Koos Looijesteijn
99c9b51c3a Add atom:link rel="self" to RSS feed template (#8213)
The [W3C validator](https://validator.w3.org/feed/check.cgi) says:
> This feed is valid, but interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

With the added line, this should be fixed.
2020-05-28 15:52:24 +02:00
Ashwin Maroli
627e3bbe53 Release post of v4.1.0 (#8209)
Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2020-05-27 12:53:29 +02:00
Frank Taillandier
d1c72e87b1 Release 💎 4.1.0 2020-05-27 12:43:37 +02:00
Frank Taillandier
0a48b23695 chore(release): v4.1.0 💎 2020-05-27 12:43:37 +02:00
Frank Taillandier
e05f2b9d5b docs: fix classifier-reborn link
Fix #8211
2020-05-27 11:30:47 +02:00
jekyllbot
84ea040d0d Update history to reflect merge of #8158 [ci skip] 2020-05-25 13:01:06 -04:00
Ashwin Maroli
1292dcc24a Initialize include-files as Jekyll objects (#8158)
Merge pull request 8158
2020-05-25 13:01:03 -04:00
jekyllbot
2f4c73f38c Update history to reflect merge of #8188 [ci skip] 2020-05-25 12:20:13 -04:00
Ashwin Maroli
c0fde30d4b Initialize static files' data hash only if needed (#8188)
Merge pull request 8188
2020-05-25 12:20:10 -04:00
Ashwin Maroli
bf568cc657 Revert merge of #8126 [skip ci]
This reverts commit ab8c4b9b50
and commit 5e2af1ba54
2020-05-22 22:27:59 +05:30
Ashwin Maroli
5e2af1ba54 Trigger Deploy Docs on push event 2020-05-22 22:18:28 +05:30
Ashwin Maroli
ab8c4b9b50 Add a workflow to build and deploy docs site (#8126) 2020-05-22 22:13:40 +05:30
jekyllbot
e761d0692c Update history to reflect merge of #7813 [ci skip] 2020-05-22 11:01:19 -04:00
iBug ♦
13b7291649 Make number_of_words respect CJK characters (#7813)
Merge pull request 7813
2020-05-22 11:01:17 -04:00
jekyllbot
2e80c557e3 Update history to reflect merge of #8171 [ci skip] 2020-05-21 06:56:49 -04:00
Ashwin Maroli
0b2c4c9cec Add find filters to optimize where-first chains (#8171)
Merge pull request 8171
2020-05-21 06:56:47 -04:00
jekyllbot
aecd937864 Update history to reflect merge of #6760 [ci skip] 2020-05-21 06:06:16 -04:00
Ashwin Maroli
589b122416 Profile various stages of a site's build process (#6760)
Merge pull request 6760
2020-05-21 06:06:14 -04:00
Ashwin Maroli
5649cac7e7 Bump RuboCop to v0.84.x
Enable new Lint/DeprecatedOpenSSLConstant cop

Additionally:
  * Enable Layout/EmptyLinesAroundAttributeAccessor cop
  * Sort configuration by cop names alphabetically
  * Add a blank line to separate various departments
2020-05-21 15:02:37 +05:30
jekyllbot
476ec0de9e Update history to reflect merge of #7642 [ci skip] 2020-05-21 04:44:17 -04:00
Ashwin Maroli
1ec3843130 Allow excerpts to be generated for Page objects (#7642)
Merge pull request 7642
2020-05-21 04:44:14 -04:00
jekyllbot
673f3d20ba Update history to reflect merge of #8196 [ci skip] 2020-05-20 17:04:20 -04:00
Ashwin Maroli
098eab0304 Improve documentation on tags and categories (#8196)
Merge pull request 8196
2020-05-20 17:04:15 -04:00
jekyllbot
881fdc1c01 Update history to reflect merge of #7482 [ci skip] 2020-05-20 07:44:18 -04:00
Ashwin Maroli
696e8e4b99 Filter out exclusively excluded entries sooner (#7482)
Merge pull request 7482
2020-05-20 07:44:15 -04:00
jekyllbot
bc3b92c151 Update history to reflect merge of #8193 [ci skip] 2020-05-20 05:28:58 -04:00
Toby Glei
b5e9870f45 docs: add 21yunbox for deployment (#8193)
Merge pull request 8193
2020-05-20 05:28:56 -04:00
jekyllbot
d7bec8015f Update history to reflect merge of #8191 [ci skip] 2020-05-19 16:29:34 -04:00
Philip Eriksson
b18a6830c3 Update third-party.md (#8191)
Merge pull request 8191
2020-05-19 16:29:31 -04:00
jekyllbot
a4ef72631a Update history to reflect merge of #8187 [ci skip] 2020-05-18 08:15:16 -04:00
Philip Eriksson
497246dcf9 Remove sudo from Travis CI tutorial (#8187)
Merge pull request 8187
2020-05-18 08:15:13 -04:00
codenitpicker
603fae800a docs: kramdown options (#8181)
Example usage of kramdown options

Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2020-05-17 14:03:37 +02:00
jekyllbot
5679e4aa93 Update history to reflect merge of #8178 [ci skip] 2020-05-14 09:38:11 -04:00
dotnetCarpenter
58a73a53d0 Ease discovery of CLI commands (in their entirety) (#8178)
Merge pull request 8178
2020-05-14 09:38:08 -04:00
Ashwin Maroli
7baca87e59 Remove outdated constraint in Gemfile 2020-05-14 14:41:24 +05:30
jekyllbot
838575421b Update history to reflect merge of #8177 [ci skip] 2020-05-14 04:58:44 -04:00
Ashwin Maroli
709e633016 Check if entry is a directory once per enumerator (#8177)
Merge pull request 8177
2020-05-14 04:58:42 -04:00
jekyllbot
3c8b6c92e7 Update history to reflect merge of #8167 [ci skip] 2020-05-14 02:20:23 -04:00
matt swanson
f8286b62a2 Switch slugify regex to support more Unicode character groups (#8167)
Merge pull request 8167
2020-05-14 02:20:20 -04:00
Ashwin Maroli
11dd893416 Bump RuboCop to v0.83.x 2020-05-11 18:21:16 +05:30
jekyllbot
8403184b14 Update history to reflect merge of #8154 [ci skip] 2020-05-10 11:02:38 -04:00
Ashwin Maroli
eb2423c6c4 Optimize path sanitization of default front matter (#8154)
Merge pull request 8154
2020-05-10 11:02:36 -04:00
jekyllbot
dc8f57d412 Update history to reflect merge of #8165 [ci skip] 2020-05-10 10:39:26 -04:00
Ashwin Maroli
88e3078a20 Provide invokables for common drop query keys (#8165)
Merge pull request 8165
2020-05-10 10:39:24 -04:00
jekyllbot
9f31fe1c3b Update history to reflect merge of #8170 [ci skip] 2020-05-10 05:29:26 -04:00
Ashwin Maroli
ce483d29a4 Site: Filter through just the docs collection (#8170)
Merge pull request 8170
2020-05-10 05:29:24 -04:00
Ashwin Maroli
001df60ea0 Use Ruby 2.6 on GitHub Actions
until all of the dependencies are installable on Ruby 2.7 on Windows
2020-05-10 12:56:32 +05:30
Ashwin Maroli
80683dde4e Forward-port release history from stable branches 2020-05-10 12:11:49 +05:30
Frank Taillandier
e70e993721 chore: set verion to 4.0.1 2020-05-10 00:41:55 +02:00
jekyllbot
b25d4374ee Update history to reflect merge of #8168 [ci skip] 2020-05-09 18:25:35 -04:00
Frank Taillandier
5375a2747e chore(ci): cache dependencies (#8168)
Merge pull request 8168
2020-05-09 18:25:33 -04:00
Frank Taillandier
8c77d2ece6 Release: v4.0.1 post (#8166)
* docs: 4.0.1 release post
* chore: bump latest version
2020-05-10 00:15:16 +02:00
jekyllbot
0fbdefb7bb Update history to reflect merge of #8075 [ci skip] 2020-05-09 07:29:16 -04:00
Ashwin Maroli
48e6cb18d7 Improve path normalization in liquid_renderer (#8075)
Merge pull request 8075
2020-05-09 07:29:13 -04:00
Frank Taillandier
d51cd070ed chore: use native lazy loading and fixed img 2020-05-09 13:07:02 +02:00
Frank Taillandier
667df335da docs: add french government websites
props @MattiSG
2020-05-09 13:05:19 +02:00
jekyllbot
a5112f3964 Update history to reflect merge of #8162 [ci skip] 2020-05-07 01:47:01 -04:00
Max Chadwick
88c0617588 Fix typo (#8162)
Merge pull request 8162
2020-05-07 01:46:58 -04:00
jekyllbot
190219414a Update history to reflect merge of #8131 [ci skip] 2020-05-06 15:56:58 -04:00
Ashwin Maroli
ed11d2149e Allow disabling import of theme configuration (#8131)
Merge pull request 8131
2020-05-06 15:56:56 -04:00
Frank Taillandier
1f39f7a96e docs: update resources
- ZEIT is now Vercel
- Mention forks like Glim and Bridgetown
- Remove old posts
2020-05-04 19:48:35 +02:00
jekyllbot
1888fc1db6 Update history to reflect merge of #8147 [ci skip] 2020-05-04 05:07:22 -04:00
jeffreytse
4dd1868405 docs: update your-first-plugin.md (#8147)
Merge pull request 8147
2020-05-04 05:07:20 -04:00
jekyllbot
42c0f5b89b Update history to reflect merge of #8042 [ci skip] 2020-04-30 16:50:39 -04:00
Ashwin Maroli
e11cd56a27 Remove dev dependencies from new theme-gem gemspec (#8042)
Merge pull request 8042
2020-04-30 16:50:36 -04:00
jekyllbot
68fda59b07 Update history to reflect merge of #8035 [ci skip] 2020-04-30 13:52:57 -04:00
Ashwin Maroli
c0e5541468 Configure default language for syntax-highlighting (#8035)
Merge pull request 8035
2020-04-30 13:52:55 -04:00
jekyllbot
8de0762923 Update history to reflect merge of #7950 [ci skip] 2020-04-30 13:52:14 -04:00
Ashwin Maroli
f69471cb4a Allow extensionless document in a strict site (#7950)
Merge pull request 7950
2020-04-30 13:52:11 -04:00
jekyllbot
f451129e5a Update history to reflect merge of #8150 [ci skip] 2020-04-30 09:06:27 -04:00
Mike Kasberg
d0f5f0f199 Clarify bundle config in Bundler tutorial (#8150)
Merge pull request 8150
2020-04-30 09:06:24 -04:00
jekyllbot
18f04c61ad Update history to reflect merge of #8113 [ci skip] 2020-04-27 10:06:08 -04:00
Billy Kong
70870328bf Config include trailing slash (#8113)
Merge pull request 8113
2020-04-27 10:06:05 -04:00
jekyllbot
82f1b32896 Update history to reflect merge of #8140 [ci skip] 2020-04-27 08:20:55 -04:00
Daniel Leidert
acf92593f7 Use platforms instead of install_if (#8140)
Merge pull request 8140
2020-04-27 08:20:52 -04:00
jekyllbot
59f1b9a131 Update history to reflect merge of #8138 [ci skip] 2020-04-27 05:21:10 -04:00
Daniel Leidert
47e3644cd5 Escape regex characters in paths to match (#8138)
Merge pull request 8138
2020-04-27 05:21:07 -04:00
jekyllbot
c8c3891cab Update history to reflect merge of #8119 [ci skip] 2020-04-27 03:30:02 -04:00
michaelcurrin
a36bea22e3 Docs: Deploy Jekyll site with GitHub Actions (#8119)
Merge pull request 8119
2020-04-27 03:29:59 -04:00
Frank Taillandier
2bc1e04620 chore(ci): Ruby 2.4 EOL
Stop test against Ruby 2.4
2020-04-26 06:42:28 +02:00
jekyllbot
9916526835 Update history to reflect merge of #8136 [ci skip] 2020-04-25 14:48:02 -04:00
Leo
3acc74c611 docs: Fix broken URL in the "Resources" page (#8136)
Merge pull request 8136
2020-04-25 14:47:59 -04:00
jekyllbot
a489a6b3e5 Update history to reflect merge of #8135 [ci skip] 2020-04-25 03:58:36 -04:00
Aaron K Redshaw
9e9c713f65 Added note about OS specific installation instructions. (#8135)
Merge pull request 8135
2020-04-25 03:58:34 -04:00
jekyllbot
6a5f52b3ef Update history to reflect merge of #8132 [ci skip] 2020-04-24 03:57:36 -04:00
Paramdeo Singh
470b925cdd Added Clear Linux (#8132)
Merge pull request 8132
2020-04-24 03:57:34 -04:00
Ashwin Maroli
79be8abb8f Update expected markup rendered by kramdown
kramdown-2.2.0 adds WAI-ARIA role attributes to rendered TOC and footnotes
ref: c8f0985476
2020-04-23 15:14:33 +05:30
Frank Taillandier
964b80edc6 docs: override default excluded filenames
fix #8009
2020-04-18 22:27:23 +02:00
Frank Taillandier
a2103c3452 Update FUNDING.yml 2020-04-17 10:40:03 +02:00
Ashwin Maroli
00013c3303 Bump RuboCop to v0.82.x 2020-04-16 19:40:10 +05:30
jekyllbot
38157eb9b3 Update history to reflect merge of #8079 [ci skip] 2020-04-15 09:12:09 -04:00
Ashwin Maroli
c8ce49fdfd Improve syntax-highlighting in documentation site (#8079)
Merge pull request 8079
2020-04-15 09:12:06 -04:00
jekyllbot
2ed78413ef Update history to reflect merge of #8122 [ci skip] 2020-04-14 20:12:24 -04:00
jonas-krummenacher
d935b6f7f9 KeyCDN added to third party site (#8122)
Merge pull request 8122
2020-04-14 20:12:22 -04:00
jekyllbot
561531eca6 Update history to reflect merge of #8002 [ci skip] 2020-04-13 11:34:25 -04:00
wzy
e5804f33c2 Add help about Gentoo/Linux (#8002)
Merge pull request 8002
2020-04-13 11:34:22 -04:00
Ashwin Maroli
d0b79bb3bb Use Ruby's English module in gemspec
* Can use `git ls-files` directly without the `-z` option.
* Can consequently use a readable variable `$INPUT_RECORD_SEPARATOR` instead
  of cryptic string `"\x0"` to generate array of paths.


Co-authored-by: Frank Taillandier <frank.taillandier@gmail.com>
2020-04-13 19:56:59 +05:30
Ashwin Maroli
3b32fa27d1 Revert to using "\x0" as INPUT_RECORD_SEPARATOR
This reverts commit 4536edb1b0
because the gem built doesn't include all the expected files.
2020-04-13 19:26:59 +05:30
Frank Taillandier
4536edb1b0 style: Style/SpecialGlobalVars
see: https://rubystyle.guide/#no-cryptic-perlisms
2020-04-13 15:21:20 +02:00
Ashwin Maroli
4e25c36d86 Revert "Pass require path to sub-process when running bundle install" (#8117)
* Revert "Pass require path to sub-process when running `bundle install` (#7618)"

This reverts commit 43b9f13b1a.

* Revert "Update history to reflect merge of #7618 [ci skip]"

This reverts commit 2c605bfeb3.
2020-04-13 12:41:38 +02:00
Frank Taillandier
657d924119 docs: update Ruby versions 2020-04-13 11:06:30 +02:00
jekyllbot
47ed1762d7 Update history to reflect merge of #7990 [ci skip] 2020-04-13 03:52:56 -04:00
Ashwin Maroli
9c0c518d52 Cache URLFilter results of string inputs per site (#7990)
Merge pull request 7990
2020-04-13 03:52:54 -04:00
jekyllbot
b1462571cb Update history to reflect merge of #8094 [ci skip] 2020-04-13 03:51:36 -04:00
Ashwin Maroli
30e7d5ea53 Add slugified_categories URL placeholder (#8094)
Merge pull request 8094
2020-04-13 03:51:33 -04:00
jekyllbot
6db506651a Update history to reflect merge of #7967 [ci skip] 2020-04-13 03:49:18 -04:00
Ashwin Maroli
67380a2738 Clear cached Liquid template scope before render (#7967)
Merge pull request 7967
2020-04-13 03:49:15 -04:00
jekyllbot
1cf04b8857 Update history to reflect merge of #7908 [ci skip] 2020-04-13 03:45:36 -04:00
Ashwin Maroli
be70c3e869 Add static file's basename to its url_placeholder (#7908)
Merge pull request 7908
2020-04-13 03:45:33 -04:00
jekyllbot
2c605bfeb3 Update history to reflect merge of #7618 [ci skip] 2020-04-12 21:34:30 -04:00
Justin Jia
43b9f13b1a Pass require path to sub-process when running bundle install (#7618)
Merge pull request 7618
2020-04-12 21:34:27 -04:00
jekyllbot
f82458bb15 Update history to reflect merge of #7570 [ci skip] 2020-04-12 21:12:50 -04:00
Ashwin Maroli
e42c35c9ac Reduce Jekyll::Renderer instances during a build (#7570)
Merge pull request 7570
2020-04-12 21:12:48 -04:00
Frank Taillandier
ffdab933b8 docs: Netlify and ZEIT Now guides
- Deploy Jekyll 4.0 on Netlify
- Deploy Jekyll on ZEIT Now example
2020-04-10 16:09:13 +02:00
jekyllbot
90f6d171d4 Update history to reflect merge of #8106 [ci skip] 2020-04-09 11:54:14 -04:00
Atlas Cove
7ac4c32181 Update variables.md (#8106)
Merge pull request 8106
2020-04-09 11:54:12 -04:00
jekyllbot
5c24527457 Update history to reflect merge of #8097 [ci skip] 2020-04-05 10:52:51 -04:00
guanicoe
8c3934fd02 Update front-matter.md (#8097)
Merge pull request 8097
2020-04-05 10:52:49 -04:00
jekyllbot
fa9c6d62a2 Update history to reflect merge of #8098 [ci skip] 2020-04-05 10:50:49 -04:00
HTeuMeuLeu
792ecfa310 Add version badge for Custom Sorting of Documents (#8098)
Merge pull request 8098
2020-04-05 10:50:46 -04:00
Ashwin Maroli
3c41a1eb1d Make corrections to tabulating CSV-data tutorial
* Replace highlight tags with triple backticks
* Replace hard tab characters with 2 spaces
* Fix typos
* Change tutorial title
2020-04-05 11:57:32 +05:30
Frank Taillandier
842a809cab fix: padding on liquid code blocks
props @MichaelCurrin
2020-04-04 16:35:45 +02:00
jekyllbot
d4ee27ed70 Update history to reflect merge of #8090 [ci skip] 2020-04-04 10:33:11 -04:00
michaelcurrin
047da6396a Create CSV to table tutorial (#8090)
Merge pull request 8090
2020-04-04 10:33:09 -04:00
jekyllbot
9b29a86bbd Update history to reflect merge of #8088 [ci skip] 2020-04-03 09:47:30 -04:00
Ashwin Maroli
a2c2957f55 Bump Ruby versions on Travis builds (#8088)
Merge pull request 8088
2020-04-03 09:47:27 -04:00
jekyllbot
8b17c0e3b3 Update history to reflect merge of #8092 [ci skip] 2020-04-02 18:22:54 -04:00
Ashwin Maroli
0cd3bb8d19 Render tutorial metadata in documentation site (#8092)
Merge pull request 8092
2020-04-02 18:22:52 -04:00
jekyllbot
2ef3281bad Update history to reflect merge of #8064 [ci skip] 2020-04-01 12:19:40 -04:00
Ashwin Maroli
784a689b13 Simplify Jekyll::Renderer#validate_layout (#8064)
Merge pull request 8064
2020-04-01 12:19:37 -04:00
jekyllbot
46cffe89b8 Update history to reflect merge of #8089 [ci skip] 2020-04-01 08:41:32 -04:00
Ashwin Maroli
bc9774561b Utilize relative_url filter in documentation site (#8089)
Merge pull request 8089
2020-04-01 08:41:30 -04:00
Ashwin Maroli
1412928dde Bump RuboCop to v0.81.x 2020-04-01 14:21:24 +05:30
jekyllbot
9614cb67d4 Update history to reflect merge of #8083 [ci skip] 2020-03-30 10:44:07 -04:00
Ashwin Maroli
f0ab09968e Reduce array allocations from StaticFile#path (#8083)
Merge pull request 8083
2020-03-30 10:44:04 -04:00
jekyllbot
539e712c41 Update history to reflect merge of #7987 [ci skip] 2020-03-30 10:36:40 -04:00
Ashwin Maroli
6bc27f9fdf Quicker categories for documents without superdirs (#7987)
Merge pull request 7987
2020-03-30 10:36:37 -04:00
jekyllbot
f7bff1c5c4 Update history to reflect merge of #8081 [ci skip] 2020-03-29 16:11:19 -04:00
Ashwin Maroli
09c448449e Add default front matter for tutorials collection (#8081)
Merge pull request 8081
2020-03-29 16:11:17 -04:00
jekyllbot
8d3c2f6a96 Update history to reflect merge of #8067 [ci skip] 2020-03-29 12:40:30 -04:00
Ashwin Maroli
e972065325 Reduce Pathname objects from front matter defaults (#8067)
Merge pull request 8067
2020-03-29 12:40:28 -04:00
jekyllbot
7860d1bac0 Update history to reflect merge of #8041 [ci skip] 2020-03-26 10:11:35 -04:00
Ashwin Maroli
237d08a76c Optimize Kramdown::JekyllDocument#to_html calls (#8041)
Merge pull request 8041
2020-03-26 10:11:33 -04:00
jekyllbot
ef6b382a48 Update history to reflect merge of #7992 [ci skip] 2020-03-26 09:39:49 -04:00
Ashwin Maroli
b84ba5accc Add PageDrop to provide Liquid templates with data (#7992)
Merge pull request 7992
2020-03-26 09:39:47 -04:00
jekyllbot
a011579fe4 Update history to reflect merge of #8069 [ci skip] 2020-03-22 12:04:36 -04:00
Ashwin Maroli
a1401c6fe9 Use layout.path when rendering the Liquid layout (#8069)
Merge pull request 8069
2020-03-22 12:04:33 -04:00
jekyllbot
83decb42f6 Update history to reflect merge of #8063 [ci skip] 2020-03-20 06:40:19 -04:00
Kieran Barker
1fe5bd0cf5 Remove extra paragraph tags (#8063)
Merge pull request 8063
2020-03-20 06:40:17 -04:00
jekyllbot
0683ab143e Update history to reflect merge of #8060 [ci skip] 2020-03-19 06:10:27 -04:00
Tobias Klüpfel
dc5e1d7056 Update 09-collections.md (#8060)
Merge pull request 8060
2020-03-19 06:10:25 -04:00
jekyllbot
c193677dc5 Update history to reflect merge of #8056 [ci skip] 2020-03-16 04:24:46 -04:00
Ashwin Maroli
7948578cd3 Mirror spec.homepage as metadata["homepage_uri"] (#8056)
Merge pull request 8056
2020-03-16 04:24:45 -04:00
jekyllbot
e9174dfd3b Update history to reflect merge of #8055 [ci skip] 2020-03-16 03:06:32 -04:00
Ashwin Maroli
ee5d0cffd6 Remove version-constraint relaxation for i18n gem (#8055)
Merge pull request 8055
2020-03-16 03:06:30 -04:00
jekyllbot
190a35dc9a Update history to reflect merge of #8057 [ci skip] 2020-03-15 18:49:57 -04:00
Frank Taillandier
a4b1ca2c75 chore: simplify require for Jekyll::VERSION (#8057)
Merge pull request 8057
2020-03-15 18:49:54 -04:00
jekyllbot
88360bd17d Update history to reflect merge of #8028 [ci skip] 2020-03-12 10:58:20 -04:00
Ashwin Maroli
f826b8b5ea Fix documents custom-ordering logic (#8028)
Merge pull request 8028
2020-03-12 10:58:17 -04:00
Frank Taillandier
1115eebe15 docs: add typeform 2020-03-10 01:24:32 +01:00
Frank Taillandier
325e6bb3f8 docs: add page layout to philosophy 2020-03-10 01:21:06 +01:00
Frank Taillandier
256b0875cb site: make resources editable 2020-03-10 01:20:31 +01:00
jekyllbot
a1c18b6e87 Update history to reflect merge of #8048 [ci skip] 2020-03-07 11:40:26 -05:00
Riccardo Porreca
3e182ef25e Non-deprecated vendor/bundle path configuration (#8048)
Merge pull request 8048
2020-03-07 11:40:24 -05:00
Frank Taillandier
422470dc6e docs: ZEIT and Render 2020-03-07 10:36:49 +01:00
Frank Taillandier
c8d673c984 docs: external links
Third-party services, deployment services
2020-03-07 09:57:14 +01:00
jekyllbot
27ca06326a Update history to reflect merge of #8047 [ci skip] 2020-03-06 11:08:59 -05:00
Ashwin Maroli
0f4c8d2248 Allow multiple binary operator in where_exp filter (#8047)
Merge pull request 8047
2020-03-06 11:08:56 -05:00
jekyllbot
ab6ef0b257 Update history to reflect merge of #8044 [ci skip] 2020-03-04 10:14:55 -05:00
Ashwin Maroli
ea57ef78da Simplify Jekyll::Hooks.trigger logic (#8044)
Merge pull request 8044
2020-03-04 10:14:53 -05:00
Frank Taillandier
6ae640755f chore: remove question template 2020-03-02 16:22:42 +01:00
Frank Taillandier
028c306c11 chore: redirect questions to the forum 2020-03-02 16:21:28 +01:00
jekyllbot
e6d082488c Update history to reflect merge of #8037 [ci skip] 2020-02-28 14:29:49 -05:00
Eric Knibbe
b05e6ee8ae docs: improvements for note boxes (#8037)
Merge pull request 8037
2020-02-28 14:29:47 -05:00
jekyllbot
53bb8bd7d3 Update history to reflect merge of #8032 [ci skip] 2020-02-27 08:14:17 -05:00
Ashwin Maroli
7ba99f0010 Docs: Render full contents of just the latest post (#8032)
Merge pull request 8032
2020-02-27 08:14:15 -05:00
jekyllbot
70fc6b377d Update history to reflect merge of #8030 [ci skip] 2020-02-27 00:22:06 -05:00
Matt Penna
0378c3628c Corrected command to modify PATH (#8030)
Merge pull request 8030
2020-02-27 00:22:03 -05:00
jekyllbot
4a6f91810c Update history to reflect merge of #8029 [ci skip] 2020-02-26 19:46:28 -05:00
Matt Penna
a9fb26fc33 Corrected command to modify PATH (#8029)
Merge pull request 8029
2020-02-26 19:46:25 -05:00
jekyllbot
aef8f11f6c Update history to reflect merge of #8013 [ci skip] 2020-02-26 11:36:22 -05:00
Ashwin Maroli
3d045d277e Optimize markdown parsing with Kramdown by reusing the options and parser objects (#8013)
Merge pull request 8013
2020-02-26 11:36:19 -05:00
jekyllbot
b1573b6292 Update history to reflect merge of #8026 [ci skip] 2020-02-26 01:28:38 -05:00
Dmitry Egorov
39e2a8b5f5 [Docs] Fix asset link ref in step-by-step tutorial (#8026)
Merge pull request 8026
2020-02-26 01:28:36 -05:00
jekyllbot
4d131eb069 Update history to reflect merge of #8020 [ci skip] 2020-02-24 18:44:13 -05:00
Ashwin Maroli
68066ce268 Optimize rendering of the documentation site (#8020)
Merge pull request 8020
2020-02-24 18:44:11 -05:00
jekyllbot
002ed48fd8 Update history to reflect merge of #8021 [ci skip] 2020-02-24 05:43:28 -05:00
Gareth Mcshane
331d3f3ffe remove leading slash from Sass file location (#8021)
Merge pull request 8021
2020-02-24 05:43:25 -05:00
jekyllbot
3e440a9cc1 Update history to reflect merge of #8017 [ci skip] 2020-02-21 06:08:50 -05:00
Eric Knibbe
8c3276133d docs: improve highlighting of code blocks (#8017)
Merge pull request 8017
2020-02-21 06:08:48 -05:00
jekyllbot
1a0a4b709a Update history to reflect merge of #8015 [ci skip] 2020-02-20 12:54:52 -05:00
Ashwin Maroli
707741c0f8 Configure kramdown toc_levels as array by default (#8015)
Merge pull request 8015
2020-02-20 12:54:49 -05:00
jekyllbot
3fb94fbca0 Update history to reflect merge of #7928 [ci skip] 2020-02-20 12:47:35 -05:00
Ashwin Maroli
558e05eb73 Add an option to easily disable disk-cache (#7928)
Merge pull request 7928
2020-02-20 12:47:32 -05:00
jekyllbot
ba3e3002c4 Update history to reflect merge of #8016 [ci skip] 2020-02-20 12:46:18 -05:00
Mark Bennett
9739246a89 Add Visual Studio Code Development Container (#8016)
Merge pull request 8016
2020-02-20 12:46:16 -05:00
jekyllbot
4a1f00e940 Update history to reflect merge of #8014 [ci skip] 2020-02-19 11:28:56 -05:00
Ashwin Maroli
d65a09b1d9 Update unit tests for Kramdown-based converter (#8014)
Merge pull request 8014
2020-02-19 11:28:54 -05:00
Ashwin Maroli
0cb0b8ad8c Bump JRuby version used in Travis CI build 2020-02-19 16:30:23 +05:30
jekyllbot
fc694fb496 Update history to reflect merge of #8012 [ci skip] 2020-02-19 01:48:29 -05:00
Frank Taillandier
6adb601232 chore(deps): rubocop 0.80.0 (#8012)
Merge pull request 8012
2020-02-19 01:48:26 -05:00
jekyllbot
99f91b551c Update history to reflect merge of #8007 [ci skip] 2020-02-17 02:49:10 -05:00
vhermecz
b5d8a5f409 Fix file references in Step by Step Tutorial's Assets step (#8007)
Merge pull request 8007
2020-02-17 02:49:08 -05:00
Frank Taillandier
d4e2d19d7e docs: VS Code plugins and config autocompletion
fix #7884
2020-02-14 14:08:21 +01:00
jekyllbot
5ee36686a9 Update history to reflect merge of #7413 [ci skip] 2020-02-13 13:40:03 -05:00
dkalev
6064ce8eba Update 07-assets.md (#7413)
Merge pull request 7413
2020-02-13 13:39:59 -05:00
jekyllbot
542d9ce79a Update history to reflect merge of #8000 [ci skip] 2020-02-12 08:48:59 -05:00
Radoslav Karlík
d7c110d568 Add Kentico Kontent CMS integration to resources (#8000)
Merge pull request 8000
2020-02-12 08:48:56 -05:00
jekyllbot
529f0f7030 Update history to reflect merge of #7696 [ci skip] 2020-02-06 11:11:54 -05:00
Ashwin Maroli
8bb76c865f Optimize Jekyll::Filters#item_property (#7696)
Merge pull request 7696
2020-02-06 11:11:50 -05:00
jekyllbot
44062561f0 Update history to reflect merge of #7865 [ci skip] 2020-02-06 10:13:49 -05:00
Liam Bigelow
6097d3b068 Include _config.yml in a new theme's gemspec (#7865)
Merge pull request 7865
2020-02-06 10:13:46 -05:00
jekyllbot
ac49cea881 Update history to reflect merge of #7996 [ci skip] 2020-02-06 03:28:13 -05:00
dgolant
a58d71a311 Update 03-front-matter.md (#7996)
Merge pull request 7996
2020-02-06 03:28:10 -05:00
jekyllbot
68e4e901c2 Update history to reflect merge of #7994 [ci skip] 2020-02-05 07:10:59 -05:00
lizharris
35077ff0a7 Fix English grammar error. (#7994)
Merge pull request 7994
2020-02-05 07:10:56 -05:00
jekyllbot
2c04ddcabd Update history to reflect merge of #7821 [ci skip] 2020-02-04 00:24:42 -05:00
Ashwin Maroli
5cc78db648 Test where filter handling numeric property values (#7821)
Merge pull request 7821
2020-02-04 00:24:40 -05:00
jekyllbot
4eb7a408e4 Update history to reflect merge of #7870 [ci skip] 2020-02-03 12:08:10 -05:00
Ben Stolovitz
7cac1f9096 Document sorting two documents by their date (#7870)
Merge pull request 7870
2020-02-03 12:08:07 -05:00
jekyllbot
b98a919351 Update history to reflect merge of #7989 [ci skip] 2020-02-01 23:31:16 -05:00
R.P. Pedraza
0aa29046a7 Correct documentation of filters (#7989)
Merge pull request 7989
2020-02-01 23:31:14 -05:00
jekyllbot
05cbe06c26 Update history to reflect merge of #7948 [ci skip] 2020-01-31 13:07:12 -05:00
Ashwin Maroli
389eb88c20 Attain Ruby 3.0 compatibility (#7948)
Merge pull request 7948
2020-01-31 13:07:08 -05:00
jekyllbot
5be7faac3e Update history to reflect merge of #7988 [ci skip] 2020-01-31 12:29:17 -05:00
Ashwin Maroli
5da8271e9b Return relative_url if site.url is an empty string (#7988)
Merge pull request 7988
2020-01-31 12:29:14 -05:00
jekyllbot
f3b4cad057 Update history to reflect merge of #7985 [ci skip] 2020-01-29 17:01:58 -05:00
Aaron Adams
b8c4e2aaf7 Move --baseurl to build command options (#7985)
Merge pull request 7985
2020-01-29 17:01:56 -05:00
jekyllbot
48ee086361 Update history to reflect merge of #7979 [ci skip] 2020-01-20 03:38:19 -05:00
Lizzy Kate
fc062db1e9 Fix YAML representation of group_by result (#7979)
Merge pull request 7979
2020-01-20 03:38:17 -05:00
Frank Taillandier
ccb6ee9db5 chore(deps): mercenary 0.4.0 2020-01-19 01:01:18 +01:00
jekyllbot
b2639ceb59 Update history to reflect merge of #7978 [ci skip] 2020-01-17 11:06:02 -05:00
csquare
c34d185d8d Correct a sentence in the documentation (#7978)
Merge pull request 7978
2020-01-17 11:05:59 -05:00
Frank Taillandier
333090d36e chore(ci): update to actions/checkoutv2
Improved performance: fetches only a single commit by default.

https://github.com/actions/checkout#whats-new
2020-01-16 20:30:05 +01:00
jekyllbot
32a5bcda3d Update history to reflect merge of #7940 [ci skip] 2020-01-15 10:02:40 -05:00
Patrik Eriksson
b9af7d3564 docs: remove watch option in config (#7940)
Merge pull request 7940
2020-01-15 10:02:37 -05:00
jekyllbot
9bc17cf40c Update history to reflect merge of #7975 [ci skip] 2020-01-15 09:14:22 -05:00
ddocs
f9a8bdba50 Corre (#7975)
Merge pull request 7975
2020-01-15 09:14:20 -05:00
jekyllbot
6cf0d7df39 Update history to reflect merge of #7974 [ci skip] 2020-01-15 08:48:17 -05:00
Ashwin Maroli
e826ae6e2b Remove post-install message from gemspec (#7974)
Merge pull request 7974
2020-01-15 08:48:15 -05:00
jekyllbot
5fa7fcc060 Update history to reflect merge of #7970 [ci skip] 2020-01-15 01:06:34 -05:00
Artyom Tokachev
34d0dd6c7d Bump RuboCop to v0.79.x (#7970)
Merge pull request 7970
2020-01-15 01:06:31 -05:00
jekyllbot
654d381039 Update history to reflect merge of #7955 [ci skip] 2019-12-31 12:15:07 -05:00
JC
4c0ba3a6bd docs: fix broken link (#7955)
Merge pull request 7955
2019-12-31 12:15:04 -05:00
jekyllbot
b0cca4c1b4 Update history to reflect merge of #7954 [ci skip] 2019-12-30 03:36:18 -05:00
Phil Nash
af65fa45e3 Adds some documentation for the :clean, :on_obsolete hook (#7954)
Merge pull request 7954
2019-12-30 03:36:16 -05:00
Frank Taillandier
af0f6aad34 Update FUNDING.yml 2019-12-25 23:16:50 +01:00
jekyllbot
ba47628fca Update history to reflect merge of #7779 [ci skip] 2019-12-25 12:37:01 -05:00
Ashwin Maroli
41c0cce5ea Test with JRuby 9.2.9.0 (#7779)
Merge pull request 7779
2019-12-25 12:36:59 -05:00
Frank Taillandier
67f387dfcf ci: test with stable Ruby releases
2.7.0 is out🎄
2019-12-25 14:23:03 +01:00
jekyllbot
f5ce5eb23f Update history to reflect merge of #7941 [ci skip] 2019-12-22 04:31:05 -05:00
Johan Wigert
c814089708 Changed deprecated command in themes documentation (#7941)
Merge pull request 7941
2019-12-22 04:31:03 -05:00
jekyllbot
83238b449a Update history to reflect merge of #7937 [ci skip] 2019-12-17 19:48:52 -05:00
Luis Puente
998470d00f Update 09-collections.md (#7937)
Merge pull request 7937
2019-12-17 19:48:49 -05:00
jekyllbot
fc6c2eca8b Update history to reflect merge of #7878 [ci skip] 2019-12-10 10:11:25 -05:00
Ivan Gromov
eb81dc0e96 Update item_property to recognize integers (#7878)
Merge pull request 7878
2019-12-10 10:11:22 -05:00
Frank Taillandier
7ad84ef3c5 docs: explain PATH for new command 2019-12-10 13:55:45 +01:00
jekyllbot
96e2ea1ad0 Update history to reflect merge of #7931 [ci skip] 2019-12-10 05:20:11 -05:00
Muhammed Salih
c3dc576e3c Include path in jekyll new commands (Usage docs) (#7931)
Merge pull request 7931
2019-12-10 05:20:08 -05:00
Frank Taillandier
866ff6a07d docs: typo 2019-12-05 16:04:12 +01:00
Frank Taillandier
c8b6b806e2 Merge pull request #7927 from AninditaBasu/patch-2
Update generators.md
2019-12-05 16:03:34 +01:00
Frank Taillandier
b1e2266878 Update index.md 2019-12-05 12:19:54 +01:00
jekyllbot
a54d5526c5 Update history to reflect merge of #7926 [ci skip] 2019-12-05 04:39:31 -05:00
Anindita Basu
98522b03ca Improve index page of Jekyll documentation (#7926)
Merge pull request 7926
2019-12-05 04:39:29 -05:00
Anindita Basu
18479e7f5a Update generators.md
Based on the info given in Issue 7897
2019-12-05 13:21:15 +05:30
jekyllbot
9557e68551 Update history to reflect merge of #7920 [ci skip] 2019-12-03 08:22:40 -05:00
Alexandre ZANNI
957c9cee9b add install instructions for ArchLinux and openSUSE (#7920)
Merge pull request 7920
2019-12-03 08:22:38 -05:00
jekyllbot
9867669cb6 Update history to reflect merge of #7918 [ci skip] 2019-12-03 03:31:28 -05:00
Patrik Eriksson
89dc5c2857 docs: add options for watch and force polling (#7918)
Merge pull request 7918
2019-12-03 03:31:26 -05:00
jekyllbot
9292b719bd Update history to reflect merge of #7919 [ci skip] 2019-12-02 07:55:20 -05:00
Patrik Eriksson
442d4dfb2e docs: add short serve command for livereload (#7919)
Merge pull request 7919
2019-12-02 07:55:18 -05:00
Frank Taillandier
c8cb0ea8e0 docs: macOS 10.15 comes with Ruby 2.6.3 2019-12-01 23:04:35 +01:00
jekyllbot
12b7d83664 Update history to reflect merge of #7909 [ci skip] 2019-11-30 10:50:38 -05:00
Zlatan Vasović
cc0b6fa0da Use bash executable consistently (#7909)
Merge pull request 7909
2019-11-30 10:50:36 -05:00
jekyllbot
1d7d11be61 Update history to reflect merge of #7893 [ci skip] 2019-11-27 13:48:29 -05:00
Gabriel Rubens
0bd9f0515d Update rubocop (#7893)
Merge pull request 7893
2019-11-27 13:48:26 -05:00
jekyllbot
d6d770f6b5 Update history to reflect merge of #7910 [ci skip] 2019-11-26 13:55:55 -05:00
Jason Taylor
6aa8aafa3a Upgrade rake to use version 13. Solves #7900 (#7910)
Merge pull request 7910
2019-11-26 13:55:52 -05:00
jekyllbot
c964be7628 Update history to reflect merge of #7906 [ci skip] 2019-11-20 10:31:51 -05:00
J·Y
42bf5675e9 Disambiguate the placeholder of permalink (#7906)
Merge pull request 7906
2019-11-20 10:31:49 -05:00
Frank Taillandier
88a2835afe Merge pull request #7905 from hteumeuleu/patch-1
Update link to the "Liquid templating system"
2019-11-19 22:04:10 +01:00
HTeuMeuLeu
acc2636894 Update link to the "Liquid templating system" 2019-11-19 22:01:30 +01:00
Frank Taillandier
14299310a4 Merge pull request #7899 from iBug/patch-1
Add back a missing colon to /resources/ page
2019-11-12 08:49:56 +01:00
jekyllbot
04527c5b8e Update history to reflect merge of #7896 [ci skip] 2019-11-12 02:47:29 -05:00
Damien St Pierre
e1b3d07b7e Docs: Clarify organizing pages into subfolders (#7896)
Merge pull request 7896
2019-11-12 02:47:27 -05:00
iBug ♦
c5b3ffd3e0 Add back a missing colon 2019-11-12 12:41:37 +08:00
jekyllbot
6cee92229c Update history to reflect merge of #7885 [ci skip] 2019-11-08 11:05:11 -05:00
Ashwin Maroli
b1ee88397b Split action steps to avoid using && on Windows (#7885)
Merge pull request 7885
2019-11-08 11:05:08 -05:00
jekyllbot
848759ca02 Update history to reflect merge of #7887 [ci skip] 2019-11-02 07:35:14 -04:00
Arthur Zey
2fb2268b57 fixed grammatical error (it's --> its) (#7887)
Merge pull request 7887
2019-11-02 07:35:12 -04:00
jekyllbot
51a07aea53 Update history to reflect merge of #7883 [ci skip] 2019-10-30 12:01:29 -04:00
Grzegorz Kaczorek
42c48b4f34 Better documentation for Jekyll::Converters::Identity (#7883)
Merge pull request 7883
2019-10-30 12:01:27 -04:00
jekyllbot
6a57842395 Update history to reflect merge of #7875 [ci skip] 2019-10-30 11:06:22 -04:00
sharath Kumar
744bbb0e07 add new theme source (#7875)
Merge pull request 7875
2019-10-30 11:06:19 -04:00
jekyllbot
b0e15a5f16 Update history to reflect merge of #7879 [ci skip] 2019-10-29 06:26:46 -04:00
J·Y
aee034f332 Replace `` with html tag (#7879)
Merge pull request 7879
2019-10-29 06:26:43 -04:00
jekyllbot
2e3154e288 Update history to reflect merge of #7873 [ci skip] 2019-10-22 09:19:44 -04:00
Itay Shakury
3174d19ee5 clarify _config.yml/collections type (#7873)
Merge pull request 7873
2019-10-22 09:19:42 -04:00
Frank Taillandier
f8b2748c09 site: remove non jekyll sites 2019-10-22 02:07:09 +02:00
jekyllbot
dd7d03eccd Update history to reflect merge of #7846 [ci skip] 2019-10-16 03:21:06 -04:00
James Buckley
22a974200d Rubocop version upgrade (#7846)
Merge pull request 7846
2019-10-16 03:21:04 -04:00
jekyllbot
4d0457bab2 Update history to reflect merge of #7857 [ci skip] 2019-10-11 07:40:40 -04:00
Simone Arpe
d9de94bfb5 Update third-party.md (#7857)
Merge pull request 7857
2019-10-11 07:40:38 -04:00
jekyllbot
3437135837 Update history to reflect merge of #7856 [ci skip] 2019-10-11 04:38:28 -04:00
David Zhang
30fcdcfa04 Doc: minor fix, should be greater or equal to min version [ci skip] (#7856)
Merge pull request 7856
2019-10-11 04:38:26 -04:00
jekyllbot
d9c6e2062a Update history to reflect merge of #7825 [ci skip] 2019-10-09 05:25:05 -04:00
Ward Sandler
f8d5772f29 link for memberships (#7825)
Merge pull request 7825
2019-10-09 05:25:03 -04:00
Frank Taillandier
83285056b3 Merge pull request #7848 from coliff/patch-3
Update html5shiv.min.js
2019-10-07 11:14:08 +02:00
Frank Taillandier
ede7c0188f Merge pull request #7847 from coliff/patch-2
Remove Generator meta tag
2019-10-07 11:07:37 +02:00
Christian Oliff
a92b564aaf Update html5shiv.min.js
From: https://github.com/aFarkas/html5shiv/blob/master/dist/html5shiv.min.js
2019-10-07 11:20:12 +09:00
Christian Oliff
6fbf908bcb Remove Generator meta tag (as this is already included in the SEO plugin) 2019-10-07 11:16:36 +09:00
Takashi Udagawa
3eab32fad7 Fix RuboCop Performance offenses in test files (#7839)
* Replace select.first with find
* Replace select.count with count
2019-10-06 12:00:25 +05:30
Frank Taillandier
de6548f1ba docs: link to themes galleries 2019-10-03 14:08:53 +02:00
Frank Taillandier
036dbe6349 Docs: add jamstackthemes.dev 2019-10-03 14:05:04 +02:00
Ashwin Maroli
6afaa369e1 [GH Actions]: Fetch repo 5 commits deep 2019-09-26 23:17:14 +05:30
jekyllbot
f0542b97f0 Update history to reflect merge of #7822 [ci skip] 2019-09-26 13:33:01 -04:00
Edward Thomson
275702edd5 Ci/GitHub actions (#7822)
Merge pull request 7822
2019-09-26 13:32:59 -04:00
Ashwin Maroli
f00a642901 Improve aesthetics of JekyllConf titles [skip ci] 2019-09-25 14:40:58 +05:30
jekyllbot
388a37208e Update history to reflect merge of #7826 [ci skip] 2019-09-25 02:01:42 -04:00
Mike Neumegen
dc6df7c73a Update JekyllConf page with 2019 talks (#7826)
Merge pull request 7826
2019-09-25 02:01:40 -04:00
jekyllbot
2e11e13455 Update history to reflect merge of #7823 [ci skip] 2019-09-23 06:05:33 -04:00
İsmail Arılık
98498e2e99 Update old GitHub wiki URL with new one (#7823)
Merge pull request 7823
2019-09-23 06:05:31 -04:00
Ashwin Maroli
7e291349d3 Gitignore all folder names with -cache [skip ci] 2019-09-15 12:43:35 +05:30
jekyllbot
d8de658089 Update history to reflect merge of #7815 [ci skip] 2019-09-11 22:45:27 -04:00
Kayce Basques
dd409b7ebc Rephrase the CircleCI v2 section (#7815)
Merge pull request 7815
2019-09-11 22:45:26 -04:00
jekyllbot
9f389e0ada Update history to reflect merge of #7812 [ci skip] 2019-09-05 10:03:51 -04:00
Ashwin Maroli
b54544c68b Clarify docs for static files in collection (#7812)
Merge pull request 7812
2019-09-05 10:03:49 -04:00
jekyllbot
b8e673b149 Update history to reflect merge of #7805 [ci skip] 2019-08-29 13:54:10 -04:00
Ivan Raszl
b3b2ec21a6 Add dropped title: Staff to the code (#7805)
Merge pull request 7805
2019-08-29 13:54:07 -04:00
jekyllbot
b66dabac9d Update history to reflect merge of #7768 [ci skip] 2019-08-22 14:03:26 -04:00
Viktor Szakats
650dcc637a serve: add support for ECC certificates (#7768)
Merge pull request 7768
2019-08-22 14:03:23 -04:00
jekyllbot
c55eaf7724 Update history to reflect merge of #7793 [ci skip] 2019-08-22 09:51:35 -04:00
Nikhil Benesch
55fba8ff31 Memoize absolute_url and relative_url filters (#7793)
Merge pull request 7793
2019-08-22 09:51:33 -04:00
Harry Wood
b9963f38b3 blog typo 'and support' unfinished sentence (#7797) 2019-08-21 14:01:53 +05:30
Frank Taillandier
164b0e2794 Merge pull request #7795 from XhmikosR/patch-1
Update 2019-08-19-jekyll-4-0-0-released.markdown
2019-08-20 22:49:19 +02:00
XhmikosR
6b851f0394 Update 2019-08-19-jekyll-4-0-0-released.markdown
Fix minor typo
2019-08-20 19:08:07 +03:00
jekyllbot
45b2c9e4ed Update history to reflect merge of #7782 [ci skip] 2019-08-20 10:46:10 -04:00
353 changed files with 10280 additions and 3454 deletions

55
.devcontainer/Dockerfile Normal file
View File

@@ -0,0 +1,55 @@
#-------------------------------------------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
#-------------------------------------------------------------------------------------------------------------
FROM ruby:2
# Avoid warnings by switching to noninteractive
ENV DEBIAN_FRONTEND=noninteractive
# This Dockerfile adds a non-root user with sudo access. Use the "remoteUser"
# property in devcontainer.json to use it. On Linux, the container user's GID/UIDs
# will be updated to match your local UID/GID (when using the dockerFile property).
# See https://aka.ms/vscode-remote/containers/non-root-user for details.
ARG USERNAME=vscode
ARG USER_UID=1000
ARG USER_GID=$USER_UID
# Configure apt and install packages
RUN apt-get update \
&& apt-get -y install --no-install-recommends apt-utils dialog locales 2>&1 \
# Verify git, process tools installed
&& apt-get -y install git openssh-client iproute2 procps lsb-release \
#
# Install ruby-debug-ide and debase
&& gem install ruby-debug-ide \
&& gem install debase \
#
# Install node.js
&& apt-get -y install curl software-properties-common \
&& curl -sL https://deb.nodesource.com/setup_13.x | bash - \
&& apt-get -y install nodejs \
#
# Create a non-root user to use if preferred - see https://aka.ms/vscode-remote/containers/non-root-user.
&& groupadd --gid $USER_GID $USERNAME \
&& useradd -s /bin/bash --uid $USER_UID --gid $USER_GID -m $USERNAME \
# [Optional] Add sudo support for the non-root user
&& apt-get install -y sudo \
&& echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME\
&& chmod 0440 /etc/sudoers.d/$USERNAME \
#
# Clean up
&& apt-get autoremove -y \
&& apt-get clean -y \
&& rm -rf /var/lib/apt/lists/*
# Set the locale
RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
dpkg-reconfigure --frontend=noninteractive locales && \
update-locale LANG=en_US.UTF-8
ENV LANG en_US.UTF-8
# Switch back to dialog for any ad-hoc use of apt-get
ENV DEBIAN_FRONTEND=dialog

View File

@@ -0,0 +1,26 @@
// For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at:
// https://github.com/microsoft/vscode-dev-containers/tree/v0.101.1/containers/ruby-2
{
"name": "Ruby 2",
"dockerFile": "Dockerfile",
// Set *default* container specific settings.json values on container create.
"settings": {
"terminal.integrated.shell.linux": "/bin/bash"
},
// Add the IDs of extensions you want installed when the container is created.
"extensions": [
"rebornix.Ruby"
]
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Use 'postCreateCommand' to run commands after the container is created.
"postCreateCommand": "bundle install",
// Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root.
// "remoteUser": "vscode"
}

1
.gitattributes vendored Normal file
View File

@@ -0,0 +1 @@
* text=auto

View File

@@ -10,24 +10,24 @@ See the [support guidelines](https://jekyllrb.com/docs/support/)
Whether you're a developer, a designer, or just a Jekyll devotee, there are lots of ways to contribute. Here's a few ideas:
* [Install Jekyll on your computer](https://jekyllrb.com/docs/installation/) and kick the tires. Does it work? Does it do what you'd expect? If not, [open an issue](https://github.com/jekyll/jekyll/issues/new) and let us know.
* Comment on some of the project's [open issues](https://github.com/jekyll/jekyll/issues). Have you experienced the same problem? Know a work around? Do you have a suggestion for how the feature could be better?
* Read through the [documentation](https://jekyllrb.com/docs/home/), and click the "improve this page" button, any time you see something confusing, or have a suggestion for something that could be improved.
* Browse through the [Jekyll discussion forum](https://talk.jekyllrb.com/), and lend a hand answering questions. There's a good chance you've already experienced what another user is experiencing.
* Find an [open issue](https://github.com/jekyll/jekyll/issues) (especially [those labeled `help-wanted`](https://github.com/jekyll/jekyll/issues?q=is%3Aopen+is%3Aissue+label%3Ahelp-wanted)), and submit a proposed fix. If it's your first pull request, we promise we won't bite, and are glad to answer any questions.
* Help evaluate [open pull requests](https://github.com/jekyll/jekyll/pulls), by testing the changes locally and reviewing what's proposed.
- [Install Jekyll on your computer](https://jekyllrb.com/docs/installation/) and kick the tires. Does it work? Does it do what you'd expect? If not, [open an issue](https://github.com/jekyll/jekyll/issues/new) and let us know.
- Comment on some of the project's [open issues](https://github.com/jekyll/jekyll/issues). Have you experienced the same problem? Know a work around? Do you have a suggestion for how the feature could be better?
- Read through the [documentation](https://jekyllrb.com/docs/home/), and click the "improve this page" button, any time you see something confusing, or have a suggestion for something that could be improved.
- Browse through the [Jekyll discussion forum](https://talk.jekyllrb.com/), and lend a hand answering questions. There's a good chance you've already experienced what another user is experiencing.
- Find an [open issue](https://github.com/jekyll/jekyll/issues) (especially [those labeled `help-wanted`](https://github.com/jekyll/jekyll/issues?q=is%3Aopen+is%3Aissue+label%3Ahelp-wanted)), and submit a proposed fix. If it's your first pull request, we promise we won't bite, and are glad to answer any questions.
- Help evaluate [open pull requests](https://github.com/jekyll/jekyll/pulls), by testing the changes locally and reviewing what's proposed.
## Submitting a pull request
### Pull requests generally
* The smaller the proposed change, the better. If you'd like to propose two unrelated changes, submit two pull requests.
- The smaller the proposed change, the better. If you'd like to propose two unrelated changes, submit two pull requests.
* The more information, the better. Make judicious use of the pull request body. Describe what changes were made, why you made them, and what impact they will have for users.
- The more information, the better. Make judicious use of the pull request body. Describe what changes were made, why you made them, and what impact they will have for users.
* If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/).
- If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/).
* If you're submitting a code contribution, be sure to read the [code contributions](#code-contributions) section below.
- If you're submitting a code contribution, be sure to read the [code contributions](#code-contributions) section below.
### Submitting a pull request via github.com
@@ -76,11 +76,12 @@ If you ever need to update our documentation with an icon that is not already av
5. Click `Generate Font` on the bottom-horizontal-bar.
6. Inspect the included icons and proceed by clicking `Download`.
7. Extract the font files and adapt the CSS to the paths we use in Jekyll:
- Copy the entire `fonts` directory over and overwrite existing ones at `<jekyll>/docs/`.
- Copy the contents of `selection.json` and overwrite existing content inside `<jekyll>/docs/icomoon-selection.json`.
- Copy the entire `@font-face {}` declaration and only the **new-icon(s)' css declarations** further below, to update the
- Copy the entire `fonts` directory over and overwrite existing ones at `<jekyll>/docs/`.
- Copy the contents of `selection.json` and overwrite existing content inside `<jekyll>/docs/icomoon-selection.json`.
- Copy the entire `@font-face {}` declaration and only the **new-icon(s)' css declarations** further below, to update the
`<jekyll>/docs/_sass/_font-awesome.scss` sass partial.
- Fix paths in the `@font-face {}` declaration by adding `../` before `fonts/FontAwesome.*` like so:
- Fix paths in the `@font-face {}` declaration by adding `../` before `fonts/FontAwesome.*` like so:
`('../fonts/Fontawesome.woff?9h6hxj')`.
### Adding plugins
@@ -101,21 +102,21 @@ If your contribution changes any Jekyll behavior, make sure to update the docume
#### Tests
* If you're creating a small fix or patch to an existing feature, a simple test is more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need you can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks).
- If you're creating a small fix or patch to an existing feature, a simple test is more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need you can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks).
* If it's a brand new feature, create a new [Cucumber](https://github.com/cucumber/cucumber/) feature, reusing existing steps where appropriate.
- If it's a brand new feature, create a new [Cucumber](https://github.com/cucumber/cucumber/) feature, reusing existing steps where appropriate.
### Code contributions generally
* Jekyll uses the [Rubocop](https://github.com/bbatsov/rubocop) static analyzer to ensure that contributions follow the [GitHub Ruby Styleguide](https://github.com/styleguide/ruby). Please check your code using `script/fmt` and resolve any errors before pushing your branch.
- Jekyll uses the [Rubocop](https://github.com/bbatsov/rubocop) static analyzer to ensure that contributions follow the [GitHub Ruby Styleguide](https://github.com/styleguide/ruby). Please check your code using `script/fmt` and resolve any errors before pushing your branch.
* Don't bump the Gem version in your pull request (if you don't know what that means, you probably didn't).
- Don't bump the Gem version in your pull request (if you don't know what that means, you probably didn't).
* You can use the command `script/console` to start a REPL to explore the result of
Jekyll's methods. It also provides you with helpful methods to quickly create a
site or configuration. [Feel free to check it out!](https://github.com/jekyll/jekyll/blob/master/script/console)
- You can use the command `script/console` to start a REPL to explore the result of
Jekyll's methods. It also provides you with helpful methods to quickly create a
site or configuration. [Feel free to check it out!](https://github.com/jekyll/jekyll/blob/master/script/console)
* Previously, we've used the WIP Probot app to help contributors determine whether their pull request is ready for review. Please use a [draft pull request](https://help.github.com/en/articles/about-pull-requests#draft-pull-requests) instead. When you're ready, [mark the pull request as ready for review](https://help.github.com/en/articles/changing-the-stage-of-a-pull-request)
- Previously, we've used the WIP Probot app to help contributors determine whether their pull request is ready for review. Please use a [draft pull request](https://help.github.com/en/articles/about-pull-requests#draft-pull-requests) instead. When you're ready, [mark the pull request as ready for review](https://help.github.com/en/articles/changing-the-stage-of-a-pull-request)
## Running tests locally
@@ -148,6 +149,10 @@ script/cucumber features/blah.feature
Both `script/test` and `script/cucumber` can be run without arguments to
run its entire respective suite.
## Visual Studio Code Development Container
If you've got [Visual Studio Code](https://code.visualstudio.com/) with the [Remote Development Extension Pack](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack) installed then simply opening this repository in Visual Studio Code and following the prompts to "Re-open In A Development Container" will get you setup and ready to go with a fresh environment with all the requirements installed.
## A thank you
Thanks! Hacking on Jekyll should be fun. If you find any of this hard to figure out, let us know so we can improve our process or documentation!

2
.github/FUNDING.yml vendored
View File

@@ -1,5 +1,5 @@
# These are supported funding model platforms
github: [ashmaroli, DirtyF, mattr-]
# github: jekyll
open_collective: jekyll
tidelift: rubygems/jekyll

View File

@@ -1,71 +0,0 @@
---
name: Bug Report
about: Is something not working as expected?
title: ''
labels: ''
assignees: ''
---
<!--
Hi! Thanks for considering to file a bug with Jekyll. Please take the time to
answer the basic questions. Please try to be as detailed as possible.
If you are unsure this is a bug in Jekyll, or this is a bug caused
by a plugin that isn't directly related to Jekyll, or if this is just
a generic usage question, please consider asking your question at
https://talk.jekyllrb.com where non-bug questions go.
Thanks!
-->
<!--
Make sure that you've done all of these. If you're sure that the bug you're
reporting is only apparent in a previous version of Jekyll, please say so explicitly
in your description.
- I updated to the latest Jekyll (or) if on GitHub Pages to the latest `github-pages`
- I ran `jekyll doctor` to check my configuration
- I read the contributing document at https://jekyllrb.com/docs/contributing/
-->
## My Environment
<!--
Replace the values in the Version(s) column with the ones in your build. If you're not
using `github-pages`, just replace it with "No".
-->
| Software | Version(s) |
| ---------------- | ---------- |
| Operating System | |
| `jekyll` | Latest |
| `github-pages` | Latest |
---
## Expected Behaviour
<!--
What is it you expected to happen? This should be a description of how the
functionality you tried to use is supposed to work.
-->
## Current Behavior
<!--
Describe the details of the bug. Be sure to include any steps you took for the
problem to exist, such as the directories you created and the full command
you ran. Include any plugins you have installed (this is very important!).
You can include any logs you think relevant here. If you're using GitHub pages
and you're not sure where your logs are, please email support@github.com and
they will happily help you.
-->
## Code Sample
<!--
Please provide a code repository, gist, code snippet or sample files to
reproduce the issue.
-->

104
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,104 @@
name: Bug Report
description: "Is something not working as expected?"
title: "[Bug]: "
body:
- type: markdown
attributes:
value: |
Hi! Thank you for taking the time to report a bug with Jekyll.
Please consider asking your question at https://talk.jekyllrb.com if one or more of the following is applicable to your situation:
- You are not sure if the issue is a bug in Jekyll.
- The issue is caused by a third-party plugin.
- This is just a generic usage question.
Additionally, please note that this platform is meant for bugs in Jekyll core only.
Issues regarding dependencies and plugins should be reported in their respective repositories.
- type: input
id: os
attributes:
label: Operating System
description: The operating system of your computer.
placeholder: "Ubuntu 21.10"
validations:
required: true
- type: input
id: ruby-version
attributes:
label: Ruby Version
description: |
The Ruby version you were using at the time.
Run `ruby -v` in your terminal and paste the output in the input field.
placeholder: "ruby 2.7.3p183 (2021-04-05 revision 6847ee089d) [x64-mingw32]"
validations:
required: true
- type: input
id: jekyll-version
attributes:
label: Jekyll Version
description: |
The version of Jekyll used in your project.
Run `bundle exec jekyll -v` and paste the output in the input field.
*If you are not using a Gemfile, run `jekyll -v` instead.*
placeholder: "jekyll 4.2.1"
validations:
required: true
- type: input
id: ghp-version
attributes:
label: GitHub Pages Version
description: |
Are you deploying your site using GitHub Pages?
If yes, then we need to know the `github-pages` version used by your project. Proceed ahead otherwise.
If you're using the `github-pages` gem in your Gemfile, paste the output from running the following:
```
bundle exec github-pages -v
```
Otherwise, enter `Latest` in the input field and proceed ahead.
- type: textarea
id: expected
attributes:
label: Expected Behavior
description: Briefly describe what you expected to see or get with a certain functionality.
placeholder: |
I expected my site to be built successfully when I run the following:
```
bundle exec jekyll build
```
validations:
required: true
- type: textarea
id: actual
attributes:
label: Current Behavior
description: >
Describe the details of the bug.
Be sure to include any steps you took for the problem to exist, such as the directories
you created and the full command you ran.
Include any plugins you have configured for use in the site.
validations:
required: true
- type: textarea
id: logs
attributes:
label: Relevant log output
description: |
Please copy and paste any relevant log output from your terminal.
*Note: This will be automatically formatted into code, so no need for backticks.*
render: shell
- type: textarea
id: sample
attributes:
label: Code Sample
description: >
The easiest way for someone to understand an issue is if they could reproduce your issue
in their environment. Therefore, please provide a link to your project repository alongwith
instructions to reproduce your issue. If your project is not publicly accessible, please
consider setting up a minimal test repository complete with necessary instructions.
placeholder: |
### Steps to reproduce issue
- Clone [my repo](https://github.com/owner/repo)
- Install site dependencies
- Run `bundle exec jekyll build -s src -d src/dist`

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: Jekyll Community Forum
url: https://talk.jekyllrb.com/
about: Please ask and answer questions here.

View File

@@ -1,9 +1,9 @@
---
name: Documentation
about: Found a typo or something that isn't crystal clear in our docs?
title: 'docs: '
title: '[Docs]: '
labels: documentation
assignees: DirtyF
assignees: ''
---

View File

@@ -27,7 +27,7 @@ assignees: ''
implemented at the plugin level, but in Jekyll core? What use cases does it support?
NOTE: Please be mindful of the Jekyll philosophy (https://jekyllrb.com/philosophy/),
particularily Section 5. Think about if 90% of the users would benefit from your
particularly Section 5. Think about if 90% of the users would benefit from your
feature request, and whether your feature would be better off in a plugin.
-->

View File

@@ -1,15 +0,0 @@
---
name: Question
about: Have any questions about how Jekyll works?
title: ''
labels: ''
assignees: ''
---
<!--
The Jekyll issue tracker IS NOT for usage questions! Please post your
question on our dedicated forum at https://talk.jekyllrb.com.
Thank you!
-->

View File

@@ -12,6 +12,7 @@
<!-- This is a 🐛 bug fix. -->
<!-- This is a 🙋 feature or enhancement. -->
<!-- This is a 🔦 documentation change. -->
<!-- This is a 🔨 code refactoring. -->
<!--
Before you submit this pull request, make sure to have a look at the following

32
.github/SECURITY.markdown vendored Normal file
View File

@@ -0,0 +1,32 @@
# Security Policy
## Supported Versions
Security updates are applied to the latest MINOR version of Jekyll, and the version used by GitHub Pages, v3.9.x.
| Version | Supported |
| ------- | ------------------ |
| 4.2.x | :white_check_mark: |
| 3.9.x | :white_check_mark: |
| < 3.9.x | :x: |
## Reporting a Vulnerability
Please report vulnerabilities by sending an email to security@jekyllrb.com with the following information:
1. A description of the vulnerability
2. Reproduction steps and/or a sample site (share a private repo to the [Jekyll Security Team](docs/pages/team.md))
3. Your contact information
The Jekyll security team will respond to your submission and notify you whether it has been confirmed by the team.
Your confidentiality is kindly requested as we work on a fix. We will provide our patch to you to test and verify that the vulnerability has
been closed.
If you have created a patch and would like to submit that to us as well, we will happily consider it though we cannot guarantee that we will
use it. If we use your patch, we will attribute authorship to you either as the commit author, or as a co-author.
Once a fix is verified, we will release PATCH versions of the supported MINOR versions and assign a CVE to the vulnerability. You will receive
credit in our release post.
Once the patched version has been released, we will no longer request you to maintain confidentiality and you may choose to share details on
how you found the vulnerability with the community.

15
.github/actions/spelling/README.md vendored Normal file
View File

@@ -0,0 +1,15 @@
# check-spelling/check-spelling configuration
File | Purpose | Format | Info
-|-|-|-
[dictionary.txt](dictionary.txt) | Replacement dictionary (creating this file will override the default dictionary) | one word per line | [dictionary](https://github.com/check-spelling/check-spelling/wiki/Configuration#dictionary)
[allow.txt](allow.txt) | Add words to the dictionary | one word per line (only letters and `'`s allowed) | [allow](https://github.com/check-spelling/check-spelling/wiki/Configuration#allow)
[reject.txt](reject.txt) | Remove words from the dictionary (after allow) | grep pattern matching whole dictionary words | [reject](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-reject)
[excludes.txt](excludes.txt) | Files to ignore entirely | perl regular expression | [excludes](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-excludes)
[only.txt](only.txt) | Only check matching files (applied after excludes) | perl regular expression | [only](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-only)
[patterns.txt](patterns.txt) | Patterns to ignore from checked lines | perl regular expression (order matters, first match wins) | [patterns](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-patterns)
[expect.txt](expect.txt) | Expected words that aren't in the dictionary | one word per line (sorted, alphabetically) | [expect](https://github.com/check-spelling/check-spelling/wiki/Configuration#expect)
[advice.txt](advice.txt) | Supplement for GitHub comment when unrecognized words are found | GitHub Markdown | [advice](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice)
Note: you can replace any of these files with a directory by the same name (minus the `.txt` extension) and
then include multiple files (with a `.txt` extension) inside that directory to merge multiple files together.

28
.github/actions/spelling/advice.md vendored Normal file
View File

@@ -0,0 +1,28 @@
<!-- See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice --> <!-- markdownlint-disable MD033 MD041 -->
<details><summary>If you see a bunch of garbage</summary>
If it relates to a ...
<details><summary>well-formed pattern</summary>
See if there's a [pattern](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns) that would match it.
If not, try writing one and adding it to the `patterns.txt` file.
Patterns are Perl 5 Regular Expressions - you can [test](
https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
</details>
<details><summary>binary-ish string</summary>
Please add a file path to the `excludes.txt` file instead of just accepting the garbage.
File paths are Perl 5 Regular Expressions - you can [test](
https://www.regexplanet.com/advanced/perl/) yours before committing to verify it will match your files.
`^` refers to the file's path from the root of the repository, so `^README\.md$` would exclude [README.md](
../tree/HEAD/README.md) (on whichever branch you're using).
</details>
</details>

0
.github/actions/spelling/allow.txt vendored Normal file
View File

35
.github/actions/spelling/excludes.txt vendored Normal file
View File

@@ -0,0 +1,35 @@
# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-excludes
(?:^|/)(?i)COPYRIGHT
(?:^|/)(?i)LICEN[CS]E
(?:^|/)package(?:-lock|)\.json$
(?:^|/)vendor/
/fonts/
ignore$
\.avi$
\.eot$
\.ico$
\.jpe?g$
\.lock$
\.map$
\.min\.
\.mod$
\.mp[34]$
\.png$
\.svg$
\.ttf$
\.wav$
\.woff$
\.woff2$
^docs/pages/redirects/github\.html$
^lib/jekyll/mime\.types$
^lib/theme_template/example/index\.html$
^lib/theme_template/example/_post\.md$
^test/fixtures/empty_permalink\.erb$
^test/fixtures/webrick/bar/baz\.html$
^test/fixtures/webrick/bar/foo\.xhtml$
^test/source/_posts/2009-06-22-no-yaml\.markdown$
^\.github/

760
.github/actions/spelling/expect.txt vendored Normal file
View File

@@ -0,0 +1,760 @@
acl
activesupport
adaoraul
addons
aeiou
AFile
afterall
Alexey
alfredxing
algolia
allowfullscreen
Anatoliy
andreyvit
Ankit
Anning
apps
appveyor
arengu
args
ariejan
arounds
asciinema
asdf
ashmaroli
attr
Autobuild
autocompletion
autogenerated
Autolink
autoload
autoreconf
autosave
awood
aws
awscli
backend
backport
backtick
barcamp
baseurl
bashrc
baz
bbatsov
bdimcheff
bellvat
benbalter
Beney
binstubs
bip
bitbucket
blog
Blogger
blogging
bonafide
Bou
breadcrumbs
briandoll
bridgetown
bridgetownrb
brightbox
brighterplanet
buddyworks
Bugfix
Burela
byparker
cachegrind
calavera
callgraphs
cartera
cavalle
CDNs
cgi
changefreq
changelog
chango
charset
Chayoung
chcp
chdir
Cheatsheet
Checkoway
chmod
chown
Chrononaut
chruby
cibuild
cimg
circleci
CJK
classname
cloudcannon
Cloudinary
cloudsh
CLT
codebase
codeclimate
CODEOWNERS
coderay
codeslinger
coffeescript
colorator
commandline
commonmark
compat
compatibilize
concat
config
configyml
contentblocks
CORS
Cov
CRLFs
cron
crontab
cruft
css
csv
Currin
CVE
CWD
cygwin
daringfireball
Dassonville
datafiles
datetime
DCEU
Debian
debuggability
defunkt
delegators
deployer
deps
dest
Devkit
devops
digitalocean
dirs
disqus
ditaa
dnf
doclist
doctype
doeorg
dommmel
dotfile
Dousse
downcase
downcased
duckduckgo
duritong
Dusseau
dysinger
ecf
editorconfig
eduardoboucas
Elasticsearch
elsif
Emacs
emails
emoji
endcapture
endcomment
endfor
endhighlight
endif
endraw
endrender
endtablerow
Enumerables
EOL
erb
errordocument
Espinaco
eugenebolshakov
evaled
exe
execjs
extensionpack
extname
exts
favicon
Fengyun
ffi
figcaption
filesystem
Finazzo
firstimage
FIXME
flakey
flickr
fnmatch
fontello
forloop
formcake
formcarry
formester
formingo
formkeep
formspark
formspree
formx
Forwardable
frameborder
freenode
frontmatter
fsnotify
ftp
fullstory
Gaudino
gcc
gcnovus
gemfile
gemset
gemspec
getform
getset
getsimpleform
gettalong
gfm
ghp
ghpages
giraffeacademy
github
githubcom
githubusercontent
gitignore
gitlab
gjtorikian
globbed
globbing
google
gotcha
Goulven
gridism
GSo
gsub
gsubbing
Hakiri
hardcode
hashbang
hashmap
helaili
henrik
heredoc
heroku
highlighter
hilighting
Hoizey
homepage
hostman
hostname
href
htaccess
htm
html
htmlproofer
http
httpd
httpdocs
hyperlinks
Iaa
ial
ico
icomoon
iconset
ified
iframe
img
Impl
Inlining
invokables
irc
ivey
ize
jalali
jameshamann
jamstackthemes
jan
javascript
Jax
jayferd
jcon
jdoe
jeffreytse
jeffrydegrande
Jekpack
jekyllbot
jekyllconf
Jekyllers
Jekyllin
Jekylling
jekyllized
jekylllayoutconcept
jekyllrb
jekyllthemes
jemoji
jmcglone
jneen
johnreilly
jpg
jqr
jruby
json
jsonify
juretta
jwarby
Kacper
Kasberg
kbd
Kentico
Kewin
keycdn
kickster
Kinnula
kiwifruit
Kolesky
konklone
kontent
Kotvinsky
kramdown
Kulig
Kwokfu
Lamprecht
laquo
lastmod
launchctl
launchy
laurilehmijoki
ldquo
learnxinyminutes
lexer
LGTM
libcurl
libffi
lifecycle
lightgray
limjh
linenos
linkify
linux
liufengyun
livereload
localheinz
localhost
localtime
Locher
loglevel
Losslessly
lovin
lsi
lsquo
lstrip
lyche
macos
macromates
mademistakes
mailto
Manmeet
markdownify
Maroli
Marsceill
maruku
mathjax
mathml
mattr
Maximiliano
mchung
mdash
memberspace
Memoize
memoized
memoizing
mentoring
mergable
Mertcan
mertkahyaoglu
metadata
microdata
microsoft
mimetype
mingw
minibundle
minifier
minitest
Mittal
mixin
mkasberg
mkd
mkdir
mkdn
mkdown
mmistakes
modernizr
mojombo
moncefbelyamani
moz
mreid
msdn
mswin
MSYS
mtime
multiline
munging
Mvvm
myblog
mycontent
mydata
mydoc
myimage
mypage
myposts
myproject
myrepo
mysite
myvalue
myvar
myvariable
Nadjib
nakanishi
namespace
namespaced
navbar
nbsp
nearlyfreespeech
nethack
netlify
netlifycms
Neue
nginx
ngx
nielsenramon
nior
nodejs
noifniof
nokogiri
notextile
onclick
onebox
oneclick
onschedule
opensource
openssl
Optim
orderofinterpretation
orgs
OSVDB
osx
packagecontrol
pacman
paginator
pandoc
pantulis
params
parkr
parseable
paspagon
passthrough
pathawks
Pathutil
paywall
pdf
Pelykh
permalink
PHP
pinboard
Piwigo
pjhyett
pkill
pkpass
placeholders
planetjekyll
plantuml
plugin
png
podcasts
popen
Porcel
Posterous
postfiles
postlayout
postmodern
preinstalled
prepends
Prioritise
Probot
projectlist
pubstorm
pufuwozu
pwa
pwd
pygments
qrush
Quaid
quickstart
rackup
Rakefile
raquo
razorops
rbenv
rdiscount
rdoc
rdquo
readme
realz
rebund
redcarpet
redcloth
redgreen
redhat
refactor
refactoring
Refheap
regen
regex
regexp
remi
reqs
Responsify
revertable
rfc
rfelix
RHEL
ridk
roadmap
rowspan
rspec
rsquo
rss
rstrip
rsync
rtomayko
Rubo
rubocop
rubychan
rubygem
rubyinstaller
rubyprof
Ruparelia
Rusiczki
rvm
ryanflorence
saas
samplelist
samrayner
sandboxed
Sassc
sassify
schemastore
Schroers
Schwartzian
scp
screenshot
scrollbar
scroller
scss
scssify
sdk
SDKROOT
sectore
semver
seo
serverless
setenv
SFTP
shingo
shopify
shortlog
shoulda
sieversii
sigpipe
simplecov
Singhaniya
siteleaf
sitemap
SITENAME
Slicehost
slugified
slugify
smartforms
smartify
snipcart
socio
somedir
sonnym
Sonomy
sourced
sourcemaps
spam
spotify
src
ssg
ssh
SSL
stackoverflow
standalone
staticfiles
staticman
statictastic
STDERR
stdout
Stickyposts
strftime
stringified
Stringify
styleguide
stylesheet
subdir
subdomain
subfolder
subfolderitems
subnav
subpages
subpath
subpiece
subsubfolderitems
subthing
subvalues
subwidget
sudo
superdirectories
superdirs
SUSE
sverrirs
svg
svn
swfobject
swupd
symlink
symlinking
tablerow
tada
Taillandier
talkyard
tbody
technicalpickles
templating
templatize
Termux
textilize
textpattern
thead
therubyracer
Theunissen
Thornquest
thoughtbot
throughs
Tidelift
timeago
timezone
titleize
TLS
tmm
tmp
toc
tok
tomjoht
toml
tomo
toolset
toshimaru
triaged
triaging
truncatewords
tsv
ttf
Tudou
Tumblr
Tweetsert
txtpen
Tyborska
tzinfo
ubuntu
uby
ujh
ultron
undumpable
unencode
Unescape
unescaping
unicode
uniq
upcase
uppercasing
uri
url
urlset
username
usr
utf
utils
utime
utm
vanpelt
Vasovi
vendored
vercel
versioned
versioning
vertycal
Veyor
vilcans
Vishesh
visualstudio
vnd
vohedge
vps
vscode
vwochnik
Walkthroughs
wdm
We'd
webfont
webhook
webhosting
webmentions
webrick
website
weekdate
whitelist
whitelisting
wiki
wikipedia
wildcards
willcodeforfoo
woff
wordpress
Workaround
workflow
wsl
www
xcode
xcrun
xdg
Xhmikos
xhtml
Xiaoiver
XMinutes
xml
xmlns
xmlschema
yajl
yaml
Yarp
Yashu
Yastreb
yml
Youku
youtube
yunbox
zeropadding
Zlatan
zlib
zoneinfo
zpinter
Zsh
zshrc
zypper
zzot
frontend
prefetching

1
.github/actions/spelling/only.txt vendored Normal file
View File

@@ -0,0 +1 @@
^docs/.*\.md$

75
.github/actions/spelling/patterns.txt vendored Normal file
View File

@@ -0,0 +1,75 @@
# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns
# data urls
(['"])data:.*?\g{-1}
data:[-a-zA-Z=;:/0-9+]*,\S*
# YouTube
https?://(?:(?:www\.|)youtube\.com|youtu.be)/(?:channel/|embed/|playlist\?list=|watch\?v=|v/|)[-a-zA-Z0-9?&=_]*
<\s*youtube\s+id=['"][-a-zA-Z0-9?_]*['"]
\bimg\.youtube\.com/vi/[-a-zA-Z0-9?&=_]*
youtube_id:\s*[-a-zA-Z0-9?&=_]*
# Google Analytics
\bgoogle-analytics\.com/collect.[-0-9a-zA-Z?%=&_.~]*
# Google APIs
\bgoogleapis\.com/[a-z]+/v\d+/[a-z]+/[@./?=\w]+
\b[-a-zA-Z0-9.]*\bstorage\d*\.googleapis\.com(?:/\S*|)
# Google Calendar
\bcalendar\.google\.com/calendar(?:/u/\d+|)/embed\?src=[@./?=\w&%]+
\w+\@group\.calendar\.google\.com\b
# Google DataStudio
\bdatastudio\.google\.com/(?:(?:c/|)u/\d+/|)(?:embed/|)(?:open|reporting|datasources|s)/[-0-9a-zA-Z]+(?:/page/[-0-9a-zA-Z]+|)
# The leading `/` here is as opposed to the `\b` above
# ... a short way to match `https://` or `http://` since most urls have one of those prefixes
# Google Docs
/docs\.google\.com/[a-z]+/d/(?:e/|)[0-9a-zA-Z_-]+/?
# Google Groups
https://groups\.google\.com/d/topic/[^/]+/[a-zA-Z0-9]+/discussion
https://groups\.google\.com/d/msg/[^/]+/[a-zA-Z0-9]+/[a-zA-Z0-9]+
# Google themes
themes\.googleusercontent\.com/static/fonts/[^/]+/v\d+/[^.]+.
# Google CDN
\bclients2\.google(?:usercontent|)\.com[-0-9a-zA-Z/.]*
# Goo.gl
/goo\.gl/[a-zA-Z0-9]+
# Google Chrome Store
\bchrome\.google\.com/webstore/detail/\w*(?:/\w*|)
# google_site_verification:
google_site_verification: [-a-zA-Z=;:/0-9+]*
# Ruby-doc.org
https://ruby-doc\.org/.*
# Contributors
alphabetical order.*:.*
twitter_handle: .*
# apiKey
apiKey: '[a-f0-9]+'
# FontAwesome
/(?:(?i)FontAwesome\.\w+\?\w+)
# Lorem
(?:\w|\s|[,.])*\b(?i)(?:amet|consectetur|cursus|dolor|eros|ipsum|lacus|libero|ligula|lorem|magna|neque|nulla|suscipit|tempus|ultrices)\b(?:\w|\s|[,.])*
# URL escaped characters
\%[0-9A-F]{2}
# c99 hex digits (not the full format, just one I've seen)
# hex digits including css/html color classes:
(?:[\\0][xX]|\\u|[uU]\+|#x?|\%23)[0-9a-fA-FgGrR_]{2,}(?:[uU]?[lL]{0,2}|u\d+)\b
# ignore long runs of a single character:
\b([A-Za-z])\g{-1}{3,}\b

7
.github/actions/spelling/reject.txt vendored Normal file
View File

@@ -0,0 +1,7 @@
^attache$
benefitting
occurence
Sorce
^[Ss]pae
^untill
^wether

6
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

14
.github/workflows/actions/memprof.rb vendored Normal file
View File

@@ -0,0 +1,14 @@
# frozen_string_literal: true
require 'jekyll'
require 'memory_profiler'
MemoryProfiler.report(allow_files: ['lib/jekyll/', 'lib/jekyll.rb']) do
Jekyll::PluginManager.require_from_bundler
Jekyll::Commands::Build.process({
"source" => File.expand_path(ARGV[0]),
"destination" => File.expand_path("#{ARGV[0]}/_site"),
"disable_disk_cache" => true,
})
puts ''
end.pretty_print(scale_bytes: true, normalize_paths: true)

30
.github/workflows/benchmark.yml vendored Normal file
View File

@@ -0,0 +1,30 @@
name: Micro Benchmark Runs
on:
workflow_dispatch:
inputs:
path:
description: "Path to benchmark script relative to 'benchmark' directory."
required: true
default: "capture-assign.rb"
ruby_version:
description: "Ruby version to use (via `ruby/setup-ruby@v1`) action."
required: false
default: "2.7"
jobs:
benchmark:
name: "Benchmark (${{ github.event.inputs.path }}) (Ruby ${{ github.event.inputs.ruby_version }})"
runs-on: "ubuntu-latest"
env:
BENCHMARK: true
steps:
- name: Checkout Jekyll
uses: actions/checkout@v3
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ github.event.inputs.ruby_version }}
bundler-cache: true
- name: Run Benchmark
run: "bundle exec ruby benchmark/${{ github.event.inputs.path }}"

73
.github/workflows/ci.yml vendored Normal file
View File

@@ -0,0 +1,73 @@
name: Continuous Integration
on:
push:
branches:
- master
- "*-stable"
pull_request:
branches:
- master
- "*-stable"
jobs:
ci:
name: "Run Tests (${{ matrix.label }})"
runs-on: "ubuntu-latest"
strategy:
fail-fast: false
matrix:
include:
- label: Ruby 2.7
ruby_version: "2.7"
- label: Ruby 3.0
ruby_version: "3.0"
- label: Ruby 3.1
ruby_version: "3.1"
- label: JRuby 9.3.4.0
ruby_version: "jruby-9.3.4.0"
- label: Liquid 4
ruby_version: 3.1
liquid_version: "~> 4.0"
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: "Set up ${{ matrix.label }}"
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
env:
LIQUID_VERSION: ${{ matrix.liquid_version }}
- name: Run Minitest based tests
run: bash script/test
- name: Run Cucumber based tests
run: bash script/cucumber
- name: Generate and Build a new site
run: bash script/default-site
xtras:
name: "${{ matrix.job_name }} (Ruby ${{ matrix.ruby_version }})"
runs-on: "ubuntu-latest"
strategy:
fail-fast: false
matrix:
include:
- job_name: "Profile Docs Site"
step_name: "Build and Profile docs site"
script_file: "profile-docs"
ruby_version: "2.7"
- job_name: "Style Check"
step_name: "Run RuboCop"
script_file: "fmt"
ruby_version: "2.7"
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: "Set up Ruby ${{ matrix.ruby_version }}"
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
- name: ${{ matrix.step_name }}
run: bash script/${{ matrix.script_file }}

52
.github/workflows/docs.yml vendored Normal file
View File

@@ -0,0 +1,52 @@
name: Build and deploy Jekyll documentation site
on:
push:
branches:
- master
env:
RUBY_VERSION: 2.7
jobs:
deploy_docs:
if: "!contains(github.event.commits[0].message, '[ci skip]')"
runs-on: 'ubuntu-latest'
env:
BUNDLE_PATH: "vendor/bundle"
BUNDLE_JOBS: 4
BUNDLE_RETRY: 3
steps:
- uses: actions/checkout@v3
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ env.RUBY_VERSION }}
bundler-cache: true
- name: Clone target branch
run: |
REMOTE_BRANCH="${REMOTE_BRANCH:-gh-pages}"
REMOTE_REPO="https://${GITHUB_ACTOR}:${{ secrets.GITHUB_TOKEN }}@github.com/${GITHUB_REPOSITORY}.git"
echo "Publishing to ${GITHUB_REPOSITORY} on branch ${REMOTE_BRANCH}"
rm -rf docs/_site/
git clone --depth=1 --branch="${REMOTE_BRANCH}" --single-branch --no-checkout \
"${REMOTE_REPO}" docs/_site/
- name: Build site
run: bundle exec jekyll build --source docs --destination docs/_site --verbose --trace
env:
# For jekyll-github-metadata
JEKYLL_GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Deploy to GitHub Pages
run: |
SOURCE_COMMIT="$(git log -1 --pretty="%an: %B" "$GITHUB_SHA")"
pushd docs/_site &>/dev/null
: > .nojekyll
git add --all
git -c user.name="${GITHUB_ACTOR}" -c user.email="${GITHUB_ACTOR}@users.noreply.github.com" \
commit --quiet \
--message "Deploy docs from ${GITHUB_SHA}" \
--message "$SOURCE_COMMIT"
git push
popd &>/dev/null

34
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,34 @@
name: Release Gem
on:
push:
branches:
- master
- "*-stable"
paths:
- "lib/**/version.rb"
jobs:
release:
if: "github.repository_owner == 'jekyll'"
name: "Release Gem (Ruby ${{ matrix.ruby_version }})"
runs-on: "ubuntu-latest"
strategy:
fail-fast: true
matrix:
ruby_version:
- 2.7
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: "Set up Ruby ${{ matrix.ruby_version }}"
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
- name: Build and Publish Gem
uses: ashmaroli/release-gem@dist
with:
gemspec_name: jekyll
env:
GEM_HOST_API_KEY: ${{ secrets.RUBYGEMS_GEM_PUSH_API_KEY }}

22
.github/workflows/spelling.yml vendored Normal file
View File

@@ -0,0 +1,22 @@
name: Spell Check
on:
push:
branches:
- master
- "*-stable"
# Switch from `pull_request_target` event to reduce distraction from comments
# regarding errors reported in unmodified files.
pull_request:
branches:
- master
- "*-stable"
jobs:
build:
name: Spell Check
runs-on: "ubuntu-latest"
steps:
- name: Checkout Repository
uses: actions/checkout@v3
- name: Check Spellings
uses: check-spelling/check-spelling@v0.0.19

41
.github/workflows/third-party.yml vendored Normal file
View File

@@ -0,0 +1,41 @@
name: Third-Party Repository Profiling
on:
push:
branches:
- master
pull_request:
branches:
- master
jobs:
build_n_profile:
if: "!contains(github.event.commits[0].message, '[ci skip]')"
runs-on: 'ubuntu-latest'
env:
BUNDLE_GEMFILE: "sandbox/Gemfile"
BUNDLE_PATH: "vendor/bundle"
BUNDLE_JOBS: 4
BUNDLE_RETRY: 3
steps:
- name: Checkout Jekyll
uses: actions/checkout@v3
with:
fetch-depth: 5
path: jekyll
- name: Checkout Third-Party Repository
uses: actions/checkout@v3
with:
repository: ashmaroli/tomjoht.github.io
path: sandbox
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7
bundler-cache: true
- name: Run Jekyll Build 3 times
run: |
bundle exec jekyll build -s sandbox -d sandbox/_site --trace
bundle exec jekyll build -s sandbox -d sandbox/_site --trace
bundle exec jekyll build -s sandbox -d sandbox/_site --trace
- name: Memory Analysis of Jekyll Build
run: bundle exec ruby jekyll/.github/workflows/actions/memprof.rb sandbox

3
.gitignore vendored
View File

@@ -1,8 +1,7 @@
# Jekyll
_site/
.jekyll-cache
*-cache/
.jekyll-metadata
.sass-cache
# Ruby
.bundle/

View File

@@ -1,7 +1,11 @@
---
inherit_from: .rubocop_todo.yml
require:
- rubocop-minitest
- rubocop-performance
- rubocop-rake
- rubocop-rspec
- ./rubocop/jekyll
Jekyll/NoPutsAllowed:
@@ -9,7 +13,7 @@ Jekyll/NoPutsAllowed:
- rake/*.rake
AllCops:
TargetRubyVersion: 2.4
TargetRubyVersion: 2.7
Include:
- lib/**/*.rb
- test/**/*.rb
@@ -20,32 +24,137 @@ AllCops:
- script/**/*
- vendor/**/*
- tmp/**/*
Layout/AlignHash:
Gemspec/DateAssignment:
Enabled: true
Layout/BeginEndAlignment:
Enabled: true
Layout/EmptyComment:
Enabled: false
Layout/EmptyLinesAroundAttributeAccessor:
Enabled: true
Layout/EndAlignment:
Severity: error
Layout/FirstArrayElementIndentation:
EnforcedStyle: consistent
Layout/FirstHashElementIndentation:
EnforcedStyle: consistent
Layout/HashAlignment:
EnforcedHashRocketStyle: table
Layout/IndentationWidth:
Severity: error
Layout/IndentFirstArrayElement:
EnforcedStyle: consistent
Layout/IndentFirstHashElement:
EnforcedStyle: consistent
Layout/LineLength:
Exclude:
- !ruby/regexp /features\/.*.rb/
- Rakefile
- rake/*.rake
- Gemfile
Max: 100
Severity: warning
Layout/MultilineMethodCallIndentation:
EnforcedStyle: indented
Layout/MultilineOperationIndentation:
EnforcedStyle: indented
Layout/SpaceAroundMethodCallOperator:
Enabled: true
Layout/SpaceBeforeBrackets:
Enabled: true
Layout/SpaceInsideHashLiteralBraces:
Enabled: true
Exclude:
- test/**/*.rb
Lint/AmbiguousAssignment:
Enabled: true
Lint/BinaryOperatorWithIdenticalOperands:
Enabled: true
Lint/ConstantDefinitionInBlock:
Enabled: true
Exclude:
- test/**/*.rb
Lint/DeprecatedConstants:
Enabled: true
Lint/DeprecatedOpenSSLConstant:
Enabled: true
Lint/DuplicateBranch:
Enabled: true
Lint/DuplicateElsifCondition:
Enabled: true
Lint/DuplicateRegexpCharacterClassElement:
Enabled: true
Lint/DuplicateRequire:
Enabled: true
Lint/DuplicateRescueException:
Enabled: true
Lint/EmptyBlock:
Enabled: true
Lint/EmptyClass:
Enabled: true
Lint/EmptyConditionalBody:
Enabled: true
Lint/EmptyFile:
Enabled: true
Lint/FloatComparison:
Enabled: true
Lint/HashCompareByIdentity:
Enabled: true
Lint/IdentityComparison:
Enabled: true
Lint/LambdaWithoutLiteralBlock:
Enabled: true
Lint/MissingSuper:
Enabled: false
Lint/MixedRegexpCaptureTypes:
Enabled: false
Lint/NestedPercentLiteral:
Exclude:
- test/test_site.rb
Layout/EmptyComment:
Lint/NoReturnInBeginEndBlocks:
Enabled: true
Lint/NumberedParameterAssignment:
Enabled: true
Lint/OrAssignmentToConstant:
Enabled: true
Lint/OutOfRangeRegexpRef:
Enabled: true
Lint/RaiseException:
Enabled: true
Lint/RedundantDirGlobSort:
Enabled: true
Lint/RedundantSafeNavigation:
Enabled: true
Lint/SelfAssignment:
Enabled: true
Lint/StructNewOverride:
Enabled: true
Lint/SymbolConversion:
Enabled: true
Lint/ToEnumArguments:
Enabled: false
Layout/EndAlignment:
Severity: error
Lint/TopLevelReturnWithArgument:
Enabled: true
Lint/TrailingCommaInAttributeDeclaration:
Enabled: true
Lint/TripleQuotes:
Enabled: true
Lint/UnexpectedBlockArity:
Enabled: true
Lint/UnmodifiedReduceAccumulator:
Enabled: true
Lint/UnreachableCode:
Severity: error
Lint/UnreachableLoop:
Enabled: true
Lint/UselessMethodDefinition:
Enabled: true
Lint/UselessTimes:
Enabled: true
Lint/Void:
Exclude:
- lib/jekyll/site.rb
Metrics/AbcSize:
Max: 21
Max: 23
Metrics/BlockLength:
Exclude:
- test/**/*.rb
@@ -64,24 +173,49 @@ Metrics/CyclomaticComplexity:
Exclude:
- lib/jekyll/utils.rb
- lib/jekyll/commands/serve.rb
Metrics/LineLength:
Exclude:
- !ruby/regexp /features\/.*.rb/
- Rakefile
- rake/*.rake
- Gemfile
Max: 100
Severity: warning
Max: 11
Metrics/MethodLength:
CountComments: false
Max: 20
Severity: error
Metrics/ModuleLength:
Exclude:
- lib/jekyll/filters.rb
Max: 240
Metrics/ParameterLists:
Max: 4
Metrics/PerceivedComplexity:
Max: 8
Max: 13
Minitest/AssertInDelta:
Enabled: true
Minitest/AssertionInLifecycleHook:
Enabled: true
Minitest/AssertKindOf:
Enabled: true
Minitest/AssertOutput:
Enabled: true
Minitest/AssertPathExists:
Enabled: true
Minitest/AssertSilent:
Enabled: true
Minitest/LiteralAsActualArgument:
Enabled: true
Minitest/TestMethodName:
Enabled: false
Minitest/MultipleAssertions:
Enabled: true
Minitest/RefuteInDelta:
Enabled: true
Minitest/RefuteKindOf:
Enabled: true
Minitest/RefutePathExists:
Enabled: true
Minitest/UnspecifiedException:
Enabled: true
Minitest/AssertEmptyLiteral:
Enabled: false
Naming/FileName:
Enabled: false
Naming/HeredocDelimiterNaming:
@@ -93,6 +227,40 @@ Naming/MemoizedInstanceVariableName:
- lib/jekyll/drops/site_drop.rb
- lib/jekyll/drops/unified_payload_drop.rb
- lib/jekyll/page_without_a_file.rb
Performance/AncestorsInclude:
Enabled: false
Performance/ArraySemiInfiniteRangeSlice:
Enabled: true
Performance/BigDecimalWithNumericArgument:
Enabled: true
Performance/BlockGivenWithExplicitBlock:
Enabled: true
Performance/ChainArrayAllocation:
Enabled: true
Performance/CollectionLiteralInLoop:
Enabled: true
Performance/ConstantRegexp:
Enabled: true
Performance/MethodObjectAsBlock:
Enabled: true
Performance/RedundantSortBlock:
Enabled: true
Performance/RedundantStringChars:
Enabled: true
Performance/ReverseFirst:
Enabled: true
Performance/SortReverse:
Enabled: false
Performance/Squeeze:
Enabled: true
Performance/StringInclude:
Enabled: true
Exclude:
- lib/jekyll/utils/platforms.rb
Performance/Sum:
Enabled: true
Security/MarshalLoad:
Exclude:
- !ruby/regexp /test\/.*.rb$/
@@ -101,31 +269,78 @@ Security/YAMLLoad:
Exclude:
- !ruby/regexp /features\/.*.rb/
- !ruby/regexp /test\/.*.rb$/
Style/AccessModifierDeclarations:
Enabled: false
Style/AccessorGrouping:
Enabled: true
Style/Alias:
EnforcedStyle: prefer_alias_method
Style/AndOr:
Severity: error
Style/BracesAroundHashParameters:
Style/ArgumentsForwarding:
Enabled: false
Style/ArrayCoercion:
Enabled: true
Style/BisectedAttrAccessor:
Enabled: true
Style/CaseLikeIf:
Enabled: true
Style/StringChars:
Enabled: true
Style/ClassAndModuleChildren:
Exclude:
- test/**/*.rb
Style/FrozenStringLiteralComment:
EnforcedStyle: always
Style/ClassEqualityComparison:
Enabled: true
Style/CollectionCompact:
Enabled: true
Style/CombinableLoops:
Enabled: true
Style/DocumentDynamicEvalDefinition:
Enabled: true
Style/Documentation:
Enabled: false
Style/DoubleNegation:
Enabled: false
Style/EndlessMethod:
Enabled: true
Style/ExplicitBlockArgument:
Enabled: false
Style/ExponentialNotation:
Enabled: true
Style/FormatStringToken:
Exclude:
- lib/jekyll/utils/ansi.rb
- lib/jekyll/liquid_renderer/table.rb
- lib/jekyll/profiler.rb
Style/FrozenStringLiteralComment:
EnforcedStyle: always
Style/GlobalStdStream:
Enabled: true
Style/GuardClause:
Enabled: false
Style/HashAsLastArrayItem:
Enabled: true
Style/HashConversion:
Enabled: true
Style/HashEachMethods:
Enabled: true
Style/HashExcept:
Enabled: true
Style/HashLikeCase:
Enabled: true
Style/HashSyntax:
EnforcedStyle: hash_rockets
Severity: error
Style/HashTransformKeys:
Enabled: false
Style/HashTransformValues:
Enabled: true
Style/IfWithBooleanLiteralBranches:
Enabled: true
Style/KeywordParametersOrder:
Enabled: true
Style/MixinUsage:
Exclude:
- test/helper.rb
@@ -133,15 +348,35 @@ Style/ModuleFunction:
Enabled: false
Style/MultilineTernaryOperator:
Severity: error
Style/NegatedIfElseCondition:
Enabled: true
Style/NilLambda:
Enabled: true
Style/OptionalBooleanParameter:
Enabled: true
Style/PercentLiteralDelimiters:
PreferredDelimiters:
"%q": "{}"
"%Q": "{}"
"%W": ()
"%q": "{}"
"%r": "!!"
"%s": "()"
"%w": "()"
"%W": "()"
"%x": "()"
"%s": ()
"%w": ()
"%x": ()
Style/RedundantArgument:
Enabled: true
Style/RedundantAssignment:
Enabled: true
Style/RedundantFetchBlock:
Enabled: false
Style/RedundantFileExtensionInRequire:
Enabled: true
Style/RedundantRegexpCharacterClass:
Enabled: true
Style/RedundantRegexpEscape:
Enabled: true
Style/RedundantSelfAssignment:
Enabled: true
Style/RegexpLiteral:
EnforcedStyle: percent_r
Style/RescueModifier:
@@ -151,10 +386,23 @@ Style/SafeNavigation:
- lib/jekyll/document.rb
Style/SignalException:
EnforcedStyle: only_raise
Style/SingleArgumentDig:
Enabled: true
Style/SlicingWithRange:
Enabled: false
Style/SoleNestedConditional:
Enabled: true
Style/StringConcatenation:
Enabled: true
Exclude:
- lib/jekyll/commands/*.rb
- test/**/*.rb
Style/StringLiterals:
EnforcedStyle: double_quotes
Style/StringLiteralsInInterpolation:
EnforcedStyle: double_quotes
Style/SwapValues:
Enabled: true
Style/SymbolArray:
EnforcedStyle: brackets
Style/TrailingCommaInArrayLiteral:

25
.rubocop_todo.yml Normal file
View File

@@ -0,0 +1,25 @@
# This configuration was generated by
# `rubocop --auto-gen-config --auto-gen-only-exclude`
# on 2022-04-06 10:48:47 UTC using RuboCop version 1.26.1.
# The point is for the user to remove these configuration records
# one by one as the offenses are removed from the code base.
# Note that changes in the inspected code, or installation of new
# versions of RuboCop, may require this file to be generated again.
# Offense count: 1
# This cop supports safe auto-correction (--auto-correct).
Performance/BindCall:
Exclude:
- 'test/helper.rb'
# Offense count: 1
Style/CombinableLoops:
Exclude:
- 'lib/jekyll/tags/post_url.rb'
# Offense count: 1
# Configuration parameters: AllowedMethods.
# AllowedMethods: respond_to_missing?
Style/OptionalBooleanParameter:
Exclude:
- 'lib/jekyll/log_adapter.rb'

View File

@@ -1,60 +0,0 @@
bundler_args: --without benchmark:development
script: script/cibuild
cache: bundler
language: ruby
rvm:
- &ruby1 2.7.1
- &ruby2 2.6.6
- &ruby3 2.5.8
- &ruby4 2.4.10
- &jruby jruby-9.2.11.1
matrix:
include:
- rvm: *ruby1
env: TEST_SUITE=fmt
name: "🤖️ Code Format"
- rvm: *ruby1
env: TEST_SUITE=default-site
name: "🏠️ Default Site"
- rvm: *ruby1
env: TEST_SUITE=profile-docs
name: "Profile Docs"
- rvm: *ruby4
env: TEST_SUITE=memprof
name: "Profile Memory Allocation"
exclude:
- rvm: *jruby
env: TEST_SUITE=cucumber
env:
matrix:
- TEST_SUITE=test
- TEST_SUITE=cucumber
branches:
only:
- master
- themes
- /.*-stable/
before_script:
- curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
- chmod +x ./cc-test-reporter
- ./cc-test-reporter before-build
after_script:
- ./cc-test-reporter after-build --exit-code $TRAVIS_TEST_RESULT
notifications:
email: false
slack:
secure: "\
dNdKk6nahNURIUbO3ULhA09/vTEQjK0fNbgjVjeYPEvROHgQBP1cIP3AJy8aWs8rl5Yyow4Y\
GEilNRzKPz18AsFptVXofpwyqcBxaCfmHP809NX5PHBaadydveLm+TNVao2XeLXSWu+HUNAY\
O1AanCUbJSEyJTju347xCBGzESU=\
"
before_install:
- gem update --system --no-document
- gem install bundler --no-document

49
Earthfile Normal file
View File

@@ -0,0 +1,49 @@
FROM alpine
# Run locally: `earthly +all` to run full CI process
all:
BUILD --build-arg RUBY=3.0 +test
BUILD --build-arg RUBY=2.7 +test
BUILD --build-arg RUBY=2.5 +test
BUILD --build-arg RUBY=jruby:9.2.14.0 +test
BUILD style-check
BUILD profile-docs
# Run locally: `earthly +test`
# Run with specific version: `earthly --build-arg RUBY=2.5 +test`
test:
FROM +deps
RUN script/test
RUN script/cucumber
RUN script/default-site
style-check:
FROM +deps
RUN script/fmt
profile-docs:
FROM +deps
RUN bundle install --jobs 4
RUN script/profile-docs
RUN script/memprof
# Install dependencies and copy in source
# used in above steps
deps:
ARG RUBY=3.0
IF case $RUBY in jruby*) ;; *) false; esac
FROM $RUBY
ENV JRUBY_OPTS="--dev -J-XX:+TieredCompilation -J-XX:TieredStopAtLevel=1 -J-XX:CompileThreshold=10 -J-XX:ReservedCodeCacheSize=128M"
ELSE
FROM ruby:$RUBY
END
WORKDIR /src
RUN apt-get update && apt-get install nodejs dnsutils git make coreutils g++ build-essential -y
RUN gem install bundler
RUN gem install sassc -v '2.4.0' --source 'https://rubygems.org/'
COPY Gemfile .
COPY jekyll.gemspec .
COPY lib/jekyll/version.rb lib/jekyll/version.rb
COPY test test
RUN bundle install --jobs 4
COPY . .

32
Gemfile
View File

@@ -3,11 +3,11 @@
source "https://rubygems.org"
gemspec :name => "jekyll"
# Temporarily lock JRuby builds on Travis CI to i18n-1.2.x until JRuby is able to handle
# refinements introduced in i18n-1.3.0
gem "i18n", "~> 1.2.0" if RUBY_ENGINE == "jruby"
gem "rake", "~> 13.0"
gem "rake", "~> 12.0"
if ENV["LIQUID_VERSION"] && ENV["LIQUID_VERSION"] != ""
gem "liquid", ENV["LIQUID_VERSION"]
end
group :development do
gem "launchy", "~> 2.3"
@@ -19,7 +19,7 @@ end
#
group :test do
gem "cucumber", "~> 3.0"
gem "cucumber", RUBY_VERSION >= "2.5" ? "~> 5.1.2" : "~> 4.1"
gem "httpclient"
gem "jekyll_test_plugin"
gem "jekyll_test_plugin_malicious"
@@ -27,14 +27,21 @@ group :test do
gem "nokogiri", "~> 1.7"
gem "rspec"
gem "rspec-mocks"
gem "rubocop", "~> 0.72.0"
gem "rubocop", "~> 1.26.0"
gem "rubocop-minitest"
gem "rubocop-performance"
gem "rubocop-rake"
gem "rubocop-rspec"
gem "test-dependency-theme", :path => File.expand_path("test/fixtures/test-dependency-theme", __dir__)
gem "test-theme", :path => File.expand_path("test/fixtures/test-theme", __dir__)
gem "test-theme-skinny", :path => File.expand_path("test/fixtures/test-theme-skinny", __dir__)
gem "test-theme-symlink", :path => File.expand_path("test/fixtures/test-theme-symlink", __dir__)
gem "test-theme-w-empty-data", :path => File.expand_path("test/fixtures/test-theme-w-empty-data", __dir__)
gem "jruby-openssl" if RUBY_ENGINE == "jruby"
if RUBY_ENGINE == "jruby"
gem "http_parser.rb", "~> 0.6.0"
gem "jruby-openssl"
end
end
#
@@ -70,11 +77,12 @@ group :jekyll_optional_dependencies do
gem "jekyll-paginate"
gem "jekyll-redirect-from"
gem "kramdown-syntax-coderay"
gem "matrix"
gem "mime-types", "~> 3.0"
gem "rdoc", "~> 6.0"
gem "tomlrb", "~> 1.2"
gem "rdoc", "~> 6.3.0"
gem "tomlrb"
platform :ruby, :mswin, :mingw, :x64_mingw do
platforms :ruby, :mswin, :mingw, :x64_mingw do
gem "classifier-reborn", "~> 2.2"
gem "liquid-c", "~> 4.0"
gem "yajl-ruby", "~> 1.4"
@@ -82,8 +90,8 @@ group :jekyll_optional_dependencies do
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library
install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do
gem "tzinfo", "~> 1.2"
platforms :jruby, :mswin, :mingw, :x64_mingw do
gem "tzinfo", ENV["TZINFO_VERSION"] if ENV["TZINFO_VERSION"]
gem "tzinfo-data"
end
end

View File

@@ -1,3 +1,431 @@
## HEAD
* Bump check-spelling/check-spelling from 0.0.18 to 0.0.19 (#8740)
### Documentation
* typo - do instead of don&#39;t (#8518)
* Document support for TSV files consistently (#8488)
* Add a disclaimer to tutorials involving Ruby code (#8525)
* Improve documentation on developing generators (#8527)
* Fixes typo in layouts_dir documentation (#8532)
* Fix i.e. typos in collections.md (#8529)
* Remove GitHub Pages content which is in GitHub docs (#8533)
* Step By Step Instructions Review (#8399)
* Fix typo in migrating from 3.0 to 4.0 page (#8572)
* Fix for important missing step in macOS Installation Docs: Add the Homebrew gems directory to the PATH (#8496)
* Use latest Jekyll-action configuration (#8579)
* docs: troubleshoot macOS with ARM64 architecture (#8560)
* docs: add overview of .jekyll-cache dir (#8648)
* docs: clarify where .jekyll-metadata comes from (#8646)
* Razorops cicd added (#8656)
* Specify default port and host for serve commands in docs (#8624)
* Update third-party.md (#8652)
* Add documentation for Sass configuration options (#8587)
* Add formcarry to forms section (#8471)
* Add step to set SDKROOT (#8478)
* Improve the &#34;Markdown Options&#34; Docs (#8681)
* Add &#39;webrick&#39; warning note to &#34;Quickstart&#34; Docs (#8727)
* Update windows.md (#8701)
* IRC networks - Libera, Freenode (#8706)
* Improve GitHub Flavored Markdown Docs (#8684)
* Fixing URL in MacOS install for rbenv-doctor (#8693)
* Fix adjective in `troubleshooting.md` document (#8777)
* Goodbye Frank. We&#39;ll miss you. 💔 (#8807)
* Update index.html: Grammar fix. (#8803)
* Prefer Libera. Remove Freenode. (#8811)
* Update feature_request.md (#8797)
* Remove AWS Amplify from the showcase (#8812)
* Move Frank to Emeritus Core Team Members (#8813)
* Release post for v4.2.1 (#8818)
* Update CircleCI example (#8829)
* Fix typo (#8835)
* Added docs for running locally (#8852)
* Linting README.markdown (#8900)
* Remove text on GITHUB_TOKEN which is now built-in (#8907)
* Add Security Policy document (#8823)
* Manage repository meta documents consistently (#8908)
* docs: add Layer0 deployment guide (#8915)
* docs: Update REAMDE generated by `jekyll new-theme` (#8919)
* Update resources.md (#8925)
* Rewrite documentation on installing plugins (#8921)
* Improve maintainers guide on releasing a new version (#8928)
* Fix link for &#34;CloudSh&#34; (#8934)
* Recommend using `actions/cache` in GitHub Actions documentation (#8948)
* Remove references to EOL hakiri.io service (#8946)
* Release post for v4.2.2 (#8982)
* Document releasing off `*-stable` branches (#8984)
* Update document by fix yaml syntax error (#8991)
* Enhance option&#39;s case for Jekyll configuration (#8992)
* Fix typo in `_docs/deployment/manual.md` (#8997)
* Add quiet/verbose options (#8996)
* Update README.markdown re IRC Pointer (#9005)
* Remove Aerobatic (#9007)
* Add Jekyll 3.9.2 release post to &#39;master&#39; branch (#9013)
* Simplify macOS installation docs (#8993)
* Improve document about Github Actions section (#8853)
* Update permalinks.md (#9017)
### Bug Fixes
* Add webrick as a dependency (#8524)
* fix: pin rubocop to 1.12 due to error with ruby 2.4 (#8651)
* Load Jekyll plugins from BUNDLE_GEMFILE location (#8585)
* fix(security): CVE-2021-28834 (#8680)
* Inject livereload script using `location.protocol` instead of `http:` (#8718)
* Respect collections_dir config within include tag (#8756)
* Fix regression in Convertible module from v4.2.0 (#8786)
* Revert #7253: &#34;Don&#39;t reset site.url to localhost:4000 by default&#34; (#8620)
* Improve readability of CI logs (#8877)
* Fix deprecation message for missing doc method (#8960)
* Fix response header for content served via `jekyll serve` (#8965)
* Trigger livereload in sites without pages (#8337)
* Only enable BOM encoding option on UTF encodings (#8363)
### Development Fixes
* style: enable new cops (#8538)
* Allow dependabot to keep github actions up-to-date (#8540)
* Update actions/cache requirement to v2.1.3 (#8543)
* Pin rubocop version (#8564)
* style: add rubocop 1.9 cops (#8567)
* Cross Version Testing Locally and Faster CI (#8610)
* Use official Ruby setup GH action (#8614)
* Spell check action for markdown documentation (#8675)
* Update expect to cover docs/_posts (#8677)
* Enable Rubocop accessor grouping, fix existing offenses (#8293)
* Tags:Highlight: Decomposed HTMLLegacy formatter (#8623)
* Relax Rubocop Dependency (#8831)
* Add a workflow to build gems consistently (#8830)
* Fix random test failures in TestExcerpt #to_liquid (#8884)
* Lock gem `psych` to `v3.x` (#8918)
* Fix typo in Bug Report template (#8951)
* Check symlink outside site_source without Pathutil (#9015)
* Stop testing with Rubies older than 2.7 on non-Windows (#8955)
* Bump actions/checkout from 2 to 3 (#8986)
### Minor Enhancements
* Regenerate supported mime types (#8542)
* Update include tag to be more permissive (#8618)
* Optimize `Jekyll::Utils.parse_date` (#8425)
* Update rubocop from 1.12 to 1.18 and min ruby from 2.4 to 2.5 (#8741)
* Always hide cache-dir contents from Git (#8798)
* Remove the warning about auto-regeneration on Windows (#8821)
* Propagate _data folder from theme (#8815)
* Support both tzinfo v1 and v2 alongwith non-half hour offsets. (#8880)
* Run vendor-mimes to update mime.types (#8940)
* Expose collection static files via `site.static_files` (#8961)
* Expose `basename` from `document.rb` as `name` to Liquid templates (#8761)
* Allow Configurable Converters on CSV (#8858)
### Site Enhancements
* Improvements to CSS (#7834)
* Slightly update lang `sh` code-block styling (#8857)
## 4.2.2 / 2022-03-03
### Bug Fixes
* Lock `http_parser.rb` gem to `v0.6.x` on JRuby.
### Development Fixes
* Backport #8830 for v4.2.x: Add a workflow to build gems consistently (#8869)
* Lock `rubocop-performance` to `v1.11.x`.
## 4.2.1 / 2021-09-27
### Bug Fixes
* Backport #8620 for v4.2.x: Revert #7253: "Don't reset site.url to localhost:4000 by default" (#8808)
* Backport #8756 for v4.2.x: Respect collections_dir config within include tag (#8794)
* Backport #8786 for v4.2.x: Fix regression in Convertible module from v4.2.0 (#8793)
## 4.2.0 / 2020-12-14
### Minor Enhancements
* Warn on command-line with permalink conflict (#8342)
* Suppress warning issued for redirect pages (#8347)
* Enhance detection of conflicting destination URLs (#8459)
* Add `:post_convert` hook to modify HTML content before layout (#8368)
* Allow triggering `:post_convert` events atomically (#8465)
* Debug reading Page and Layout objects (#8100)
* Do not reset `site.url` to `http://localhost:4000` by default (#7253)
* Add custom debug strings for Jekyll objects (#8473)
* Debug reading data files in a site (#8481)
### Bug Fixes
* Replace nested conditional with guard clauses (#8294)
* Fix: security bump (#8349)
* Fix path matching regex in post_url Liquid tag (#8375)
* Enable `Performance/ChainArrayAllocation` cop (#8404)
* Enable Lint/NoReturnInBeginEndBlocks Cop (#8457)
* Generate items from `site.include` list only once (#8463)
* Explicitly return nil after site process phase (#8472)
### Optimization Fixes
* Implement custom delegators for drop methods (#8183)
* Handle `nil` argument to `Jekyll.sanitized_path` (#8415)
* Cache `Jekyll.sanitized_path` (#8424)
* Memoize array of drop getter method names (#8421)
* Reduce string allocations from the `link` tag (#8387)
* Optimize parsing of parameters in `include` tag (#8192)
* Stash documents `write?` attribute in a variable (#8389)
* Reduce string allocations from generating doc URLs (#8392)
* Check if site is in incremental mode optimally (#8401)
* Utilize flexibility of `Site#in_dest_dir` (#8403)
* Reduce allocations from rendering item as liquid (#8406)
* Compute relative_path of pages using PathManager (#8408)
* Reduce allocation from `normalize_whitespace` filter (#8400)
* Use `Regexp#match?` when `MatchData` is not required (#8427)
* Check default front matter scope against symbols (#8393)
* Stash frequently used `Drop` setter keys for reuse (#8394)
* Memoize defaults computed for Convertibles (#8451)
* Reduce array allocations from merging categories (#8453)
* Memoize destination of pages, documents and staticfiles (#8458)
* Reduce allocations from computing item property (#8485)
* Optimize `Page#dir` with a private method (#8489)
* Stash attribute hash for Liquid computed for pages (#8497)
### Development Fixes
* Update cucumber gem to version 4.1 (#8278)
* Move permalink styles data to constant (#8282)
* Update rubocop gem to 0.87.1 (#8287)
* Update RuboCop to-do file (#8296)
* Fix `rake console` generating LoadError (#8312)
* Configure Performance cops (#8369)
* Update rubocop gem to 0.90.0 (#8313)
* Refactor `Jekyll::Utils::Platforms` (#7236)
* Bump RuboCop to v0.91.x (#8391)
* Add workflow to build and profile third-party repo (#8398)
* Bump RuboCop to v0.92.x
* Update cucumber gem version to 5.1.2 (#8413)
* Fix test suite compatibility with JRuby (#8418)
* chore(deps): bump Rubocop to 0.93.0 (#8430)
* Use Ruby 2.7.1 in GitHub Actions (#8444)
* Test that Liquid expressions are not deeply evaled (#8292)
* Test rendering arbitrary Liquid variables by default (#7414)
* Migrate TravisCI jobs to GitHub Actions (#8492)
### Documentation
* Update pointer to special permalink variables for collections (#8274)
* Fix special treatment for &#39;page 1&#39; in docs of pagination (#8230)
* Add Formcake to forms section (#8283)
* Add a note on the rendering process in the docs (#8291)
* Add refactoring type to PULL_REQUEST_TEMPLATE (#8297)
* Update resources.md (#7864)
* Extra apostrophes in an URL (#8319)
* Clarify target of subordinate clause (#8320)
* Cherry-pick commits from conflicting branch `docs-40`
* Update documentation on third party site (#8352)
* Update default.md with info requested in #8314 (#8353)
* Clarify description of `safe` option (#8354)
* Simplifying the Git post-receive hook-example (#8358)
* Add missing doc for build and serve commands (#8365)
* Docs Review: Getting Started (#8372)
* Add note about rebooting system after installation (#8359)
* Use data file to render table at `/docs/configuration/options/#global-configuration` (#8377)
* Use data file(s) to render table(s) at `/docs/configuration/options/` (#8380)
* Improve maintainability of config option data (#8383)
* Remove CircleCI v1 docs (#8410)
* Remove `NOKOGIRI_USE_SYSTEM_LIBRARIES` from Travis CI docs (#8409)
* Add links to all Jekyll themes on GitHub tagged with #jekyll-theme (#8447)
* Document initializing project Gemfile from scratch (#8450)
* Document installation of additional dependencies for installing Jekyll on Fedora (#8456)
* Improve documentation on Hooks in Jekyll (#8467)
* Build docs site with GitHub Actions (#8201)
* Add link to Assets page from `_sass` section in `_docs/structure.md` (#8486)
### Site Enhancements
* Fix rendering of *showcase* images (#8504)
## 4.1.1 / 2020-06-24
### Bug Fixes
* Disable page excerpts by default (#8222)
* Revert introduction of PageDrop (#8221)
* Don&#39;t generate excerpts for non-html pages (#8234)
* Make page excerpts consistent with doc excerpts (#8236)
### Documentation
* Replace deprecated &#39;show&#39; command with &#39;info&#39; (#8235)
* Change name to ▲Vercel (#8247)
* Add language and examples to describe how to use the configuration op… (#8249)
* Fix missing yaml front matter colon and adjust/add clarifying language. (#8250)
* correct typo (#8261)
* Allow hyperlinks to specific filter documentation (#8231)
* Update link to Netlify step-by-step guide (#8264)
* Fix grammar in documentation section (#8265)
### Site Enhancements
* Including correct Sketch website (#8241)
* Release post for v4.1.1 (#8243)
### Development Fixes
* Bump RuboCop to v0.85.x (#8223)
* Expect drive letter only on vanilla windows (#8227)
## 4.1.0 / 2020-05-27
### Bug Fixes
* Memoize `absolute_url` and `relative_url` filters (#7793)
* Fix documentation comment for `Jekyll::Converters::Identity` (#7883)
* Optimize `Jekyll::Filters#item_property` (#7696)
* Allow multiple binary operators in `where_exp` filter (#8047)
* Fix documents custom-ordering logic (#8028)
* Use `layout.path` when rendering the Liquid layout (#8069)
* Reduce array allocations from `StaticFile#path` (#8083)
* Simplify `Jekyll::Renderer#validate_layout` (#8064)
* Add static file's basename to its `url_placeholder` (#7908)
* Clear cached Liquid template scope before render (#7967)
* Cache `URLFilter` results of string inputs per site (#7990)
* Use `platforms` instead of `install_if` in Gemfile (#8140)
* Config include trailing slash (#8113)
* Improve path normalization in liquid_renderer (#8075)
* Switch slugify regex to support more Unicode character groups (#8167)
* Check if entry is a directory once per enumerator (#8177)
* Filter out exclusively excluded entries sooner (#7482)
* Return `relative_url` if site.url is an empty string (#7988)
* Configure kramdown toc_levels as array by default (#8015)
* Reduce `Pathname` objects from front matter defaults (#8067)
* Simplify `Jekyll::Hooks.trigger` logic (#8044)
* Quicker categories for documents without superdirs (#7987)
* Reduce `Jekyll::Renderer` instances during a build (#7570)
* Escape regex characters in paths to match (#8138)
* Provide invokables for common drop query keys (#8165)
* Optimize path sanitization of default front matter (#8154)
* Initialize static files' data hash only if needed (#8188)
* Initialize include-files as Jekyll objects (#8158)
### Minor Enhancements
* serve: add support for ECC certificates (#7768)
* Update `item_property` to recognize integers (#7878)
* Include `_config.yml` in a new theme's gemspec (#7865)
* Add an option to easily disable disk-cache (#7928)
* Optimize markdown parsing with Kramdown by reusing the options and parser objects (#8013)
* Add `PageDrop` to provide Liquid templates with data (#7992)
* Optimize `Kramdown::JekyllDocument#to_html` calls (#8041)
* Configure default language for syntax-highlighting (#8035)
* Remove dev dependencies from new theme-gem gemspec (#8042)
* Allow disabling import of theme configuration (#8131)
* Allow excerpts to be generated for `Page` objects (#7642)
* Profile various stages of a site's build process (#6760)
* Add find filters to optimize where-first chains (#8171)
* Make `number_of_words` filter respect CJK characters (#7813)
* Allow extensionless document in a strict site (#7950)
* Add `:slugified_categories` URL placeholder (#8094)
### Documentation
* Add dropped 'title: Staff' to the code (#7805)
* Clarify docs for static files in collection (#7812)
* Rephrase the CircleCI v2 section (#7815)
* Update old GitHub wiki URL with new one (#7823)
* Update JekyllConf page with 2019 talks (#7826)
* link for memberships (#7825)
* Doc: minor fix, should be greater or equal to min version (#7856)
* Update third-party.md - Fix broken link (#7857)
* clarify _config.yml/collections type (#7873)
* Replace backticks with HTML tags in data file (#7879)
* add new theme source (#7875)
* fixed grammatical error (it&#39;s --&gt; its) (#7887)
* Docs: Clarify organizing pages into subfolders (#7896)
* Disambiguate the placeholder of permalink (#7906)
* docs: add short serve command for livereload (#7919)
* docs: add options for watch and force polling (#7918)
* add install instructions for ArchLinux and openSUSE (#7920)
* Improve index page of Jekyll documentation (#7926)
* Include path in `jekyll new` commands (Usage docs) (#7931)
* Change `affect` to `effect` in the collections docs (#7937)
* Changed deprecated command in themes documentation (#7941)
* Adds some documentation for the `:clean`, `:on_obsolete` hook (#7954)
* docs: fix broken link (#7955)
* Corrected typo (#7975)
* docs: remove watch option in config (#7940)
* Correct a sentence in the documentation (#7978)
* Fix YAML representation of `group_by` result (#7979)
* Move `--baseurl` to build command options (#7985)
* Correct documentation of filters (#7989)
* Document sorting two documents by their `date` (#7870)
* Fix English grammar error (#7994)
* Update 03-front-matter.md (#7996)
* Add Kentico Kontent CMS integration to resources (#8000)
* Update 07-assets.md (#7413)
* Fix file references in Step by Step Tutorial's Assets step (#8007)
* docs: improve highlighting of code blocks (#8017)
* remove leading slash from Sass file location (#8021)
* [Docs] Fix asset link ref in step-by-step tutorial (#8026)
* Corrected command to modify PATH (#8029)
* Corrected command to modify PATH (#8030)
* Docs: Render full contents of just the latest post (#8032)
* docs: improvements for note boxes (#8037)
* Non-deprecated `vendor/bundle` path configuration (#8048)
* Update 09-collections.md (#8060)
* Remove extra paragraph tags (#8063)
* Add default front matter for tutorials collection (#8081)
* Create CSV to table tutorial (#8090)
* Add version badge for Custom Sorting of Documents (#8098)
* Docs: Fix grammar in `_docs/front-matter.md` (#8097)
* Update variables.md (#8106)
* Add help about Gentoo/Linux (#8002)
* Update documentation on third party site (#8122)
* Added Clear Linux (#8132)
* Added note about OS specific installation instructions. (#8135)
* Fix broken URL in the Resources Page on the Documentation Site (#8136)
* Docs: Deploy Jekyll site with GitHub Actions (#8119)
* Clarify `bundle config` in Bundler tutorial (#8150)
* docs: update your-first-plugin.md (#8147)
* Fix typo in documentation on GitHub Actions (#8162)
* Ease discovery of CLI commands (in their entirety) (#8178)
* Remove `sudo` from Travis CI tutorial (#8187)
* Add GitLab Pages to 3rd party list (#8191)
* docs: add 21yunbox for deployment (#8193)
* Improve documentation on tags and categories (#8196)
### Development Fixes
* Ci/GitHub actions (#7822)
* Rubocop version upgrade (#7846)
* Split action steps to avoid using `&&` on Windows (#7885)
* Upgrade rake to use version 13 (#7910)
* Update dependency constraint to allow RuboCop v0.76 (#7893)
* Use bash executable consistently (#7909)
* Test with JRuby 9.2.9.0 (#7779)
* Bump RuboCop to v0.79.x (#7970)
* Remove post-install message from gemspec (#7974)
* Attain Ruby 3.0 compatibility (#7948)
* Test `where` filter handling numeric property values (#7821)
* chore(deps): rubocop 0.80.0 (#8012)
* Update unit tests for Kramdown-based converter (#8014)
* Add Visual Studio Code Development Container (#8016)
* chore: simplify require for `Jekyll::VERSION` (#8057)
* Remove version-constraint relaxation for i18n gem (#8055)
* Mirror `spec.homepage` as `metadata["homepage_uri"]` (#8056)
* Bump Ruby versions on Travis builds (#8088)
* chore(ci): cache dependencies (#8168)
### Site Enhancements
* Optimize rendering of the documentation site (#8020)
* Utilize `relative_url` filter in documentation site (#8089)
* Render tutorial metadata in documentation site (#8092)
* Improve syntax-highlighting in documentation site (#8079)
* Site: Filter through just the *docs* collection (#8170)
## 4.0.1 / 2020-05-08
### Bug Fixes
@@ -11,6 +439,38 @@
* Fix Kramdown converter based tests for v4.0.x (#8143)
## 3.9.2 / 2022-03-27
### Bug Fixes
* Lock `http_parser.rb` gem to `v0.6.x` on JRuby (#8943)
* Backport #8756 for v3.9.x: Respect collections_dir config within include tag (#8795)
* Backport #8965 for v3.9.x: Fix response header for content served via `jekyll serve` (#8976)
### Development Fixes
* Update and fix CI for `3.9-stable` on Ruby 3.x (#8942)
* Fix CI for commits to `3.9-stable` branch (#8788)
## 3.9.1 / 2021-04-08
### Bug Fixes
* Backport #8618 for v3.9.x: Update include tag to be more permissive (#8629)
## 3.9.0 / 2020-08-05
### Minor Enhancements
* Allow use of kramdown v2 (#8322)
* Add default language for kramdown syntax highlighting (#8325)
## 3.8.7 / 2020-05-08
### Bug Fixes
* Prevent console warnings with Ruby 2.7 (#8125)
## 4.0.0 / 2019-08-19
### Major Enhancements
@@ -261,7 +721,7 @@
* Remove alt attribute from a tags (#7407)
* Fix BASH code-block in ubuntu.md (#7420)
* zlib is missing (#7428)
* Fixed unnecessary aticles and pronouns (#7466)
* Fixed unnecessary articles and pronouns (#7466)
* Store SSL key and cert in site source (#7473)
* Fix typo in tutorial for converting existing site (#7524)
* Check if var exists before include tag (#7530)
@@ -276,7 +736,7 @@
* fix link to Site Source config (#7708)
* Introduce frontmatter in step 2 (#7704)
* Add @ashmaroli to Core Team listing (#7398)
* Lnk to Tidelift in site&#39;s footer (#7377)
* Link to Tidelift in site&#39;s footer (#7377)
* Link to OpenCollective backing (#7378
* Link to sponsor listing in README (#7405)
* Adjust team page listings (#7395)
@@ -297,6 +757,7 @@
### Release
* Jekyll v4.0 release (#7782)
* Release post for v4.0.0 beta1 (#7716)
* Release post for v4.0.0.pre.alpha1 (#7574)
* Release post for v3.8.0 (#6849)
@@ -426,7 +887,7 @@
* doc: add liquid tag plugin jekyll-onebox for html previews (#6898)
* Add `jekyll-w2m` to plugins (#6855)
* Fix tutorials navigation HTML (#6919)
* add Arch Linux instalation troubleshoot (#6782)
* add Arch Linux installation troubleshoot (#6782)
* Docs: Install Jekyll on macOS (#6881)
* Fix CodeClimate badges [ci skip] (#6930)
* Update index.md (#6933)
@@ -582,7 +1043,7 @@
* Fix list appearance by adding missing `ol` tag (#6421)
* Explain how to override output collection index page (#6424)
* Added github-cards to the list of plugins (#6425)
* CoC violation correspondants (#6429)
* CoC violation correspondents (#6429)
* Add a note about Liquid and syntax highlighting (#6466)
* Remove `sudo` from macOS troubleshooting instructions (#6486)
* Add a note on `:jekyll_plugins` group in the docs (#6488)
@@ -698,7 +1159,7 @@
* add SUPPORT file for GitHub (#6324)
* Rename CODE_OF_CONDUCT to show in banner (#6325)
* Docs : illustrate page.id for a collection&#39;s document (#6329)
* Docs: post&#39;s date can be overriden in front matter (#6334)
* Docs: post&#39;s date can be overridden in front matter (#6334)
* Docs: `site.url` behavior on development and production environments (#6270)
* Fix typo in site.url section of variables.md :-[ (#6337)
* Docs: updates (#6343)
@@ -746,7 +1207,7 @@
### Bug Fixes
* Backward compatiblize URLFilters module (#6163)
* Backward compatibilize URLFilters module (#6163)
* Static files contain front matter default keys when `to_liquid`'d (#6162)
* Always normalize the result of the `relative_url` filter (#6185)
@@ -1216,7 +1677,7 @@
### Minor Enhancements
* Stop testing with Ruby 2.0.x, which is EOL'd. (#4381)
* Stop testing with Ruby 2.0.x EOL (#4381)
* Allow collections to have documents that have no file extension (#4545)
* Add size property to `group_by` result (#4557)
* Site Template: Removed unnecessary nesting from `_base.scss` (#4637)
@@ -1242,7 +1703,7 @@
* Add 'jekyll new-theme' command to help users get up and running creating a theme (#4848)
* `markdownify` and `smartify` should convert input to string before conversion (#4958)
* Run `Site#generate` for 'jekyll doctor' to catch plugin issues (#5005)
* Add `normalize_whitepace` filter (#4917)
* Add `normalize_whitespace` filter (#4917)
* Move bin/jekyll to exe/jekyll to prevent collision with binstubs (#5014)
* Cleaning up site template & theme updates. (#4922)
* Add fetch method to Drops (#5056)
@@ -1291,7 +1752,7 @@
* Fix state leakage in Kramdown test (#4618)
* Unify method for copying special files from repo to site (#4601)
* Refresh the contributing file (#4596)
* change smartify doc from copy/paste of mardownify doc (#4653)
* change smartify doc from copy/paste of markdownify doc (#4653)
* Update Rake & disable warnings when running tests (#4720)
* Fix many warnings (#4537)
* Don't blindly assume the last system when determining "open" cmd (#4717)
@@ -1389,7 +1850,7 @@
* Corrected pagination docs for hidden: true feature (#4903)
* Remove a Broken Link for Refheap Plugin (#4971)
* Instructions on how to install github-gem on Windows (#4975)
* Minor tweak to fix missing apostrophne (#4962)
* Minor tweak to fix missing apostrophe (#4962)
* Instructions on how to install github-gem on Windows (v2) (#4977)
* Fix inaccurate HTTP response header field name (#4976)
* Add post about GSoC project (#4980)
@@ -1397,10 +1858,10 @@
* Update normalize.css to v4.0.0. (#4989)
* Add jekyll-tags-list-plugin to list of third-party plugins (#5000)
* Windows docs: Command needs to be called from blog path (#5006)
* Update text to be consitent with example (#5010)
* Update text to be consistent with example (#5010)
* Update template links to point to core Liquid site (#5012)
* Add generator-jekyllized to third-party plugins (#5027)
* Add Jekyll Art Hallery generator plugin to list of third-party plugins (#5043)
* Add Jekyll Art Gallery generator plugin to list of third-party plugins (#5043)
* Add Formingo to the list of Jekyll form SaaS (#5054)
* Highlight help nav item when navigated to. (#5058)
* Update normalize.css to v4.2.0. (#5096)
@@ -1552,9 +2013,9 @@
* Reorganize and cleanup the Gemfile, shorten required depends. (#4318)
* Remove script/rebund. (#4341)
* Implement codeclimate platform (#4340)
* Remove ObectSpace dumping and start using inherited, it's faster. (#4342)
* Remove ObjectSpace dumping and start using inherited, it's faster. (#4342)
* Add script/travis so all people can play with Travis-CI images. (#4338)
* Move Cucumber to using RSpec-Expections and furthering JRuby support. (#4343)
* Move Cucumber to using RSpec-Expectations and furthering JRuby support. (#4343)
* Rearrange Cucumber and add some flair. (#4347)
* Remove old FIXME (#4349)
* Clean up the Gemfile (and keep all the necessary dependencies) (#4350)
@@ -1887,7 +2348,7 @@
* Define the `install` step in the CI example `.travis.yml` (#3622)
* Expand collections documentation. (#3638)
* Add the "warning" note label to excluding `vendor` in the CI docs page (#3623)
* Upgrade pieces of the Ugrading guide for Jekyll 3 (#3607)
* Upgrade pieces of the Upgrading guide for Jekyll 3 (#3607)
* Showing how to access specific data items (#3468)
* Clarify pagination works from within HTML files (#3467)
* Add note to `excerpt_separator` documentation that it can be set globally (#3667)
@@ -2882,7 +3343,7 @@
* Add ReadInXMinutes plugin to the plugin list (#1222)
* Remove plugins from the plugin list that have equivalents in Jekyll proper (#1223)
* Add jekyll-assets to the plugin list (#1225)
* Add jekyll-pandoc-mulitple-formats to the plugin list (#1229)
* Add jekyll-pandoc-multiple-formats to the plugin list (#1229)
* Remove dead link to "Using Git to maintain your blog" (#1227)
* Tidy up the third-party plugins listing (#1228)
* Update contributor information (#1192)
@@ -3035,7 +3496,7 @@
* Adds excerpt attribute to posts which contains first paragraph of content (#837)
* Accept custom configuration file via CLI (#863)
* Load in GitHub Pages MIME Types on `jekyll serve` (#847, #871)
* Improve debugability of error message for a malformed highlight tag (#785)
* Improve debuggability of error message for a malformed highlight tag (#785)
* Allow symlinked files in unsafe mode (#824)
* Add 'gist' Liquid tag to core (#822, #861)
* New format of Jekyll output (#795)

View File

@@ -1,19 +1,13 @@
# [Jekyll](https://jekyllrb.com/)
[![Gem Version](https://img.shields.io/gem/v/jekyll.svg)][ruby-gems]
[![Linux Build Status](https://img.shields.io/travis/jekyll/jekyll/master.svg?label=Linux%20build)][travis]
[![Linux Build Status](https://github.com/jekyll/jekyll/workflows/Continuous%20Integration/badge.svg)][ci-workflow]
[![Windows Build status](https://img.shields.io/appveyor/ci/jekyll/jekyll/master.svg?label=Windows%20build)][appveyor]
[![Maintainability](https://api.codeclimate.com/v1/badges/8ba0cb5b17bb9848e128/maintainability)][codeclimate]
[![Test Coverage](https://api.codeclimate.com/v1/badges/8ba0cb5b17bb9848e128/test_coverage)][coverage]
[![Security](https://hakiri.io/github/jekyll/jekyll/master.svg)][hakiri]
[![Backers on Open Collective](https://opencollective.com/jekyll/backers/badge.svg)](#backers)
[![Sponsors on Open Collective](https://opencollective.com/jekyll/sponsors/badge.svg)](#sponsors)
[ruby-gems]: https://rubygems.org/gems/jekyll
[codeclimate]: https://codeclimate.com/github/jekyll/jekyll
[coverage]: https://codeclimate.com/github/jekyll/jekyll/coverage
[hakiri]: https://hakiri.io/github/jekyll/jekyll/master
[travis]: https://travis-ci.org/jekyll/jekyll
[ci-workflow]: https://github.com/jekyll/jekyll/actions?query=workflow%3A%22Continuous+Integration%22+branch%3Amaster
[appveyor]: https://ci.appveyor.com/project/jekyll/jekyll/branch/master
Jekyll is a simple, blog-aware, static site generator perfect for personal, project, or organization sites. Think of it like a file-based CMS, without all the complexity. Jekyll takes your content, renders Markdown and Liquid templates, and spits out a complete, static website ready to be served by Apache, Nginx or another web server. Jekyll is the engine behind [GitHub Pages](https://pages.github.com), which you can use to host sites right from your GitHub repositories.
@@ -22,7 +16,7 @@ Jekyll is a simple, blog-aware, static site generator perfect for personal, proj
Jekyll does what you tell it to do — no more, no less. It doesn't try to outsmart users by making bold assumptions, nor does it burden them with needless complexity and configuration. Put simply, Jekyll gets out of your way and allows you to concentrate on what truly matters: your content.
See: https://jekyllrb.com/philosophy
See: [https://jekyllrb.com/philosophy](https://jekyllrb.com/philosophy)
## Getting Started
@@ -30,7 +24,7 @@ See: https://jekyllrb.com/philosophy
* Read up about its [Usage](https://jekyllrb.com/docs/usage/) and [Configuration](https://jekyllrb.com/docs/configuration/)
* Take a gander at some existing [Sites](https://github.com/jekyll/jekyll/wiki/sites)
* [Fork](https://github.com/jekyll/jekyll/fork) and [Contribute](https://jekyllrb.com/docs/contributing/) your own modifications
* Have questions? Check out our official forum community [Jekyll Talk](https://talk.jekyllrb.com/) or [`#jekyll` on irc.freenode.net](https://botbot.me/freenode/jekyll/)
* Have questions? Check out our official forum community [Jekyll Talk](https://talk.jekyllrb.com/) and [`#jekyll` Channel on Libera IRC](https://libera.chat)
## Diving In
@@ -49,7 +43,7 @@ If you don't find the answer to your problem in our [docs](https://jekyllrb.com/
## Code of Conduct
In order to have a more open and welcoming community, Jekyll adheres to a
[code of conduct](CODE_OF_CONDUCT.markdown) adapted from the Ruby on Rails code of
[code of conduct](https://jekyllrb.com/docs/conduct/) adapted from the Ruby on Rails code of
conduct.
Please adhere to this code of conduct in any interactions you have in the
@@ -62,28 +56,27 @@ these terms, please let one of our [core team members](https://jekyllrb.com/team
### Sponsors
Support this project by becoming a sponsor. Your logo will show up in this README with a link to your website. [Become a sponsor!](https://opencollective.com/jekyll#sponsor)
<a href="https://opencollective.com/jekyll/sponsor/0/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/0/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/1/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/1/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/2/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/2/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/3/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/3/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/4/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/4/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/5/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/5/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/6/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/6/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/7/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/7/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/8/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/8/avatar.svg" /></a>
<a href="https://opencollective.com/jekyll/sponsor/9/website" target="_blank"><img src="https://opencollective.com/jekyll/sponsor/9/avatar.svg" /></a>
[![Jekyll Sponsor 0](https://opencollective.com/jekyll/sponsor/0/avatar.svg)](https://opencollective.com/jekyll/sponsor/0/website)
[![Jekyll Sponsor 1](https://opencollective.com/jekyll/sponsor/1/avatar.svg)](https://opencollective.com/jekyll/sponsor/1/website)
[![Jekyll Sponsor 2](https://opencollective.com/jekyll/sponsor/2/avatar.svg)](https://opencollective.com/jekyll/sponsor/2/website)
[![Jekyll Sponsor 3](https://opencollective.com/jekyll/sponsor/3/avatar.svg)](https://opencollective.com/jekyll/sponsor/3/website)
[![Jekyll Sponsor 4](https://opencollective.com/jekyll/sponsor/4/avatar.svg)](https://opencollective.com/jekyll/sponsor/4/website)
[![Jekyll Sponsor 5](https://opencollective.com/jekyll/sponsor/5/avatar.svg)](https://opencollective.com/jekyll/sponsor/5/website)
[![Jekyll Sponsor 6](https://opencollective.com/jekyll/sponsor/6/avatar.svg)](https://opencollective.com/jekyll/sponsor/6/website)
[![Jekyll Sponsor 7](https://opencollective.com/jekyll/sponsor/7/avatar.svg)](https://opencollective.com/jekyll/sponsor/7/website)
[![Jekyll Sponsor 8](https://opencollective.com/jekyll/sponsor/8/avatar.svg)](https://opencollective.com/jekyll/sponsor/8/website)
[![Jekyll Sponsor 9](https://opencollective.com/jekyll/sponsor/9/avatar.svg)](https://opencollective.com/jekyll/sponsor/9/website)
### Contributors
This project exists thanks to all the people who contribute.
<a href="../../graphs/contributors"><img src="https://opencollective.com/jekyll/contributors.svg?width=890&button=false" /></a>
[![Jekyll Contributors](https://opencollective.com/jekyll/contributors.svg?width=890&button=false)](../../graphs/contributors)
### Backers
Thank you to all our backers! 🙏 [Become a backer](https://opencollective.com/jekyll#backer)
<a href="https://opencollective.com/jekyll#backers" target="_blank"><img src="https://opencollective.com/jekyll/backers.svg?width=890" /></a>
[![Jekyll Backers](https://opencollective.com/jekyll/backers.svg?width=890)](https://opencollective.com/jekyll#backers)
## License

View File

@@ -159,5 +159,5 @@ end
desc "Open an irb session preloaded with this library"
task :console do
sh "irb -rubygems -r ./lib/#{name}.rb"
sh "irb -r ./lib/#{name}.rb"
end

View File

@@ -13,9 +13,11 @@ build: off
environment:
BUNDLE_WITHOUT: "benchmark:development"
matrix:
- RUBY_FOLDER_VER: "24"
- RUBY_FOLDER_VER: "26"
TZINFO_VERSION: "~> 1.2"
TEST_SUITE: "test"
- RUBY_FOLDER_VER: "26"
TZINFO_VERSION: "~> 2.0"
TEST_SUITE: "test"
- RUBY_FOLDER_VER: "26"
TEST_SUITE: "default-site"
@@ -24,6 +26,10 @@ environment:
- RUBY_FOLDER_VER: "26"
TEST_SUITE: "memprof"
- RUBY_FOLDER_VER: "26"
TZINFO_VERSION: "~> 1.2"
TEST_SUITE: "cucumber"
- RUBY_FOLDER_VER: "26"
TZINFO_VERSION: "~> 2.0"
TEST_SUITE: "cucumber"
install:

View File

@@ -0,0 +1,49 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
require 'benchmark/ips'
require_relative '../lib/jekyll'
puts ''
print 'Setting up... '
SITE = Jekyll::Site.new(
Jekyll.configuration({
"source" => File.expand_path("../docs", __dir__),
"destination" => File.expand_path("../docs/_site", __dir__),
"disable_disk_cache" => true,
"quiet" => true,
})
)
TEMPLATE_1 = Liquid::Template.parse(<<~HTML)
{%- assign doc = site.documents | where: 'url', '/docs/assets/' | first -%}
{{- doc.title -}}
HTML
TEMPLATE_2 = Liquid::Template.parse(<<~HTML)
{%- assign doc = site.documents | find: 'url', '/docs/assets/' -%}
{{- doc.title -}}
HTML
[:reset, :read, :generate].each { |phase| SITE.send(phase) }
puts 'done.'
puts 'Testing... '
puts " #{'where + first'.cyan} results in #{TEMPLATE_1.render(SITE.site_payload).inspect.green}"
puts " #{'find'.cyan} results in #{TEMPLATE_2.render(SITE.site_payload).inspect.green}"
if TEMPLATE_1.render(SITE.site_payload) == TEMPLATE_2.render(SITE.site_payload)
puts 'Success! Proceeding to run benchmarks.'.green
puts ''
else
puts 'Something went wrong. Aborting.'.magenta
puts ''
return
end
Benchmark.ips do |x|
x.report('where + first') { TEMPLATE_1.render(SITE.site_payload) }
x.report('find') { TEMPLATE_2.render(SITE.site_payload) }
x.compare!
end

25
benchmark/parse-date Executable file
View File

@@ -0,0 +1,25 @@
#!/usr/bin/env ruby
require_relative '../lib/jekyll'
require 'benchmark/ips'
date = "2014-08-02 14:43:06 PDT".freeze
time = Time.parse(date)
Benchmark.ips do |x|
x.report('Time.parse') do
Time.parse(date)
end
x.report('localtime') do
Time.parse(date).localtime
end
x.report('localtime parsed') do
time.localtime
end
x.report('Utils.parse_date') do
Jekyll::Utils.parse_date(date)
end
end

View File

@@ -0,0 +1,91 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
# For pull request: https://github.com/jekyll/jekyll/pull/8192
require 'benchmark/ips'
require 'bundler/setup'
require 'memory_profiler'
require 'jekyll'
CONTEXT = {"bar"=>"The quick brown fox"}
MARKUP_1 = %Q(foo=bar lorem="ipsum \\"dolor\\"" alpha='beta \\'gamma\\'').freeze
MARKUP_2 = %Q(foo=bar lorem="ipsum 'dolor'" alpha='beta "gamma"').freeze
#
def old_parse_params(markup)
params = {}
while (match = Jekyll::Tags::IncludeTag::VALID_SYNTAX.match(markup))
markup = markup[match.end(0)..-1]
value = if match[2]
match[2].gsub('\\"', '"')
elsif match[3]
match[3].gsub("\\'", "'")
elsif match[4]
CONTEXT[match[4]]
end
params[match[1]] = value
end
params
end
def new_parse_params(markup)
params = {}
markup.scan(Jekyll::Tags::IncludeTag::VALID_SYNTAX) do |key, d_quoted, s_quoted, variable|
value = if d_quoted
d_quoted.include?('\\"') ? d_quoted.gsub('\\"', '"') : d_quoted
elsif s_quoted
s_quoted.include?("\\'") ? s_quoted.gsub("\\'", "'") : s_quoted
elsif variable
CONTEXT[variable]
end
params[key] = value
end
params
end
#
def report(label, markup, color)
prof_report = MemoryProfiler.report { yield }
allocated_memory = prof_report.scale_bytes(prof_report.total_allocated_memsize)
allocated_objects = prof_report.total_allocated
retained_memory = prof_report.scale_bytes(prof_report.total_retained_memsize)
retained_objects = prof_report.total_retained
puts <<~MSG.send(color)
#{(label + " ").ljust(49, "-")}
MARKUP: #{markup}
RESULT: #{yield}
Total allocated: #{allocated_memory} (#{allocated_objects} objects)
Total retained: #{retained_memory} (#{retained_objects} objects)
MSG
end
report('old w/ escaping', MARKUP_1, :magenta) { old_parse_params(MARKUP_1) }
report('new w/ escaping', MARKUP_1, :cyan) { new_parse_params(MARKUP_1) }
report('old no escaping', MARKUP_2, :green) { old_parse_params(MARKUP_2) }
report('new no escaping', MARKUP_2, :yellow) { new_parse_params(MARKUP_2) }
#
Benchmark.ips do |x|
x.report("old + esc".magenta) { old_parse_params(MARKUP_1) }
x.report("new + esc".cyan) { new_parse_params(MARKUP_1) }
x.compare!
end
Benchmark.ips do |x|
x.report("old - esc".green) { old_parse_params(MARKUP_2) }
x.report("new - esc".yellow) { new_parse_params(MARKUP_2) }
x.compare!
end

65
benchmark/path-manager.rb Normal file
View File

@@ -0,0 +1,65 @@
# frozen_string_literal: true
require 'benchmark/ips'
require 'jekyll'
class FooPage
def initialize(dir:, name:)
@dir = dir
@name = name
end
def slow_path
File.join(*[@dir, @name].map(&:to_s).reject(&:empty?)).sub(%r!\A/!, "")
end
def fast_path
Jekyll::PathManager.join(@dir, @name).sub(%r!\A/!, "")
end
end
nil_page = FooPage.new(:dir => nil, :name => nil)
empty_page = FooPage.new(:dir => "", :name => "")
root_page = FooPage.new(:dir => "", :name => "ipsum.md")
nested_page = FooPage.new(:dir => "lorem", :name => "ipsum.md")
slashed_page = FooPage.new(:dir => "/lorem/", :name => "/ipsum.md")
if nil_page.slow_path == nil_page.fast_path
Benchmark.ips do |x|
x.report('nil_page slow') { nil_page.slow_path }
x.report('nil_page fast') { nil_page.fast_path }
x.compare!
end
end
if empty_page.slow_path == empty_page.fast_path
Benchmark.ips do |x|
x.report('empty_page slow') { empty_page.slow_path }
x.report('empty_page fast') { empty_page.fast_path }
x.compare!
end
end
if root_page.slow_path == root_page.fast_path
Benchmark.ips do |x|
x.report('root_page slow') { root_page.slow_path }
x.report('root_page fast') { root_page.fast_path }
x.compare!
end
end
if nested_page.slow_path == nested_page.fast_path
Benchmark.ips do |x|
x.report('nested_page slow') { nested_page.slow_path }
x.report('nested_page fast') { nested_page.fast_path }
x.compare!
end
end
if slashed_page.slow_path == slashed_page.fast_path
Benchmark.ips do |x|
x.report('slashed_page slow') { slashed_page.slow_path }
x.report('slashed_page fast') { slashed_page.fast_path }
x.compare!
end
end

View File

@@ -90,7 +90,7 @@ end
Correctness.new(site_docs, "redirect_from".freeze).assert!
Correctness.new(site_docs, "title".freeze).assert!
def test_property(property, meta_key)
def property(property, meta_key)
Benchmark.ips do |x|
x.config(time: 10, warmup: 5)
x.report("sort_by_property_directly with #{property} property") do

View File

@@ -0,0 +1,83 @@
#!/usr/bin/env ruby
# frozen_string_literal: true
require "forwardable"
require "colorator"
require "liquid"
require "benchmark/ips"
require "memory_profiler"
# Set up (memory) profiler
class Profiler
def self.run
yield new(ARGV[0] || 10_000)
end
def initialize(count)
@count = count.to_i
end
def report(label, color, &block)
prof_report = MemoryProfiler.report { @count.to_i.times(&block) }
allocated_memory = prof_report.scale_bytes(prof_report.total_allocated_memsize)
allocated_objects = prof_report.total_allocated
retained_memory = prof_report.scale_bytes(prof_report.total_retained_memsize)
retained_objects = prof_report.total_retained
puts <<~MSG.send(color)
With #{label} calls
Total allocated: #{allocated_memory} (#{allocated_objects} objects)
Total retained: #{retained_memory} (#{retained_objects} objects)
MSG
end
end
# Set up stage
class Drop < Liquid::Drop
def initialize(obj)
@obj = obj
end
end
class ForwardDrop < Drop
extend Forwardable
def_delegators :@obj, :name
end
class StaticDrop < Drop
def name
@obj.name
end
end
class Document
def name
"lipsum"
end
end
# Set up actors
document = Document.new
alpha = ForwardDrop.new(document)
beta = StaticDrop.new(document)
count = ARGV[0] || 10_000
# Run profilers
puts "\nMemory profiles for #{count} calls to invoke drop key:"
Profiler.run do |x|
x.report("forwarded", :cyan) { alpha["name"] }
x.report("static", :green) { beta["name"] }
end
# Benchmark
puts "\nBenchmarking the two scenarios..."
Benchmark.ips do |x|
x.report("forwarded".cyan) { alpha["name"] }
x.report("static".green) { beta["name"] }
x.compare!
end

View File

@@ -1,5 +1,5 @@
---
version: 4.0.1
version: 4.2.2
name: Jekyll • Simple, blog-aware, static sites
description: Transform your plain text into static websites and blogs
url: https://jekyllrb.com
@@ -10,6 +10,7 @@ twitter:
logo: "/img/logo-2x.png"
google_analytics_id: UA-50755011-1
google_site_verification: onQcXpAvtHBrUI5LlroHNE_FP0b2qvFyPq7VZw36iEY
cloudinary_url: https://res.cloudinary.com/jekyll/image/upload/f_auto,q_auto,w_404
collections:
docs:
permalink: "/:collection/:path/"
@@ -18,6 +19,7 @@ collections:
permalink: "/news/:year/:month/:day/:title/"
output: true
tutorials:
permalink: "/:collection/:path/"
output: true
defaults:
- scope:
@@ -30,6 +32,11 @@ defaults:
type: posts
values:
layout: news_item
- scope:
path: _tutorials
type: tutorials
values:
layout: tutorials
- scope:
path: ''
values:
@@ -46,12 +53,12 @@ plugins:
feed:
categories:
- release
kramdown:
syntax_highlighter_opts:
default_lang: plaintext
sass:
style: compressed
strict_front_matter: true
exclude:
- ".gitignore"
- ".jekyll-cache"
- CNAME
- icomoon-selection.json
- readme.md

View File

@@ -0,0 +1,123 @@
- name: Regeneration
description: Enable auto-regeneration of the site when files are modified.
flag: "-w, --[no-]watch"
- name: Configuration
description: >-
Specify config files instead of using <code>_config.yml</code> automatically.
Settings in later files override settings in earlier files.
flag: "--config FILE1[,FILE2,...]"
- name: Plugins
description: >-
Specify plugin directories instead of using <code>_plugins/</code> automatically.
option: "plugins_dir: [ DIR1,... ]"
flag: "-p, --plugins DIR1[,DIR2,...]"
- name: Layouts
description: >-
Specify layout directory instead of using <code>_layouts/</code> automatically.
option: "layouts_dir: DIR"
flag: --layouts DIR
- name: Drafts
description: Process and render draft posts.
option: "show_drafts: BOOL"
flag: -D, --drafts
- name: Environment
description: Use a specific environment value in the build.
flag: JEKYLL_ENV=production
- name: Future
description: Publish posts or collection documents with a future date.
option: "future: BOOL"
flag: --future
- name: Unpublished
description: Render posts that were marked as unpublished.
option: "unpublished: BOOL"
flag: --unpublished
- name: LSI
description: >-
Produce an index for related posts. Requires the
<a href="https://jekyll.github.io/classifier-reborn/">classifier-reborn</a> plugin.
option: "lsi: BOOL"
flag: --lsi
- name: Limit posts
description: Limit the number of posts to parse and publish.
option: "limit_posts: NUM"
flag: --limit_posts NUM
- name: Force polling
description: Force watch to use polling.
option: "force_polling: BOOL"
flag: --force_polling
- name: Verbose output
description: Print verbose output.
option: "verbose: BOOL"
flag: -V, --verbose
- name: Silence output
description: Silence the normal output from Jekyll during a build.
option: "quiet: BOOL"
flag: -q, --quiet
- name: Log level
description: Specify a log level among debug, info, warn, or error.
flag: JEKYLL_LOG_LEVEL=info
- name: Incremental build
description: >-
Enable the experimental
<a href="/docs/configuration/incremental-regeneration/">incremental
build</a> feature. Incremental build only re-builds posts and pages that
have changed, resulting in significant performance improvements for large
sites, but may also break site generation in certain cases.
option: "incremental: BOOL"
flag: -I, --incremental
- name: Disable bundle require
description: Disables the need to require gems in `:jekyll_plugins` Gemfile
flag: JEKYLL_NO_BUNDLER_REQUIRE=true
- name: Liquid profiler
description: Generate a Liquid rendering profile to help you identify performance bottlenecks.
option: "profile: BOOL"
flag: --profile
- name: Strict front matter
description: Cause a build to fail if there is a YAML syntax error in a page's front matter.
option: "strict_front_matter: BOOL"
flag: --strict_front_matter
- name: Base URL
description: Serve the website from the given base URL.
option: "baseurl: URL"
flag: -b, --baseurl URL
- name: Trace
description: Show the full backtrace when an error occurs.
flag: -t, --trace

View File

@@ -0,0 +1,77 @@
- name: Site source
description: Change the directory where Jekyll will read files
option: "source: DIR"
flag: -s, --source DIR
- name: Site destination
description: Change the directory where Jekyll will write files
option: "destination: DIR"
flag: -d, --destination DIR
- name: Safe
description: >-
Disable <a href="/docs/plugins/">non-whitelisted plugins</a>, caching to disk, and ignore symbolic links.
option: "safe: BOOL"
flag: --safe
- name: Disable disk cache
version-badge: 4.1.0
description: >-
Disable caching of content to disk in order to skip creating a <code>.jekyll-cache</code> or similar directory at
the source to avoid interference with virtual environments and third-party directory watchers. Caching to disk is
always disabled in <code>safe</code> mode.
option: "disable_disk_cache: BOOL"
flag: --disable-disk-cache
- name: Ignore theme configuration
version-badge: 4.1.0
description: >-
Jekyll 4.0 started allowing themes to bundle a <code>_config.yml</code> to simplify theme-onboarding for new users.
In the unfortunate situation that importing a bundled theme configuration messes up the merged site-configuration,
the user can configure Jekyll to not import the theme-config entirely.
option: "ignore_theme_config: BOOL"
- name: Exclude
description: >-
Exclude directories and/or files from the conversion. These exclusions are relative to the site's source directory
and cannot be outside the source directory.
option: "exclude: [DIR, FILE, ...]"
- name: Include
description: >-
Force inclusion of directories and/or files in the conversion. <code>.htaccess</code> is a good example since
dotfiles are excluded by default.
option: "include: [DIR, FILE, ...]"
- name: Keep files
description: >-
When clobbering the site destination, keep the selected files. Useful for files that are not generated by jekyll;
e.g. files or assets that are generated by your build tool. The paths are relative to the <code>destination</code>.
option: "keep_files: [DIR, FILE, ...]"
- name: Time zone
description: >-
Set the time zone for site generation. This sets the <code>TZ</code> environment variable, which Ruby uses to handle
time and date creation and manipulation. Any entry from the
<a href="https://en.wikipedia.org/wiki/Tz_database">IANA Time Zone Database</a>
is valid, e.g. <code>America/New_York</code>. A list of all available values can be found
<a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones"> here</a>.
When serving on a local machine, the default time zone is set by your operating system. But when served on a remote
host/server, the default time zone depends on the server's setting or location.
option: "timezone: TIMEZONE"
- name: Encoding
description: >-
Set the encoding of files by name (only available for Ruby 1.9 or later). The default value is <code>utf-8</code>
starting in 2.0.0, and <code>nil</code> before 2.0.0, which will yield the Ruby default of <code>ASCII-8BIT</code>.
Available encodings can be shown by the command <code>ruby -e 'puts Encoding::list.join("\n")'</code>.
option: "encoding: ENCODING"

View File

@@ -0,0 +1,71 @@
- name: Local server port
description: Listen on the given port. The default is `4000`.
option: "port: PORT"
flag: "-P, --port PORT"
- name: Local server hostname
description: Listen at the given hostname. The default is `localhost`.
option: "host: HOSTNAME"
flag: "-H, --host HOSTNAME"
- name: Live reload
description: Reload a page automatically on the browser when its content is edited.
option: "livereload: BOOL"
flag: "-l, --livereload"
- name: Live reload ignore
description: File glob patterns for LiveReload to ignore.
option: "livereload_ignore: [ GLOB1,... ]"
flag: "--livereload-ignore GLOB1[,GLOB2,...]"
- name: Live reload min/max delay
description: Minimum/Maximum delay before automatically reloading page.
options:
- "livereload_min_delay: SECONDS"
- "livereload_max_delay: SECONDS"
flags:
- "--livereload-min-delay SECONDS"
- "--livereload-max-delay SECONDS"
- name: Live reload port
description: Port for LiveReload to listen on.
flag: "--livereload-port PORT"
- name: Open URL
description: Open the site's URL in the browser.
option: "open_url: BOOL"
flag: "-o, --open-url"
- name: Detach
description: Detach the server from the terminal.
option: "detach: BOOL"
flag: "-B, --detach"
- name: Skips the initial site build
description: Skips the initial site build which occurs before the server is started.
option: "skip_initial_build: BOOL"
flag: "--skip-initial-build"
- name: Show directory listing
description: Show a directory listing instead of loading your index file.
option: "show_dir_listing: BOOL"
flag: "--show-dir-listing"
- name: X.509 (SSL) private key
description: "SSL Private Key, stored or symlinked in the site source."
flag: "--ssl-key"
- name: X.509 (SSL) certificate
description: "SSL Public certificate, stored or symlinked in the site source."
flag: "--ssl-cert"

View File

@@ -1,14 +1,15 @@
- title: Getting Started
docs:
- link: /docs/
- link: /docs/ruby-101/
- link: /docs/installation/
- link: /docs/ruby-101/
- link: /docs/community/
- link: /docs/step-by-step/01-setup/
- title: Build
docs:
- link: /docs/usage/
- link: /docs/configuration/
- link: /docs/rendering-process/
- title: Content
docs:
- link: /docs/pages/

View File

@@ -18,8 +18,8 @@
#
- name: Relative URL
description: >-
Prepend the <code>baseurl</code> value to the input. Useful if
your site is hosted at a subpath rather than the root of the domain.
Prepend <code>baseurl</code> config value to the input to convert a URL path into a relative URL.
This is recommended for a site that is hosted on a subpath of a domain.
examples:
- input: '{{ "/assets/style.css" | relative_url }}'
output: '/my-baseurl/assets/style.css'
@@ -27,7 +27,8 @@
#
- name: Absolute URL
description: Prepend the <code>url</code> and <code>baseurl</code> value to the input.
description: >-
Prepend <code>url</code> and <code>baseurl</code> values to the input to convert a URL path to an absolute URL.
examples:
- input: '{{ "/assets/style.css" | absolute_url }}'
output: 'http://example.com/my-baseurl/assets/style.css'
@@ -111,6 +112,40 @@
#
- name: Find
description: >-
Return <strong>the first object</strong> in an array for which the queried
attribute has the given value or return <code>nil</code> if no item in
the array satisfies the given criteria.
version_badge: 4.1.0
examples:
- input: '{{ site.members | find: "graduation_year", "2014" }}'
output:
#
- name: Find Expression
description: >-
Return <strong>the first object</strong> in an array for which the given
expression evaluates to true or return <code>nil</code> if no item in
the array satisfies the evaluated expression.
version_badge: 4.1.0
examples:
- input: |-
{{ site.members | find_exp:"item",
"item.graduation_year == 2014" }}
output:
- input: |-
{{ site.members | find_exp:"item",
"item.graduation_year < 2014" }}
output:
- input: |-
{{ site.members | find_exp:"item",
"item.projects contains 'foo'" }}
output:
#
- name: Group By
description: Group an array's items by a given property.
examples:
@@ -166,10 +201,25 @@
#
- name: Number of Words
description: Count the number of words in some text.
description: >-
Count the number of words in some text.<br/>
From <span class="version-badge">v4.1.0</span>, this filter takes an optional
argument to control the handling of Chinese-Japanese-Korean (CJK) characters
in the <code>input</code> string.<br/>
Passing <code>'cjk'</code> as the argument will count every CJK character
detected as one word irrespective of being separated by whitespace.<br/>
Passing <code>'auto'</code> (auto-detect) works similar to <code>'cjk'</code>
but is more performant if the filter is used on a variable string that may
or may not contain CJK chars.
examples:
- input: '{{ page.content | number_of_words }}'
output: 1337
- input: '{{ "Hello world!" | number_of_words }}'
output: 2
- input: '{{ "你好hello世界world" | number_of_words }}'
output: 1
- input: '{{ "你好hello世界world" | number_of_words: "cjk" }}'
output: 6
- input: '{{ "你好hello世界world" | number_of_words: "auto" }}'
output: 6
#

View File

@@ -1,7 +1,7 @@
# Variables provided by Jekyll core
#
# name: : name of the variable
# description: : content returned by the varialble
# description: : content returned by the variable
global:
- name: site
@@ -51,10 +51,10 @@ site:
<code>name</code>, <code>basename</code> and <code>extname</code>.
- name: site.html_pages
description: >-
A subset of `site.pages` listing those which end in `.html`.
A subset of <code>site.pages</code> listing those which end in <code>.html</code>.
- name: site.html_files
description: >-
A subset of `site.static_files` listing those which end in `.html`.
A subset of <code>site.static_files</code> listing those which end in <code>.html</code>.
- name: site.collections
description: >-
A list of all the collections (including posts).
@@ -76,7 +76,7 @@ site:
Contains the url of your site as it is configured in the <code>_config.yml</code>.
For example, if you have <code>url: http://mysite.com</code> in your configuration file,
then it will be accessible in Liquid as <code>site.url</code>. For the development
environment there is <a href="/news/#3-siteurl-is-set-by-the-development-server">an
environment there is <a href="/news/2016/10/06/jekyll-3-3-is-here/#3-siteurl-is-set-by-the-development-server">an
exception</a>, if you are running <code>jekyll serve</code> in a development environment
<code>site.url</code> will be set to the value of <code>host</code>, <code>port</code>,
and SSL-related options. This defaults to <code>url: http://localhost:4000</code>.

View File

@@ -165,3 +165,45 @@
youtube_id: nq1AUB72GCQ
topic: Overcoming challenges in using Jekyll for documentation projects
year: 2016
- speaker: Pieter Roozen
twitter_handle: Pieter_Roozen
youtube_id: moQP0SqEPsw
topic: Jekyll As An API Endpoint
year: 2019
- speaker: Chen Hui Jing
twitter_handle: hj_chen
youtube_id: CERXESTZ5w4
topic: Why I love Jekyll Data Files
year: 2019
- speaker: Chris Ferdinandi
twitter_handle: ChrisFerdinandi
youtube_id: vR1aI_kQ4-A
topic: The Lean Web
year: 2019
- speaker: Catherine Roebuck
twitter_handle:
youtube_id: zTAP1m1BaDM
topic: Jekyll For City Government
year: 2019
- speaker: Joost van der Schee
twitter_handle: jhvanderschee
youtube_id: ztJJ1GSlYgI
topic: "Jekyll Codex - Jekyll for front-end developers"
year: 2019
- speaker: Matthew Loberg
twitter_handle: mloberg
youtube_id: 6eiAjAtSGqw
topic: Leverage AWS S3 And CloudFront To Deploy Blazing Fast Jekyll Sites
year: 2019
- speaker: George Phillips
twitter_handle: gphillips_nz
youtube_id: nEvdOwFJBVc
topic: Structuring Jekyll Sites For Enterprise Design Systems
year: 2019

View File

@@ -1,3 +1,3 @@
min_version: 2.4.0
current_version: 2.6.3
current_version_output: ruby 2.6.3p62 (2019-04-16 revision 67580)
min_version: 2.5.0
current_version: 3.1.1
current_version_output: ruby 3.1.1p18 (2022-02-18 revision 53f5fc4236)

View File

@@ -1,241 +1,322 @@
- name: Tom Preston Werner Blog
url: http://tom.preston-werner.com/
image: tom-preston-werner.png
categories:
- personal
- blog
- name: GitHub On Demand Training
url: https://services.github.com/on-demand/
categories:
- software
- knowledgebase
- name: Vesterheim Norwegian-American Museum
url: http://vesterheim.org/
categories:
- marketing-site
- name: KOTN
url: https://kotn.com/
categories:
- marketing-site
- name: MvvmCross
url: https://www.mvvmcross.com/
categories:
- software
- marketing-site
- name: Vidgrid
url: https://www.vidgrid.com/
categories:
- software
- marketing-site
- name: Bitcoin
url: https://bitcoin.org/en/
categories:
- software
- marketing-site
- name: Mapwize
url: https://www.mapwize.io/
categories:
- software
- marketing-site
- name: Auth0 Blog
url: https://auth0.com/blog/
categories:
- software
- blog
- name: AWS Amplify
url: https://aws-amplify.github.io/
categories:
- open-source
- marketing-site
- name: Yeoman
url: http://yeoman.io/
categories:
- open-source
- marketing-site
- name: Ionic Framwork
url: https://ionicframework.com/
categories:
- software
- marketing-site
- name: Release Management Blog
url: https://release.mozilla.org/
categories:
- software
- blog
- name: Freedom of Information Act
url: https://www.foia.gov/
categories:
- government
- name: Art & About Sydney
url: https://www.artandabout.com.au/
categories:
- government
- name: Passbolt Help
url: https://help.passbolt.com/
categories:
- knowledgebase
- name: We are COLLINS
url: https://www.wearecollins.com/
categories:
- agency
- name: Light Burn
url: https://lightburn.co/
categories:
- agency
- name: italia.it
url: https://developers.italia.it/
categories:
- community
- name: Sydney New Years Eve
url: https://www.sydneynewyearseve.com/
categories:
- government
- name: Login.gov
url: https://login.gov/
categories:
- government
- name: plainlanguage.gov
url: https://plainlanguage.gov/
categories:
- government
- name: U.S. Web Design Standards
url: https://standards.usa.gov/
categories:
- government
- name: Grantmaker Search
url: https://www.grantmakers.io/
categories:
- marketing-site
- name: Rehan Butt
url: http://rehanbutt.com/
categories:
- personal
- portfolio
- name: The Markdown Guide
url: https://www.markdownguide.org/
categories:
- knowledgebase
- name: PROBOT
url: https://probot.github.io/
categories:
- documentation
- name: Matt Grey
url: https://himatt.com/
categories:
- personal
- portfolio
- name: frame.ai
url: https://frame.ai/
categories:
- software
- marketing-site
- name: AdHawk
url: https://www.tryadhawk.com/
categories:
- agency
- name: City of Boston Budget
url: https://budget.boston.gov/
categories:
- government
- name: Lattice
url: https://latticehq.com/
categories:
- software
- marketing-site
- name: MailTape
url: https://www.mailta.pe/
categories:
- other
- name: Digital Democracy
url: http://www.digital-democracy.org/
categories:
- other
- name: HTML Reference
url: http://htmlreference.io/
categories:
- documentation
- name: CSS Reference
url: http://cssreference.io/
categories:
- documentation
- name: Chain
url: https://chain.com/
categories:
- marketing-site
- name: Boxy Suite
url: https://www.boxysuite.com/
categories:
- marketing-site
- software
- name: Pattern Lab
url: http://patternlab.io/
categories:
- documentation
- name: IBM MobileFirst Foundation
url: https://mobilefirstplatform.ibmcloud.com/
categories:
- documentation
- name: 18F
url: https://18f.gsa.gov/
categories:
- agency
- government
- name: Mapbox
url: https://mapbox.com/
categories:
- marketing-site
- name: Development Seed
url: https://developmentseed.org/
categories:
- agency
- name: Isomer - Singapore Government Static Websites
url: https://isomer.gov.sg/
categories:
- government
# - name: White House Social and Behavioral Sciences Team
# url: https://sbst.gov/
# image: sbst.png
# categories:
# - government
- name: SiteLeaf
url: https://siteleaf.com
image: siteleaf.png
categories:
- software
- marketing-site
- name: CloudCannon
url: https://cloudcannon.com/
image: cloudcannon.png
categories:
- software
- marketing-site
- name: Ruby on Rails
url: http://rubyonrails.org/
- name: Vesterheim Norwegian-American Museum
url: http://vesterheim.org/
image: vesterheim.png
categories:
- marketing-site
- name: KOTN
url: https://kotn.com/
image: kotn.png
categories:
- marketing-site
- name: MvvmCross
url: https://www.mvvmcross.com/
image: mvvm.png
categories:
- software
- marketing-site
- name: Vidgrid
url: https://www.vidgrid.com/
image: vidgrid.png
categories:
- software
- marketing-site
- name: Bitcoin
url: https://bitcoin.org/en/
image: bitcoin.png
categories:
- software
- marketing-site
- name: Mapwize
url: https://www.mapwize.io/
image: mapwize.png
categories:
- software
- marketing-site
- name: Auth0 Blog
url: https://auth0.com/blog/
image: auth0-blog.png
categories:
- software
- blog
- name: Freedom of Information Act
url: https://www.foia.gov/
image: foia-gov.png
categories:
- government
- name: "Art & About Sydney"
url: https://www.artandabout.com.au/
image: art-sydney.png
categories:
- government
- name: Passbolt Help
url: https://help.passbolt.com/
image: passbolt-help.png
categories:
- knowledgebase
- name: We are COLLINS
url: https://www.wearecollins.com/
image: collins.png
categories:
- agency
- name: Lightburn
url: https://lightburn.co/
image: lightburn.png
categories:
- agency
- name: italia.it
url: https://developers.italia.it/
image: italia-it.png
categories:
- community
- name: Sydney New Years Eve
url: https://www.sydneynewyearseve.com/
image: nsw.png
categories:
- government
- name: Login.gov
url: https://login.gov/
image: login-gov.png
categories:
- government
- name: plainlanguage.gov
url: https://plainlanguage.gov/
image: plainlanguage-gov.png
categories:
- government
- name: U.S. Web Design Standards
url: https://standards.usa.gov/
image: uswds.png
categories:
- government
- name: Grantmaker Search
url: https://www.grantmakers.io/
image: grantmakers.png
categories:
- marketing-site
- name: Rehan Butt
url: http://rehanbutt.com/
image: rehn.png
categories:
- personal
- portfolio
- name: The Markdown Guide
url: https://www.markdownguide.org/
image: markdown-guide.png
categories:
- knowledgebase
- name: Probot
url: https://probot.github.io/
image: probot.png
categories:
- documentation
- name: White House Social and Behavioral Sciences Team
url: https://sbst.gov/
- name: Matt Grey
url: https://himatt.com/
image: matt-grey.png
categories:
- government
- name: UN World Statistics
url: https://worldstatisticsday.org
categories:
- government
- name: Sketch App
url: https://sketchapp.com/
- personal
- portfolio
- name: Lattice
url: https://latticehq.com/
image: lattice.png
categories:
- software
- marketing-site
- name: Netflix Devices
url: https://devices.netflix.com/en/
- name: MailTape
url: https://www.mailta.pe/
image: mailtape.png
categories:
- other
- name: Digital Democracy
url: http://www.digital-democracy.org/
image: digital-democracy.png
categories:
- other
- name: HTML Reference
url: http://htmlreference.io/
image: htmlreference.png
categories:
- documentation
- name: CSS Reference
url: http://cssreference.io/
image: cssreference.png
categories:
- documentation
- name: Chain
url: https://chain.com/
image: chain.png
categories:
- marketing-site
- name: IBM MobileFirst Foundation
url: https://mobilefirstplatform.ibmcloud.com/
image: ibm-mobile-foundation.png
categories:
- documentation
- name: "18F"
url: https://18f.gsa.gov/
image: 18f.png
categories:
- agency
- government
- name: Development Seed
url: https://developmentseed.org/
image: development-seed.png
categories:
- agency
- name: Isomer - Singapore Government Static Websites
url: https://isomer.gov.sg/
image: isomer.png
categories:
- government
- name: French Government Digital Services
url: https://beta.gouv.fr/
image: beta-gouv-fr.png
categories:
- government
- name: Paris Call for Trust and Security in Cyberspace
url: https://pariscall.international/
image: appel-de-paris.png
categories:
- government
- name: GitHub On Demand Training
url: https://services.github.com/on-demand/
image: github-learning-lab.png
categories:
- software
- knowledgebase
- name: TwitchCon
url: https://www.twitchcon.com/
image: twitchcon.png
categories:
- marketing-site
- conference
- name: UN World Statistics
url: https://worldstatisticsday.org
image: world-statistics-day.png
categories:
- government
- name: Netflix Devices
url: https://devices.netflix.com/en/
image: netflix.png
categories:
- marketing-site
- name: Twitch Developer Documentation
url: https://dev.twitch.tv/
image: twitch-developers.png
categories:
- marketing-site
- documentation
- name: Yeoman
url: http://yeoman.io/
image: yeoman.png
categories:
- open-source
- marketing-site
- name: Release Management Blog
url: https://release.mozilla.org/
image: mozilla-release-blog.png
categories:
- software
- blog
- name: frame.ai
url: https://frame.ai/
image: frame-ai.png
categories:
- software
- marketing-site
- name: Ionic Framework
url: https://ionicframework.com/
image: ionic-framework.png
categories:
- software
- marketing-site
- name: Spotify for Developers
url: https://developer.spotify.com
image: spotify-developers.png
categories:
- marketing-site
- documentation
- software
- name: Sketch
url: https://sketch.com/
image: sketch.png
categories:
- software
- marketing-site
- name: Ruby on Rails
url: http://rubyonrails.org/
image: ruby-on-rails.png
categories:
- marketing-site
- documentation

View File

@@ -7,6 +7,7 @@
- custom-404-page
- convert-site-to-jekyll
- using-jekyll-with-bundler
- csv-to-table
#- title: Another section
# tutorials:

View File

@@ -28,7 +28,7 @@ will process it and put it in your site's destination folder under
<h5>Jekyll processes all Liquid filters and tags in asset files</h5>
<p>If you are using <a href="https://mustache.github.io">Mustache</a>
or another JavaScript templating language that conflicts with
the <a href="/docs/templates/">Liquid template syntax</a>, you
the <a href="{{ '/docs/templates/' | relative_url }}">Liquid template syntax</a>, you
will need to place <code>{&#37; raw &#37;}</code> and
<code>{&#37; endraw &#37;}</code> tags around your code.</p>
</div>
@@ -79,6 +79,7 @@ sass:
These are passed to Sass, so any output style options Sass supports are valid
here, too.
For more information on Sass configuration options, see the [Sass configuration]({{ '/docs/configuration/sass/' | relative_url }}) docs.
## Coffeescript

View File

@@ -1,7 +1,7 @@
---
title: Code of Conduct
permalink: "/docs/code_of_conduct/"
note: This file is autogenerated. Edit /CODE_OF_CONDUCT.markdown instead.
note: This file is autogenerated. Edit /.github/CODE_OF_CONDUCT.markdown instead.
redirect_from: "/conduct/index.html"
editable: false
---

View File

@@ -16,7 +16,8 @@ collections:
- staff_members
```
You can optionally specify metadata for your collection in the configuration:
In this case `collections` is defined as a sequence (i.e., array) with no additional metadata defined for each collection.
You can optionally specify metadata for your collection by defining `collections` as a mapping (i.e., hashmap) instead of sequence, and then defining additional fields in it:
```yaml
collections:
@@ -24,6 +25,12 @@ collections:
people: true
```
{: .note .info}
When defining a collection as a sequence, its pages will not be rendered by
default. To enable this, <code>output: true</code> must be specified on the
collection, which requires defining the collection as a mapping. For more
information, see the section <a href="#output">Output</a>.
<div class="note">
<h5>Gather your collections {%- include docs_version_badge.html version="3.7.0" -%}</h5>
@@ -44,10 +51,13 @@ collections:
Create a corresponding folder (e.g. `<source>/_staff_members`) and add
documents. Front matter is processed if the front matter exists, and everything
after the front matter is pushed into the document's `content` attribute. If no front
matter is provided, Jekyll will consider it to be a [static file](/docs/static-files/)
and copy it to the destination (e.g. `_site`) without processing. If front matter
is provided, Jekyll will process the file in your collection but will not write to disk
unless `output: true` is set in the collection's metadata.
matter is provided, Jekyll will consider it to be a [static file]({{ '/docs/static-files/' | relative_url }})
and the contents will not undergo further processing. If front matter is provided,
Jekyll will process the file contents into the expected output.
Regardless of whether front matter exists or not, Jekyll will write to the destination
directory (e.g. `_site`) only if `output: true` has been set in the collection's
metadata.
For example here's how you would add a staff member to the collection set above.
The filename is `./_staff_members/jane.md` with the following content:
@@ -60,6 +70,12 @@ position: Developer
Jane has worked on Jekyll for the past *five years*.
```
<em>
Do note that in spite of being considered as a collection internally, the above
doesn't apply to [posts](/docs/posts/). Posts with a valid filename format will be
marked for processing even if they do not contain front matter.
</em>
<div class="note info">
<h5>Be sure to name your directories correctly</h5>
<p>
@@ -83,7 +99,6 @@ using the `content` variable:
```
{% endraw %}
If you'd like Jekyll to create a rendered page for each document in your
collection, you can set the `output` key to `true` in your collection
metadata in `_config.yml`:
@@ -111,12 +126,15 @@ You can link to the generated page using the `url` attribute:
## Permalinks
There are special [permalink variables for collections](/docs/permalinks/) to
There are special [permalink variables for collections]({{ '/docs/permalinks/#collections' | relative_url }}) to
help you control the output url for the entire collection.
## Custom Sorting of Documents
## Custom Sorting of Documents {%- include docs_version_badge.html version="4.0" -%}
{: #custom-sorting-of-documents}
By default, documents in a collection are sorted by their paths. But you can control this sorting via the collection's metadata.
By default, two documents in a collection are sorted by their `date` attribute when both of them have the `date` key in their front matter. However, if either or both documents do not have the `date` key in their front matter, they are sorted by their respective paths.
You can control this sorting via the collection's metadata.
### Sort By Front Matter Key
@@ -270,7 +288,6 @@ you specified in your `_config.yml` (if present) and the following information:
</p>
</div>
### Documents
In addition to any front matter provided in the document's corresponding

View File

@@ -8,30 +8,36 @@ redirect_from: "/help/index.html"
As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities.
Read the full [code of conduct](/docs/conduct/)
Read the full [code of conduct]({{ '/docs/conduct/' | relative_url }})
## Reporting Security Vulnerabilities
Find something in our codebase that could be exploited by malicious elements?
Consult our [Security Policy]({{ '/docs/security/' | relative_url }}) to see if a product version is considered *outdated* and how to report
the situation responsibly.
## Where to get support
If you're looking for support for Jekyll, there are a lot of options:
* Read the [Jekyll Documentation](https://jekyllrb.com/docs/)
* Read the [Jekyll Documentation]({{ '/docs/' | relative_url }})
* If you have a question about using Jekyll, start a discussion on the [Jekyll Forum](https://talk.jekyllrb.com/) or [StackOverflow](https://stackoverflow.com/questions/tagged/jekyll)
* Chat with Jekyllers &mdash; Join our [Gitter channel](https://gitter.im/jekyll/jekyll) or our [IRC channel on Freenode](irc:irc.freenode.net/jekyll)
* Chat with Jekyllers &mdash; Join our [Gitter channel](https://gitter.im/jekyll/jekyll) or our IRC channel #jekyll on [Libera](irc://irc.libera.chat/#jekyll).
There are a bunch of helpful community members on these services that should be willing to point you in the right direction.
There are a bunch of helpful community members on these services who are willing to point you in the right direction.
**Reminder: Jekyll's issue tracker is not a support forum.**
## Ways to contribute
* [How to Contribute](/docs/contributing/)
* [How to file a bug](/docs/community/bug/)
* [Guide for maintaining Jekyll](/docs/maintaining/)
* [How to Contribute]({{ '/docs/contributing/' | relative_url }})
* [How to file a bug]({{ '/docs/community/bug/' | relative_url }})
* [Guide for maintaining Jekyll]({{ '/docs/maintaining/' | relative_url }})
## Jekyllconf
[Watch videos](/jekyllconf/) from members of the Jekyll community speak about interesting use cases, tricks theyve learned or meta Jekyll topics.
[Watch videos]({{ '/jekyllconf/' | relative_url }}) from members of the Jekyll community speak about interesting use cases, tricks theyve learned or meta Jekyll topics.
## Jekyll on Twitter

View File

@@ -8,11 +8,12 @@ options can either be specified in a `_config.yml` or `_config.toml` file placed
in your sites root directory, or can be specified as flags for the `jekyll`
executable in the terminal.
* [Configuration Options](/docs/configuration/options/)
* [Default Configuration](/docs/configuration/default/)
* [Front Matter Defaults](/docs/configuration/front-matter-defaults/)
* [Environments](/docs/configuration/environments/)
* [Markdown Options](/docs/configuration/markdown/)
* [Liquid Options](/docs/configuration/liquid/)
* [Webrick Options](/docs/configuration/webrick/)
* [Incremental Regeneration](/docs/configuration/incremental-regeneration/)
* [Configuration Options]({{ '/docs/configuration/options/' | relative_url }})
* [Default Configuration]({{ '/docs/configuration/default/' | relative_url }})
* [Front Matter Defaults]({{ '/docs/configuration/front-matter-defaults/' | relative_url }})
* [Environments]({{ '/docs/configuration/environments/' | relative_url }})
* [Markdown Options]({{ '/docs/configuration/markdown/' | relative_url }})
* [Liquid Options]({{ '/docs/configuration/liquid/' | relative_url }})
* [Sass/SCSS Options]({{ '/docs/configuration/sass/' | relative_url }})
* [Webrick Options]({{ '/docs/configuration/webrick/' | relative_url }})
* [Incremental Regeneration]({{ '/docs/configuration/incremental-regeneration/' | relative_url }})

View File

@@ -7,12 +7,19 @@ Jekyll runs with the following configuration options by default. Alternative
settings for these options can be explicitly specified in the configuration
file or on the command-line.
<div class="note info">
<h5>Be aware of directory paths</h5>
<p>
In general, make directory path values in configuration keys like <code>plugins_dir</code> relative to the current working directory, not the site source. The <code>sass</code> configuration key is an exception, where values must be relative to the site source.
</p>
</div>
```yaml
# Where things are
source : .
destination : ./_site
collections_dir : .
plugins_dir : _plugins
plugins_dir : _plugins # takes an array of strings and loads plugins in that order
layouts_dir : _layouts
data_dir : _data
includes_dir : _includes
@@ -70,16 +77,10 @@ liquid:
strict_variables : false
# Markdown Processors
rdiscount:
extensions : []
redcarpet:
extensions : []
kramdown:
auto_ids : true
entity_output : as_char
toc_levels : 1..6
toc_levels : [1, 2, 3, 4, 5, 6]
smart_quotes : lsquo,rsquo,ldquo,rdquo
input : GFM
hard_wrap : false

View File

@@ -42,8 +42,8 @@ environment but not include it in production environments.
By specifying the option in the build command, you avoid having to change
values in your configuration files when moving from one environment to another.
<div class="note info">
<p>
To switch part of your config settings depending on the environment, use the <a href="/docs/configuration/options/#build-command-options">build command option</a>, for example <code>--config _config.yml,_config_development.yml</code>. Settings in later files override settings in earlier files.
</p>
</div>
{: .note}
To switch part of your config settings depending on the environment, use the
<a href="{{ '/docs/configuration/options/#build-command-options' | relative_url }}">build command option</a>,
for example <code>--config _config.yml,_config_development.yml</code>. Settings
in later files override settings in earlier files.

View File

@@ -30,7 +30,7 @@ defaults:
during automatic regeneration are not loaded until the next execution.
</p>
<p>
Note <a href="/docs/datafiles">Data Files</a> are included and reloaded during automatic regeneration.
Note <a href="{{ '/docs/datafiles/' | relative_url }}">Data Files</a> are included and reloaded during automatic regeneration.
</p>
</div>
@@ -68,7 +68,9 @@ defaults:
author: "Mr. Hyde"
```
With these defaults, all pages would use the `my-site` layout. Any html files that exist in the `projects/` folder will use the `project` layout, if it exists. Those files will also have the `page.author` [liquid variable](/docs/variables/) set to `Mr. Hyde`.
With these defaults, all pages would use the `my-site` layout. Any html files that exist in the `projects/`
folder will use the `project` layout, if it exists. Those files will also have the `page.author`
[liquid variable]({{ '/docs/variables/' | relative_url }}) set to `Mr. Hyde`.
```yaml
collections:
@@ -85,7 +87,7 @@ defaults:
```
In this example, the `layout` is set to `default` inside the
[collection](/docs/collections/) with the name `my_collection`.
[collection]({{ '/docs/collections/' | relative_url }}) with the name `my_collection`.
### Glob patterns in Front Matter defaults
@@ -114,7 +116,6 @@ defaults:
</p>
</div>
### Precedence
Jekyll will apply all of the configuration settings you specify in the `defaults` section of your `_config.yml` file. You can choose to override settings from other scope/values pair by specifying a more specific path for the scope.

View File

@@ -6,13 +6,33 @@ Liquid's response to errors can be configured by setting `error_mode`. The
options are
- `lax` --- Ignore all errors.
- `warn` --- Output a warning on the console for each error.
- `warn` --- Output a warning on the console for each error. (default)
- `strict` --- Output an error message and stop the build.
Within _config.yml, the default configuration is as follows:
```yaml
liquid:
error_mode: warn
```
The above example depicts the "warn" value, which is already set by default- `error_mode: warn`. This results in any issues being called out during the build process however will continue to build if possible.
You can also configure Liquid's renderer to catch non-assigned variables and
non-existing filters by setting `strict_variables` and / or `strict_filters`
to `true` respectively. {% include docs_version_badge.html version="3.8.0" %}
Do note that while `error_mode` configures Liquid's parser, the `strict_variables`
and `strict_filters` options configure Liquid's renderer and are consequently,
mutually exclusive.
and `strict_filters` options configure Liquid's renderer and are consequently
orthogonal.
An example of setting these variables within _config.yml is as follows:
```yaml
liquid:
error_mode: strict
strict_variables: true
strict_filters: true
```
Configuring as described above will stop your build/serve from happening and call out the offending error and halt. This is helpful when desiring to catch liquid-related issues by stopping the build or serve process and allowing you to deal with any issues.

View File

@@ -5,102 +5,69 @@ permalink: "/docs/configuration/markdown/"
The various Markdown renderers supported by Jekyll sometimes have extra options
available.
### Kramdown
## Kramdown
Kramdown is the default Markdown renderer for Jekyll. Below is a list of the
currently supported options:
Kramdown is the default Markdown renderer for Jekyll, and often works well with no additional configuration. However, it does support many configuration options.
* **auto_id_prefix** - Prefix used for automatically generated header IDs
* **auto_id_stripping** - Strip all formatting from header text for automatic ID generation
* **auto_ids** - Use automatic header ID generation
* **coderay_bold_every** - Defines how often a line number should be made bold
* **coderay_css** - Defines how the highlighted code gets styled
* **coderay_default_lang** - Sets the default language for highlighting code blocks
* **coderay_line_number_start** - The start value for the line numbers
* **coderay_line_numbers** - Defines how and if line numbers should be shown
* **coderay_tab_width** - The tab width used in highlighted code
* **coderay_wrap** - Defines how the highlighted code should be wrapped
* **enable_coderay** - Use coderay for syntax highlighting
* **entity_output** - Defines how entities are output
* **footnote_backlink** - Defines the text that should be used for the footnote backlinks
* **footnote_backlink_inline** - Specifies whether the footnote backlink should always be inline
* **footnote_nr** - The number of the first footnote
* **gfm_quirks** - Enables a set of GFM specific quirks
* **hard_wrap** - Interprets line breaks literally
* **header_offset** - Sets the output offset for headers
* **html_to_native** - Convert HTML elements to native elements
* **line_width** - Defines the line width to be used when outputting a document
* **link_defs** - Pre-defines link definitions
* **math_engine** - Set the math engine
* **math_engine_opts** - Set the math engine options
* **parse_block_html** - Process kramdown syntax in block HTML tags
* **parse_span_html** - Process kramdown syntax in span HTML tags
* **smart_quotes** - Defines the HTML entity names or code points for smart quote output
* **syntax_highlighter** - Set the syntax highlighter
* **syntax_highlighter_opts** - Set the syntax highlighter options
* **toc_levels** - Defines the levels that are used for the table of contents
* **transliterated_header_ids** - Transliterate the header text before generating the ID
* **typographic_symbols** - Defines a mapping from typographical symbol to output characters
### Kramdown Processor
By default, Jekyll uses the [GitHub Flavored Markdown (GFM) processor](https://github.com/kramdown/parser-gfm) for Kramdown. (Specifying `input: GFM` is fine, but redundant.) GFM supports a couple additional Kramdown options, documented by [kramdown-parser-gfm](https://github.com/kramdown/parser-gfm). These options can be used directly in your Kramdown Jekyll config, like this:
```yaml
kramdown:
gfm_quirks: [paragraph_end]
```
You can also change the processor used by Kramdown (as specified for the `input` key in the [Kramdown RDoc](https://kramdown.gettalong.org/rdoc/Kramdown/Document.html#method-c-new)). For example, to use the non-GFM Kramdown processor in Jekyll, add the following to your configuration.
```yaml
kramdown:
input: Kramdown
```
Documentation for Kramdown parsers is available in the [Kramdown docs](https://kramdown.gettalong.org/parser/kramdown.html). If you use a Kramdown parser other than Kramdown or GFM, you'll need to add the gem for it.
### Syntax Highlighting (CodeRay)
To use the [CodeRay](http://coderay.rubychan.de/) syntax highlighter with Kramdown, you need to add a dependency on the `kramdown-syntax-coderay` gem. For example, `bundle add kramdown-syntax-coderay`. Then, you'll be able to specify CodeRay in your `syntax_highlighter` config:
```yaml
kramdown:
syntax_highlighter: coderay
```
CodeRay supports several of its own configuration options, documented in the [kramdown-syntax-coderay docs](https://github.com/kramdown/syntax-coderay) which can be passed as `syntax_highlighter_opts` like this:
```yaml
kramdown:
syntax_highlighter: coderay
syntax_highlighter_opts:
line_numbers: table
bold_every: 5
```
### Advanced Kramdown Options
Kramdown supports a variety of other relatively advanced options such as `header_offset` and `smart_quotes`. These are documented in the [Kramdown configuration documentation](https://kramdown.gettalong.org/options.html) and can be added to your Kramdown config like this:
```yaml
kramdown:
header_offset: 2
```
<div class="note warning">
<h5>There are two unsupported kramdown options</h5>
<h5>There are several unsupported kramdown options</h5>
<p>
Please note that both <code>remove_block_html_tags</code> and
<code>remove_span_html_tags</code> are currently unsupported in Jekyll due
to the fact that they are not included within the kramdown HTML converter.
Please note that Jekyll uses Kramdown's HTML converter. Kramdown options used only by other converters, such as <code>remove_block_html_tags</code> (used by the RemoveHtmlTags converter), will not work.
</p>
</div>
For more details about these options have a look at the [Kramdown configuration documentation](https://kramdown.gettalong.org/options.html).
### CommonMark
## CommonMark
[CommonMark](https://commonmark.org/) is a rationalized version of Markdown syntax, implemented in C and thus faster than default Kramdown implemented in Ruby. It [slightly differs](https://github.com/commonmark/CommonMark#differences-from-original-markdown) from original Markdown and does not support all the syntax elements implemented in Kramdown, like [Block Inline Attribute Lists](https://kramdown.gettalong.org/syntax.html#block-ials).
It comes in two flavors: basic CommonMark with [jekyll-commonmark](https://github.com/jekyll/jekyll-commonmark) plugin and [GitHub Flavored Markdown supported by GitHub Pages](https://github.com/github/jekyll-commonmark-ghpages).
### Redcarpet
Redcarpet can be configured by providing an `extensions` sub-setting, whose
value should be an array of strings. Each string should be the name of one of
the `Redcarpet::Markdown` class's extensions; if present in the array, it will
set the corresponding extension to `true`.
Jekyll handles two special Redcarpet extensions:
- `no_fenced_code_blocks` --- By default, Jekyll sets the `fenced_code_blocks`
extension (for delimiting code blocks with triple tildes or triple backticks)
to `true`, probably because GitHub's eager adoption of them is starting to make
them inescapable. Redcarpet's normal `fenced_code_blocks` extension is inert
when used with Jekyll; instead, you can use this inverted version of the
extension for disabling fenced code.
Note that you can also specify a language for highlighting after the first
delimiter:
```ruby
# ...ruby code
```
With both fenced code blocks and highlighter enabled, this will statically
highlight the code; without any syntax highlighter, it will add a
`class="LANGUAGE"` attribute to the `<code>` element, which can be used as a
hint by various JavaScript code highlighting libraries.
- `smart` --- This pseudo-extension turns on SmartyPants, which converts
straight quotes to curly quotes and runs of hyphens to em (`---`) and en (`--`) dashes.
All other extensions retain their usual names from Redcarpet, and no renderer
options aside from `smart` can be specified in Jekyll. [A list of available
extensions can be found in the Redcarpet README file.](https://github.com/vmg/redcarpet/blob/v3.2.2/README.markdown#and-its-like-really-simple-to-use)
Make sure you're looking at the README for the right version of
Redcarpet: Jekyll currently uses v3.2.x. The most commonly used
extensions are:
- `tables`
- `no_intra_emphasis`
- `autolink`
### Custom Markdown Processors
If you're interested in creating a custom markdown processor, you're in luck! Create a new class in the `Jekyll::Converters::Markdown` namespace:

View File

@@ -20,120 +20,35 @@ class="flag">flags</code> (specified on the command-line) that control them.
</tr>
</thead>
<tbody>
<tr class="setting">
<td>
<p class="name"><strong>Site Source</strong></p>
<p class="description">Change the directory where Jekyll will read files</p>
</td>
<td class="align-center">
<p><code class="option">source: DIR</code></p>
<p><code class="flag">-s, --source DIR</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Site Destination</strong></p>
<p class="description">Change the directory where Jekyll will write files</p>
</td>
<td class="align-center">
<p><code class="option">destination: DIR</code></p>
<p><code class="flag">-d, --destination DIR</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Safe</strong></p>
<p class="description">Disable <a href="/docs/plugins/">custom plugins, and ignore symbolic links</a>.</p>
</td>
<td class="align-center">
<p><code class="option">safe: BOOL</code></p>
<p><code class="flag">--safe</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Exclude</strong></p>
<p class="description">
Exclude directories and/or files from the
conversion. These exclusions are relative to the site's
source directory and cannot be outside the source directory.
</p>
</td>
<td class="align-center">
<p><code class="option">exclude: [DIR, FILE, ...]</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Include</strong></p>
<p class="description">
Force inclusion of directories and/or files in the conversion.
<code>.htaccess</code> is a good example since dotfiles are excluded
by default.
</p>
</td>
<td class="align-center">
<p><code class="option">include: [DIR, FILE, ...]</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Keep files</strong></p>
<p class="description">
When clobbering the site destination, keep the selected files.
Useful for files that are not generated by jekyll; e.g. files or
assets that are generated by your build tool.
The paths are relative to the <code>destination</code>.
</p>
</td>
<td class="align-center">
<p><code class="option">keep_files: [DIR, FILE, ...]</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Time Zone</strong></p>
<p class="description">
Set the time zone for site generation. This sets the <code>TZ</code>
environment variable, which Ruby uses to handle time and date
creation and manipulation. Any entry from the
<a href="https://en.wikipedia.org/wiki/Tz_database">IANA Time Zone
Database</a> is valid, e.g. <code>America/New_York</code>. A list of all
available values can be found <a href="https://en.wikipedia.org/wiki/List_of_tz_database_time_zones">
here</a>. When serving on a local machine, the default time zone is set by your operating system. But when served on a remote host/server, the default time zone depends on the server's setting or location.
</p>
</td>
<td class="align-center">
<p><code class="option">timezone: TIMEZONE</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Encoding</strong></p>
<p class="description">
Set the encoding of files by name (only available for Ruby
1.9 or later).
The default value is <code>utf-8</code> starting in 2.0.0,
and <code>nil</code> before 2.0.0, which will yield the Ruby
default of <code>ASCII-8BIT</code>.
Available encodings can be shown by the
command <code>ruby -e 'puts Encoding::list.join("\n")'</code>.
</p>
</td>
<td class="align-center">
<p><code class="option">encoding: ENCODING</code></p>
</td>
</tr>
{% for setting in site.data.config_options.global %}
<tr class="setting">
<td>
<p class="name">
<strong>{{ setting.name }}</strong>
{% if setting.version-badge %}
<span class="version-badge" title="Introduced in v{{ setting.version-badge }}">{{ setting.version-badge }}</span>
{% endif %}
</p>
<p class="description">{{ setting.description }}</p>
</td>
<td class="align-center">
<p><code class="option">{{ setting.option }}</code></p>
{% if setting.flag %}
<p><code class="flag">{{ setting.flag }}</code></p>
{% endif %}
</td>
</tr>
{% endfor %}
<tr>
<td>
<p class='name'><strong>Defaults</strong></p>
<p class='description'>
Set defaults for <a href="/docs/front-matter/" title="front matter">front matter</a>
Set defaults for <a href="{{ '/docs/front-matter/' | relative_url }}" title="front matter">front matter</a>
variables.
</p>
</td>
<td class='align-center'>
<p>see <a href="/docs/configuration/front-matter-defaults/" title="details">below</a></p>
<p>see <a href="{{ '/docs/configuration/front-matter-defaults/' | relative_url }}" title="details">below</a></p>
</td>
</tr>
</tbody>
@@ -165,155 +80,27 @@ class="flag">flags</code> (specified on the command-line) that control them.
</tr>
</thead>
<tbody>
<tr class="setting">
<td>
<p class="name"><strong>Regeneration</strong></p>
<p class="description">Enable auto-regeneration of the site when files are modified.</p>
</td>
<td class="align-center">
<p><code class="flag">-w, --[no-]watch</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Configuration</strong></p>
<p class="description">Specify config files instead of using <code>_config.yml</code> automatically. Settings in later files override settings in earlier files.</p>
</td>
<td class="align-center">
<p><code class="flag">--config FILE1[,FILE2,...]</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Drafts</strong></p>
<p class="description">Process and render draft posts.</p>
</td>
<td class="align-center">
<p><code class="option">show_drafts: BOOL</code></p>
<p><code class="flag">--drafts</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Environment</strong></p>
<p class="description">Use a specific environment value in the build.</p>
</td>
<td class="align-center">
<p><code class="flag">JEKYLL_ENV=production</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Future</strong></p>
<p class="description">Publish posts or collection documents with a future date.</p>
</td>
<td class="align-center">
<p><code class="option">future: BOOL</code></p>
<p><code class="flag">--future</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Unpublished</strong></p>
<p class="description">Render posts that were marked as unpublished.</p>
</td>
<td class="align-center">
<p><code class="option">unpublished: BOOL</code></p>
<p><code class="flag">--unpublished</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>LSI</strong></p>
<p class="description">Produce an index for related posts. Requires the <a href="http://www.classifier-reborn.com/">classifier-reborn</a> plugin.</p>
</td>
<td class="align-center">
<p><code class="option">lsi: BOOL</code></p>
<p><code class="flag">--lsi</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Limit Posts</strong></p>
<p class="description">Limit the number of posts to parse and publish.</p>
</td>
<td class="align-center">
<p><code class="option">limit_posts: NUM</code></p>
<p><code class="flag">--limit_posts NUM</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Force polling</strong></p>
<p class="description">Force watch to use polling.</p>
</td>
<td class="align-center">
<p><code class="flag">--force_polling</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Verbose output</strong></p>
<p class="description">Print verbose output.</p>
</td>
<td class="align-center">
<p><code class="flag">-V, --verbose</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Silence Output</strong></p>
<p class="description">Silence the normal output from Jekyll
during a build</p>
</td>
<td class="align-center">
<p><code class="flag">-q, --quiet</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Incremental build</strong></p>
<p class="description">
Enable the experimental incremental build feature. Incremental build only
re-builds posts and pages that have changed, resulting in significant performance
improvements for large sites, but may also break site generation in certain
cases.
</p>
</td>
<td class="align-center">
<p><code class="option">incremental: BOOL</code></p>
<p><code class="flag">-I, --incremental</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Liquid profiler</strong></p>
<p class="description">
Generate a Liquid rendering profile to help you identify performance bottlenecks.
</p>
</td>
<td class="align-center">
<p><code class="option">profile: BOOL</code></p>
<p><code class="flag">--profile</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Strict Front Matter</strong></p>
<p class="description">
Cause a build to fail if there is a YAML syntax error in a page's front matter.
</p>
</td>
<td class="align-center">
<p><code class="option">strict_front_matter: BOOL</code></p>
<p><code class="flag">--strict_front_matter</code></p>
</td>
</tr>
{% for setting in site.data.config_options.build %}
<tr class="setting">
<td>
<p class="name">
<strong>{{ setting.name }}</strong>
{% if setting.version-badge %}
<span class="version-badge" title="Introduced in v{{ setting.version-badge }}">{{ setting.version-badge }}</span>
{% endif %}
</p>
<p class="description">{{ setting.description }}</p>
</td>
<td class="align-center">
{% if setting.option %}<p><code class="option">{{ setting.option }}</code></p>{% endif %}
{% if setting.flag %}<p><code class="flag">{{ setting.flag }}</code></p>{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
### Serve Command Options
In addition to the options below, the `serve` sub-command can accept any of the options
@@ -329,83 +116,39 @@ before your site is served.
</tr>
</thead>
<tbody>
<tr class="setting">
<td>
<p class="name"><strong>Local Server Port</strong></p>
<p class="description">Listen on the given port.</p>
</td>
<td class="align-center">
<p><code class="option">port: PORT</code></p>
<p><code class="flag">--port PORT</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Local Server Hostname</strong></p>
<p class="description">Listen at the given hostname.</p>
</td>
<td class="align-center">
<p><code class="option">host: HOSTNAME</code></p>
<p><code class="flag">--host HOSTNAME</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Base URL</strong></p>
<p class="description">Serve the website from the given base URL.</p>
</td>
<td class="align-center">
<p><code class="option">baseurl: URL</code></p>
<p><code class="flag">--baseurl URL</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Live Reload</strong></p>
<p class="description">Reload a page automatically on the browser when its content is edited.</p>
</td>
<td class="align-center">
<p><code class="option">livereload: true</code></p>
<p><code class="flag">--livereload</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Detach</strong></p>
<p class="description">Detach the server from the terminal.</p>
</td>
<td class="align-center">
<p><code class="option">detach: BOOL</code></p>
<p><code class="flag">-B, --detach</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>Skips the initial site build</strong></p>
<p class="description">Skips the initial site build which occurs before the server is started.</p>
</td>
<td class="align-center">
<p><code class="flag">--skip-initial-build</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>X.509 (SSL) Private Key</strong></p>
<p class="description">SSL Private Key, stored or symlinked in the site source.</p>
</td>
<td class="align-center">
<p><code class="flag">--ssl-key</code></p>
</td>
</tr>
<tr class="setting">
<td>
<p class="name"><strong>X.509 (SSL) Certificate</strong></p>
<p class="description">SSL Public certificate, stored or symlinked in the site source.</p>
</td>
<td class="align-center">
<p><code class="flag">--ssl-cert</code></p>
</td>
</tr>
{% for setting in site.data.config_options.serve %}
<tr class="setting">
<td>
<p class="name">
<strong>{{ setting.name }}</strong>
{% if setting.version-badge %}
<span class="version-badge" title="Introduced in v{{ setting.version-badge }}">{{ setting.version-badge }}</span>
{% endif %}
</p>
<p class="description">{{ setting.description }}</p>
</td>
<td class="align-center">
{% if setting.option %}
<p><code class="option">{{ setting.option }}</code></p>
{% elsif setting.options %}
<p>
{% for option in setting.options %}
<code class="option">{{ option }}</code><br>
{% endfor %}
</p>
{% endif %}
{% if setting.flag %}
<p><code class="flag">{{ setting.flag }}</code></p>
{% elsif setting.flags %}
<p>
{% for flag in setting.flags %}
<code class="flag">{{ flag }}</code><br>
{% endfor %}
</p>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>

View File

@@ -0,0 +1,15 @@
---
title: Sass/SCSS Options
permalink: "/docs/configuration/sass/"
---
Jekyll comes bundled with [jekyll-sass-converter](https://github.com/jekyll/jekyll-sass-converter) plugin. By default, Jekyll will look for Sass partials in the `_sass` directory relative to your site's `source` directory.
You can further configure the plugin by adding options to your Jekyll config under the `sass` attribute. See the [plugin's documentation](https://github.com/jekyll/jekyll-sass-converter#usage) for details and for its default values.
<div class="note info">
<p>
Note that directory paths specified in the <code>sass</code> configuration
are resolved relative to your site's <code>source</code>, not relative to the location of the <code>_config.yml</code> file.
</p>
</div>

View File

@@ -15,9 +15,9 @@ To start building your project on CircleCI, all you need to do is 'follow' your
1. Visit the 'Add Projects' page
1. From the GitHub or Bitbucket tab on the left, choose a user or organization.
1. Find your project in the list and click 'Build project' on the right.
1. The first build will start on its own. You can start telling CircleCI how to build your project by creating a [circle.yml][3] file in the root of your repository.
1. The first build will start on its own. You can start telling CircleCI how to build your project by creating a [.circleci/config.yml][3] file in the root of your repository.
[3]: https://circleci.com/docs/configuration/
[3]: https://circleci.com/docs/2.0/configuration-reference/
## 2. Dependencies
@@ -28,22 +28,24 @@ The easiest way to manage dependencies for a Jekyll project (with or without Cir
```ruby
source 'https://rubygems.org'
ruby '2.4.0'
ruby '2.7.4'
gem 'jekyll'
gem 'html-proofer'
```
CircleCI detects when `Gemfile` is present and will automatically run `bundle install` for you in the `dependencies` phase.
```yaml
- step:
run: bundle install
```
## 3. Testing
The most basic test that can be run is seeing if `jekyll build` actually works. This is a blocker, a dependency if you will, for other tests you might run on the generate site. So we'll run Jekyll, via Bundler, in the `dependencies` phase.
```yaml
dependencies:
post:
- bundle exec jekyll build
- step:
run: bundle exec jekyll build
```
### HTML Proofer
@@ -54,46 +56,32 @@ With your site built, it's useful to run tests to check for valid HTML, broken l
[6]: https://github.com/gjtorikian/html-proofer/blob/master/README.md#configuration
```yaml
test:
post:
- bundle exec htmlproofer ./_site --check-html --disable-external
- step:
run: bundle exec htmlproofer ./_site --check-html --disable-external
```
## Complete Example circle.yml File
## Complete Example .circleci/config.yml File
When you put it all together, here's an example of what that `circle.yml` file could look like in v1:
The example `.circleci/config.yml` below demonstrates how to
deploy your Jekyll project to AWS. In order for this to work you would first have to set the
`S3_BUCKET_NAME` [environment variable](https://circleci.com/docs/2.0/env-vars/).
```yaml
machine:
environment:
NOKOGIRI_USE_SYSTEM_LIBRARIES: true # speeds up installation of html-proofer
dependencies:
post:
- bundle exec jekyll build
test:
post:
- bundle exec htmlproofer ./_site --allow-hash-href --check-favicon --check-html --disable-external
deployment:
prod:
branch: master
commands:
- rsync -va --delete ./_site username@my-website:/var/html
```
for CircleCI v2, a Docker-based system which new projects will follow, set the `S3_BUCKET_NAME` environment variable (an example of the required config file is shown below).
```yaml
defaults: &defaults
working_directory: ~/repo
version: 2
workflows:
test-deploy:
jobs:
- build
- deploy:
requires:
- build
filters:
branches:
only: master
version: 2.1
jobs:
build:
<<: *defaults
docker:
- image: circleci/ruby:2.5
- image: cimg/ruby:2.7.4
environment:
BUNDLE_PATH: ~/repo/vendor/bundle
steps:
@@ -125,9 +113,8 @@ jobs:
paths:
- _site
deploy:
<<: *defaults
docker:
- image: circleci/python:3.6.3
- image: cimg/python:3.9.1
environment:
S3_BUCKET_NAME: <<YOUR BUCKET NAME HERE>>
steps:
@@ -139,17 +126,6 @@ jobs:
- run:
name: Upload to s3
command: ~/.local/bin/aws s3 sync ./_site s3://$S3_BUCKET_NAME/ --delete --acl public-read
workflows:
version: 2
test-deploy:
jobs:
- build
- deploy:
requires:
- build
filters:
branches:
only: master
```
## Questions?

View File

@@ -0,0 +1,232 @@
---
title: GitHub Actions
---
When building a Jekyll site with GitHub Pages, the standard flow is restricted for security reasons
and to make it simpler to get a site setup. For more control over the build and still host the site
with GitHub Pages you can use GitHub Actions.
## Advantages of using Actions
### Control over gemset
- **Jekyll version** --- Instead of using the currently enabled version at `3.9.0`, you can use any
version of Jekyll you want. For example `{{site.version}}`, or point directly to the repository.
- **Plugins** --- You can use any Jekyll plugins irrespective of them being on the
[supported versions][ghp-whitelist] list, even `*.rb` files placed in the `_plugins` directory
of your site.
- **Themes** --- While using a custom theme is possible without Actions, it is now simpler.
### Workflow Management
- **Customization** --- By creating a workflow file to run Actions, you can specify custom build
steps, use environment variables.
- **Logging** --- The build log is visible and can be tweaked to be verbose, so it is much easier to
debug errors using Actions.
## Workspace setup
The first and foremost requirement is a Jekyll project hosted at GitHub. Choose an existing Jekyll
project or follow the [quickstart]({{ '/docs/' | relative_url }}) and push the repository to GitHub
if it is not hosted there already.
We're only going to cover builds from the `main` branch in this page. Therefore, ensure that you
are working on the `main` branch. If necessary, you may create it based on your default branch.
When the Action builds your site, the contents of the _destination_ directory will be automatically
pushed to the `gh-pages` branch with a commit, ready to be used for serving.
{: .note .warning}
The Action we're using here will create (or reset an existing) `gh-pages` branch on every successful
deploy.<br/> So, if you have an existing `gh-pages` branch that is used to deploy your production
build, ensure to make a backup of the contents into a different branch so that you can rollback
easily if necessary.
The Jekyll site we'll be using for the rest of this page initially consists of just a `_config.yml`,
an `index.md` page and a `Gemfile`. The contents are respectively:
```yaml
# _config.yml
title: "Jekyll Actions Demo"
```
{% raw %}
```liquid
---
---
Welcome to My Home Page
{% assign date = '2020-04-13T10:20:00Z' %}
- Original date - {{ date }}
- With timeago filter - {{ date | timeago }}
```
{% endraw %}
```ruby
# Gemfile
source 'https://rubygems.org'
gem 'jekyll', '~> 4.2'
group :jekyll_plugins do
gem 'jekyll-timeago', '~> 0.13.1'
end
```
{: .note .info}
The demo site uses Jekyll 4 and a [third-party plugin][timeago-plugin], both of which are currently
not whitelisted for use on GitHub pages. The plugin will allow us to describe how far back a date
was from today. e.g. If we give a date as `2016-03-23T10:20:00Z` and the current date is
`2020-04-13T10:20:00Z`, then the output would be `4 years and 3 weeks ago`.
{: .note .info}
The action we're using takes care of installing the Ruby gems and dependencies. While that keeps
the setup simple for the user, one may encounter issues if they also check-in `Gemfile.lock` if it
was generated with an old version of Bundler.
### Setting up the Action
GitHub Actions are registered for a repository by using a YAML file inside the directory path
`.github/workflows` (note the dot at the start). For simplicity, here we use one of the
[Jekyll Actions](#external-links) to show you how to use the action.
Create a **workflow file**, say `github-pages.yml`, using either the GitHub interface or by pushing
a YAML file to the workflow directory path manually. The base contents are:
{% raw %}
```yaml
name: Build and deploy Jekyll site to GitHub Pages
on:
push:
branches:
- main # or master before October 2020
jobs:
github-pages:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/cache@v2
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile') }}
restore-keys: |
${{ runner.os }}-gems-
- uses: helaili/jekyll-action@2.0.5 # Choose any one of the Jekyll Actions
with: # Some relative inputs of your action
token: ${{ secrets.GITHUB_TOKEN }}
```
{% endraw %}
The above workflow can be explained as the following:
- We trigger the build using **on.push** condition for `main` branch only --- this prevents
the Action from overwriting the `gh-pages` branch on any feature branch pushes.
- The **name** of the job matches our YAML filename: `github-pages`.
- The **checkout** action takes care of cloning your repository.
- The **cache** action is an optimization to avoid fetching and installing gems on every build.
- We specify our selected **action** and **version number** using `helaili/jekyll-action@2.0.5`,
this handles the build and deploy. You can choose any one of the Jekyll Actions that matches
your project and flavor from [GitHub Marketplace](https://github.com/marketplace?type=actions&query=jekyll+action).
- We set a reference to a secret **environment variable** for the action to use. The `GITHUB_TOKEN`
is a secret token automatically initialized at the start of every workflow run.
More information can be found in [GitHub documentation](https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret).
Instead of using the **on.push** condition, you could trigger your build on a **schedule** by
using the [on.schedule] parameter. For example, here we build daily at midnight by specifying
**cron** syntax, which can be tested at the [crontab guru] site.
```yaml
on:
schedule:
- cron: "0 0 * * *"
```
Note that this string must be quoted to prevent the asterisks from being evaluated incorrectly.
[on.schedule]: https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#onschedule
[crontab guru]: https://crontab.guru/
### Providing permissions
At the start of each workflow run, GitHub automatically creates a unique `GITHUB_TOKEN` secret to use in
your workflow. You can use the `GITHUB_TOKEN` to authenticate in a workflow run. You can use the
`GITHUB_TOKEN` by using the standard syntax for referencing secrets: `${{ secrets.GITHUB_TOKEN }}`.
For more information, please read [GitHub's docs on token authentication][github-token-ref]
[github-token-ref]: https://docs.github.com/en/actions/security-guides/automatic-token-authentication
If you need a token that requires permissions that aren't available in the `GITHUB_TOKEN`, you can create
a Personal Access Token (PAT), and set it as a secret in your repository for this action to push to the
`gh-pages` branch:
1. On your GitHub profile, under **Developer Settings**, go to the [Personal Access Tokens][tokens]
section.
2. **Create** a token. Give it a name like "GitHub Actions" and ensure it has permissions to
`public_repos` (or the entire `repo` scope for private repository) --- necessary for the action
to commit to the `gh-pages` branch.
3. **Copy** the token value.
4. Go to your repository's **Settings** and then the **Secrets** tab.
5. **Create** a token named `YOUR_CUSTOM_TOKEN` (_important_). Give it a value using the value copied
above.
### Build and deploy
On pushing any local changes onto `main`, the action will be triggered and the build will
**start**.
To watch the progress and see any build errors, check on the build **status** using one of the
following approaches:
- **View by commit**
- Go to the repository level view in GitHub. Under the most recent commit (near the top) youll
see a **status symbol** next to the commit message as a tick or _X_. Hover over it and click
the **details** link.
- **Actions tab**
- Go to the repository's Actions tab. Click on the `jekyll` workflow tab.
If all goes well, all steps will be green and the built assets will now exist on the `gh-pages`
branch.
On a successful build, GitHub Pages will **publish** the site stored on the repository `gh-pages`
branches. Note that you do not need to setup a `gh-pages` branch or enable GitHub Pages, as the
action will take care of this for you.
(For private repositories, you'll have to upgrade to a paid plan).
To see the **live site**:
1. Go to the **environment** tab on your repository.
2. Click **View Deployment** to see the deployed site URL.
3. View your site at the **URL**. Make sure the `timeago` filter works as expected.
4. Optionally **add** this URL to your repository's main page and to your `README.md`, to make it
easy for people to find.
When you need to make further **changes** to the site, commit to `master` and push. The workflow
will build and deploy your site again.
Be sure **not to edit** the `gh-pages` branch directly, as any changes will be lost on the next
successful deploy from the Action.
## External links
- [jekyll-actions] is an action available on the GitHub Marketplace and was used in this guide.
- [jekyll-actions-quickstart] is an unofficial repository that includes a live demo of the
`jekyll-actions` action. That project can be used as a template for making a new site.
- [jekyll-action-ts] is another action to build and publish Jekyll sites on GiHub Pages that includes HTML formatting options with Prettier and caching.
- [jekyll-deploy-action] is a GitHub Action to deploy the Jekyll site conveniently for GitHub Pages (An alternative action with better speed and compatibility).
[ghp-whitelist]: https://pages.github.com/versions/
[timeago-plugin]: https://rubygems.org/gems/jekyll-timeago
[tokens]: https://github.com/settings/tokens
[jekyll-actions]: https://github.com/marketplace/actions/jekyll-actions
[jekyll-actions-quickstart]: https://github.com/MichaelCurrin/jekyll-actions-quickstart
[jekyll-action-ts]: https://github.com/limjh16/jekyll-action-ts
[jekyll-deploy-action]: https://github.com/jeffreytse/jekyll-deploy-action

View File

@@ -0,0 +1,61 @@
---
title: "Razorops"
---
[Razorops][razorops-homepage] is a complete container native CI/CD solution handling all aspects of the software lifecycle from the moment a commit is created until it is deployed to production.
Razorops has all the capabilities that you would expect from a CI/CD platform such as
1. Code compilation/build
2. Artifact packaging
3. Testing Automation(unit, integration, acceptance etc.)
4. Faster builds and shipping to production
Razorops is a single solution that implements the whole pipeline from start to deployment.
With [Razorops][razorops-homepage] you can set up your Jekyll websites project's build, test, and deploy steps just in 15 min. It supports [GitHub][github-homepage], [Bitbucket][bitbucket-homepage], and [GitLab][gitlab-homepage] repositories. The following guide will show you how to set up a free environment to build, test and deploy your Jekyll project.
[razorops-homepage]: https://razorops.com/
[docker-homepage]: https://www.docker.com/
[github-homepage]: https://github.com
[bitbucket-homepage]: https://bitbucket.org/
[gitlab-homepage]: https://gitlab.com
[deploy-s3]: https://razorops.com/blog/how-to-deploy-a-static-website-to-aws-s3-with-razorops-ci-cd/
## 1. Getting started
1. Log in at [https://razorops.com/][razorops-homepage] with your GitHub/Bitbucket or Gitlab account
2. Create a pipeline, choose your Git provider and select your Jekyll Project
3. Add .razorops.yaml file in your root directory of your project
4. Add environment var and your deployment is ready
5. Add build and deployment steps as shown in this post [How to Deploy a Static Website to AWS S3 with Razorops CI/CD][deploy-s3]
## 2. How it works
Whenever you make a push to the selected branch, your steps auto runs as defined in .razorops.yaml file
```yaml
tasks:
build-and-deploy:
steps:
- checkout
# commands to build jekyll website
- commands:
- bundle install
- JEKYLL_ENV=production bundle exec jekyll build
# Commands to upload static pages folder to AWS S3 or ftp
# Set AWS access key & secrets environment variables under
# Razorops dashboard project pipelines
- commands:
- aws s3 rm s3://$AWS_S3_BUCKET --recursive
- aws s3 cp _site s3://$AWS_S3_BUCKET --recursive
if: branch == 'main'
```
Build step generates _site folder as Jekyll default and during deploy you will able to ship code to s3 or any ftp server you can define any command to ship your website code to server.
Razorops is FREE for opensource projects, Try it Now
[https://razorops.com/][razorops-homepage]

View File

@@ -34,7 +34,7 @@ Save the commands you want to run and succeed in a file: `./script/cibuild`
### The HTML Proofer Executable
```sh
```bash
#!/usr/bin/env bash
set -e # halt script on error
@@ -105,17 +105,11 @@ branches:
- gh-pages # test the gh-pages branch
- /pages-(.*)/ # test every branch which starts with "pages-"
env:
global:
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true # speeds up installation of html-proofer
addons:
apt:
packages:
- libcurl4-openssl-dev
sudo: false # route your build to the container-based infrastructure for a faster build
cache: bundler # caching bundler gem packages will speed up build
# Optional: disable email notifications about the outcome of your builds
@@ -189,18 +183,6 @@ prefixed, exemplified above with the `/pages-(.*)/` regular expression.
The `branches` directive is completely optional. Travis will build from every
push to any branch of your repo if leave it out.
```yaml
env:
global:
- NOKOGIRI_USE_SYSTEM_LIBRARIES=true # speeds up installation of html-proofer
```
Using `html-proofer`? You'll want this environment variable. Nokogiri, used
to parse HTML files in your compiled site, comes bundled with libraries
which it must compile each time it is installed. Luckily, you can
dramatically decrease the install time of Nokogiri by setting the
environment variable `NOKOGIRI_USE_SYSTEM_LIBRARIES` to `true`.
<div class="note warning">
<h5>Be sure to exclude <code>vendor</code> from your
<code>_config.yml</code></h5>
@@ -212,16 +194,6 @@ environment variable `NOKOGIRI_USE_SYSTEM_LIBRARIES` to `true`.
exclude: [vendor]
```
By default you should supply the `sudo: false` command to Travis. This command
explicitly tells Travis to run your build on Travis's [container-based
infrastructure](https://docs.travis-ci.com/user/workers/container-based-infrastructure/#Routing-your-build-to-container-based-infrastructure). Running on the container-based infrastructure can often times
speed up your build. If you have any trouble with your build, or if your build
does need `sudo` access, modify the line to `sudo: required`.
```yaml
sudo: false
```
To speed up the build, you should cache the gem packages created by `bundler`.
Travis has a pre-defined [cache strategy for this tool][6] which should have
all the default configs to do exactly that.

View File

@@ -14,24 +14,24 @@ See the [support guidelines](https://jekyllrb.com/docs/support/)
Whether you're a developer, a designer, or just a Jekyll devotee, there are lots of ways to contribute. Here's a few ideas:
* [Install Jekyll on your computer](https://jekyllrb.com/docs/installation/) and kick the tires. Does it work? Does it do what you'd expect? If not, [open an issue](https://github.com/jekyll/jekyll/issues/new) and let us know.
* Comment on some of the project's [open issues](https://github.com/jekyll/jekyll/issues). Have you experienced the same problem? Know a work around? Do you have a suggestion for how the feature could be better?
* Read through the [documentation](https://jekyllrb.com/docs/home/), and click the "improve this page" button, any time you see something confusing, or have a suggestion for something that could be improved.
* Browse through the [Jekyll discussion forum](https://talk.jekyllrb.com/), and lend a hand answering questions. There's a good chance you've already experienced what another user is experiencing.
* Find an [open issue](https://github.com/jekyll/jekyll/issues) (especially [those labeled `help-wanted`](https://github.com/jekyll/jekyll/issues?q=is%3Aopen+is%3Aissue+label%3Ahelp-wanted)), and submit a proposed fix. If it's your first pull request, we promise we won't bite, and are glad to answer any questions.
* Help evaluate [open pull requests](https://github.com/jekyll/jekyll/pulls), by testing the changes locally and reviewing what's proposed.
- [Install Jekyll on your computer](https://jekyllrb.com/docs/installation/) and kick the tires. Does it work? Does it do what you'd expect? If not, [open an issue](https://github.com/jekyll/jekyll/issues/new) and let us know.
- Comment on some of the project's [open issues](https://github.com/jekyll/jekyll/issues). Have you experienced the same problem? Know a work around? Do you have a suggestion for how the feature could be better?
- Read through the [documentation](https://jekyllrb.com/docs/home/), and click the "improve this page" button, any time you see something confusing, or have a suggestion for something that could be improved.
- Browse through the [Jekyll discussion forum](https://talk.jekyllrb.com/), and lend a hand answering questions. There's a good chance you've already experienced what another user is experiencing.
- Find an [open issue](https://github.com/jekyll/jekyll/issues) (especially [those labeled `help-wanted`](https://github.com/jekyll/jekyll/issues?q=is%3Aopen+is%3Aissue+label%3Ahelp-wanted)), and submit a proposed fix. If it's your first pull request, we promise we won't bite, and are glad to answer any questions.
- Help evaluate [open pull requests](https://github.com/jekyll/jekyll/pulls), by testing the changes locally and reviewing what's proposed.
## Submitting a pull request
### Pull requests generally
* The smaller the proposed change, the better. If you'd like to propose two unrelated changes, submit two pull requests.
- The smaller the proposed change, the better. If you'd like to propose two unrelated changes, submit two pull requests.
* The more information, the better. Make judicious use of the pull request body. Describe what changes were made, why you made them, and what impact they will have for users.
- The more information, the better. Make judicious use of the pull request body. Describe what changes were made, why you made them, and what impact they will have for users.
* If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/).
- If this is your first pull request, it may help to [understand GitHub Flow](https://guides.github.com/introduction/flow/).
* If you're submitting a code contribution, be sure to read the [code contributions](#code-contributions) section below.
- If you're submitting a code contribution, be sure to read the [code contributions](#code-contributions) section below.
### Submitting a pull request via github.com
@@ -80,11 +80,12 @@ If you ever need to update our documentation with an icon that is not already av
5. Click `Generate Font` on the bottom-horizontal-bar.
6. Inspect the included icons and proceed by clicking `Download`.
7. Extract the font files and adapt the CSS to the paths we use in Jekyll:
- Copy the entire `fonts` directory over and overwrite existing ones at `<jekyll>/docs/`.
- Copy the contents of `selection.json` and overwrite existing content inside `<jekyll>/docs/icomoon-selection.json`.
- Copy the entire `@font-face {}` declaration and only the **new-icon(s)' css declarations** further below, to update the
- Copy the entire `fonts` directory over and overwrite existing ones at `<jekyll>/docs/`.
- Copy the contents of `selection.json` and overwrite existing content inside `<jekyll>/docs/icomoon-selection.json`.
- Copy the entire `@font-face {}` declaration and only the **new-icon(s)' css declarations** further below, to update the
`<jekyll>/docs/_sass/_font-awesome.scss` sass partial.
- Fix paths in the `@font-face {}` declaration by adding `../` before `fonts/FontAwesome.*` like so:
- Fix paths in the `@font-face {}` declaration by adding `../` before `fonts/FontAwesome.*` like so:
`('../fonts/Fontawesome.woff?9h6hxj')`.
### Adding plugins
@@ -105,21 +106,21 @@ If your contribution changes any Jekyll behavior, make sure to update the docume
#### Tests
* If you're creating a small fix or patch to an existing feature, a simple test is more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need you can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks).
- If you're creating a small fix or patch to an existing feature, a simple test is more than enough. You can usually copy/paste from an existing example in the `tests` folder, but if you need you can find out about our tests suites [Shoulda](https://github.com/thoughtbot/shoulda/tree/master) and [RSpec-Mocks](https://github.com/rspec/rspec-mocks).
* If it's a brand new feature, create a new [Cucumber](https://github.com/cucumber/cucumber/) feature, reusing existing steps where appropriate.
- If it's a brand new feature, create a new [Cucumber](https://github.com/cucumber/cucumber/) feature, reusing existing steps where appropriate.
### Code contributions generally
* Jekyll uses the [Rubocop](https://github.com/bbatsov/rubocop) static analyzer to ensure that contributions follow the [GitHub Ruby Styleguide](https://github.com/styleguide/ruby). Please check your code using `script/fmt` and resolve any errors before pushing your branch.
- Jekyll uses the [Rubocop](https://github.com/bbatsov/rubocop) static analyzer to ensure that contributions follow the [GitHub Ruby Styleguide](https://github.com/styleguide/ruby). Please check your code using `script/fmt` and resolve any errors before pushing your branch.
* Don't bump the Gem version in your pull request (if you don't know what that means, you probably didn't).
- Don't bump the Gem version in your pull request (if you don't know what that means, you probably didn't).
* You can use the command `script/console` to start a REPL to explore the result of
Jekyll's methods. It also provides you with helpful methods to quickly create a
site or configuration. [Feel free to check it out!](https://github.com/jekyll/jekyll/blob/master/script/console)
- You can use the command `script/console` to start a REPL to explore the result of
Jekyll's methods. It also provides you with helpful methods to quickly create a
site or configuration. [Feel free to check it out!](https://github.com/jekyll/jekyll/blob/master/script/console)
* Previously, we've used the WIP Probot app to help contributors determine whether their pull request is ready for review. Please use a [draft pull request](https://help.github.com/en/articles/about-pull-requests#draft-pull-requests) instead. When you're ready, [mark the pull request as ready for review](https://help.github.com/en/articles/changing-the-stage-of-a-pull-request)
- Previously, we've used the WIP Probot app to help contributors determine whether their pull request is ready for review. Please use a [draft pull request](https://help.github.com/en/articles/about-pull-requests#draft-pull-requests) instead. When you're ready, [mark the pull request as ready for review](https://help.github.com/en/articles/changing-the-stage-of-a-pull-request)
## Running tests locally
@@ -152,6 +153,10 @@ script/cucumber features/blah.feature
Both `script/test` and `script/cucumber` can be run without arguments to
run its entire respective suite.
## Visual Studio Code Development Container
If you've got [Visual Studio Code](https://code.visualstudio.com/) with the [Remote Development Extension Pack](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.vscode-remote-extensionpack) installed then simply opening this repository in Visual Studio Code and following the prompts to "Re-open In A Development Container" will get you setup and ready to go with a fresh environment with all the requirements installed.
## A thank you
Thanks! Hacking on Jekyll should be fun. If you find any of this hard to figure out, let us know so we can improve our process or documentation!

View File

@@ -3,9 +3,9 @@ title: Data Files
permalink: /docs/datafiles/
---
In addition to the [built-in variables](../variables/) available from Jekyll,
In addition to the [built-in variables]({{'/docs/variables/' | relative_url }}) available from Jekyll,
you can specify your own custom data that can be accessed via the [Liquid
templating system](https://wiki.github.com/shopify/liquid/liquid-for-designers).
templating system](https://github.com/Shopify/liquid/wiki/Liquid-for-Designers).
Jekyll supports loading data from [YAML](http://yaml.org/), [JSON](http://www.json.org/), [CSV](https://en.wikipedia.org/wiki/Comma-separated_values), and [TSV](https://en.wikipedia.org/wiki/Tab-separated_values) files located in the `_data` directory.
Note that CSV and TSV files *must* contain a header row.
@@ -18,8 +18,8 @@ Plugins/themes can also leverage Data Files to set configuration variables.
## The Data Folder
The `_data` folder is where you can store additional data for Jekyll to use when
generating your site. These files must be YAML, JSON, or CSV files (using either
the `.yml`, `.yaml`, `.json` or `.csv` extension), and they will be
generating your site. These files must be YAML, JSON, TSV or CSV files (using either
the `.yml`, `.yaml`, `.json`, `.tsv`, or `.csv` extension), and they will be
accessible via `site.data`.
## Example: List of members
@@ -42,15 +42,15 @@ In `_data/members.yml`:
Or `_data/members.csv`:
```text
```
name,github
Eric Mill,konklone
Parker Moore,parkr
Liu Fengyun,liufengyun
```
This data can be accessed via `site.data.members` (notice that the filename
determines the variable name).
This data can be accessed via `site.data.members` (notice that the file's *basename* determines the variable name and
therefore one should avoid having data files with the same basename but different extensions, in the same directory).
You can now render the list of members in a template:
@@ -147,4 +147,31 @@ author: dave
```
{% endraw %}
For information on how to build robust navigation for your site (especially if you have a documentation website or another type of Jekyll site with a lot of pages to organize), see [Navigation](/tutorials/navigation).
For information on how to build robust navigation for your site (especially if you have a documentation website or another type of Jekyll site with a lot of pages to organize), see [Navigation]({{ '/tutorials/navigation/' | relative_url }}).
## CSV/TSV Parse Options
The way Ruby parses CSV and TSV files can be customized with the `csv_reader` and `tsv_reader`
configuration options. Each configuration key exposes the same options:
`converters`: What [CSV converters](https://ruby-doc.org/stdlib-2.5.0/libdoc/csv/rdoc/CSV.html#Converters) should be
used when parsing the file. Available options are `integer`, `float`, `numeric`, `date`, `date_time` and
`all`. By default, this list is empty.
`encoding`: What encoding the files are in. Defaults to the site `encoding` configuration option.
`headers`: Boolean field for whether to parse the first line of the file as headers. When `false`, it treats the
first row as data. Defaults to `true`.
Examples:
```yaml
csv_reader:
converters:
- numeric
- datetime
headers: true
encoding: utf-8
tsv_reader:
converters:
- all
headers: false
```

View File

@@ -6,6 +6,6 @@ redirect_from: "/docs/deployment-methods/index.html"
Sites built using Jekyll can be deployed in a large number of ways due to the static nature of the generated output. Here's some of the most common ways:
* [Manually](/docs/deployment/manual/)
* [Automated](/docs/deployment/automated/)
* [Third Party](/docs/deployment/third-party/)
* [Manually]({{ '/docs/deployment/manual/' | relative_url }})
* [Automated]({{ '/docs/deployment/automated/' | relative_url }})
* [Third Party]({{ '/docs/deployment/third-party/' | relative_url }})

View File

@@ -11,13 +11,15 @@ CI.
These services run a script when there's a commit on your Git repository.
You might want this script to build the site, run tests over the output then deploy it to the
service of your choice.
service of your choice.
We have guides for the following providers:
* [Travis CI](/docs/continuous-integration/travis-ci/)
* [CircleCI](/docs/continuous-integration/circleci/)
* [Buddy](/docs/continuous-integration/buddyworks/)
* [GitHub Actions]({{ '/docs/continuous-integration/github-actions/' | relative_url }})
* [Travis CI]({{ '/docs/continuous-integration/travis-ci/' | relative_url }})
* [CircleCI]({{ '/docs/continuous-integration/circleci/' | relative_url }})
* [Buddy]({{ '/docs/continuous-integration/buddyworks/' | relative_url }})
* [Razorops CI/CD]({{ '/docs/continuous-integration/razorops/' | relative_url }})
## Git post-receive hook
@@ -42,12 +44,11 @@ installed on the server:
export GEM_HOME=$HOME/gems
export PATH=$GEM_HOME/bin:$PATH
GIT_REPO=$HOME/myrepo.git
TMP_GIT_CLONE=$HOME/tmp/myrepo
GEMFILE=$TMP_GIT_CLONE/Gemfile
PUBLIC_WWW=/var/www/myrepo
git clone $GIT_REPO $TMP_GIT_CLONE
git clone $GIT_DIR $TMP_GIT_CLONE
BUNDLE_GEMFILE=$GEMFILE bundle install
BUNDLE_GEMFILE=$GEMFILE bundle exec jekyll build -s $TMP_GIT_CLONE -d $PUBLIC_WWW
rm -Rf $TMP_GIT_CLONE

View File

@@ -25,13 +25,12 @@ low-volume blogs as you only pay for what you use.
## FTP
Most traditional web hosting provider let you upload files to their servers over FTP. To upload a Jekyll site to a web host using FTP, run the `jekyll build` command and copy the contents of the generated `_site` folder to the root folder of your hosting account. This is most likely to be the `httpdocs` or `public_html` folder on most hosting providers.
Most traditional web hosting providers let you upload files to their servers over FTP. To upload a Jekyll site to a web host using FTP, run the `jekyll build` command and copy the contents of the generated `_site` folder to the root folder of your hosting account. This is most likely to be the `httpdocs` or `public_html` folder on most hosting providers.
## scp
If you have direct access to the deployment web server, the process is essentially the same, except you might have other methods available to you (such as `scp`, or even direct filesystem access) for transferring the files. Remember to make sure the contents of the generated `_site` folder get placed in the appropriate web root directory for your web server.
## Rack-Jekyll
[Rack-Jekyll](https://github.com/adaoraul/rack-jekyll/) allows you to deploy your site on any Rack server such as Amazon EC2, Slicehost, Heroku, and so forth. It also can run with [shotgun](https://github.com/rtomayko/shotgun/), [rackup](https://github.com/rack/rack), [mongrel](https://github.com/mongrel/mongrel), [unicorn](https://github.com/defunkt/unicorn/), and [others](https://github.com/adaoraul/rack-jekyll#readme).

View File

@@ -3,17 +3,16 @@ title: 3rd Party
permalink: /docs/deployment/third-party/
---
## Aerobatic
[Aerobatic](https://www.aerobatic.com) has custom domains, global CDN distribution, basic auth, CORS proxying, and a growing list of plugins all included.
Automating the deployment of a Jekyll site is simple. See their [Jekyll docs](https://www.aerobatic.com/docs/static-site-generators/#jekyll) for more details. Your built `_site` folder is deployed to their highly-available, globally distributed hosting service.
## AWS Amplify
The [AWS Amplify Console](https://console.amplify.aws) provides continuous deployment and hosting for modern web apps (single page apps and static site generators). Continuous deployment allows developers to deploy updates to their web app on every code commit to their Git repository. Hosting includes features such as globally available CDNs, 1-click custom domain setup + HTTPS, feature branch deployments, redirects, trailing slashes, and password protection.
Read this [step-by-step guide](https://medium.com/@FizzyInTheHall/build-and-publish-a-jekyll-powered-blog-easily-with-aws-amplify-529852042ab6) to deploy and host your Jekyll site on AWS Amplify.
Read this [step-by-step guide](https://medium.com/@jameshamann/deploy-your-jekyll-site-using-aws-amplify-with-only-a-few-clicks-8f3dd8f26112) to deploy and host your Jekyll site on AWS Amplify.
## Bip
[Bip](https://bip.sh) provides zero downtime deployment, a global CDN, SSL, unlimited bandwidth and more for Jekyll websites. Deploy in seconds from the command line. [Visit the Bip website](https://bip.sh) for more information - which is also built with Jekyll.
## CloudCannon
@@ -25,6 +24,15 @@ continuous deployment and [more](https://cloudcannon.com/features/).
Sites on GitHub Pages are powered by Jekyll behind the scenes, so if youre looking for a zero-hassle, zero-cost solution, GitHub Pages are a great way to [host your Jekyll-powered website for free](/docs/github-pages/).
## GitLab Pages
[GitLab Pages](https://about.gitlab.com/stages-devops-lifecycle/pages/) offers free hosting with custom domains. [Get started with Jekyll](https://docs.gitlab.com/ee/user/project/pages/getting_started_part_four.html#practical-example) and a fully customizable pipeline.
## KeyCDN
[KeyCDN](https://www.keycdn.com) accelerates Jekyll-powered websites with a wide range of other features such as real time image processing including WebP transformation.
The [Jekyll hosting tutorial](https://www.keycdn.com/support/jekyll-hosting) provides various options to supercharge Jekyll sites with just a few steps. It combines best flexibility and excellent performance.
## Kickster
Use [Kickster](http://kickster.nielsenramon.com/) for automated deploys to GitHub Pages when using unsupported plugins on GitHub Pages.
@@ -33,13 +41,34 @@ Kickster provides a basic Jekyll project setup packed with web best practises an
Install the Kickster gem and you are good to go. More documentation can here found [here](https://github.com/nielsenramon/kickster#kickster). If you do not want to use the gem or start a new project you can just copy paste the deployment scripts for [Travis CI](https://github.com/nielsenramon/kickster/tree/master/snippets/travis) or [Circle CI](https://github.com/nielsenramon/kickster#automated-deployment-with-circle-ci).
## Netlify
Netlify provides Global CDN, Continuous Deployment, one click HTTPS and [much more](https://www.netlify.com/features/), providing developers the most robust toolset available for modern web projects, without added complexity. Netlify supports custom plugins for Jekyll and has a free plan for open source projects.
Netlify provides Global CDN, Continuous Deployment, one click HTTPS and [much more](https://www.netlify.com/features/), providing developers a robust toolset for modern web projects, without added complexity. Netlify supports custom plugins for Jekyll and has a free plan for open source projects.
Read this [Jekyll step-by-step guide](https://www.netlify.com/blog/2015/10/28/a-step-by-step-guide-jekyll-3.0-on-netlify/) to setup your Jekyll site on Netlify.
Read this [Jekyll step-by-step guide](https://www.netlify.com/blog/2020/04/02/a-step-by-step-guide-jekyll-4.0-on-netlify/) to setup your Jekyll site on Netlify.
## Render
[Render](https://render.com) provides zero config continuous deployment for static sites. The service is free under 100GB monthly bandwidth.
## Hostman
[Hostman](https://hostman.com) allows you to host websites for free with no configurations. Read [this guide](https://hostman.com/docs/jekyll) to deploy your Jekyll site on Hostman.
## Static Publisher
[Static Publisher](https://github.com/static-publisher/static-publisher) is another automated deployment option with a server listening for webhook posts, though it's not tied to GitHub specifically. It has a one-click deploy to Heroku, it can watch multiple projects from one server, it has an easy to user admin interface and can publish to either S3 or to a git repository (e.g. gh-pages).
## Vercel
[Vercel](https://vercel.com/) provides zero config continuous deployment, HTTPS Custom domains, high performance smart CDN, you get instant static deploy for free.
## 21YunBox
[21YunBox](https://www.21yunbox.com) provides blazing fast Chinese CDN, Continuous Deployment, one click HTTPS and [much more](https://www.21yunbox.com/docs/), providing developers a hassle-free solution to launch their web projects in China.
Read this [Jekyll step-by-step guide](https://www.21yunbox.com/docs/#/deploy-jekyll) to deploy your Jekyll site on 21YunBox.
## Layer0
[Layer0](https://www.layer0.co) is an all-in-one platform to develop, deploy, preview, experiment on, monitor, and run your headless frontend. It is focused on large, dynamic websites and best-in-class performance through EdgeJS (a JavaScript-based Content Delivery Network), predictive prefetching, and performance monitoring. Layer0 offers a free tier. Get started in just a few minutes by following [Layer0's guide to deploying Jekyll](https://docs.layer0.co/guides/jekyll).

View File

@@ -18,7 +18,7 @@ title: Blogging Like a Hacker
Between these triple-dashed lines, you can set predefined variables (see below
for a reference) or even create custom ones of your own. These variables will
then be available to you to access using Liquid tags both further down in the
then be available for you to access using Liquid tags both further down in the
file and also in any layouts or includes that the page or post in question
relies on.
@@ -28,14 +28,14 @@ relies on.
If you use UTF-8 encoding, make sure that no <code>BOM</code> header
characters exist in your files or very, very bad things will happen to
Jekyll. This is especially relevant if youre running
<a href="/docs/installation/windows/">Jekyll on Windows</a>.
<a href="{{ '/docs/installation/windows/' | relative_url }}">Jekyll on Windows</a>.
</p>
</div>
<div class="note">
<h5>Front Matter Variables Are Optional</h5>
<p>
If you want to use <a href="/docs/variables/">Liquid tags and variables</a>
If you want to use <a href="{{ '/docs/variables/' | relative_url }}">Liquid tags and variables</a>
but dont need anything in your front matter, just leave it empty! The set
of triple-dashed lines with nothing in between will still get Jekyll to
process your file. (This is useful for things like CSS and RSS feeds!)
@@ -72,7 +72,7 @@ front matter of a page or post.
<li>
Using <code>null</code> will produce a file without using a layout
file. This is overridden if the file is a post/document and has a
layout defined in the <a href="/docs/configuration/front-matter-defaults/">
layout defined in the <a href="{{ '/docs/configuration/front-matter-defaults/' | relative_url }}">
front matter defaults</a>.
</li>
<li>
@@ -117,7 +117,7 @@ front matter of a page or post.
<h5>Render Posts Marked As Unpublished</h5>
<p>
To preview unpublished pages, run `jekyll serve` or `jekyll build`
with the `--unpublished` switch. Jekyll also has a handy <a href="/docs/posts/#drafts">drafts</a>
with the `--unpublished` switch. Jekyll also has a handy <a href="{{ '/docs/posts/#drafts' | relative_url }}">drafts</a>
feature tailored specifically for blog posts.
</p>
</div>
@@ -204,7 +204,8 @@ These are available out-of-the-box to be used in the front matter for a post.
<h5>Don't repeat yourself</h5>
<p>
If you don't want to repeat your frequently used front matter variables
over and over, define <a href="/docs/configuration/front-matter-defaults/" title="Front Matter defaults">defaults</a>
over and over, define
<a href="{{ '/docs/configuration/front-matter-defaults/' | relative_url }}" title="Front Matter defaults">defaults</a>
for them and only override them where necessary (or not at all). This works
both for predefined and custom variables.
</p>

View File

@@ -15,40 +15,20 @@ simply because Jekyll treats files without front matter as static assets.
So if you only need to push generated HTML, you're good to go without any
further setup.
Never built a website with GitHub Pages before? [See this marvelous guide by
Jonathan McGlone](http://jmcglone.com/guides/github-pages/) to get you up and
running. This guide will teach you what you need to know about Git, GitHub, and
Jekyll to create your very own website on GitHub Pages.
The [GitHub Pages Documentation](https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages)
is comprehensive and includes a [a guide to setting up a GitHub Pages site using
Jekyll](https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/setting-up-a-github-pages-site-with-jekyll).
We recommend following this guide.
## The github-pages gem
Our friends at GitHub have provided the
[github-pages](https://github.com/github/pages-gem) gem which is used to manage
[Jekyll and its dependencies on GitHub Pages](https://pages.github.com/versions/).
Using it in your projects means that when you deploy your site to GitHub Pages,
you will not be caught by unexpected differences between various versions of the
gems.
Note that GitHub Pages runs in `safe` mode and only allows [a set of whitelisted
plugins](https://help.github.com/articles/configuring-jekyll-plugins/#default-plugins).
To use the currently-deployed version of the gem in your project, add the
following to your `Gemfile`:
```ruby
source "https://rubygems.org"
gem "github-pages", group: :jekyll_plugins
```
Be sure to run `bundle update` often.
This page contains some additional information which may be useful when working
on GitHub Pages sites with Jekyll.
<div class="note">
<h5>GitHub Pages Documentation, Help, and Support</h5>
<p>
For more information about what you can do with GitHub Pages, as well as for
troubleshooting guides, you should check out
<a href="https://help.github.com/categories/github-pages-basics/">GitHubs Pages Help section</a>.
<a href="https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages">GitHubs Pages Help section</a>.
If all else fails, you should contact <a href="https://github.com/contact">GitHub Support</a>.
</p>
</div>
@@ -58,12 +38,12 @@ Be sure to run `bundle update` often.
Sometimes it's nice to preview your Jekyll site before you push your `gh-pages`
branch to GitHub. The subdirectory-like URL structure GitHub uses for
Project Pages complicates the proper resolution of URLs. In order to assure your
site builds properly, use the handy [URL filters](/docs/liquid/filters/):
site builds properly, use the handy [URL filters]({{ '/docs/liquid/filters/' | relative_url }}):
{% raw %}
```liquid
<!-- For styles with static names... -->
<link href="{{ "/assets/css/style.css" | relative_url }}" rel="stylesheet">
<link href="{{ 'assets/css/style.css' | relative_url }}" rel="stylesheet">
<!-- For documents/pages whose URLs can change... -->
[{{ page.title }}]("{{ page.url | relative_url }}")
```
@@ -76,7 +56,7 @@ will resolve properly.
## Deploying Jekyll to GitHub Pages
GitHub Pages work by looking at certain branches of repositories on GitHub.
There are two basic types available: [user/organization and project pages](https://help.github.com/articles/user-organization-and-project-pages/).
There are two basic types available: [user/organization and project pages](https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/about-github-pages#types-of-github-pages-sites).
The way to deploy these two types of sites are nearly identical, except for a
few minor details.
@@ -115,14 +95,14 @@ looking at right now is contained in the [docs
folder]({{ site.repository }}/tree/master/docs) of the same repository.
Please refer to GitHub official documentation on
[user, organization and project pages](https://help.github.com/articles/user-organization-and-project-pages/)
[user, organization and project pages](https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/about-github-pages#types-of-github-pages-sites)
to see more detailed examples.
<div class="note warning">
<h5>Source files must be in the root directory</h5>
<p>
GitHub Pages <a href="https://help.github.com/articles/troubleshooting-github-pages-build-failures#source-setting">overrides</a>
the <a href="/docs/configuration/options/">“Site Source”</a>
GitHub Pages <a href="https://help.github.com/en/github/working-with-github-pages/troubleshooting-jekyll-build-errors-for-github-pages-sites">overrides</a>
the <a href="{{ '/docs/configuration/options/' | relative_url }}">“Site Source”</a>
configuration value, so if you locate your files anywhere other than the
root directory, your site may not build correctly.
</p>
@@ -135,6 +115,17 @@ to see more detailed examples.
While Windows is not officially supported, it is possible
to install the <code>github-pages</code> gem on Windows.
Special instructions can be found on our
<a href="/docs/installation/windows/">Windows-specific docs page</a>.
<a href="{{ '/docs/installation/windows/' | relative_url }}">Windows-specific docs page</a>.
</p>
</div>
### Running and Testing Locally
Once the project is configured with the github-pages environment, it's quite hard to switch back and forth with the local settings and the production-level settings. For that we can use certain CLI options to make the workflow hassle-free.
```sh
bundle exec jekyll serve --baseurl=""
```
This will run the jekyll server on your local machine i.e. on `http://localhost:4000`. Refer <a href="{{ '/docs/configuration/options/#serve-command-options' | relative_url }}">server options</a> for available options.

View File

@@ -4,6 +4,333 @@ permalink: "/docs/history/"
note: This file is autogenerated. Edit /History.markdown instead.
---
## 4.2.2 / 2022-03-03
{: #v4-2-2}
### Bug Fixes
{: #bug-fixes-v4-2-2}
- Lock `http_parser.rb` gem to `v0.6.x` on JRuby.
### Development Fixes
{: #development-fixes-v4-2-2}
- Backport [#8830]({{ site.repository }}/issues/8830) for v4.2.x: Add a workflow to build gems consistently ([#8869]({{ site.repository }}/issues/8869))
- Lock `rubocop-performance` to `v1.11.x`.
## 4.2.1 / 2021-09-27
{: #v4-2-1}
### Bug Fixes
{: #bug-fixes-v4-2-1}
- Backport [#8620]({{ site.repository }}/issues/8620) for v4.2.x: Revert [#7253]({{ site.repository }}/issues/7253): "Don't reset site.url to localhost:4000 by default" ([#8808]({{ site.repository }}/issues/8808))
- Backport [#8756]({{ site.repository }}/issues/8756) for v4.2.x: Respect collections_dir config within include tag ([#8794]({{ site.repository }}/issues/8794))
- Backport [#8786]({{ site.repository }}/issues/8786) for v4.2.x: Fix regression in Convertible module from v4.2.0 ([#8793]({{ site.repository }}/issues/8793))
## 4.2.0 / 2020-12-14
{: #v4-2-0}
### Minor Enhancements
{: #minor-enhancements-v4-2-0}
- Warn on command-line with permalink conflict ([#8342]({{ site.repository }}/issues/8342))
- Suppress warning issued for redirect pages ([#8347]({{ site.repository }}/issues/8347))
- Enhance detection of conflicting destination URLs ([#8459]({{ site.repository }}/issues/8459))
- Add `:post_convert` hook to modify HTML content before layout ([#8368]({{ site.repository }}/issues/8368))
- Allow triggering `:post_convert` events atomically ([#8465]({{ site.repository }}/issues/8465))
- Debug reading Page and Layout objects ([#8100]({{ site.repository }}/issues/8100))
- Do not reset `site.url` to `http://localhost:4000` by default ([#7253]({{ site.repository }}/issues/7253))
- Add custom debug strings for Jekyll objects ([#8473]({{ site.repository }}/issues/8473))
- Debug reading data files in a site ([#8481]({{ site.repository }}/issues/8481))
### Bug Fixes
{: #bug-fixes-v4-2-0}
- Replace nested conditional with guard clauses ([#8294]({{ site.repository }}/issues/8294))
- Fix: security bump ([#8349]({{ site.repository }}/issues/8349))
- Fix path matching regex in post_url Liquid tag ([#8375]({{ site.repository }}/issues/8375))
- Enable `Performance/ChainArrayAllocation` cop ([#8404]({{ site.repository }}/issues/8404))
- Enable Lint/NoReturnInBeginEndBlocks Cop ([#8457]({{ site.repository }}/issues/8457))
- Generate items from `site.include` list only once ([#8463]({{ site.repository }}/issues/8463))
- Explicitly return nil after site process phase ([#8472]({{ site.repository }}/issues/8472))
### Optimization Fixes
{: #optimization-fixes-v4-2-0}
- Implement custom delegators for drop methods ([#8183]({{ site.repository }}/issues/8183))
- Handle `nil` argument to `Jekyll.sanitized_path` ([#8415]({{ site.repository }}/issues/8415))
- Cache `Jekyll.sanitized_path` ([#8424]({{ site.repository }}/issues/8424))
- Memoize array of drop getter method names ([#8421]({{ site.repository }}/issues/8421))
- Reduce string allocations from the `link` tag ([#8387]({{ site.repository }}/issues/8387))
- Optimize parsing of parameters in `include` tag ([#8192]({{ site.repository }}/issues/8192))
- Stash documents `write?` attribute in a variable ([#8389]({{ site.repository }}/issues/8389))
- Reduce string allocations from generating doc URLs ([#8392]({{ site.repository }}/issues/8392))
- Check if site is in incremental mode optimally ([#8401]({{ site.repository }}/issues/8401))
- Utilize flexibility of `Site#in_dest_dir` ([#8403]({{ site.repository }}/issues/8403))
- Reduce allocations from rendering item as liquid ([#8406]({{ site.repository }}/issues/8406))
- Compute relative_path of pages using PathManager ([#8408]({{ site.repository }}/issues/8408))
- Reduce allocation from `normalize_whitespace` filter ([#8400]({{ site.repository }}/issues/8400))
- Use `Regexp#match?` when `MatchData` is not required ([#8427]({{ site.repository }}/issues/8427))
- Check default front matter scope against symbols ([#8393]({{ site.repository }}/issues/8393))
- Stash frequently used `Drop` setter keys for reuse ([#8394]({{ site.repository }}/issues/8394))
- Memoize defaults computed for Convertibles ([#8451]({{ site.repository }}/issues/8451))
- Reduce array allocations from merging categories ([#8453]({{ site.repository }}/issues/8453))
- Memoize destination of pages, documents and staticfiles ([#8458]({{ site.repository }}/issues/8458))
- Reduce allocations from computing item property ([#8485]({{ site.repository }}/issues/8485))
- Optimize `Page#dir` with a private method ([#8489]({{ site.repository }}/issues/8489))
- Stash attribute hash for Liquid computed for pages ([#8497]({{ site.repository }}/issues/8497))
### Development Fixes
{: #development-fixes-v4-2-0}
- Update cucumber gem to version 4.1 ([#8278]({{ site.repository }}/issues/8278))
- Move permalink styles data to constant ([#8282]({{ site.repository }}/issues/8282))
- Update rubocop gem to 0.87.1 ([#8287]({{ site.repository }}/issues/8287))
- Update RuboCop to-do file ([#8296]({{ site.repository }}/issues/8296))
- Fix `rake console` generating LoadError ([#8312]({{ site.repository }}/issues/8312))
- Configure Performance cops ([#8369]({{ site.repository }}/issues/8369))
- Update rubocop gem to 0.90.0 ([#8313]({{ site.repository }}/issues/8313))
- Refactor `Jekyll::Utils::Platforms` ([#7236]({{ site.repository }}/issues/7236))
- Bump RuboCop to v0.91.x ([#8391]({{ site.repository }}/issues/8391))
- Add workflow to build and profile third-party repo ([#8398]({{ site.repository }}/issues/8398))
- Bump RuboCop to v0.92.x
- Update cucumber gem version to 5.1.2 ([#8413]({{ site.repository }}/issues/8413))
- Fix test suite compatibility with JRuby ([#8418]({{ site.repository }}/issues/8418))
- chore(deps): bump Rubocop to 0.93.0 ([#8430]({{ site.repository }}/issues/8430))
- Use Ruby 2.7.1 in GitHub Actions ([#8444]({{ site.repository }}/issues/8444))
- Test that Liquid expressions are not deeply evaled ([#8292]({{ site.repository }}/issues/8292))
- Test rendering arbitrary Liquid variables by default ([#7414]({{ site.repository }}/issues/7414))
- Migrate TravisCI jobs to GitHub Actions ([#8492]({{ site.repository }}/issues/8492))
### Documentation
- Update pointer to special permalink variables for collections ([#8274]({{ site.repository }}/issues/8274))
- Fix special treatment for &#39;page 1&#39; in docs of pagination ([#8230]({{ site.repository }}/issues/8230))
- Add Formcake to forms section ([#8283]({{ site.repository }}/issues/8283))
- Add a note on the rendering process in the docs ([#8291]({{ site.repository }}/issues/8291))
- Add refactoring type to PULL_REQUEST_TEMPLATE ([#8297]({{ site.repository }}/issues/8297))
- Update resources.md ([#7864]({{ site.repository }}/issues/7864))
- Extra apostrophes in an URL ([#8319]({{ site.repository }}/issues/8319))
- Clarify target of subordinate clause ([#8320]({{ site.repository }}/issues/8320))
- Cherry-pick commits from conflicting branch `docs-40`
- Update documentation on third party site ([#8352]({{ site.repository }}/issues/8352))
- Update default.md with info requested in [#8314]({{ site.repository }}/issues/8314) ([#8353]({{ site.repository }}/issues/8353))
- Clarify description of `safe` option ([#8354]({{ site.repository }}/issues/8354))
- Simplifying the Git post-receive hook-example ([#8358]({{ site.repository }}/issues/8358))
- Add missing doc for build and serve commands ([#8365]({{ site.repository }}/issues/8365))
- Docs Review: Getting Started ([#8372]({{ site.repository }}/issues/8372))
- Add note about rebooting system after installation ([#8359]({{ site.repository }}/issues/8359))
- Use data file to render table at `/docs/configuration/options/#global-configuration` ([#8377]({{ site.repository }}/issues/8377))
- Use data file(s) to render table(s) at `/docs/configuration/options/` ([#8380]({{ site.repository }}/issues/8380))
- Improve maintainability of config option data ([#8383]({{ site.repository }}/issues/8383))
- Remove CircleCI v1 docs ([#8410]({{ site.repository }}/issues/8410))
- Remove `NOKOGIRI_USE_SYSTEM_LIBRARIES` from Travis CI docs ([#8409]({{ site.repository }}/issues/8409))
- Add links to all Jekyll themes on GitHub tagged with #jekyll-theme ([#8447]({{ site.repository }}/issues/8447))
- Document initializing project Gemfile from scratch ([#8450]({{ site.repository }}/issues/8450))
- Document installation of additional dependencies for installing Jekyll on Fedora ([#8456]({{ site.repository }}/issues/8456))
- Improve documentation on Hooks in Jekyll ([#8467]({{ site.repository }}/issues/8467))
- Build docs site with GitHub Actions ([#8201]({{ site.repository }}/issues/8201))
- Add link to Assets page from `_sass` section in `_docs/structure.md` ([#8486]({{ site.repository }}/issues/8486))
### Site Enhancements
{: #site-enhancements-v4-2-0}
- Fix rendering of *showcase* images ([#8504]({{ site.repository }}/issues/8504))
## 4.1.1 / 2020-06-24
{: #v4-1-1}
### Bug Fixes
{: #bug-fixes-v4-1-1}
- Disable page excerpts by default ([#8222]({{ site.repository }}/issues/8222))
- Revert introduction of PageDrop ([#8221]({{ site.repository }}/issues/8221))
- Don&#39;t generate excerpts for non-html pages ([#8234]({{ site.repository }}/issues/8234))
- Make page excerpts consistent with doc excerpts ([#8236]({{ site.repository }}/issues/8236))
### Documentation
- Replace deprecated &#39;show&#39; command with &#39;info&#39; ([#8235]({{ site.repository }}/issues/8235))
- Change name to ▲Vercel ([#8247]({{ site.repository }}/issues/8247))
- Add language and examples to describe how to use the configuration op… ([#8249]({{ site.repository }}/issues/8249))
- Fix missing yaml front matter colon and adjust/add clarifying language. ([#8250]({{ site.repository }}/issues/8250))
- correct typo ([#8261]({{ site.repository }}/issues/8261))
- Allow hyperlinks to specific filter documentation ([#8231]({{ site.repository }}/issues/8231))
- Update link to Netlify step-by-step guide ([#8264]({{ site.repository }}/issues/8264))
- Fix grammar in documentation section ([#8265]({{ site.repository }}/issues/8265))
### Site Enhancements
{: #site-enhancements-v4-1-1}
- Including correct Sketch website ([#8241]({{ site.repository }}/issues/8241))
- Release post for v4.1.1 ([#8243]({{ site.repository }}/issues/8243))
### Development Fixes
{: #development-fixes-v4-1-1}
- Bump RuboCop to v0.85.x ([#8223]({{ site.repository }}/issues/8223))
- Expect drive letter only on vanilla windows ([#8227]({{ site.repository }}/issues/8227))
## 4.1.0 / 2020-05-27
{: #v4-1-0}
### Bug Fixes
{: #bug-fixes-v4-1-0}
- Memoize `absolute_url` and `relative_url` filters ([#7793]({{ site.repository }}/issues/7793))
- Fix documentation comment for `Jekyll::Converters::Identity` ([#7883]({{ site.repository }}/issues/7883))
- Optimize `Jekyll::Filters#item_property` ([#7696]({{ site.repository }}/issues/7696))
- Allow multiple binary operators in `where_exp` filter ([#8047]({{ site.repository }}/issues/8047))
- Fix documents custom-ordering logic ([#8028]({{ site.repository }}/issues/8028))
- Use `layout.path` when rendering the Liquid layout ([#8069]({{ site.repository }}/issues/8069))
- Reduce array allocations from `StaticFile#path` ([#8083]({{ site.repository }}/issues/8083))
- Simplify `Jekyll::Renderer#validate_layout` ([#8064]({{ site.repository }}/issues/8064))
- Add static file's basename to its `url_placeholder` ([#7908]({{ site.repository }}/issues/7908))
- Clear cached Liquid template scope before render ([#7967]({{ site.repository }}/issues/7967))
- Cache `URLFilter` results of string inputs per site ([#7990]({{ site.repository }}/issues/7990))
- Use `platforms` instead of `install_if` in Gemfile ([#8140]({{ site.repository }}/issues/8140))
- Config include trailing slash ([#8113]({{ site.repository }}/issues/8113))
- Improve path normalization in liquid_renderer ([#8075]({{ site.repository }}/issues/8075))
- Switch slugify regex to support more Unicode character groups ([#8167]({{ site.repository }}/issues/8167))
- Check if entry is a directory once per enumerator ([#8177]({{ site.repository }}/issues/8177))
- Filter out exclusively excluded entries sooner ([#7482]({{ site.repository }}/issues/7482))
- Return `relative_url` if site.url is an empty string ([#7988]({{ site.repository }}/issues/7988))
- Configure kramdown toc_levels as array by default ([#8015]({{ site.repository }}/issues/8015))
- Reduce `Pathname` objects from front matter defaults ([#8067]({{ site.repository }}/issues/8067))
- Simplify `Jekyll::Hooks.trigger` logic ([#8044]({{ site.repository }}/issues/8044))
- Quicker categories for documents without superdirs ([#7987]({{ site.repository }}/issues/7987))
- Reduce `Jekyll::Renderer` instances during a build ([#7570]({{ site.repository }}/issues/7570))
- Escape regex characters in paths to match ([#8138]({{ site.repository }}/issues/8138))
- Provide invokables for common drop query keys ([#8165]({{ site.repository }}/issues/8165))
- Optimize path sanitization of default front matter ([#8154]({{ site.repository }}/issues/8154))
- Initialize static files' data hash only if needed ([#8188]({{ site.repository }}/issues/8188))
- Initialize include-files as Jekyll objects ([#8158]({{ site.repository }}/issues/8158))
### Minor Enhancements
{: #minor-enhancements-v4-1-0}
- serve: add support for ECC certificates ([#7768]({{ site.repository }}/issues/7768))
- Update `item_property` to recognize integers ([#7878]({{ site.repository }}/issues/7878))
- Include `_config.yml` in a new theme's gemspec ([#7865]({{ site.repository }}/issues/7865))
- Add an option to easily disable disk-cache ([#7928]({{ site.repository }}/issues/7928))
- Optimize markdown parsing with Kramdown by reusing the options and parser objects ([#8013]({{ site.repository }}/issues/8013))
- Add `PageDrop` to provide Liquid templates with data ([#7992]({{ site.repository }}/issues/7992))
- Optimize `Kramdown::JekyllDocument#to_html` calls ([#8041]({{ site.repository }}/issues/8041))
- Configure default language for syntax-highlighting ([#8035]({{ site.repository }}/issues/8035))
- Remove dev dependencies from new theme-gem gemspec ([#8042]({{ site.repository }}/issues/8042))
- Allow disabling import of theme configuration ([#8131]({{ site.repository }}/issues/8131))
- Allow excerpts to be generated for `Page` objects ([#7642]({{ site.repository }}/issues/7642))
- Profile various stages of a site's build process ([#6760]({{ site.repository }}/issues/6760))
- Add find filters to optimize where-first chains ([#8171]({{ site.repository }}/issues/8171))
- Make `number_of_words` filter respect CJK characters ([#7813]({{ site.repository }}/issues/7813))
- Allow extensionless document in a strict site ([#7950]({{ site.repository }}/issues/7950))
- Add `:slugified_categories` URL placeholder ([#8094]({{ site.repository }}/issues/8094))
### Documentation
- Add dropped 'title: Staff' to the code ([#7805]({{ site.repository }}/issues/7805))
- Clarify docs for static files in collection ([#7812]({{ site.repository }}/issues/7812))
- Rephrase the CircleCI v2 section ([#7815]({{ site.repository }}/issues/7815))
- Update old GitHub wiki URL with new one ([#7823]({{ site.repository }}/issues/7823))
- Update JekyllConf page with 2019 talks ([#7826]({{ site.repository }}/issues/7826))
- link for memberships ([#7825]({{ site.repository }}/issues/7825))
- Doc: minor fix, should be greater or equal to min version ([#7856]({{ site.repository }}/issues/7856))
- Update third-party.md - Fix broken link ([#7857]({{ site.repository }}/issues/7857))
- clarify _config.yml/collections type ([#7873]({{ site.repository }}/issues/7873))
- Replace backticks with HTML tags in data file ([#7879]({{ site.repository }}/issues/7879))
- add new theme source ([#7875]({{ site.repository }}/issues/7875))
- fixed grammatical error (it&#39;s --&gt; its) ([#7887]({{ site.repository }}/issues/7887))
- Docs: Clarify organizing pages into subfolders ([#7896]({{ site.repository }}/issues/7896))
- Disambiguate the placeholder of permalink ([#7906]({{ site.repository }}/issues/7906))
- docs: add short serve command for livereload ([#7919]({{ site.repository }}/issues/7919))
- docs: add options for watch and force polling ([#7918]({{ site.repository }}/issues/7918))
- add install instructions for ArchLinux and openSUSE ([#7920]({{ site.repository }}/issues/7920))
- Improve index page of Jekyll documentation ([#7926]({{ site.repository }}/issues/7926))
- Include path in `jekyll new` commands (Usage docs) ([#7931]({{ site.repository }}/issues/7931))
- Change `affect` to `effect` in the collections docs ([#7937]({{ site.repository }}/issues/7937))
- Changed deprecated command in themes documentation ([#7941]({{ site.repository }}/issues/7941))
- Adds some documentation for the `:clean`, `:on_obsolete` hook ([#7954]({{ site.repository }}/issues/7954))
- docs: fix broken link ([#7955]({{ site.repository }}/issues/7955))
- Corrected typo ([#7975]({{ site.repository }}/issues/7975))
- docs: remove watch option in config ([#7940]({{ site.repository }}/issues/7940))
- Correct a sentence in the documentation ([#7978]({{ site.repository }}/issues/7978))
- Fix YAML representation of `group_by` result ([#7979]({{ site.repository }}/issues/7979))
- Move `--baseurl` to build command options ([#7985]({{ site.repository }}/issues/7985))
- Correct documentation of filters ([#7989]({{ site.repository }}/issues/7989))
- Document sorting two documents by their `date` ([#7870]({{ site.repository }}/issues/7870))
- Fix English grammar error ([#7994]({{ site.repository }}/issues/7994))
- Update 03-front-matter.md ([#7996]({{ site.repository }}/issues/7996))
- Add Kentico Kontent CMS integration to resources ([#8000]({{ site.repository }}/issues/8000))
- Update 07-assets.md ([#7413]({{ site.repository }}/issues/7413))
- Fix file references in Step by Step Tutorial's Assets step ([#8007]({{ site.repository }}/issues/8007))
- docs: improve highlighting of code blocks ([#8017]({{ site.repository }}/issues/8017))
- remove leading slash from Sass file location ([#8021]({{ site.repository }}/issues/8021))
- [Docs] Fix asset link ref in step-by-step tutorial ([#8026]({{ site.repository }}/issues/8026))
- Corrected command to modify PATH ([#8029]({{ site.repository }}/issues/8029))
- Corrected command to modify PATH ([#8030]({{ site.repository }}/issues/8030))
- Docs: Render full contents of just the latest post ([#8032]({{ site.repository }}/issues/8032))
- docs: improvements for note boxes ([#8037]({{ site.repository }}/issues/8037))
- Non-deprecated `vendor/bundle` path configuration ([#8048]({{ site.repository }}/issues/8048))
- Update 09-collections.md ([#8060]({{ site.repository }}/issues/8060))
- Remove extra paragraph tags ([#8063]({{ site.repository }}/issues/8063))
- Add default front matter for tutorials collection ([#8081]({{ site.repository }}/issues/8081))
- Create CSV to table tutorial ([#8090]({{ site.repository }}/issues/8090))
- Add version badge for Custom Sorting of Documents ([#8098]({{ site.repository }}/issues/8098))
- Docs: Fix grammar in `_docs/front-matter.md` ([#8097]({{ site.repository }}/issues/8097))
- Update variables.md ([#8106]({{ site.repository }}/issues/8106))
- Add help about Gentoo/Linux ([#8002]({{ site.repository }}/issues/8002))
- Update documentation on third party site ([#8122]({{ site.repository }}/issues/8122))
- Added Clear Linux ([#8132]({{ site.repository }}/issues/8132))
- Added note about OS specific installation instructions. ([#8135]({{ site.repository }}/issues/8135))
- Fix broken URL in the Resources Page on the Documentation Site ([#8136]({{ site.repository }}/issues/8136))
- Docs: Deploy Jekyll site with GitHub Actions ([#8119]({{ site.repository }}/issues/8119))
- Clarify `bundle config` in Bundler tutorial ([#8150]({{ site.repository }}/issues/8150))
- docs: update your-first-plugin.md ([#8147]({{ site.repository }}/issues/8147))
- Fix typo in documentation on GitHub Actions ([#8162]({{ site.repository }}/issues/8162))
- Ease discovery of CLI commands (in their entirety) ([#8178]({{ site.repository }}/issues/8178))
- Remove `sudo` from Travis CI tutorial ([#8187]({{ site.repository }}/issues/8187))
- Add GitLab Pages to 3rd party list ([#8191]({{ site.repository }}/issues/8191))
- docs: add 21yunbox for deployment ([#8193]({{ site.repository }}/issues/8193))
- Improve documentation on tags and categories ([#8196]({{ site.repository }}/issues/8196))
### Development Fixes
{: #development-fixes-v4-1-0}
- Ci/GitHub actions ([#7822]({{ site.repository }}/issues/7822))
- Rubocop version upgrade ([#7846]({{ site.repository }}/issues/7846))
- Split action steps to avoid using `&&` on Windows ([#7885]({{ site.repository }}/issues/7885))
- Upgrade rake to use version 13 ([#7910]({{ site.repository }}/issues/7910))
- Update dependency constraint to allow RuboCop v0.76 ([#7893]({{ site.repository }}/issues/7893))
- Use bash executable consistently ([#7909]({{ site.repository }}/issues/7909))
- Test with JRuby 9.2.9.0 ([#7779]({{ site.repository }}/issues/7779))
- Bump RuboCop to v0.79.x ([#7970]({{ site.repository }}/issues/7970))
- Remove post-install message from gemspec ([#7974]({{ site.repository }}/issues/7974))
- Attain Ruby 3.0 compatibility ([#7948]({{ site.repository }}/issues/7948))
- Test `where` filter handling numeric property values ([#7821]({{ site.repository }}/issues/7821))
- chore(deps): rubocop 0.80.0 ([#8012]({{ site.repository }}/issues/8012))
- Update unit tests for Kramdown-based converter ([#8014]({{ site.repository }}/issues/8014))
- Add Visual Studio Code Development Container ([#8016]({{ site.repository }}/issues/8016))
- chore: simplify require for `Jekyll::VERSION` ([#8057]({{ site.repository }}/issues/8057))
- Remove version-constraint relaxation for i18n gem ([#8055]({{ site.repository }}/issues/8055))
- Mirror `spec.homepage` as `metadata["homepage_uri"]` ([#8056]({{ site.repository }}/issues/8056))
- Bump Ruby versions on Travis builds ([#8088]({{ site.repository }}/issues/8088))
- chore(ci): cache dependencies ([#8168]({{ site.repository }}/issues/8168))
### Site Enhancements
{: #site-enhancements-v4-1-0}
- Optimize rendering of the documentation site ([#8020]({{ site.repository }}/issues/8020))
- Utilize `relative_url` filter in documentation site ([#8089]({{ site.repository }}/issues/8089))
- Render tutorial metadata in documentation site ([#8092]({{ site.repository }}/issues/8092))
- Improve syntax-highlighting in documentation site ([#8079]({{ site.repository }}/issues/8079))
- Site: Filter through just the *docs* collection ([#8170]({{ site.repository }}/issues/8170))
## 4.0.1 / 2020-05-08
{: #v4-0-1}
@@ -21,6 +348,51 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Fix Kramdown converter based tests for v4.0.x ([#8143]({{ site.repository }}/issues/8143))
## 3.9.2 / 2022-03-27
{: #v3-9-2}
### Bug Fixes
{: #bug-fixes-v3-9-2}
- Lock `http_parser.rb` gem to `v0.6.x` on JRuby ([#8943]({{ site.repository }}/issues/8943))
- Backport [#8756]({{ site.repository }}/issues/8756) for v3.9.x: Respect collections_dir config within include tag ([#8795]({{ site.repository }}/issues/8795))
- Backport [#8965]({{ site.repository }}/issues/8965) for v3.9.x: Fix response header for content served via `jekyll serve` ([#8976]({{ site.repository }}/issues/8976))
### Development Fixes
{: #development-fixes-v3-9-2}
- Update and fix CI for `3.9-stable` on Ruby 3.x ([#8942]({{ site.repository }}/issues/8942))
- Fix CI for commits to `3.9-stable` branch ([#8788]({{ site.repository }}/issues/8788))
## 3.9.1 / 2021-04-08
{: #v3-9-1}
### Bug Fixes
{: #bug-fixes-v3-9-1}
- Backport [#8618]({{ site.repository }}/issues/8618) for v3.9.x: Update include tag to be more permissive ([#8629]({{ site.repository }}/issues/8629))
## 3.9.0 / 2020-08-05
{: #v3-9-0}
### Minor Enhancements
{: #minor-enhancements-v3-9-0}
- Allow use of kramdown v2 ([#8322]({{ site.repository }}/issues/8322))
- Add default language for kramdown syntax highlighting ([#8325]({{ site.repository }}/issues/8325))
## 3.8.7 / 2020-05-08
{: #v3-8-7}
### Bug Fixes
{: #bug-fixes-v3-8-7}
- Prevent console warnings with Ruby 2.7 ([#8125]({{ site.repository }}/issues/8125))
## 4.0.0 / 2019-08-19
{: #v4-0-0}
@@ -276,7 +648,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Remove alt attribute from a tags ([#7407]({{ site.repository }}/issues/7407))
- Fix BASH code-block in ubuntu.md ([#7420]({{ site.repository }}/issues/7420))
- zlib is missing ([#7428]({{ site.repository }}/issues/7428))
- Fixed unnecessary aticles and pronouns ([#7466]({{ site.repository }}/issues/7466))
- Fixed unnecessary articles and pronouns ([#7466]({{ site.repository }}/issues/7466))
- Store SSL key and cert in site source ([#7473]({{ site.repository }}/issues/7473))
- Fix typo in tutorial for converting existing site ([#7524]({{ site.repository }}/issues/7524))
- Check if var exists before include tag ([#7530]({{ site.repository }}/issues/7530))
@@ -291,7 +663,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- fix link to Site Source config ([#7708]({{ site.repository }}/issues/7708))
- Introduce frontmatter in step 2 ([#7704]({{ site.repository }}/issues/7704))
- Add @ashmaroli to Core Team listing ([#7398]({{ site.repository }}/issues/7398))
- Lnk to Tidelift in site&#39;s footer ([#7377]({{ site.repository }}/issues/7377))
- Link to Tidelift in site&#39;s footer ([#7377]({{ site.repository }}/issues/7377))
- Link to OpenCollective backing ([#7378]({{ site.repository }}/issues/7378)
- Link to sponsor listing in README ([#7405]({{ site.repository }}/issues/7405))
- Adjust team page listings ([#7395]({{ site.repository }}/issues/7395))
@@ -313,6 +685,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
### Release
- Jekyll v4.0 release ([#7782]({{ site.repository }}/issues/7782))
- Release post for v4.0.0 beta1 ([#7716]({{ site.repository }}/issues/7716))
- Release post for v4.0.0.pre.alpha1 ([#7574]({{ site.repository }}/issues/7574))
- Release post for v3.8.0 ([#6849]({{ site.repository }}/issues/6849))
@@ -466,7 +839,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- doc: add liquid tag plugin jekyll-onebox for html previews ([#6898]({{ site.repository }}/issues/6898))
- Add `jekyll-w2m` to plugins ([#6855]({{ site.repository }}/issues/6855))
- Fix tutorials navigation HTML ([#6919]({{ site.repository }}/issues/6919))
- add Arch Linux instalation troubleshoot ([#6782]({{ site.repository }}/issues/6782))
- add Arch Linux installation troubleshoot ([#6782]({{ site.repository }}/issues/6782))
- Docs: Install Jekyll on macOS ([#6881]({{ site.repository }}/issues/6881))
- Fix CodeClimate badges [ci skip] ([#6930]({{ site.repository }}/issues/6930))
- Update index.md ([#6933]({{ site.repository }}/issues/6933))
@@ -641,7 +1014,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Fix list appearance by adding missing `ol` tag ([#6421]({{ site.repository }}/issues/6421))
- Explain how to override output collection index page ([#6424]({{ site.repository }}/issues/6424))
- Added github-cards to the list of plugins ([#6425]({{ site.repository }}/issues/6425))
- CoC violation correspondants ([#6429]({{ site.repository }}/issues/6429))
- CoC violation correspondents ([#6429]({{ site.repository }}/issues/6429))
- Add a note about Liquid and syntax highlighting ([#6466]({{ site.repository }}/issues/6466))
- Remove `sudo` from macOS troubleshooting instructions ([#6486]({{ site.repository }}/issues/6486))
- Add a note on `:jekyll_plugins` group in the docs ([#6488]({{ site.repository }}/issues/6488))
@@ -772,7 +1145,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- add SUPPORT file for GitHub ([#6324]({{ site.repository }}/issues/6324))
- Rename CODE_OF_CONDUCT to show in banner ([#6325]({{ site.repository }}/issues/6325))
- Docs : illustrate page.id for a collection&#39;s document ([#6329]({{ site.repository }}/issues/6329))
- Docs: post&#39;s date can be overriden in front matter ([#6334]({{ site.repository }}/issues/6334))
- Docs: post&#39;s date can be overridden in front matter ([#6334]({{ site.repository }}/issues/6334))
- Docs: `site.url` behavior on development and production environments ([#6270]({{ site.repository }}/issues/6270))
- Fix typo in site.url section of variables.md :-[ ([#6337]({{ site.repository }}/issues/6337))
- Docs: updates ([#6343]({{ site.repository }}/issues/6343))
@@ -829,7 +1202,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
### Bug Fixes
{: #bug-fixes-v3-5-1}
- Backward compatiblize URLFilters module ([#6163]({{ site.repository }}/issues/6163))
- Backward compatibilize URLFilters module ([#6163]({{ site.repository }}/issues/6163))
- Static files contain front matter default keys when `to_liquid`'d ([#6162]({{ site.repository }}/issues/6162))
- Always normalize the result of the `relative_url` filter ([#6185]({{ site.repository }}/issues/6185))
@@ -1342,7 +1715,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
### Minor Enhancements
{: #minor-enhancements-v3-2-0}
- Stop testing with Ruby 2.0.x, which is EOL'd. ([#4381]({{ site.repository }}/issues/4381))
- Stop testing with Ruby 2.0.x EOL ([#4381]({{ site.repository }}/issues/4381))
- Allow collections to have documents that have no file extension ([#4545]({{ site.repository }}/issues/4545))
- Add size property to `group_by` result ([#4557]({{ site.repository }}/issues/4557))
- Site Template: Removed unnecessary nesting from `_base.scss` ([#4637]({{ site.repository }}/issues/4637))
@@ -1368,7 +1741,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Add 'jekyll new-theme' command to help users get up and running creating a theme ([#4848]({{ site.repository }}/issues/4848))
- `markdownify` and `smartify` should convert input to string before conversion ([#4958]({{ site.repository }}/issues/4958))
- Run `Site#generate` for 'jekyll doctor' to catch plugin issues ([#5005]({{ site.repository }}/issues/5005))
- Add `normalize_whitepace` filter ([#4917]({{ site.repository }}/issues/4917))
- Add `normalize_whitespace` filter ([#4917]({{ site.repository }}/issues/4917))
- Move bin/jekyll to exe/jekyll to prevent collision with binstubs ([#5014]({{ site.repository }}/issues/5014))
- Cleaning up site template & theme updates. ([#4922]({{ site.repository }}/issues/4922))
- Add fetch method to Drops ([#5056]({{ site.repository }}/issues/5056))
@@ -1420,7 +1793,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Fix state leakage in Kramdown test ([#4618]({{ site.repository }}/issues/4618))
- Unify method for copying special files from repo to site ([#4601]({{ site.repository }}/issues/4601))
- Refresh the contributing file ([#4596]({{ site.repository }}/issues/4596))
- change smartify doc from copy/paste of mardownify doc ([#4653]({{ site.repository }}/issues/4653))
- change smartify doc from copy/paste of markdownify doc ([#4653]({{ site.repository }}/issues/4653))
- Update Rake & disable warnings when running tests ([#4720]({{ site.repository }}/issues/4720))
- Fix many warnings ([#4537]({{ site.repository }}/issues/4537))
- Don't blindly assume the last system when determining "open" cmd ([#4717]({{ site.repository }}/issues/4717))
@@ -1519,7 +1892,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Corrected pagination docs for hidden: true feature ([#4903]({{ site.repository }}/issues/4903))
- Remove a Broken Link for Refheap Plugin ([#4971]({{ site.repository }}/issues/4971))
- Instructions on how to install github-gem on Windows ([#4975]({{ site.repository }}/issues/4975))
- Minor tweak to fix missing apostrophne ([#4962]({{ site.repository }}/issues/4962))
- Minor tweak to fix missing apostrophe ([#4962]({{ site.repository }}/issues/4962))
- Instructions on how to install github-gem on Windows (v2) ([#4977]({{ site.repository }}/issues/4977))
- Fix inaccurate HTTP response header field name ([#4976]({{ site.repository }}/issues/4976))
- Add post about GSoC project ([#4980]({{ site.repository }}/issues/4980))
@@ -1527,10 +1900,10 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Update normalize.css to v4.0.0. ([#4989]({{ site.repository }}/issues/4989))
- Add jekyll-tags-list-plugin to list of third-party plugins ([#5000]({{ site.repository }}/issues/5000))
- Windows docs: Command needs to be called from blog path ([#5006]({{ site.repository }}/issues/5006))
- Update text to be consitent with example ([#5010]({{ site.repository }}/issues/5010))
- Update text to be consistent with example ([#5010]({{ site.repository }}/issues/5010))
- Update template links to point to core Liquid site ([#5012]({{ site.repository }}/issues/5012))
- Add generator-jekyllized to third-party plugins ([#5027]({{ site.repository }}/issues/5027))
- Add Jekyll Art Hallery generator plugin to list of third-party plugins ([#5043]({{ site.repository }}/issues/5043))
- Add Jekyll Art Gallery generator plugin to list of third-party plugins ([#5043]({{ site.repository }}/issues/5043))
- Add Formingo to the list of Jekyll form SaaS ([#5054]({{ site.repository }}/issues/5054))
- Highlight help nav item when navigated to. ([#5058]({{ site.repository }}/issues/5058))
- Update normalize.css to v4.2.0. ([#5096]({{ site.repository }}/issues/5096))
@@ -1708,9 +2081,9 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Reorganize and cleanup the Gemfile, shorten required depends. ([#4318]({{ site.repository }}/issues/4318))
- Remove script/rebund. ([#4341]({{ site.repository }}/issues/4341))
- Implement codeclimate platform ([#4340]({{ site.repository }}/issues/4340))
- Remove ObectSpace dumping and start using inherited, it's faster. ([#4342]({{ site.repository }}/issues/4342))
- Remove ObjectSpace dumping and start using inherited, it's faster. ([#4342]({{ site.repository }}/issues/4342))
- Add script/travis so all people can play with Travis-CI images. ([#4338]({{ site.repository }}/issues/4338))
- Move Cucumber to using RSpec-Expections and furthering JRuby support. ([#4343]({{ site.repository }}/issues/4343))
- Move Cucumber to using RSpec-Expectations and furthering JRuby support. ([#4343]({{ site.repository }}/issues/4343))
- Rearrange Cucumber and add some flair. ([#4347]({{ site.repository }}/issues/4347))
- Remove old FIXME ([#4349]({{ site.repository }}/issues/4349))
- Clean up the Gemfile (and keep all the necessary dependencies) ([#4350]({{ site.repository }}/issues/4350))
@@ -2066,7 +2439,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Define the `install` step in the CI example `.travis.yml` ([#3622]({{ site.repository }}/issues/3622))
- Expand collections documentation. ([#3638]({{ site.repository }}/issues/3638))
- Add the "warning" note label to excluding `vendor` in the CI docs page ([#3623]({{ site.repository }}/issues/3623))
- Upgrade pieces of the Ugrading guide for Jekyll 3 ([#3607]({{ site.repository }}/issues/3607))
- Upgrade pieces of the Upgrading guide for Jekyll 3 ([#3607]({{ site.repository }}/issues/3607))
- Showing how to access specific data items ([#3468]({{ site.repository }}/issues/3468))
- Clarify pagination works from within HTML files ([#3467]({{ site.repository }}/issues/3467))
- Add note to `excerpt_separator` documentation that it can be set globally ([#3667]({{ site.repository }}/issues/3667))
@@ -3192,7 +3565,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Add ReadInXMinutes plugin to the plugin list ([#1222]({{ site.repository }}/issues/1222))
- Remove plugins from the plugin list that have equivalents in Jekyll proper ([#1223]({{ site.repository }}/issues/1223))
- Add jekyll-assets to the plugin list ([#1225]({{ site.repository }}/issues/1225))
- Add jekyll-pandoc-mulitple-formats to the plugin list ([#1229]({{ site.repository }}/issues/1229))
- Add jekyll-pandoc-multiple-formats to the plugin list ([#1229]({{ site.repository }}/issues/1229))
- Remove dead link to "Using Git to maintain your blog" ([#1227]({{ site.repository }}/issues/1227))
- Tidy up the third-party plugins listing ([#1228]({{ site.repository }}/issues/1228))
- Update contributor information ([#1192]({{ site.repository }}/issues/1192))
@@ -3367,7 +3740,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Adds excerpt attribute to posts which contains first paragraph of content ([#837]({{ site.repository }}/issues/837))
- Accept custom configuration file via CLI ([#863]({{ site.repository }}/issues/863))
- Load in GitHub Pages MIME Types on `jekyll serve` ([#847]({{ site.repository }}/issues/847), [#871]({{ site.repository }}/issues/871))
- Improve debugability of error message for a malformed highlight tag ([#785]({{ site.repository }}/issues/785))
- Improve debuggability of error message for a malformed highlight tag ([#785]({{ site.repository }}/issues/785))
- Allow symlinked files in unsafe mode ([#824]({{ site.repository }}/issues/824))
- Add 'gist' Liquid tag to core ([#822]({{ site.repository }}/issues/822), [#861]({{ site.repository }}/issues/861))
- New format of Jekyll output ([#795]({{ site.repository }}/issues/795))

View File

@@ -69,7 +69,7 @@ You can also pass parameters to an include. For example, suppose you have a file
```
{% endraw %}
The `{% raw %}{{ include.content }}{% endraw %}` is a parameter that gets populated when you call the include and specify a value for that parameter, like this:
The {% raw %}`{{ include.content }}`{% endraw %} is a parameter that gets populated when you call the include and specify a value for that parameter, like this:
{% raw %}
```liquid

View File

@@ -6,33 +6,50 @@ redirect_from:
- /docs/quickstart/
- /docs/extras/
---
Jekyll is a simple, extendable, static site generator. You give it text written
in your favorite markup language and it churns through layouts to create a
static website. Throughout that process you can tweak how you want the site URLs
to look, what data gets displayed in the layout, and more.
Jekyll is a static site generator. It takes text written in your
favorite markup language and uses layouts to create a static website. You can
tweak the site's look and feel, URLs, the data displayed on the page, and more.
## Prerequisites
Jekyll requires the following:
* Ruby version **{{ site.data.ruby.min_version }}** or higher
* RubyGems
* GCC and Make
See [Requirements]({{ '/docs/installation/#requirements' | relative_url }}) for guides and details.
## Instructions
1. Install a full [Ruby development environment](/docs/installation/)
2. Install Jekyll and [bundler](/docs/ruby-101/#bundler) [gems](/docs/ruby-101/#gems)
```
1. Install all [prerequisites]({{ '/docs/installation/' | relative_url }}).
2. Install the jekyll and bundler [gems]({{ '/docs/ruby-101/#gems' | relative_url }}).
```sh
gem install jekyll bundler
```
3. Create a new Jekyll site at `./myblog`
```
3. Create a new Jekyll site at `./myblog`.
```sh
jekyll new myblog
```
4. Change into your new directory
```
4. Change into your new directory.
```sh
cd myblog
```
5. Build the site and make it available on a local server
```
5. Build the site and make it available on a local server.
```sh
bundle exec jekyll serve
```
6. Now browse to [http://localhost:4000](http://localhost:4000){:target="_blank"}
6. Browse to [http://localhost:4000](http://localhost:4000){:target="_blank"}
If you encounter any unexpected errors during the above, please refer to the
[troubleshooting](/docs/troubleshooting/#configuration-problems) page or the
already-mentioned [requirements](/docs/installation/#requirements) page, as
you might be missing development headers or other prerequisites.
{: .note .warning}
If you are using Ruby version 3.0.0 or higher, step 5 [may fail](https://github.com/github/pages-gem/issues/752). You may fix it by adding `webrick` to your dependencies: `bundle add webrick`
{: .note .info}
Pass the `--livereload` option to `serve` to automatically refresh the page with each change you make to the source files: `bundle exec jekyll serve --livereload`
If you encounter any errors during this process, check that you have installed all the prerequisites in [Requirements]({{ '/docs/installation/#requirements' | relative_url }}).
If you still have issues, see [Troubleshooting]({{ '/docs/troubleshooting/#configuration-problems' | relative_url }}).
{: .note .info}
Installation varies based on your operating system. See our [guides]({{ '/docs/installation/#guides' | relative_url }}) for OS-specific instructions.

View File

@@ -4,19 +4,19 @@ description: Official guide to install Jekyll on macOS, GNU/Linux or Windows.
permalink: /docs/installation/
---
Jekyll is a [Ruby Gem](/docs/ruby-101/#gems) that can be installed on most systems.
Jekyll is a [Ruby Gem]({{ '/docs/ruby-101/#gems' | relative_url }}) that can be installed on most systems.
## Requirements
* [Ruby](https://www.ruby-lang.org/en/downloads/) version **{{ site.data.ruby.min_version }}** or above, including all development headers (ruby version can be checked by running `ruby -v`)
* [RubyGems](https://rubygems.org/pages/download) (which you can check by running `gem -v`)
* [GCC](https://gcc.gnu.org/install/) and [Make](https://www.gnu.org/software/make/) (in case your system doesn't have them installed, which you can check by running `gcc -v`,`g++ -v` and `make -v` in your system's command line interface)
* [Ruby](https://www.ruby-lang.org/en/downloads/) version **{{ site.data.ruby.min_version }}** or higher, including all development headers (check your Ruby version using `ruby -v`)
* [RubyGems](https://rubygems.org/pages/download) (check your Gems version using `gem -v`)
* [GCC](https://gcc.gnu.org/install/) and [Make](https://www.gnu.org/software/make/) (check versions using `gcc -v`,`g++ -v`, and `make -v`)
## Guides
For detailed install instructions have a look at the guide for your operating system.
For detailed install instructions, follow the guide for your operating system.
* [macOS](/docs/installation/macos/)
* [Ubuntu Linux](/docs/installation/ubuntu/)
* [Other Linux distros](/docs/installation/other-linux)
* [Windows](/docs/installation/windows/)
* [macOS]({{ '/docs/installation/macos/' | relative_url }})
* [Ubuntu]({{ '/docs/installation/ubuntu/' | relative_url }})
* [Other Linux]({{ '/docs/installation/other-linux/' | relative_url }})
* [Windows]({{ '/docs/installation/windows/' | relative_url }})

View File

@@ -3,133 +3,92 @@ title: Jekyll on macOS
permalink: /docs/installation/macos/
---
## Install Command Line Tools
First, you need to install the command-line tools to be able to compile native extensions, open a terminal and run:
## Supported macOS versions
```sh
xcode-select --install
```
- Monterey (macOS 12)
- Big Sur (macOS 11)
- Catalina (macOS 10.15)
Older macOS versions might work, but we don't officially support them.
## Install Ruby
Jekyll requires **Ruby > {{ site.data.ruby.min_version }}**.
As macOS Mojave 10.14 comes only with ruby 2.3.x, you'll have to install a newer version of Ruby.
To install Jekyll on macOS, you need a proper Ruby development environment.
While macOS comes preinstalled with Ruby, we don't recommend using that version
to install Jekyll. This external article goes over the various reasons
[why you shouldn't use the system Ruby](https://www.moncefbelyamani.com/why-you-shouldn-t-use-the-system-ruby-to-install-gems-on-a-mac/).
### With Homebrew {#brew}
To run the latest Ruby version you need to install it through [Homebrew](https://brew.sh).
Instead, you'll need to install a separate and newer version of Ruby using a
version manager such as [asdf], [chruby], [rbenv], or [rvm]. Version managers
allow you to easily install multiple versions of Ruby, and switch between them.
We recommend `chruby` because it's the simplest and least likely to cause issues.
The instructions below are an excerpt from this detailed external guide to
[install Ruby on Mac]. They work best if you're setting up development tools
for the first time on your Mac. If you've already tried to install Ruby or
Jekyll on your Mac, or if you run into any issues, read that guide.
[asdf]: https://asdf-vm.com/
[chruby]: https://github.com/postmodern/chruby
[rbenv]: https://github.com/rbenv/rbenv
[rvm]: https://rvm.io/
[install Ruby on Mac]: https://www.moncefbelyamani.com/how-to-install-xcode-homebrew-git-rvm-ruby-on-mac/
### Step 1: Install Homebrew
[Homebrew](https://brew.sh/) makes it easy to install development tools on a Mac.
```sh
# Install Homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew install ruby
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
```
Add the brew ruby path to your shell config :
### Step 2: Install chruby and the latest Ruby with ruby-install
```
export PATH=/usr/local/opt/ruby/bin:$PATH
```
Then relaunch your terminal and check your updated Ruby setup:
Install `chruby` and `ruby-install` with Homebrew:
```sh
which ruby
# /usr/local/opt/ruby/bin/ruby
brew install chruby ruby-install
```
Install the latest stable version of Ruby:
```sh
ruby-install ruby
```
This will take a few minutes, and once it's done, configure your shell to
automatically use `chruby`:
```sh
echo "source $(brew --prefix)/opt/chruby/share/chruby/chruby.sh" >> ~/.zshrc
echo "source $(brew --prefix)/opt/chruby/share/chruby/auto.sh" >> ~/.zshrc
echo "chruby ruby-{{ site.data.ruby.current_version }}" >> ~/.zshrc
```
If you're using Bash, replace `.zshrc` with `.bash_profile`. If you're not sure,
read this external guide to
[find out which shell you're using](https://www.moncefbelyamani.com/which-shell-am-i-using-how-can-i-switch/).
Quit and relaunch Terminal, then check that everything is working:
```sh
ruby -v
{{ site.data.ruby.current_version_output }}
```
Yay, we are now running current stable Ruby!
It should show {{ site.data.ruby.current_version_output }} or a newer version.
### With rbenv {#rbenv}
People often use [rbenv](https://github.com/rbenv/rbenv) to manage multiple
Ruby versions. This is very useful when you need to be able to run a given Ruby version on a project.
```sh
# Install Homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
# Install rbenv and ruby-build
brew install rbenv
# Setup rbenv integration to your shell
rbenv init
# Check your install
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-doctor | bash
```
Restart your terminal for changes to take effect.
Now you can install the Ruby version of our choice, let's go with current latest stable Ruby:
```sh
rbenv install {{ site.data.ruby.current_version }}
rbenv global {{ site.data.ruby.current_version }}
ruby -v
{{ site.data.ruby.current_version_output }}
```
That's it! Head over [rbenv command references](https://github.com/rbenv/rbenv#command-reference) to learn how to use different versions of Ruby in your projects.
Next, read that same external guide for important notes about
[setting and switching between Ruby versions with chruby](https://www.moncefbelyamani.com/how-to-install-xcode-homebrew-git-rvm-ruby-on-mac/#how-to-install-different-versions-of-ruby-and-switch-between-them).
## Install Jekyll
Now all that is left is installing [Bundler](/docs/ruby-101/#bundler) and Jekyll.
### Local Install
After installing Ruby with chruby, install the latest Jekyll gem:
```sh
gem install --user-install bundler jekyll
gem install jekyll
```
and then get your Ruby version using
## Troubleshooting
```sh
ruby -v
{{ site.data.ruby.current_version_output }}
```
Then append your path file with the following, replacing the `X.X` with the first two digits of your Ruby version.
```
export PATH=$HOME/.gem/ruby/X.X.0/bin:$PATH
```
To check your that you gem paths point to your home directory run:
```sh
gem env
```
And check that `GEM PATHS:` points to a path in your home directory
{: .note }
Every time you update Ruby to a version with a different first two digits, you will need to update your path to match.
### Global Install
{: .note .warning}
We strongly recommend against installing Ruby gems globally to avoid file permissions problems and using `sudo`.
#### On Mojave (10.14)
Because of SIP Protections in Mojave, you must run:
```sh
sudo gem install bundler
sudo gem install -n /usr/local/bin/ jekyll
```
#### Before Mojave (<10.14)
You only have to run:
```sh
sudo gem install bundler jekyll
```
## Problems?
Check out the [troubleshooting](/docs/troubleshooting/) page or [ask for help on our forum](https://talk.jekyllrb.com).
See [Troubleshooting]({{ '/docs/troubleshooting/' | relative_url }}) or [ask for help on our forum](https://talk.jekyllrb.com).

View File

@@ -2,18 +2,59 @@
title: Jekyll on Linux
permalink: /docs/installation/other-linux/
---
Installation on other Linux distributions works similarly as on [Ubuntu](../ubuntu/).
On Fedora, the dependencies can be installed as follows:
Installation on other Linux distributions works similarly to installing on [Ubuntu](../ubuntu/).
```sh
sudo dnf install ruby ruby-devel @development-tools
## Install prerequisites
### Fedora
```sh
sudo dnf install ruby ruby-devel openssl-devel redhat-rpm-config @development-tools
```
### RHEL8/CentOS8
```sh
sudo dnf install ruby ruby-devel
sudo dnf group install "Development Tools"
```
On Debian:
### Debian
```sh
sudo apt-get install ruby-full build-essential
```
The rest works the same as on [Ubuntu](../ubuntu/).
### Gentoo
```sh
sudo emerge -av jekyll
```
or
```sh
sudo emerge --ask --verbose jekyll
```
### ArchLinux
```sh
sudo pacman -S ruby base-devel
```
### OpenSUSE
```sh
sudo zypper install -t pattern devel_ruby devel_C_C++
sudo zypper install ruby-devel
```
### Clear Linux
```sh
sudo swupd bundle-add ruby-basic
```
## Install Jekyll
Follow the instructions for [Ubuntu](../ubuntu/).

View File

@@ -2,17 +2,19 @@
title: Jekyll on Ubuntu
permalink: /docs/installation/ubuntu/
---
Before we install Jekyll, we need to make sure we have all the required
dependencies.
## Install dependencies
Install Ruby and other [prerequisites]({{ '/docs/installation/#requirements' | relative_url }}):
```sh
sudo apt-get install ruby-full build-essential zlib1g-dev
```
It is best to avoid installing Ruby Gems as the root user. Therefore, we need to
Avoid installing RubyGems packages (called gems) as the root user. Instead,
set up a gem installation directory for your user account. The following
commands will add environment variables to your `~/.bashrc` file to configure
the gem installation path. Run them now:
the gem installation path:
```sh
echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc
@@ -21,7 +23,7 @@ echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
```
Finally, install Jekyll:
Finally, install Jekyll and Bundler:
```sh
gem install jekyll bundler

View File

@@ -5,29 +5,32 @@ redirect_from:
- /docs/windows/
---
While Windows is not an officially-supported platform, it can be used to run Jekyll with the proper tweaks. This page aims to
collect some of the general knowledge and lessons that have been unearthed by Windows users.
While Windows is not an officially-supported platform, it can be used to run Jekyll with the proper tweaks.
## Installing Jekyll
## Installing Ruby and Jekyll
### Installation via RubyInstaller
The easiest way to run Jekyll is by using the [RubyInstaller](https://rubyinstaller.org/) for Windows.
The easiest way to install Ruby and Jekyll is by using the [RubyInstaller](https://rubyinstaller.org/) for Windows.
RubyInstaller is a self-contained Windows-based installer that includes the Ruby language, an execution environment,
important documentation, and more.
We only cover RubyInstaller-2.4 and newer here, older versions need to
We only cover RubyInstaller-2.4 and newer here. Older versions need to
[install the Devkit](https://github.com/oneclick/rubyinstaller/wiki/Development-Kit) manually.
1. Download and Install a **Ruby+Devkit** version from [RubyInstaller Downloads](https://rubyinstaller.org/downloads/).
1. Download and install a **Ruby+Devkit** version from [RubyInstaller Downloads](https://rubyinstaller.org/downloads/).
Use default options for installation.
2. Run the `ridk install` step on the last stage of the installation wizard. This is needed for installing gems with native
extensions. You can find additional information regarding this in the
[RubyInstaller Documentation](https://github.com/oneclick/rubyinstaller2#using-the-installer-on-a-target-system)
3. Open a new command prompt window from the start menu, so that changes to the `PATH` environment variable becomes effective.
Install Jekyll and Bundler via: `gem install jekyll bundler`
4. Check if Jekyll installed properly: `jekyll -v`
Install Jekyll and Bundler using `gem install jekyll bundler`
4. Check if Jekyll has been installed properly: `jekyll -v`
{: .note .info}
You may receive an error when checking if Jekyll has not been installed properly. Reboot your system and run `jekyll -v` again.
If the error persists, please open a [RubyInstaller issue](https://github.com/oneclick/rubyinstaller2/issues/new).
That's it, you're ready to use Jekyll!
@@ -36,19 +39,18 @@ That's it, you're ready to use Jekyll!
If you are using Windows 10 version 1607 or later, another option to run Jekyll is by
[installing](https://msdn.microsoft.com/en-us/commandline/wsl/install_guide) the Windows Subsystem for Linux.
*Note:* You must have [Windows Subsystem for Linux](https://msdn.microsoft.com/en-us/commandline/wsl/about) enabled.
{: .note .info}
You must have [Windows Subsystem for Linux](https://msdn.microsoft.com/en-us/commandline/wsl/about) enabled.
First let's make sure all our packages / repositories are up to date. Open a new Command Prompt instance, and type the following:
Make sure all your packages and repositories are up to date. Open a new Command Prompt or PowerShell window and type `bash`.
```sh
bash
```
Your Command Prompt instance should now be a Bash instance. Now we must update our repo lists and packages.
Your terminal should now be a Bash instance. Next, update your repository lists and packages:
```sh
sudo apt-get update -y && sudo apt-get upgrade -y
```
Now we can install Ruby. To do this we will use a repository from [BrightBox](https://www.brightbox.com/docs/ruby/ubuntu/),
Next, install Ruby. To do this, let's use a repository from [BrightBox](https://www.brightbox.com/docs/ruby/ubuntu/),
which hosts optimized versions of Ruby for Ubuntu.
```sh
@@ -57,27 +59,28 @@ sudo apt-get update
sudo apt-get install ruby2.5 ruby2.5-dev build-essential dh-autoreconf
```
Next let's update our Ruby gems:
Next, update your Ruby gems:
```sh
gem update
```
Now all that is left to do is install Jekyll.
Install Jekyll:
```sh
gem install jekyll bundler
```
(*Note: no `sudo` here.*)
{: .note .info}
No `sudo` here.
Check if Jekyll installed properly by running:
Check your Jekyll version:
```sh
jekyll -v
```
**And that's it!**
That's it! You're ready to start using Jekyll.
You can make sure time management is working properly by inspecting your `_posts` folder. You should see a markdown file
with the current date in the filename.
@@ -85,55 +88,47 @@ with the current date in the filename.
<div class="note info">
<h5>Non-superuser account issues</h5>
<p>If the `jekyll new` command prints the error "Your user account isn't allowed to install to the system RubyGems", see
the "Running Jekyll as Non-Superuser" instructions in <a href="/docs/troubleshooting/#no-sudo">Troubleshooting</a>.</p>
the "Running Jekyll as Non-Superuser" instructions in
<a href="{{ '/docs/troubleshooting/#no-sudo' | relative_url }}">Troubleshooting</a>.</p>
</div>
**Note:** Bash on Ubuntu on Windows is still under development, so you may run into issues.
{: .note .info}
Bash on Ubuntu on Windows is still under development, so you may run into issues.
## Encoding
If you use UTF-8 encoding, make sure that no `BOM` header characters exist in your files or very, very bad things will happen to
Jekyll. This is especially relevant when you're running Jekyll on Windows.
If you use UTF-8 encoding, Jekyll will break if a file starts with characters representing a [BOM](https://en.wikipedia.org/wiki/Byte_order_mark#UTF-8). Therefore, remove this sequence of bytes if it appears at the beginning of your file.
Additionally, you might need to change the code page of the console window to UTF-8 in case you get a
`Liquid Exception: Incompatible character encoding` error during the site generation process. It can be done with the following
command:
`Liquid Exception: Incompatible character encoding` error during the site generation process. Run the following:
```sh
chcp 65001
```
## Time-Zone Management
## Time Zone Management
Since Windows doesn't have a native source of zoneinfo data, the Ruby Interpreter would not understand IANA Timezones and hence
using them had the `TZ` environment variable default to UTC/GMT 00:00.
Since Windows doesn't have a native source of zoneinfo data, the Ruby Interpreter doesn't understand IANA Timezones.
Using them had the `TZ` environment variable default to UTC/GMT 00:00.
Though Windows users could alternatively define their blog's timezone by setting the key to use POSIX format of defining
Though Windows users could alternatively define their blog's timezone by setting the key to use the POSIX format of defining
timezones, it wasn't as user-friendly when it came to having the clock altered to changing DST-rules.
Jekyll now uses a rubygem to internally configure Timezone based on established
[IANA Timezone Database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
While 'new' blogs created with Jekyll v3.4 and greater, will have the following added to their `Gemfile` by default, existing
sites *will* have to update their `Gemfile` (and installed) to enable development on Windows:
sites *will* have to update their `Gemfile` (and installed gems) to enable development on Windows:
```ruby
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby]
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library.
platforms :mingw, :x64_mingw, :mswin, :jruby do
gem "tzinfo", ">= 1", "< 3"
gem "tzinfo-data"
end
```
<div class="note warning">
<h5>TZInfo 2.0 incompatibility</h5>
<p>
<code>v2.0</code> of the TZInfo library has introduced a change in how timezone offsets are calculated.
This will result in incorrect date and time for your posts when the site is built with Jekyll 3.x on Windows.
</p>
<p>
We therefore recommend that you lock the Timezone library to <code>v1.2</code> and above by listing
<code>gem 'tzinfo', '~> 1.2'</code> in your <code>Gemfile</code>.
</p>
</div>
## Auto Regeneration
Jekyll uses the `listen` gem to watch for changes when the `--watch` switch is specified during a build or serve.

View File

@@ -24,17 +24,14 @@ from this as needed.
</p>
</div>
## Usage
The first step is to put the template source code in `default.html`. `content`
is a special variable, the value is the rendered content of the post or page
being wrapped.
{% raw %}
```
```liquid
<!doctype html>
<html lang="en">
<head>
@@ -67,7 +64,7 @@ You can also use
[front matter defaults](/docs/configuration/front-matter-defaults/) to save you
from having to set this on every page.
```
```markdown
---
title: My First Page
layout: default
@@ -78,7 +75,7 @@ This is the content of my page
The rendered output of this page is:
```
```html
<!doctype html>
<html lang="en">
<head>
@@ -102,7 +99,6 @@ The rendered output of this page is:
</html>
```
## Inheritance
Layout inheritance is useful when you want to add something to an existing
@@ -115,7 +111,7 @@ layout in front matter. For example this layout will live at
`_layouts/post.html`:
{% raw %}
```
```liquid
---
layout: default
---
@@ -134,7 +130,7 @@ using in Liquid, you need to use the `layout` variable instead of `page`. For
example:
{% raw %}
```
```liquid
---
city: San Francisco
---

View File

@@ -5,7 +5,7 @@ redirect_from: "/docs/templates/"
---
Jekyll uses the [Liquid](https://shopify.github.io/liquid/) templating language
to process templates.
to process templates.
Generally in Liquid you output content using two curly braces e.g.
{% raw %}`{{ variable }}`{% endraw %} and perform logic statements by
@@ -15,5 +15,5 @@ out the [official Liquid Documentation](https://shopify.github.io/liquid/).
Jekyll provides a number of useful Liquid additions to help you build your site:
* [Filters](/docs/liquid/filters/)
* [Tags](/docs/liquid/tags/)
* [Filters]({{ '/docs/liquid/filters/' | relative_url }})
* [Tags]({{ '/docs/liquid/tags/' | relative_url }})

View File

@@ -70,7 +70,7 @@ using [plugins](/docs/plugins/).
{% for filter in site.data.jekyll_filters %}
<tr>
<td>
<p class="name"><strong>{{ filter.name }}</strong></p>
<p id="{{ filter.name | slugify }}" class="name"><strong>{{ filter.name }}</strong></p>
<p>
{{- filter.description -}}
{%- if filter.version_badge %}
@@ -108,15 +108,21 @@ The default is `default`. They are as follows (with what they filter):
You can use the `where` filter to detect documents and pages with properties that are `nil` or `""`. For example,
{% raw %}
```liquid
// Using `nil` to select posts that either do not have `my_prop` defined or `my_prop` has been set to `nil` explicitly.
{% raw %}{% assign filtered_posts = site.posts | where: 'my_prop', nil %}{% endraw %}
// Using `nil` to select posts that either do not have `my_prop`
// defined or `my_prop` has been set to `nil` explicitly.
{% assign filtered_posts = site.posts | where: 'my_prop', nil %}
```
{% endraw %}
{% raw %}
```liquid
// Using Liquid's special literal `empty` or `blank` to select posts that have `my_prop` set to an empty value.
{% raw %}{% assign filtered_posts = site.posts | where: 'my_prop', empty %}{% endraw %}
// Using Liquid's special literal `empty` or `blank` to select
// posts that have `my_prop` set to an empty value.
{% assign filtered_posts = site.posts | where: 'my_prop', empty %}
```
{% endraw %}
### Binary operators in `where_exp` filter {%- include docs_version_badge.html version="4.0" -%}
@@ -125,15 +131,19 @@ conditionals in the operation.
For example, to get a list of documents on English horror flicks, one could use the following snippet:
{% raw %}
```liquid
{% raw %}{{ site.movies | where_exp: "item", "item.genre == 'horror' and item.language == 'English'" }}{% endraw %}
{{ site.movies | where_exp: "item", "item.genre == 'horror' and item.language == 'English'" }}
```
{% endraw %}
Or to get a list of comic-book based movies, one may use the following:
{% raw %}
```liquid
{% raw %}{{ site.movies | where_exp: "item", "item.sub_genre == 'MCU' or item.sub_genre == 'DCEU'" }}{% endraw %}
{{ site.movies | where_exp: "item", "item.sub_genre == 'MCU' or item.sub_genre == 'DCEU'" }}
```
{% endraw %}
### Standard Liquid Filters

View File

@@ -5,12 +5,12 @@ permalink: "/docs/liquid/tags/"
All of the standard Liquid
[tags](https://shopify.github.io/liquid/tags/control-flow/) are supported.
Jekyll has a few built in tags to help you build your site. You can also create
your own tags using [plugins](/docs/plugins/).
your own tags using [plugins]({{ '/docs/plugins/' | relative_url }}).
## Includes
If you have page snippets that you use repeatedly across your site, an
[include](/docs/includes/) is the perfect way to make this more maintainable.
[include]({{ '/docs/includes/' | relative_url }}) is the perfect way to make this more maintainable.
## Code snippet highlighting
@@ -18,12 +18,11 @@ Jekyll has built in support for syntax highlighting of over 100 languages
thanks to [Rouge](http://rouge.jneen.net). Rouge is the default highlighter
in Jekyll 3 and above.
<div class="note warning">
<p>Using Pygments has been deprecated and is not supported in
Jekyll 4, the configuration setting <code>highlighter: pygments</code>
now automatically falls back to using <em>Rouge</em> which is written in Ruby
and 100% compatible with stylesheets for Pygments.</p>
</div>
{: .note .warning}
Using Pygments has been deprecated and is not supported in
Jekyll 4; the configuration setting <code>highlighter: pygments</code>
now automatically falls back to using <em>Rouge</em> which is written in Ruby
and 100% compatible with stylesheets for Pygments.
To render a code block with syntax highlighting, surround your code as follows:
@@ -47,7 +46,7 @@ wiki](https://github.com/jayferd/rouge/wiki/List-of-supported-languages-and-lexe
<p>If you are using a language that contains curly braces, you
will likely need to place <code>{&#37; raw &#37;}</code> and
<code>{&#37; endraw &#37;}</code> tags around your code.
Since {% include docs_version_badge.html version="4.0" %} you can add <code>render_with_liquid: false</code> in your front matter to disable Liquid entirely for a particular document.</p>
Since Jekyll {% include docs_version_badge.html version="4.0" %}, you can add <code>render_with_liquid: false</code> in your front matter to disable Liquid entirely for a particular document.</p>
</div>
### Line numbers
@@ -71,8 +70,8 @@ end
In order for the highlighting to show up, youll need to include a highlighting
stylesheet. For Pygments or Rouge you can use a stylesheet for Pygments, you
can find an example gallery
[here](https://jwarby.github.io/jekyll-pygments-themes/languages/ruby.html)
can find an example gallery
[here](https://jwarby.github.io/jekyll-pygments-themes/languages/ruby.html)
or from [its repository](https://github.com/jwarby/jekyll-pygments-themes).
Copy the CSS file (`native.css` for example) into your css directory and import
@@ -84,8 +83,8 @@ the syntax highlighter styles into your `main.css`:
## Links
{: .note }
Since Jekyll {% include docs_version_badge.html version="v4.0"%} you don't need to prepend `link` and `post_url` tags with `site.baseurl`
{: .note}
Since Jekyll {% include docs_version_badge.html version="4.0"%}, you don't need to prepend `link` and `post_url` tags with `site.baseurl`.
### Linking to pages {#link}
@@ -117,11 +116,30 @@ The path to the post, page, or collection is defined as the path relative to the
For example, suppose you're creating a link in `page_a.md` (stored in `pages/folder1/folder2`) to `page_b.md` (stored in `pages/folder1`). Your path in the link would not be `../page_b.html`. Instead, it would be `/pages/folder1/page_b.md`.
If you're unsure of the path, add `{% raw %}{{ page.path }}{% endraw %}` to the page and it will display the path.
If you're unsure of the path, add {% raw %}`{{ page.path }}`{% endraw %} to the page and it will display the path.
One major benefit of using the `link` or `post_url` tag is link validation. If the link doesn't exist, Jekyll won't build your site. This is a good thing, as it will alert you to a broken link so you can fix it (rather than allowing you to build and deploy a site with broken links).
Note you cannot add filters to `link` tags. For example, you cannot append a string using Liquid filters, such as `{% raw %}{% link mypage.html | append: "#section1" %} {% endraw %}`. To link to sections on a page, you will need to use regular HTML or Markdown linking techniques.
Note you cannot add filters to `link` tags. For example, you cannot append a string using Liquid filters, such as {% raw %}`{% link mypage.html | append: "#section1" %}`{% endraw %}. To link to sections on a page, you will need to use regular HTML or Markdown linking techniques.
The name of the file you want to link can be specified as a variable instead of an actual file name. For example, suppose you defined a variable in your page's front matter like this:
```yaml
---
title: My page
my_variable: footer_company_a.html
---
```
You could then reference that variable in your link:
{% raw %}
```liquid
{% link {{ page.my_variable }} %}
```
{% endraw %}
In this example, the `link` tag would render a link to the file `footer_company_a.html`.
### Linking to posts

View File

@@ -3,7 +3,7 @@ title: Affinity Team Captains
---
**This guide is for affinity team captains.** These special people are **team maintainers** of one of our [affinity teams][] and help triage and evaluate the issues and contributions of others. You may find what is written here interesting, but its definitely not for everyone.
{: .note .info }
{: .note .info}
## Affinity teams & their captains

View File

@@ -3,7 +3,7 @@ title: "Avoiding Burnout"
---
**This guide is for maintainers.** These special people have **write access** to one or more of Jekyll's repositories and help merge the contributions of others. You may find what is written here interesting, but its definitely not for everyone.
{: .note .info }
{: .note .info}
# 1. Use Jekyll

View File

@@ -3,7 +3,7 @@ title: "Becoming a Maintainer"
---
**This guide is for contributors.** These special people have contributed to one or more of Jekyll's repositories, but do not yet have write access to any. You may find what is written here interesting, but its definitely not for everyone.
{: .note .info }
{: .note .info}
So you want to become a maintainer of a Jekyll project? We'd love to have you! Here are some things we like to see from community members before we promote them to maintainers.
@@ -13,7 +13,7 @@ You want to maintain Jekyll? Use it often. Do weird things with it. Do normal th
## 2. Help Triage Issues
Watch the repository you're interested in. Join [an Affinity Team](https://teams.jekyllrb.com) and receive mentions regarding a particular interest area of the project. When you receive a notification for an issue that has not been triaged by a maintainer, dive in. Can you reproduce the issue? Can you determine the fix? [More tips on Triaging an Issue in our maintainer guide](../triaging-an-issue). Every maintainer loves an issue that is resolved before they get to it. :smiley:
Watch the repository you're interested in. Join [an Affinity Team](https://teams.jekyllrb.com) and receive mentions regarding a particular interest area of the project. When you receive a notification for an issue that has not been triaged by a maintainer, dive in. Can you reproduce the issue? Can you determine the fix? [More tips on Triaging an Issue in our maintainer guide](../triaging-an-issue/). Every maintainer loves an issue that is resolved before they get to it. :smiley:
## 3. Write Documentation
@@ -25,7 +25,7 @@ As a maintainer, you will be reviewing pull requests which update code. You shou
## 5. Review Pull Requests
Start by reviewing one pull request a week. Leave detailed comments and [follow our guide for reviewing pull requests](../reviewing-a-pull-request).
Start by reviewing one pull request a week. Leave detailed comments and [follow our guide for reviewing pull requests](../reviewing-a-pull-request/).
## 6. Ask!

View File

@@ -4,7 +4,7 @@ permalink: /docs/maintaining/
---
**This guide is for Jekyll contributors and maintainers.** These special people contribute to one or more of Jekyll's repositories or help merge the contributions of others. You may find what is written here interesting, but its definitely not for everyone.
{: .note .info }
{: .note .info}
Hello! This is where we document various processes for maintaining Jekyll. Being a maintainer for any Jekyll project is a big responsibility, so we put together some helpful documentation for various tasks you might do as a maintainer.
@@ -15,6 +15,7 @@ Hello! This is where we document various processes for maintaining Jekyll. Being
- [Avoiding burnout](avoiding-burnout/)
- [Special Labels](special-labels/)
- [Releasing a new version](releasing-a-new-version/)
- [Releasing a new version off `*-stable` branches](releasing-off-stable-branches/)
Interested in becoming a maintainer? Here is some documentation for **contributors**:

View File

@@ -3,13 +3,13 @@ title: "Merging a Pull Request"
---
**This guide is for maintainers.** These special people have **write access** to one or more of Jekyll's repositories and help merge the contributions of others. You may find what is written here interesting, but its definitely not for everyone.
{: .note .info }
{: .note .info}
## Code Review
All pull requests should be subject to code review. Code review is a [foundational value](https://blog.fullstory.com/what-we-learned-from-google-code-reviews-arent-just-for-catching-bugs/) of good engineering teams. Besides providing validation of correctness, it promotes a sense of community and gives other maintainers understanding of all parts of the code base. In short, code review is crucial to a healthy open source project.
**Read our guide for [Reviewing a pull request](../reviewing-a-pull-request) before merging.** Notably, the change must have tests if for code, and at least two maintainers must give it an OK.
**Read our guide for [Reviewing a pull request](../reviewing-a-pull-request/) before merging.** Notably, the change must have tests if for code, and at least two maintainers must give it an OK.
## Merging
@@ -20,7 +20,7 @@ We have [a helpful little bot](https://github.com/jekyllbot) which we use to mer
To merge a pull request, leave a comment thanking the contributor, then add the special merge request:
```text
```
Thank you very much for your contribution. Folks like you make this project and community strong. :heart:
@jekyllbot: merge +dev

View File

@@ -2,25 +2,107 @@
title: "Releasing a new version"
---
**This guide is for maintainers.** These special people have **write access** to one or more of Jekyll's repositories and help merge the contributions of others. You may find what is written here interesting, but its definitely not for everyone.
{: .note .info }
**This guide is for maintainers.** These special people have **write access** to one or more of Jekyll's repositories and help merge the
contributions of others. You may find what is written here interesting, but it's definitely not for everyone.
{: .note .info}
The most important thing to understand before making a release is that there's no need to feel nervous. Most things are revertable, and even if you do publish an incomplete gem version, we can always skip that one. Don't hestitate to contact the other maintainers if you feel unsure or don't know what to do next.
The most important thing to understand before making a release is that there's no need to feel nervous. Most things are revertable, and even if
you do publish an incomplete gem version, we can always skip that one. Don't hesitate to contact the other maintainers if you feel unsure or
don't know what to do next.
### Bump the version
The only important place you need to manually bump the version is in `lib/jekyll/version.rb`. Adjust that, and everything else should work fine.
### Update the history document
The version will mostly be of the format `"major.minor.patch"`. At times, we may decide to ship pre-releases which will be in the format
`"major.minor.patch.suffix"`. `suffix` is not standardized and may be anything like `pre.alpha1`, `pre.rc2`, or simply `beta3`, etc.
Replace the first header of the history document with a version milestone. This looks like the following:
To determine the correct version, consult the `## HEAD` section of our history document, `History.markdown`, first.
```diff
-## HEAD
+## 3.7.1 / 2018-01-25
- If there's a subsection titled `Major Enhancements`
- Increment the `major` component of the version string and reset both `minor` and `patch` components to `0`.
- Add `suffix` if applicable.
- For example, `"3.9.1" => "4.0.0"` or, `"3.9.1 => "4.0.0.alpha1"`.
- Skip to next step in the release process.
- If there's a subsection titled `Minor Enhancements`
- Increment just the `minor` component and reset the patch component to `0`.
- Add `suffix` if applicable.
- For example, `"4.0.2" => "4.1.0"` or `"4.1.0" => "4.2.0.pre"`.
- Skip to next step in the release process.
- For anything else, increment just the `patch` component or `suffix` component as applicable. For example, `"4.0.2" => "4.0.3"` or
`"4.1.0.beta3" => "4.1.0.rc"`.
### Write a release post
In case this wasn't done already, you can generate a new release post scaffold using the included `rake` command:
```sh
bundle exec rake site:releases:new[3.8.0]
```
Adjust the version number and the date. The `## HEAD` heading will be regenerated next time a pull request is merged.
where `3.8.0` should be replaced with the new version.
Then, write the post. Be sure to thank all of the collaborators and maintainers who have contributed since the last release. You can generate
a log of their names using the following command:
```sh
git shortlog -sn master...v3.7.2
```
where `v3.7.2` is the git tag for the previous release. In case the tag doesn't exist in your repository, run:
```sh
git pull
```
Be sure to open a pull request for your release post once its finished.
### Update the History document
Replace the first header of `History.markdown` with a version milestone. This looks like the following:
```diff
- ## HEAD
+ ## 3.7.1 / 2018-01-25
```
Adjust the version number and the date. The `## HEAD` heading will be regenerated the next time a pull request is merged.
Rearrange the subsections (as a whole) based on decreasing priorities as illustrated below:
```
## 4.2.0 / 2020-12-14
### Major Enhancements
...
### Minor Enhancements
...
### Bug Fixes
...
### Security Fixes
...
### Optimization Fixes
...
### Development Fixes
...
### Site Enhancements
...
```
Once you've done this, update the website by running the following command:
@@ -30,60 +112,51 @@ bundle exec rake site:generate
This updates the website's changelog, and pushes the versions in various other places.
It's recommended that you go over the `History.markdown` file manually one more time, in case there are any spelling errors or such. Feel free to fix those manually, and after you're done generating the website changelog, commit your changes.
## Write a release post
In case this isn't done already, you can generate a new release post using the included `rake` command:
```sh
bundle exec rake site:releases:new[3.8.0]
```
where `3.8.0` should be replaced with the new version. Then, write the post. Be sure to thank all of the collaborators and maintainers who have contributed since the last release. You can generate a log of their names using the following command:
```sh
git shortlog -sn master...v3.7.2
```
where, again `v3.7.2` is the last release. Be sure to open a pull request for your release post.
It's recommended that you go over the `History.markdown` file manually one more time, in case there are any spelling errors or such. Feel free
to fix those manually, and after you're done generating the website changelog, commit your changes.
### Push the version
Before you do this step, make sure the following things are done:
- You have permission to push a new gem version to RubyGems
- You're logged into RubyGems on your command line
- A release post has been prepared, and is ideally already live
- All of the prior steps are done, committed, and pushed to `master`
- A release post has been prepared, and is ideally already live via a prior pull request.
- All of the prior steps are done, especially the change to `lib/jekyll/version.rb` has been staged for commit.
- Commit staged changes to the local `master` branch preferably with commit message `"Release :gem: v[CURRENT_VERSION]"`.
Really the only thing left to do is to run this command:
The only thing left to do now is to run this command:
```sh
bundle exec rake release
git push upstream master
```
This will automatically build the new gem, make a release commit and tag and then push the new gem to RubyGems. Don't worry about creating a GitHub release, @jekyllbot should take care of that.
where `upstream` references `git@github.com:jekyll/jekyll.git`.
And then, you're done! :tada: Feel free to celebrate!
This will trigger a GitHub Actions workflow that will automatically build the new gem, tag the release commit, push the tag to GitHub and
then finally, push the new gem to RubyGems. Don't worry about creating a GitHub release either, @jekyllbot will take care of that when the
release workflow publishes the new tag.
If you have access to the [@jekyllrb](https://twitter.com/jekyllrb) Twitter account, you should tweet the release post from there. If not, just ask another maintainer to do it or to give you access.
And then, if the workflow has completed successfully, you're done! :tada:
Feel free to celebrate!
If you have access to the [@jekyllrb](https://twitter.com/jekyllrb) Twitter account, you should tweet the release post from there. If not, just
ask another maintainer to do it or to give you access.
### Build the docs
We package our documentation as a :gem: Gem for offline use.
This is done with the
[**jekyll-docs**](https://github.com/jekyll/jekyll-docs#building) repository,
and more detailed instructions are provided there.
This is done with the [**jekyll-docs**](https://github.com/jekyll/jekyll-docs#building) repository, and more detailed instructions are
provided there.
## For non-core gems
If you're not a maintainer for `jekyll/jekyll`, the procedure is much simpler in a lot of cases. Generally, the procedure still looks like this:
If you're not a maintainer for `jekyll/jekyll`, the procedure is much simpler in a lot of cases. Generally, the procedure still looks like
this:
- Bump the gem version manually, usually in `lib/<plugin_name>/version.rb`
- Adjust the history file
- Run `bundle exec rake release` or `script/release`, depending on which of the two exists
- Commit changes to default branch preferably with message `"Release :gem: v[CURRENT_VERSION]"`
- Push to remote repository
- Rejoice
Be sure to ask your project's maintainers if you're unsure!

View File

@@ -0,0 +1,63 @@
---
title: Releasing off older stable branches
---
Apart from having releases cut from the default `master` branch, Jekyll Core may occasionally cut releases containing security patches and
critical bug-fixes for older versions under maintenance. Such releases are cut from specially named branches, following the pattern
`[x].[y]-stable` where `[x]` denotes semver-major-version and `[y]`, the semver-minor-version. For example, the branch `3.9-stable` refers to
commits released as part of `jekyll-3.9.x` series.
Co-ordinating a release off a `*-stable` branch is complicated mainly because the default branch has to inevitably reflect the release as well.
## Requirements
- The maintainer has to have **write-access** to both the concerned `*-stable` and `master` branches.
- The maintainer needs to complete the task using their **local CLI program** instead of dispatching via GitHub Web UI.
- The maintainer is abreast with the workflow to [release off `master`]({{ 'docs/maintaining/releasing-a-new-version/' | relative_url }}). The
procedure documented in the following section is an abridged adaptation of the workflow for `master`.
- A release post has been drafted and **is awaiting publish to `master`** via an approved pull request.
- Stable internet connection.
## Trigger release workflow
1. Ensure that you've **checked out the concerned `*-stable` branch** and is up-to-date with its counterpart at `jekyll/jekyll` at GitHub.
2. Bump the `VERSION` string in `lib/jekyll/version.rb`.
3. Update the **History document** as documented [here]({{ 'docs/maintaining/releasing-a-new-version/#update-the-history-document' | relative_url }}).<br/>
(**IMPORTANT: Do not run `rake site:generate` on the stable branch though**).
4. Copy the entire History section pertaining to current release and paste into a new tab / window of your text-editor. We will use this
temporary snippet at a future stage.
5. Commit changes to the version-file and History document with commit message `Release :gem: v[CURRENT_VERSION]`.
6. Push commit to upstream remote `jekyll/jekyll` at GitHub.
## Publish release post
1. Ensure the `Release Gem` workflow has completed successfully.
2. Merge release-post pull request to `master`.
## Update default branch to reflect release off the stable branch
1. Locally, check out `master` and ensure it is up-to-date with its remote counterpart at `jekyll/jekyll` at GitHub.
2. Update History document using the snippet in the temporary tab / window created earlier. The various sections in the History document are
primarily in reverse chronological order and secondarily scoped to the semver-major-version. For example, a release section for `v3.9.2`
will be listed above the section for `v3.9.1` but under release sections for v4.x.
The snippet stashed earlier has to be injected into the correct location manually.
3. Optionally, update `VERSION` string in `lib/jekyll/version.rb`. (*If existing version is lesser than latest version*).
4. Now **run `rake site:generate`** to update various meta files:
- docs/_config.yml
- docs/_docs/history.md
- docs/latest_version.txt
5. Commit changes to various meta files with commit message `Release :gem: v[CURRENT_VERSION]`.
6. Push commit to upstream remote.
## Publish GitHub Release
Unlike releases cut off the `master` branch, our JekyllBot does not automatically create and publish a GitHub Release for tags created from
*non-default* branches. Therefore, the maintainer has to **manually create and publish** the concerned GitHub Release.
1. Choose the newly pushed tag.
2. Title is same as the name of the selected tag.
3. The release snippet stashed previously forms the body.
4. Delete the snippet's title (`## x.y.z / YYYY-MM-DD`) from the release body.
5. Publish.
Note: The GitHub Release may optionally be *drafted* prior to updating the default branch and then *published* immediately after pushing the
update commit to the default branch to streamline the procedure.

Some files were not shown because too many files have changed in this diff Show More