Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

mold_lib 1.0.3 #911

Merged
merged 6 commits into from
Oct 25, 2023
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
mold_lib 1.0.0
rocher committed Oct 22, 2023
commit 61a8fa690676d495bd65997ba46dc5391a0578b3
84 changes: 84 additions & 0 deletions index/mo/mold_lib/mold_lib-1.0.0.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name = "mold_lib"
version = "1.0.0"
tags = ["template", "template-engine", "template-repo"]

description = "Meta-variable Operations for Lean Development (lib)"
long-description = '''
[![Alire](https://img.shields.io/endpoint?url=https://alire.ada.dev/badges/mold_lib.json)](https://alire.ada.dev/crates/mold_lib.html)
[![Alire CI/CD](https://img.shields.io/endpoint?url=https://alire-crate-ci.ada.dev/badges/mold_lib.json)](https://alire-crate-ci.ada.dev/crates/mold_lib.html)
![unit-test](https://github.com/rocher/mold_lib/actions/workflows/unit-test.yml/badge.svg)
[![codecov](https://codecov.io/gh/rocher/mold_lib/graph/badge.svg?token=LB83SI4I0Y)](https://codecov.io/gh/rocher/mold_lib)
[![GitHub release](https://img.shields.io/github/release/rocher/mold_lib.svg)](https://github.com/rocher/mold_lib/releases/latest)
[![License](https://img.shields.io/github/license/rocher/mold_lib.svg?color=blue)](https://github.com/rocher/mold_lib/blob/master/LICENSE)

## Welcome to **Mold**

> **MOLD**: *Meta-variable Operations for Lean Development*

Mold is a Template Processor, or Template Engine, to work with repository
templates. The main motivation of Mold is to have repositories in GitHub used
as template repositories to create new, customized repositories for other
users.

Main features supported in Mold include

* variable replacement in mold files (*.mold)

* for a given directory, variable replacement recursively for all mold files
in all subdirectories

* variable replacement in file names

* inclusion of other templates

* definition of variables with a simple TOML file

Variable replacement can be specified as *normal*, *optional* or *mandatory*.
For example, the variable `foo = "bar"` can be specified with `{{foo}}`,
`{{?foo}}` (optional) or `{{#foo}}` (mandatory). The difference is the handling
of errors when an undefined variable is encountered.

All mold files must end with the extension `.mold`, for example
`README.md.mold`. Destination files (with variables replaced) have the same
name without the mold extension: `README.md`. This simplifies the work done in
large subdirectories with few templates.

This crate contains the Ada library and unit tests. For a CLI tool, please
take a look at the crate `mold`.

## Reference Guide

Please visit [Mold documentation](https://rocher.github.io/mold) for more
information.

---
## License
MIT (c) 2023 Francesc Rocher
'''

authors = ["Francesc Rocher"]
website = "https://rocher.github.io/mold"
maintainers = ["Francesc Rocher <francesc.rocher@gmail.com>"]
maintainers-logins = ["rocher"]

licenses = "MIT"

[build-profiles]
"mold_lib" = "release"

[build-switches."*"]
ada_version = ["-gnat2022", "-gnatW8", "-gnatX"]

[build-switches]
release.optimization = ["-O2", "-gnatn"]

[[depends-on]]
ada_toml = "~0.3.0"
gnat = ">=2021 | (>=12 & <2000)"
gnatcov = "^22.0.1"
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If this is used for analysis of mold_lib itself, it should be moved to a nested crate that performed the coverage analysis, to avoid dragging this in for dependents.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's right, it's also present in the nested tests crate ... to be removed!

simple_logging = "^1.2.0"

[origin]
commit = "2982cd80e7ac6f1b027d09c00a719a9e46e5708e"
url = "git+https://github.com//rocher/mold_lib.git"