Skip to content

Releases: Demonstrandum/seam

v0.4.2: %date and %timestamp date parsing and formatting (conversion)

Choose a tag to compare

@Demonstrandum Demonstrandum released this 09 Dec 22:57
97b8cb9

New/improved macros:

  • %date – now can convert from epoch timestamps and understands timezones.
  • %timestamp
  • %sort
  • %reverse
  • %glob – now can sort by: file type, name, creation time, or modification time.

v0.4.0: %markdown, %yaml, %json and %toml macros.

Choose a tag to compare

@Demonstrandum Demonstrandum released this 07 Dec 22:40
d712e48

Full Markdown (%markdown ...) support with front matter metadata via YAML or TOML evaluating to seam %defines is supported.

The %yaml, %json and %toml macros also parse these config languages in the same way.

release: v0.3: new macros, pattern matching, performance.

Choose a tag to compare

@Demonstrandum Demonstrandum released this 04 Dec 23:14
8f18ae6

All user macros now do pattern matching on argument, including:

  • named optional argument that may appear out of order.
  • matching rigid required values.
  • variadic arguments with &rest syntax
  • match against lists containing named arguments (essentially hashmaps)
    and nested variadic &-syntax.

Added new macros:

  • %apply
  • %lambda
  • %list
  • %splat
  • %strip
  • %join
  • %filter
  • %map
  • %embed
  • %namespace
  • %raw
  • %string

Fixed a memory leak with unfreed macro subcontexts.

Choose a tag to compare

@Demonstrandum Demonstrandum released this 21 Nov 18:02
85fe33d

Subcontext for macro expansion contexts would build up indefinitely, which would have memory impacts for larger projects with lots of macros.

Rewrite – Better Unicode support, better performance, better whitespace support, more macros.

Choose a tag to compare

@Demonstrandum Demonstrandum released this 14 Jul 11:58
4162122

The awful old lexer which did not handle unicode correctly, and did not handle whitespace sensibly... is gone!

Also, the old code's complete lack of good memory management (with clones everywhere) is rewritten the Rust way, with carful consideration of lifetimes, ownership, borrowing, &c.

We also get some more macros, notably

  • (%format ...) for Rust-style string formatting.
  • (%os/env ...) for accessing environment variables.

With lots more low-hanging fruit to come. :)

Allow reading from STDIN.

Pre-release

Choose a tag to compare

@Demonstrandum Demonstrandum released this 10 Oct 20:29

Read from STDIN when no file is given.

v0.1.2 -- Date macro.

v0.1.2 -- Date macro. Pre-release
Pre-release

Choose a tag to compare

@Demonstrandum Demonstrandum released this 10 Oct 19:05

Added (%date "...") strftime macro.

Macros, Cross-code generation, Better errors.

Choose a tag to compare

@Demonstrandum Demonstrandum released this 04 Jul 22:22
  • %include macro added.
  • HTML can generate valid CSS through <style> tags.
  • Error messages finally display the actual filename.

First Pre-Release

First Pre-Release Pre-release
Pre-release

Choose a tag to compare

@Demonstrandum Demonstrandum released this 03 Jul 15:14

SEAM is still incomplete, but it is good to use for basic websites.