On Wed, 15 Feb 2023 22:44:21 GMT, David M. Lloyd <d...@openjdk.org> wrote:
>> The class generated for lambda proxies is now defined as a hidden class. >> This means that the counter, which was used to ensure a unique class name >> and avoid clashes, is now redundant. In addition to performing redundant >> work, this also impacts build reproducibility for native image generators >> which might already have a strategy to cope with hidden classes but cannot >> cope with indeterminate definition order for lambda proxy classes. >> >> This solves JDK-8292914 by making lambda proxy names always be stable >> without any configuration needed. This would also replace #10024. > > David M. Lloyd has refreshed the contents of this pull request, and previous > commits have been removed. The incremental views will show differences > compared to the previous content of the PR. The pull request contains one new > commit since the last revision: > > 8292914: Drop the counter from lambda class names > > The class generated for lambda proxies is now defined as a hidden class. > This means that the counter, which was used to ensure a unique class name and > avoid clashes, is now redundant. In addition to performing redundant work, > this also impacts build reproducibility for native image generators which > might already have a strategy to cope with hidden classes but cannot cope > with indeterminate definition order for lambda proxy classes. > > Additionally, the lambda proxy class dumper is enhanced to prepend a raw > timestamp before the filename. It looks like just prepending a timestamp is not exactly ideal since it would put it before the first directory segment of the path. So, I'm looking at wedging it in before the last segment. Also, I'm just using a raw timestamp value, because the date formatting infrastructure relies on lambdas. ------------- PR: https://git.openjdk.org/jdk/pull/12579