Skip to content

Releases: hlef/juliet

Releasing 0.2.1 (bugfix release)

06 Aug 12:57
Compare
Choose a tag to compare

Changes since 0.2

  • Fix #4 and add according tests
  • Minor test cleanup

Releasing 0.2

07 Jul 15:05
Compare
Choose a tag to compare

It's been almost two years since the v0.1. After two alphas, juliet seems pretty much ready for a new stable release.

Changes since alpha2

Breaking changes

  • Drop Python < 3.5 support (see 3dbb43f)
  • New python3-dateutil dependency (see bugs fixes section)
  • Theme design: the post scope now provides installed_filename instead of slug (see af8d988)
  • Install pages with .html file extension (see bfe5a9c)

New features

  • juliet init now installs a default theme (gram)
  • Add --auto-baseurl option (see 9205856)
  • Add --config-file (short -cf). This can be used to pass alternative config files to the builder

Bug fixes

  • Fix multiple issues with juliet new date variable. Support for date was quite bad, mostly because we did not perform date validity checks. We now rely on python3-dateutil to ensure input validity (see 4bccd1e)
  • Fix bugs in -- arguments handling: do not limit installed fields to theme config (see d5b0c8b)
  • Fix error during exception handling of build() (see 28b6595)

Misc

  • Add -v shortcut for --version
  • Various cleanup, add more sanity checks
  • Improve test coverage (now >90%)
  • Improve documentation

Releasing 0.2 alpha2

01 Oct 20:02
Compare
Choose a tag to compare
Releasing 0.2 alpha2 Pre-release
Pre-release

New features

  • Add permalink support: If permalink variable is defined, use it instead of file naming variable.

Misc

  • Improved test coverage
  • Add safety checks to make sure nothing is built outside of the build tree.
  • Fix build with missing pages or posts folder in source tree

Changes since alpha1

  • Major changes in the juliet new syntax:
In the alpha1 the juliet new command was taking two parameters: --date
and --title. This is absolutely not what we want because it restricts
the usage of juliet new to a very specific subset of article headers.

Instead we switch to a much more modular system:

1. juliet new

   Creates an article with default values.

   By default the article name formatting is $date-$title.md (title
   in slugified form). Default values for title and date are taken
   from the theme. It is highly recommended to the theme to let date
   being set by juliet (this can be done by _not_ specifying a default
   value for this variable). It is then set to the current date
   YYYY-MM-DD.

2. juliet new --file-name FILENAME

   Creates an article with default values in posts/FILENAME. For
   default, values, same as 1.

3. juliet new (-f FILENAME) -- key: value key2: value2 key3: value3

   Header values can always be passed as key value list after the --
   (stop argument processing). These values are then used for article
   name generation if filename is not specified + article header.
   Missing key values are defaulted using the theme default values.

   The syntax for the key-value list is as following: for each key/value
   pair:

   1. the key
      - optional: the key might end with a ':' character. This is just
         syntactic sugar, doesn't change anything.
      - keep in mind: the key can't contains spaces ' ', underscores '_'
         or colons ':'.
   2. followed by one or more space characters
   3. the value

   If the theme doesn't define default values, execution of juliet
   new is aborted with appropriate error message. That's why the
   theme should always specify proper default values if these are not
   going to be auto generated by juliet (like date_).

   In the future we will provide a hook-system which will allow themes
   to define Python hooks to generate values during juliet new
   execution.

The article name formatting (default: $date-$slug_title.md) can be
specified by the user using the filenaming_pattern config variable.
The pattern is in Python Template form (PEP 292). Accessible variables
are:

 - all command-line passed key: values
 - all theme side default values (overwritten by command-line passed
   key: values if key is identical)
 - all generated entries:
   o date_
     Either current date or, if specified by user/theme, the same
     value as the date variable
   o for each key, a slugified version of the key as slug_'key'. e.g.
     for title key, slug_title, date key, slug_date, etc.

EX:
    juliet new
    juliet new hello-world.md
    juliet new -- title: "Hello, world !"
    juliet new -- title "Hello, world !" date "1998-12-12"

Releasing 0.2 alpha1

28 Apr 21:45
Compare
Choose a tag to compare
Releasing 0.2 alpha1 Pre-release
Pre-release

New features

  • Fresh new article initialization with juliet new
  • Version information can now be retrieved using --version option.

Misc

  • Better test coverage
  • Documentation improvements (ship manpage, various minor updates).

Releasing 0.1

08 Oct 21:00
Compare
Choose a tag to compare

Juliet is getting pretty stable now, so I think it's time for a stable 0.1.

Changes since alpha3

  • Documentation improvements

Releasing alpha3

28 Sep 14:55
Compare
Choose a tag to compare
Releasing alpha3 Pre-release
Pre-release

API break

  • @BASEURL tag is not supported anymore. Juliet sites should migrate to the new Jinja-like tag {{ baseurl }}.
  • Files without header are now rejected.
  • \ before preprocessor tags will now be interpreted as escaping character

New features

  • Juliet file structures can now be initialized using juliet init
  • Cleanup destination directory before installation.
  • Add command line arguments --no-clean (or -nc) to disable destination directory cleanup before build
  • Allow escaping of preprocessor tags

Bug fixes

Misc

  • Refactor numerous files under juliet/ (more OOP, snake case instead of camel case, etc.).
  • Improve documentation
  • New tests

Releasing alpha2

07 May 15:05
Compare
Choose a tag to compare
Releasing alpha2 Pre-release
Pre-release

API break

  • Drop Python < 3.3 support (why)

New features

  • Add command line arguments --build-src and --build-dst to build from/to passed directories
  • New logging features via --debug or -d*

Misc

  • Improve platform independence and robustness by using os.path.join() to build working paths
  • Exit more cleanly using sys.exit() and improve error messages
  • More checks, user-friendlier (check for existence of config file, header consistency, etc.)
  • Rename and refactor numerous files under juliet/ (more OOP, snake case instead of camel case, etc.).
  • Improve documentation
  • New tests

Releasing alpha1

28 Apr 11:04
Compare
Choose a tag to compare
Releasing alpha1 Pre-release
Pre-release

Initial, alpha release of Juliet.