First iteration of configuration checking
Refactor configuration validating into Config module
Check Archive configuration during webserver startup
Checked notes subdirectory
Validate existense of styles under static directory
Squashed commit of the following:
commit f9c6c81ab1658b578ddd8fddcd6d1e130042c521
Author: Stavros Polymenis <sp@orbitalfox.com>
Date: Sun Aug 6 22:25:51 2017 +0100
Changes ignored files
commit 1e3bc2b9dc26bbc386235d7e0b4b04228fd1fc3c
Author: Stavros Polymenis <sp@orbitalfox.com>
Date: Sat Aug 5 22:29:55 2017 +0100
Renamed core to Logarion and converts webserver to jbuild
commit c1c773da92f9a1627b09526395c8103298644c69
Author: Stavros Polymenis <sp@orbitalfox.com>
Date: Sat Aug 5 18:10:21 2017 +0100
Completes conversion of logarion compilation to jbuild
commit e74c864f6daa95415bc2a17ddd7a1299769dce74
Author: Stavros Polymenis <sp@orbitalfox.com>
Date: Sat Aug 5 15:39:34 2017 +0100
wip: switching to jbuilder
Introduces Store module type.
Logarion module:
* Removed Entry submodule, it mostly duplicated Meta
* Make functor for creating archives given a Store compatible module
The output Archive module contains functions for sorting, ordering, selecting
and accumulating (storing) notes.
Meta module:
* Function Path.basename_of_title has been renamed to Meta.string_of_slug
This is because slugs are now defined explicitely by 'slug' field or derived from
'title' field. Counting numbers can't be used anymore.
Slug has an optional, dedicated field.
Function Meta.slug should be used on a Meta to get the appropriate slug (title or slug).
* Introduces StringSet type (Set of Strings)
Topics, keywords and series are now StringSets
* Adds SlugMap and IdMap aliases
Note module:
* Automatically scan for Markdown heading to use as title in the absence of one
File module:
* File has a Store compatible signature
The implementation has an Lwt hack; Lwt will be fully supported in the future
Web module:
* Uses new Logarion.Configuration, File store and Archive.t
Template module:
* Adapted for new types
* Currently disabled topics substitution, because this framework needs reconsideration
Finally:
* Adapts command line interface to work with new store
* Adapts Atom feed to work with new store
Path module renamed to Lpath to avoid clash with OCaml system module.
(Squashed commits from dev)
Moved template paths' record to template module.
Introduced templates directory parameter in web.toml.
Changed web configuration names to make them shorter.
More renames of text to note, where applicable.
Reinvented Path types, now in a new module Path.
Moves file functions to module File, including Lwt implementations.
Experimental Logarion.Archive.delta_of for compounding (adding) notes.
Fixes scope warnings.
Fixes a command's documentation.