mainmatter / gerust

A project generator and manager for Rust backend projects.
MIT License
14 stars 0 forks source link

Tracking issue: pre-release fixes #20

Open marcoow opened 10 months ago

marcoow commented 10 months ago

marcoow commented 7 months ago

@LukeMathWalker I merged #32 and updated the above list. Some thoughts:

  • [ ] switch everything to cargo nextest potentially
  • [ ] switch everything to googletest potentially

I was thinking if we recommend nextest and googletest generally, I think we should migrate this repo as well to be in sync with that recommendation. I guess that's relatively straight forward to do (if we want to)?

  • [ ] add proper READMEs to blueprints (in particular explaining the endpoints for the full blueprint)

If you generate an app based on the blueprints, it should also generate a README that explains the structure of the repo, what goes where, what generators are available for generating more things, etc.

  • [ ] write guide/tutorial

I think sth. like the Pavex Quickstart is really the essential part of the documentation. API docs are fine but in particular in the case of a library like this, not essential.

  • [ ] set up marketing landing page
  • [ ] come up with a better name…

These are the very last steps I'd say once everything else is done. We should definitely set up a landing page with a nice design, etc.


I think before any of the above tasks, it'd be good if you bould review everything that exists so far so that we can fix any problems there might be (and I'm sure there will be a few…)

LukeMathWalker commented 7 months ago

I was thinking if we recommend nextest and googletest generally, I think we should migrate this repo as well to be in sync with that recommendation. I guess that's relatively straight forward to do (if we want to)?

googletest is a straight-forward migration, yes. I need to review DB tests to see how straight-forward it is to migrate to cargo nextest.

I think both are more nice-to-haves than essentials.

LukeMathWalker commented 7 months ago

I think sth. like the Pavex Quickstart is really the essential part of the documentation. API docs are fine but in particular in the case of a library like this, not essential.

Where should this be hosted? Do you want me to setup something with Material for mkdocs, as I did for Pavex? @marcoow

marcoow commented 7 months ago

Where should this be hosted?

I'd say GH Pages, Netlify – sth. simple like those

Do you want me to setup something with Material for mkdocs, as I did for Pavex? @marcoow

That would be good, yes 👍

marcoow commented 7 months ago

Let's not prioritize googletest and nextest then and get everything else done first

BobrImperator commented 6 months ago

I'm trying out pacesetter right now and there's some nuances I've found so far:

For the record, since it's not published yet, I've installed it from git CARGO_NET_GIT_FETCH_WITH_CLI=true cargo install --git ssh://git@github.com/marcoow/pacesetter.git

Notes:

Caused by: relation "tasks" does not exist)

error[E0432]: unresolved import insta --> cli/src/util/ui.rs:162:9 | 162 | use insta::assert_snapshot; | ^^^^^ use of undeclared crate or module insta

marcoow commented 5 months ago

After installation, the command name is pace instead of pacesetter

That's intended – the name might change before release though

When a project is scaffolded with --full, the only callable project with cargo run --bin is the web project. In order to call other ones, they must be added to default-members in the root Cargo.toml manually.

So you run the web bin with just cargo run (or the tests with cargo test). In order to run the other tools, you can just do cargo generate or cargo db (see .cargo/config.toml)

Missing insta dependency for the cli project

fixed: #47

migrations in tests seem to not run

You need to run the migrations before running the tests – some might say that's bad, I say it's a feature: cargo db migrate -e test