Bombe 0.4.0 includes a small number of practical changes to our toolchain, to better serve downstream projects and simplify our module offering across our projects.

Notable Changes

Classes and packages that have simply been relocated aren’t listed here, please see the included IntelliJ Migration Map.

  • Jars has been removed, projects are encouraged to migrate to Atlas.
  • AbstractReader has been removed, having been replaced by string.
    • There is no entry in the migration map for this, as StringReader in string is not 1-to-1 compatible. Projects will need to take care in adapting for this change.


ASM Module

The ASM module is not more, opting for an optional dependency on ASM in Bombe instead, which allows some classes which do not have a hard-dependency on ASM to be used by more projects (classes that still have a hard dependency are packaged in asm packages).

Please refer to the IntelliJ Migration Map.

Jar Module

The jar package (with the exception of ClassProvider and its implementations) has been migrated to a new bombe-jar module.

There are no relevant migrations for this change.

IntelliJ Migration Map

<?xml version="1.0" encoding="UTF-8"?>
  <name value="Bombe 0.3.x -&gt; 0.4.0" />
  <description value="Migrates Bombe 0.3.x usage to Bombe 0.4.0." />
  	newName="org.cadixdev.bombe.analysis.CompositeInheritanceProvider" type="class" />
  	newName="org.cadixdev.bombe.jar.ClassProvider" type="class" />
  	newName="org.cadixdev.bombe.jar.ClassLoaderClassProvider" type="class" />
  	newName="org.cadixdev.bombe.jar.JarFileClassProvider" type="class" />
  	newName="org.cadixdev.bombe.jar.asm.JarEntryRemappingTransformer" type="class" />
  	newName="org.cadixdev.bombe.analysis.asm.ClassProviderInheritanceProvider" type="class" />