Problem
Plugin 0.1.1 (introduced in #49) renamed the extension property:
- Before (
0.1.0): svcsAnnotationsFile — a single RegularFileProperty
- After (
0.1.1): svcsAnnotationsFiles — a plural ConfigurableFileCollection
Any build.gradle that previously configured svcsAnnotationsFile now fails at configuration time with:
Could not set unknown property 'svcsAnnotationsFile' for extension 'requirementsTool'
of type io.github.reqstool.gradle.RequirementsToolExtension.
This is a hard break — the build cannot proceed at all. Users upgrading from 0.1.0 to 0.1.1 via Dependabot or other automated tooling will get a build failure with no migration path other than reading the release notes or source.
Expected behaviour
The old svcsAnnotationsFile property should still be accepted, but emit a deprecation warning and internally add the value to svcsAnnotationsFiles:
/**
* @deprecated Use {@link #getSvcsAnnotationsFiles()} instead.
*/
@Deprecated
public void setSvcsAnnotationsFile(Object file) {
project.getLogger().warn(
"[reqstool] 'svcsAnnotationsFile' is deprecated and will be removed in a future release. " +
"Use 'svcsAnnotationsFiles.from(...)' instead."
);
this.svcsAnnotationsFiles.from(file);
}
This makes the upgrade path:
- Upgrade plugin version → build still works, deprecation warning printed
- Migrate
build.gradle at own pace: svcsAnnotationsFile = ... → svcsAnnotationsFiles.from(...)
- Deprecation warning disappears
Suggested fix
Add a setter for the old name in RequirementsToolExtension that delegates to svcsAnnotationsFiles.from(...) and logs a WARN via the Gradle logger.
Version info
- Plugin
0.1.0: property named svcsAnnotationsFile
- Plugin
0.1.1: property renamed to svcsAnnotationsFiles, old name removed without deprecation period
Problem
Plugin
0.1.1(introduced in #49) renamed the extension property:0.1.0):svcsAnnotationsFile— a singleRegularFileProperty0.1.1):svcsAnnotationsFiles— a pluralConfigurableFileCollectionAny
build.gradlethat previously configuredsvcsAnnotationsFilenow fails at configuration time with:This is a hard break — the build cannot proceed at all. Users upgrading from
0.1.0to0.1.1via Dependabot or other automated tooling will get a build failure with no migration path other than reading the release notes or source.Expected behaviour
The old
svcsAnnotationsFileproperty should still be accepted, but emit a deprecation warning and internally add the value tosvcsAnnotationsFiles:This makes the upgrade path:
build.gradleat own pace:svcsAnnotationsFile = ...→svcsAnnotationsFiles.from(...)Suggested fix
Add a setter for the old name in
RequirementsToolExtensionthat delegates tosvcsAnnotationsFiles.from(...)and logs aWARNvia the Gradle logger.Version info
0.1.0: property namedsvcsAnnotationsFile0.1.1: property renamed tosvcsAnnotationsFiles, old name removed without deprecation period