Skip to content

Conversation

@dougg0k
Copy link
Contributor

@dougg0k dougg0k commented Jul 24, 2025

  • Created generate command to generate scaffold project. Replacing ferric-example.
  • Add path as arg to build project.
  • Fixed cargo build command with correct --release flag.
  • Added Cargo.toml optmizations for size.
  • Added tests to ferric-cli, to build and generate commands.
  • Changed verbose flag to also log commands.
  • Replaced eslint since the project lacks formatter and sort organizer, biome is faster and has all three.
  • Changed default build output to send to dist folder.

@changeset-bot
Copy link

changeset-bot bot commented Jul 24, 2025

🦋 Changeset detected

Latest commit: 1bf14ee

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
ferric-cli Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@dougg0k dougg0k marked this pull request as draft July 24, 2025 18:02
@dougg0k dougg0k mentioned this pull request Jul 24, 2025
@kraenhansen
Copy link
Collaborator

Woah - hold that 🐴 While I really appreciate your enthusiasm, I'd love for your contributions to:

  1. Address specific issues, which we can discuss before jumping on a specific solution (feel free to create these issues yourselves, as you're discovering stuff which could be improved)
  2. keep your PRs separate such that they each address just one issue (or multiple if they're truly related / duplicates).

You're making a lot of suggested changes here that I'm not comfortable with and I'd hate for good suggestions to be held back because of some disagreement on what tool to use for linting (as an example).

@@ -1,21 +0,0 @@
{
"name": "@react-native-node-api/ferric-example",
Copy link
Collaborator

Choose a reason for hiding this comment

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

I don't understand the need to remove this in its entirety? While I do agree having a command to generate a project scaffolding, this package serves a purpose as a point of reference in itself.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I was going to try and replace that with tests.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

If the cli are generating the project, then that's the point of reference.

Copy link
Collaborator

Choose a reason for hiding this comment

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

that's the point of reference.

It's hard to share a link to something which comes out of a CLI.

Copy link
Contributor Author

@dougg0k dougg0k Jul 24, 2025

Choose a reason for hiding this comment

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

Link would be the CLI itself with the README updated.

Copy link
Contributor Author

@dougg0k dougg0k Jul 24, 2025

Choose a reason for hiding this comment

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

Copy link
Collaborator

Choose a reason for hiding this comment

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

I don't think that link is a good representation of what a Ferric package looks like, it's not something I can easily share and reference.

You could move the entire example package into a markdown file, but then again 🤷 would that be any better?

To be clear, I think it makes sense to have a command to generate (I would probably call it init) a Ferric package and have that be whatever is in the ferric-example package, but I don't think we should delete the package from the repo. Thinking more about it, it could actually serve as a fixture for a test too 🤔

Copy link
Contributor Author

@dougg0k dougg0k Jul 24, 2025

Choose a reason for hiding this comment

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

It could, but only after being generated through the testing.

Copy link
Contributor Author

@dougg0k dougg0k Jul 24, 2025

Choose a reason for hiding this comment

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

I meant mostly as to keep the whole process cleaner. Be with scaffolding or lint replacing.

@@ -0,0 +1,38 @@
{
"$schema": "https://biomejs.dev/schemas/2.1.2/schema.json",
Copy link
Collaborator

Choose a reason for hiding this comment

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

Iff we'd switch linter, it would have to be in a completely separate PR without any added features, and we'd have to bike-shed that for a while on Discord first.

Copy link
Contributor Author

@dougg0k dougg0k Jul 24, 2025

Choose a reason for hiding this comment

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

Any reason why?

Because even though Biome is newer, it has already found many lint issues that eslint didnt and fixed them or provided suggestions to the ones it didnt. Project is cleaner with it.

It's just a tool that is and can do more than eslint was doing, not sure why there would be fuss in a project in a migration to it. But I understand it's your company project.

Copy link
Collaborator

@kraenhansen kraenhansen Jul 24, 2025

Choose a reason for hiding this comment

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

Any reason why?

I added a few comments here or there, but I won't be able to give a thorough review if your actual changes are interleaved with a ton of changes from replacing the linter.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Maybe it's better to close the PR then?

Copy link
Collaborator

Choose a reason for hiding this comment

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

I don't want to discourage you by blatantly closing the PR - I'll let you decide its faith.

I would love to discuss and merge many of the improvements, if we're able to get them reviewed one-by-one 👍

@dougg0k dougg0k closed this Jul 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants