Skip to content

v0.18.58

Choose a tag to compare

@kubukoz kubukoz released this 09 Sep 12:51
e80bccb
  • codegen: Fix an IllegalAccessError (e.g. class ...IncludeClosures cannot access its abstract superclass ...BackwardCompatHelper) that could occur during smithy4sCodegen when a project dependency pulled a different version of a Smithy library (smithy-build, smithy-model, etc.) than the one bundled with the codegen plugin. The model-loading URLClassLoader used the plugin classloader as its parent, so a duplicate copy of a plugin-provided module on the child loader could split a package across two classloaders and break package-private access. The codegen now drops any dependency already provided by the parent classloader (tracked via the new BuildInfo.codegenDependencies) from the child classloader, so Smithy versions no longer need to be aligned between the plugin and the project's dependencies.