Commit Graph

328 Commits

Author SHA1 Message Date
Parker Moore 0c0aea3ad7 Improve Site#getConverterImpl and call it Site#find_converter_instance 2014-12-28 14:12:09 -05:00
Parker Moore 2f8248a6f1 Only call #site_payload once for all collection work. 2014-12-26 22:24:18 -05:00
Parker Moore 0eb2796a66 Sort static files just once.
Ref: #2075.
2014-12-26 22:23:45 -05:00
Alfred Xing d0e12d69bc Last few revisions 2014-11-28 14:05:40 -08:00
Alfred Xing 8a257aca6b Implement more suggestions 2014-11-26 20:15:42 -08:00
Alfred Xing dc30114605 Use site.in_source_dir 2014-11-23 16:16:19 -08:00
Alfred Xing 2a5cf11ee2 Add --no-metadata option 2014-11-23 15:38:00 -08:00
Alfred Xing ac03af3229 Implement @mattr-'s suggestions 2014-11-21 22:12:21 -08:00
Alfred Xing fe6bfc6f1b Fix failing tests 2014-11-21 22:12:21 -08:00
Alfred Xing d438362971 Add regenerate front-matter variable 2014-11-21 22:12:21 -08:00
Alfred Xing 11917645f2 Incremental regeneration 2014-11-21 22:12:20 -08:00
Parker Moore 90cddade53 Commit the paths one by one to Jekyll.sanitized_path with the proper initial base.
Prevents errors like these:

[39/78] TestPost#test_: A Post processing posts should not be writable outside of destination. /Users/parker/jekyll/jekyll/test/dest
/Users/parker/jekyll/jekyll/test/dest/Users/parker/jekyll/baddie.html
 = 0.01 s
  1) Failure:
TestPost#test_: A Post processing posts should not be writable outside of destination.  [/Users/parker/jekyll/jekyll/test/test_post.rb:152]:
Failed assertion, no message given.
2014-11-03 22:27:55 -08:00
Parker Moore 68e9c84a18 Flatten paths sent into `#in_dest_dir` 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 0bc88975c8 More removal of File.join 2014-11-03 22:15:40 -08:00
Parker Moore 3a3be7e5a7 Add Site#in_dest_dir 2014-11-03 22:15:40 -08:00
Parker Moore 7e1cc4b684 Add Site#in_source_dir 2014-11-03 22:15:40 -08:00
Parker Moore 0f2a3a606b Append the site to Jekyll.sites upon creation 2014-11-03 22:15:40 -08:00
Parker Moore 314dce62cf Make Site.source and Site.dest "immutable" 2014-11-03 22:15:40 -08:00
James Smith cccfda7de8 hashrockets in CSV loading 2014-08-17 08:34:38 +01:00
James Smith 866935dadf map with proc for CSV loading 2014-08-16 20:26:29 +01:00
James Smith 687176e22c Autoload csv files from data directory 2014-08-16 14:54:14 +01:00
Parker Moore 530e049d2d Read in static files info `collection.files` as `StaticFile`s. 2014-08-12 15:59:45 -04:00
Parker Moore 68fb130fd0 Add magic comments for UTF-8 2014-08-10 16:16:48 -04:00
Alfred Xing d5322a73bf Move instances of `Time.parse` into a Utils method 2014-08-02 09:38:50 -07:00
Parker Moore c7cc36abdb Put errors/exceptions into Jekyll::Errors module 2014-07-12 13:47:59 -07:00
Parker Moore a66d96ce0a Use Jekyll.sanitized_path more. 2014-07-01 18:29:15 -04:00
Parker Moore a78b5c2f8d Include files with a url which ends in / in the site.html_pages list
https://github.com/jekyll/jekyll-sitemap/issues/27
2014-06-17 15:18:41 -04:00
Parker Moore 3c6377d665 Merge pull request #2395 from rdumont/data-subdirectories 2014-05-21 01:09:15 -04:00
Parker Moore 780cff46b3 Add jekyll.environment to site_payload. 2014-05-17 00:38:21 -04:00
Rodrigo Dumont 604fb3286c Allow subdirectories in _data 2014-05-11 20:28:49 -03:00
Ben Balter bf3a20b2d7 allow json files in _data dir 2014-05-09 10:13:12 -04:00
Parker Moore f2f2ebfa4f Register subclasses of subclasses of Jekyll::Plugin
The Sass and SCSS converters are practically the same – only different in
the input syntax and file extension. As such, we've created
`Jekyll::Converters::Scss` which is a subclass of `Jekyll::Converter`, and
`Jekyll::Converters::Sass` which is a subclass of
`Jekyll::Converters::Scss`. When `Site#instantiate_classes` is called on
`Jekyll::Converter`, it only instantiates the `Scss` converter, not the
`Sass` converter. This change fixes that.

