Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement ProxyNonConstantType #1799

Merged
merged 2 commits into from
Jun 22, 2021
Merged

Conversation

carterkozak
Copy link
Contributor

Proxy instances should be created using constant types known at compile time to allow native-image
behavior to match hotspot. Methods which build proxies should take a
Function<InvocationHandler, ? extends T> instead of arbitrary class references.

The proxy annotation processor can make this process much easier: https://github.com/palantir/proxy-processor

See https://www.graalvm.org/reference-manual/native-image/DynamicProxy/#automatic-detection

==COMMIT_MSG==
Implement ProxyNonConstantType
==COMMIT_MSG==

@carterkozak carterkozak requested a review from jkozlowski June 17, 2021 15:41
@changelog-app
Copy link

changelog-app bot commented Jun 17, 2021

Generate changelog in changelog/@unreleased

Type

  • Feature
  • Improvement
  • Fix
  • Break
  • Deprecation
  • Manual task
  • Migration

Description

Implement ProxyNonConstantType

Check the box to generate changelog(s)

  • Generate changelog entry

@policy-bot policy-bot bot requested a review from ferozco June 17, 2021 15:41
name = "ProxyNonConstantType",
link = "https://github.com/palantir/gradle-baseline#baseline-error-prone-checks",
linkType = LinkType.CUSTOM,
severity = SeverityLevel.SUGGESTION,
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

currently a non-enforcing suggestion

@carterkozak carterkozak removed the request for review from ferozco June 17, 2021 16:10
@carterkozak
Copy link
Contributor Author

I thought this had merged! 👍

@bulldozer-bot bulldozer-bot bot merged commit 86c9c9c into develop Jun 22, 2021
@bulldozer-bot bulldozer-bot bot deleted the ckozak/constant_proxy_creation branch June 22, 2021 16:52
@svc-autorelease
Copy link
Collaborator

Released 3.93.0

bulldozer-bot bot pushed a commit to palantir/witchcraft-api that referenced this pull request Jun 22, 2021
###### _excavator_ is a bot for automating changes across repositories.

Changes produced by the roomba/latest-baseline-oss check.

# Release Notes
## 3.93.0
| Type | Description | Link |
| ---- | ----------- | ---- |
| Improvement | Implement ProxyNonConstantType | palantir/gradle-baseline#1799 |



To enable or disable this check, please contact the maintainers of Excavator.
This was referenced Jun 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants