Swiftpack.co - Package - vapor/toolbox

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.

vapor/toolbox

Simplifies common command line tasks when using Vapor

Github

link
Stars: 187
Last commit: 2 weeks ago

Releases

Add better support for --feature and --no-feature - 2020-11-17T12:56:41

In the past, "positive" options passed to vapor new, such as --fluent, would only work if the type of the variable in the manifest.yml corresponding to the option was nested. This update adds the following capabilities:

  • Variables of type bool will now recognize positive option flags as well, and will no longer throw an error.
  • Both bool and nested variables now also recognize an inverted "negative" option flag, e.g. --no-fluent. A negative option flag has the same effect on a single variable that --no has on all of them.
  • bool variables are now correctly handled by the if: condition in a manifest.yml, rather than acting as if they're always true.

Not all of these changes are immediately visible in the toolbox by itself, but when combined with updates to vapor/template, it is now possible to request relatively complex configurations for a new Vapor project with no user interaction required at all. Some examples:

$ vapor new test_simple --no-fluent --no-leaf
Cloning template...
name: test_simple
fluent: No
leaf: No
Generating project files

$ vapor new test_with_db --fluent.db postgres --no-leaf
Cloning template...
name: test_with_db
fluent: Yes
db: Postgres
leaf: No
Generating project files

$ vapor new test_with_leaf --no-fluent --leaf
Cloning template...
name: test_with_leaf
fluent: No
leaf: Yes
Generating project files

$ vapor new test_with_everything --fluent.db sqlite --leaf
Cloning template...
name: test_with_everything
fluent: Yes
db: SQLite
leaf: Yes
Generating project files