Fixes #2334.
2014-05-07 14:59:08 -04:00
Parker Moore c2d3f9d5b5 Close the file descriptor in has_yaml_header?
Previous method caused a problem where the calling Dir.chdir to get the next
directory's entries would cause the infamous 'Too many open files - getcwd'
error. Fixes #2279.
2014-05-06 15:58:25 -04:00
Parker Moore 63e959e4e1 Use Jekyll.logger, never puts 2014-05-06 13:02:35 -04:00
Parker Moore 3755437d08 Write test for site.documents. 2014-05-06 00:11:35 -04:00
Parker Moore fc98f06ed7 Refactor docs_to_write 2014-05-04 21:22:57 -04:00
Parker Moore 54b74fafba Add documents to site payload 2014-05-04 21:22:51 -04:00
Parker Moore a2169bf0c4 Have separate methods for all docs and just the docs that are being written. 2014-05-04 21:19:09 -04:00
Parker Moore c906dfdf71 TEST THE COLLECTIONS 2014-04-24 14:01:23 -04:00
Parker Moore fb39b41ffb NO MORE DATA COLLECTION I CAN'T HANDLE IT 2014-04-24 13:59:25 -04:00
Parker Moore 0dc680df0b Always render collections, just don't always write them 2014-04-24 13:59:24 -04:00
Parker Moore 7be78de93a Don't read the collection if it's the data collection 2014-04-24 13:59:24 -04:00
Parker Moore f1a422dfff Don't pretend there is a collections setter 2014-04-24 13:59:24 -04:00
Parker Moore a27e5825b9 Nil-out `@collections` so `#collections` will re-compile 2014-04-24 13:59:24 -04:00
Parker Moore fd98d5b1e6 Fetch collection names agnostically regarding the data structure of config['collections'] 2014-04-24 13:59:24 -04:00
Parker Moore 330005d932 Reset the collections hash on #reset.
Fixes #2234.
2014-04-24 13:59:24 -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 571fb95cc1 Only read in 5 bytes when checking for YAML header.
#2211 #2210
2014-04-15 09:48:44 -04:00
Parker Moore 29fdc0946a Use +rb switches when reading in file for checking existence of YAML header.
Fixes #2228.
2014-04-15 09:46:53 -04:00
Parker Moore a1af95c34e Clean up some code per @baweaver's suggestions. 2014-04-14 22:46:22 -04:00
Parker Moore af61451f87 Use #error instead of #warn when telling the user not to use a custom data source 2014-04-14 22:46:22 -04:00
Parker Moore 62551b5ff9 Include data in the array of collections 2014-04-14 22:46:22 -04:00
Parker Moore f0e68d7d86 Expose collections as site.<collection_name> in Liquid as array of docs. 2014-04-14 22:46:21 -04:00
Parker Moore 37a7236e20 Homagah it all renders I think. 2014-04-14 22:46:21 -04:00
Parker Moore a15a584136 Don't let that render get you down. 2014-04-14 22:46:21 -04:00
Parker Moore 75f49a751e OMG COLLECTIONS ARE RENDERING CALL THE POLICE 2014-04-14 22:46:21 -04:00
Parker Moore f082eca791 GUYS failing test for rendering 2014-04-14 22:45:20 -04:00
Parker Moore 90807ac6e7 DEM TESTS 2014-04-14 22:44:29 -04:00
Parker Moore 08162dbb50 Hey girl, i heard you like YAML. 2014-04-14 22:44:29 -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
Matt Rogers 6be33cf6ef Merge pull request #1492 from maul-esel/publishing 2014-04-14 20:17:01 -05:00
Parker Moore 4f66db6c38 Merge pull request #2211 from jekyll/pgp-key-header-frontmatter 2014-04-14 12:59:59 -04:00
Ben Balter b666ac787b Stricter start of line check via \A 2014-04-11 15:15:37 -04:00
Ben Balter 387cf2181a use regex to verify yaml existence 2014-04-11 08:00:40 -04:00
maul.esel 46a5ab99f9 Support "published: false" for pages
Fixes 1034.
2014-04-07 16:22:04 +02:00
maul.esel 3a330dc7fc Use Publisher instead of Post#published? 2014-04-07 16:20:13 +02:00
maul.esel 91e9ecfa63 Add an --unpublished option to render unpublished posts
Fixes #1337, #469.
2014-04-07 16:17:12 +02:00
Marcus Stollsteimer fec6b59950 Use File.exist? instead of deprecated File.exists? 2014-04-06 13:31:34 +02:00
Ben Balter 823c863a53 require newline after start of yaml header 2014-04-05 17:34:08 -04: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 1863057b7e Ok handle the plugins_path stuff in the PluginManager. 2014-04-02 22:06:38 -04:00
Parker Moore 4a4c8846f4 Fetching/determining the plugin path is beyond this it's kind of sad. 2014-04-02 21:59:15 -04:00
Parker Moore f418ea5fc3 Extract plugin management into its own class. 2014-04-01 18:10:51 -04:00
maul.esel 8c0e5d8d98 remove duplicate code for tags and categories
Previously the `Site#tags` and `Site#categories` actually had the
same structure as a hash returned by `Site#post_attr_hash()`, but
maintained separately. Remove this duplicated infrastructure. For
backwards-compatibility for plugins, provide aliases for them.
2014-03-31 01:02:08 +02:00
Fabian Rodriguez 302bc46914 rename variable inside block 2014-03-27 19:53:28 -03:00
Fabian Rodriguez adcfde14ed align 'end' with 'def' 2014-03-27 19:52:52 -03:00
Daniel Schauenberg 81e4e1d8f4 add support for unpublished drafts
I keep all my ideas for blog posts as drafts in my draft folder. However I'm
only really working on a couple at once. This let's me mark drafts that I'm
not working on right now as unpublished so they don't clutter the site while
I'm checking on the other drafts.
2014-03-22 19:52:10 -04:00
Corey Ward f1c4e247a5 Remove unnecessary references to `self` 2014-02-21 16:27:21 -06:00
Parker Moore e0166682da Sort the static files by relative path before sending to liquid 2014-02-19 14:02:03 -05:00
Parker Moore 949aa3fc32 Test fetching of static files 2014-02-19 13:16:21 -05:00
Parker Moore 6e40338f9e Expose site.static_files to Liquid 2014-02-19 13:04:33 -05:00
Matt Rogers & Persa Zula fd92820b03 Remove Site#read_layouts 2014-02-06 22:46:09 -06:00
Matt Rogers f581940c71 Create a LayoutReader class to read layouts 2014-02-06 22:22:06 -06:00
Dan Tao 4f0b1bdf6d switched from YAML.safe_load* to SafeYAML.load* 2014-01-23 17:25:17 -08:00
liufengyun 22e1e5f28c make sure pages with published being false are not generated 2014-01-19 09:52:19 +08:00
Matt Rogers 6f394e82b5 Rename read_things to read_content. 2014-01-11 15:29:22 -06:00
Parker Moore 42fc5e9ee7 Excludes should be relative to the site source 2014-01-05 10:45:42 -08:00
Robin Dupret 92064134d6 Rename the pygments option to highlighter
Rename the pygments configuration option to highlighter to allow
different highlighters in the future. For now, the allowed values are
`pygments` and `null`.

