Compare commits

...

687 Commits

Author SHA1 Message Date
mariuslp
202df57131 docs: update wsl installation procedure (#9968)
This is a 🔦 documentation change.

## Summary

The install documentation for WSL offers to install Ruby through
BrightBox. However, BrightBox does not support Ubuntu Jammy (which is
the default for latest WSL builds). Instead, this commit just redirects
the WSL user to the Ubuntu installation procedure to avoid duplicate
documentation.
2026-04-22 09:49:27 -05:00
iBug
d68f76e160 fix: Run release-please workflow only in jekyll/jekyll repo (#9969)
This is a 🐛 bug fix.

## Summary

The `release-please.yml` workflow doesn't make sense in forked
repositories. Let's restrict its execution to jekyll/jekyll only.

I did not expect a "workflow failed" notification soon after catching up
with the upstream in my forked repo:

<img width="1542" height="961" alt="image"
src="https://github.com/user-attachments/assets/5049f2ca-1b1b-42b8-b6ea-4c91ce66a6c3"
/>
2026-04-22 08:50:23 -05:00
Matt Rogers
5cf05d7d09 feat!: Streamline the release process for Jekyll (#9760)
This is a 🙋 feature or enhancement. 
This is a 🔨 code refactoring. 

## Summary

Improve and streamline our release processes with some extra automation
and a bit more rigor around PRs/commits.

## Context

With Jekyll 4.4 released, and under the assumption that the next release
will indeed be 5.0, I think it makes a lot of sense to take some time
and evaluate our development practices and streamline the process of
shipping. We generally go a long time (four months between 4.3.4 and
4.4.0, two years between 4.3.0 and 4.4.0) between releases and this is
my attempt at trying to improve that. While this PR is currently
incomplete, if there's interest in going this direction, I'll make time
over the next few days to clean it up and get it ready to actually ship.

In order to do this, I'm relying on the
[`release-please`](https://github.com/googleapis/release-please-action)
action from Google to do the majority of the heavy lifting. Please read
the release-please README in order to learn how release-please works and
what it does. In order to make it easier to adopt release-please, I've
made two additional changes. ~~The first is to rename `History.markdown`
to `CHANGELOG.md` since that's what `release-please` works with out of
the box.~~ The other is to add two new github actions workflows to run
release-please and to enforce conventional commit conventions on PR
titles. Because we squash merge, the PR title becomes the commit message
and `release-please` uses the commit messages to know when to bump the
version number.

One potential caveat with this is that it may become harder to maintain
stable branches. My point of view on this is that we've done a
relatively poor job of maintaining them regardless and I think it's more
important to release often, even if we end up bumping major or minor
version numbers more frequently than before. My stance on this is that
version bumps have no inherent goodness or badness. They are a
communication mechanism. We should let go of having to wait a certain
amount of time to do major version bumps or avoid work because it would
cause a major version bump, for example.

### Process changes

The use of release-please means that we can stop using jekyllbot to do
the merges and update History.markdown for us, as release-please will
take care of that when we cut the release. We will also no longer need
labels on PRs as the use of conventional commits will explain exactly
what is changing.

The process for releasing becomes:
 - Merge the docs PR
 - Merge the automatically generated release-please PR, which will
trigger the workflows to do the tagging, releasing, gem publishing, etc.

### Remaining work to do:

- [x] Change the pull request settings to only allow squash merges, as
jekyllbot enforces this for us today.
- [x] ~Update the site publishing process to pull from `CHANGELOG.md`
instead of `History.markdown`~ No longer needed.
- [x] Integrate jekyllbot into release-please (the release-please PRs
will be made by jekyllbot). This allows actions to be triggered on the
release-please PRs.
 - [x] Test the workflows to make sure they generate a PR correctly.
 - [x] ~Integrate the release publishing workflow into release-please
when it creates a release.~ Happens automatically with the existing
workflows.
2026-04-17 13:38:58 -05:00
jekyllbot
08c22eefb3 Update history to reflect merge of #9960 [ci skip] 2026-04-14 10:56:52 -07:00
Waishnav
3ed83f6450 Add GitCMS to resources docs (#9960)
Merge pull request 9960
2026-04-14 10:56:50 -07:00
jekyllbot
ff0d4dd78d Update history to reflect merge of #9954 [ci skip] 2026-03-29 20:53:03 -07:00
Matt Rogers
65d534a701 build: fix broken CI on newer rubies (#9954)
Merge pull request 9954
2026-03-29 20:53:01 -07:00
jekyllbot
baab7bf785 Update history to reflect merge of #9925 [ci skip] 2026-03-11 08:39:49 -07:00
Mike Dalton
f07d4f77bc Allow configuring future metadata for individual collections (#9925)
Merge pull request 9925
2026-03-11 08:39:47 -07:00
jekyllbot
d0cf1791f6 Update history to reflect merge of #9914 [ci skip] 2026-02-13 09:06:16 -08:00
Andrew Nesbitt
3c45d9e377 Add .ruby-lsp to default excludes (#9914)
Merge pull request 9914
2026-02-13 09:06:14 -08:00
jekyllbot
26ec089058 Update history to reflect merge of #9920 [ci skip] 2026-02-13 08:48:18 -08:00
Jimmy Bourassa
7e79e461f4 Add logger to Gemfile for Ruby 4.0 (#9920)
Merge pull request 9920
2026-02-13 08:48:17 -08:00
jekyllbot
b49aa9b707 Update history to reflect merge of #9923 [ci skip] 2026-01-05 09:11:47 -08:00
Nemo
ebe567c1d2 Bump supported versions (#9923)
Merge pull request 9923
2026-01-05 09:11:46 -08:00
jekyllbot
4d3db3a83d Update history to reflect merge of #9897 [ci skip] 2025-12-21 12:48:21 -08:00
Y.D.X.
6da6739952 Update WDM (0.1.1 → 0.2.0) in the Windows docs (#9897)
Merge pull request 9897
2025-12-21 12:48:19 -08:00
jekyllbot
161f654409 Update history to reflect merge of #9912 [ci skip] 2025-12-21 12:46:35 -08:00
Chanmi Lee | Kate
e1b5fd6a15 docs: Update contributor badge in README to include avatar height and limit parameters (#9912)
Merge pull request 9912
2025-12-21 12:46:33 -08:00
jekyllbot
2fe6977e8d Update history to reflect merge of #9889 [ci skip] 2025-11-07 14:30:00 -08:00
Álvaro Mondéjar Rubio
e91ed76d97 Fix flaky test that depends on current minute (#9889)
Merge pull request 9889
2025-11-07 14:29:59 -08:00
jekyllbot
a1a42bdb5c Update history to reflect merge of #9882 [ci skip] 2025-10-14 07:57:08 -07:00
Ian
a2c27b70ec Add jekyllup.com to themes documentation (#9882)
Merge pull request 9882
2025-10-14 07:57:06 -07:00
jekyllbot
0760420670 Update history to reflect merge of #9867 [ci skip] 2025-08-27 12:59:07 -07:00
Florian Weingarten
3934fc3184 Fix servlet do_GET header logic (#9867)
Merge pull request 9867
2025-08-27 12:59:05 -07:00
jekyllbot
40ac06ed3e Update history to reflect merge of #9850 [ci skip] 2025-07-11 05:07:19 -07:00
fauno
76982c73c0 Do not treat colons in url_placeholders as URI delimiters (#9850)
Merge pull request 9850
2025-07-11 05:07:17 -07:00
jekyllbot
55024b37ae Update history to reflect merge of #9832 [ci skip] 2025-06-05 08:30:47 -07:00
Sam Cole
59d5d9ae62 Add ruby-erb prerequisite for Arch Linux installations (#9832)
Merge pull request 9832
2025-06-05 08:30:45 -07:00
jekyllbot
a2330bb3b3 Update history to reflect merge of #9776 [ci skip] 2025-06-05 07:51:06 -07:00
Jefferson Quesado
79a8e16f22 feat: Allowing post_url tag to receive liquid variables (#9776)
Merge pull request 9776
2025-06-05 07:51:04 -07:00
jekyllbot
e2e1ee8eaa Update history to reflect merge of #9829 [ci skip] 2025-06-02 08:07:04 -07:00
Ashwin Maroli
2a37caac83 Improve readability of post_url tag (#9829)
Merge pull request 9829
2025-06-02 08:07:02 -07:00
jekyllbot
84437a5052 Update history to reflect merge of #9813 [ci skip] 2025-04-24 05:08:01 -07:00
printfn
01781355ef Fix logs containing IPv6 URLs (#9813)
Merge pull request 9813
2025-04-24 05:08:00 -07:00
Ashwin Maroli
fa5575c806 Configure spell-check to allow azion 2025-04-23 19:02:11 +05:30
jekyllbot
cc583c218c Update history to reflect merge of #9811 [ci skip] 2025-04-22 07:32:19 -07:00
Bruno Germano
5f877c347b Add Azion to the 3rd party deployment docs (#9811)
Merge pull request 9811
2025-04-22 07:32:17 -07:00
Ashwin Maroli
dfbd86db50 Edit History doc to reflect updated pull request titles [skip ci] 2025-04-09 18:04:48 +05:30
Molly Exten
1b617d7281 Updated note on Gemfiles in 10-deployment.md (#9805)
This is a 🔦 documentation change.

I've adjusted the documentation to include a note that Gemfile is
already installed if the reader has completed step 1 in this tutorial. I
thought it was kind of confusing to see instructions on adding a Gemfile
when I had already done that step in the first part of the tutorial.

---------

Co-authored-by: Matt Rogers <mattr-@github.com>
2025-04-08 11:15:23 -05:00
Matt Rogers
f6d9f86e04 Update spelling allow list after merging 9786 [ci skip] 2025-04-08 10:58:01 -05:00
jekyllbot
148c1d395c Update history to reflect merge of #9784 [ci skip] 2025-04-08 08:09:47 -07:00
Ashwin Maroli
07a01b0bc9 Avoid caching resource when called via include_relative tag (#9784)
Merge pull request 9784
2025-04-08 08:09:45 -07:00
jekyllbot
82efcc4c51 Update history to reflect merge of #9786 [ci skip] 2025-04-08 08:08:28 -07:00
Fernando Tapia Rico
1e4696457d Add Supranode to third-party deployment guide (#9786)
Merge pull request 9786
2025-04-08 08:08:26 -07:00
jekyllbot
f320d0d5d7 Update history to reflect merge of #9802 [ci skip] 2025-04-08 08:07:48 -07:00
Reinhard Söllradl
193d2eca7f Update resources.md (#9802)
Merge pull request 9802
2025-04-08 08:07:46 -07:00
jekyllbot
0db8443b41 Update history to reflect merge of #9803 [ci skip] 2025-04-08 08:06:47 -07:00
Molly Exten
e4f0c58395 Small documentation update for 09-collections.md (#9803)
Merge pull request 9803
2025-04-08 08:06:45 -07:00
Ashwin Maroli
1f319fb273 Release 💎 v4.4.1 2025-01-29 18:16:50 +05:30
Ashwin Maroli
c5cd1fb04f Restore globbed path behavior in front matter defaults (#9762)
Restore existing behavior in v4.3.x wherein a scope with path
`_*/**/index.md` matches `_label/index.md` as well instead of just
`_label/dir/index.md`.
2025-01-29 18:01:40 +05:30
Ashwin Maroli
33e8a84a00 Add unrecognized words to expected spelling data [skip ci] 2025-01-29 17:39:01 +05:30
Ashwin Maroli
cda8c3a402 Release 💎 v4.4.0 2025-01-27 20:57:32 +05:30
jekyllbot
5431c0945b Update history to reflect merge of #9759 [ci skip] 2025-01-27 07:17:15 -08:00
Ashwin Maroli
e68b3e3e16 Add release post for v4.4.0 (#9759)
Merge pull request 9759
2025-01-27 07:17:13 -08:00
jekyllbot
0cc09f93ca Update history to reflect merge of #9758 [ci skip] 2025-01-24 03:33:13 -08:00
Ashwin Maroli
448b8b5540 Remove unnecessary constraint on gem mercenary (#9758)
Merge pull request 9758
2025-01-24 03:33:11 -08:00
jekyllbot
2cf2665d31 Update history to reflect merge of #9756 [ci skip] 2025-01-23 23:03:09 -08:00
Ashwin Maroli
efc2a7433c Bump check-spelling/check-spelling action (#9756)
Merge pull request 9756
2025-01-23 23:03:07 -08:00
jekyllbot
021f58506f Update history to reflect merge of #9671 [ci skip] 2025-01-23 09:46:41 -08:00
Ashwin Maroli
d5e62d0ca5 Add json as runtime_dependency (#9671)
Merge pull request 9671
2025-01-23 09:46:39 -08:00
jekyllbot
6ea69cae2a Update history to reflect merge of #9753 [ci skip] 2025-01-16 06:15:41 -08:00
Ashwin Maroli
8b759b9c71 Remove unnecessary runtime dependency (#9753)
Merge pull request 9753
2025-01-16 06:15:39 -08:00
jekyllbot
32c90c5eee Update history to reflect merge of #9740 [ci skip] 2025-01-15 23:17:58 -08:00
Ashwin Maroli
76572b421a Add Ruby 3.4 to CI matrix (#9740)
Merge pull request 9740
2025-01-15 23:17:56 -08:00
jekyllbot
409034449b Update history to reflect merge of #9747 [ci skip] 2025-01-15 22:19:22 -08:00
Ashwin Maroli
2db7db7c44 Bump cucumber to v9 (#9747)
Merge pull request 9747
2025-01-15 22:19:20 -08:00
Ashwin Maroli
dfa5f036f7 Improve rendering of site footer 2025-01-02 22:28:17 +05:30
jekyllbot
d20aef3c1c Update history to reflect merge of #9745 [ci skip] 2025-01-01 05:55:25 -08:00
naoki kodama
61c9708264 remove: inaccessible links and their descriptions (#9745)
Merge pull request 9745
2025-01-01 05:55:23 -08:00
jekyllbot
964a2689a1 Update history to reflect merge of #9743 [ci skip] 2024-12-30 08:15:49 -08:00
Ashwin Maroli
98c14c0f2f Test inspect filter with custom object (#9743)
Merge pull request 9743
2024-12-30 08:15:47 -08:00
jekyllbot
74f0c4d079 Update history to reflect merge of #9742 [ci skip] 2024-12-30 06:18:14 -08:00
Ashwin Maroli
3689b5bd97 Add an optional :rdoc group of gems (#9742)
Merge pull request 9742
2024-12-30 06:18:12 -08:00
Ashwin Maroli
092010703f Trigger memprof workflow manually [skip ci] 2024-12-29 19:02:52 +05:30
jekyllbot
1ffce1ed6b Update history to reflect merge of #9737 [ci skip] 2024-12-27 06:45:59 -08:00
Ashwin Maroli
7072c65f6e Fix expected markup per WAI-ARIA requirements (#9737)
Merge pull request 9737
2024-12-27 06:45:57 -08:00
jekyllbot
094fc89d70 Update history to reflect merge of #9704 [ci skip] 2024-12-16 06:26:51 -08:00
Khalila
70e4e87945 Fix broken link on third-party.md (#9704)
Merge pull request 9704
2024-12-16 06:26:49 -08:00
jekyllbot
0e4182aefa Update history to reflect merge of #9715 [ci skip] 2024-11-20 07:05:44 -08:00
Silent
6a4a630bdf Link to GitHub Pages Dependency versions page instead of explicitly specifying Jekyll version (#9715)
Merge pull request 9715
2024-11-20 07:05:43 -08:00
jekyllbot
8e378c0615 Update history to reflect merge of #9699 [ci skip] 2024-10-20 08:42:00 -07:00
林博仁 Buo-ren Lin
6b0af7144d Fix missing url configuration option documentation (#9699)
Merge pull request 9699
2024-10-20 08:41:58 -07:00
jekyllbot
f93928ab2c Update history to reflect merge of #9697 [ci skip] 2024-10-20 07:22:49 -07:00
林博仁 Buo-ren Lin
0c4a453e2c Fix missing glob matching pattern support description in the documentation of the include and exclude configuration options (#9697)
Merge pull request 9697
2024-10-20 07:22:47 -07:00
jekyllbot
44fc6803d2 Update history to reflect merge of #9688 [ci skip] 2024-10-17 06:10:17 -07:00
Ashwin Maroli
5e1b6d3fae Configure some new cops (#9688)
Merge pull request 9688
2024-10-17 06:10:15 -07:00
jekyllbot
fce1966b3a Update history to reflect merge of #9695 [ci skip] 2024-10-10 08:09:12 -07:00
林博仁 Buo-ren Lin
8ba078f95d Fix HTML attribute separation whitespace placement in the Navigation include code of Assets step of the Step by Step Tutorial (#9695)
Merge pull request 9695
2024-10-10 08:09:11 -07:00
jekyllbot
94192a3ab4 Update history to reflect merge of #9666 [ci skip] 2024-09-22 11:22:01 -07:00
Ashwin Maroli
f8a456d16e Render HTML tables at /docs/permalinks/ using a data file (#9666)
Merge pull request 9666
2024-09-22 11:21:59 -07:00
jekyllbot
0f03b31b85 Update history to reflect merge of #9689 [ci skip] 2024-09-22 11:01:38 -07:00
Seth Louis
27805c97ec Fix grammar in the description of page.excerpt variable (#9689)
Merge pull request 9689
2024-09-22 11:01:36 -07:00
jekyllbot
e223b9e1e3 Update history to reflect merge of #9682 [ci skip] 2024-09-22 05:25:42 -07:00
nisbet-hubbard
860c5d6394 Improve docs around using GitHub Actions to build and deploy Jekyll sites (#9682)
Merge pull request 9682
2024-09-22 05:25:40 -07:00
jekyllbot
ca57a45b17 Update history to reflect merge of #9687 [ci skip] 2024-09-20 04:25:04 -07:00
Ashwin Maroli
94831d572d Format .rubocop.yml via a rake task (#9687)
Merge pull request 9687
2024-09-20 04:25:02 -07:00
Ashwin Maroli
ef6ae0305e Publish Release Post for v4.3.4 2024-09-16 21:50:13 +05:30
jekyllbot
4ad5419d55 Update history to reflect merge of #9680 [ci skip] 2024-09-16 08:40:57 -07:00
Ashwin Maroli
32074ef944 Render theme-gem root only in development (#9680)
Merge pull request 9680
2024-09-16 08:40:55 -07:00
Ashwin Maroli
eba4dbcc72 Update history to reflect merge of #9614 [ci skip] 2024-09-16 20:24:11 +05:30
Moncef Belyamani
5861d3ab28 Update current Ruby version to 3.3.5 (#9614)
This is a documentation change to update the current version of Ruby to the
latest as of today: 3.3.5

As for the macOS docs, I updated the supported macOS versions to be in line with what Homebrew supports. I also removed `xz` from the  prerequisites that need to be installed with Homebrew since it gets installed automatically when you install ruby-install.

Co-authored-by: Moncef Belyamani <git@rubyonmac.dev>
2024-09-16 20:08:42 +05:30
jekyllbot
17d1d9422b Update history to reflect merge of #8890 [ci skip] 2024-09-15 07:10:34 -07:00
Simon Wagar
34e35284aa Fix of a bug in the pagination section (#8890)
Merge pull request 8890
2024-09-15 07:10:33 -07:00
jekyllbot
0629bba297 Update history to reflect merge of #9629 [ci skip] 2024-09-15 06:27:45 -07:00
KenHV
192360dd6a docs: Fix incorrect parentheses (#9629)
Merge pull request 9629
2024-09-15 06:27:44 -07:00
jekyllbot
96a5c80b59 Update history to reflect merge of #9675 [ci skip] 2024-09-11 23:47:00 -07:00
Ashwin Maroli
75d70a0ba8 Extract markup for Improve this page into an inclusion (#9675)
Merge pull request 9675
2024-09-11 23:46:58 -07:00
jekyllbot
bc443c2e66 Update history to reflect merge of #9570 [ci skip] 2024-09-11 06:55:30 -07:00
Mike Slinn
0fde781f2b Fix --livereload-ignore option (#9570)
Merge pull request 9570
2024-09-11 06:55:28 -07:00
Ashwin Maroli
aa8c2466ca [Docs] Mention introduced version for config key 2024-09-08 23:39:42 +05:30
jekyllbot
a5cf2f9a42 Update history to reflect merge of #9606 [ci skip] 2024-09-08 10:17:07 -07:00
Gourav Khunger
f63a68bedd fix: acknowledge livereload_port from site config too (#9606)
Merge pull request 9606
2024-09-08 10:17:06 -07:00
jekyllbot
753b8aaa09 Update history to reflect merge of #9609 [ci skip] 2024-09-08 06:30:11 -07:00
QuinnG8
c59e59091d Add note about VSCode warning for SCSS files (#9609)
Merge pull request 9609
2024-09-08 06:30:10 -07:00
jekyllbot
f2980230e5 Update history to reflect merge of #9667 [ci skip] 2024-09-06 11:21:08 -07:00
Ashwin Maroli
c458e1413a Fix lapses in documentation of page variables (#9667)
Merge pull request 9667
2024-09-06 11:21:06 -07:00
Ashwin Maroli
760eaf0274 Clean up History.markdown [skip ci]
* Remove duplicate entries pertaining to changes to `3.9-stable` and `3.10-stable` under HEAD.
* Re-arrange headings to follow documented order of priority:
  Minor Enhancements > Bug Fixes > Development Fixes > Documentation Changes
2024-09-06 20:32:14 +05:30
jekyllbot
0913d65793 Update history to reflect merge of #9591 [ci skip] 2024-09-06 02:24:45 -07:00
iulianOnofrei (U-lee-aan)
a6739dcfd2 Fix incorrect and inconsistent variables in the permalinks page (#9591)
Merge pull request 9591
2024-09-06 02:24:43 -07:00
jekyllbot
05ce2b2ab2 Update history to reflect merge of #9664 [ci skip] 2024-09-06 02:20:56 -07:00
Ashwin Maroli
f95c5e45bb Run GitHub Actions only if needed (#9664)
Merge pull request 9664
2024-09-06 02:20:55 -07:00
jekyllbot
cd5b71ec88 Update history to reflect merge of #9659 [ci skip] 2024-09-05 23:10:04 -07:00
Ashwin Maroli
e300964879 Windows CI on GitHub Actions (#9659)
Merge pull request 9659
2024-09-05 23:10:02 -07:00
jekyllbot
37b4a4bd89 Update history to reflect merge of #9662 [ci skip] 2024-09-05 07:22:37 -07:00
Ashwin Maroli
3a8b2822f1 Relax version constraint on wdm in new Gemfile (#9662)
Merge pull request 9662
2024-09-05 07:22:34 -07:00
jekyllbot
995c7c8d65 Update history to reflect merge of #9661 [ci skip] 2024-09-05 05:51:29 -07:00
Ashwin Maroli
cde2de69a7 Stop testing with Cucumber on JRuby (#9661)
Merge pull request 9661
2024-09-05 05:51:27 -07:00
jekyllbot
425ad79ff2 Update history to reflect merge of #9653 [ci skip] 2024-08-29 08:16:09 -07:00
Ashwin Maroli
3283e679bc Document keys of global variable {{ jekyll }} (#9653)
Merge pull request 9653
2024-08-29 08:16:07 -07:00
jekyllbot
5947231337 Update history to reflect merge of #9654 [ci skip] 2024-08-29 08:09:21 -07:00
Olle Jonsson
2445bd946e CI: Use JRuby 9.4.8.0 (#9654)
Merge pull request 9654
2024-08-29 08:09:19 -07:00
jekyllbot
a5460320c5 Update history to reflect merge of #9644 [ci skip] 2024-08-04 11:25:55 -07:00
Krisztian Zsolt Sallai
e55274d8f8 Update windows.md (#9644)
Merge pull request 9644
2024-08-04 11:25:54 -07:00
jekyllbot
3d5e86eb08 Update history to reflect merge of #9641 [ci skip] 2024-07-26 00:04:04 -07:00
Virgil Ierubino
885c98a32b Fix error (#9641)
Merge pull request 9641
2024-07-26 00:04:03 -07:00
jekyllbot
60a9cd7356 Update history to reflect merge of #9625 [ci skip] 2024-06-24 15:27:06 -07:00
Parker Moore
822ac4fa47 Add Jekyll 3.10.0 release post & history (#9625)
Merge pull request 9625
2024-06-24 15:27:04 -07:00
jekyllbot
e44b52d9f9 Update history to reflect merge of #9620 [ci skip] 2024-06-17 18:53:57 -07:00
jekyllbot
ed79646d7d Update history to reflect merge of #9616 [ci skip] 2024-06-13 09:56:39 -07:00
jekyllbot
1484c6d6a4 Update history to reflect merge of #9593 [ci skip] 2024-05-23 10:53:19 -07:00
Joel Coffman
38a18af96a Add redirect for step-by-step tutorial (#9593)
Merge pull request 9593
2024-05-23 10:53:17 -07:00
jekyllbot
b6bbe1b469 Update history to reflect merge of #9589 [ci skip] 2024-05-23 09:22:10 -07:00
iulianOnofrei (U-lee-aan)
ed30c864f2 Fix inexistent layout warning for the default 404 page (#9589)
Merge pull request 9589
2024-05-23 09:22:08 -07:00
jekyllbot
1ad8c8dc04 Update history to reflect merge of #9597 [ci skip] 2024-05-22 11:02:13 -07:00
Koichi ITO
28e10da266 Make custom cop inherit RuboCop::Cop::Base (#9597)
Merge pull request 9597
2024-05-22 11:02:11 -07:00
jekyllbot
c52149824d Update history to reflect merge of #9600 [ci skip] 2024-05-22 11:01:20 -07:00
Matt Rogers
1f3c0dc0d4 fix(rubocop): correct lint errors (#9600)
Merge pull request 9600
2024-05-22 11:01:18 -07:00
jekyllbot
96a4198c27 Update history to reflect merge of #9586 [ci skip] 2024-04-23 11:59:01 -07:00
a story
c85bd15340 Fixed: Wrong navigation style on the right side of news and docs pages (#9586)
Merge pull request 9586
2024-04-23 11:58:59 -07:00
jekyllbot
dbbfc5d48c Update history to reflect merge of #9550 [ci skip] 2024-02-12 20:19:22 -08:00
jekyllbot
c7e9061da3 Update history to reflect merge of #9548 [ci skip] 2024-02-12 19:01:18 -08:00
velle
22c756a2e0 Jekyll docs template typo - All pages show "Deployment" (#9548)
Merge pull request 9548
2024-02-12 19:01:16 -08:00
jekyllbot
12ab35011f Update history to reflect merge of #9535 [ci skip] 2024-01-23 10:53:22 -08:00
Parker Moore
84a29bd142 Add a few more emeritus team members (#9535)
Merge pull request 9535
2024-01-23 10:53:21 -08:00
jekyllbot
860d730ff3 Update history to reflect merge of #9530 [ci skip] 2024-01-16 22:58:30 -08:00
Matt Rogers
8f2b53172f fix: make search work again (#9530)
Merge pull request 9530
2024-01-16 22:58:28 -08:00
jekyllbot
b38b7a1479 Update history to reflect merge of #9525 [ci skip] 2024-01-12 18:48:58 -08:00
Matt Rogers
db3437a34f chore: Bump the required ruby version to 2.7 (#9525)
Merge pull request 9525
2024-01-12 18:48:56 -08:00
jekyllbot
42dd477f8a Update history to reflect merge of #9517 [ci skip] 2024-01-12 09:05:01 -08:00
Akira Taguchi
01da87c5f9 Fix gem quote consistency on docs (#9517)
Merge pull request 9517
2024-01-12 09:05:00 -08:00
jekyllbot
839007fa15 Update history to reflect merge of #9338 [ci skip] 2024-01-12 08:57:17 -08:00
Daniel Haim
55e993be25 Improve accessibility of the docs (#9338)
Merge pull request 9338
2024-01-12 08:57:15 -08:00
jekyllbot
108c8419e3 Update history to reflect merge of #9522 [ci skip] 2024-01-10 09:00:10 -08:00
halorrr
25fd87c3e2 add csv to runtime dependency list (#9522)
Merge pull request 9522
2024-01-10 09:00:07 -08:00
jekyllbot
5ae029f9cd Update history to reflect merge of #9520 [ci skip] 2024-01-05 13:57:54 -08:00
Michael Nordmeyer
2ed5f33da6 Add docs version to pages_excerpts feature (#9520)
Merge pull request 9520
2024-01-05 13:57:53 -08:00
jekyllbot
3234c1a38a Update history to reflect merge of #9512 [ci skip] 2023-12-28 16:34:51 -08:00
Parker Moore
901256a42c Fix Performance/StringIdentifierArgument violation in site.rb and allow activesupport 6 for windows tests (#9512)
Merge pull request 9512
2023-12-28 16:34:50 -08:00
Parker Moore
b2e99a0e12 Merge pull request #9515 from jekyll/jekyll-3-9-4-docs 2023-12-28 15:24:55 -08:00
Parker Moore
6c9611d90a Add Jekyll 3.9.4 release post and changelog 2023-12-28 14:58:26 -08:00
jekyllbot
6d2d29220c Update history to reflect merge of #9511 [ci skip] 2023-12-27 12:52:14 -08:00
Matt Rogers
f9c2395a86 Add release post for v4.3.3 (#9511)
Merge pull request 9511
2023-12-27 12:52:12 -08:00
jekyllbot
646b424166 Update history to reflect merge of #9496 [ci skip] 2023-12-01 08:51:37 -08:00
Jonas Jared Jacek
432d0e3e7d Update resources.md (#9496)
Merge pull request 9496
2023-12-01 08:51:35 -08:00
jekyllbot
0753e56ec7 Update history to reflect merge of #9497 [ci skip] 2023-12-01 08:48:51 -08:00
Jonas Jared Jacek
52aab1bc10 Update security.md (#9497)
Merge pull request 9497
2023-12-01 08:48:49 -08:00
jekyllbot
3f3a283018 Update history to reflect merge of #9481 [ci skip] 2023-11-03 15:22:00 -07:00
Gaelan Lloyd
b427a17315 Add FreeBSD installation instructions (#9481)
Merge pull request 9481
2023-11-03 15:21:58 -07:00
jekyllbot
7a79d0ba0c Update history to reflect merge of #9473 [ci skip] 2023-10-31 09:48:06 -07:00
Seth Falco
537032c49d chore: update showcases (#9473)
Merge pull request 9473
2023-10-31 09:48:04 -07:00
jekyllbot
644a704ad5 Update history to reflect merge of #9476 [ci skip] 2023-10-31 09:47:20 -07:00
David Silveira
4bfb4edc40 Update rubocop gem (#9476)
Merge pull request 9476
2023-10-31 09:47:18 -07:00
jekyllbot
2be8e6ce4f Update history to reflect merge of #9445 [ci skip] 2023-10-31 08:59:14 -07:00
Matt Rogers
cd4d84a44f Configure dependabot to handle rubygems dependencies (#9445)
Merge pull request 9445
2023-10-31 08:59:12 -07:00
jekyllbot
77bea6951b Update history to reflect merge of #9477 [ci skip] 2023-10-31 08:48:49 -07:00
Gabriel B. Nunes
d0afea2b03 Clarify which version of Jekyll needs 'jekyll-paginate' (#9477)
Merge pull request 9477
2023-10-31 08:48:45 -07:00
jekyllbot
e57890a290 Update history to reflect merge of #9235 [ci skip] 2023-10-22 10:49:08 -07:00
William Entriken
c52bbde5ec Add GitHub Pages helpful notes (#9235)
Merge pull request 9235
2023-10-22 10:49:06 -07:00
jekyllbot
e0c4640a7a Update history to reflect merge of #9459 [ci skip] 2023-10-22 09:49:14 -07:00
Juan Vásquez
d9df973d2c Bump Rubocop to 1.56.4 (#9459)
Merge pull request 9459
2023-10-22 09:49:12 -07:00
jekyllbot
99f1a235ea Update history to reflect merge of #9469 [ci skip] 2023-10-22 09:47:32 -07:00
Matt Rogers
a70f5cba65 Keep activesupport at version 7.0.x (#9469)
Merge pull request 9469
2023-10-22 09:47:29 -07:00
jekyllbot
8e4ccfc4ff Update history to reflect merge of #9449 [ci skip] 2023-09-23 19:47:29 -07:00
José Romero
3ba746c979 Update resources.md (#9449)
Merge pull request 9449
2023-09-23 19:47:27 -07:00
jekyllbot
1d7236f2c2 Update history to reflect merge of #9441 [ci skip] 2023-09-15 08:47:59 -07:00
Vít Ondruch
d865905d66 Test suite uses shoulda-context only. (#9441)
Merge pull request 9441
2023-09-15 08:47:57 -07:00
jekyllbot
65d7a09174 Update history to reflect merge of #9442 [ci skip] 2023-09-14 17:48:53 -07:00
dependabot[bot]
895a5033c0 Bump actions/checkout from 3 to 4 (#9442)
Merge pull request 9442
2023-09-14 17:48:51 -07:00
jekyllbot
96a640a8c9 Update history to reflect merge of #9426 [ci skip] 2023-09-14 02:05:47 -07:00
なつき
0417baf058 Update github-actions documentation (#9426)
Merge pull request 9426
2023-09-14 02:05:44 -07:00
jekyllbot
d86ba153fe Update history to reflect merge of #9348 [ci skip] 2023-08-14 11:21:25 -07:00
Jonas Jared Jacek
1fbd42ceeb Update convert-site-to-jekyll.md (#9348)
Merge pull request 9348
2023-08-14 11:21:22 -07:00
jekyllbot
0b1aaf5dc1 Update history to reflect merge of #9397 [ci skip] 2023-08-13 17:52:24 -07:00
Jorge
a385117f2c Add CodeQL workflow (#9397)
Merge pull request 9397
2023-08-13 17:52:22 -07:00
jekyllbot
1e18bef7c0 Update history to reflect merge of #9290 [ci skip] 2023-08-13 17:33:18 -07:00
James Hoctor
4c882541d7 Update Fedora prerequisites to include g++ (#9290)
Merge pull request 9290
2023-08-13 17:33:16 -07:00
jekyllbot
f8a3f9bb6a Update history to reflect merge of #9331 [ci skip] 2023-08-13 17:33:11 -07:00
Maciek Palmowski
2277999f39 Adds Kinsta to 3rd party deployments (#9331)
Merge pull request 9331
2023-08-13 17:33:08 -07:00
jekyllbot
3198f2e922 Update history to reflect merge of #9356 [ci skip] 2023-08-13 17:33:02 -07:00
Robert Austin
71fe6aaa0a Add new theme directory to themes resources (#9356)
Merge pull request 9356
2023-08-13 17:33:00 -07:00
jekyllbot
e90053e489 Update history to reflect merge of #9362 [ci skip] 2023-08-13 17:32:44 -07:00
Joe Mahoney
dafa28d40c Point to the Rouge GitHub repo rather than broken website (#9362)
Merge pull request 9362
2023-08-13 17:32:43 -07:00
jekyllbot
e5c4948de6 Update history to reflect merge of #9364 [ci skip] 2023-08-13 17:32:30 -07:00
Ram Vasuthevan
8c4bed5e4f Fix typo in devcontainer.json (#9364)
Merge pull request 9364
2023-08-13 17:32:28 -07:00
jekyllbot
16fb63a326 Update history to reflect merge of #9423 [ci skip] 2023-08-13 17:31:51 -07:00
IFcoltransG
0ab743204a Note the front matter requirement in pages.md (#9423)
Merge pull request 9423
2023-08-13 17:31:49 -07:00
jekyllbot
21847cf798 Update history to reflect merge of #9393 [ci skip] 2023-08-13 13:18:00 -07:00
Shruti Dalvi
76a9a194cf Update 07-assets.md (#9393)
Merge pull request 9393
2023-08-13 13:17:58 -07:00
jekyllbot
6ee39423cd Update history to reflect merge of #9392 [ci skip] 2023-08-11 19:49:16 -07:00
Sutou Kouhei
e57c755c6f Add support for upcoming logger 1.4.3 (#9392)
Merge pull request 9392
2023-08-11 19:49:14 -07:00
jekyllbot
cb6676ba13 Update history to reflect merge of #9411 [ci skip] 2023-08-11 19:47:04 -07:00
Muhab Abdelreheem
d99471332d Typo fix - update to hooks and 3rd party deployment and one other article (#9411)
Merge pull request 9411
2023-08-11 19:47:03 -07:00
jekyllbot
a6b861cd95 Update history to reflect merge of #9406 [ci skip] 2023-07-10 12:00:13 -07:00
William Entriken
dd4312270c Update macos.md (#9406)
Merge pull request 9406
2023-07-10 12:00:11 -07:00
jekyllbot
aef05280c8 Update history to reflect merge of #9405 [ci skip] 2023-07-10 08:14:08 -07:00
William Entriken
d04f1afc81 Update macos.md (#9405)
Merge pull request 9405
2023-07-10 08:14:06 -07:00
jekyllbot
e2527eb872 Update history to reflect merge of #9401 [ci skip] 2023-07-08 15:24:38 -07:00
Joe Mahoney
fdb4c623ba #9398 upgrade RuboCop to 1.54 (#9401)
Merge pull request 9401
2023-07-08 15:24:36 -07:00
jekyllbot
0be06e5eb1 Update history to reflect merge of #9361 [ci skip] 2023-06-05 05:48:58 -07:00
Joe Mahoney
acae1e1ce8 Bump rubocop version to 1.52.x (#9361)
Merge pull request 9361
2023-06-05 05:48:56 -07:00
jekyllbot
07c8d98e88 Update history to reflect merge of #9376 [ci skip] 2023-06-05 05:45:33 -07:00
Tomáš Hübelbauer
11987c65e0 Document Exclude behavior, Include overrides and the default exclusion list (#9376)
Merge pull request 9376
2023-06-05 05:45:31 -07:00
jekyllbot
58a1f62b23 Update history to reflect merge of #9360 [ci skip] 2023-05-08 06:25:46 -07:00
Joe Mahoney
c6dfae56d0 Bump versions of ruby & nodejs in devcontainer (#9360)
Merge pull request 9360
2023-05-08 06:25:44 -07:00
Ashwin Maroli
bb954ff16e Prefer using assert_instance_of
To appease RuboCop `Minitest/AssertInstanceOf`
2023-04-09 19:48:28 +05:30
jekyllbot
7785ef670f Update history to reflect merge of #9326 [ci skip] 2023-03-26 02:05:13 -07:00
waqarnazir
6bedc7e069 Bump Rubocop to version 1.48.x (#9326)
Merge pull request 9326
2023-03-26 02:05:10 -07:00
jekyllbot
8c8c88eec0 Update history to reflect merge of #9292 [ci skip] 2023-03-24 01:59:21 -07:00
Ashwin Maroli
d03742e994 Handle TypeError from where filter gracefully (#9292)
Merge pull request 9292
2023-03-24 01:59:18 -07:00
Ashwin Maroli
052f1bd412 Revert "Normalize line-endings in test plugins"
This reverts commit 73fcc42353.
2023-03-02 12:54:09 +05:30
Ashwin Maroli
73fcc42353 Normalize line-endings in test plugins 2023-03-02 12:48:53 +05:30
jekyllbot
ee2d299370 Update history to reflect merge of #9304 [ci skip] 2023-02-21 14:57:05 -08:00
なつき
16a1e5cac4 Fix jekyll serve --detach with jekyll-sass-converter 3.x (#9304)
Merge pull request 9304
2023-02-21 14:57:03 -08:00
Ashwin Maroli
ecf098580d [Docs]: Adjust line-length in Markdown code-blocks [skip appveyor] 2023-02-16 20:10:15 +05:30
Ashwin Maroli
0cbcf93779 [Docs]: Define :path url-placeholder in sample plugin [skip ci] 2023-02-16 18:51:24 +05:30
jekyllbot
56bbf58911 Update history to reflect merge of #9305 [ci skip] 2023-02-16 04:26:23 -08:00
Ashwin Maroli
4ecbeb4063 Bump RuboCop to v1.45.x (#9305)
Merge pull request 9305
2023-02-16 04:26:21 -08:00
Ashwin Maroli
66e6b2f2d3 Strip extra newlines in History document [ci skip] 2023-02-01 19:36:22 +05:30
Ashwin Maroli
7b6dc1f287 Update History doc to reflect spelling corrections [ci skip] 2023-02-01 19:20:49 +05:30
jekyllbot
80f799b0b6 Update history to reflect merge of #9199 [ci skip] 2023-02-01 05:37:07 -08:00
Josh Soref
7047e7dfb4 Use check-spelling/check-spelling@v0.0.21 (#9199)
Merge pull request 9199
2023-02-01 05:37:05 -08:00
jekyllbot
c0ad3ac41e Update history to reflect merge of #9221 [ci skip] 2023-02-01 05:30:10 -08:00
Sean M. Collins
4cc1905ae3 Update S3 deployment to remove s3_website (#9221)
Merge pull request 9221
2023-02-01 05:30:07 -08:00
jekyllbot
c4af6efca9 Update history to reflect merge of #9205 [ci skip] 2023-01-30 09:49:57 -08:00
dependabot[bot]
e0cd941c09 Bump check-spelling/check-spelling from 0.0.20 to 0.0.21 (#9205)
Merge pull request 9205
2023-01-30 09:49:55 -08:00
jekyllbot
e90fa179d4 Update history to reflect merge of #9284 [ci skip] 2023-01-30 01:41:30 -08:00
Parker Moore
ac4abbd14d Add v3.9.3 release history & post to master branch (#9284)
Merge pull request 9284
2023-01-30 01:41:28 -08:00
Ashwin Maroli
2b590254a1 Test with Ruby 3.2 2023-01-29 21:01:59 +05:30
jekyllbot
87dd43e654 Update history to reflect merge of #9184 [ci skip] 2023-01-27 07:24:29 -08:00
Andy Coates
ef62f7455c Mark highlight mark_lines feature as 4.4 in docs (#9184)
Merge pull request 9184
2023-01-27 07:24:26 -08:00
Ashwin Maroli
e793a96bda Clean up AppVeyor config
[skip ci]
2023-01-27 20:05:37 +05:30
jekyllbot
583da3491f Update history to reflect merge of #9264 [ci skip] 2023-01-26 02:55:37 -08:00
William Underwood
2bd91fdd8c fixed grammatical mistake on "showcase" page (#9264)
Merge pull request 9264
2023-01-26 02:55:35 -08:00
jekyllbot
bf13d8dfbc Update history to reflect merge of #9245 [ci skip] 2023-01-26 02:54:11 -08:00
plgagne
0da02acdf8 grammatical reordering (#9245)
Merge pull request 9245
2023-01-26 02:54:09 -08:00
Ashwin Maroli
67ab1be220 Fix History entry for v4.3.2 2023-01-25 19:24:20 +05:30
Ashwin Maroli
ff60d51c9b Release 💎 v4.3.2 2023-01-20 23:53:30 +05:30
jekyllbot
03db5267a3 Update history to reflect merge of #9263 [ci skip] 2023-01-20 10:13:06 -08:00
Ashwin Maroli
c7e3e689e7 Add release post for v4.3.2 (#9263)
Merge pull request 9263
2023-01-20 10:13:04 -08:00
jekyllbot
99a1b72493 Update history to reflect merge of #9259 [ci skip] 2023-01-18 23:05:42 -08:00
Parker Moore
bf8d50ee08 script/default-site: accept flags for jekyll new (#9259)
Merge pull request 9259
2023-01-18 23:05:39 -08:00
jekyllbot
2aa2861a5d Update history to reflect merge of #9257 [ci skip] 2023-01-18 23:00:25 -08:00
Ashwin Maroli
3a1848066b Rename sass partial created for new blank site (#9257)
Merge pull request 9257
2023-01-18 23:00:21 -08:00
jekyllbot
a891118af4 Update history to reflect merge of #9195 [ci skip] 2023-01-04 03:09:07 -08:00
masaki
bfa7c94899 Update Jekyll on macOS (macos.md) and current ruby version to 3.1.3 in ruby.yml (#9195)
Merge pull request 9195
2023-01-04 03:09:05 -08:00
jekyllbot
39ee3317f4 Update history to reflect merge of #9237 [ci skip] 2022-12-28 23:23:38 -08:00
Mamoru TASAKA
249101aea6 test: use hash explicitly for Struct initializer for ruby 3.2 (#9237)
Merge pull request 9237
2022-12-28 23:23:36 -08:00
jekyllbot
0951a4653d Update history to reflect merge of #9230 [ci skip] 2022-12-26 06:16:41 -08:00
Ashwin Maroli
ee3576e2cb Split test/test_tags.rb into multiple files (#9230)
Merge pull request 9230
2022-12-26 06:16:39 -08:00
jekyllbot
dbaca2c107 Update history to reflect merge of #9225 [ci skip] 2022-12-22 22:20:09 -08:00
Ashwin Maroli
69839ba6dc Publish post on major release of sass-converter (#9225)
Merge pull request 9225
2022-12-22 22:20:07 -08:00
jekyllbot
548b9e9372 Update history to reflect merge of #9223 [ci skip] 2022-12-22 06:51:04 -08:00
なつき
572c86ec13 Update sass related tests for jekyll-sass-converter 3.x (#9223)
Merge pull request 9223
2022-12-22 06:51:02 -08:00
Ashwin Maroli
fc75f5360d Stop testing with Rubies older than 2.7 on Windows 2022-12-18 22:03:51 +05:30
Ashwin Maroli
300668ed7f Lock psych to v4.x
Psych 5 has stopped bundling `libyaml` and expects it to be installed on the host system prior
to being invoked.
Since we don't have a direct dependency on the Psych gem (it gets included in the gem bundle
as a dependency of the `rdoc` gem), lock psych gem to v4.x instead of installing `libyaml` in our
development / CI environment.
2022-12-18 19:15:34 +05:30
Ashwin Maroli
f1a20d0e22 Reword there're to there are 2022-12-18 18:59:35 +05:30
jekyllbot
4c1ab7f182 Update history to reflect merge of #9187 [ci skip] 2022-12-18 05:20:28 -08:00
Ashwin Maroli
b2891a476e Optimize Site#each_site_file (#9187)
Merge pull request 9187
2022-12-18 05:20:27 -08:00
jekyllbot
80fc7729ad Update history to reflect merge of #9186 [ci skip] 2022-12-18 05:14:04 -08:00
Ashwin Maroli
82bb2714df Remove totals in profile table properly (#9186)
Merge pull request 9186
2022-12-18 05:14:02 -08:00
jekyllbot
d78c65f2c7 Update history to reflect merge of #9203 [ci skip] 2022-12-04 02:48:43 -08:00
Valeriy Van
072808d953 Fix typo (#9203)
Merge pull request 9203
2022-12-04 02:48:41 -08:00
jekyllbot
bf67f086c4 Update history to reflect merge of #9185 [ci skip] 2022-11-27 09:29:36 -08:00
Ashwin Maroli
0cf8533f61 Optimize default front matter using File.fnmatch? (#9185)
Merge pull request 9185
2022-11-27 09:29:34 -08:00
jekyllbot
ee29b05e80 Update history to reflect merge of #9196 [ci skip] 2022-11-27 08:21:31 -08:00
Ashwin Maroli
3fded46fa9 Lock Ruby in CI to v3.1.2 and bump JRuby to v9.4.0.0 (#9196)
Merge pull request 9196
2022-11-27 08:21:30 -08:00
Ashwin Maroli
581717cc41 Fix ordered-list style in articles on mobiles 2022-11-07 18:45:33 +05:30
jekyllbot
66fe8b5f21 Update history to reflect merge of #9168 [ci skip] 2022-11-06 23:19:12 -08:00
Otto Liljalaakso
28a475a660 Run tests in UTC timezone (#9168)
Merge pull request 9168
2022-11-06 23:19:10 -08:00
jekyllbot
9301d53ca9 Update history to reflect merge of #9177 [ci skip] 2022-11-06 22:54:21 -08:00
Ashwin Maroli
f40e5cff5f Cleanup highlight tag (#9177)
Merge pull request 9177
2022-11-06 22:54:19 -08:00
jekyllbot
4c42559a51 Update history to reflect merge of #9174 [ci skip] 2022-11-03 07:51:36 -07:00
Robert Love
645584824f Fix Nested tree navigation with recursion example (#9174)
Merge pull request 9174
2022-11-03 07:51:34 -07:00
jekyllbot
48977ec304 Update history to reflect merge of #9138 [ci skip] 2022-11-03 07:40:56 -07:00
Olly Headey
7558ecb1f7 Allow marking specific highlighted lines via Liquid (#9138)
Merge pull request 9138
2022-11-03 07:40:54 -07:00
Ashwin Maroli
99cfe52cd8 Bump RuboCop to v1.38.x
Closes #9173
2022-11-02 14:45:10 +05:30
Ashwin Maroli
94028e7f4c Remove noise in features/highlighting.feature 2022-10-27 20:22:52 +05:30
Ashwin Maroli
91e00b2082 Release 💎 v4.3.1 2022-10-26 23:25:48 +05:30
jekyllbot
8cc0640a68 Update history to reflect merge of #9171 [ci skip] 2022-10-26 10:49:17 -07:00
Ashwin Maroli
28d4eacdcb Release post for v4.3.1 (#9171)
Merge pull request 9171
2022-10-26 10:49:15 -07:00
jekyllbot
eef8030950 Update history to reflect merge of #9170 [ci skip] 2022-10-26 09:38:16 -07:00
Ashwin Maroli
5367a0261d Revert "Incrementally rebuild when a data file is changed (#8771)" (#9170)
Merge pull request 9170
2022-10-26 09:38:14 -07:00
jekyllbot
04123c0cad Update history to reflect merge of #9167 [ci skip] 2022-10-26 09:36:34 -07:00
Ashwin Maroli
7206b7f9ef Respect user-defined name attribute in documents (#9167)
Merge pull request 9167
2022-10-26 09:36:32 -07:00
Ashwin Maroli
390b1f006b Revert back to developing 4.3.x
This reverts commit 556febb436.
This reverts commit a613eb2d82.
2022-10-21 23:22:47 +05:30
Ashwin Maroli
556febb436 Mark initiation of v5.0 development
To prevent users from pointing their Gemfile to the repository and breaking their site.
2022-10-20 22:46:28 +05:30
Ashwin Maroli
a613eb2d82 Disable critical GH Actions on master
To mark `master` as in v5 development mode
2022-10-20 22:21:44 +05:30
Ashwin Maroli
2b56ad4f6d Fix spelling errors in History document 2022-10-20 21:57:37 +05:30
Ashwin Maroli
9c2c01bb7a Release 💎 v4.3.0 2022-10-20 21:32:59 +05:30
jekyllbot
a81cd42768 Update history to reflect merge of #9157 [ci skip] 2022-10-20 08:57:37 -07:00
Ashwin Maroli
b32293cf67 Release post for v4.3.0 (#9157)
Merge pull request 9157
2022-10-20 08:57:35 -07:00
Ashwin Maroli
e27605e380 Clean up HEAD section in History document 2022-10-20 18:58:29 +05:30
Giuseppe Bertone
520326406c Document xz dependency on macOS (#9098)
Signed-off-by: Giuseppe Bertone <giuseppe.bertone@swirldslabs.com>
2022-10-20 15:52:08 +05:30
Kaben
f030e55f70 Fix URL to Liquid documentation (#9158) 2022-10-20 15:45:40 +05:30
Ashwin Maroli
6d3dc74c7d Bump RuboCop to v1.37.x 2022-10-20 14:47:52 +05:30
jekyllbot
35e08eb9db Update history to reflect merge of #9132 [ci skip] 2022-10-16 07:37:06 -07:00
なつき
03f7ddc801 Support jekyll-sass-converter 3.x (#9132)
Merge pull request 9132
2022-10-16 07:37:05 -07:00
jekyllbot
3554b73b7f Update history to reflect merge of #9141 [ci skip] 2022-10-16 04:48:26 -07:00
Youssef Boulkaid
6903f0b0f4 Fix false positive conflicts for static files in a collection (#9141)
Merge pull request 9141
2022-10-16 04:48:24 -07:00
jekyllbot
bb851e235d Update history to reflect merge of #9151 [ci skip] 2022-10-06 23:04:42 -07:00
Kaben
5d5d975672 Update posts.md (#9151)
Merge pull request 9151
2022-10-06 23:04:40 -07:00
jekyllbot
fe45439b6c Update history to reflect merge of #9142 [ci skip] 2022-10-02 03:16:54 -07:00
Youssef Boulkaid
823c8f94d2 Relax RDoc version dependency (#9142)
Merge pull request 9142
2022-10-02 03:16:53 -07:00
jekyllbot
2cc51e6aba Update history to reflect merge of #8771 [ci skip] 2022-09-29 05:46:26 -07:00
Ashwin Maroli
160a6816af Incrementally rebuild when a data file is changed (#8771)
Merge pull request 8771
2022-09-29 05:46:24 -07:00
jekyllbot
d45fb96477 Update history to reflect merge of #9136 [ci skip] 2022-09-29 03:37:44 -07:00
Youssef Boulkaid
daca7e53a1 Disable pending cops when running rubocop (#9136)
Merge pull request 9136
2022-09-29 03:37:42 -07:00
jekyllbot
e05a25a668 Update history to reflect merge of #9135 [ci skip] 2022-09-29 00:16:34 -07:00
Youssef Boulkaid
7a70a3ae5e Unlock Psych dependency (#9135)
Merge pull request 9135
2022-09-29 00:16:32 -07:00
jekyllbot
1baded9acd Update history to reflect merge of #9134 [ci skip] 2022-09-28 03:54:48 -07:00
Ashwin Maroli
1a3d85a8a5 Relax version constraint to allow Rouge 4.x (#9134)
Merge pull request 9134
2022-09-28 03:54:46 -07:00
Ashwin Maroli
b632afd2db Add version badge to documentation header 2022-09-25 20:42:58 +05:30
Ashwin Maroli
d09c5105d7 Document keys of the theme drop
Follow-up to #9129
2022-09-25 20:23:04 +05:30
jekyllbot
6633fd2335 Update history to reflect merge of #9129 [ci skip] 2022-09-24 06:54:57 -07:00
Ashwin Maroli
b8cf7cf96d Introduce theme drop to expose theme details (#9129)
Merge pull request 9129
2022-09-24 06:54:56 -07:00
jekyllbot
5b64b27b2c Update history to reflect merge of #9111 [ci skip] 2022-09-23 10:27:23 -07:00
Josh Soref
d1e392f301 Use check-spelling/check-spelling@v0.0.20 (#9111)
Merge pull request 9111
2022-09-23 10:27:21 -07:00
jekyllbot
7d9b6403c0 Update history to reflect merge of #9125 [ci skip] 2022-09-21 10:25:51 -07:00
Ashwin Maroli
911e249d72 Bump RuboCop to 1.36.x (#9125)
Merge pull request 9125
2022-09-21 10:25:50 -07:00
jekyllbot
d2c7c43c3f Update history to reflect merge of #9093 [ci skip] 2022-08-01 07:21:36 -07:00
Nemo
7a698d4d14 Bump rubocop to 1.32 (#9093)
Merge pull request 9093
2022-08-01 07:21:34 -07:00
jekyllbot
a03e972378 Update history to reflect merge of #9086 [ci skip] 2022-07-13 16:45:38 -07:00
Andrii Abramov
18e5e5223b Update ruby version for macos guide (#9086)
Merge pull request 9086
2022-07-13 16:45:36 -07:00
jekyllbot
3d23171d22 Update history to reflect merge of #9064 [ci skip] 2022-06-20 20:35:43 -07:00
Andreas Deininger
a0c6b4c595 Improve links (http -> https) (#9064)
Merge pull request 9064
2022-06-20 20:35:42 -07:00
jekyllbot
66dd820648 Update history to reflect merge of #9049 [ci skip] 2022-06-20 12:19:38 -07:00
Kirstin Heidler
25369429a7 Windows: describe which option to choose (#9049)
Merge pull request 9049
2022-06-20 12:19:37 -07:00
Ashwin Maroli
8896e125ef Bump RuboCop to v1.30.x 2022-05-26 15:11:58 +05:30
jekyllbot
4537ccac41 Update history to reflect merge of #9057 [ci skip] 2022-05-16 06:51:32 -07:00
Takuya N
674bcfb37e Remove Ionic Framework site from showcase (#9057)
Merge pull request 9057
2022-05-16 06:51:30 -07:00
Ashwin Maroli
0f5f5ba8d1 Bump RuboCop to v1.29.x
Closes #9053
2022-05-09 11:30:27 +05:30
Ashwin Maroli
796ae15c31 Fix alignment of home page section-units on mobile 2022-05-05 16:46:09 +05:30
Ashwin Maroli
d70ffd2a20 Fix news-archive list renders on small-devices
Resolves #8839
2022-05-05 12:49:26 +05:30
jekyllbot
2c0e51330b Update history to reflect merge of #9045 [ci skip] 2022-04-28 05:14:23 -07:00
Andrew Gutekanst
ac93d22df1 Remove git.io shortlinks from repo (#9045)
Merge pull request 9045
2022-04-28 05:14:22 -07:00
jekyllbot
124ce72be8 Update history to reflect merge of #9039 [ci skip] 2022-04-27 23:57:35 -07:00
Ashwin Maroli
6077ed6a01 Remove misleading total row from --profile table (#9039)
Merge pull request 9039
2022-04-27 23:57:33 -07:00
Ashwin Maroli
7c28eb5f7e Bump RuboCop to v1.28.x 2022-04-21 20:20:49 +05:30
jekyllbot
c254533c3b Update history to reflect merge of #8995 [ci skip] 2022-04-08 07:22:30 -07:00
Emily Grace Seville
64dbf46a3b Add clarity to docs on permalinks placeholders and builtins (#8995)
Merge pull request 8995
2022-04-08 07:22:29 -07:00
Ashwin Maroli
1cde234d41 Bump RuboCop to v1.27.x 2022-04-08 18:59:55 +05:30
jekyllbot
b02b070d86 Update history to reflect merge of #8988 [ci skip] 2022-04-08 02:13:22 -07:00
Ashwin Maroli
3b3f845846 Ensure theme config is a Jekyll::Configuration object (#8988)
Merge pull request 8988
2022-04-08 02:13:21 -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
317 changed files with 9371 additions and 4231 deletions

View File

@@ -3,7 +3,7 @@
# Licensed under the MIT License. See https://go.microsoft.com/fwlink/?linkid=2090316 for license information.
#-------------------------------------------------------------------------------------------------------------
FROM ruby:2
FROM ruby:3.0
# Avoid warnings by switching to noninteractive
ENV DEBIAN_FRONTEND=noninteractive
@@ -28,7 +28,7 @@ RUN apt-get update \
#
# Install node.js
&& apt-get -y install curl software-properties-common \
&& curl -sL https://deb.nodesource.com/setup_13.x | bash - \
&& curl -sL https://deb.nodesource.com/setup_18.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.

View File

@@ -1,7 +1,7 @@
// 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",
"name": "Ruby 3",
"dockerFile": "Dockerfile",
// Set *default* container specific settings.json values on container create.
@@ -12,15 +12,15 @@
// 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",
"postCreateCommand": "bundle install"
// Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root.
// "remoteUser": "vscode"
}
}

2
.github/CODEOWNERS vendored
View File

@@ -65,8 +65,6 @@
# @jekyll/stability
Gemfile @jekyll/stability
*.gemspec @jekyll/stability
.travis.yml @jekyll/stability
appveyor.yml @jekyll/stability
/lib/jekyll/configuration.rb @jekyll/stability
/lib/jekyll/deprecator.rb @jekyll/stability
/lib/jekyll/frontmatter_defaults.rb @jekyll/stability

View File

@@ -11,7 +11,7 @@ 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?
- Comment on some of the project's [open issues](https://github.com/jekyll/jekyll/issues). Have you experienced the same problem? Know a workaround? 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.

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`

View File

@@ -1,4 +1,4 @@
blank_issues_enabled: false
blank_issues_enabled: true
contact_links:
- name: Jekyll Community Forum
url: https://talk.jekyllrb.com/

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.
-->

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.10.x.
| Version | Supported |
| ------- | ------------------ |
| 4.4.x | :white_check_mark: |
| 3.10.x | :white_check_mark: |
| < 3.10.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.

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

@@ -0,0 +1,17 @@
# 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)
[candidate.patterns](candidate.patterns) | Patterns that might be worth adding to [patterns.txt](patterns.txt) | perl regular expression with optional comment block introductions (all matches will be suggested) | [candidates](https://github.com/check-spelling/check-spelling/wiki/Feature:-Suggest-patterns)
[line_forbidden.patterns](line_forbidden.patterns) | Patterns to flag in 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.md](advice.md) | 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 suffix)
and then include multiple files inside that directory (with that suffix) to merge multiple files together.

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

@@ -0,0 +1,25 @@
<!-- See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice --> <!-- markdownlint-disable MD033 MD041 -->
<details><summary>If the flagged items are :exploding_head: false positives</summary>
If items relate to a ...
* binary file (or some other file you wouldn't want to check at all).
Please add a file path to the `excludes.txt` file matching the containing file.
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).
* well-formed pattern.
If you can write a [pattern](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns) that would match it,
try 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>

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

@@ -0,0 +1,19 @@
azion
builtins
github
hakiri
https
Linting
Microsoft
ssh
Statictastic
statictastic
supranode
ubuntu
Wikipedia
workaround
workaround
workarounds
WSL
decapcms
tina

View File

@@ -0,0 +1,520 @@
# marker to ignore all code on line
^.*/\* #no-spell-check-line \*/.*$
# marker for ignoring a comment to the end of the line
// #no-spell-check.*$
# patch hunk comments
^\@\@ -\d+(?:,\d+|) \+\d+(?:,\d+|) \@\@ .*
# git index header
index [0-9a-z]{7,40}\.\.[0-9a-z]{7,40}
# cid urls
(['"])cid:.*?\g{-1}
# data url in parens
\(data:[^)]*?(?:[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})[^)]*\)
# data url in quotes
([`'"])data:.*?(?:[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,}).*\g{-1}
# data url
data:[-a-zA-Z=;:/0-9+]*,\S*
# mailto urls
mailto:[-a-zA-Z=;:/?%&0-9+@.]{3,}
# magnet urls
magnet:[?=:\w]+
# magnet urls
"magnet:[^"]+"
# obs:
"obs:[^"]*"
# The `\b` here means a break, it's the fancy way to handle urls, but it makes things harder to read
# In this examples content, I'm using a number of different ways to match things to show various approaches
# asciinema
\basciinema\.org/a/[0-9a-zA-Z]+
# apple
\bdeveloper\.apple\.com/[-\w?=/]+
# Apple music
\bembed\.music\.apple\.com/fr/playlist/usr-share/[-\w.]+
# appveyor api
\bci\.appveyor\.com/api/projects/status/[0-9a-z]+
# appveyor project
\bci\.appveyor\.com/project/(?:[^/\s"]*/){2}builds?/\d+/job/[0-9a-z]+
# Amazon
# Amazon
\bamazon\.com/[-\w]+/(?:dp/[0-9A-Z]+|)
# AWS S3
\b\w*\.s3[^.]*\.amazonaws\.com/[-\w/&#%_?:=]*
# AWS execute-api
\b[0-9a-z]{10}\.execute-api\.[-0-9a-z]+\.amazonaws\.com\b
# AWS ELB
\b\w+\.[-0-9a-z]+\.elb\.amazonaws\.com\b
# AWS SNS
\bsns\.[-0-9a-z]+.amazonaws\.com/[-\w/&#%_?:=]*
# AWS VPC
vpc-\w+
# While you could try to match `http://` and `https://` by using `s?` in `https?://`, sometimes there
# YouTube url
\b(?:(?:www\.|)youtube\.com|youtu.be)/(?:channel/|embed/|user/|playlist\?list=|watch\?v=|v/|)[-a-zA-Z0-9?&=_%]*
# YouTube music
\bmusic\.youtube\.com/youtubei/v1/browse(?:[?&]\w+=[-a-zA-Z0-9?&=_]*)
# YouTube tag
<\s*youtube\s+id=['"][-a-zA-Z0-9?_]*['"]
# YouTube image
\bimg\.youtube\.com/vi/[-a-zA-Z0-9?&=_]*
# Google Accounts
\baccounts.google.com/[-_/?=.:;+%&0-9a-zA-Z]*
# Google Analytics
\bgoogle-analytics\.com/collect.[-0-9a-zA-Z?%=&_.~]*
# Google APIs
\bgoogleapis\.(?:com|dev)/[a-z]+/(?:v\d+/|)[a-z]+/[-@:./?=\w+|&]+
# Google Storage
\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]+/(?:ccc\?key=\w+|(?:u/\d+|d/(?:e/|)[0-9a-zA-Z_-]+/)?(?:edit\?[-\w=#.]*|/\?[\w=&]*|))
# Google Drive
\bdrive\.google\.com/(?:file/d/|open)[-0-9a-zA-Z_?=]*
# Google Groups
\bgroups\.google\.com/(?:(?:forum/#!|d/)(?:msg|topics?|searchin)|a)/[^/\s"]+/[-a-zA-Z0-9$]+(?:/[-a-zA-Z0-9]+)*
# Google Maps
\bmaps\.google\.com/maps\?[\w&;=]*
# Google themes
themes\.googleusercontent\.com/static/fonts/[^/\s"]+/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 Books
\bgoogle\.(?:\w{2,4})/books(?:/\w+)*\?[-\w\d=&#.]*
# Google Fonts
\bfonts\.(?:googleapis|gstatic)\.com/[-/?=:;+&0-9a-zA-Z]*
# Google Forms
\bforms\.gle/\w+
# Google Scholar
\bscholar\.google\.com/citations\?user=[A-Za-z0-9_]+
# Google Colab Research Drive
\bcolab\.research\.google\.com/drive/[-0-9a-zA-Z_?=]*
# GitHub SHAs (api)
\bapi.github\.com/repos(?:/[^/\s"]+){3}/[0-9a-f]+\b
# GitHub SHAs (markdown)
(?:\[`?[0-9a-f]+`?\]\(https:/|)/(?:www\.|)github\.com(?:/[^/\s"]+){2,}(?:/[^/\s")]+)(?:[0-9a-f]+(?:[-0-9a-zA-Z/#.]*|)\b|)
# GitHub SHAs
\bgithub\.com(?:/[^/\s"]+){2}[@#][0-9a-f]+\b
# GitHub wiki
\bgithub\.com/(?:[^/]+/){2}wiki/(?:(?:[^/]+/|)_history|[^/]+(?:/_compare|)/[0-9a-f.]{40,})\b
# githubusercontent
/[-a-z0-9]+\.githubusercontent\.com/[-a-zA-Z0-9?&=_\/.]*
# githubassets
\bgithubassets.com/[0-9a-f]+(?:[-/\w.]+)
# gist github
\bgist\.github\.com/[^/\s"]+/[0-9a-f]+
# git.io
\bgit\.io/[0-9a-zA-Z]+
# GitHub JSON
"node_id": "[-a-zA-Z=;:/0-9+]*"
# Contributor
\[[^\]]+\]\(https://github\.com/[^/\s"]+\)
# GHSA
GHSA(?:-[0-9a-z]{4}){3}
# GitLab commit
\bgitlab\.[^/\s"]*/\S+/\S+/commit/[0-9a-f]{7,16}#[0-9a-f]{40}\b
# GitLab merge requests
\bgitlab\.[^/\s"]*/\S+/\S+/-/merge_requests/\d+/diffs#[0-9a-f]{40}\b
# GitLab uploads
\bgitlab\.[^/\s"]*/uploads/[-a-zA-Z=;:/0-9+]*
# GitLab commits
\bgitlab\.[^/\s"]*/(?:[^/\s"]+/){2}commits?/[0-9a-f]+\b
# binanace
accounts.binance.com/[a-z/]*oauth/authorize\?[-0-9a-zA-Z&%]*
# bitbucket diff
\bapi\.bitbucket\.org/\d+\.\d+/repositories/(?:[^/\s"]+/){2}diff(?:stat|)(?:/[^/\s"]+){2}:[0-9a-f]+
# bitbucket repositories commits
\bapi\.bitbucket\.org/\d+\.\d+/repositories/(?:[^/\s"]+/){2}commits?/[0-9a-f]+
# bitbucket commits
\bbitbucket\.org/(?:[^/\s"]+/){2}commits?/[0-9a-f]+
# bit.ly
\bbit\.ly/\w+
# bitrise
\bapp\.bitrise\.io/app/[0-9a-f]*/[\w.?=&]*
# bootstrapcdn.com
\bbootstrapcdn\.com/[-./\w]+
# cdn.cloudflare.com
\bcdnjs\.cloudflare\.com/[./\w]+
# circleci
\bcircleci\.com/gh(?:/[^/\s"]+){1,5}.[a-z]+\?[-0-9a-zA-Z=&]+
# gitter
\bgitter\.im(?:/[^/\s"]+){2}\?at=[0-9a-f]+
# gravatar
\bgravatar\.com/avatar/[0-9a-f]+
# ibm
[a-z.]*ibm\.com/[-_#=:%!?~.\\/\d\w]*
# imgur
\bimgur\.com/[^.]+
# Internet Archive
\barchive\.org/web/\d+/(?:[-\w.?,'/\\+&%$#_:]*)
# discord
/discord(?:app\.com|\.gg)/(?:invite/)?[a-zA-Z0-9]{7,}
# Disqus
\bdisqus\.com/[-\w/%.()!?&=_]*
# medium link
\blink\.medium\.com/[a-zA-Z0-9]+
# medium
\bmedium\.com/\@?[^/\s"]+/[-\w]+
# microsoft
\b(?:https?://|)(?:(?:download\.visualstudio|docs|msdn2?|research)\.microsoft|blogs\.msdn)\.com/[-_a-zA-Z0-9()=./%]*
# powerbi
\bapp\.powerbi\.com/reportEmbed/[^"' ]*
# vs devops
\bvisualstudio.com(?::443|)/[-\w/?=%&.]*
# microsoft store
\bmicrosoft\.com/store/apps/\w+
# mvnrepository.com
\bmvnrepository\.com/[-0-9a-z./]+
# now.sh
/[0-9a-z-.]+\.now\.sh\b
# oracle
\bdocs\.oracle\.com/[-0-9a-zA-Z./_?#&=]*
# chromatic.com
/\S+.chromatic.com\S*[")]
# codacy
\bapi\.codacy\.com/project/badge/Grade/[0-9a-f]+
# compai
\bcompai\.pub/v1/png/[0-9a-f]+
# mailgun api
\.api\.mailgun\.net/v3/domains/[0-9a-z]+\.mailgun.org/messages/[0-9a-zA-Z=@]*
# mailgun
\b[0-9a-z]+.mailgun.org
# /message-id/
/message-id/[-\w@./%]+
# Reddit
\breddit\.com/r/[/\w_]*
# requestb.in
\brequestb\.in/[0-9a-z]+
# sched
\b[a-z0-9]+\.sched\.com\b
# Slack url
slack://[a-zA-Z0-9?&=]+
# Slack
\bslack\.com/[-0-9a-zA-Z/_~?&=.]*
# Slack edge
\bslack-edge\.com/[-a-zA-Z0-9?&=%./]+
# Slack images
\bslack-imgs\.com/[-a-zA-Z0-9?&=%.]+
# shields.io
\bshields\.io/[-\w/%?=&.:+;,]*
# stackexchange -- https://stackexchange.com/feeds/sites
\b(?:askubuntu|serverfault|stack(?:exchange|overflow)|superuser).com/(?:questions/\w+/[-\w]+|a/)
# Sentry
[0-9a-f]{32}\@o\d+\.ingest\.sentry\.io\b
# Twitter markdown
\[\@[^[/\]:]*?\]\(https://twitter.com/[^/\s"')]*(?:/status/\d+(?:\?[-_0-9a-zA-Z&=]*|)|)\)
# Twitter hashtag
\btwitter\.com/hashtag/[\w?_=&]*
# Twitter status
\btwitter\.com/[^/\s"')]*(?:/status/\d+(?:\?[-_0-9a-zA-Z&=]*|)|)
# Twitter profile images
\btwimg\.com/profile_images/[_\w./]*
# Twitter media
\btwimg\.com/media/[-_\w./?=]*
# Twitter link shortened
\bt\.co/\w+
# facebook
\bfburl\.com/[0-9a-z_]+
# facebook CDN
\bfbcdn\.net/[\w/.,]*
# facebook watch
\bfb\.watch/[0-9A-Za-z]+
# dropbox
\bdropbox\.com/sh?/[^/\s"]+/[-0-9A-Za-z_.%?=&;]+
# ipfs protocol
ipfs://[0-9a-z]*
# ipfs url
/ipfs/[0-9a-z]*
# w3
\bw3\.org/[-0-9a-zA-Z/#.]+
# loom
\bloom\.com/embed/[0-9a-f]+
# regex101
\bregex101\.com/r/[^/\s"]+/\d+
# figma
\bfigma\.com/file(?:/[0-9a-zA-Z]+/)+
# freecodecamp.org
\bfreecodecamp\.org/[-\w/.]+
# image.tmdb.org
\bimage\.tmdb\.org/[/\w.]+
# mermaid
\bmermaid\.ink/img/[-\w]+|\bmermaid-js\.github\.io/mermaid-live-editor/#/edit/[-\w]+
# Wikipedia
\ben\.wikipedia\.org/wiki/[-\w%.#]+
# gitweb
[^"\s]+/gitweb/\S+;h=[0-9a-f]+
# HyperKitty lists
/archives/list/[^@/]+\@[^/\s"]*/message/[^/\s"]*/
# lists
/thread\.html/[^"\s]+
# list-management
\blist-manage\.com/subscribe(?:[?&](?:u|id)=[0-9a-f]+)+
# kubectl.kubernetes.io/last-applied-configuration
"kubectl.kubernetes.io/last-applied-configuration": ".*"
# pgp
\bgnupg\.net/pks/lookup[?&=0-9a-zA-Z]*
# Spotify
\bopen\.spotify\.com/embed/playlist/\w+
# Mastodon
\bmastodon\.[-a-z.]*/(?:media/|\@)[?&=0-9a-zA-Z_]*
# scastie
\bscastie\.scala-lang\.org/[^/]+/\w+
# images.unsplash.com
\bimages\.unsplash\.com/(?:(?:flagged|reserve)/|)[-\w./%?=%&.;]+
# pastebin
\bpastebin\.com/[\w/]+
# heroku
\b\w+\.heroku\.com/source/archive/\w+
# quip
\b\w+\.quip\.com/\w+(?:(?:#|/issues/)\w+)?
# badgen.net
\bbadgen\.net/badge/[^")\]'\s]+
# statuspage.io
\w+\.statuspage\.io\b
# media.giphy.com
\bmedia\.giphy\.com/media/[^/]+/[\w.?&=]+
# tinyurl
\btinyurl\.com/\w+
# getopts
\bgetopts\s+(?:"[^"]+"|'[^']+')
# ANSI color codes
(?:\\(?:u00|x)1b|\x1b)\[\d+(?:;\d+|)m
# URL escaped characters
\%[0-9A-F][A-F]
# IPv6
\b(?:[0-9a-fA-F]{0,4}:){3,7}[0-9a-fA-F]{0,4}\b
# c99 hex digits (not the full format, just one I've seen)
0x[0-9a-fA-F](?:\.[0-9a-fA-F]*|)[pP]
# Punycode
\bxn--[-0-9a-z]+
# sha
sha\d+:[0-9]*[a-f]{3,}[0-9a-f]*
# sha-... -- uses a fancy capture
(['"]|&quot;)[0-9a-f]{40,}\g{-1}
# hex runs
\b[0-9a-fA-F]{16,}\b
# hex in url queries
=[0-9a-fA-F]*?(?:[A-F]{3,}|[a-f]{3,})[0-9a-fA-F]*?&
# ssh
(?:ssh-\S+|-nistp256) [-a-zA-Z=;:/0-9+]{12,}
# PGP
\b(?:[0-9A-F]{4} ){9}[0-9A-F]{4}\b
# GPG keys
\b(?:[0-9A-F]{4} ){5}(?: [0-9A-F]{4}){5}\b
# Well known gpg keys
.well-known/openpgpkey/[\w./]+
# uuid:
\b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b
# hex digits including css/html color classes:
(?:[\\0][xX]|\\u|[uU]\+|#x?|\%23)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|u\d+)\b
# integrity
integrity="sha\d+-[-a-zA-Z=;:/0-9+]{40,}"
# https://www.gnu.org/software/groff/manual/groff.html
# man troff content
\\f[BCIPR]
# '
\\\(aq
# .desktop mime types
^MimeTypes?=.*$
# .desktop localized entries
^[A-Z][a-z]+\[[a-z]+\]=.*$
# Localized .desktop content
Name\[[^\]]+\]=.*
# IServiceProvider
\bI(?=(?:[A-Z][a-z]{2,})+\b)
# crypt
"\$2[ayb]\$.{56}"
# scrypt / argon
\$(?:scrypt|argon\d+[di]*)\$\S+
# Input to GitHub JSON
content: "[-a-zA-Z=;:/0-9+]*="
# Python stringprefix / binaryprefix
# Note that there's a high false positive rate, remove the `?=` and search for the regex to see if the matches seem like reasonable strings
(?<!')\b(?:B|BR|Br|F|FR|Fr|R|RB|RF|Rb|Rf|U|UR|Ur|b|bR|br|f|fR|fr|r|rB|rF|rb|rf|u|uR|ur)'(?:[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})
# Regular expressions for (P|p)assword
\([A-Z]\|[a-z]\)[a-z]+
# JavaScript regular expressions
# javascript test regex
/.*/[gim]*\.test\(
# javascript match regex
\.match\(/[^/\s"]*/[gim]*\s*
# javascript match regex
\.match\(/\\[b].*?/[gim]*\s*\)(?:;|$)
# javascript regex
^\s*/\\[b].*/[gim]*\s*(?:\)(?:;|$)|,$)
# javascript replace regex
\.replace\(/[^/\s"]*/[gim]*\s*,
# Go regular expressions
regexp?\.MustCompile\(`[^`]*`\)
# sed regular expressions
sed 's/(?:[^/]*?[a-zA-Z]{3,}[^/]*?/){2}
# go install
go install(?:\s+[a-z]+\.[-@\w/.]+)+
# kubernetes pod status lists
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase
\w+(?:-\w+)+\s+\d+/\d+\s+(?:Running|Pending|Succeeded|Failed|Unknown)\s+
# kubectl - pods in CrashLoopBackOff
\w+-[0-9a-f]+-\w+\s+\d+/\d+\s+CrashLoopBackOff\s+
# kubernetes object suffix
-[0-9a-f]{10}-\w{5}\s
# posthog secrets
posthog\.init\((['"])phc_[^"',]+\g{-1},
# xcode
# xcodeproject scenes
(?:Controller|ID|id)="\w{3}-\w{2}-\w{3}"
# xcode api botches
customObjectInstantitationMethod
# font awesome classes
\.fa-[-a-z0-9]+
# Update Lorem based on your content (requires `ge` and `w` from https://github.com/jsoref/spelling; and `review` from https://github.com/check-spelling/check-spelling/wiki/Looking-for-items-locally )
# grep '^[^#].*lorem' .github/actions/spelling/patterns.txt|perl -pne 's/.*i..\?://;s/\).*//' |tr '|' "\n"|sort -f |xargs -n1 ge|perl -pne 's/^[^:]*://'|sort -u|w|sed -e 's/ .*//'|w|review -
# Warning, while `(?i)` is very neat and fancy, if you have some binary files that aren't proper unicode, you might run into:
## Operation "substitution (s///)" returns its argument for non-Unicode code point 0x1C19AE (the code point will vary).
## You could manually change `(?i)X...` to use `[Xx]...`
## or you could add the files to your `excludes` file (a version after 0.0.19 should identify the file path)
# Lorem
(?:\w|\s|[,.])*\b(?i)(?:amet|consectetur|cursus|dolor|eros|ipsum|lacus|libero|ligula|lorem|magna|neque|nulla|suscipit|tempus)\b(?:\w|\s|[,.])*
# Non-English
[a-zA-Z]*[ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*
# French
# This corpus only had capital letters, but you probably want lowercase ones as well.
\b[LN]'+[a-z]{2,}\b
# latex
\\(?:n(?:ew|ormal|osub)|r(?:enew)|t(?:able(?:of|)|he|itle))(?=[a-z]+)
# the negative lookahead here is to allow catching 'templatesz' as a misspelling
# but to otherwise recognize a Windows path with \templates\foo.template or similar:
\\(?:necessary|r(?:eport|esolve[dr]?|esult)|t(?:arget|emplates?))(?![a-z])
# ignore long runs of a single character:
\b([A-Za-z])\g{-1}{3,}\b
# version suffix <word>v#
(?:(?<=[A-Z]{2})V|(?<=[a-z]{2}|[A-Z]{2})v)\d+(?:\b|(?=[a-zA-Z_]))
# Compiler flags (Scala)
(?:^|[\t ,>"'`=(])-J-[DPWXY](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
# Compiler flags
(?:^|[\t ,"'`=(])-[DPWXYLlf](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
# Compiler flags (linker)
,-B
# curl arguments
\b(?:\\n|)curl(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)*
# set arguments
\bset(?:\s+-[abefimouxE]{1,2})*\s+-[abefimouxE]{3,}(?:\s+-[abefimouxE]+)*
# tar arguments
\b(?:\\n|)g?tar(?:\.exe|)(?:(?:\s+--[-a-zA-Z]+|\s+-[a-zA-Z]+|\s[ABGJMOPRSUWZacdfh-pr-xz]+\b)(?:=[^ ]*|))+
# tput arguments -- https://man7.org/linux/man-pages/man5/terminfo.5.html -- technically they can be more than 5 chars long...
\btput\s+(?:(?:-[SV]|-T\s*\w+)\s+)*\w{3,5}\b
# macOS temp folders
/var/folders/\w\w/[+\w]+/(?:T|-Caches-)/

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

@@ -0,0 +1,70 @@
# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-excludes
(?:^|/)(?i)COPYRIGHT
(?:^|/)(?i)LICEN[CS]E
(?:^|/)3rdparty/
(?:^|/)go\.sum$
(?:^|/)package(?:-lock|)\.json$
(?:^|/)vendor/
/fonts/
ignore$
\.avi$
\.bmp$
\.bz2$
\.class$
\.crt$
\.dll$
\.docx?$
\.drawio$
\.DS_Store$
\.eot$
\.exe$
\.gif$
\.gitattributes$
\.graffle$
\.gz$
\.icns$
\.ico$
\.jar$
\.jks$
\.jpe?g$
\.key$
\.lib$
\.lock$
\.map$
\.min\..
\.mod$
\.mp[34]$
\.o$
\.ocf$
\.otf$
\.pdf$
\.pem$
\.png$
\.psd$
\.pyc$
\.s$
\.svgz?$
\.tar$
\.tiff?$
\.ttf$
\.wav$
\.webm$
\.webp$
\.woff$
\.woff2$
\.xlsx?$
\.zip$
^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/
^\Q.github/workflows/spelling.yml\E$

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

@@ -0,0 +1,479 @@
adaoraul
AFile
afterall
Alexey
alfredxing
Anatoliy
andreyvit
Ankit
Anning
appveyor
arengu
ariejan
asciinema
asdf
ashmaroli
Autobuild
autoreconf
awood
awscli
backticks
barcamp
bbatsov
bdimcheff
bellvat
benbalter
Beney
binstubs
bitbucket
Blogger
blogging
blogs
bonafide
Bou
breadcrumbs
briandoll
bridgetown
bridgetownrb
brightbox
brighterplanet
buddyworks
builtatlightspeed
Burela
byparker
cachegrind
calavera
callgraphs
cartera
cavalle
CDNs
cgi
chango
Chayoung
Cheatsheet
Checkoway
Chrononaut
cibuild
cimg
circleci
CJK
classname
cloudcannon
Cloudinary
cloudsh
CLT
codeclimate
CODEOWNERS
coderay
codeslinger
colorator
commonmark
compatibilize
configyml
contentblocks
Cov
CRLFs
cruft
Currin
cygwin
daringfireball
Dassonville
datafiles
DCEU
Debian
defunkt
delegators
devcontainer
digitalocean
disqus
ditaa
dnf
doclist
doeorg
dommmel
dotfile
Dousse
duckduckgo
duritong
Dusseau
dysinger
ecf
eduardoboucas
Emacs
emojis
endcapture
endraw
endrender
endtablerow
Enumerables
erb
errordocument
Espinaco
eugenebolshakov
evaled
extnames
exts
Fengyun
ffi
Finazzo
firstimage
flakey
flickr
fontello
forloop
formcake
formcarry
formester
formingo
formkeep
formspark
formspree
formx
freenode
fsnotify
fullstory
Gaudino
gcc
gcnovus
gemfile
getform
getset
getsimpleform
gettalong
ghp
ghpages
giraffeacademy
githubcom
gitlab
gjtorikian
globbed
gotcha
Goulven
gridism
GSo
gsubbing
hashbang
henrik
heroku
hilighting
Hoizey
hostman
htmlproofer
Iaa
ial
iconset
ified
invokables
ivey
ize
jalali
jamstackthemes
jan
Jax
jcon
jdoe
jeffreytse
jeffrydegrande
Jekpack
jekyllbot
jekyllconf
Jekyllers
Jekyllin
jekyllized
jekylllayoutconcept
jekyllrb
jekyllthemes
jekyllup
jemoji
jmcglone
johnreilly
jqr
jsonify
juretta
jwarby
Kacper
Kasberg
Kentico
Kewin
keycdn
kickster
Kinnula
kinsta
kiwifruit
Kolesky
konklone
kontent
Kotvinsky
kramdown
Kulig
Kwokfu
Lamprecht
launchctl
launchy
laurilehmijoki
learnxinyminutes
lexers
linenos
linkify
liufengyun
localheinz
Locher
Losslessly
lovin
lsi
lstrip
lyche
macromates
mademistakes
Manmeet
markdownify
Maroli
Marsceill
maruku
mathjax
mathml
mattr
Maximiliano
mchung
memberspace
mentoring
mergable
Mertcan
mertkahyaoglu
metadatas
microdata
minibundle
Mittal
mkasberg
mkd
mkdn
mkdown
modernizr
mojombo
moncefbelyamani
moz
mreid
mswin
MSYS
Mvvm
myblog
mycontent
mydata
mydoc
myimage
mypage
myposts
myproject
myrepo
myvalue
myvar
Nadjib
nakanishi
navbars
nearlyfreespeech
nethack
netlify
Neue
nginx
ngx
nielsenramon
noifniof
notextile
onebox
oneclick
opensource
Optim
orderofinterpretation
OSVDB
osx
packagecontrol
pacman
pandoc
pantulis
parkr
parseable
paspagon
passthrough
pathawks
Pathutil
paywall
PDFs
Pelykh
pinboard
Piwigo
pjhyett
pkill
pkpass
planetjekyll
plantuml
podcasts
Porcel
Posterous
postfiles
postmodern
preinstalled
Prioritise
Probot
projectlist
pubstorm
pufuwozu
pygments
qrush
Quaid
rackup
razorops
rdiscount
realz
rebund
redcarpet
redcloth
redgreen
redhat
Refactors
Refheap
regen
remi
Responsify
revertable
rfelix
RHEL
ridk
rstrip
rtomayko
Rubo
rubychan
rubyinstaller
rubyprof
Ruparelia
Rusiczki
rvm
saas
samplelist
samrayner
Sassc
Schroers
Schwartzian
screenshot
scrollbars
SDKROOT
sectore
seo
shingo
shopify
shortlinks
shortlog
shoulda
sieversii
sigpipe
Singhaniya
siteleaf
SITENAME
Slicehost
slugified
smartforms
smartify
snipcart
socio
somedir
sonnym
Sonomy
sourced
spam
spotify
ssg
standalone
staticman
Stickyposts
styleguide
subdir
subdomain
subfolderitems
subpages
subpiece
subsubfolderitems
subthing
subvalues
subwidget
superdirectories
superdirs
SUSE
sverrirs
swfobject
swupd
tada
Taillandier
talkyard
technicalpickles
templating
Termux
textilize
textpattern
Theunissen
Thornquest
throughs
Tidelift
timeago
timezones
tmm
tomjoht
tomo
toshimaru
triaged
triaging
tsv
Tudou
Tumblr
Tweetsert
txtpen
Tyborska
tzinfo
ujh
ultron
undumpable
unencode
uppercasing
urlset
usernames
utm
vanpelt
Vasovi
vendored
versioned
versioning
vertycal
Veyor
vilcans
Vishesh
vnd
vohedge
vps
vwochnik
WAI
wdm
We'd
webfonts
webhosting
webmentions
website
wildcards
willcodeforfoo
wordpress
workflows
xcode
xdg
Xhmikos
Xiaoiver
XMinutes
xmlschema
Yarp
Yashu
Yastreb
Youku
youtube
yunbox
zeropadding
Zlatan
zoneinfo
zpinter
zypper
zzot

View File

@@ -0,0 +1,62 @@
# reject `m_data` as there's a certain OS which has evil defines that break things if it's used elsewhere
# \bm_data\b
# If you have a framework that uses `it()` for testing and `fit()` for debugging a specific test,
# you might not want to check in code where you were debugging w/ `fit()`, in which case, you might want
# to use this:
#\bfit\(
# s.b. GitHub
\bGithub\b
# s.b. GitLab
\bGitlab\b
# s.b. JavaScript
\bJavascript\b
# s.b. Microsoft
\bMicroSoft\b
# s.b. another
\ban[- ]other\b
# s.b. greater than
\bgreater then\b
# s.b. into
#\sin to\s
# s.b. opt-in
\sopt in\s
# s.b. less than
\bless then\b
# s.b. otherwise
\bother[- ]wise\b
# s.b. nonexistent
\bnon existing\b
\b[Nn]o[nt][- ]existent\b
# s.b. preexisting
[Pp]re[- ]existing
# s.b. preempt
[Pp]re[- ]empt\b
# s.b. preemptively
[Pp]re[- ]emptively
# s.b. reentrancy
[Rr]e[- ]entrancy
# s.b. reentrant
[Rr]e[- ]entrant
# s.b. workaround(s)
#\bwork[- ]arounds?\b
# Reject duplicate words
\s([A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})\s\g{-1}\s

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

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

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

@@ -0,0 +1,164 @@
# 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
# Automatically suggested patterns
# hit-count: 23 file-count: 15
# GitHub SHAs (markdown)
(?:\[`?[0-9a-f]+`?\]\(https:/|)/(?:www\.|)github\.com(?:/[^/\s"]+){2,}(?:/[^/\s")]+)(?:[0-9a-f]+(?:[-0-9a-zA-Z/#.]*|)\b|)
# hit-count: 7 file-count: 4
# Wikipedia
\ben\.wikipedia\.org/wiki/[-\w%.#]+
# hit-count: 5 file-count: 3
# Non-English
[a-zA-Z]*[ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*
# hit-count: 4 file-count: 4
# Twitter status
\btwitter\.com/[^/\s"')]*(?:/status/\d+(?:\?[-_0-9a-zA-Z&=]*|)|)
# hit-count: 3 file-count: 3
# stackexchange -- https://stackexchange.com/feeds/sites
\b(?:askubuntu|serverfault|stack(?:exchange|overflow)|superuser).com/(?:questions/\w+/[-\w]+|a/)
# hit-count: 3 file-count: 2
# vs devops
\bvisualstudio.com(?::443|)/[-\w/?=%&.]*
# hit-count: 2 file-count: 2
# mailto urls
mailto:[-a-zA-Z=;:/?%&0-9+@.]{3,}
# hit-count: 2 file-count: 2
# githubusercontent
/[-a-z0-9]+\.githubusercontent\.com/[-a-zA-Z0-9?&=_\/.]*
# hit-count: 2 file-count: 2
# hex runs
\b[0-9a-fA-F]{16,}\b
# hit-count: 2 file-count: 2
# curl arguments
\b(?:\\n|)curl(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)*
# hit-count: 2 file-count: 1
# microsoft
\b(?:https?://|)(?:(?:download\.visualstudio|docs|msdn2?|research)\.microsoft|blogs\.msdn)\.com/[-_a-zA-Z0-9()=./%]*
# hit-count: 1 file-count: 1
# Amazon
\bamazon\.com/[-\w]+/(?:dp/[0-9A-Z]+|)
# hit-count: 1 file-count: 1
# gist github
\bgist\.github\.com/[^/\s"]+/[0-9a-f]+
# hit-count: 1 file-count: 1
# Contributor
\[[^\]]+\]\(https://github\.com/[^/\s"]+\)
# hit-count: 1 file-count: 1
# medium
\bmedium\.com/\@?[^/\s"]+/[-\w]+
# hit-count: 1 file-count: 1
# Twitter markdown
\[\@[^[/\]:]*?\]\(https://twitter.com/[^/\s"')]*(?:/status/\d+(?:\?[-_0-9a-zA-Z&=]*|)|)\)
# Questionably acceptable forms of `in to`
# Personally, I prefer `log into`, but people object
# https://www.tprteaching.com/log-into-log-in-to-login/
\b[Ll]og in to\b
# acceptable duplicates
# ls directory listings
[-bcdlpsw](?:[-r][-w][-sx]){3}\s+\d+\s+(\S+)\s+\g{-1}\s+\d+\s+
# C types and repeated CSS values
\s(center|div|inherit|long|LONG|none|normal|solid|thin|transparent|very)(?: \g{-1})+\s
# go templates
\s(\w+)\s+\g{-1}\s+\`(?:graphql|json|yaml):
# javadoc / .net
(?:[\\@](?:groupname|param)|(?:public|private)(?:\s+static|\s+readonly)*)\s+(\w+)\s+\g{-1}\s
# Commit message -- Signed-off-by and friends
^\s*(?:(?:Based-on-patch|Co-authored|Helped|Mentored|Reported|Reviewed|Signed-off)-by|Thanks-to): (?:[^<]*<[^>]*>|[^<]*)\s*$
# Autogenerated revert commit message
^This reverts commit [0-9a-f]{40}\.$
# ignore long runs of a single character:
\b([A-Za-z])\g{-1}{3,}\b
# ignore inline code
`\w+`

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

@@ -0,0 +1,10 @@
^attache$
benefitting
occurences?
^dependan.*
^oer$
Sorce
^[Ss]pae.*
^untill$
^untilling$
^wether.*

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

@@ -0,0 +1,12 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: bundler
reviewers:
- "jekyll/core"
directory: /
schedule:
interval: weekly

View File

@@ -2,7 +2,7 @@
This issue is reserved for people who never contributed to Open Source before. We know that the process of creating a pull request is the biggest barrier for new contributors. This issue is for you 💝
[About First Timers Only](http://www.firsttimersonly.com/).
[About First Timers Only](https://www.firsttimersonly.com/).
### 🤔 What you will need to know.

17
.github/release-please-config.json vendored Normal file
View File

@@ -0,0 +1,17 @@
{
"pull-request-title-pattern": "chore: release 💎 ${version}",
"packages": {
".": {
"changelog-path": "History.markdown",
"release-type": "ruby",
"bump-minor-pre-major": false,
"bump-patch-for-minor-pre-major": false,
"draft": false,
"prerelease": false,
"include-component-in-tag": false,
"include-v-in-tag": true,
"version-file": "lib/jekyll/version.rb"
}
},
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
}

3
.github/release-please-manifest.json vendored Normal file
View File

@@ -0,0 +1,3 @@
{
".": "4.4.1"
}

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@v4
- 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 }}"

View File

@@ -1,53 +0,0 @@
name: Continuous Integration
on:
push:
branches:
- master
- /.*-stable/
pull_request:
branches:
- master
- /.*-stable/
jobs:
ci:
if: "!contains(github.event.commits[0].message, '[ci skip]')"
name: 'SUITE: ${{ matrix.test_suite }} / OS: ${{ matrix.os }}'
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
test_suite:
- test
- default-site
os:
- ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 5
- name: Ruby
uses: actions/setup-ruby@v1
with:
ruby-version: 2.6.x
- name: Cache dependencies
uses: actions/cache@v1
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-
- name: 'Update Rubygems'
run: 'gem update --system --no-document'
- name: 'Update Bundler'
run: 'gem update bundler --no-document'
- name: Set up bundle
run: |
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
- name: Run Test Suite
run: bash script/cibuild
env:
CI: true
TEST_SUITE: ${{ matrix.test_suite }}

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

@@ -0,0 +1,87 @@
name: Continuous Integration
on:
push:
branches:
- master
- "*-stable"
paths-ignore:
- "docs/**"
pull_request:
branches:
- master
- "*-stable"
paths-ignore:
- "docs/**"
jobs:
ci:
name: "Run Tests (${{ matrix.ruby.label }} on ${{ matrix.os.label }})"
runs-on: ${{ matrix.os.image }}
strategy:
fail-fast: false
matrix:
ruby:
- label: Ruby 2.7
version: "2.7"
- label: Ruby 3.3
version: "3.3"
- label: Ruby 3.4
version: "3.4"
os:
- label: Linux
image: "ubuntu-latest"
- label: Windows
image: "windows-latest"
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: "Set up ${{ matrix.ruby.label }}"
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby.version }}
bundler-cache: true
- name: Run Minitest based tests
run: bash script/test
- name: Run Cucumber based tests
run: bash script/cucumber --color
- name: Generate and Build a new site
run: bash script/default-site
xtras:
name: "${{ matrix.job_name }} (${{ matrix.setup_label }})"
runs-on: "ubuntu-latest"
strategy:
fail-fast: false
matrix:
include:
- job_name: "Unit Test with JRuby"
setup_label: "JRuby 9.4.8.0"
step_name: "Run Minitest based tests"
script_file: "test"
ruby_version: "jruby-9.4.8.0"
- job_name: "Smoke Test with JRuby"
setup_label: "JRuby 9.4.8.0"
step_name: "Generate and Build a new site"
script_file: "default-site"
ruby_version: "jruby-9.4.8.0"
- job_name: "Profile Docs Site"
setup_label: "Ruby 2.7"
step_name: "Build and Profile docs site"
script_file: "profile-docs"
ruby_version: "2.7"
- job_name: "Style Check"
setup_label: "Ruby 2.7"
step_name: "Run RuboCop"
script_file: "fmt"
ruby_version: "2.7"
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: "Set up ${{ matrix.setup_label }}"
uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ matrix.ruby_version }}
bundler-cache: true
- name: ${{ matrix.step_name }}
run: bash script/${{ matrix.script_file }}

65
.github/workflows/codeql.yml vendored Normal file
View File

@@ -0,0 +1,65 @@
name: "CodeQL"
on:
# push:
# branches: [ 'master' ]
# pull_request:
# # The branches below must be a subset of the branches above
# branches: [ 'master' ]
schedule:
- cron: '56 11 * * 5'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'ruby', 'javascript' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Use only 'java' to analyze code written in Java, Kotlin or both
# Use only 'javascript' to analyze code written in JavaScript, TypeScript or both
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
steps:
- name: Checkout repository
uses: actions/checkout@v4
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, Java, or Swift).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{matrix.language}}"

View File

@@ -0,0 +1,50 @@
# This workflow checks to ensure that all PR titles conform to the conventional
# commit spec and use the correct type and scopes. The spec for conventional
# commits can be found at https://www.conventionalcommits.org and there is a
# nice cheatsheet in a github gist at
# https://gist.github.com/qoomon/5dfcdf8eec66a051ecd85625518cfd13
#
# The types in this workflow match the spec. The scopes are custom to
# Jekyll and can be changed if desired.
name: Conventional Commit Check
permissions:
pull-requests: read
on:
pull_request_target:
types: [opened, edited, synchronize, reopened, ready_for_review]
branches:
- master
jobs:
commit_lint:
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v5.5.3
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
types: |
feat
fix
perf
refactor
docs
style
test
chore
scopes: |
core
cli
commands
plugins
site
helpers
converters
filters
tags
drops
tests
docs
requireScope: false

View File

@@ -4,6 +4,8 @@ on:
push:
branches:
- master
paths:
- "docs/**"
env:
RUBY_VERSION: 2.7
@@ -12,23 +14,16 @@ 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@v2
- uses: actions/setup-ruby@v1
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: ${{ env.RUBY_VERSION }}
- name: Setup cache for Bundler
id: cache
uses: actions/cache@v2
with:
path: vendor/bundle
key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }}
restore-keys: |
${{ runner.os }}-gems-
- name: Set up dependencies
run: |
bundle install --path=vendor/bundle --jobs 4 --retry 3
bundle clean
bundler-cache: true
- name: Clone target branch
run: |
REMOTE_BRANCH="${REMOTE_BRANCH:-gh-pages}"

44
.github/workflows/release-please.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
name: "Release, please!"
on:
push:
branches:
- master
permissions:
contents: write
pull-requests: write
jobs:
release-please:
if: ${{ github.repository == 'jekyll/jekyll' }}
runs-on: ubuntu-latest
outputs:
release_created: ${{ steps.release.outputs.release_created }}
tag_name: ${{ steps.release.outputs.tag_name }}
steps:
- name: Run Release Please
id: release
uses: googleapis/release-please-action@v4
with:
config-file: .github/release-please-config.json
manifest-file: .github/release-please-manifest.json
token: ${{ secrets.JEKYLLBOT_TOKEN }}
publish-gem:
needs: release-please
if: ${{ needs.release-please.outputs.release_created == 'true' }}
runs-on: ubuntu-latest
permissions:
id-token: write
contents: write
steps:
- name: Checkout Repository
uses: actions/checkout@v6
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.3'
bundler-cache: true
- name: Build and Publish Gem
uses: rubygems/release-gem@v1

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

@@ -0,0 +1,95 @@
name: Spell Check
# Comment management is handled through a secondary job, for details see:
# https://github.com/check-spelling/check-spelling/wiki/Feature%3A-Restricted-Permissions
#
# `jobs.comment-push` runs when a push is made to a repository and the `jobs.spelling` job needs to make a comment
# (in odd cases, it might actually run just to collapse a comment, but that's fairly rare)
# it needs `contents: write` in order to add a comment.
#
# `jobs.comment-pr` runs when a pull_request is made to a repository and the `jobs.spelling` job needs to make a comment
# or collapse a comment (in the case where it had previously made a comment and now no longer needs to show a comment)
# it needs `pull-requests: write` in order to manipulate those comments.
# Updating pull request branches is managed via comment handling.
# For details, see: https://github.com/check-spelling/check-spelling/wiki/Feature:-Update-expect-list
#
# These elements work together to make it happen:
#
# `on.issue_comment`
# This event listens to comments by users asking to update the metadata.
#
# `jobs.update`
# This job runs in response to an issue_comment and will push a new commit
# to update the spelling metadata.
#
# `with.experimental_apply_changes_via_bot`
# Tells the action to support and generate messages that enable it
# to make a commit to update the spelling metadata.
#
# `with.ssh_key`
# In order to trigger workflows when the commit is made, you can provide a
# secret (typically, a write-enabled github deploy key).
#
# For background, see: https://github.com/check-spelling/check-spelling/wiki/Feature:-Update-with-deploy-key
on:
# Switch from `pull_request_target` event to reduce distraction from comments
# regarding errors reported in unmodified files.
pull_request:
branches:
- master
- "*-stable"
tags-ignore:
- "**"
types:
- 'opened'
- 'reopened'
- 'synchronize'
jobs:
spelling:
name: Spell Check
permissions:
contents: read
pull-requests: read
actions: read
outputs:
followup: ${{ steps.spelling.outputs.followup }}
runs-on: ubuntu-latest
if: "contains(github.event_name, 'pull_request') || github.event_name == 'push'"
concurrency:
group: spelling-${{ github.event.pull_request.number || github.ref }}
# note: If you use only_check_changed_files, you do not want cancel-in-progress
cancel-in-progress: true
steps:
- name: check-spelling
id: spelling
uses: check-spelling/check-spelling@v0.0.26
with:
# This workflow runs in response to both `push` and `pull_request`, if there's an open `pull_request` in the same repository
# for a given branch, there's no reason to spend resources checking both the `push` and the `pull_request`, so this flag tells
# the action while running for the `push` to find the `pull_request` and stop working early:
suppress_push_for_open_pull_request: 1
# The action will manage checking out the repository itself instead of requiring the workflow to use `actions/checkout...`:
checkout: true
# If running without `: write`, posting a comment won't work, and for security `: write` permissions are left to a distinct
# (optional) job, here we skip trying to post a comment:
post_comment: 0
use_magic_file: 1
extra_dictionary_limit: 10
extra_dictionaries:
cspell:software-terms/software-terms.txt
cspell:php/php.txt
cspell:node/node.txt
cspell:django/django.txt
cspell:html/html.txt
cspell:npm/npm.txt
cspell:ruby/ruby.txt
cspell:fullstack/fullstack.txt
cspell:filetypes/filetypes.txt
check_extra_dictionaries: ''
dictionary_source_prefixes: >-
{"cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20241114/dictionaries/"}
# This workflow has opted not to use comments (users can view the report in GitHub Step Summary)

View File

@@ -1,45 +1,32 @@
name: Third-Party Repository Profiling
on:
push:
branches:
- master
pull_request:
branches:
- master
workflow_dispatch:
jobs:
build_n_profile:
if: "!contains(github.event.commits[0].message, '[ci skip]')"
runs-on: 'ubuntu-latest'
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@v2
uses: actions/checkout@v4
with:
fetch-depth: 5
path: jekyll
- name: Checkout Third-Party Repository
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
repository: ashmaroli/tomjoht.github.io
path: sandbox
- name: Set up Ruby
uses: actions/setup-ruby@v1
uses: ruby/setup-ruby@v1
with:
ruby-version: 2.7
- name: Set up Dependencies Cache
uses: actions/cache@v1
with:
path: sandbox/vendor/bundle
key: ubuntu-latest-gems-
restore-keys: |
ubuntu-latest-gems-
- name: Set up Dependencies
run: |
gem update --system --no-document
gem update bundler --no-document
bundle config gemfile sandbox/Gemfile
bundle config path vendor/bundle
bundle install --jobs 4 --retry 3
ruby-version: 3.4
bundler-cache: true
- name: Run Jekyll Build 3 times
run: |
bundle exec jekyll build -s sandbox -d sandbox/_site --trace

View File

@@ -1,27 +1,53 @@
---
inherit_from: .rubocop_todo.yml
# -----------------------------------------------------------------------------
# This file has been formatted via a Rake Task configuring cops from
# RuboCop v1.57.2.
#
# To add more cops, paste configurations at the end of the file and run
# the rake task via `bundle exec rake rubocop:format_config`.
# -----------------------------------------------------------------------------
inherit_from: ".rubocop_todo.yml"
require:
- rubocop-performance
- ./rubocop/jekyll
- "./rubocop/jekyll"
- rubocop-minitest
- rubocop-performance
- rubocop-rake
- rubocop-rspec
# Directive for all cops
AllCops:
TargetRubyVersion: 2.7
Include:
- lib/**/*.rb
- test/**/*.rb
Exclude:
- benchmark/**/*
- bin/**/*
- exe/**/*
- script/**/*
- tmp/**/*
- vendor/**/*
# Configure custom cop
Jekyll/NoPutsAllowed:
Exclude:
- rake/*.rake
- rake/*.rake
AllCops:
TargetRubyVersion: 2.4
Include:
- lib/**/*.rb
- test/**/*.rb
Exclude:
- bin/**/*
- exe/**/*
- benchmark/**/*
- script/**/*
- vendor/**/*
- tmp/**/*
# Configure built-in cops
# =======================
# Gemspec cops
# ----------------------------------------
Gemspec/DeprecatedAttributeAssignment:
Enabled: true
Gemspec/DevelopmentDependencies:
Enabled: false
Gemspec/RequireMFA:
Enabled: false
# Layout cops
# ----------------------------------------
Layout/BeginEndAlignment:
Enabled: true
Layout/EmptyComment:
@@ -30,20 +56,28 @@ Layout/EmptyLinesAroundAttributeAccessor:
Enabled: true
Layout/EndAlignment:
Severity: error
Layout/HashAlignment:
EnforcedHashRocketStyle: table
Layout/IndentationWidth:
Severity: error
Layout/EndOfLine:
Enabled: false
Layout/FirstArrayElementIndentation:
EnforcedStyle: consistent
Layout/FirstHashElementIndentation:
EnforcedStyle: consistent
Layout/HashAlignment:
EnforcedHashRocketStyle: table
Layout/IndentationWidth:
Severity: error
Layout/LineContinuationLeadingSpace:
Enabled: true
Layout/LineContinuationSpacing:
Enabled: true
Layout/LineEndStringConcatenationIndentation:
Enabled: true
Layout/LineLength:
Exclude:
- !ruby/regexp /features\/.*.rb/
- Rakefile
- rake/*.rake
- Gemfile
- Gemfile
- Rakefile
- features/**/*.rb
- rake/**/*.rake
Max: 100
Severity: warning
Layout/MultilineMethodCallIndentation:
@@ -52,29 +86,51 @@ Layout/MultilineOperationIndentation:
EnforcedStyle: indented
Layout/SpaceAroundMethodCallOperator:
Enabled: true
Layout/SpaceBeforeBrackets:
Enabled: true
Layout/SpaceInsideHashLiteralBraces:
Enabled: true
Exclude:
- test/**/*.rb
- test/**/*.rb
# Lint cops
# ----------------------------------------
Lint/AmbiguousAssignment:
Enabled: true
Lint/AmbiguousOperatorPrecedence:
Enabled: true
Lint/AmbiguousRange:
Enabled: true
Lint/BinaryOperatorWithIdenticalOperands:
Enabled: true
Lint/ConstantDefinitionInBlock:
Enabled: true
Exclude:
- test/**/*.rb
- test/**/*.rb
Lint/ConstantOverwrittenInRescue:
Enabled: true
Lint/DeprecatedConstants:
Enabled: true
Lint/DeprecatedOpenSSLConstant:
Enabled: true
Lint/DuplicateBranch:
Enabled: true
Lint/DuplicateElsifCondition:
Enabled: true
Lint/DuplicateRegexpCharacterClassElement:
Lint/DuplicateMagicComment:
Enabled: true
Lint/DuplicateRescueException:
Lint/DuplicateMatchPattern:
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:
@@ -85,31 +141,55 @@ Lint/HashCompareByIdentity:
Enabled: true
Lint/IdentityComparison:
Enabled: true
Lint/LambdaWithoutLiteralBlock:
Enabled: true
Lint/MissingSuper:
Enabled: false
Lint/MixedCaseRange:
Enabled: true
Lint/MixedRegexpCaptureTypes:
Enabled: false
Lint/NestedPercentLiteral:
Exclude:
- test/test_site.rb
- test/test_site.rb
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/RedundantRegexpQuantifiers:
Enabled: true
Lint/RedundantSafeNavigation:
Enabled: true
Lint/RefinementImportMethods:
Enabled: true
Lint/RequireRangeParentheses:
Enabled: true
Lint/RequireRelativeSelfPath:
Enabled: true
Lint/SelfAssignment:
Enabled: true
Lint/StructNewOverride:
Enabled: true
Lint/SymbolConversion:
Enabled: true
Lint/ToEnumArguments:
Enabled: false
Lint/TopLevelReturnWithArgument:
Enabled: true
Lint/TrailingCommaInAttributeDeclaration:
Enabled: true
Lint/TripleQuotes:
Enabled: true
Lint/UnexpectedBlockArity:
Enabled: true
Lint/UnmodifiedReduceAccumulator:
Enabled: true
Lint/UnreachableCode:
@@ -118,66 +198,167 @@ Lint/UnreachableLoop:
Enabled: true
Lint/UselessMethodDefinition:
Enabled: true
Lint/UselessRuby2Keywords:
Enabled: true
Lint/UselessTimes:
Enabled: true
Lint/Void:
Exclude:
- lib/jekyll/site.rb
- lib/jekyll/site.rb
# Metrics cops
# ----------------------------------------
Metrics/AbcSize:
Max: 23
Metrics/BlockLength:
Exclude:
- test/**/*.rb
- lib/jekyll/configuration.rb
- rake/*.rake
- lib/jekyll/configuration.rb
- rake/**/*.rake
- test/**/*.rb
Metrics/ClassLength:
Exclude:
- !ruby/regexp /features\/.*.rb$/
- !ruby/regexp /test\/.*.rb$/
- lib/jekyll/document.rb
- lib/jekyll/site.rb
- lib/jekyll/commands/serve.rb
- lib/jekyll/configuration.rb
- features/**/*.rb
- lib/jekyll/commands/serve.rb
- lib/jekyll/configuration.rb
- lib/jekyll/document.rb
- lib/jekyll/site.rb
- test/**/*.rb
Max: 240
Metrics/CollectionLiteralLength:
Enabled: true
Metrics/CyclomaticComplexity:
Exclude:
- lib/jekyll/utils.rb
- lib/jekyll/commands/serve.rb
- lib/jekyll/commands/serve.rb
- lib/jekyll/utils.rb
Max: 11
Metrics/MethodLength:
CountComments: false
Max: 20
Severity: error
Metrics/ModuleLength:
Max: 240
Exclude:
- lib/jekyll/filters.rb
- lib/jekyll/filters.rb
Max: 240
Metrics/ParameterLists:
Max: 4
Metrics/PerceivedComplexity:
Max: 13
# Minitest cops
# ----------------------------------------
Minitest/AssertEmptyLiteral:
Enabled: false
Minitest/AssertInDelta:
Enabled: true
Minitest/AssertKindOf:
Enabled: true
Minitest/AssertOperator:
Enabled: false
Minitest/AssertOutput:
Enabled: true
Minitest/AssertPathExists:
Enabled: true
Minitest/AssertPredicate:
Enabled: false
Minitest/AssertRaisesWithRegexpArgument:
Enabled: true
Minitest/AssertSame:
Enabled: true
Minitest/AssertSilent:
Enabled: true
Minitest/AssertWithExpectedArgument:
Enabled: true
Minitest/AssertionInLifecycleHook:
Enabled: true
Minitest/DuplicateTestRun:
Enabled: true
Minitest/EmptyLineBeforeAssertionMethods:
Enabled: false
Minitest/LifecycleHooksOrder:
Enabled: true
Minitest/LiteralAsActualArgument:
Enabled: true
Minitest/MultipleAssertions:
Enabled: true
Minitest/NonExecutableTestMethod:
Enabled: true
Minitest/NonPublicTestMethod:
Enabled: true
Minitest/RedundantMessageArgument:
Enabled: true
Minitest/RefuteInDelta:
Enabled: true
Minitest/RefuteKindOf:
Enabled: true
Minitest/RefuteOperator:
Enabled: false
Minitest/RefutePathExists:
Enabled: true
Minitest/RefutePredicate:
Enabled: false
Minitest/RefuteSame:
Enabled: true
Minitest/ReturnInTestMethod:
Enabled: true
Minitest/SkipEnsure:
Enabled: true
Minitest/SkipWithoutReason:
Enabled: true
Minitest/TestFileName:
Enabled: true
Exclude:
- test/helper.rb
Minitest/TestMethodName:
Enabled: false
Minitest/UnreachableAssertion:
Enabled: true
Minitest/UnspecifiedException:
Enabled: true
Minitest/UselessAssertion:
Enabled: true
# Naming cops
# ----------------------------------------
Naming/FileName:
Enabled: false
Naming/HeredocDelimiterNaming:
Exclude:
- test/**/*.rb
- test/**/*.rb
Naming/MemoizedInstanceVariableName:
Exclude:
- lib/jekyll/convertible.rb
- lib/jekyll/drops/site_drop.rb
- lib/jekyll/drops/unified_payload_drop.rb
- lib/jekyll/page_without_a_file.rb
- lib/jekyll/convertible.rb
- lib/jekyll/drops/site_drop.rb
- lib/jekyll/drops/unified_payload_drop.rb
- lib/jekyll/page_without_a_file.rb
# Performance cops
# ----------------------------------------
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/MapCompact:
Enabled: true
Performance/MapMethodChain:
Enabled: true
Performance/MethodObjectAsBlock:
Enabled: true
Performance/RedundantEqualityComparisonBlock:
Enabled: false
Performance/RedundantSortBlock:
Enabled: true
Performance/RedundantSplitRegexpArgument:
Enabled: true
Performance/RedundantStringChars:
Enabled: true
Performance/ReverseFirst:
@@ -186,62 +367,94 @@ Performance/SortReverse:
Enabled: false
Performance/Squeeze:
Enabled: true
Performance/StringIdentifierArgument:
Enabled: true
Performance/StringInclude:
Enabled: true
Exclude:
- lib/jekyll/utils/platforms.rb
- lib/jekyll/utils/platforms.rb
Performance/Sum:
Enabled: true
# Security cops
# ----------------------------------------
Security/CompoundHash:
Enabled: true
Security/IoMethods:
Enabled: true
Security/MarshalLoad:
Exclude:
- !ruby/regexp /test\/.*.rb$/
- lib/jekyll/regenerator.rb
- lib/jekyll/regenerator.rb
- test/**/*.rb
Security/YAMLLoad:
Exclude:
- !ruby/regexp /features\/.*.rb/
- !ruby/regexp /test\/.*.rb$/
- features/**/*.rb
- test/**/*.rb
Style/ArgumentsForwarding:
Enabled: false
Style/ArrayCoercion:
Enabled: true
# Style cops
# ----------------------------------------
Style/AccessModifierDeclarations:
Enabled: false
Style/AccessorGrouping:
Enabled: false
Enabled: true
Style/Alias:
EnforcedStyle: prefer_alias_method
Style/AndOr:
Severity: error
Style/ArgumentsForwarding:
Enabled: false
Style/ArrayCoercion:
Enabled: true
Style/ArrayIntersect:
Enabled: true
Style/BisectedAttrAccessor:
Enabled: true
Style/CaseLikeIf:
Enabled: true
Style/ClassAndModuleChildren:
Exclude:
- test/**/*.rb
- test/**/*.rb
Style/ClassEqualityComparison:
Enabled: true
Style/CollectionCompact:
Enabled: true
Style/CombinableLoops:
Enabled: true
Style/Documentation:
Enabled: false
Style/ConcatArrayLiterals:
Enabled: true
Style/DirEmpty:
Enabled: true
Style/DocumentDynamicEvalDefinition:
Enabled: true
Style/Documentation:
Enabled: false
Style/DoubleNegation:
Enabled: false
Style/ExponentialNotation:
Style/EmptyHeredoc:
Enabled: true
Style/EndlessMethod:
Enabled: true
Style/EnvHome:
Enabled: true
Style/ExactRegexpMatch:
Enabled: true
Style/ExplicitBlockArgument:
Enabled: false
Style/ExponentialNotation:
Enabled: true
Style/FetchEnvVar:
Enabled: false
Style/FileEmpty:
Enabled: true
Style/FileRead:
Enabled: false
Style/FileWrite:
Enabled: true
Style/FormatStringToken:
Exclude:
- lib/jekyll/utils/ansi.rb
- lib/jekyll/liquid_renderer/table.rb
- lib/jekyll/profiler.rb
- lib/jekyll/liquid_renderer/table.rb
- lib/jekyll/profiler.rb
- lib/jekyll/utils/ansi.rb
Style/FrozenStringLiteralComment:
EnforcedStyle: always
Style/GlobalStdStream:
@@ -250,8 +463,12 @@ 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:
@@ -261,62 +478,121 @@ Style/HashTransformKeys:
Enabled: false
Style/HashTransformValues:
Enabled: true
Style/IfWithBooleanLiteralBranches:
Enabled: true
Style/KeywordParametersOrder:
Enabled: true
Style/MagicCommentFormat:
Enabled: true
Style/MapCompactWithConditionalBlock:
Enabled: true
Style/MapToHash:
Enabled: true
Style/MinMaxComparison:
Enabled: true
Style/MixinUsage:
Exclude:
- test/helper.rb
- test/helper.rb
Style/ModuleFunction:
Enabled: false
Style/MultilineTernaryOperator:
Severity: error
Style/NegatedIfElseCondition:
Enabled: true
Style/NestedFileDirname:
Enabled: true
Style/NilLambda:
Enabled: true
Style/ObjectThen:
Enabled: true
Style/OperatorMethodCall:
Enabled: true
Style/OptionalBooleanParameter:
Enabled: true
Exclude:
- lib/jekyll/log_adapter.rb
Style/PercentLiteralDelimiters:
PreferredDelimiters:
"%q": "{}"
"%Q": "{}"
"%W": "()"
"%q": "{}"
"%r": "!!"
"%s": "()"
"%w": "()"
"%W": "()"
"%x": "()"
Style/QuotedSymbols:
Enabled: true
Style/RedundantArgument:
Enabled: true
Style/RedundantArrayConstructor:
Enabled: true
Style/RedundantAssignment:
Enabled: true
Style/RedundantConstantBase:
Enabled: true
Style/RedundantCurrentDirectoryInPath:
Enabled: true
Style/RedundantDoubleSplatHashBraces:
Enabled: true
Style/RedundantEach:
Enabled: true
Style/RedundantFetchBlock:
Enabled: false
Style/RedundantFileExtensionInRequire:
Enabled: true
Style/RedundantFilterChain:
Enabled: true
Style/RedundantHeredocDelimiterQuotes:
Enabled: true
Style/RedundantInitialize:
Enabled: true
Exclude:
- lib/jekyll/plugin.rb
Style/RedundantLineContinuation:
Enabled: true
Style/RedundantRegexpArgument:
Enabled: true
Style/RedundantRegexpCharacterClass:
Enabled: true
Style/RedundantRegexpConstructor:
Enabled: true
Style/RedundantRegexpEscape:
Enabled: true
Style/RedundantSelfAssignment:
Enabled: true
Style/RedundantSelfAssignmentBranch:
Enabled: true
Style/RedundantStringEscape:
Enabled: true
Style/RegexpLiteral:
EnforcedStyle: percent_r
Style/RescueModifier:
Enabled: false
Style/ReturnNilInPredicateMethodDefinition:
Enabled: true
Style/SafeNavigation:
Exclude:
- lib/jekyll/document.rb
- lib/jekyll/document.rb
- lib/jekyll/page.rb
Style/SignalException:
EnforcedStyle: only_raise
Style/SingleArgumentDig:
Enabled: true
Style/SingleLineDoEndBlock:
Enabled: true
Style/SlicingWithRange:
Enabled: false
Style/SoleNestedConditional:
Enabled: true
Style/StringLiterals:
EnforcedStyle: double_quotes
Style/StringChars:
Enabled: true
Style/StringConcatenation:
Enabled: true
Exclude:
- lib/jekyll/commands/*.rb
- test/**/*.rb
- lib/jekyll/commands/*.rb
- test/**/*.rb
Style/StringLiterals:
EnforcedStyle: double_quotes
Style/StringLiteralsInInterpolation:
EnforcedStyle: double_quotes
Style/SwapValues:

View File

@@ -1,19 +1,16 @@
# This configuration was generated by
# `rubocop --auto-gen-config --auto-gen-only-exclude`
# on 2020-10-08 15:38:52 UTC using RuboCop version 0.93.0.
# 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: 2
# Cop supports --auto-correct.
# Configuration parameters: AllowForAlignment, EnforcedStyleForExponentOperator.
# SupportedStylesForExponentOperator: space, no_space
Layout/SpaceAroundOperators:
# Offense count: 1
# This cop supports safe auto-correction (--auto-correct).
Performance/BindCall:
Exclude:
- 'lib/jekyll/commands/build.rb'
- 'test/test_configuration.rb'
- 'test/helper.rb'
# Offense count: 1
Style/CombinableLoops:

View File

@@ -1,58 +0,0 @@
bundler_args: --without benchmark:development
script: script/cibuild
cache: bundler
language: ruby
rvm:
- &ruby1 2.7.1
- &ruby2 2.5.8
- &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: *ruby2
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 . .

39
Gemfile
View File

@@ -15,22 +15,35 @@ end
#
group :test do
gem "cucumber", RUBY_VERSION >= "2.5" ? "~> 5.1.2" : "~> 4.1"
gem "activesupport", "< 7.1.0"
gem "cucumber", "~> 9.0"
gem "httpclient"
gem "jekyll_test_plugin"
gem "jekyll_test_plugin_malicious"
gem "memory_profiler"
# Runtime dependency of gem `httpclient`. _Needed only in Ruby 3.4+_.
# Remove once gem `httpclient` ships with `mutex_m` listed as a dependency in its gemspec.
gem "mutex_m", "~> 0.3" if RUBY_VERSION >= "3.4"
gem "nokogiri", "~> 1.7"
gem "rspec"
gem "rspec-mocks"
gem "rubocop", "~> 1.0"
gem "rubocop", "~> 1.57.2"
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
#
@@ -41,7 +54,7 @@ group :test_legacy do
gem "minitest"
gem "minitest-profile"
gem "minitest-reporters"
gem "shoulda"
gem "shoulda-context"
gem "simplecov"
end
@@ -66,9 +79,9 @@ 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 "tomlrb"
platforms :ruby, :mswin, :mingw, :x64_mingw do
gem "classifier-reborn", "~> 2.2"
@@ -79,13 +92,25 @@ group :jekyll_optional_dependencies do
# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library
platforms :jruby, :mswin, :mingw, :x64_mingw do
gem "tzinfo", "~> 1.2"
gem "tzinfo", ENV["TZINFO_VERSION"] if ENV["TZINFO_VERSION"]
gem "tzinfo-data"
end
end
#
group :rdoc, :optional => true do
# Psych 5 has stopped bundling `libyaml` and expects it to be installed on the host system prior
# to being invoked.
# Since we don't have a direct dependency on the Psych gem (it gets included in the gem bundle as
# a dependency of the `rdoc` gem), lock psych gem to v4.x instead of installing `libyaml` in our
# development / CI environment.
gem "psych", "~> 4.0"
gem "rdoc", "~> 6.0"
end
#
group :site do
gem "html-proofer", "~> 3.4" if ENV["PROOF"]

View File

@@ -1,6 +1,486 @@
## HEAD
* Update default.html (#8305)
### Bug Fixes
* Avoid caching resource when called via `include_relative` tag (#9784)
* Fix logs containing IPv6 URLs (#9813)
* Do not treat colons in `url_placeholders` as URI delimiters (#9850)
* Fix servlet do_GET header logic (#9867)
* Add logger to Gemfile for Ruby 4.0 (#9920)
### Documentation
* Improve documentation on collections in step-by-step walkthrough (#9803)
* Add `https://form.taxi` as a third-party resource for forms (#9802)
* Add Supranode to third-party deployment guide (#9786)
* Document the need for a `Gemfile` in deployment step of step-by-step walkthrough (#9805)
* Add Azion to the 3rd party deployment docs (#9811)
* Add ruby-erb prerequisite for Arch Linux installations (#9832)
* Add jekyllup.com to themes documentation (#9882)
* docs: Update contributor badge in README to include avatar height and limit parameters (#9912)
* Update WDM (0.1.1 → 0.2.0) in the Windows docs (#9897)
* Bump supported versions (#9923)
* Add GitCMS to resources docs (#9960)
### Development Fixes
* Improve readability of `post_url` tag (#9829)
* Fix flaky test that depends on current minute (#9889)
* build: fix broken CI on newer rubies (#9954)
### Minor Enhancements
* feat: Allowing post_url tag to receive liquid variables (#9776)
* Add .ruby-lsp to default excludes (#9914)
* Allow configuring future metadata for individual collections (#9925)
## 4.4.1 / 2025-01-29
### Bug Fixes
* Restore globbed path behavior in front matter defaults (#9762)
## 4.4.0 / 2025-01-27
### Minor Enhancements
* Allow marking specific highlighted lines via Liquid (#9138)
* Add gem `csv` to runtime dependency list (#9522)
* Bump the minimum ruby version to 2.7 (#9525)
* Acknowledge `livereload_port` from site config too (#9606)
* Add gem `base64` as runtime dependency (#9740)
* Add gem `json` as runtime_dependency (#9671)
* Remove unnecessary constraint on gem `mercenary` (#9758)
### Bug Fixes
* Optimize default front matter using `File.fnmatch?` (#9185)
* Remove totals in profile table properly (#9186)
* Optimize `Site#each_site_file` (#9187)
* Rename sass partial created for new blank site (#9257)
* Fix `jekyll serve --detach` with jekyll-sass-converter 3.x (#9304)
* Handle TypeError from `where` filter gracefully (#9292)
* Add support for upcoming logger 1.4.3 (#9392)
* Fix typo in devcontainer.json (#9364)
* Correct rubocop lint errors (#9600)
* Fix inexistent layout warning for the default 404 page (#9589)
* Relax version constraint on `wdm` in new Gemfile (#9662)
* Fix `--livereload-ignore` option (#9570)
* Render theme-gem root only in development (#9680)
### Development Fixes
* Cleanup highlight tag (#9177)
* Run tests in utc (#9168)
* Lock Ruby in CI to v3.1.2 and bump JRuby to v9.4.0.0 (#9196)
* Update sass related tests for jekyll-sass-converter 3.x (#9223)
* Split `test/test_tags.rb` into multiple files (#9230)
* test: use hash explicitly for Struct initializer for ruby 3.2 (#9237)
* script/default-site: accept flags for `jekyll new` (#9259)
* Bump check-spelling/check-spelling from 0.0.20 to 0.0.21 (#9205)
* Use check-spelling/check-spelling@v0.0.21 (#9199)
* Bump RuboCop to v1.45.x (#9305)
* Bump Rubocop to version 1.48.x (#9326)
* Bump versions of ruby &amp; nodejs in devcontainer (#9360)
* Bump rubocop version to 1.52.x (#9361)
* Upgrade RuboCop to 1.54 (#9401)
* Add CodeQL workflow (#9397)
* Bump actions/checkout from 3 to 4 (#9442)
* Test suite uses shoulda-context only. (#9441)
* Keep activesupport at version 7.0.x (#9469)
* Bump Rubocop to 1.56.4 (#9459)
* Configure dependabot to handle rubygems dependencies (#9445)
* Update rubocop gem (#9476)
* Fix Performance/StringIdentifierArgument violation in site.rb and allow activesupport 6 for windows tests (#9512)
* Add a few more emeritus team members (#9535)
* Make custom cop inherit `RuboCop::Cop::Base` (#9597)
* CI: Use JRuby 9.4.8.0 (#9654)
* Stop testing with Cucumber on JRuby (#9661)
* Windows CI on GitHub Actions (#9659)
* Run GitHub Actions only if needed (#9664)
* Format `.rubocop.yml` via a rake task (#9687)
* Configure some new cops (#9688)
* Fix expected markup per WAI-ARIA requirements (#9737)
* Add an optional `:rdoc` group of gems (#9742)
* Test `inspect` filter with custom object (#9743)
* Bump cucumber to v9 (#9747)
* Add Ruby 3.4 to CI matrix (#9740)
* Remove unnecessary runtime dependency (#9753)
* Bump `check-spelling/check-spelling` action (#9756)
### Documentation
* Fix Nested tree navigation with recursion example (#9174)
* Fix typo on website (#9203)
* Publish post on major release of sass-converter (#9225)
* Update Jekyll on macOS (macos.md) and current ruby version to 3.1.3 in ruby.yml (#9195)
* Add release post for v4.3.2 (#9263)
* Grammatical reordering in 3-to-4 upgrading docs (#9245)
* fixed grammatical mistake on &#34;showcase&#34; page (#9264)
* Mark `highlight` `mark_lines` feature as 4.4 in docs (#9184)
* Add v3.9.3 release history &amp; post to `master` branch (#9284)
* Update S3 deployment to remove s3_website (#9221)
* Document Exclude behavior, Include overrides and the default exclusion list (#9376)
* Update macos.md, remove Catalina (macOS 10.15) (#9405)
* Update macos.md, add support for Ventura (#9406)
* Typo fix - update to hooks and 3rd party deployment and one other article (#9411)
* Update 07-assets.md (#9393)
* Mention the front matter requirement in pages.md (#9423)
* Point to the Rouge GitHub repo rather than broken website (#9362)
* Add new theme directory to themes resources (#9356)
* Adds Kinsta to 3rd party deployments (#9331)
* Update Fedora prerequisites to include g++ (#9290)
* Update convert-site-to-jekyll.md (#9348)
* Update github-actions documentation (#9426)
* Update resources.md (#9449)
* Add GitHub Pages helpful notes (#9235)
* Clarify which version of Jekyll needs &#39;jekyll-paginate&#39; (#9477)
* chore: update showcases (#9473)
* Add FreeBSD installation instructions (#9481)
* Fix broken link for the security team page (#9497)
* Fix broken links for several Jekyll integrations (#9496)
* Add release post for v4.3.3 (#9511)
* Add docs version badge to page_excerpts feature (#9520)
* Improve accessibility of the docs (#9338)
* Fix gem quote consistency on docs (#9517)
* Make site search work again (#9530)
* Jekyll docs template typo - All pages show &#34;Deployment&#34; (#9548)
* Fixed: Wrong navigation style on the right side of news and docs pages (#9586)
* Add redirect for step-by-step tutorial (#9593)
* Add Jekyll 3.10.0 release post &amp; history (#9625)
* Fix minor docs error (#9641)
* Update windows.md (#9644)
* Document keys of global variable `{{ jekyll }}` (#9653)
* Fix incorrect and inconsistent variables in the permalinks page (#9591)
* Fix lapses in documentation of page variables (#9667)
* Add note about VSCode warning for SCSS files (#9609)
* docs: Fix incorrect parentheses (#9629)
* docs: Fix of a bug in the pagination section (#8890)
* Update current Ruby version renders and macOS docs (#9614)
* Improve docs around using GitHub Actions to build and deploy Jekyll sites (#9682)
* Fix grammar in the description of `page.excerpt` variable (#9689)
* Render HTML tables at `/docs/permalinks/` using a data file (#9666)
* Fix HTML attribute separation whitespace placement in the Navigation include code of Assets step of the Step by Step Tutorial (#9695)
* Fix missing glob matching pattern support description in the documentation of the `include` and `exclude` configuration options (#9697)
* Fix missing `url` configuration option documentation (#9699)
* Link to GitHub Pages Dependency versions page instead of explicitly specifying Jekyll version (#9715)
* Fix broken link on third-party.md (#9704)
* Fix: remove inaccessible links and their descriptions (#9745)
* Add release post for v4.4.0 (#9759)
### Site Enhancements
* Extract markup for `Improve this page` into an inclusion (#9675)
## 4.3.4 / 2024-09-16
### Bug Fixes
* Backport #9662 for v4.3.x: Relax version constraint on wdm in new Gemfile (#9683)
* Backport #9680 for v4.3.x: Render theme-gem root only in development (#9684)
### Development Fixes
* Sync workflows with counterparts on `master` (#9681)
## 4.3.3 / 2023-12-27
### Bug Fixes
* Backport #9392 for v4.3.x: Fix backward compatibility issues in the Logger (#9510)
### Development Fixes
* Backport #9237 for v4.3.x: Use Hash explicitly for Struct initializer (#9285)
## 3.10.0 / 2024-06-23
### Minor Enhancements
* Backport add-csv-dependency from #9522 to Jekyll 3 (#9616)
* 3.10-stable: Add webrick as a dependency (#9620)
## 3.9.5 / 2024-02-12
### Minor Enhancements
* 3.9-stable: allow Pages to be Excerpted (#9550)
## 3.9.4 / 2023-12-28
### Bug Fixes
* Backport #9392 for v3.9.x: Add support for Ruby 3.3 Logger (#9513)
## 3.9.3 / 2023-01-29
### Bug Fixes
* 3.9.x: Support i18n 1.x (#9269)
* Backport #8880 for v3.9.x: Support both tzinfo v1 and v2 along with non-half hour offsets (#9280)
### Development Fixes
* v3.9.x: test under Ruby 3.2 #9272)
* v3.9.x: fix rdiscount test (#9277)
## 4.3.2 / 2023-01-20
### Bug Fixes
* Backport #9257 for v4.3.x: Rename sass partial created for new blank site (#9262)
* Backport #9187 for v4.3.x: Optimize `Site#each_site_file` (#9256)
* Backport #9186 for v4.3.x: Remove totals in profile table properly (#9255)
### Development Fixes
* Backport #9223 for 4.3.x: Update sass related tests for jekyll-sass-converter 3.x (#9254)
## 4.3.1 / 2022-10-26
### Bug Fixes
* Respect user-defined name attribute in documents (#9167)
* Revert &#34;Incrementally rebuild when a data file is changed&#34; (#9170)
### Documentation
* Release post for v4.3.1 (#9171)
## 4.3.0 / 2022-10-20
### Minor Enhancements
* Add webrick as a dependency (#8524)
* 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 along with 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)
* Introduce `theme` drop to expose theme-gem details (#9129)
* Relax version constraint to allow Rouge 4.x (#9134)
* Incrementally rebuild when a data file is changed (#8771)
* Support jekyll-sass-converter 3.x (#9132)
### Bug Fixes
* 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)
* Ensure theme config is a `Jekyll::Configuration` object (#8988)
* Remove misleading totals row from `--profile` table (#9039)
* Unlock Psych dependency (#9135)
* Fix false positive conflicts for static files in a collection (#9141)
### 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)
* Bump check-spelling/check-spelling from 0.0.18 to 0.0.19 (#8740)
* 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)
* Remove git.io shortlinks from repo (#9045)
* Bump rubocop to 1.32 (#9093)
* Bump RuboCop to `1.36.x` (#9125)
* Use check-spelling/check-spelling@v0.0.20 (#9111)
* Disable pending cops when running rubocop (#9136)
* Relax RDoc version dependency (#9142)
### 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 CI/CD 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 README 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)
* Add clarity to docs on permalinks placeholders and built-ins (#8995)
* Remove Ionic Framework site from showcase (#9057)
* Windows: describe which option to choose (#9049)
* Improve links (http -&gt; https) (#9064)
* Update ruby version for macos guide (#9086)
* Update posts.md (#9151)
* Release post for v4.3.0 (#9157)
### 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
@@ -21,83 +501,23 @@
* 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)
* Docs: Use data file(s) to render table(s) at https://jekyllrb.com/docs/configuration/options/ (#8380)
* 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)
* Remove `NOKOGIRI_USE_SYSTEM_LIBRARIES` from Travis CI docs (#8409)
* Add links to all Jekyll themes on GitHub tagged with #jekyll-theme (#8447)
* docs: init project (#8450)
* docs: installation: fedora: add additional dependencies (#8456)
* 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)
### Development Fixes
### Site Enhancements
* 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)
* Implement custom delegators for drop methods (#8183)
* 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)
* Reduce allocations from rendering item as liquid (#8406)
* Test that Liquid expressions are not deeply evaled (#8292)
* Test rendering arbitrary Liquid variables by default (#7414)
### Bug Fixes
* Replace nested conditional with guard clauses (#8294)
* fix: security bump (#8349)
* Fix path matching regex in post_url Liquid tag (#8375)
* 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)
* Handle nil argument to Jekyll.sanitized_path (#8415)
* Compute relative_path of pages using PathManager (#8408)
* Enable `Performance/ChainArrayAllocation` cop (#8404)
* Utilize flexibility of Site#in_dest_dir (#8403)
* 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)
* Enable Lint/NoReturnInBeginEndBlocks Cop (#8457)
* Memoize destination of pages, documents and staticfiles (#8458)
* Generate items from `site.include` list only once (#8463)
* Allow triggering `:post_convert` events atomically (#8465)
### Minor Enhancements
* Warn on command-line with permalink conflict (#8342)
* Supress warning issued for redirect pages (#8347)
* Add post_convert hook to modify HTML content before layout (#8368)
* Cache Jekyll.sanitized_path (#8424)
* Memoize array of drop getter method names (#8421)
* Enhance detection of conflicting destination URLs (#8459)
* Debug reading Page and Layout objects (#8100)
* Don&#39;t reset site.url to localhost:4000 by default (#7253)
* Fix rendering of *showcase* images (#8504)
## 4.1.1 / 2020-06-24
* Fix grammar in documentation section (#8265)
### Development Fixes
* Bump RuboCop to v0.85.x (#8223)
* Expect drive letter only on vanilla windows (#8227)
### Bug Fixes
* Disable page excerpts by default (#8222)
@@ -114,12 +534,18 @@
* 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
@@ -235,7 +661,7 @@
* 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)
* Add GitLab Pages to 3rd party list (#8191)
* docs: add 21yunbox for deployment (#8193)
* Improve documentation on tags and categories (#8196)
@@ -282,6 +708,25 @@
* 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
@@ -545,7 +990,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)
@@ -560,7 +1005,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)
@@ -711,7 +1156,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)
@@ -867,7 +1312,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)
@@ -983,7 +1428,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)
@@ -1007,7 +1452,7 @@
* make flakey test more robust (#6277)
* Add a quick test for DataReader (#6284)
* script/backport-pr: commit message no longer includes the `#` (#6289)
* Add Add CODEOWNERS file to help automate reviews. (#6320)
* Add CODEOWNERS file to help automate reviews. (#6320)
* Fix builds on codeclimate (#6333)
* Bump rubies on Travis (#6366)
@@ -1031,7 +1476,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)
@@ -1501,7 +1946,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)
@@ -1527,7 +1972,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)
@@ -1576,7 +2021,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)
@@ -1674,7 +2119,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)
@@ -1682,10 +2127,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)
@@ -1837,9 +2282,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)
@@ -2065,7 +2510,7 @@
* Fixed an unclear code comment in site template SCSS (#3837)
* Fix reading of binary metadata file (#3845)
* Remove var collision with site template header menu iteration variable (#3838)
* Change non-existent `hl_linenos` to `hl_lines` to allow passthrough in safe mode (#3787)
* Change nonexistent `hl_linenos` to `hl_lines` to allow passthrough in safe mode (#3787)
* Add missing flag to disable the watcher (#3820)
* Update CI guide to include more direct explanations of the flow (#3891)
* Set `future` to `false` in the default config (#3892)
@@ -2172,7 +2617,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)
@@ -2374,7 +2819,7 @@
* Document the `name` variable for collection permalinks (#2829)
* Adds info about installing jekyll in current dir (#2839)
* Remove deprecated `jekyll-projectlist` plugin from list of third-party plugins (#2742)
* Remove tag plugins that are built in to Jekyll (#2751)
* Remove tag plugins that are built into Jekyll (#2751)
* Add `markdown-writer` package for Atom Editor to list of third-party plugins (#2763)
* Fix typo in site documentation for collections (#2764)
* Fix minor typo on plugins docs page (#2765)
@@ -3167,7 +3612,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)
@@ -3320,7 +3765,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,12 @@
# [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]
[![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]
[![Build Status](https://github.com/jekyll/jekyll/workflows/Continuous%20Integration/badge.svg)][ci-workflow]
[![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 +15,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,11 +23,11 @@ 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
* [Migrate](http://import.jekyllrb.com/docs/home/) from your previous system
* [Migrate](https://import.jekyllrb.com/docs/home/) from your previous system
* Learn how [Front Matter](https://jekyllrb.com/docs/front-matter/) works
* Put information on your site with [Variables](https://jekyllrb.com/docs/variables/)
* Customize the [Permalinks](https://jekyllrb.com/docs/permalinks/) your posts are generated with
@@ -49,7 +42,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 +55,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&&avatarHeight=24&limit=100&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

@@ -8,6 +8,7 @@ require "yaml"
$LOAD_PATH.unshift File.expand_path("lib", __dir__)
require "jekyll/version"
require "bundler/gem_tasks"
Dir.glob("rake/**.rake").each { |f| import f }
@@ -42,11 +43,15 @@ def gem_file
end
def normalize_bullets(markdown)
markdown.gsub(%r!\n\s{2}\*{1}!, "\n-")
# Normalize both old-style indented bullets (" *") and
# release-please-style non-indented bullets ("*") to "-"
markdown.gsub(%r!\n\s{0,2}\*{1}!, "\n-")
end
def linkify_prs(markdown)
markdown.gsub(%r!(?<\!&)#(\d+)!) do |word|
# Match bare PR references like #1234 but skip those already linkified
# by release-please as [#1234](url)
markdown.gsub(%r{(?<!&)(?<!\[)#(\d+)}) do |word|
"[#{word}]({{ site.repository }}/issues/#{word.delete("#")})"
end
end
@@ -60,8 +65,10 @@ def liquid_escape(markdown)
end
def custom_release_header_anchors(markdown)
header_regexp = %r!^(\d{1,2})\.(\d{1,2})\.(\d{1,2}) \/ \d{4}-\d{2}-\d{2}!
section_regexp = %r!^### \w+ \w+$!
# Match old format: "X.Y.Z / YYYY-MM-DD"
# Match new release-please format: "[X.Y.Z](compare-url) (YYYY-MM-DD)"
header_regexp = %r!^(?:\[?)(\d{1,2})\.(\d{1,2})\.(\d{1,2})(?:\]\([^)]*\))? [\(/]\s?\d{4}-\d{2}-\d{2}\)?!
section_regexp = %r!^### \w[\w ]*$!
markdown.split(%r!^##\s!).map do |release_notes|
_, major, minor, patch = *release_notes.match(header_regexp)
release_notes
@@ -75,7 +82,8 @@ def slugify(header)
end
def remove_head_from_history(markdown)
index = markdown =~ %r!^##\s+\d+\.\d+\.\d+!
# Match both old format "## X.Y.Z" and release-please format "## [X.Y.Z]"
index = markdown =~ %r!^##\s+\[?\d+\.\d+\.\d+!
markdown[index..-1]
end

View File

@@ -1,39 +0,0 @@
version: "{build}"
clone_depth: 5
branches:
only:
- master
- themes
- /.*-stable/
build: off
environment:
BUNDLE_WITHOUT: "benchmark:development"
matrix:
- RUBY_FOLDER_VER: "26"
TEST_SUITE: "test"
- RUBY_FOLDER_VER: "26"
TEST_SUITE: "default-site"
- RUBY_FOLDER_VER: "26"
TEST_SUITE: "profile-docs"
- RUBY_FOLDER_VER: "26"
TEST_SUITE: "memprof"
- RUBY_FOLDER_VER: "26"
TEST_SUITE: "cucumber"
install:
- SET PATH=C:\Ruby%RUBY_FOLDER_VER%-x64\bin;%PATH%
- bundle install --retry 5 --jobs=%NUMBER_OF_PROCESSORS% --clean --path vendor\bundle
test_script:
- ruby --version
- gem --version
- bundler --version
- bash ./script/cibuild
cache:
# If one of the files after the right arrow changes, cache will be invalidated
- 'vendor\bundle -> appveyor.yml,Gemfile,jekyll.gemspec'

View File

@@ -34,7 +34,7 @@ puts " #{'where + first'.cyan} results in #{TEMPLATE_1.render(SITE.site_payload
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! Procceding to run benchmarks.'.green
puts 'Success! Proceeding to run benchmarks.'.green
puts ''
else
puts 'Something went wrong. Aborting.'.magenta

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

@@ -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

@@ -1,15 +1,17 @@
---
version: 4.1.1
version: 4.4.1
name: Jekyll • Simple, blog-aware, static sites
description: Transform your plain text into static websites and blogs
url: https://jekyllrb.com
repository: https://github.com/jekyll/jekyll
site_branch: master
timezone: America/Los_Angeles
twitter:
username: jekyllrb
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/"
@@ -59,8 +61,5 @@ sass:
style: compressed
strict_front_matter: true
exclude:
- ".gitignore"
- ".jekyll-cache"
- CNAME
- icomoon-selection.json
- readme.md

View File

@@ -20,7 +20,7 @@
- name: Layouts
description: >-
Specify layout directory instead of using <code>_layouts/</code> automatically.
option: "layout_dir: DIR"
option: "layouts_dir: DIR"
flag: --layouts DIR
@@ -55,7 +55,7 @@
flag: --lsi
- name: Limit Posts
- name: Limit posts
description: Limit the number of posts to parse and publish.
option: "limit_posts: NUM"
flag: --limit_posts NUM
@@ -69,40 +69,70 @@
- name: Verbose output
description: Print verbose output.
option: "verbose: BOOL"
flag: -V, --verbose
- name: Silence Output
- 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 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.
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
- 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: Web Domain URL
option: "url: SCHEME://HOST[:PORT]"
description: >-
The canonical URL of the root of your production deploy, composed of the following components:<br>
&nbsp; &nbsp;• &nbsp; Protocol scheme (e.g. <code>http://</code>)<br>
&nbsp; &nbsp;• &nbsp; Hostname or IP address (e.g. <code>example.org</code>)<br>
&nbsp; &nbsp;• &nbsp; <em>(Optional)</em> The port number of the server, prefixed with a colon
(e.g. <code>:8080</code>)<br>
The value of this configuration option should NOT have a trailing slash. It will be appended
with the <code>baseurl</code> to form the full URL to your Jekyll site when using the
<a href="/docs/liquid/filters/">Liquid filter <code>absolute_url</code></a>.<br>
<strong>NOTE:</strong> This setting is automatically configured to the <strong>localhost URL</strong>
when the <code>jekyll serve</code> command is invoked.
- name: Base URL
description: Serve the website from the given base URL.
option: "baseurl: URL"
flag: -b, --baseurl URL
description: >-
Serve the website from the given base URL (the path between web-server or domain root and your landing
page).
option: "baseurl: /PATH/TO/SITE"
flag: -b, --baseurl /PATH/TO/SITE
- name: Trace

View File

@@ -1,10 +1,10 @@
- name: Site Source
- name: Site source
description: Change the directory where Jekyll will read files
option: "source: DIR"
flag: -s, --source DIR
- name: Site Destination
- name: Site destination
description: Change the directory where Jekyll will write files
option: "destination: DIR"
flag: -d, --destination DIR
@@ -17,7 +17,7 @@
flag: --safe
- name: Disable Disk Cache
- 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
@@ -40,6 +40,30 @@
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.
<br />
This configuration option supports Ruby's <a href="https://ruby-doc.org/3.3.5/File.html#method-c-fnmatch">
<code>File.fnmatch</code> filename globbing patterns</a> to match multiple entries to exclude. For example,
you can exclude multiple README.md files in your source tree from being included in your site by specifying the
following <code>exclude</code> option entries: <code>["README.md", "**/README.md"]</code>.
<br />
In Jekyll 3, the <code>exclude</code> configuration option replaces the default exclusion list.
<br />
In Jekyll 4, user-provided entries get added to the default exclusion list instead and the <code>include</code>
option can be used to override the default exclusion list entries.
<br />
The default exclusions are found in <code>_config.yml</code> as created by <code>jekyll new</code>:
<ul>
<li><code>.sass-cache/</code></li>
<li><code>.jekyll-cache/</code></li>
<li><code>gemfiles/</code></li>
<li><code>Gemfile</code></li>
<li><code>Gemfile.lock</code></li>
<li><code>node_modules/</code></li>
<li><code>vendor/bundle/</code></li>
<li><code>vendor/cache/</code></li>
<li><code>vendor/gems/</code></li>
<li><code>vendor/ruby/</code></li>
</ul>
option: "exclude: [DIR, FILE, ...]"
@@ -47,6 +71,13 @@
description: >-
Force inclusion of directories and/or files in the conversion. <code>.htaccess</code> is a good example since
dotfiles are excluded by default.
<br>
This configuration option supports Ruby's <a href="https://ruby-doc.org/3.3.5/File.html#method-c-fnmatch-3F">
<code>File.fnmatch</code> filename globbing patterns</a> to match multiple entries to include, refer the
<code>exclude</code> configuration option for more information.
<br>
With Jekyll 4, the <code>include</code> configuration option entries override the <code>exclude</code> option
entries.
option: "include: [DIR, FILE, ...]"
@@ -57,7 +88,7 @@
option: "keep_files: [DIR, FILE, ...]"
- name: Time Zone
- 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

View File

@@ -1,28 +1,34 @@
- name: Local Server Port
description: Listen on the given port.
- 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.
- name: Local server hostname
description: Listen at the given hostname. The default is `localhost`.
option: "host: HOSTNAME"
flag: "-H, --host HOSTNAME"
- name: Live Reload
- 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.
- name: Live reload ignore
description: >-
File glob patterns for LiveReload to ignore.<br /><br />
Ensure that patterns are quoted when passed via the command-line to deter your shell from
expanding them.<br /><br /><strong>Note:</strong> The given glob patterns are matched against
the <code>relative_path</code> attribute of the processed resource. In the event Jekyll
reloads a <em>relative_path</em> matching the pattern in spite of being quoted, try listing
the pattern(s) under the config file option key.
option: "livereload_ignore: [ GLOB1,... ]"
flag: "--livereload-ignore GLOB1[,GLOB2,...]"
- name: Live Reload Min/Max Delay
- name: Live reload min/max delay
description: Minimum/Maximum delay before automatically reloading page.
options:
- "livereload_min_delay: SECONDS"
@@ -32,8 +38,11 @@
- "--livereload-max-delay SECONDS"
- name: Live Reload Port
description: Port for LiveReload to listen on.
- name: Live reload port
description: >-
Port for LiveReload to listen on.<br/><em>Ability to override via config file introduced in
<span class="version-badge">4.4.0</span></em>.
option: "livereload_port: PORT"
flag: "--livereload-port PORT"
@@ -55,17 +64,17 @@
flag: "--skip-initial-build"
- name: Show Directory Listing
- 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
- 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
- name: X.509 (SSL) certificate
description: "SSL Public certificate, stored or symlinked in the site source."
flag: "--ssl-cert"

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'

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
@@ -16,6 +16,13 @@ global:
description: >-
Layout specific information + the <a href="/docs/front-matter/">front matter</a>.
Custom variables set via front matter in layouts will be available here.
- name: jekyll
description: >-
Jekyll-centric information will be available here. See below for details.
- name: theme
description: >-
Theme-gem specific information as defined in the theme's gemspec. Useful for rendering
information in the theme demo's "About" page, for example. See below for details.
- name: content
description: >-
In layout files, the rendered content of the Post or Page being wrapped.
@@ -76,7 +83,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>.
@@ -91,38 +98,44 @@ site:
page:
- name: page.content
description: >-
The content of the Page, rendered or un-rendered depending upon
what Liquid is being processed and what <code>page</code> is.
The content of the Page, rendered or un-rendered depending upon what Liquid is being processed
and what <code>page</code> is.
- name: page.title
description: >-
The title of the Page.
The title of the Page or Document resource.
- name: page.excerpt
description: >-
The un-rendered excerpt of a document.
The un-rendered excerpt of a Page or Document. Can be overridden in the
<a href="/docs/front-matter/">front matter</a>. It can either be disabled atomically for
certain page or document by setting an empty string to an <code>excerpt_separator</code> key in
the front matter of desired resource or disabled site-wide by setting the same as a top-level
key in the config file.
- name: page.url
description: >-
The URL of the Post without the domain, but with a leading slash, e.g.
<code>/2008/12/14/my-post.html</code>
- name: page.date
description: >-
The Date assigned to the Post. This can be overridden in a Posts front matter by specifying
The Date assigned to the Post. This can be overridden in a Post's front matter by specifying
a new date/time in the format <code>YYYY-MM-DD HH:MM:SS</code> (assuming UTC), or
<code>YYYY-MM-DD HH:MM:SS +/-TTTT</code> (to specify a time zone using an offset from UTC.
e.g. <code>2008-12-14 10:30:00 +0900</code>).
e.g. <code>2008-12-14 10:30:00 +0900</code>). Not applicable to Pages.
- name: page.id
description: >-
An identifier unique to a document in a Collection or a Post (useful in RSS feeds). e.g.
<code>/2008/12/14/my-post</code><code>/my-collection/my-document</code>
<code>/2008/12/14/my-post</code><code>/my-collection/my-document</code>. Not applicable to
Pages.
- name: page.categories
description: >-
The list of categories to which this post belongs. Categories are derived from the directory
structure above the <code>_posts</code> directory. For example, a post at
<code>/work/code/_posts/2008-12-24-closures.md</code> would have this field set to
<code>['work', 'code']</code>. These can also be specified in the
<a href="/docs/front-matter/">front matter</a>.
<a href="/docs/front-matter/">front matter</a>. Note: Path-based categories may not work for
documents in user-defined collections.
- name: page.collection
description: >-
The label of the collection to which this document belongs. e.g. <code>posts</code> for a post, or
The label of the collection to which a Document belongs. e.g. <code>posts</code> for a post, or
<code>puppies</code> for a document at path <code>_puppies/rover.md</code>. If not part of a
collection, an empty string is returned.
- name: page.tags
@@ -131,16 +144,29 @@ page:
<a href="/docs/front-matter/">front matter</a>.
- name: page.dir
description: >-
The path between the source directory and the file of the post or page, e.g.
<code>/pages/</code>.
This can be overridden by <code>permalink</code> in the <a href="/docs/front-matter/">front matter</a>.
The path between the source directory and the file of a page, e.g. <code>/pages/</code> when the page
is at path <code>pages/about.md</code> relative to the source directory. This is derived from the
<code>url</code> attribute of the page and can therefore be overridden via the <code>permalink</code>
key in the <a href="/docs/front-matter/">front matter</a>. NOTE: This variable is not applicable to
posts and documents in user-defined collections. Use the <code>categories</code> variable to get similar
info for posts.
- name: page.name
description: >-
The filename of the post or page, e.g. <code>about.md</code>
- name: page.path
description: >-
The path to the raw post or page. Example usage: Linking back to the page or posts source
on GitHub. This can be overridden in the <a href="/docs/front-matter/">front matter</a>.
The path to the raw post or page, relative to the source directory. Example usage: Using a combination
of the repository's blob URL and this page variable to get the full URL to the file in the repository.
This can be overridden in the <a href="/docs/front-matter/">front matter</a>.
- name: page.slug
description: >-
The filename of a Document resource without its extension (or date prefixes for a post). For example,
slug for a post at URL <code>/2017/02/22/my-new-post.html</code>, would be <code>my-new-post</code>.
Can be overridden in the <a href="/docs/front-matter/">front matter</a>.
- name: page.ext
description: >-
The file extension of a Document resource. For example, <code>.html</code>. Can be overridden in the
<a href="/docs/front-matter/">front matter</a>.
- name: page.next
description: >-
The next post relative to the position of the current post in <code>site.posts</code>.
@@ -150,6 +176,28 @@ page:
The previous post relative to the position of the current post in <code>site.posts</code>.
Returns <code>nil</code> for the first entry.
jekyll:
- name: jekyll.version
description: Version of Jekyll used to build the site.
- name: jekyll.environment
description: Value assigned to environment variable <code>JEKYLL_ENV</code> during a build.
theme:
- name: theme.root
description: >-
Absolute path to the theme-gem. Rendered only when environment variable <code>JEKYLL_ENV</code>
is set to <code>development</code>.
- name: theme.authors
description: Comma separated string composed of the authors of the theme-gem.
- name: theme.description
description: Description or summary of the theme-gem as specified in the theme gemspec.
- name: theme.version
description: The version string of current theme.
- name: theme.dependencies
description: List of runtime dependencies of the theme.
- name: theme.metadata
description: A mapping of key-value pairs as defined in the theme gemspec.
paginator:
- name: paginator.page
description: The number of the current page

139
docs/_data/permalinks.yml Normal file
View File

@@ -0,0 +1,139 @@
placeholders:
- name: year
desc: >-
Year from the post's filename with four digits. May be overridden via the document's
<code>date</code> front matter.
- name: short_year
desc: >-
Year from the post's filename without the century. (00..99) May be overridden via the
document's <code>date</code> front matter.
- name: month
desc: >-
Month from the post's filename. (01..12) May be overridden via the document's
<code>date</code> front matter.
- name: i_month
desc: >-
Month without leading zeros from the post's filename. May be overridden via the document's
<code>date</code> front matter.
- name: short_month
desc: >-
Three-letter month abbreviation, e.g. "Jan".
- name: long_month
intro_ver: "4.0"
desc: >-
Full month name, e.g. "January".
- name: day
desc: >-
Day of the month from the post's filename. (01..31) May be overridden via the document's
<code>date</code> front matter.
- name: i_day
desc: >-
Day of the month without leading zeros from the post's filename. May be overridden via the
document's <code>date</code> front matter.
- name: y_day
desc: >-
Ordinal day of the year from the post's filename, with leading zeros. (001..366)
- name: w_year
intro_ver: "4.0"
desc: >-
Week year which may differ from the month year for up to three days at the start of January
and end of December
- name: week
intro_ver: "4.0"
desc: >-
Week number of the current year, starting with the first week having a majority of its days
in January. (01..53)
- name: w_day
intro_ver: "4.0"
desc: >-
Day of the week, starting with Monday. (1..7)
- name: short_day
intro_ver: "4.0"
desc: >-
Three-letter weekday abbreviation, e.g. "Sun".
- name: long_day
intro_ver: "4.0"
desc: >-
Weekday name, e.g. "Sunday".
- name: hour
desc: >-
Hour of the day, 24-hour clock, zero-padded from the post's <code>date</code> front matter. (00..23)
- name: minute
desc: >-
Minute of the hour from the post's <code>date</code> front matter. (00..59)
- name: second
desc: >-
Second of the minute from the post's <code>date</code> front matter. (00..59)
- name: title
desc: >-
Title from the document's filename. May be overridden via the document's
<code>slug</code> front matter. Preserves case from the source.
- name: slug
desc: >-
Slugified title from the document's filename (any character except numbers and letters is
replaced as hyphen). May be overridden via the document's <code>slug</code> front matter.
- name: categories
desc: >-
The specified categories for this post. If a post has multiple categories, Jekyll will create
a hierarchy (e.g. <code>/category1/category2</code>). Also Jekyll automatically parses out
double slashes in the URLs, so if no categories are present, it will ignore this.
- name: slugified_categories
intro_ver: "4.1"
desc: >-
The specified categories for this post but <em>slugified</em>. If a category is a composite of
multiple words, Jekyll will downcase all alphabets and replace any non-alphanumeric character
with a hyphen. (e.g. <code>"Work 2 Progress"</code> will be converted into
<code>"work-2-progress"</code>). If a post has multiple categories, Jekyll will create
a hierarchy (e.g. <code>/work-2-progress/category2</code>). Also Jekyll automatically parses
out double slashes in the URLs, so if no categories are present, it will ignore this.
- name: output_ext
desc: >-
Extension of the output file. (Included by default and usually unnecessary.)
builtin_formats:
- name: date
format: "/:categories/:year/:month/:day/:title:output_ext"
- name: pretty
format: "/:categories/:year/:month/:day/:title/"
- name: ordinal
format: "/:categories/:year/:y_day/:title:output_ext"
- name: weekdate
intro_ver: "4.0"
format: "/:categories/:year/W:week/:short_day/:title:output_ext"
note: "<code>W</code> will be prefixed to the value of <code>:week</code>"
- name: none
format: "/:categories/:title:output_ext"
types:
documents:
- name: collection
desc: >-
Label of the containing collection.
- name: path
desc: >-
Path to the document relative to the collection's directory, including base filename of the document.
However, does not include the file extension.
- name: name
desc: >-
The document's base filename but slugified: downcased and every sequence of non-alphanumeric character
(including spaces) replaced by a hyphen.
- name: title
desc: >-
Takes on the value of front matter key <code>slug</code> if defined for the document. Otherwise takes
on the string value generated from the document's base filename by piping through the <code>slugify</code>
filter method with <code>pretty</code> option.<br/>
Regardless of the value taken, the case of the alphabets are preserved instead of being replaced with
lowercase counterparts.
- name: output_ext
desc: >-
Extension of the output file. (Included by default and usually unnecessary.)
pages:
- name: path
desc: >-
Path between the source directory and the base filename of the page.
- name: basename
desc: >-
The page's base filename.
- name: output_ext
desc: >-
Extension of the output file. (Included by default and usually unnecessary.)

View File

@@ -1,3 +1,3 @@
min_version: 2.5.0
current_version: 2.7.2
current_version_output: ruby 2.7.2p137 (2020-10-01 revision 5445e04352)
min_version: 2.7.0
current_version: 3.4.1
current_version_output: ruby 3.4.1 (2024-12-25 revision 48d4efcb85)

View File

@@ -1,241 +1,308 @@
- name: Tom Preston Werner Blog
url: http://tom.preston-werner.com/
url: https://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: Lightburn
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: 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: 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
url: https://www.siteleaf.com/
image: siteleaf.png
categories:
- software
- marketing-site
- name: CloudCannon
url: https://cloudcannon.com/
image: cloudcannon.png
categories:
- software
- marketing-site
- name: Vesterheim Norwegian-American Museum
url: https://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/
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://designsystem.digital.gov/
image: uswds.png
categories:
- government
- name: Grantmaker Search
url: https://www.grantmakers.io/
image: grantmakers.png
categories:
- marketing-site
- name: Rehan Butt
url: https://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: Matt Grey
url: https://himatt.com/
image: matt-grey.png
categories:
- personal
- portfolio
- name: Lattice
url: https://lattice.com/
image: lattice.png
categories:
- software
- marketing-site
- name: MailTape
url: https://www.mailta.pe/
image: mailtape.png
categories:
- other
- name: Digital Democracy
url: https://www.digital-democracy.org/
image: digital-democracy.png
categories:
- other
- name: HTML Reference
url: https://htmlreference.io/
image: htmlreference.png
categories:
- documentation
- name: CSS Reference
url: https://cssreference.io/
image: cssreference.png
categories:
- documentation
- name: Chain
url: https://www.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: Ruby on Rails
url: http://rubyonrails.org/
categories:
- marketing-site
- documentation
- name: White House Social and Behavioral Sciences Team
url: https://sbst.gov/
categories:
- government
- name: UN World Statistics
url: https://worldstatisticsday.org
categories:
- government
- name: Sketch
url: https://sketch.com/
categories:
- software
- marketing-site
- name: Netflix Devices
url: https://devices.netflix.com/en/
categories:
- marketing-site
- 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/
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: https://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: Spotify for Developers
url: https://developer.spotify.com
image: spotify-developers.png
categories:
- marketing-site
- documentation
- software
- name: Sketch
url: https://www.sketch.com/
image: sketch.png
categories:
- software
- marketing-site
- name: Ruby on Rails
url: https://rubyonrails.org/
image: ruby-on-rails.png
categories:
- marketing-site
- documentation

View File

@@ -79,6 +79,8 @@ 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
To enable Coffeescript in Jekyll 3.0 and up you must

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,8 +16,8 @@ collections:
- staff_members
```
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:
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:
@@ -124,6 +124,16 @@ You can link to the generated page using the `url` attribute:
```
{% endraw %}
## Future
You can configure a collection to show future items by setting the `future` metadata to `true` in the collection's configuration.
```yaml
collections:
staff_members:
future: true
```
## Permalinks
There are special [permalink variables for collections]({{ '/docs/permalinks/#collections' | relative_url }}) to

View File

@@ -10,13 +10,20 @@ As contributors and maintainers of this project, and in the interest of fosterin
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]({{ '/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 who are willing to point you in the right direction.

View File

@@ -14,5 +14,6 @@ executable in the terminal.
* [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

@@ -10,7 +10,7 @@ file or on the command-line.
<div class="note info">
<h5>Be aware of directory paths</h5>
<p>
Make directory path values in configuration keys like `plugins_dir` relative to the current working directory, not the site source.
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>

View File

@@ -30,7 +30,7 @@ defaults:
during automatic regeneration are not loaded until the next execution.
</p>
<p>
Note <a href="{{ '/docs/datafiles' | relative_url }}">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>

View File

@@ -23,8 +23,8 @@ 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:

View File

@@ -5,61 +5,64 @@ 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:
### Example Usage
```yaml
kramdown:
html_to_native: true
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).

View File

@@ -0,0 +1,18 @@
---
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.
{:.note .info}
If you see a warning in VSCode regarding `@import "main";`, you may ignore it as the same does not affect the functionality of the SCSS code in Jekyll. However, Jekyll 4 does not allow importing a `main` sass partial (`_sass/main.scss`) from a sass page of a same name, viz. `css/main.scss`.
<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

@@ -57,4 +57,4 @@ This entire guide is open-source. Go ahead and [edit it][jekyll-docs-ci-buddy] i
[jekyll-docs-ci-buddy]: https://github.com/jekyll/jekyll/edit/master/docs/_docs/continuous-integration/buddyworks.md
[jekyll-help]: https://jekyllrb.com/help/
[buddy-forum]: http://forum.buddy.works/
[buddy-forum]: https://forum.buddy.works/

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'
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,26 +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
Since v2, CircleCI is a Docker-based system. The example `circle.yml` below demonstrates how to
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
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:
@@ -105,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:
@@ -119,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

@@ -2,21 +2,35 @@
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.
When building a Jekyll site with GitHub Pages, Jekyll runs in an environment restricted for security
reasons, yet containing numerous [whitelisted plugins and themes][ghp-whitelist] to make it simpler
to get a site set up.
The only workaround to have control over the build environment and gemset yet use GitHub Pages to
host the site was previously by building elsewhere and pushing the built directory contents to the
`gh-pages` branch on your repository.
However, GitHub now provides you with the option to use their in-house CI/CD product named
*GitHub Actions* to *build and deploy (host)* your Jekyll site with complete control over the build
environment and gemset.
## 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 `4.0.0`, 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.
- **Jekyll version** --- Instead of using the classic GitHub Pages-provided version specified in
the [Dependency versions][ghp-whitelist] list, you can use any version of Jekyll you want.
For example `{{ site.version }}`, or point directly to the repository via the Gemfile.
- **Plugins** --- You can use any Jekyll plugins irrespective of them being whitelisted by GitHub,
including any `*.rb` files placed in the `_plugins` directory of your site.
- **Themes** --- While using a custom theme is possible without Actions, it is now possible to use
themes depending on features introduced in newer versions of Jekyll.
{: .note .info}
If you are migrating from the classic flow but want to keep using a GitHub-hosted theme, you may use
the [jekyll-remote-theme][remote-theme] plugin, add any required dependencies of your theme
(previously bundled by default) into your `_config.yml` and `Gemfile` and set the
`remote_theme: <owner>/<repo_name>` theme repository slug correctly in your `_config.yml`.
### Workflow Management
@@ -24,26 +38,16 @@ with GitHub Pages you can use GitHub Actions.
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.
- **Caching** --- The `ruby/setup-ruby` action makes it possible to cache installed gems
automatically instead of having to download the bundle on each build.
## 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
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 `master` branch in this page. Therefore, ensure that you
are working on the `master` 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`,
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
@@ -53,6 +57,7 @@ title: "Jekyll Actions Demo"
```
{% raw %}
```liquid
---
---
@@ -64,18 +69,18 @@ Welcome to My Home Page
- Original date - {{ date }}
- With timeago filter - {{ date | timeago }}
```
{% endraw %}
{% endraw %}
```ruby
# Gemfile
source 'https://rubygems.org'
gem 'jekyll', '~> 4.0'
gem "jekyll", "~> 4.2"
group :jekyll_plugins do
gem 'jekyll-timeago', '~> 0.13.1'
gem "jekyll-timeago", "~> 0.13.1"
end
```
@@ -92,122 +97,42 @@ 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). Here we shall employ
[Jekyll Actions][jekyll-actions] from the Marketplace for its simplicity.
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:
- master
jobs:
github-pages:
runs-on: ubuntu-16.04
steps:
- uses: actions/checkout@v2
- uses: helaili/jekyll-action@2.0.1
env:
JEKYLL_PAT: ${{ secrets.JEKYLL_PAT }}
```
{% endraw %}
The above workflow can be explained as the following:
- We trigger the build using **on.push** condition for `master` 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.
- We specify our selected **action** and **version number** using `helaili/jekyll-action@2.0.0`.
This handles the build and deploy.
- We set a reference to a secret **environment variable** for the action to use. The `JEKYLL_PAT`
is a *Personal Access Token* and is detailed in the next section.
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
The action needs permissions to push to your `gh-pages` branch. So you need to create a GitHub
**authentication token** on your GitHub profile, then set it as an environment variable in your
build using _Secrets_:
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 `JEKYLL_PAT` (*important*). Give it a value using the value copied
above.
1. Go to the **Settings** tab on your repository.
1. Click **Pages** under **Code and automation**.
2. Change **Source** under **Build and deployment** from **Deploy from a branch** to **GitHub Actions**.
2. Go to the **Actions** tab on your repository.
1. Start a **New workflow** and search for **Jekyll**.
2. Click **Configure** under the **Jekyll** workflow (not **GitHub Pages Jekyll** workflow).
3. Review the change and click **Commit changes**.
### Build and deploy
On pushing any local changes onto `master`, the action will be triggered and the build will
On pushing any local changes onto the default branch, 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.
- 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.
- 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.
If all goes well, all steps will be green and the built assets will be uploaded to GitHub Pages.
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**, go to the **Deployments** tab on your repository, and click on the deployed
site URL.
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.
When you need to make further **changes** to the site, commit to the default branch and push.
The workflow will build and deploy your site again.
## 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.
- [starter-workflows] is the official repository providing the workflow template used in this guide.
[ghp-whitelist]: https://pages.github.com/versions/
[remote-theme]: https://github.com/benbalter/jekyll-remote-theme
[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
[starter-workflows]: https://github.com/actions/starter-workflows/blob/main/pages/jekyll.yml

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

@@ -15,7 +15,7 @@ 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?
- Comment on some of the project's [open issues](https://github.com/jekyll/jekyll/issues). Have you experienced the same problem? Know a workaround? 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.

View File

@@ -7,7 +7,7 @@ In addition to the [built-in variables]({{'/docs/variables/' | relative_url }})
you can specify your own custom data that can be accessed via the [Liquid
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.
Jekyll supports loading data from [YAML](https://yaml.org), [JSON](https://www.json.org/json-en.html), [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.
This powerful feature allows you to avoid repetition in your templates and to
@@ -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
@@ -148,3 +148,30 @@ 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/' | 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

@@ -19,6 +19,7 @@ We have guides for the following providers:
* [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

View File

@@ -16,16 +16,14 @@ rsync in the [Digital Ocean tutorial](https://www.digitalocean.com/community/tut
## Amazon S3
If you want to host your site in Amazon S3, you can do so by
using the [s3_website](https://github.com/laurilehmijoki/s3_website)
application. It will push your site to Amazon S3 where it can be served like
any web server,
dynamically scaling to almost unlimited traffic. This approach has the
benefit of being about the cheapest hosting option available for
low-volume blogs as you only pay for what you use.
using the AWS cli client and pushing your rendered `_site` directory directly to
your S3 bucket.
`aws s3 sync _site s3://<YOUR DOMAIN>.com --size-only --storage-class REDUCED_REDUNDANCY`
## 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

View File

@@ -3,11 +3,6 @@ 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
@@ -15,10 +10,6 @@ The [AWS Amplify Console](https://console.amplify.aws) provides continuous deplo
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
[CloudCannon](https://cloudcannon.com) has everything you need to build, host
@@ -31,7 +22,7 @@ Sites on GitHub Pages are powered by Jekyll behind the scenes, so if youre lo
## 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.
[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/pages_from_scratch.html) and a fully customizable pipeline.
## KeyCDN
@@ -40,11 +31,11 @@ The [Jekyll hosting tutorial](https://www.keycdn.com/support/jekyll-hosting) pro
## Kickster
Use [Kickster](http://kickster.nielsenramon.com/) for automated deploys to GitHub Pages when using unsupported plugins on GitHub Pages.
Use [Kickster](https://kickster.nielsenramon.com/) for automated deploys to GitHub Pages when using unsupported plugins on GitHub Pages.
Kickster provides a basic Jekyll project setup packed with web best practises and useful optimization tools increasing your overall project quality. Kickster ships with automated and worry-free deployment scripts for GitHub Pages.
Kickster provides a basic Jekyll project setup packed with web best practices and useful optimization tools increasing your overall project quality. Kickster ships with automated and worry-free deployment scripts for GitHub Pages.
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).
Install the Kickster gem and you are good to go. More documentation can be 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
@@ -54,7 +45,11 @@ Read this [Jekyll step-by-step guide](https://www.netlify.com/blog/2020/04/02/a-
## Render
[Render](https://render.com) provides zero config continuous deployment for static sites. The service is free under 100GB monthly bandwith.
[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
@@ -66,6 +61,26 @@ Read this [Jekyll step-by-step guide](https://www.netlify.com/blog/2020/04/02/a-
## 21YunBox
[21YunBox](https://www.21yunbox.com) provides blazing fast Chinese CDN, Continuous Deployment, one click HTTPS and [much more](https://www.21yunbox.com/docs/v2/), providing developers a hassle-free solution to launch their web projects in China.
[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/v2/static.html#jekyll) to deploy your Jekyll site on 21YunBox.
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).
## Kinsta Application Hosting
[Kinsta Application Hosting](https://kinsta.com/application-hosting) is a Cloud Platform designed to help your company and dev teams ship web projects faster and more efficiently. You can host your apps, databases, and sites all in one place. Easily connect with GitHub and automate deployments and get 24/7 support for all your favorite languages and frameworks.
Read [this guide](https://kinsta.com/docs/jekyll-static-site-example/) to learn how to deploy Jekyll site on Kinsta.
## Supranode
[Supranode](https://supranode.com) offers customizable continuous deployment for static websites, featuring automatic HTTPS, a high-performance CDN, secret management, deployment previews, password protection, and more.
## Azion
[Azion](https://www.azion.com/en/) is an web platform that provides a wide range of services. It allows you to host static sites, including Jekyll-powered websites, with features like automatic HTTPS, custom domains, and real-time analytics. Azion's platform is designed for performance and scalability, making it an excellent choice for hosting global websites.
In [this guide](https://www.azion.com/en/documentation/products/guides/jekyll-boilerplate/) you can learn how to deploy a Jekyll site on Azion.

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>
@@ -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,7 +95,7 @@ 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">
@@ -138,3 +118,14 @@ to see more detailed examples.
<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,16 +4,547 @@ permalink: "/docs/history/"
note: This file is autogenerated. Edit /History.markdown instead.
---
## 4.1.1 / 2020-06-24
{: #v4-1-1}
## 4.4.1 / 2025-01-29
{: #v4-4-1}
- Fix grammar in documentation section ([#8265]({{ site.repository }}/issues/8265))
### Bug Fixes
{: #bug-fixes-v4-4-1}
- Restore globbed path behavior in front matter defaults ([#9762]({{ site.repository }}/issues/9762))
## 4.4.0 / 2025-01-27
{: #v4-4-0}
### Minor Enhancements
{: #minor-enhancements-v4-4-0}
- Allow marking specific highlighted lines via Liquid ([#9138]({{ site.repository }}/issues/9138))
- Add gem `csv` to runtime dependency list ([#9522]({{ site.repository }}/issues/9522))
- Bump the minimum ruby version to 2.7 ([#9525]({{ site.repository }}/issues/9525))
- Acknowledge `livereload_port` from site config too ([#9606]({{ site.repository }}/issues/9606))
- Add gem `base64` as runtime dependency ([#9740]({{ site.repository }}/issues/9740))
- Add gem `json` as runtime_dependency ([#9671]({{ site.repository }}/issues/9671))
- Remove unnecessary constraint on gem `mercenary` ([#9758]({{ site.repository }}/issues/9758))
### Bug Fixes
{: #bug-fixes-v4-4-0}
- Optimize default front matter using `File.fnmatch?` ([#9185]({{ site.repository }}/issues/9185))
- Remove totals in profile table properly ([#9186]({{ site.repository }}/issues/9186))
- Optimize `Site#each_site_file` ([#9187]({{ site.repository }}/issues/9187))
- Rename sass partial created for new blank site ([#9257]({{ site.repository }}/issues/9257))
- Fix `jekyll serve --detach` with jekyll-sass-converter 3.x ([#9304]({{ site.repository }}/issues/9304))
- Handle TypeError from `where` filter gracefully ([#9292]({{ site.repository }}/issues/9292))
- Add support for upcoming logger 1.4.3 ([#9392]({{ site.repository }}/issues/9392))
- Fix typo in devcontainer.json ([#9364]({{ site.repository }}/issues/9364))
- Correct rubocop lint errors ([#9600]({{ site.repository }}/issues/9600))
- Fix inexistent layout warning for the default 404 page ([#9589]({{ site.repository }}/issues/9589))
- Relax version constraint on `wdm` in new Gemfile ([#9662]({{ site.repository }}/issues/9662))
- Fix `--livereload-ignore` option ([#9570]({{ site.repository }}/issues/9570))
- Render theme-gem root only in development ([#9680]({{ site.repository }}/issues/9680))
### Development Fixes
{: #development-fixes-v4-1-1}
{: #development-fixes-v4-4-0}
- Bump RuboCop to v0.85.x ([#8223]({{ site.repository }}/issues/8223))
- Expect drive letter only on vanilla windows ([#8227]({{ site.repository }}/issues/8227))
- Cleanup highlight tag ([#9177]({{ site.repository }}/issues/9177))
- Run tests in utc ([#9168]({{ site.repository }}/issues/9168))
- Lock Ruby in CI to v3.1.2 and bump JRuby to v9.4.0.0 ([#9196]({{ site.repository }}/issues/9196))
- Update sass related tests for jekyll-sass-converter 3.x ([#9223]({{ site.repository }}/issues/9223))
- Split `test/test_tags.rb` into multiple files ([#9230]({{ site.repository }}/issues/9230))
- test: use hash explicitly for Struct initializer for ruby 3.2 ([#9237]({{ site.repository }}/issues/9237))
- script/default-site: accept flags for `jekyll new` ([#9259]({{ site.repository }}/issues/9259))
- Bump check-spelling/check-spelling from 0.0.20 to 0.0.21 ([#9205]({{ site.repository }}/issues/9205))
- Use check-spelling/check-spelling@v0.0.21 ([#9199]({{ site.repository }}/issues/9199))
- Bump RuboCop to v1.45.x ([#9305]({{ site.repository }}/issues/9305))
- Bump Rubocop to version 1.48.x ([#9326]({{ site.repository }}/issues/9326))
- Bump versions of ruby &amp; nodejs in devcontainer ([#9360]({{ site.repository }}/issues/9360))
- Bump rubocop version to 1.52.x ([#9361]({{ site.repository }}/issues/9361))
- Upgrade RuboCop to 1.54 ([#9401]({{ site.repository }}/issues/9401))
- Add CodeQL workflow ([#9397]({{ site.repository }}/issues/9397))
- Bump actions/checkout from 3 to 4 ([#9442]({{ site.repository }}/issues/9442))
- Test suite uses shoulda-context only. ([#9441]({{ site.repository }}/issues/9441))
- Keep activesupport at version 7.0.x ([#9469]({{ site.repository }}/issues/9469))
- Bump Rubocop to 1.56.4 ([#9459]({{ site.repository }}/issues/9459))
- Configure dependabot to handle rubygems dependencies ([#9445]({{ site.repository }}/issues/9445))
- Update rubocop gem ([#9476]({{ site.repository }}/issues/9476))
- Fix Performance/StringIdentifierArgument violation in site.rb and allow activesupport 6 for windows tests ([#9512]({{ site.repository }}/issues/9512))
- Add a few more emeritus team members ([#9535]({{ site.repository }}/issues/9535))
- Make custom cop inherit `RuboCop::Cop::Base` ([#9597]({{ site.repository }}/issues/9597))
- CI: Use JRuby 9.4.8.0 ([#9654]({{ site.repository }}/issues/9654))
- Stop testing with Cucumber on JRuby ([#9661]({{ site.repository }}/issues/9661))
- Windows CI on GitHub Actions ([#9659]({{ site.repository }}/issues/9659))
- Run GitHub Actions only if needed ([#9664]({{ site.repository }}/issues/9664))
- Format `.rubocop.yml` via a rake task ([#9687]({{ site.repository }}/issues/9687))
- Configure some new cops ([#9688]({{ site.repository }}/issues/9688))
- Fix expected markup per WAI-ARIA requirements ([#9737]({{ site.repository }}/issues/9737))
- Add an optional `:rdoc` group of gems ([#9742]({{ site.repository }}/issues/9742))
- Test `inspect` filter with custom object ([#9743]({{ site.repository }}/issues/9743))
- Bump cucumber to v9 ([#9747]({{ site.repository }}/issues/9747))
- Add Ruby 3.4 to CI matrix ([#9740]({{ site.repository }}/issues/9740))
- Remove unnecessary runtime dependency ([#9753]({{ site.repository }}/issues/9753))
- Bump `check-spelling/check-spelling` action ([#9756]({{ site.repository }}/issues/9756))
### Documentation
- Fix Nested tree navigation with recursion example ([#9174]({{ site.repository }}/issues/9174))
- Fix typo on website ([#9203]({{ site.repository }}/issues/9203))
- Publish post on major release of sass-converter ([#9225]({{ site.repository }}/issues/9225))
- Update Jekyll on macOS (macos.md) and current ruby version to 3.1.3 in ruby.yml ([#9195]({{ site.repository }}/issues/9195))
- Add release post for v4.3.2 ([#9263]({{ site.repository }}/issues/9263))
- Grammatical reordering in 3-to-4 upgrading docs ([#9245]({{ site.repository }}/issues/9245))
- fixed grammatical mistake on &#34;showcase&#34; page ([#9264]({{ site.repository }}/issues/9264))
- Mark `highlight` `mark_lines` feature as 4.4 in docs ([#9184]({{ site.repository }}/issues/9184))
- Add v3.9.3 release history &amp; post to `master` branch ([#9284]({{ site.repository }}/issues/9284))
- Update S3 deployment to remove s3_website ([#9221]({{ site.repository }}/issues/9221))
- Document Exclude behavior, Include overrides and the default exclusion list ([#9376]({{ site.repository }}/issues/9376))
- Update macos.md, remove Catalina (macOS 10.15) ([#9405]({{ site.repository }}/issues/9405))
- Update macos.md, add support for Ventura ([#9406]({{ site.repository }}/issues/9406))
- Typo fix - update to hooks and 3rd party deployment and one other article ([#9411]({{ site.repository }}/issues/9411))
- Update 07-assets.md ([#9393]({{ site.repository }}/issues/9393))
- Mention the front matter requirement in pages.md ([#9423]({{ site.repository }}/issues/9423))
- Point to the Rouge GitHub repo rather than broken website ([#9362]({{ site.repository }}/issues/9362))
- Add new theme directory to themes resources ([#9356]({{ site.repository }}/issues/9356))
- Adds Kinsta to 3rd party deployments ([#9331]({{ site.repository }}/issues/9331))
- Update Fedora prerequisites to include g++ ([#9290]({{ site.repository }}/issues/9290))
- Update convert-site-to-jekyll.md ([#9348]({{ site.repository }}/issues/9348))
- Update github-actions documentation ([#9426]({{ site.repository }}/issues/9426))
- Update resources.md ([#9449]({{ site.repository }}/issues/9449))
- Add GitHub Pages helpful notes ([#9235]({{ site.repository }}/issues/9235))
- Clarify which version of Jekyll needs &#39;jekyll-paginate&#39; ([#9477]({{ site.repository }}/issues/9477))
- chore: update showcases ([#9473]({{ site.repository }}/issues/9473))
- Add FreeBSD installation instructions ([#9481]({{ site.repository }}/issues/9481))
- Fix broken link for the security team page ([#9497]({{ site.repository }}/issues/9497))
- Fix broken links for several Jekyll integrations ([#9496]({{ site.repository }}/issues/9496))
- Add release post for v4.3.3 ([#9511]({{ site.repository }}/issues/9511))
- Add docs version badge to page_excerpts feature ([#9520]({{ site.repository }}/issues/9520))
- Improve accessibility of the docs ([#9338]({{ site.repository }}/issues/9338))
- Fix gem quote consistency on docs ([#9517]({{ site.repository }}/issues/9517))
- Make site search work again ([#9530]({{ site.repository }}/issues/9530))
- Jekyll docs template typo - All pages show &#34;Deployment&#34; ([#9548]({{ site.repository }}/issues/9548))
- Fixed: Wrong navigation style on the right side of news and docs pages ([#9586]({{ site.repository }}/issues/9586))
- Add redirect for step-by-step tutorial ([#9593]({{ site.repository }}/issues/9593))
- Add Jekyll 3.10.0 release post &amp; history ([#9625]({{ site.repository }}/issues/9625))
- Fix minor docs error ([#9641]({{ site.repository }}/issues/9641))
- Update windows.md ([#9644]({{ site.repository }}/issues/9644))
- Document keys of global variable {% raw %}`{{ jekyll }}`{% endraw %} ([#9653]({{ site.repository }}/issues/9653))
- Fix incorrect and inconsistent variables in the permalinks page ([#9591]({{ site.repository }}/issues/9591))
- Fix lapses in documentation of page variables ([#9667]({{ site.repository }}/issues/9667))
- Add note about VSCode warning for SCSS files ([#9609]({{ site.repository }}/issues/9609))
- docs: Fix incorrect parentheses ([#9629]({{ site.repository }}/issues/9629))
- docs: Fix of a bug in the pagination section ([#8890]({{ site.repository }}/issues/8890))
- Update current Ruby version renders and macOS docs ([#9614]({{ site.repository }}/issues/9614))
- Improve docs around using GitHub Actions to build and deploy Jekyll sites ([#9682]({{ site.repository }}/issues/9682))
- Fix grammar in the description of `page.excerpt` variable ([#9689]({{ site.repository }}/issues/9689))
- Render HTML tables at `/docs/permalinks/` using a data file ([#9666]({{ site.repository }}/issues/9666))
- Fix HTML attribute separation whitespace placement in the Navigation include code of Assets step of the Step by Step Tutorial ([#9695]({{ site.repository }}/issues/9695))
- Fix missing glob matching pattern support description in the documentation of the `include` and `exclude` configuration options ([#9697]({{ site.repository }}/issues/9697))
- Fix missing `url` configuration option documentation ([#9699]({{ site.repository }}/issues/9699))
- Link to GitHub Pages Dependency versions page instead of explicitly specifying Jekyll version ([#9715]({{ site.repository }}/issues/9715))
- Fix broken link on third-party.md ([#9704]({{ site.repository }}/issues/9704))
- Fix: remove inaccessible links and their descriptions ([#9745]({{ site.repository }}/issues/9745))
- Add release post for v4.4.0 ([#9759]({{ site.repository }}/issues/9759))
### Site Enhancements
{: #site-enhancements-v4-4-0}
- Extract markup for `Improve this page` into an inclusion ([#9675]({{ site.repository }}/issues/9675))
## 4.3.4 / 2024-09-16
{: #v4-3-4}
### Bug Fixes
{: #bug-fixes-v4-3-4}
- Backport [#9662]({{ site.repository }}/issues/9662) for v4.3.x: Relax version constraint on wdm in new Gemfile ([#9683]({{ site.repository }}/issues/9683))
- Backport [#9680]({{ site.repository }}/issues/9680) for v4.3.x: Render theme-gem root only in development ([#9684]({{ site.repository }}/issues/9684))
### Development Fixes
{: #development-fixes-v4-3-4}
- Sync workflows with counterparts on `master` ([#9681]({{ site.repository }}/issues/9681))
## 4.3.3 / 2023-12-27
{: #v4-3-3}
### Bug Fixes
{: #bug-fixes-v4-3-3}
- Backport [#9392]({{ site.repository }}/issues/9392) for v4.3.x: Fix backward compatibility issues in the Logger ([#9510]({{ site.repository }}/issues/9510))
### Development Fixes
{: #development-fixes-v4-3-3}
- Backport [#9237]({{ site.repository }}/issues/9237) for v4.3.x: Use Hash explicitly for Struct initializer ([#9285]({{ site.repository }}/issues/9285))
## 3.10.0 / 2024-06-23
{: #v3-10-0}
### Minor Enhancements
{: #minor-enhancements-v3-10-0}
- Backport add-csv-dependency from [#9522]({{ site.repository }}/issues/9522) to Jekyll 3 ([#9616]({{ site.repository }}/issues/9616))
- 3.10-stable: Add webrick as a dependency ([#9620]({{ site.repository }}/issues/9620))
## 3.9.5 / 2024-02-12
{: #v3-9-5}
### Minor Enhancements
{: #minor-enhancements-v3-9-5}
- 3.9-stable: allow Pages to be Excerpted ([#9550]({{ site.repository }}/issues/9550))
## 3.9.4 / 2023-12-28
{: #v3-9-4}
### Bug Fixes
{: #bug-fixes-v3-9-4}
- Backport [#9392]({{ site.repository }}/issues/9392) for v3.9.x: Add support for Ruby 3.3 Logger ([#9513]({{ site.repository }}/issues/9513))
## 3.9.3 / 2023-01-29
{: #v3-9-3}
### Bug Fixes
{: #bug-fixes-v3-9-3}
- 3.9.x: Support i18n 1.x ([#9269]({{ site.repository }}/issues/9269))
- Backport [#8880]({{ site.repository }}/issues/8880) for v3.9.x: Support both tzinfo v1 and v2 along with non-half hour offsets ([#9280]({{ site.repository }}/issues/9280))
### Development Fixes
{: #development-fixes-v3-9-3}
- v3.9.x: test under Ruby 3.2 [#9272]({{ site.repository }}/issues/9272))
- v3.9.x: fix rdiscount test ([#9277]({{ site.repository }}/issues/9277))
## 4.3.2 / 2023-01-20
{: #v4-3-2}
### Bug Fixes
{: #bug-fixes-v4-3-2}
- Backport [#9257]({{ site.repository }}/issues/9257) for v4.3.x: Rename sass partial created for new blank site ([#9262]({{ site.repository }}/issues/9262))
- Backport [#9187]({{ site.repository }}/issues/9187) for v4.3.x: Optimize `Site#each_site_file` ([#9256]({{ site.repository }}/issues/9256))
- Backport [#9186]({{ site.repository }}/issues/9186) for v4.3.x: Remove totals in profile table properly ([#9255]({{ site.repository }}/issues/9255))
### Development Fixes
{: #development-fixes-v4-3-2}
- Backport [#9223]({{ site.repository }}/issues/9223) for 4.3.x: Update sass related tests for jekyll-sass-converter 3.x ([#9254]({{ site.repository }}/issues/9254))
## 4.3.1 / 2022-10-26
{: #v4-3-1}
### Bug Fixes
{: #bug-fixes-v4-3-1}
- Respect user-defined name attribute in documents ([#9167]({{ site.repository }}/issues/9167))
- Revert &#34;Incrementally rebuild when a data file is changed&#34; ([#9170]({{ site.repository }}/issues/9170))
### Documentation
- Release post for v4.3.1 ([#9171]({{ site.repository }}/issues/9171))
## 4.3.0 / 2022-10-20
{: #v4-3-0}
### Minor Enhancements
{: #minor-enhancements-v4-3-0}
- Add webrick as a dependency ([#8524]({{ site.repository }}/issues/8524))
- Regenerate supported mime types ([#8542]({{ site.repository }}/issues/8542))
- Update include tag to be more permissive ([#8618]({{ site.repository }}/issues/8618))
- Optimize `Jekyll::Utils.parse_date` ([#8425]({{ site.repository }}/issues/8425))
- Update rubocop from 1.12 to 1.18 and min ruby from 2.4 to 2.5 ([#8741]({{ site.repository }}/issues/8741))
- Always hide cache-dir contents from Git ([#8798]({{ site.repository }}/issues/8798))
- Remove the warning about auto-regeneration on Windows ([#8821]({{ site.repository }}/issues/8821))
- Propagate _data folder from theme ([#8815]({{ site.repository }}/issues/8815))
- Support both tzinfo v1 and v2 along with non-half hour offsets. ([#8880]({{ site.repository }}/issues/8880))
- Run vendor-mimes to update mime.types ([#8940]({{ site.repository }}/issues/8940))
- Expose collection static files via `site.static_files` ([#8961]({{ site.repository }}/issues/8961))
- Expose `basename` from `document.rb` as `name` to Liquid templates ([#8761]({{ site.repository }}/issues/8761))
- Allow Configurable Converters on CSV ([#8858]({{ site.repository }}/issues/8858))
- Introduce `theme` drop to expose theme-gem details ([#9129]({{ site.repository }}/issues/9129))
- Relax version constraint to allow Rouge 4.x ([#9134]({{ site.repository }}/issues/9134))
- Incrementally rebuild when a data file is changed ([#8771]({{ site.repository }}/issues/8771))
- Support jekyll-sass-converter 3.x ([#9132]({{ site.repository }}/issues/9132))
### Bug Fixes
{: #bug-fixes-v4-3-0}
- fix: pin rubocop to 1.12 due to error with ruby 2.4 ([#8651]({{ site.repository }}/issues/8651))
- Load Jekyll plugins from BUNDLE_GEMFILE location ([#8585]({{ site.repository }}/issues/8585))
- fix(security): CVE-2021-28834 ([#8680]({{ site.repository }}/issues/8680))
- Inject livereload script using `location.protocol` instead of `http:` ([#8718]({{ site.repository }}/issues/8718))
- Respect collections_dir config within include tag ([#8756]({{ site.repository }}/issues/8756))
- Fix regression in Convertible module from v4.2.0 ([#8786]({{ site.repository }}/issues/8786))
- Revert [#7253]({{ site.repository }}/issues/7253): &#34;Don&#39;t reset site.url to localhost:4000 by default&#34; ([#8620]({{ site.repository }}/issues/8620))
- Improve readability of CI logs ([#8877]({{ site.repository }}/issues/8877))
- Fix deprecation message for missing doc method ([#8960]({{ site.repository }}/issues/8960))
- Fix response header for content served via `jekyll serve` ([#8965]({{ site.repository }}/issues/8965))
- Trigger livereload in sites without pages ([#8337]({{ site.repository }}/issues/8337))
- Only enable BOM encoding option on UTF encodings ([#8363]({{ site.repository }}/issues/8363))
- Ensure theme config is a `Jekyll::Configuration` object ([#8988]({{ site.repository }}/issues/8988))
- Remove misleading totals row from `--profile` table ([#9039]({{ site.repository }}/issues/9039))
- Unlock Psych dependency ([#9135]({{ site.repository }}/issues/9135))
- Fix false positive conflicts for static files in a collection ([#9141]({{ site.repository }}/issues/9141))
### Development Fixes
{: #development-fixes-v4-3-0}
- style: enable new cops ([#8538]({{ site.repository }}/issues/8538))
- Allow dependabot to keep github actions up-to-date ([#8540]({{ site.repository }}/issues/8540))
- Update actions/cache requirement to v2.1.3 ([#8543]({{ site.repository }}/issues/8543))
- Pin rubocop version ([#8564]({{ site.repository }}/issues/8564))
- style: add rubocop 1.9 cops ([#8567]({{ site.repository }}/issues/8567))
- Cross Version Testing Locally and Faster CI ([#8610]({{ site.repository }}/issues/8610))
- Use official Ruby setup GH action ([#8614]({{ site.repository }}/issues/8614))
- Spell check action for markdown documentation ([#8675]({{ site.repository }}/issues/8675))
- Update expect to cover docs/_posts ([#8677]({{ site.repository }}/issues/8677))
- Bump check-spelling/check-spelling from 0.0.18 to 0.0.19 ([#8740]({{ site.repository }}/issues/8740))
- Enable Rubocop accessor grouping, fix existing offenses ([#8293]({{ site.repository }}/issues/8293))
- Tags:Highlight: Decomposed HTMLLegacy formatter ([#8623]({{ site.repository }}/issues/8623))
- Relax Rubocop Dependency ([#8831]({{ site.repository }}/issues/8831))
- Add a workflow to build gems consistently ([#8830]({{ site.repository }}/issues/8830))
- Fix random test failures in TestExcerpt #to_liquid ([#8884]({{ site.repository }}/issues/8884))
- Lock gem `psych` to `v3.x` ([#8918]({{ site.repository }}/issues/8918))
- Fix typo in Bug Report template ([#8951]({{ site.repository }}/issues/8951))
- Check symlink outside site_source without Pathutil ([#9015]({{ site.repository }}/issues/9015))
- Stop testing with Rubies older than 2.7 on non-Windows ([#8955]({{ site.repository }}/issues/8955))
- Bump actions/checkout from 2 to 3 ([#8986]({{ site.repository }}/issues/8986))
- Remove git.io shortlinks from repo ([#9045]({{ site.repository }}/issues/9045))
- Bump rubocop to 1.32 ([#9093]({{ site.repository }}/issues/9093))
- Bump RuboCop to `1.36.x` ([#9125]({{ site.repository }}/issues/9125))
- Use check-spelling/check-spelling@v0.0.20 ([#9111]({{ site.repository }}/issues/9111))
- Disable pending cops when running rubocop ([#9136]({{ site.repository }}/issues/9136))
- Relax RDoc version dependency ([#9142]({{ site.repository }}/issues/9142))
### Documentation
- typo - do instead of don&#39;t ([#8518]({{ site.repository }}/issues/8518))
- Document support for TSV files consistently ([#8488]({{ site.repository }}/issues/8488))
- Add a disclaimer to tutorials involving Ruby code ([#8525]({{ site.repository }}/issues/8525))
- Improve documentation on developing generators ([#8527]({{ site.repository }}/issues/8527))
- Fixes typo in layouts_dir documentation ([#8532]({{ site.repository }}/issues/8532))
- Fix i.e. typos in collections.md ([#8529]({{ site.repository }}/issues/8529))
- Remove GitHub Pages content which is in GitHub docs ([#8533]({{ site.repository }}/issues/8533))
- Step By Step Instructions Review ([#8399]({{ site.repository }}/issues/8399))
- Fix typo in migrating from 3.0 to 4.0 page ([#8572]({{ site.repository }}/issues/8572))
- Fix for important missing step in macOS Installation Docs: Add the Homebrew gems directory to the PATH ([#8496]({{ site.repository }}/issues/8496))
- Use latest Jekyll-action configuration ([#8579]({{ site.repository }}/issues/8579))
- docs: troubleshoot macOS with ARM64 architecture ([#8560]({{ site.repository }}/issues/8560))
- docs: add overview of .jekyll-cache dir ([#8648]({{ site.repository }}/issues/8648))
- docs: clarify where .jekyll-metadata comes from ([#8646]({{ site.repository }}/issues/8646))
- Razorops CI/CD added ([#8656]({{ site.repository }}/issues/8656))
- Specify default port and host for serve commands in docs ([#8624]({{ site.repository }}/issues/8624))
- Update third-party.md ([#8652]({{ site.repository }}/issues/8652))
- Add documentation for Sass configuration options ([#8587]({{ site.repository }}/issues/8587))
- Add formcarry to forms section ([#8471]({{ site.repository }}/issues/8471))
- Add step to set SDKROOT ([#8478]({{ site.repository }}/issues/8478))
- Improve the &#34;Markdown Options&#34; Docs ([#8681]({{ site.repository }}/issues/8681))
- Add &#39;webrick&#39; warning note to &#34;Quickstart&#34; Docs ([#8727]({{ site.repository }}/issues/8727))
- Update windows.md ([#8701]({{ site.repository }}/issues/8701))
- IRC networks - Libera, Freenode ([#8706]({{ site.repository }}/issues/8706))
- Improve GitHub Flavored Markdown Docs ([#8684]({{ site.repository }}/issues/8684))
- Fixing URL in MacOS install for rbenv-doctor ([#8693]({{ site.repository }}/issues/8693))
- Fix adjective in `troubleshooting.md` document ([#8777]({{ site.repository }}/issues/8777))
- Goodbye Frank. We&#39;ll miss you. 💔 ([#8807]({{ site.repository }}/issues/8807))
- Update index.html: Grammar fix. ([#8803]({{ site.repository }}/issues/8803))
- Prefer Libera. Remove Freenode. ([#8811]({{ site.repository }}/issues/8811))
- Update feature_request.md ([#8797]({{ site.repository }}/issues/8797))
- Remove AWS Amplify from the showcase ([#8812]({{ site.repository }}/issues/8812))
- Move Frank to Emeritus Core Team Members ([#8813]({{ site.repository }}/issues/8813))
- Release post for v4.2.1 ([#8818]({{ site.repository }}/issues/8818))
- Update CircleCI example ([#8829]({{ site.repository }}/issues/8829))
- Fix typo ([#8835]({{ site.repository }}/issues/8835))
- Added docs for running locally ([#8852]({{ site.repository }}/issues/8852))
- Linting README.markdown ([#8900]({{ site.repository }}/issues/8900))
- Remove text on GITHUB_TOKEN which is now built-in ([#8907]({{ site.repository }}/issues/8907))
- Add Security Policy document ([#8823]({{ site.repository }}/issues/8823))
- Manage repository meta documents consistently ([#8908]({{ site.repository }}/issues/8908))
- docs: add Layer0 deployment guide ([#8915]({{ site.repository }}/issues/8915))
- docs: Update README generated by `jekyll new-theme` ([#8919]({{ site.repository }}/issues/8919))
- Update resources.md ([#8925]({{ site.repository }}/issues/8925))
- Rewrite documentation on installing plugins ([#8921]({{ site.repository }}/issues/8921))
- Improve maintainers guide on releasing a new version ([#8928]({{ site.repository }}/issues/8928))
- Fix link for &#34;CloudSh&#34; ([#8934]({{ site.repository }}/issues/8934))
- Recommend using `actions/cache` in GitHub Actions documentation ([#8948]({{ site.repository }}/issues/8948))
- Remove references to EOL hakiri.io service ([#8946]({{ site.repository }}/issues/8946))
- Release post for v4.2.2 ([#8982]({{ site.repository }}/issues/8982))
- Document releasing off `*-stable` branches ([#8984]({{ site.repository }}/issues/8984))
- Update document by fix yaml syntax error ([#8991]({{ site.repository }}/issues/8991))
- Enhance option&#39;s case for Jekyll configuration ([#8992]({{ site.repository }}/issues/8992))
- Fix typo in `_docs/deployment/manual.md` ([#8997]({{ site.repository }}/issues/8997))
- Add quiet/verbose options ([#8996]({{ site.repository }}/issues/8996))
- Update README.markdown re IRC Pointer ([#9005]({{ site.repository }}/issues/9005))
- Remove Aerobatic ([#9007]({{ site.repository }}/issues/9007))
- Add Jekyll 3.9.2 release post to &#39;master&#39; branch ([#9013]({{ site.repository }}/issues/9013))
- Simplify macOS installation docs ([#8993]({{ site.repository }}/issues/8993))
- Improve document about GitHub Actions section ([#8853]({{ site.repository }}/issues/8853))
- Update permalinks.md ([#9017]({{ site.repository }}/issues/9017))
- Add clarity to docs on permalinks placeholders and built-ins ([#8995]({{ site.repository }}/issues/8995))
- Remove Ionic Framework site from showcase ([#9057]({{ site.repository }}/issues/9057))
- Windows: describe which option to choose ([#9049]({{ site.repository }}/issues/9049))
- Improve links (http -&gt; https) ([#9064]({{ site.repository }}/issues/9064))
- Update ruby version for macos guide ([#9086]({{ site.repository }}/issues/9086))
- Update posts.md ([#9151]({{ site.repository }}/issues/9151))
- Release post for v4.3.0 ([#9157]({{ site.repository }}/issues/9157))
### Site Enhancements
{: #site-enhancements-v4-3-0}
- Improvements to CSS ([#7834]({{ site.repository }}/issues/7834))
- Slightly update lang `sh` code-block styling ([#8857]({{ site.repository }}/issues/8857))
## 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}
@@ -32,6 +563,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- 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}
@@ -39,6 +571,12 @@ note: This file is autogenerated. Edit /History.markdown instead.
- 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}
@@ -158,7 +696,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- 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))
- 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))
@@ -212,6 +750,32 @@ 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}
@@ -486,7 +1050,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))
@@ -501,7 +1065,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))
@@ -677,7 +1241,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))
@@ -852,7 +1416,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))
@@ -983,7 +1547,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))
@@ -1009,7 +1573,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- make flakey test more robust ([#6277]({{ site.repository }}/issues/6277))
- Add a quick test for DataReader ([#6284]({{ site.repository }}/issues/6284))
- script/backport-pr: commit message no longer includes the `#` ([#6289]({{ site.repository }}/issues/6289))
- Add Add CODEOWNERS file to help automate reviews. ([#6320]({{ site.repository }}/issues/6320))
- Add CODEOWNERS file to help automate reviews. ([#6320]({{ site.repository }}/issues/6320))
- Fix builds on codeclimate ([#6333]({{ site.repository }}/issues/6333))
- Bump rubies on Travis ([#6366]({{ site.repository }}/issues/6366))
@@ -1040,7 +1604,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))
@@ -1553,7 +2117,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))
@@ -1579,7 +2143,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))
@@ -1631,7 +2195,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))
@@ -1730,7 +2294,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))
@@ -1738,10 +2302,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))
@@ -1919,9 +2483,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))
@@ -2168,7 +2732,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Fixed an unclear code comment in site template SCSS ([#3837]({{ site.repository }}/issues/3837))
- Fix reading of binary metadata file ([#3845]({{ site.repository }}/issues/3845))
- Remove var collision with site template header menu iteration variable ([#3838]({{ site.repository }}/issues/3838))
- Change non-existent `hl_linenos` to `hl_lines` to allow passthrough in safe mode ([#3787]({{ site.repository }}/issues/3787))
- Change nonexistent `hl_linenos` to `hl_lines` to allow passthrough in safe mode ([#3787]({{ site.repository }}/issues/3787))
- Add missing flag to disable the watcher ([#3820]({{ site.repository }}/issues/3820))
- Update CI guide to include more direct explanations of the flow ([#3891]({{ site.repository }}/issues/3891))
- Set `future` to `false` in the default config ([#3892]({{ site.repository }}/issues/3892))
@@ -2277,7 +2841,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))
@@ -2505,7 +3069,7 @@ note: This file is autogenerated. Edit /History.markdown instead.
- Document the `name` variable for collection permalinks ([#2829]({{ site.repository }}/issues/2829))
- Adds info about installing jekyll in current dir ([#2839]({{ site.repository }}/issues/2839))
- Remove deprecated `jekyll-projectlist` plugin from list of third-party plugins ([#2742]({{ site.repository }}/issues/2742))
- Remove tag plugins that are built in to Jekyll ([#2751]({{ site.repository }}/issues/2751))
- Remove tag plugins that are built into Jekyll ([#2751]({{ site.repository }}/issues/2751))
- Add `markdown-writer` package for Atom Editor to list of third-party plugins ([#2763]({{ site.repository }}/issues/2763))
- Fix typo in site documentation for collections ([#2764]({{ site.repository }}/issues/2764))
- Fix minor typo on plugins docs page ([#2765]({{ site.repository }}/issues/2765))
@@ -3403,7 +3967,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))
@@ -3578,7 +4142,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

@@ -85,7 +85,7 @@ For example, suppose you have a special image syntax with complex formatting, an
```html
<figure>
<a href="http://jekyllrb.com">
<a href="https://jekyllrb.com">
<img src="logo.png" style="max-width: 200px;"
alt="Jekyll logo" />
</a>

View File

@@ -24,23 +24,26 @@ See [Requirements]({{ '/docs/installation/#requirements' | relative_url }}) for
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`.
```
```sh
jekyll new myblog
```
4. Change into your new directory.
```
```sh
cd myblog
```
5. Build the site and make it available on a local server.
```
```sh
bundle exec jekyll serve
```
6. Browse to [http://localhost:4000](http://localhost:4000){:target="_blank"}
{: .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`

View File

@@ -18,5 +18,6 @@ For detailed install instructions, follow the guide for your operating system.
* [macOS]({{ '/docs/installation/macos/' | relative_url }})
* [Ubuntu]({{ '/docs/installation/ubuntu/' | relative_url }})
* [FreeBSD]({{ '/docs/installation/freebsd/' | relative_url }})
* [Other Linux]({{ '/docs/installation/other-linux/' | relative_url }})
* [Windows]({{ '/docs/installation/windows/' | relative_url }})

View File

@@ -0,0 +1,50 @@
---
title: Jekyll on FreeBSD
permalink: /docs/installation/freebsd/
---
### Install Ruby
```sh
sudo pkg install ruby
```
### Install Ruby Gems
Find the latest version and install it. (Replace `ruby3x` with whatever the latest version is.)
```sh
pkg search gems
sudo pkg install ruby3x-gems
```
## Set Gems directory and add that to the Bash path
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:
```sh
echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc
echo 'export GEM_HOME="$HOME/gems"' >> ~/.bashrc
echo 'export PATH="$HOME/gems/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
```
## Install Jekyll Gems
```sh
gem install jekyll bundler jekyll-sitemap
```
## Verify install
Both of these commands should return some output showing version number, etc.
```sh
ruby -v
jekyll -v
```
That's it! You're ready to start using Jekyll.

View File

@@ -3,135 +3,90 @@ title: Jekyll on macOS
permalink: /docs/installation/macos/
---
## Install Command Line Tools
To install the command line tools to compile native extensions, open a terminal and run:
## Supported macOS versions
```sh
xcode-select --install
```
We match [Homebrew's macOS requirements](https://docs.brew.sh/Installation#macos-requirements), which typically support the last 2 or 3 macOS versions.
Older macOS versions might work, but we don't officially support them.
## Install Ruby
Jekyll requires **Ruby v{{ site.data.ruby.min_version }}** or higher.
macOS Catalina 10.15 ships with Ruby 2.6.3. Check your Ruby version using `ruby -v`.
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/).
If you're running a previous version of macOS, you'll have to install a newer version of Ruby.
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.
### With Homebrew {#brew}
To run the latest Ruby version you need to install it through [Homebrew](https://brew.sh).
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 configuration:
### Step 2: Install chruby and the latest Ruby with ruby-install
```bash
echo 'export PATH="/usr/local/opt/ruby/bin:$PATH"' >> ~/.bash_profile
```
Relaunch your terminal and check your 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 (supported by Jekyll):
```sh
ruby-install ruby {{ site.data.ruby.current_version }}
```
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 # run 'chruby' to see actual version
```
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 }}
```
You're now running the current stable version of 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
# Set up rbenv integration with your shell
rbenv init
# Check your installation
curl -fsSL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-doctor | bash
```
Restart your terminal to apply your changes.
Next, you can install the Ruby version you want. Let's install the latest stable version:
```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 to [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
After installing Ruby, install Jekyll and Bundler.
### Local Install
Install the bundler and jekyll gems:
After installing Ruby with chruby, install the latest Jekyll gem:
```sh
gem install --user-install bundler jekyll
```
Get your Ruby version:
```sh
ruby -v
{{ site.data.ruby.current_version_output }}
```
Append your path file with the following, replacing the `X.X` with the first two digits of your Ruby version:
```bash
echo 'export PATH="$HOME/.gem/ruby/X.X.0/bin:$PATH"' >> ~/.bash_profile
```
Check that `GEM PATHS:` points to your home directory:
```sh
gem env
```
{: .note .info}
Every time you update Ruby to a version in which the first two digits change, update your path to match.
### Global Install
{: .note .warning}
We recommend not installing Ruby gems globally to avoid file permissions problems and using `sudo`.
#### On Mojave (10.14)
Because of SIP Protections in Mojave, run:
```sh
sudo gem install bundler
sudo gem install -n /usr/local/bin/ jekyll
```
#### Before Mojave (<10.14)
Run:
```sh
sudo gem install bundler jekyll
gem install jekyll
```
## Troubleshooting
See [Troubleshooting]({{ '/docs/troubleshooting/' | relative_url }}) 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

@@ -10,7 +10,7 @@ Installation on other Linux distributions works similarly to installing on [Ubun
### Fedora
```sh
sudo dnf install ruby ruby-devel openssl-devel redhat-rpm-config @development-tools
sudo dnf install ruby ruby-devel openssl-devel redhat-rpm-config gcc-c++ @development-tools
```
### RHEL8/CentOS8
@@ -40,13 +40,14 @@ sudo emerge --ask --verbose jekyll
### ArchLinux
```sh
sudo pacman -S ruby base-devel
sudo pacman -S ruby base-devel ruby-erb
```
### OpenSUSE
```sh
sudo zypper install -t pattern devel_ruby devel_C_C++
sudo zypper install ruby-devel
```
### Clear Linux

View File

@@ -23,13 +23,14 @@ We only cover RubyInstaller-2.4 and newer here. Older versions need to
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)
[RubyInstaller Documentation](https://github.com/oneclick/rubyinstaller2#using-the-installer-on-a-target-system).
From the options choose `MSYS2 and MINGW development toolchain`.
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 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 been installed properly. Reboot your system and run `jekyll -v` again.
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!
@@ -42,39 +43,11 @@ If you are using Windows 10 version 1607 or later, another option to run Jekyll
{: .note .info}
You must have [Windows Subsystem for Linux](https://msdn.microsoft.com/en-us/commandline/wsl/about) enabled.
Make sure all your packages and repositories are up to date. Open a new Command Prompt or Powershell window and type `bash`.
Make sure all your packages and repositories are up to date. Open a new Command Prompt or PowerShell window and type `bash`.
Your terminal should now be a Bash instance. Next, update your repository lists and packages:
Your terminal should now be a Bash instance. Then, [follow the installation procedure for Ubuntu](https://jekyllrb.com/docs/installation/ubuntu/).
```sh
sudo apt-get update -y && sudo apt-get upgrade -y
```
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
sudo apt-add-repository ppa:brightbox/ruby-ng
sudo apt-get update
sudo apt-get install ruby2.5 ruby2.5-dev build-essential dh-autoreconf
```
Next, update your Ruby gems:
```sh
gem update
```
Install Jekyll:
```sh
gem install jekyll bundler
```
{: .note .info}
No `sudo` here.
Check your Jekyll version:
Once this is done, check your Jekyll version:
```sh
jekyll -v
@@ -97,7 +70,7 @@ 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. If they don't, Jekyll will break. 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. Run the following:
@@ -121,22 +94,14 @@ While 'new' blogs created with Jekyll v3.4 and greater, will have the following
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>
Version 2.0 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 version 1.2 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.
@@ -145,7 +110,7 @@ While `listen` has built-in support for UNIX systems, it may require an extra ge
Add the following to the `Gemfile` for your site if you have issues with auto-regeneration on Windows alone:
```ruby
gem 'wdm', '~> 0.1.1', :install_if => Gem.win_platform?
gem "wdm", "~> 0.2.0", :install_if => Gem.win_platform?
```
You have to use a [Ruby+Devkit](https://rubyinstaller.org/downloads/) version of the RubyInstaller and install

View File

@@ -15,7 +15,7 @@ If you have page snippets that you use repeatedly across your site, an
## Code snippet highlighting
Jekyll has built in support for syntax highlighting of over 100 languages
thanks to [Rouge](http://rouge.jneen.net). Rouge is the default highlighter
thanks to [Rouge](https://github.com/rouge-ruby/rouge). Rouge is the default highlighter
in Jekyll 3 and above.
{: .note .warning}
@@ -66,6 +66,26 @@ end
```
{% endraw %}
### Marking specific lines {%- include docs_version_badge.html version="4.4.0" -%}
{: #marking-specific-lines }
You can mark specific lines in a code snippet by using the optional
argument `mark_lines`. This argument takes a space-separated list of
line numbers which must be wrapped in double quotes. For example, the
following code block will mark lines 1 and 2 but not line 3:
{% raw %}
```liquid
{% highlight ruby mark_lines="1 2" %}
def foo
puts 'foo'
end
{% endhighlight %}
```
{% endraw %}
A default class name of `hll` will be applied to the marked lines.
### Stylesheets for syntax highlighting
In order for the highlighting to show up, youll need to include a highlighting
@@ -168,3 +188,25 @@ You can also use this tag to create a link to a post in Markdown as follows:
[Name of Link]({% post_url 2010-07-21-name-of-post %})
```
{% endraw %}
Now lets say you have a [datafile]({{ '/docs/datafiles/' | relative_url }}) `_data/cool_posts.yaml` used to keep track
of certain posts that you intend to be listed as say *Cool Posts*:
```yaml
- title: "An Awesome Post"
slug: "2010-07-21-name-of-post"
- title: "Another Awesome Post"
slug: "2016-07-26-name-of-post"
```
You may list such posts using the `post_url` tag as well (from {%- include docs_version_badge.html version="4.5.0" -%}):
{% raw %}
```liquid
Cool posts:
{%- for cool_post in site.data.cool_posts %}
- [{{ cool_post.title }}]({% post_url {{ cool_post.slug }} %})
{%- endfor %}
```
{% endraw %}

View File

@@ -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

@@ -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

@@ -9,7 +9,7 @@ title: "Merging a Pull Request"
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

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.
**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.

View File

@@ -20,7 +20,7 @@ If the issue describes a feature request, ask:
1. Is this a setting? [Settings are a crutch](http://ben.balter.com/2016/03/08/optimizing-for-power-users-and-edge-cases/#settings-are-a-crutch) for doing "the right thing". Settings usually point to a bad default or an edge case that could be solved easily with a plugin. Keep the :christmas_tree: of settings as small as possible so as not to reduce the usability of the product. We like the philosophy "decisions not options."
2. Would at least 80% of users find it useful? If even a quarter of our users won't use it, it's very likely that the request doesn't fit our product's core goal.
3. Is there another way to accomplish the end goal of the request? Most feature requests are due to bad documentation for or understanding of a pre-existing feature. See if you can clarify the end goal of the request. What is the user trying to do? Could they accomplish that goal through another feature we already support?
3. Is there another way to accomplish the end goal of the request? Most feature requests are due to bad documentation for or understanding of a preexisting feature. See if you can clarify the end goal of the request. What is the user trying to do? Could they accomplish that goal through another feature we already support?
4. Even if 80% of our users will use it, does it fit the core goal of our project? We are writing a tool for making static websites, not a swiss army knife for publishing more generally.
Feel free to get others' opinions and ask questions of the issue author, but depending upon the answers to the questions above, it may be out of scope for our project.

View File

@@ -9,7 +9,7 @@ members or recipes).
The simplest way of adding a page is to add an HTML file in the root
directory with a suitable filename. You can also write a page in Markdown using
a `.md` extension which converts to HTML on build. For a site with
a `.md` extension and front matter which converts to HTML on build. For a site with
a homepage, an about page, and a contact page, heres what the root directory
and associated URLs might look like:
@@ -33,9 +33,8 @@ If you have a lot of pages, you can organize them into subfolders. The same subf
## Changing the output URL
You might want to have a particular folder structure for your source files that changes for the built site. With [permalinks](/docs/permalinks) you have full control of the output URL.
You might want to have a particular folder structure for your source files that changes for the built site. With [permalinks](/docs/permalinks/) you have full control of the output URL.
## Excerpts for pages
## Excerpts for pages {%- include docs_version_badge.html version="4.1.1" -%}
From Jekyll 4.1.1 onwards, one can *choose* to generate excerpts for their pages by setting `page_excerpts` to `true` in their
config file.
One can *choose* to generate excerpts for their pages by setting `page_excerpts` to `true` in their config file.

View File

@@ -8,8 +8,9 @@ break the main listing of posts up into smaller lists and display them over
multiple pages. Jekyll offers a pagination plugin, so you can automatically
generate the appropriate files and folders you need for paginated listings.
For Jekyll 3, include the `jekyll-paginate` plugin in your Gemfile and in
your `_config.yml` under `plugins`. For Jekyll 2, this is standard.
For Jekyll 3 or higher, include the `jekyll-paginate` plugin in your
Gemfile and in your `_config.yml` under `plugins`. For Jekyll 2, this is
standard.
<div class="note info">
<h5>Pagination only works within HTML files</h5>
@@ -154,7 +155,7 @@ page with links to all but the current page.
{% if page == paginator.page %}
<em>{{ page }}</em>
{% elsif page == 1 %}
<a href="{{ '/' | relative_url }}">{{ page }}</a>
<a href="{{ site.paginate_path | relative_url | replace: 'page:num/', '' }}">{{ page }}</a>
{% else %}
<a href="{{ site.paginate_path | relative_url | replace: ':num', page }}">{{ page }}</a>
{% endif %}

View File

@@ -55,229 +55,16 @@ Here's the full list of placeholders available:
</tr>
</thead>
<tbody>
{%- for entry in site.data.permalinks.placeholders %}
<tr>
<td>
<p><code>year</code></p>
</td>
<td>
<p>
Year from the posts filename with four digits.
May be overridden via the documents <code>date</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>short_year</code></p>
</td>
<td>
<p>
Year from the posts filename without the century. (00..99)
May be overridden via the documents <code>date</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>month</code></p>
</td>
<td>
<p>
Month from the posts filename. (01..12)
May be overridden via the documents <code>date</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>i_month</code></p>
</td>
<td>
<p>
Month without leading zeros from the posts filename. May be
overridden via the documents <code>date</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>short_month</code></p>
</td>
<td>
<p>Three-letter month abbreviation, e.g. “Jan”.</p>
</td>
</tr>
<tr>
<td>
<p><code>long_month</code></p>
<small>{% include docs_version_badge.html version="4.0" %}</small>
</td>
<td>
<p>Full month name, e.g. “January”.</p>
</td>
</tr>
<tr>
<td>
<p><code>day</code></p>
</td>
<td>
<p>
Day of the month from the posts filename. (01..31)
May be overridden via the documents <code>date</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>i_day</code></p>
</td>
<td>
<p>
Day of the month without leading zeros from the posts filename.
May be overridden via the documents <code>date</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>y_day</code></p>
</td>
<td>
<p>Ordinal day of the year from the posts filename, with leading zeros. (001..366)</p>
</td>
</tr>
<tr>
<td>
<p><code>w_year</code></p>
<small>{% include docs_version_badge.html version="4.0" %}</small>
</td>
<td>
<p>Week year which may differ from the month year for up to three days at the start of January and end of December</p>
</td>
</tr>
<tr>
<td>
<p><code>week</code></p>
<small>{% include docs_version_badge.html version="4.0" %}</small>
</td>
<td>
<p>Week number of the current year, starting with the first week having a majority of its days in January. (01..53)</p>
</td>
</tr>
<tr>
<td>
<p><code>w_day</code></p>
<small>{% include docs_version_badge.html version="4.0" %}</small>
</td>
<td>
<p>Day of the week, starting with Monday. (1..7)</p>
</td>
</tr>
<tr>
<td>
<p><code>short_day</code></p>
<small>{% include docs_version_badge.html version="4.0" %}</small>
</td>
<td>
<p>Three-letter weekday abbreviation, e.g. “Sun”.</p>
</td>
</tr>
<tr>
<td>
<p><code>long_day</code></p>
<small>{% include docs_version_badge.html version="4.0" %}</small>
</td>
<td>
<p>Weekday name, e.g. “Sunday”.</p>
</td>
</tr>
<tr>
<td>
<p><code>hour</code></p>
</td>
<td>
<p>
Hour of the day, 24-hour clock, zero-padded from the posts
<code>date</code> front matter. (00..23)
</p>
</td>
</tr>
<tr>
<td>
<p><code>minute</code></p>
</td>
<td>
<p>
Minute of the hour from the posts <code>date</code> front matter. (00..59)
</p>
</td>
</tr>
<tr>
<td>
<p><code>second</code></p>
</td>
<td>
<p>
Second of the minute from the posts <code>date</code> front matter. (00..59)
</p>
</td>
</tr>
<tr>
<td>
<p><code>title</code></p>
</td>
<td>
<p>
Title from the documents filename. May be overridden via
the documents <code>slug</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>slug</code></p>
</td>
<td>
<p>
Slugified title from the documents filename (any character
except numbers and letters is replaced as hyphen). May be
overridden via the documents <code>slug</code> front matter.
</p>
</td>
</tr>
<tr>
<td>
<p><code>categories</code></p>
</td>
<td>
<p>
The specified categories for this post. If a post has multiple
categories, Jekyll will create a hierarchy (e.g. <code>/category1/category2</code>).
Also Jekyll automatically parses out double slashes in the URLs,
so if no categories are present, it will ignore this.
</p>
</td>
</tr>
<tr>
<td>
<p><code>slugified_categories</code></p>
<small>{% include docs_version_badge.html version="4.1" %}</small>
</td>
<td>
<p>
The specified categories for this post but <em>slugified</em>. If a category is a
composite of multiple words, Jekyll will downcase all alphabets and replace any
non-alphanumeric character with a hyphen. (e.g. <code>"Work 2 Progress"</code>
will be converted into <code>"work-2-progress"</code>)
</p>
<p>
If a post has multiple categories, Jekyll will create a hierarchy
(e.g. <code>/work-2-progress/category2</code>).
Also Jekyll automatically parses out double slashes in the URLs,
so if no categories are present, it will ignore this.
</p>
<td><p><code>:{{ entry.name }}</code></p>
{%- if entry.intro_ver -%}
<small>{% include docs_version_badge.html version = entry.intro_ver %}</small>
{%- endif -%}
</td>
<td><p>{{ entry.desc }}</p></td>
</tr>
{%- endfor %}
</tbody>
</table>
</div>
@@ -295,47 +82,22 @@ For posts, Jekyll also provides the following built-in styles for convenience:
</tr>
</thead>
<tbody>
{%- for entry in site.data.permalinks.builtin_formats %}
<tr>
<td>
<p><code>date</code></p>
<td><p><code>{{ entry.name }}</code></p>
{%- if entry.intro_ver -%}
<small>{% include docs_version_badge.html version = entry.intro_ver %}</small>
{%- endif -%}
</td>
<td>
<p><code>/:categories/:year/:month/:day/:title:output_ext</code></p>
</td>
</tr>
<tr>
<td>
<p><code>pretty</code></p>
</td>
<td>
<p><code>/:categories/:year/:month/:day/:title/</code></p>
</td>
</tr>
<tr>
<td>
<p><code>ordinal</code></p>
</td>
<td>
<p><code>/:categories/:year/:y_day/:title:output_ext</code></p>
</td>
</tr>
<tr>
<td>
<p><code>weekdate</code></p>
<small>{% include docs_version_badge.html version="4.0" %}</small>
</td>
<td>
<p><code>/:categories/:year/W:week/:short_day/:title:output_ext</code></p>
</td>
</tr>
<tr>
<td>
<p><code>none</code></p>
</td>
<td>
<p><code>/:categories/:title:output_ext</code></p>
<p><code>{{ entry.format }}</code>
{%- if entry.note -%}<br/>
<small>({{ entry.note }})</small>
{%- endif -%}
</p>
</td>
</tr>
{%- endfor %}
</tbody>
</table>
</div>
@@ -370,56 +132,12 @@ Collections have the following placeholders available:
</tr>
</thead>
<tbody>
{%- for entry in site.data.permalinks.types.documents -%}
<tr>
<td>
<p><code>:collection</code></p>
</td>
<td>
<p>Label of the containing collection.</p>
</td>
</tr>
<tr>
<td>
<p><code>:path</code></p>
</td>
<td>
<p>
Path to the document relative to the collection's directory,
including base filename of the document.
</p>
</td>
</tr>
<tr>
<td>
<p><code>:name</code></p>
</td>
<td>
<p>The document's base filename, with every sequence of spaces
and non-alphanumeric characters replaced by a hyphen.</p>
</td>
</tr>
<tr>
<td>
<p><code>:title</code></p>
</td>
<td>
<p>
The <code>:title</code> template variable will take the
<code>slug</code> <a href="/docs/front-matter/">front matter</a>
variable value if any is present in the document; if none is
defined then <code>:title</code> will be equivalent to
<code>:name</code>, aka the slug generated from the filename.
</p>
</td>
</tr>
<tr>
<td>
<p><code>:output_ext</code></p>
</td>
<td>
<p>Extension of the output file. (Included by default and usually unnecessary.)</p>
</td>
<td><p><code>:{{ entry.name }}</code></p></td>
<td><p>{{ entry.desc }}</p></td>
</tr>
{%- endfor -%}
</tbody>
</table>
</div>
@@ -441,36 +159,12 @@ Pages have the following placeholders available:
</tr>
</thead>
<tbody>
{%- for entry in site.data.permalinks.types.pages -%}
<tr>
<td>
<p><code>:path</code></p>
</td>
<td>
<p>
Path to the page relative to the site's source directory, excluding
base filename of the page.
</p>
</td>
</tr>
<tr>
<td>
<p><code>:basename</code></p>
</td>
<td>
<p>The page's base filename</p>
</td>
</tr>
<tr>
<td>
<p><code>:output_ext</code></p>
</td>
<td>
<p>
Extension of the output file. (Included by default and usually
unnecessary.)
</p>
</td>
<td><p><code>:{{ entry.name }}</code></p></td>
<td><p>{{ entry.desc }}</p></td>
</tr>
{%- endfor -%}
</tbody>
</table>
</div>

View File

@@ -19,6 +19,8 @@ end
Liquid::Template.register_filter(Jekyll::AssetFilter)
```
For more details on creating custom Liquid Filters, head to the [Liquid docs](https://github.com/Shopify/liquid/wiki/Liquid-for-Programmers#create-your-own-filters).
<div class="note">
<h5>ProTip™: Access the site object using Liquid</h5>
<p>

View File

@@ -3,36 +3,34 @@ title: Generators
permalink: /docs/plugins/generators/
---
You can create a generator when you need Jekyll to create additional content
based on your own rules.
You can create a generator when you need Jekyll to create additional content based on your own rules.
A generator is a subclass of `Jekyll::Generator` that defines a `generate`
method, which receives an instance of
[`Jekyll::Site`]({{ site.repository }}/blob/master/lib/jekyll/site.rb). The
return value of `generate` is ignored.
A generator is a subclass of `Jekyll::Generator` that defines a `generate` method, which receives an instance of
[`Jekyll::Site`]({{ site.repository }}/blob/master/lib/jekyll/site.rb). The return value of `generate` is ignored.
Generators run after Jekyll has made an inventory of the existing content, and
before the site is generated. Pages with front matter are stored as
instances of
[`Jekyll::Page`]({{ site.repository }}/blob/master/lib/jekyll/page.rb)
and are available via `site.pages`. Static files become instances of
Generators run after Jekyll has made an inventory of the existing content, and before the site is generated. Pages with
front matter are stored as instances of [`Jekyll::Page`]({{ site.repository }}/blob/master/lib/jekyll/page.rb) and are
available via `site.pages`. Static files become instances of
[`Jekyll::StaticFile`]({{ site.repository }}/blob/master/lib/jekyll/static_file.rb)
and are available via `site.static_files`. See
[the Variables documentation page](/docs/variables/) and
[`Jekyll::Site`]({{ site.repository }}/blob/master/lib/jekyll/site.rb)
for details.
and are available via `site.static_files`. See [the Variables documentation page](/docs/variables/) and
[`Jekyll::Site`]({{ site.repository }}/blob/master/lib/jekyll/site.rb) for details.
For instance, a generator can inject values computed at build time for template
variables. In the following example, the template `reading.html` has two
variables `ongoing` and `done` that are filled in the generator:
In the following example, the generator will inject values computed at build time for template variables. The template
named `reading.html` has two undefined variables `ongoing` and `done` that will be defined or assigned a value when
the generator runs:
```ruby
module Reading
class Generator < Jekyll::Generator
def generate(site)
ongoing, done = Book.all.partition(&:ongoing?)
book_data = site.data['books']
ongoing = book_data.select { |book| book['status'] == 'ongoing' }
done = book_data.select { |book| book['status'] == 'finished' }
reading = site.pages.detect {|page| page.name == 'reading.html'}
# get template
reading = site.pages.find { |page| page.name == 'reading.html'}
# inject data into template
reading.data['ongoing'] = ongoing
reading.data['done'] = done
end
@@ -40,42 +38,81 @@ module Reading
end
```
The following example is a more complex generator that generates new pages. In this example, the generator will create a series of files under the `categories` directory for each category, listing the posts in each category using the `category_index.html` layout.
The following example is a more complex generator that generates new pages.
In this example, the aim of the generator is to create a page for each category registered in the `site`. The pages are
created at runtime, so their contents, front matter and other attributes need to be designed by the plugin itself.
* The pages are intended to render a list of all documents under a given category. So the basename of the rendered file
would be better as `index.html`.
* Having the ability to configure the pages via [front matter defaults](/docs/configuration/front-matter-defaults/)
would be awesome! So assigning a particular `type` to these pages would be beneficial.
```ruby
module Jekyll
class CategoryPageGenerator < Generator
module SamplePlugin
class CategoryPageGenerator < Jekyll::Generator
safe true
def generate(site)
if site.layouts.key? 'category_index'
dir = site.config['category_dir'] || 'categories'
site.categories.each_key do |category|
site.pages << CategoryPage.new(site, site.source, File.join(dir, category), category)
end
site.categories.each do |category, posts|
site.pages << CategoryPage.new(site, category, posts)
end
end
end
# A Page subclass used in the `CategoryPageGenerator`
class CategoryPage < Page
def initialize(site, base, dir, category)
@site = site
@base = base
@dir = dir
@name = 'index.html'
# Subclass of `Jekyll::Page` with custom method definitions.
class CategoryPage < Jekyll::Page
def initialize(site, category, posts)
@site = site # the current site instance.
@base = site.source # path to the source directory.
@dir = category # the directory the page will reside in.
self.process(@name)
self.read_yaml(File.join(base, '_layouts'), 'category_index.html')
self.data['category'] = category
# All pages have the same filename, so define attributes straight away.
@basename = 'index' # filename without the extension.
@ext = '.html' # the extension.
@name = 'index.html' # basically @basename + @ext.
category_title_prefix = site.config['category_title_prefix'] || 'Category: '
self.data['title'] = "#{category_title_prefix}#{category}"
# Initialize data hash with a key pointing to all posts under current category.
# This allows accessing the list in a template via `page.linked_docs`.
@data = {
'linked_docs' => posts
}
# Look up front matter defaults scoped to type `categories`, if given key
# doesn't exist in the `data` hash.
data.default_proc = proc do |_, key|
site.frontmatter_defaults.find(relative_path, :categories, key)
end
end
# Placeholders that are used in constructing page URL.
def url_placeholders
{
:path => @dir,
:category => @dir,
:basename => basename,
:output_ext => output_ext,
}
end
end
end
```
The generated pages can now be set up to use a particular layout or output at a particular path in the destination
directory all via the config file using front matter defaults. For example:
```yaml
# _config.yml
defaults:
- scope:
type: categories # select all category pages
values:
layout: category_page
permalink: categories/:category/
```
## Technical Aspects
Generators need to implement only one method:
<div class="mobile-side-scroller">
@@ -99,6 +136,10 @@ Generators need to implement only one method:
</table>
</div>
If your generator is contained within a single file, it can be named whatever you want but it should have an `.rb` extension. If your generator is split across multiple files, it should be packaged as a Rubygem to be published at https://rubygems.org/. In this case, the name of the gem depends on the availability of the name at that site because no two gems can have the same name.
If your generator is contained within a single file, it can be named whatever you want but it should have an `.rb`
extension. If your generator is split across multiple files, it should be packaged as a Rubygem to be published at
https://rubygems.org/. In this case, the name of the gem depends on the availability of the name at that site because
no two gems can have the same name.
By default, Jekyll looks for generators in the `_plugins` directory. However, you can change the default directory by assigning the desired name to the key `plugins_dir` in the config file.
By default, Jekyll looks for generators in the `_plugins` directory. However, you can change the default directory by
assigning the desired name to the key `plugins_dir` in the config file.

View File

@@ -211,7 +211,7 @@ The complete list of available hooks:
<p><code>:post_convert</code></p>
</td>
<td>
<p>After converting the post content, but before rendering the postlayout</p>
<p>After converting the post content, but before rendering the post layout</p>
</td>
</tr>
<tr>
@@ -249,7 +249,7 @@ The complete list of available hooks:
## Hooks for custom Jekyll objects
You can also register and trigger hooks for Jekyll objects introduced by your plugin. All it takes is placing `trigger` calls under a suitable
`owner` name, at positons desired within your custom class and registering the `owner` by your plugin.
`owner` name, at positions desired within your custom class and registering the `owner` by your plugin.
To illustrate, consider the following plugin that implements custom functionality for every custom `Excerpt` object initialized:

View File

@@ -3,77 +3,125 @@ title: Plugins
permalink: /docs/plugins/installation/
---
You have 3 options for installing plugins:
Jekyll has built-in support for using plugins to extend the core functionality.
1. In your site source root, make a `_plugins` directory. Place your plugins
here. Any file ending in `*.rb` inside this directory will be loaded before
Jekyll generates your site.
Primarily, any file with extension `.rb` placed within a `_plugins` directory at the root of the site's `source`, will be automatically loaded
during a build session.
2. In your `_config.yml` file, add a new array with the key `plugins` (or `gems` for Jekyll < `3.5.0`) and the
values of the gem names of the plugins you'd like to use. An example:
This behavior can be configured as follows:
```yaml
# This will require each of these plugins automatically.
plugins:
- jekyll-gist
- jekyll-coffeescript
- jekyll-assets
- another-jekyll-plugin
```
- The `_plugins` directory may be changed either directly via the command-line or via the configuration file(s).
- Plugins in the `_plugins` directory (or its equivalent(s)) will not be loaded when Jekyll is running in `safe` mode.
- This route cannot be used to extend the Jekyll CLI.
Then install your plugins using `gem install jekyll-gist jekyll-coffeescript jekyll-assets another-jekyll-plugin`
To work with plugins packaged as gems, one has to list the desired gems in the configuration file under a top-level key named `plugins`.
Additionally, if you're building in `safe` mode, the gem needs to be listed under a top-level key named `whitelist`. For example:
3. Add the relevant plugins to a Bundler group in your `Gemfile`. An
example:
```yaml
plugins:
- jekyll-gist
- jekyll-coffeescript
- jekyll-seo-tag
- some-other-jekyll-plugin
```ruby
group :jekyll_plugins do
gem "jekyll-gist"
gem "jekyll-coffeescript"
gem "jekyll-assets"
gem "another-jekyll-plugin"
end
```
# Enable safe mode
safe: true
Now you need to install all plugins from your Bundler group by running single command `bundle install`.
# Whitelist plugins under safe mode.
# Note that `some-other-jekyll-plugin` is not listed here. Therefore,
# it will not be loaded under safe mode.
whitelist:
- jekyll-gist
- jekyll-coffeescript
- jekyll-seo-tag
```
In the absence of a Gemfile, one must manually ensure that listed plugins have been installed prior to invoking Jekyll. For example, the
latest versions of gems in the above list may be installed to a system-wide location by running:
```sh
gem install jekyll-gist jekyll-coffeescript jekyll-remote-theme some-other-jekyll-plugin
```
## Using a Gemfile
The maintenance of various gem dependencies may be greatly simplified by using a Gemfile (usually at the root of the site's source) in
conjunction with a Rubygem named `bundler`. The Gemfile however **should** list all the primary dependencies of your site, including Jekyll
itself, not just gem-based plugins of the site because Bundler narrows the scope of installed gems to just *runtime dependencies* resolved by
evaluating the Gemfile. For example:
```ruby
source "https://rubygems.org"
# Use the latest version.
gem "jekyll"
# The theme of current site, locked to a certain version.
gem "minima", "2.4.1"
# Plugins of this site loaded during a build with proper
# site configuration.
gem "jekyll-gist"
gem "jekyll-coffeescript"
gem "jekyll-seo-tag", "~> 1.5"
gem "some-other-jekyll-plugin"
# A dependency of a custom-plugin inside `_plugins` directory.
gem "nokogiri", "~> 1.11"
```
The gems listed in the Gemfile can be collectively installed by simply running `bundle install`.
### The `:jekyll_plugins` Gemfile group
{: #the-jekyll_plugins-group}
Jekyll gives a special treatment to gems listed as part of the `:jekyll_plugins` group in a Gemfile. Any gem under this group is loaded at
the very beginning of any Jekyll process, irrespective of the `--safe` CLI flag or entries in the configuration file(s).
While this route allows one to enhance Jekyll's CLI with additional subcommands and options, or avoid having to list gems in the configuration
file, the downside is the necessity to be mindful of what gems are included in the group. For example:
```ruby
source "https://rubygems.org"
# Use the latest version.
gem "jekyll"
# The theme of current site, locked to a certain version.
gem "minima", "2.4.1"
# Plugins of this site loaded only if configured correctly.
gem "jekyll-gist"
gem "jekyll-coffeescript"
# Gems loaded irrespective of site configuration.
group :jekyll_plugins do
gem "jekyll-cli-plus"
gem "jekyll-seo-tag", "~> 1.5"
gem "some-other-jekyll-plugin"
end
```
<div class="note info">
<h5>Plugins on GitHub Pages</h5>
<p>
<a href="https://pages.github.com/">GitHub Pages</a> is powered by Jekyll.
All Pages sites are generated using the <code>--safe</code> option
to disable plugins (with the exception of some
<a href="https://pages.github.com/versions">whitelisted plugins</a>) for
security reasons. Unfortunately, this means
your plugins wont work if youre deploying to GitHub Pages.<br><br>
You can still use GitHub Pages to publish your site, but youll need to
convert the site locally and push the generated static files to your GitHub
repository instead of the Jekyll source files.
<a href="https://pages.github.com/">GitHub Pages</a> is powered by Jekyll. All GitHub Pages sites are generated using the
<code>--safe</code> option to disable plugins (with the exception of some
<a href="https://pages.github.com/versions">whitelisted plugins</a>) for security reasons. Unfortunately, this means your plugins won't
work if youre deploying via GitHub Pages.<br><br>
You can still use GitHub Pages to publish your site, but you'll need to either build the site locally and push the generated files to
your GitHub repository or use
<a href="{{ '/docs/continuous-integration/github-actions/' | relative_url }}" title="GitHub Actions">GitHub Actions</a> to host source
files on GitHub yet build and deploy with full control on GitHub Pages.
</p>
</div>
<div class="note">
<h5>
<code>_plugins</code>, <code>_config.yml</code> and <code>Gemfile</code>
can be used simultaneously
<code>_plugins</code>, <code>_config.yml</code> and <code>Gemfile</code> can be used simultaneously
</h5>
<p>
You may use any of the aforementioned plugin options simultaneously in the
same site if you so choose. Use of one does not restrict the use of the
others.
You may use any of the aforementioned plugin routes simultaneously in the same site if you so choose.
Use of one does not restrict the use of the others.
</p>
</div>
### The jekyll_plugins group
Jekyll gives this particular group of gems in your `Gemfile` a different
treatment. Any gem included in this group is loaded before Jekyll starts
processing the rest of your source directory.
A gem included here will be activated even if its not explicitly listed under
the `plugins:` key in your site's config file.
{: .note .warning}
Gems included in the <code>:jekyll-plugins</code> group are activated
regardless of the <code>--safe</code> mode setting. Be aware of which
gems are included under this group!

View File

@@ -96,7 +96,7 @@ Linking to a PDF for readers to download:
## Displaying an index of posts
Creating an index of posts on another page should be easy thanks to
[Liquid](https://docs.shopify.com/themes/liquid/basics) and its tags. Heres a
[Liquid](https://shopify.github.io/liquid/) and its tags. Heres a
simple example of how to create a list of links to your blog posts:
{% raw %}
@@ -168,7 +168,7 @@ Categories of a post work similar to the tags above:
*The similarity between categories and tags however, ends there.*
Unlike tags, categories for posts can also be defined by a post's file path.
Any directory above `_post` will be read-in as a category. For example,
Any directory above `_posts` will be read-in as a category. For example,
if a post is at path `movies/horror/_posts/2019-05-21-bride-of-chucky.markdown`,
then `movies` and `horror` are automatically registered as categories for that
post.

36
docs/_docs/security.md Normal file
View File

@@ -0,0 +1,36 @@
---
title: Security Policy
permalink: "/docs/security/"
note: This file is autogenerated. Edit /.github/SECURITY.markdown instead.
---
## 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.

View File

@@ -3,60 +3,61 @@ layout: step
title: Setup
menu_name: Step by Step Tutorial
position: 1
redirect_from:
- /docs/step-by-step/
---
Welcome to Jekyll's step-by-step tutorial. The goal of this tutorial is to take
you from having some front end web development experience to building your
first Jekyll site from scratch — not relying on the default gem-based theme.
Let's get into it!
Welcome to Jekyll's step-by-step tutorial. This tutorial takes
you from having some front-end web development experience to building your
first Jekyll site from scratch without relying on the default gem-based theme.
## Installation
Jekyll is a Ruby program so you need to install Ruby on your machine to begin
with. Head over to the [install guide](/docs/installation/) and follow the
Jekyll is a Ruby gem. First, install Ruby on your machine.
Go to [Installation]({{ '/docs/installation/' | relative_url }}) and follow the
instructions for your operating system.
With Ruby setup you can install Jekyll by running the following in your
terminal:
With Ruby installed, install Jekyll from the terminal:
```sh
gem install jekyll bundler
```
To create a new `Gemfile` to list your project's dependencies run:
Create a new `Gemfile` to list your project's dependencies:
```sh
bundle init
```
Now edit the `Gemfile` and add jekyll as a dependency:
Edit the `Gemfile` in a text editor and add jekyll as a dependency:
```ruby
gem "jekyll"
```
Finally run `bundle` to install jekyll for your project.
Run `bundle` to install jekyll for your project.
You can now prefix all jekyll commands listed in this tutorial with `bundle exec`
to make sure you use the jekyll version defined in your `Gemfile`.
## Create a site
It's time to create a site! Create a new directory for your site, you can name
it whatever you'd like. Through the rest of this tutorial we'll refer to this
directory as root.
It's time to create a site! Create a new directory for your site and name
it whatever you want. Through the rest of this tutorial we'll refer to this
directory as **root**.
You can also initialize a Git repository here.
If you're feeling adventurous, you can also initialize a Git repository here.
One of the great things about Jekyll is there's no database. All content and
site structure are files which a Git repository can version. Using a repository
is completely optional but it's a great habit to get into. You can learn more
about using Git by reading through the
site structure are files that a Git repository can version. Using a repository
is optional but is recommended. You can learn more
about using Git by reading the
[Git Handbook](https://guides.github.com/introduction/git-handbook/).
Let's add your first file. Create `index.html` in the root with the following
Let's add your first file. Create `index.html` in **root** with the following
content:
```html
<!doctype html>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
@@ -70,22 +71,33 @@ content:
## Build
Jekyll is a static site generator so we need Jekyll to build the site
before we can view it. There are two commands you can run in the root of your site
to build it:
Since Jekyll is a static site generator, it has to build the site
before we can view it. Run either of the following commands to build your site:
* `jekyll build` - Builds the site and outputs a static site to a directory
called `_site`.
* `jekyll serve` - Does the same thing except it rebuilds any time you make
a change and runs a local web server at `http://localhost:4000`.
* `jekyll serve` - Does `jekyll build` and runs it on a local web server at `http://localhost:4000`, rebuilding the site any time you make a change.
{: .note .info}
When you're developing a site, use `jekyll serve`. To force the browser to refresh with every change, use `jekyll serve --livereload`.
If there's a conflict or you'd like Jekyll to serve your development site at a different URL, use the `--host` and `--port` arguments,
as described in the [serve command options]({{ '/docs/configuration/options/#serve-command-options' | relative_url }}).
{: .note .warning}
The version of the site that `jekyll serve` builds in `_site` is not suited for deployment. Links and asset URLs in sites created
with `jekyll serve` will use `https://localhost:4000` or the value set with command-line configuration, instead of the values set
in [your site's configuration file]({{ '/docs/configuration/' | relative_url }}). To learn about how to build your site when it's
ready for deployment, read the [Deployment]({{ '/docs/step-by-step/10-deployment/' | relative_url }}) section of this tutorial.
When you're developing a site you'll use `jekyll serve` as it updates with any
changes you make.
Run `jekyll serve` and go to
<a href="http://localhost:4000" target="_blank" data-proofer-ignore>http://localhost:4000</a> in
your browser. You should see "Hello World!".
Well, you might be thinking what's the point in this? Jekyll just copied an
HTML file from one place to another. Well patience young grasshopper, there's
At this point, you might be thinking, "So what?". The only thing that happened was that Jekyll copied an
HTML file from one place to another.
Patience, young grasshopper, there's
still much to learn!
Next. you'll learn about Liquid and templating.

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