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

fix(jsii): deduplicate interfaces #497

Merged
merged 2 commits into from
May 6, 2019
Merged

Conversation

eladb
Copy link
Contributor

@eladb eladb commented May 6, 2019

When processing interfaces from multiple declaration sites (e.g.
when a base class is erased), we need to make sure that only
include every interface once.

Fixes #496

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

When processing interfaces from multiple declaration sites (e.g.
when a base class is erased), we need to make sure that only
include every interface once.

Fixes #496
@eladb eladb requested a review from a team as a code owner May 6, 2019 14:09
@eladb eladb merged commit 05f5189 into master May 6, 2019
@eladb eladb deleted the benisrae/dedup-interfaces branch May 6, 2019 21:12
RomainMuller added a commit that referenced this pull request May 21, 2019
### Bug Fixes

* **assembler:** handle unknown types without crashing ([#501](#501)) ([7ba1aab](7ba1aab))
* **jsii:** deduplicate interfaces ([#497](#497)) ([05f5189](05f5189)), closes [#496](#496)
* **jsii-diff:** catch exception if type disappeared from other assembly ([#504](#504)) ([8d11900](8d11900))
* **jsii-diff:** correctly handle assignability of type unions ([#500](#500)) ([04c061e](04c061e))
* **jsii-diff:** don't fail on new packages ([#502](#502)) ([d1d0633](d1d0633))

### Features

* **jsii:** protect against prohibited member names ([#506](#506)) ([2848f76](2848f76))

### BREAKING CHANGES

* **jsii:** The `equals` and `hashCode` method names may no longer be used on JSII classes and interfaces, due to their
  colliding with "special meaning" methods in other languages (Java, .NET, ...).
RomainMuller added a commit that referenced this pull request May 21, 2019
### Bug Fixes

* **assembler:** handle unknown types without crashing ([#501](#501)) ([7ba1aab](7ba1aab))
* **jsii:** deduplicate interfaces ([#497](#497)) ([05f5189](05f5189)), closes [#496](#496)
* **jsii-diff:** catch exception if type disappeared from other assembly ([#504](#504)) ([8d11900](8d11900))
* **jsii-diff:** correctly handle assignability of type unions ([#500](#500)) ([04c061e](04c061e))
* **jsii-diff:** don't fail on new packages ([#502](#502)) ([d1d0633](d1d0633))

### Features

* **jsii:** protect against prohibited member names ([#506](#506)) ([2848f76](2848f76))

### BREAKING CHANGES

* **jsii:** The `equals` and `hashCode` method names may no longer be used on JSII classes and interfaces, due to their
  colliding with "special meaning" methods in other languages (Java, .NET, ...).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Interface is defined twice if it comes from an erased base
2 participants