Commit Graph

270 Commits

Author SHA1 Message Date
Parker Moore
7cf5f51ca2 Enforce Style/FrozenStringLiteralComment. (#6265)
Merge pull request 6265
2017-08-03 21:27:32 -04:00
Bogdan
8f1959bbc4 Define path with __dir__ (#6087)
Merge pull request 6087
2017-07-25 19:20:20 -04:00
Ashwin Maroli
f8456e02c1 narrow it down to only Windows 2016-12-06 15:38:18 +05:30
Ashwin Maroli
c4142c4c77 add a utility submodule to define 'TZ' on Windows 2016-12-06 15:38:18 +05:30
jekyllbot
275f5a6209 Merge pull request #5256 from kwokfu/patch-1
Merge pull request 5256
2016-10-05 11:34:06 -07:00
Mark H. Wilkinson
a0a351aa7a Remove autoload of Draft which no longer exists. 2016-10-03 22:21:35 +01:00
Heng Kwokfu
db53213d16 Merge remote-tracking branch 'jekyll/master' into patch-1 2016-09-24 08:46:24 +08:00
Parker Moore
13aec48137 Add ThemeAssetsReader which reads assets from a theme
If the theme includes the 'assets' directory, it will be walked and items will be added to the site based
on the normal rules of Jekyll: if there is YAML front matter, it will be added as a (convertible) Page,
otherwise it will be added as a StaticFile.
2016-09-16 14:41:36 -07:00
Heng, K. (Stephen)
7892c5e1f3 Fix issue #5276, where path strips root destination dir if filename matches 2016-08-25 18:35:09 +08:00
Heng, K. (Stephen)
596f5d1af3 Proposed fix for #5192
Strip drive name only when necessary.
2016-08-18 12:02:00 +08:00
Marcus Stollsteimer
1c0f21230d Stringify configuration overrides before first use
This makes sure that overrides for Jekyll.configuration
all have string keys before their first use, particularly
also the "config" and "skip_config_files" options.
2016-07-08 15:47:26 +02:00
Praveen Kumar
712e77abd2 lib/jekyll.rb - fix offenses reported by rubocop
method set_timezone is ignored using rubocop:disable Style/AccessorMethodName
2016-06-03 09:45:15 +05:30
jekyllbot
dc5fd15f71 Merge pull request #4944 from pathawks/fp/sort-includes
Merge pull request 4944
2016-05-25 15:46:50 -07:00
Parker Moore
ad7bd84098 lib/jekyll.rb: require document_drop to ease our pain 2016-05-24 19:03:32 -05:00
Parker Moore
1a05483a63 Sort the results of the require_all glob.
Filesystems behave differently when performing glob listings.

In my environment, they are listed alphabetically. On my Mac, when asking for a list of files in a directory, those files are returned as a nicely sorted list. Alphabetized, like you'd want them to be. Like you'd expect them to be.

In some environments, quite different from my own, the return of a similar operation is quite random. Perhaps q comes before a, or e before d; the filesystem will choose its order of the day and you, the fare user, tired and weary from work, must bare the brunt of this.

And so, with this commit, I do hereby request that the noble makers of Dir[] provide for us, the downtrodden and ravaged users, some consistency. As a user of Ruby, I shouldn't have to know or consider the behaviour of an individual filesystem here; it should function the same for all filesystems.

Truly yours,
Parker
2016-05-24 19:03:32 -05:00
Parker Moore
de5970ae55 Fix some minor things in the tests 2016-05-24 18:49:05 -05:00
Parker Moore
d01f7943de Add Configuration.from & use in Jekyll.configuration.
This process streamlines the creation of new configurations. Creating a new
site will choke if not all the correct options are given.
Configuration.from will ensure the overrides have all string keys and
ensures all the common issues & defaults are in place so a Site can be
created.

A common use:

    config = Configuration.from({ 'permalink' => '/:title/' }) # etc
    site = Jekyll::Site.new(config)
2016-05-24 18:47:15 -05:00
Parker Moore
fab092fcec Remove use of Marshal in runtime code. 2016-05-24 18:47:15 -05:00
Parker Moore
04d4473119 Use Marshal to duplicate configuration defaults to prevent manipulation 2016-05-24 18:47:14 -05:00
Parker Moore
e3df910533 Add more template files and add a ThemeBuilder which can create the site 2016-05-16 10:53:55 -07:00
Jordon Bedwell
3751b47c50 Cleanup EntryFilter and make it far more robust.
* Allow users to filter directories by ending their path with "/"
* Allow users to filter with a Regexp, some scenariors can really require it.
* Use Pathutil#in_path? for Symlink verification, it real/expand.

This also requires some downstream work in "jekyll-watch" which at this time is
not very robust, it doesn't recognize the difference either, and should probably
start doing so (what I mean is detecting "/" and using the full path.)
2016-05-10 20:01:02 -05:00
Parker Moore
42cc2445a5 Merge branch 'master' into themes
* master: (58 commits)
  Update history to reflect merge of #4792 [ci skip]
  Update history to reflect merge of #4793 [ci skip]
  Update history to reflect merge of #4804 [ci skip]
  Update history to reflect merge of #4754 [ci skip]
  Update history to reflect merge of #4813 [ci skip]
  Added missing single quote on rsync client side command
  Add v3.0.4 and v3.1.3 to the history.
  Fixed typo
  Add jekyll-autoprefixer plugin
  Explicitly require Filters rather than implicitly.
  Update history to reflect merge of #4786 [ci skip]
  Update history to reflect merge of #4789 [ci skip]
  updates example domain in config template
  Globalize Jekyll's Filters.
  Update JRuby to 9.0.5.0; Drop the double digit test.
  Update Rack-Jekyll Heroku deployment blog post url
  convertible: use Document::YAML_FRONT_MATTER_REGEXP to parse transformable files
  Update history to reflect merge of #4734 [ci skip]
  Update history to reflect merge of #4478 [ci skip]
  Fix rubocop warning.
  ...
2016-04-21 11:43:35 -07:00
Jordon Bedwell
27366f2e30 Explicitly require Filters rather than implicitly. 2016-04-15 12:02:25 -05:00
Ben Balter
91b348966e add theme class 2016-02-26 14:25:29 -05:00
Parker Moore
a040af37c0 Jekyll.sanitized_path: sanitizing a questionable path should handle tildes 2016-02-07 17:53:26 -08:00
Pat Hawks
be3666fcf0 Rubocop: Do not use unless with else
- Rewrite these with the positive case first
2016-01-04 11:51:14 -08:00
Pat Hawks
cda226de45 Rubocop: Style/EmptyLinesAroundClassBody
- Extra empty line detected at class body end
2016-01-03 15:55:33 -08:00
Pat Hawks
6550867051 Rubocop: Style/SpecialGlobalVars
- Prefer $LOAD_PATH over $:
2016-01-03 15:29:49 -08:00
Pat Hawks
31dd0ebed5 Rubocop: Style/EmptyLiteral
- Use array literal [] instead of Array.new
 - Use hash literal {} instead of Hash.new
2016-01-03 14:39:01 -08:00
Jordon Bedwell
f2f88dbd9f Move require "jekyll/drops/drop" to "jekyll.rb"
Linux does not read files in alphanumeric order, this can lead to
Jekyll drops not working on Linux because the assumption here is that
the collection drop will be required first.
2015-12-27 12:48:21 -06:00
Parker Moore
b70ea3ca5c immutable_drop/errors: consolidate errors & fix syntax for raising
Addresses @envygeeks's comments:
bff1726a5a
2015-12-26 12:27:07 -05:00
Parker Moore
debdb15171 Move 'forwardable' require to earlier in the program start up. 2015-12-25 22:45:51 -05:00
Parker Moore
bff1726a5a immutable_drop: use custom error for bad set 2015-12-24 15:06:32 -05:00
Parker Moore
82c3ee365f Initial work on using Liquid::Drops instead of Hashes.
The properties of Liquid::Drops are only evaluated when they're asked for
and therefore save computation time. This prevents a lot of GC time cleaning
up objects that are not needed, because they're not created unless requested.
Additionally, this saves time for actual computation of those values because
they can be computed only if needed.

It's funny how much it helps when you only do what is needed. Far less overhead.
2015-12-21 22:47:30 -05:00
Larry Fox
246ff3f9b6 Remove Post autoload
Seems like this got missed. Referencing `Jekyll::Post` results in a `LoadError`
2015-11-11 11:55:54 -05:00
Parker Moore
b89f943bf2 collections: posts as collection 2015-10-26 00:29:14 -07:00
Florian Weingarten
1e9163fdf4 Liquid profiler 2015-06-07 16:38:05 +00:00
Stephen Crosby
6ca9633354 prototype of jekyll hooks, encapsulated 2015-05-01 14:35:15 -07:00
Martin Jorn Rogalla
63a1ec8949 Made corrections as suggested by @mattr-.
- Corrected TomDoc, added variables and fixed typos.
 - deprecated_rel_permalink -> relative_permalinks_are_deprecated.
 - Grouped calls together in @reader.read.
 - Removed dynamic and static reader subdirectories.
 - Removed unnecessary move of limit_posts.

Signed-off-by: Martin Jorn Rogalla <martin@martinrogalla.com>
2015-03-20 12:41:19 +01:00
Martin Rogalla
324748a5a6 Added corrections as suggested by @parkr.
- Replaced occurrences of #array += with concat
   operations.(performance)
 - Corrected alignment.
 - Removed rebase artifact.

Signed-off-by: Martin Rogalla <martin@martinrogalla.com>
2015-03-19 14:56:46 +01:00
Martin Jorn Rogalla
00cdcbc184 Separated some more readers from the main reader.rb file.
- Draft Reader
 - Collection Reader
 - Page Reader
 - Post Reader
 - Static File Reader

Fixed references and ran tests.

Signed-off-by: Martin Jorn Rogalla <martin@martinrogalla.com>
2015-03-06 17:20:25 +01:00
Martin Jorn Rogalla
bebd80342e Extracted draft, post reader into external classes.
Organized the draft, post and layout reader into the *readers* classes.
Fixed all references and ran tests.

Signed-off-by: Martin Jorn Rogalla <martin@martinrogalla.com>
2015-03-06 12:39:50 +01:00
Martin Jorn Rogalla
bb9d43dff5 Extracted in_source_dir from site.rb and into reader.rb.
Extracted `in_source_dir` from site.rb into reader.rb.
Updated all the references and tests.

Signed-off-by: Martin Jorn Rogalla <martin@martinrogalla.com>
2015-03-04 19:16:03 +01:00
Parker Moore
65d43ef398 Move previous runtime dependencies to development dependencies. 2015-01-31 13:53:17 -08:00
Alfred Xing
fe5f0d124c Move all regenerate? checking to Regenerator 2015-01-18 11:05:06 -08:00
Parker Moore
c576d23908 Use External instead of Deprecator for requiring gracefully 2014-12-28 14:37:49 -05:00
Parker Moore
b68dd3a5cb Add liquid c if it's available. 2014-12-26 21:53:56 -05:00
Parker Moore
70a331d854 Set the error mode to :strict 2014-12-26 21:53:56 -05:00
Alfred Xing
dc30114605 Use site.in_source_dir 2014-11-23 16:16:19 -08:00
Alfred Xing
11917645f2 Incremental regeneration 2014-11-21 22:12:20 -08:00