Skip to content

Introduce API revision checks #194

Closed
@sembler

Description

@sembler
Collaborator

The release of version 1.5.0 revealed some accidental API changes that broke user code. It was suggested that we incorporate Revapi into our build process to compare against previous releases and discover any breaking changes.

Activity

added a commit that references this issue on Jun 16, 2021

Resolves tipsy#194. Introduces Revapi into the build process.

b629dd8
sembler

sembler commented on Jun 16, 2021

@sembler
CollaboratorAuthor

@tipsy can we use the verify goal for actions for this project? Or at least include the Revapi 'check' goal?

added a commit that references this issue on Jun 17, 2021

Resolves tipsy#194. Introduces Revapi into the build process.

c592a99
sembler

sembler commented on Jun 17, 2021

@sembler
CollaboratorAuthor

Looks like the goal change works as expected. I'll merge unless you have concerns @tipsy , @obecker.

obecker

obecker commented on Jun 17, 2021

@obecker
Contributor

Out of curiosity: what were those incompatible changes? Should we restore something?

sembler

sembler commented on Jun 17, 2021

@sembler
CollaboratorAuthor

26ba4c3

Basically the return types of TagCreator were no longer compatible with compiled libraries. I also noticed that some methods are gone, such as withRole() for ATags. I think we've gone past restoring things at this point. But we can at least ensure that this is more easily caught before merges.

Edit:
You can see the full list of errors by changing <artifact>com.j2html:j2html:1.5.0</artifact> to <artifact>com.j2html:j2html:1.4.0</artifact> in the POM for the revapi-maven-plugin. and then running the verify phase.

obecker

obecker commented on Jun 18, 2021

@obecker
Contributor

Yes, probably 1.5.0 should have been 2.0.0.
The generated classes support only those attributes that are allowed per HTML specification, so many (wrongly used) attributes are gone, which is indeed no longer compatible.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @obecker@sembler

        Issue actions

          Introduce API revision checks · Issue #194 · tipsy/j2html