-
-
Notifications
You must be signed in to change notification settings - Fork 52
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
fix: set ENABLE_DEVELOPER_MODE to OFF by default + report the building mode #67
Conversation
5b2154a
to
23f9deb
Compare
We should not expect the average user of a library pass flags to be able to use a library. Instead, the developer who knows the ins-outs of the library should set the developer mode ON.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Definitely worth doing.
Co-authored-by: David Dalcino <ddalcino@users.noreply.github.com>
My comment here has gotten away from me a bit, but I'm not sure of a better place for this comment right now: I discussed with @aminya in a zoom chat a couple of weeks ago that I did intentionally make Developer mode the default. It is of very high importance to me, and related to the original reason I created this cpp_starter_project, that we nudge C++ developers in the direction of best practices. Specifically things like using sanitizers by default while developing.
However, I also acknowledge:
So, with these thoughts in mind
When the reorganization is done:
|
I approved this under the assumption that developer mode would default to 'on' for cpp-starter-project, and 'off' if you just want to use project-options. I thought it was a really good compromise between the needs of the two projects. I guess I didn't realize that those defaults weren't set yet. |
I spent a lot of time starting and reading a Twitter conversation around these concerns and appreciate that there's room for a more nuanced response, but I also think it's time to have more than one fork of cpp_starter_project to address more users more easily. |
I agree with your idea. We should separate the beginner starter from the professional starter. However, we should keep in mind that it is also important to communicate the outcomes of setting this as ON to beginners. I have seen people running Debug code for days on the government servers and causing thousands of dollars loss until they realized that they shipped the wrong binary mistakenly because they had set the defaults for the debug build. |
We should not expect the average user of a library pass flags to be able to use a library. Instead, the developer who knows the ins and outs of the library should set the developer mode to ON.
This not only affects the average end-users but also the advanced users that should go through the whole dependency tree and pass flags to each of them to make them usable as a dependency.
I should have paid attention to this in #46, but it is still not late to fix the default.