Since version 21 there is a new problem.
If the documentation contains the tag ‘cref’, the documentation is no longer created. When I export, I suddenly have 379 new warnings.
Example from my code:
/// <summary>
/// Über diese Eigenschaft kann das Clonen in der <see cref="TTData.Klassen.ModifiedFieldList|TTTDataSetModifiedFieldList" />
/// unterbunden werden. <br />Dies macht Sinn bei DataSet's, deren Daten nur zur Anzeige
/// dienen und nie geändert werden; <br />oder für DataSets, deren Daten geändert werden,
/// aber keine HISTP-Sätze über die Klasse <see cref="FeldWerte_Mod2Hist|TMod2HistP" />
/// geschrieben werden.
/// </summary>
I reproduced it. There is another issue need to be addressed. is the unit name “FeldWerte_Mod2Hist” appear in the uses or in containing project or required packages?
Doc editor render resolved cref to qualified form (#74, fixed in code)
Doc editor becomes empty when it failed to resolve a cref (fixed in code, there is a bug that doc comment is always skipped when it contains errors)
DocInsight failed to resolve those cref which reference units not listed in uses, and thus it report warnings during build. We will enhance it to search units in the containing project and dependent unit tree.
Thanks. Not being able to document exceptions is a significant limitation. Revisiting large projects needing documentation is laborious. Having to return to them yet again just to tag the exception classes adds to the inconvenience. Would you please consider posting an updated version soon? Thank you again.
It is reliable to resolve cref in the dependent units/packages (DAG) as it follows Delphi compilation model, but it might cause some problem to just lookup in the entire project group. For instance, there are two units in different projects, which has the same name, the cref link to the unit name in another project is ambiguity to resolve. It might also have impact on incremental compilation feature in future.
In practical, reversed links are still useful. We plan to support it. It will report an error if the unit name is ambitious.