17 Commits

Author SHA1 Message Date
Francesco Paolo Severino
7998dd4acc
New simplified rewrite of the Vapor Toolbox (#471)
* New simplified rewrite of the Vapor Toolbox

* Fix CI

* Refactor `TemplateRenderer` to dynamically handle Fluent database options

* Align `template` option name to old Toolbox

* Fix command name

* First attempt at dynamic arguments

* Support nested variable conditions for file rendering in `manifest.yml`

* Use Swift 6 language mode

* Remove `Mutex`

* swift format

* Remove redundant calls

* Group mandatory options in help view

* Try using `ubuntu-22.04` in CI

* Try using `latest` Swift in CI

* Add basic tests

* Update Dockerfile

* Update README

* Fix default value to `false` for top level of nested variables

* Fix nested variables bug

* Update README

* First attempt at asking unresolved variables to user

* Add `-n` flag

* Refactor `which` and add more docs

* Dynamically get Toolbox version via Homebrew

* Add test for issue `which` fails on macOS #403

* Remove Ubuntu CodeQL job

* Use new Swift Regex API

* Add unit testing in CI

* Try fixing CI

* Fix CI

* Move entrypoint to `Vapor`

* Improve documentation

* Make option description optional

* Improve documentation

* Add centered prints

* Add `--manifest` flag to specify manifest file path

* Add `--json` flag

* Make the linter happy

* Make it run on Musl

* Rename `--json` to `--dump-variables`

* Improve `which` test

* Update README.md

Co-authored-by: Tim Condon <0xTim@users.noreply.github.com>

* Update Sources/VaporToolbox/Util/PrintUtilities.swift

Co-authored-by: Tim Condon <0xTim@users.noreply.github.com>

* Remove custom `TemplateManifest.Variable` equality operator

* Handle UTF-8 encoding error when dumping JSON

* Add short lowercase flag for `--template`

* Remove unused `import`s

* Add again uppercase short flag for `--template`

* Update Package.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update README.md

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update README.md

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update New.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update New.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update New.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update New.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update TemplateManifest.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update TemplateRenderer.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update TemplateRenderer.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update TemplateRenderer.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update PrintUtilities.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update PrintUtilities.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update PrintUtilities.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update PrintUtilities.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update PrintUtilities.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update Vapor.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Update PrintUtilities.swift

Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>

* Fix typo

* Remove uppercase template flag

* Add Android and Windows to CI

* Remove CodeQL

* Try fixing Android

* Remove MongoDB integration tests

* Enable MySQL Linux integration in CI

* Disable MySQL Linux integration in CI

* Fix typo in README

* Fix bug in first commit

* Try fixing Windows build

* Remove Windows CI

---------

Co-authored-by: Tim Condon <0xTim@users.noreply.github.com>
Co-authored-by: Gwynne Raskind <gwynne@darkrainfall.org>
2025-03-17 20:25:05 +00:00
dependabot[bot]
f2f2ae2769
Bump the all-dependencies group with 1 update (#453)
Bumps the all-dependencies group with 1 update: [github.com/jpsim/yams](https://github.com/jpsim/Yams).


Updates `github.com/jpsim/yams` from 5.0.6 to 5.1.0
- [Release notes](https://github.com/jpsim/Yams/releases)
- [Commits](https://github.com/jpsim/Yams/compare/5.0.6...5.1.0)

---
updated-dependencies:
- dependency-name: github.com/jpsim/yams
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-30 14:02:34 +00:00
dependabot[bot]
6e5b78e9d1
Bump the all-dependencies group with 1 update (#452)
Bumps the all-dependencies group with 1 update: [github.com/apple/swift-nio](https://github.com/apple/swift-nio).


Updates `github.com/apple/swift-nio` from 2.63.0 to 2.64.0
- [Release notes](https://github.com/apple/swift-nio/releases)
- [Commits](https://github.com/apple/swift-nio/compare/2.63.0...2.64.0)

---
updated-dependencies:
- dependency-name: github.com/apple/swift-nio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-14 00:33:44 +00:00
Gwynne Raskind
206e8d0c87
Use the new updated Mustache package in vapor-community, fixes building on Arch Linux (#451) 2024-03-03 16:39:55 -06:00
dependabot[bot]
e76439f4c5
Bump the all-dependencies group with 1 update (#448)
Bumps the all-dependencies group with 1 update: [github.com/apple/swift-collections](https://github.com/apple/swift-collections).


Updates `github.com/apple/swift-collections` from 1.0.6 to 1.1.0
- [Release notes](https://github.com/apple/swift-collections/releases)
- [Commits](https://github.com/apple/swift-collections/compare/1.0.6...1.1.0)

---
updated-dependencies:
- dependency-name: github.com/apple/swift-collections
  dependency-type: indirect
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-14 13:52:50 +00:00
dependabot[bot]
9023a5dd18
Bump the all-dependencies group with 4 updates (#444)
Bumps the all-dependencies group with 4 updates: [github.com/apple/swift-nio](https://github.com/apple/swift-nio), [github.com/apple/swift-collections](https://github.com/apple/swift-collections), [github.com/vapor/console-kit](https://github.com/vapor/console-kit) and [github.com/apple/swift-log](https://github.com/apple/swift-log).


Updates `github.com/apple/swift-nio` from 2.61.1 to 2.63.0
- [Release notes](https://github.com/apple/swift-nio/releases)
- [Commits](https://github.com/apple/swift-nio/compare/2.61.1...2.63.0)

Updates `github.com/apple/swift-collections` from 1.0.5 to 1.0.6
- [Release notes](https://github.com/apple/swift-collections/releases)
- [Commits](https://github.com/apple/swift-collections/compare/1.0.5...1.0.6)

Updates `github.com/vapor/console-kit` from 4.10.1 to 4.14.1
- [Release notes](https://github.com/vapor/console-kit/releases)
- [Commits](https://github.com/vapor/console-kit/compare/4.10.1...4.14.1)

Updates `github.com/apple/swift-log` from 1.5.3 to 1.5.4
- [Release notes](https://github.com/apple/swift-log/releases)
- [Commits](https://github.com/apple/swift-log/compare/1.5.3...1.5.4)

---
updated-dependencies:
- dependency-name: github.com/apple/swift-nio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
- dependency-name: github.com/apple/swift-collections
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: all-dependencies
- dependency-name: github.com/vapor/console-kit
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all-dependencies
- dependency-name: github.com/apple/swift-log
  dependency-type: indirect
  update-type: version-update:semver-patch
  dependency-group: all-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Tim Condon <0xTim@users.noreply.github.com>
2024-01-25 11:52:50 +00:00
dependabot[bot]
d9d1bc49aa
Bump the dependencies group with 2 updates (#427)
Bumps the dependencies group with 2 updates: [github.com/apple/swift-nio](https://github.com/apple/swift-nio) and [github.com/vapor/console-kit](https://github.com/vapor/console-kit).


Updates `github.com/apple/swift-nio` from 2.59.0 to 2.61.1
- [Release notes](https://github.com/apple/swift-nio/releases)
- [Commits](https://github.com/apple/swift-nio/compare/2.59.0...2.61.1)

Updates `github.com/vapor/console-kit` from 4.9.0 to 4.10.1
- [Release notes](https://github.com/vapor/console-kit/releases)
- [Commits](https://github.com/vapor/console-kit/compare/4.9.0...4.10.1)

---
updated-dependencies:
- dependency-name: github.com/apple/swift-nio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
- dependency-name: github.com/vapor/console-kit
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-11 12:04:48 -06:00
dependabot[bot]
8780315127
Bump the dependencies group with 1 update (#420)
Bumps the dependencies group with 1 update: [github.com/vapor/console-kit](https://github.com/vapor/console-kit).

- [Release notes](https://github.com/vapor/console-kit/releases)
- [Commits](https://github.com/vapor/console-kit/compare/4.8.1...4.9.0)

---
updated-dependencies:
- dependency-name: github.com/vapor/console-kit
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-12 07:35:50 -05:00
dependabot[bot]
60110a6a4a
Bump the dependencies group with 1 update (#419)
* Bump the dependencies group with 1 update

Bumps the dependencies group with 1 update: [github.com/jpsim/yams](https://github.com/jpsim/Yams).

- [Release notes](https://github.com/jpsim/Yams/releases)
- [Commits](https://github.com/jpsim/Yams/compare/4.0.6...5.0.6)

---
updated-dependencies:
- dependency-name: github.com/jpsim/yams
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>

* Add CodeQL run to CI

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Gwynne Raskind <gwynne@vapor.codes>
2023-10-09 07:36:31 -05:00
Gwynne Raskind
2e4dfca364
[no ci] Commit an up to date Package.resolved, add Dependabot config, fix a couple minor bits 2023-10-09 05:16:48 -05:00
Tanner
dec76c539e
Support variable arguments in vapor new (#330)
* add flag support to newproj

* updates

* rm resolved

* ignore resolved

* fix integration tests

* fix var name

* test linux new

* updates
2020-07-13 16:39:43 -04:00
Gwynne Raskind
30e007a7b4
Prep for new beta release of toolbox (#324)
* Update Dockerfile according to current usage
  - Simplify build step (no need to copy Swift libs anymore) and use explicit Ubuntu version for builder and runner
  - Update runner image's packages, they're pretty outdated at the time of this writing, also install git so the toolbox can actually do anything
* Update dependency requirements: Require non-RC ConsoleKit and a more modern NIO. Update Package.resolved accordingly.
* Add .txt extension to LICENSE for consistency with common practice
* Copy the CI workflow from vapor/vapor to get much better testing.
* Update README with header image and better CI badge
2020-06-15 06:44:42 -05:00
Gwynne Raskind
a2beb7f2d5
Add shell escaping, use FileManager where possible, add new options to vapor new, cleanup of vapor clean (#306)
* Add very rudimentary shell argument escaping

This needs to be further delved. Tests need to include paths with spaces in them.

* Remove shell utilities that shouldn't be in use versus operations on FileManager. Do shell argument escaping CORRECTLY.

* Add several convenience utilities for working with paths as strings.

* Remove the `keep-checkouts` option from `vapor clean`, since it doesn't serve the desired purpose anyway (SPM will still re-clone and re-checkout the repos).

* Switch to FileManager-based file operations in most places.

* Add `--template` and `--outputDirectory` options to `vapor new` to override the template repo URL and specify an output directory explicitly - the output directory need not have the same name as the specified project name. Switches to FileManager-based operations whenever possible. Now that output dir can be changed, tries to provide a nice relative path to `cd` to if possible.

* `swift package update` yields a new revision for `mustache` and NIO 2.14 -> 2.15.
2020-03-24 12:36:51 -05:00
Tanner
d62dfab951
update to 5.2 + test ci (#305) 2020-03-04 14:56:23 -05:00
tanner0101
abc4ee704a cleanup 2020-01-10 01:13:19 -05:00
tanner0101
91521e98fe rm cloud + linux test gen 2020-01-02 09:43:38 -05:00
tanner0101
07a97777db add resovled file 2020-01-02 09:35:36 -05:00