yet

Crates.ioyet
lib.rsyet
version0.2.2
created_at2025-08-18 21:15:24.127422+00
updated_at2025-08-29 18:37:05.36188+00
description`yet` (yet-another task executor) is a tool for executing task written using the [rune](https://rune-rs.github.io/) programming language.
homepagehttps://gitlab.org/cyloncore/yet
repositoryhttps://gitlab.org/cyloncore/yet
max_upload_size
id1801112
size131,847
(cyrilleberger)

documentation

README

yet

yet (yet-another executor of tasks) is a tool for executing task written using the rune programming language. It aims at fitting my use-cases and workflow for the CylonCore and auKsys projects. But you are very welcome to use it for your own projects, and contribute to the project, through merge requests.

Installation

To install yet, you need to have Rust and Cargo installed. If you don't have them installed, you can get them from rustup.rs.

cargo install yet

Documentation

Command-line usage

yet command line usage is available by running the command:

yet --help

To get started, create a demo configuration file in the current directory:

yet --create-config

The basic usage is to run a task:

yet taskname arg0 arg1...

With the previously created configuration file:

yet hello world

The taskname is the identifier for a task as defined in the yet.yml file. When executing a task, yet automatically searches for yet.yml files in the current directory and all parent directories, importing the tasks specified within them. If a task with the same name is defined in both a parent directory and a subdirectory, the task in the subdirectory will override the one in the parent directory. To run a task located in a subdirectory, you can specify the path to the task using the command:

yet path/to/subdir/taskname

This allows for flexible task management and execution across different directory levels.

yet.yml

Tasks are defined in a yet.yml file. Which contains a root tasks, which is a dictionary where the An example is provided bellow:

tasks:
  install:
    description: "Install yet."
    command: !commands
      - cargo install --path .

  test:
    description: "Run tests for yet."
    command: !commands
      - cargo test
      - cd tests
      - ruby test.rb

or more detailed information on configuring tasks, refer to the yet.yml documentation.

Rune

Rune is a scripting language with a syntax very similar to Rust. It is used as the primary scripting engine for yet. The documentation for the language can be found here:

  • Rune: introduction to the Rune programming language.
  • Rune Modules: documentation about the general Rune modules.

Shell Integration

yet provides shell completion integration for bash. Add the following line to your .bashrc or .bash_profile to enable completion:

eval "$(yet --shell-config bash)"
Commit count: 0

cargo fmt