Ratchanan Srirattanamet (@ratchanan.sr) commented about dlls/msi/msi.c:
+ win32, product, feature, component); + } + + if (rc != ERROR_SUCCESS) + return rc; + + /* If the product contain only 1 feature, it won't be recorded in assembly publication. + * Look it up to use as a parameter in MSIProvideComponentW(). + */ + if (feature[0] == '\0') { + /* First, verify that this product indeed has single feature. */ + rc = MsiEnumFeaturesW(product, 1, feature, feature_parent); + if (rc == ERROR_SUCCESS) { + ERR("Product for assembly '%ls' has > 1 feature, but the published assembly record " + "doesn't have feature. This can happen if package is installed in older version " + "of Wine. Try re-installing this package.\n", szAssemblyName); I need some help in wording this error. This error happens if the package is installed before !9037 is merged and the package indeed has 2 or more features. What I want is to direct users to re-install the package that provides the assembly in question. At it stands, I think it's too technical, but I can't think of a better wording at the moment.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/9038#note_116794