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

chore(benchmark): remove obsolete files #9068

Merged
merged 1 commit into from Apr 7, 2022

Conversation

pihme
Copy link
Contributor

@pihme pihme commented Apr 7, 2022

Description

Removes obsolete files

Related issues

closes #9066

Definition of Done

Not all items need to be done depending on the issue and the pull request.

Code changes:

  • The changes are backwards compatibility with previous versions
  • If it fixes a bug then PRs are created to backport the fix to the last two minor versions. You can trigger a backport by assigning labels (e.g. backport stable/1.3) to the PR, in case that fails you need to create backports manually.

Testing:

  • There are unit/integration tests that verify all acceptance criterias of the issue
  • New tests are written to ensure backwards compatibility with further versions
  • The behavior is tested manually
  • The change has been verified by a QA run
  • The impact of the changes is verified by a benchmark

Documentation:

  • The documentation is updated (e.g. BPMN reference, configuration, examples, get-started guides, etc.)
  • New content is added to the release announcement
  • If the PR changes how BPMN processes are validated (e.g. support new BPMN element) then the Camunda modeling team should be informed to adjust the BPMN linting.

@pihme pihme requested a review from npepinpe April 7, 2022 11:41
Copy link
Member

@npepinpe npepinpe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚀

@pihme
Copy link
Contributor Author

pihme commented Apr 7, 2022

bors merge

zeebe-bors-camunda bot added a commit that referenced this pull request Apr 7, 2022
9068: chore(benchmark): remove obsolete files r=pihme a=pihme

## Description

Removes obsolete files

## Related issues

closes #9066



Co-authored-by: pihme <pihme@users.noreply.github.com>
@zeebe-bors-camunda
Copy link
Contributor

Build failed:

@pihme
Copy link
Contributor Author

pihme commented Apr 7, 2022

bors merge

zeebe-bors-camunda bot added a commit that referenced this pull request Apr 7, 2022
9068: chore(benchmark): remove obsolete files r=pihme a=pihme

## Description

Removes obsolete files

## Related issues

closes #9066



Co-authored-by: pihme <pihme@users.noreply.github.com>
@zeebe-bors-camunda
Copy link
Contributor

Build failed:

@pihme
Copy link
Contributor Author

pihme commented Apr 7, 2022

bors merge

zeebe-bors-camunda bot added a commit that referenced this pull request Apr 7, 2022
9015: Replace protocol-util module with explicit mapping via forward-declarations r=npepinpe a=npepinpe

## Description

This PR drops the `protocol-util` module entirely, instead opting for a more explicit mapping done via a forward-declaration in the `ImmutableProtocol` annotation. The annotation now has a mandatory member, `builder`, which should be assigned to the builder class generated by the immutable protocol. This will allow classes to later find the correct builder class, enabling deserialization use cases. It could be further extended to also enable mapping by declaring the immutable class as well. Doing this means the type itself carries all the information it needs to be deserialized by `protocol-jackson`, which makes the shading use case much, much simpler. Operate now only has to shade the protocol itself, nothing else needs to be shaded (though they may still want to shade the deserialization module to be safe, as shading is there for major versions).

This PR also marks the generated types with two marker annotations: `ImmutableProtocol.Type` and `ImmutableProtocol.Builder`. The generated types (`ImmutableRecord`, `ImmutableVariableRecordValue`, etc.) will be marked with `ImmutableProtocol.Type`, and their builders with `ImmutableProtocol.Builder`. Doing so allows us to more easily detect whether a type needs special deserialization configuration (e.g. ``@JsonIgnore(unknownProperties` = true)` for the types marked), and also lets the `ProtocolFactory` easily find the concrete, immutable types for the abstract protocol types (i.e. look for `ImmutableProtocol` annotated types, then look for their implementing classes annotated with `ImmutableProtocol.Type`).

We can then move the `ValueTypeMapping` class into the protocol since it has no dependency other than the protocol. This allows us to get rid entirely of the `protocol-util` module, which was admittedly a very broad module by definition, and most likely would have become a shallow module over time.

A few tests were added to compensate, mostly `ArchUnit` tests to ensure that the forward-declared builder builds the correct type, and again in the factory to ensure we can generate objects for all protocol types.



9068: chore(benchmark): remove obsolete files r=pihme a=pihme

## Description

Removes obsolete files

## Related issues

closes #9066



Co-authored-by: Nicolas Pepin-Perreault <nicolas.pepin-perreault@camunda.com>
Co-authored-by: pihme <pihme@users.noreply.github.com>
@zeebe-bors-camunda
Copy link
Contributor

Build failed (retrying...):

zeebe-bors-camunda bot added a commit that referenced this pull request Apr 7, 2022
9068: chore(benchmark): remove obsolete files r=pihme a=pihme

## Description

Removes obsolete files

## Related issues

closes #9066



Co-authored-by: pihme <pihme@users.noreply.github.com>
@pihme
Copy link
Contributor Author

pihme commented Apr 7, 2022

bors merge

@zeebe-bors-camunda
Copy link
Contributor

@zeebe-bors-camunda zeebe-bors-camunda bot merged commit a7944bf into main Apr 7, 2022
@zeebe-bors-camunda zeebe-bors-camunda bot deleted the 9066-remove-obsolete-code branch April 7, 2022 15:23
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.

Remove obsolete zbench folder
2 participants