Commit Graph

287 Commits

Author SHA1 Message Date
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
Parker Moore bd907c5be6 Remove duplicate regexp phrase: ^\A.
Addresses @mastahyeti's comment in #3077: https://github.com/jekyll/jekyll/pull/3077#discussion_r20077150
2014-11-10 11:36:05 -08:00
Parker Moore 067f8b6be7 Strip the drive name from both paths when checking the prefix. 2014-11-08 13:10:28 -08:00
Parker Moore 5b54f78875 Allow users to specify the log level via JEKYLL_LOG_LEVEL. 2014-11-06 12:03:07 -08:00
Parker Moore 4bccbdead4 If no overrides are passed in, just default to a Hash. 2014-11-03 22:16:48 -08:00
Parker Moore 461e16f8bc More tests are passing. Hooray. 2014-11-03 22:15:40 -08:00
Parker Moore bd72265e74 Reformat the Jekyll module's static methods. 2014-11-03 22:15:40 -08:00
Parker Moore 4c4f803df2 Remove preemptive loading of the 'classifier' gem. 2014-08-05 16:47:30 -04:00
Parker Moore a97ae67552 Gracefully require 2014-07-12 13:46:49 -07:00
Parker Moore 4cc6a0f263 Mark certain gems as eventually-non-core. 2014-07-12 13:08:35 -07:00
Parker Moore 879abc0949 Externalize the {% gist %} tag as the jekyll-gist gem. 2014-06-01 13:18:00 -04:00
Parker Moore 83fb1fd0f6 Merge pull request #2444 from createdbypete/configurable-logger 2014-05-30 18:16:47 -04:00
Parker Moore 9e4ef3cbff Add the paginator as a plugin: jekyll-paginate 2014-05-26 20:09:33 -04:00
Peter Rhoades e6345f39a9 Renaming LogWriter to LogAdapter and adding tests for class
String coloring moved to Stevenson as not responsibility of LogAdapter
2014-05-24 21:22:10 +01:00
Peter Rhoades 4a73e099b7 Allow Jekyll's logger to be set to any Logger compatible instance
* Stevenson now inherits from Logger and extends some methods to use $stderr
for log messages greater than info level.
* LogWriter provides an interface between Jekyll and Logger to maintain API.
2014-05-24 15:00:14 +01:00
Jordon Bedwell 1c11afd78d Fix #2413 and setup a Jekyll.env. 2014-05-15 16:28:37 -05:00
Parker Moore 64cce065e6 Require kramdown instead of maruku.
CRAP CRAP CRAP whoops.
2014-05-06 21:55:11 -04:00
Parker Moore 4de2be8c5f Add Jekyll::LiquidExtensions.lookup_variable
To use, just include `Jekyll::LiquidExtensions` as you please:

```ruby
class SayHi < Liquid::Tag
  include Jekyll::LiquidExtensions

  def initialize(tag_name, markup, tokens)
    @markup = markup.strip
  end

  def render(context)
    "hi #{lookup_variable(context, @markup)}"
  end
end
```

Fixes #2071.
2014-04-22 14:27:47 -04:00
Parker Moore 9db5a1a6ce Merge pull request #2205 from jekyll/maul-esel-frontmatter-defaults 2014-04-21 23:01:05 -04:00
Parker Moore 75f49a751e OMG COLLECTIONS ARE RENDERING CALL THE POLICE 2014-04-14 22:46:21 -04:00
Parker Moore 50b46d7bee OMG it's happening ~*Collections*~ 2014-04-14 22:44:29 -04:00
Parker Moore a77c92aebe Replace load-in of YAML data with Jekyll::Document logic.
COLLECTIONS IS COMING
2014-04-14 22:43:09 -04:00
maul.esel 26663a6cf9 add the Publisher class to handle publishing logic 2014-04-07 16:17:51 +02:00
Parker Moore 6bd07501e8 Merge branch 'frontmatter-defaults' of git://github.com/maul-esel/jekyll into maul-esel-frontmatter-defaults
* 'frontmatter-defaults' of git://github.com/maul-esel/jekyll:
  move self.type to convertible
  oops, fix minor indentation quirk
  document frontmatter defaults precedence
  adjust frontmatter defaults precedence handling
  change cucumber feature to test for precedence too
  fix frontmatter defaults for custom paths
  more robust cucumber features
  fix slash handling for paths
  move cucumber features to own file
  fix minor docs quirk
  improve path checking, now using Pathname instead of regex
  Add site documentation for the new feature
  add inline code docs
  improve validation code
  fix for Ruby 1.8
  Add basic cucumber features for frontmatter defaults
  Retrieve frontmatter defaults when retrieved internally
  make frontmatter defaults available to liquid
  add a class `FrontmatterDefaults` for handling of frontmatter defaults
  Add a method to retrieve type to post, page and draft

