We are using the new incubating PublishingExtension and registering an IvyPublication in its publication container. Since we need to manually populate the ‘IvyPublication’ with all artifacts from all configurations, we are relying on the deferred configuration support for this extension, and thus expect that the extension will be configured at the last possible moment so that all artifacts are already available.
Unfortunately it turns out that reading the project properties using project.properties is triggering the configuration of the publishing extension and thus reading all configuration artifacts too early.
Shall we instruct all users not to do that? If this is “by design”, then I guess it deserves to be documented as a known limitation - IMHO it is not that obvious that reading all project properties implies configuring all DeferredConfigurable extensions. Do you have any suggestion how to make sure the build fails early, if a deferred configurable is configured before project is evaluated (which is undesirable in our case)?
P.S. We are using Gradle 1.5