Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
Added `getLocationOnly()` to file system properties, to provide lazy access to just the location of the file system element, rather than both the location and the content of the file system element.

This can be used when mapping the location of a task output to produce an input to some other task, without implying a dependency on the producing task. For example, an IDE project file generation task may need to know where some output will end up (so need to know its location) but does not use the content of the output.

  1. … 9 more files in changeset.
Added `getLocationOnly()` to file system properties, to provide lazy access to just the location of the file system element, rather than both the location and the content of the file system element.

This can be used when mapping the location of a task output to produce an input to some other task, without implying a dependency on the producing task. For example, an IDE project file generation task may need to know where some output will end up (so need to know its location) but does not use the content of the output.

  1. … 9 more files in changeset.
Added `getLocationOnly()` to file system properties, to provide lazy access to just the location of the file system element, rather than both the location and the content of the file system element.

This can be used when mapping the location of a task output to produce an input to some other task, without implying a dependency on the producing task. For example, an IDE project file generation task may need to know where some output will end up (so need to know its location) but does not use the content of the output.

  1. … 9 more files in changeset.
Added `getLocationOnly()` to file system properties, to provide lazy access to just the location of the file system element, rather than both the location and the content of the file system element.

This can be used when mapping the location of a task output to produce an input to some other task, without implying a dependency on the producing task. For example, an IDE project file generation task may need to know where some output will end up (so need to know its location) but does not use the content of the output.

  1. … 9 more files in changeset.
Added `getLocationOnly()` to file system properties, to provide lazy access to just the location of the file system element, rather than both the location and the content of the file system element.

This can be used when mapping the location of a task output to produce an input to some other task, without implying a dependency on the producing task. For example, an IDE project file generation task may need to know where some output will end up (so need to know its location) but does not use the content of the output.

  1. … 9 more files in changeset.
Added `getLocationOnly()` to file system properties, to provide lazy access to just the location of the file system element, rather than both the location and the content of the file system element.

This can be used when mapping the location of a task output to produce an input to some other task, without implying a dependency on the producing task. For example, an IDE project file generation task may need to know where some output will end up (so need to know its location) but does not use the content of the output.

  1. … 9 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 3 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 3 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 3 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 3 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 2 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 2 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 2 more files in changeset.
Simplify `DefaultTypeAnnotationMetadataStore#validateSetterForMutableType` using the newly defined non-generic `propertyNameFor`

  1. … 2 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 8 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 2 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 8 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 8 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 8 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 8 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 2 more files in changeset.
Add `PropertyValidationAccess#validateMutableNonFinalField` to encourage final fields in tasks

  1. … 2 more files in changeset.
Test for conflicting annotations on field and method

Make the detection of Groovy-generated getters generic

We don't want DefaultTypeAnnotationMetadataStore to depend directly on Groovy. Instead, we can inject code that detects Groovy generated 'is'-getters.

  1. … 8 more files in changeset.
Remove unused test class

Also split another test case to better capture what's going on with ignored properties.

  1. … 1 more file in changeset.
Handle cases when we have both 'is'-getters and 'get'-getters

Groovy generates both an 'is' and a 'get'-getter for boolean properties, and we shouldn't warn in this case. However, if the user defines both getter methods, we should require at least one of them to be explicitly ignored.

We need to figure out which method we need to call to get the value of the property. In the Groovy-generated case we can safely pick the 'get'-getter, because they both do exactly the same. In the user-specified case we need to be told which (if any) to use, as we have no means to make this decision on our own.

  1. … 3 more files in changeset.
Allow Groovy-generated boolean getters to exist without warning

  1. … 1 more file in changeset.
Test warning when ignored property has other annotations

  1. … 1 more file in changeset.
Test warnings for annotated non-getter methods

  1. … 1 more file in changeset.
Handle Inject annotation on fields

Unlike other property type annotations, we allow `@Inject` to be present on fields without a getter.

  1. … 2 more files in changeset.