Conflicts:
	lib/jekyll.rb
	lib/jekyll/convertible.rb
	lib/jekyll/core_ext.rb
	lib/jekyll/page.rb
	lib/jekyll/post.rb
2014-04-04 15:32:27 -04:00
Parker Moore 5d761a1c2b Require 'plugin_manager' in lib/jekyll.rb 2014-04-01 18:44:37 -04:00
Parker Moore 009e2c200d Only strip the drive name if it begins the string. 2014-03-27 18:19:35 -04:00
Matt Rogers 19dc855551 Properly strip drive name from clean path when sanitizing path. 2014-03-10 14:35:19 -04:00
Parker Moore 37c2da5062 Properly clean path for Windows machines which is *nix-compliant. 2014-03-09 21:12:34 -04:00
Parker Moore 7787d64bce Rename those Utils functions. 2014-03-04 15:52:05 -05:00
Parker Moore e2af1b547b Extract core extensions into a Utils module
Fixes #2111
2014-03-03 22:13:03 -05:00
Parker Moore 0633cbf8fa Bring in jekyll-sass-converter 2014-02-28 21:20:20 -05:00
Parker Moore 9ffb984f37 Sass support should be shipped outside core. 2014-02-28 21:12:00 -05:00
Parker Moore 8a0d036b87 Greatly simplify Jekyll's gemspec. 2014-02-24 16:15:51 -05:00
Parker Moore 57d07469d3 Sanitize paths uniformly, in a Windows-friendly way.
Fixes kinda a #1948 thing.
Related to #1946.
2014-02-23 20:05:23 -05:00
Parker Moore 88e35f0852 Release 2.0.0.alpha.1 2014-02-13 18:02:49 -05:00
Parker Moore 56a633ae95 Update Jekyll version to latest released.
Latest release can be found on the v1-stable branch.
2014-02-09 18:44:30 -05:00
Matt Rogers f581940c71 Create a LayoutReader class to read layouts 2014-02-06 22:22:06 -06:00
Matt Rogers 5edb4c6bfd Merge pull request #1982 from dtao/safe-yaml-no-clobber 2014-01-31 06:48:16 -08:00
Parker Moore fdbfd719ca Add CoffeeScript converter. 2014-01-25 20:38:51 -05:00
Dan Tao 4f0b1bdf6d switched from YAML.safe_load* to SafeYAML.load* 2014-01-23 17:25:17 -08:00
Parker Moore 824a84ef2a Add support for Sass and SCSS. 2014-01-12 21:30:29 -08:00
Matt Rogers 350c9b3ab5 bump the version number in the code 2013-12-07 17:59:16 -06:00
maul.esel f1869cda98 Merge branch 'master' into frontmatter-defaults 2013-12-05 19:29:57 +01:00
Parker Moore b8bbc6e08b require the TOML gem, idiot. 2013-11-29 23:33:38 -05:00
Matt Rogers 91a4c5611e Prep for the 1.3.1 release 2013-11-26 20:27:27 -06:00
Matt Rogers 63713799cd Extract Site#filter_entries into its own class 2013-11-04 21:35:13 -06:00
Matt Rogers 65653fed84 Bump version to 1.3.0 2013-11-03 21:48:34 -06:00
Matt Rogers 9f63ddb4db Prepare for a 1.3.0.rc release 2013-10-28 20:26:36 -05:00
maul.esel 20ea0c8d56 Merge branch 'master' into frontmatter-defaults 2013-10-14 19:44:06 +02:00
Matt Rogers 454e038fad Require 'pathname' 2013-09-16 20:29:57 -05:00
Parker Moore 6f053fbc8c Update gemspec & version to v1.2.1 2013-09-14 20:59:06 -04:00
maul.esel b3fdaa9792 add a class `FrontmatterDefaults` for handling of frontmatter defaults 2013-09-11 00:55:28 +02:00
Parker Moore afe1291f0c Update Jekyll::VERSION 2013-09-06 22:23:31 -04:00
Parker Moore 0d890e4b70 Merge pull request #944 from x3ro/permalink-special-characters
WIP - Improve permalink generation for URLs with special characters
2013-08-28 15:02:20 -07:00
maul.esel 5da13d2b66 Refactor `Site#cleanup`
Move the cleanup logic out into a separate class,
`Jekyll::Cleaner`.
2013-08-17 17:14:08 +02:00
Lucas Jenss 41b2f0824e Merge branch 'master' of https://github.com/mojombo/jekyll into permalink-special-characters 2013-07-25 21:33:55 +02:00
Parker Moore 0db5dcf832 Release 1.1.2 2013-07-25 09:15:34 +02:00
Parker Moore fe10f21d8d Release 1.1.1 2013-07-24 22:42:03 +02:00
Lucas Jenss 2ac98a7358 Merge branch 'master' into permalink-special-characters
Conflicts:
	lib/jekyll/page.rb
	lib/jekyll/post.rb
