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

IncompatibleResultTypeProblem reported as DirectMissingMethodProblem #459

Closed
raboof opened this issue Feb 4, 2020 · 2 comments · Fixed by #460
Closed

IncompatibleResultTypeProblem reported as DirectMissingMethodProblem #459

raboof opened this issue Feb 4, 2020 · 2 comments · Fixed by #460
Milestone

Comments

@raboof
Copy link
Contributor

raboof commented Feb 4, 2020

In Akka HTTP, a number of problems that we had previously filtered as IncompatibleResultTypeProblem are reported as DirectMissingMethodProblem since 0.6.3. For example, akka.http.caching.scaladsl.CachingSettings went from:

public abstract class akka.http.caching.scaladsl.CachingSettings extends akka.http.caching.javadsl.CachingSettings {
  public static akka.http.caching.scaladsl.CachingSettingsImpl fromSubConfig(com.typesafe.config.Config, com.typesafe.config.Config);
  public static java.lang.Object apply(com.typesafe.config.Config);
  public static java.lang.Object apply(java.lang.String);
  public static java.lang.Object apply(akka.actor.ActorSystem);
  public static java.lang.Object default(akka.actor.ActorRefFactory);
  public abstract akka.http.caching.scaladsl.LfuCacheSettings lfuCacheSettings();
  public akka.http.caching.scaladsl.CachingSettings withLfuCacheSettings(akka.http.caching.scaladsl.LfuCacheSettings);
  public akka.http.caching.scaladsl.CachingSettings();
}

to

public abstract class akka.http.caching.scaladsl.CachingSettings extends akka.http.caching.javadsl.CachingSettings {
  public static akka.http.caching.scaladsl.CachingSettings apply(java.lang.String);
  public static akka.http.caching.scaladsl.CachingSettings apply(com.typesafe.config.Config);
  public static java.lang.Object default(akka.actor.ActorRefFactory);
  public static java.lang.Object apply(akka.actor.ActorSystem);
  public abstract akka.http.caching.scaladsl.LfuCacheSettings lfuCacheSettings();
  public akka.http.caching.scaladsl.CachingSettings withLfuCacheSettings(akka.http.caching.scaladsl.LfuCacheSettings);
  public akka.http.caching.scaladsl.CachingSettings();
}

which was already filtered with ProblemFilters.exclude[IncompatibleResultTypeProblem]("akka.http.caching.scaladsl.CachingSettings.apply"), but is now again reported as a static method apply(com.typesafe.config.Config)java.lang.Object in class akka.http.caching.scaladsl.CachingSettings does not have a correspondent in current version.

IncompatibleResultTypeProblem seems to be more specific?

@dwijnand
Copy link
Collaborator

dwijnand commented Feb 4, 2020

Sorry about that!

I suspect this might have to do with b58ed45?w=1 (part of #415), which I think (from reading my own commit message) was meant to be a no-op clarification of the code, not a behavioural change.

But (if I've correctly identified) it sounds like it changed something and nothing caught that in the test suite... 😕

Do you have a little spare bandwidth to look back at my diff? Alternatively, do you have time to minimise this?

If not, bounce it back to me and I'll try to find time.

@dwijnand
Copy link
Collaborator

dwijnand commented Feb 4, 2020

I might do a quick release of this, this week.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging a pull request may close this issue.

2 participants