| Summary: | Application of Decorator for Excluded Files from Build in some cases is surprising | ||
|---|---|---|---|
| Product: | [Tools] CDT | Reporter: | Andrew Gvozdev <angvoz.dev> |
| Component: | cdt-build | Assignee: | cdt-build-inbox <cdt-build-inbox> |
| Status: | NEW --- | QA Contact: | Jonah Graham <jonah> |
| Severity: | normal | ||
| Priority: | P3 | CC: | cdtdoug, pwebster, recoskie, yevshif |
| Version: | 8.0 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Windows 7 | ||
| Whiteboard: | |||
|
Description
Andrew Gvozdev
The decorators are also being applied to projects that don't even have the cnature. (In reply to comment #0) > There is a couple of cases where I as a user find decorations of excluded > files unexpected: - inside of excluded folders the decorator is applied to > all files even on files unrelated to build or C/C++ As far as this one, this is tricky. In the managed build case we mostly know what files will or will not be built, but in the non-managed case we really have no idea what the build command and/or build script will do, and being external to the IDE, the build is almost certainly not going to respect any include/exclude settings in the IDE. Hence, we don't really know what to include or exclude. I think in the non-managed case we should not apply decorators at all. Thoughts? C/C++ content types are known (and can be amended by users/ISV). We could figure out content types by file extension and apply decorations only to those. As far as non managed build, users can mark files/folders manually for whatever reason (distinct presentation in UI, to avoid indexing etc.). So it is reasonable for them to expect CDT to decorate those. (In reply to comment #3) > C/C++ content types are known (and can be amended by users/ISV). We could > figure out content types by file extension and apply decorations only to > those. As far as non managed build, users can mark files/folders manually > for whatever reason (distinct presentation in UI, to avoid indexing etc.). > So it is reasonable for them to expect CDT to decorate those. Ok, yes I suppose that is a valid use case. There are instances however where CDT's builders are used on non-C/C++ content types, e.g. Fortran. I suppose decorating some files in the project would be better than none, but users are probably going to be confused if they have a mixed C/Fortan project and the UI shows decorations on one of the file types but not the other. I don't think there's anything we can really do about that, I am just stating it here to make it clear. If Fortran plugin does not decorate excluded files of Fortran content types it is up to its developers to provide that, isn't it? Note also that it is possible to disable CDT decorators via Preferences->General->Appearance->Label Decorations. |