2013-07-14 23:58:22 +02:00
Parker Moore d572e588e8 Release 1.1.0 2013-07-14 19:52:44 +02:00
Parker Moore 015ace6773 Shuffle around rendering of extracted excerpt so it can be liquified. 2013-07-13 16:18:20 +02:00
Parker Moore 700d840a06 Release 1.0.3 2013-06-07 21:02:13 +02:00
Parker Moore 14a4e32bbe Use singleton instance variable instead of class variable 2013-05-29 12:04:50 +02:00
Parker Moore 1f59e9c757 Use Jekyll.logger instead of Jekyll::Stevenson to log things. 2013-05-29 11:58:35 +02:00
Parker Moore ef48cbefec Merge pull request #1057 from mojombo/refactor-related-posts
Move the building of related posts into their own class
2013-05-15 07:25:53 -07:00
Parker Moore 5258e3afa3 Logger ~> Stevenson and don't inherit from Ruby Logger. #1106. 2013-05-15 15:15:00 +02:00
Matt Rogers ff600bfcd9 Merge branch 'master' into refactor-related-posts 2013-05-14 21:54:12 -05:00
Parker Moore 8051df0f4c Release 1.0.2 2013-05-12 15:26:45 +02:00
Matt Rogers 64f8a7b228 Move the require for related_posts to jekyll.rb 2013-05-08 07:39:00 -05:00
Parker Moore c758f8d24f Release 1.0.1 2013-05-08 01:03:14 +02:00
Parker Moore 06beb4b72b Bump version for 1.0.0. 2013-05-05 23:02:45 +02:00
Parker Moore 3c218d2dcd Only require pygments where it's needed. 2013-05-04 15:04:57 +02:00
Parker Moore c0c0150bb5 Release 1.0.0.rc1 2013-04-16 00:47:31 +02:00
Parker Moore b4f68baafb Jekyll.set_timezone accepts just the timezone, not the config 2013-04-15 15:39:36 +02:00
Parker Moore b249289b9d Set the timezone for the process 2013-04-15 00:42:13 +02:00
Parker Moore 398cd633b6 Merge pull request #959 from mojombo/deprecator
Refactor Logging and Deprecation Messaging
2013-04-14 11:05:07 -07:00
Parker Moore 4ef107f3e8 Remove Logger methods from main Jekyll module. 2013-04-14 19:27:19 +02:00
Parker Moore 81e44bf5f4 Merge pull request #955 from mojombo/refactor-markdown
Refactor Markdown Parser Logic
2013-04-13 20:25:37 -07:00
Parker Moore 7a7990fb9a Moved markdown converters into lib/jekyll/converters/markdown 2013-04-14 05:23:42 +02:00
Parker Moore b99baeae27 Colorize warns as yellow 2013-04-13 19:58:41 +02:00
Parker Moore c5f6e527b5 Bring Logger and Deprecator into the fold 2013-04-13 18:05:03 +02:00
Parker Moore 63cdd21353 Move initialization of parsers to separate classes 2013-04-13 01:47:40 +02:00
Parker Moore bd8d271ce3 Moving the backwards-compatibilizing to Configuration#read_config_files. @mattr- 2013-04-12 23:11:38 +02:00
Parker Moore e2967c96cd Jekyll.configuration should use the new Jekyll::Configuration class 2013-04-12 21:20:30 +02:00