-
Notifications
You must be signed in to change notification settings - Fork 207
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
My managed Build throws exceptions when openening multi configuration project property pages. #356
Comments
I'm kind of like stuck on this issue. |
@jonahgraham |
I see that this branch has the project - https://github.com/Sloeber/arduino-eclipse-plugin/tree/%231126_support_for_creating_library_archives - I'll try it. |
(Minor nit - having branch names that have or start with |
Never mind - I can't import https://github.com/Sloeber/arduino-eclipse-plugin/tree/%231126_support_for_creating_library_archives/io.sloeber.autoBuild.test because it isn't an Eclipse project (missing key files like .project) and has extra stuff like https://github.com/Sloeber/arduino-eclipse-plugin/tree/%231126_support_for_creating_library_archives/io.sloeber.autoBuild.test/%25SystemDrive%25/ProgramData/Microsoft/Windows/Caches |
From trying to read your stack traces I am unsure as to what is going on wrong here. Let me know when you have a chance to update reproduction instructions and I can have a closer look again. |
Thanks for looking at this.
I've been looking for clues myself many days and I simply do not get (even not what is going on). ->>Did the changes in the repro and tested again. getResDesc() keeps on returning null |
I have spent as long as I can afford to on this issue. Unfortunately I cannot understand why this is happening. |
Nor can I. |
I got it to work 😄
The code below generates the issue
I'm not sure what to do with this issue. I had hoped to be able to improve the documentation but all I can say right now is "this works, no clue why" PS: I tried to see whether I could see a difference in the "path and Symbols" in project properties but it is not yet visible in AutoBuild. |
I finally got AutoBuild to work nicely with configuration changes in project properties
The getRootFolderData uses the myRootFolderID to create a CFolderData object
getResourceDatas needs to add myRootFolderData to the list. Below is my current code which I expect to change as I still don't know what this is used for.
Though not a bug fix I would like to change the code below Lines 116 to 131 in 9edc432
to something in the style of
The benefit of this is: instead of partially fixing the coding problem the coding problem gets highlighted. |
The problem still pops up from time to time and I think I'm on to something cdt/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPage.java Lines 129 to 131 in 1b2472f
It is not clear to me why there are 2 fields as they seem conceptually the same (technically they are a different types) cdt/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/ui/newui/AbstractPage.java Lines 479 to 484 in 1b2472f
Therefore the code compares the id's of 2 different types For these ID's to match up (which they do not do in my case resulting in multiple calls to cfgChanged) I probably need special code. input is welcomed |
After months completely focussing on this issue I can now say: "I finally fixed this issue". I did an effort to write down what I learned about the CDT projectDescriptions and configuration descriptions but I kept getting distracted so I'll stop doing it (and get on with what I actually was doing). If someone asks for a specific explanation I'm willing to provide that info. The doc is here https://docs.google.com/document/d/19Bhly15MPTvffmI880pTmYesLyXPFIU-R4lYY65J-RQ Anyway I copied the conclusion below
|
When in my new MBS implementation, I open project properties->preprocessor include I get the stacktrace below
To Reproduce
In a CDT development environment add the repository https://github.com/Sloeber/arduino-eclipse-plugin.git
Close all Sloeber projects except for the ones starting with io.sloeber.autoBuild
Run the test /io.sloeber.autoBuild.test/src/io/sloeber/autoBuild/regression/CreateBasicProjects.java in debug not in the main thread keeping the thread running.
If you have a compatible make and gcc in your path all projects should have build fine (but for reproducing this issue that is not important)
open the project properties of one of the created projects and open the preprocessor and include paths
Next to the error you will get the stacktrace listed above.
When I step through the code everything seems fine here.
The last selected configuration variable is the one that should be selected and the page holds 2 configurations.
(for my pages I currently work around this issue by selecting the first of the list of configs and I do not see any negative consequences of doing so -apart from only having the possibility of changing the first configuration-)
When going deeper I come to pathsettingsProvider that contains null;
I learned that the behaviour changes with different implementations of
public CFolderData getRootFolderData() from CConfigurationData
But I have no idea whether this is the root cause or a side effect
Expected behavior
The configuration specific info is given.
Screenshots
see above
Desktop (please complete the following information):
Background info
This is into relation with the discussion here:
#337
I'm assuming I'm doing something "wrong" but I can't figure out what.
The text was updated successfully, but these errors were encountered: