-
-
Notifications
You must be signed in to change notification settings - Fork 250
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
Ceedling project creation #1006
Comments
@xXFrank01Xx -- first of all, THANK YOU for sharing an opinion on this topic. We've been trying to figure out how best to handle different situations of "starting out" and "upgrading" and it's a decision we honestly haven't decided on. There are really a number of situations that are all valid (and normal) use-cases:
All these options above have further variations for if they're running ceedling as the gem, or they've installed it locally to that project. Also, we want to detect when there are issues. Ceedling shouldn't blindly make a bunch of unwanted stuff if...
We've not done a good job of figuring out how all these things SHOULD fit together yet, and we're definitely open to people's ideas on this topic. In an attempt to backfill some error handling, we have indeed accidentally clobbered a common usecase: Wanting to add a project.yml file to an existing codebase. Perhaps we should default to adding the project file AND the folders (to keep backward compatibility) but we add options for NOT doing those things? Create a new project.yml file and subfolders where I am:
Create a new project.yml file where I am:
Anyone? How should this work? |
Thank you for the reply! I have no problem with the folders created by Ceedling. My usual module architecture is as follows:
So, most of the time, I start by creating the project like this:
And when I have a few functions ready, I like adding the unit tests and then continue the development. Regarding the upgrade of older versions of Ceedling to a new one, I must admit that I did use "ceedling new module --force" and I'm glad my module was commited and pushed, because I didn't expect losing my files haha A suggestion for an easy fix (or temporary fix): When the new or upgrade command cannot work, could the files and folders be moved in a "backup folder", so after creation of the ceedling project, we just drag and drop our backed-up files to the appropriate locations and continue with our tests? E.g.: and you end up with:
At least, it would save some heart attacks haha Thanks again |
Hello,
First of all, thank you for Ceedling in general! It's an amazing tool!
However, I don't know if it's a bug or not, but I've been using version 0.31.1 for a long time with no problem and when I switched to 1.0.0, a thing bugs me...
With 0.31.1, let's say I was starting my development in a module folder, eg: /module/src/module.c
Then at some point I'm ready to work on the unit tests and type: "ceedling new module"
and the module folder would now include a project.yml and other folders and files without erasing my source file.
Now with 1.0.0, if my module folder is not empty, it refuses to generate the files and folders... It says:
EXCEPTION: It appears a project already exists at ./module/. Use --force to destroy it and create a new project.
I tried: "ceedling upgrade module"
EXCEPTION: Could not find an existing project at module/.
And if I use the --force, it erases everything...
Is it done like this on purpose? Do you have a new command I don't know about?
Thank you
The text was updated successfully, but these errors were encountered: