* Add draft support (fixes#121)
* Add documentation for drafts
* Add support for draft front matter attributes
* Run rustfmt
* Draft related debug messages
* Move parse_document code into Document
* Prevent race condition on deep post paths
fs::create_dir_all is racy and will not do well when run in parallel for
a number of sufficiently deep directories with same parents.
I fixed it by writing my own version that is thread-safe.
I also reorganized some of the document code, it seems more clean to me
now at least.
* Implement custom document paths
Some things still need to be finished, like proper slugification. But
that should be for follow up bugs.
Note that this also removes the automatically injected variable `name`
which used to be the file name without the extension. I think it never
really made sense to have it.
* added deployment docs and content table
* added branch check for travis example
* format fix for readme (was bothering me)
* added fix in readme for cargo bin
* added better content list for README
This is a pretty big commit that implements generating RSS feeds from
the posts folder. This can be achieved by adding some fields to the
cobalt config file. See the added documentation.
I also found it necessary to refactor how the internal API receives
config arguments. We now have a cobalt::Config struct that holds the
relevant fields. Moving config parsing file parsing to its own module
(config.rs) also gives us much better modularity and testability, I
hope.
This commit also fixes#44 by creating a target folder before trying to
build into it.
This is a backwards-incompatible change, as `@extends` is an invalid
identifier in yaml (specifically the @ part). I changed it to `extends`,
which doesn't seem bad.
This comes together with the changes for supporting datetime properties
and sorting posts by creation date. More implementation details will
follow in later commits.