It's now more straightforward to plug another syntax highlighter.
2013-12-22 12:45:15 +01:00
Aidan Feldman 3c1d45f45f Sort pages by name by default
The order that files are returned differs across operating systems, so
ensure that they're being sorted after the fact.
2013-12-19 01:02:25 -05:00
Matt Rogers ed82098162 Merge pull request #1796 from mojombo/fix-fetching-things
Reject nil entries in Site#read_things
2013-12-09 18:23:19 -08:00
Parker Moore bf9cf5340d Reject nil entries in Site#read_things 2013-12-09 12:46:57 -05:00
Parker Moore b58cd5c132 Merge pull request #1657 from mojombo/safe-whitelist
A gem-based plugin whitelist for `safe` mode
2013-12-07 21:41:55 -08:00
Persa Zula 6a13f7dd57 Modifying enumerator for 1.8.7 2013-12-06 01:28:21 -05:00
Matt Rogers & Persa Zula e69d77b4df Refactor post and draft object creation
De-duplicate object creation between posts and drafts. Inject the name
dependency through a parameter
2013-12-06 01:28:21 -05:00
Parker Moore e91db82d26 I mean the argument and the local variable should be the same thing 2013-12-06 01:07:34 -05:00
Parker Moore f0fbc8f356 Refactor conditions for allowing plugins into a new method: Site#plguin_allowed? 2013-12-06 00:26:44 -05:00
Parker Moore 249b13a98a Hm, shouldn't need that call to 'rescue' in Site#whitelist 2013-12-06 00:24:59 -05:00
Parker Moore 5c9f9a4de8 The whitelist should be an array (not a file)
Default to `[]` if the key’s value is falsey
2013-12-06 00:23:22 -05:00