Gemfile:
- Upgrade to Jekyll 3.x (3.0.1 tested). This brings several new
features I want to use, most notably *collections* which allows us
to add blog-like collections. I've converted the `_releases` and
`_alerts` pages into collections, although their plugins are
maintained to handle the Download and Active Alert features.
- Upgrade to latest Kramdown.
- Lock Less at 2.4.0. This prevents breaking our Less plugin. Jekyll
3.x provides native support for SCSS, so we may want to switch to
that in time.
- Lock HTML Proofer at 2.1.0. The most recent version was taking
forever to check our pages (I never actually got it to complete).
I'll look into it when I get more time.
Makefile:
- New `make clean` command. Jekyll 3.x by default attempts to do
incremental rebuilds. The new `jekyll clean` command cleans up the
metadata necessary for than so that a full build is performed, and
this new `make clean` command is a wrapper around it so that we
automatically do full rebuilds in the relevant cases. Note: our
plugins aren't fully compatible with the incremental rebuilds, but
I'd like to fix that in the future.
- Remove WEBrick hack to enable previewing with default URL paths (/
instead of /index.html).
- Filter out compliants from Rouge
README.md:
- Now that Alerts (_alerts) are part of a collection, the file names
are no longer parsed for dates, so instructions on adding the date
to the YAML metadata have been added.
_alerts/*:
- Now that alerts are part of a collection, the file names are no
longer parsed to provide dates, so a `date:` field has been added to
the YAML metadata.
_config.yml:
- Some variables renamed per upgrade instructions.
- Switched from old default syntax highlighter Pygments to new default
Rouge. I tried to use Rouge options to keep new output as similar
to old output as possible to making diffing easy, but Rouge adds
extra CSS class info.
- Move `_alerts` and `_releases` into Jekyll 3.x "collections", which
provide the organizational features we were using plugins to
manange. I haven't removed the old plugins because we still use
some of their features (alerts.rb provides active issue and banner
features; releases.rb provides info to Download page)
- _layouts/* can no longer provide default global metadata; that is now
provided in the new `defaults:` section in _config.yml.
_layouts/*:
- Default metadata can no longer be provided in the layout files for
collections, so I've removed it and left a message to see
_config.yml.
_plugins/*:
- Remove filter_for.rb. It's completely broken on Jekyll 3.x because
of changes to Liquid which prevent adding new arguments to the
inherited Liquid::For class. Existing uses of filter_for have been
migrated to built-in for loops prefaced by sorts.
- Remove remove-html-extension.rb: at it said in the comments, this
was a temporary hack to get us to Jekyll 3.0.
_releases/*:
- Rename all the files: prefix a v to the file name so the output html
(e.g. v10.0.0.html) is the same as the source filename (e.g.
v10.0.0.md). This is necessary to migrate them to a Jekyll collection.
- Remove %v from titles: we have to explicitly set the title, like we
used to. Again required for migration to collections.
_templates/events.html & en/rss/events.rss:
- Sort events by date and then loop with regular for loop rather than
filter_for
en/alerts.html & en/rss/alerts.rss:
- Sort alerts by date and then loop with regular for loop rather than
filter_for
en/bitcoin-core/index.md & en/version-history.html & en/rss/releases.rss:
- Sort alerts by date and then loop with regular for loop rather than
filter_for
34 lines
1.2 KiB
Ruby
34 lines
1.2 KiB
Ruby
source 'https://rubygems.org'
|
|
|
|
## If you update the version here, also update it in .travis.yml and
|
|
## README.md. Then push your branch and make sure Travis supports that
|
|
## version. Then remind one of the site maintainers that they need to
|
|
## run `rvm install <VERSION>` on the build server(s) before they commit
|
|
## to master
|
|
ruby '2.0.0'
|
|
|
|
## Used on the build server. If you add a package here (like nokogiri)
|
|
## that has non-Gem dependencies (like zlib), please remind the site
|
|
## maintainers that they need to manually update the build server(s)
|
|
## before they commit to master. If `bundle install` can satisfy all
|
|
## your dependencies, then nothing extra needs to be done
|
|
group :development do
|
|
gem 'ffi-icu'
|
|
## When we upgrade to Jekyll 3.0.0 or higher, remove
|
|
## _plugin/remove-html-extension.rb
|
|
gem 'jekyll', '~>3.0'
|
|
gem 'json'
|
|
gem 'less', '2.4.0'
|
|
gem 'kramdown'
|
|
gem 'RedCloth'
|
|
gem 'therubyracer' # required by less
|
|
gem 'jshintrb', '~>0.3.0'
|
|
end
|
|
|
|
## Not used on build server. Only used by developers and Travis CI, so
|
|
## you can put whatever you want here and bundler will tell us humans to
|
|
## install the new Gems.
|
|
group :slow_test do
|
|
gem 'html-proofer', '2.1.0'
|
|
end
|