Skip to content

Releases: krieselreihe/litr

v1.0.0-alpha.8

03 Aug 13:05
499cc33
Compare
Choose a tag to compare
v1.0.0-alpha.8 Pre-release
Pre-release

This is a non production release of Litr (Language Independent Task Runner) [Milestone].

Platform support

This release was built and tested on macOS 13 (universal binary) and can be installed via Homebrew. If you want to run Litr in another environment you need to build it from source. You can find out how inside the CONTRIBUTING.md provided in the repo root.

Changes since last release

  • Build macOS 10.15 compatible version [da6739d]

Remember, this is still an alpha. Report any bugs. Feedback welcome: [email protected]

v1.0.0-alpha.7

02 Aug 21:15
9a71ea8
Compare
Choose a tag to compare
v1.0.0-alpha.7 Pre-release
Pre-release

This is a non production, release of Litr (Language Independent Task Runner) [Milestone].

Platform support

This release is only build and tested on macOS 13 (universal binary) and can be installed via Homebrew. If you want to run Litr in another environment you need to build it from source. You can find out how inside the CONTRIBUTING.md provided in the repo root.

Changes since last release

  • Build program for older macOS versions [807c1b2]

Remember, this is still an alpha. Report any bugs. Feedback welcome: [email protected]

v1.0.0-alpha.6

02 Aug 20:45
99092f4
Compare
Choose a tag to compare
v1.0.0-alpha.6 Pre-release
Pre-release

This is a non production, release of Litr (Language Independent Task Runner) [Milestone].

Platform support

This release was built and tested on macOS 13 (universal binary) and can be installed via Homebrew. If you want to run Litr in another environment you need to build it from source. You can find out how inside the CONTRIBUTING.md provided in the repo root.

Changes since last release

  • Upgrade dependencies [504c418]
  • Reduce release build and fix memory leak [879420e]
  • Fix release process [e421bd1]

Remember, this is still an alpha. Report any bugs. Feedback welcome: [email protected]

v1.0.0-alpha.4

27 Apr 09:48
1368df5
Compare
Choose a tag to compare
v1.0.0-alpha.4 Pre-release
Pre-release

This is a non production, release of Litr (Language Independent Task Runner) [Milestone].

Platform support

This release is only build and tested on macOS 12.2.1 (universal binary) and can be installed via Homebrew. If you want to run Litr in another environment you need to build it from source. You can find out how inside the CONTRIBUTING.md provided in the repo root. Later releases will also support non Apple hardware like Windows [#37] and common Linux distributions [#38].

Changes since last release

  • Fix parameters list not properly aligned inside help text [2c78004]
  • Fix running litr in sub-folders failing with dir option [9efb5b8]
  • Fix wrongly ordered configuration file properties [8389f52]
    • Commands and parameters are now shown as defined in the config by the user.
  • Fix issues with commands and parameters containing hyphens [44776aa]
  • Show description for specific command help (litr <command> --help) [1752b0c]

Remember, this is still an alpha. Report any bugs. Feedback welcome: [email protected]

v1.0.0-alpha.3

14 Aug 18:23
Compare
Choose a tag to compare
v1.0.0-alpha.3 Pre-release
Pre-release

This is a non production, release of Litr (Language Independent Task Runner) [Milestone].

Platform support

This release is only build and tested on macOS 11.5 (universal binary) and can be installed via Homebrew. If you want to run Litr in another environment you need to build it from source. You can find out how inside the CONTRIBUTING.md provided in the repo root. Later releases will also support non Apple hardware like Windows [#37] and common Linux distributions [#38].

Changes since last release

  • Fix universal binary for apple hardware [c1f9174]

Remember, this is still an alpha. Report any bugs. Feedback welcome: [email protected]

v1.0.0-alpha.2

14 Aug 16:51
Compare
Choose a tag to compare
v1.0.0-alpha.2 Pre-release
Pre-release

This is a non production, release of Litr (Language Independent Task Runner) [Milestone].

Platform support

This release is only build and tested on macOS 11.5 (universal binary) and can be installed via Homebrew. If you want to run Litr in another environment you need to build it from source. You can find out how inside the CONTRIBUTING.md provided in the repo root. Later releases will also support non Apple hardware like Windows [#37] and common Linux distributions [#38].

Changes since last release

  • Better dependency management via CMake [0bf7594]
  • Dependency upgrade [42f2e52]
  • Fix version flag not usable without configuration file [#39]

Remember, this is still an alpha. Report any bugs. Feedback welcome: [email protected]

v1.0.0-alpha.1

13 Jun 11:45
Compare
Choose a tag to compare
v1.0.0-alpha.1 Pre-release
Pre-release

This is the first, non production, release of Litr (Language Independent Task Runner) [Milestone].

Platform support

This release is only build and tested on macOS 11.4 (with Apple M1 support) and can be installed via Homebrew. If you want to run Litr in another environment you need to build it from source. You can find out how inside the CONTRIBUTING.md provided in the repo root. Later releases will also support non M1 Apple hardware, Windows [#37] and common Linux distributions [#38].

Features

  • Configure script inside a litr.toml or .litr.toml file in a project, parent folder(s) or your user directory
  • Scripts can also contain descriptions, examples, silent outputs and directory configurations
  • Nested scripts
  • Multiple scripts under one execution name
  • Define parameters for your scripts
  • Parameters have a description, can have a shortcut, different types (string, array of strings, boolean) and a default value
  • Conditional parameter parsing inside script
  • Auto generated help based on your configuration file

Quick Tour

Installation

Currently supported platforms are macOS (with Apple M1 Support).

brew tap krieselreihe/litr
brew install litr

Setup

Create a litr.toml or .litr.toml file and add some script and parameters to it, e.g.:

# litr.toml
[commands]
hello = "echo Hello %{name}"
bye = "echo Bye %{name}"

[params.name]
description = "Say a name."
default = "Unkown"

And run it either with or without parameter:

litr hello  # "Hello Unkown"
litr hello --name=Perrin  # "Hello Perrin"

You can also call multiple:

litr hello,bye

Or set the parameter for multiple by defining the parameter before the commands:

litr --name=Perrin hello,bye

Nested commands

# litr.toml
[commands.build.cpp]
script = "..."

[commands.build.java]
script = "..."

Nested commands can be executed all one-by-one:

litr build  # Will run `cpp` and then `java`

Or via single command:

litr build java  # Only runs the `java` build command

Complex example

Here an example with multiple scripts and conditional parsing:

# litr.toml
[commands.hello]
script = [
  "echo 'Hello user'",
  "echo 'Username is %{name}'"
]
description = "Greetings to the user"
example = "litr -n=Mat hello"

[commands.if]
script = "echo %{show 'if defined'}"

[commands.or]
script = "echo %{show 'if defined' or 'not'}"

[params.name]
shortcut = "n"
description = "Define a name."
default = "Unknown"

[params.show]
description = "Show data."
type = "boolean"

This can generate a help view via litr --help:

Litr - Language Independent Task Runner [version 1.0.0-alpha.1]
  Configuration file found under: /path/to/litr.toml

Usage: litr command [options]

Commands:
  or     [--show]
  if     [--show]
  hello  [--name=<option>]
             Greetings to the user
             ┌ Example(s):
             └ litr -n=Mat hello

Options:
  -h --help  Show this screen.
  -v --version Show current Litr version.
     --show  Show data.
  -n --name  Define a name.
             Default option is: "Unknown"

Here called with different options:

litr or         # "not"
litr or --show  # "if defined"

Remember, this is still an alpha. Report any bugs. Feedback welcome: [email protected]