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

[RFC]: Drop support for niche serializers MsgPack, PhpCode, PythonPickle and Wddx #21

Closed
boesing opened this issue Jul 2, 2023 · 2 comments · Fixed by #28
Closed

[RFC]: Drop support for niche serializers MsgPack, PhpCode, PythonPickle and Wddx #21

boesing opened this issue Jul 2, 2023 · 2 comments · Fixed by #28
Milestone

Comments

@boesing
Copy link
Member

boesing commented Jul 2, 2023

RFC

Q A
Proposed Version(s) 3.0.0
BC Break? Yes

Goal

Reduce overall complexity of this component by dropping niche serializers.

Background

As this component is used in a bunch of other components, abandoning it is not as easy as I've thought. Due to this, maintaining this component in the future might be relevant and thus, I'd love to drop support for those serializers which seems to fill a niche such as:

  • MsgPack
  • PhpCode
  • PythonPickle
  • Wddx

I'd love to focus on IgBinary, Json and PhpSerialize - especially as these are most probably the most popular and mostly used serialization types (just a guess, never used any of those above besides PhpCode which gave me pain due to eval).

Especially wddx seems to not work anymore as you can see by following the commits in #22

Considerations

In case projects are using one of the mentioned serializers above, they might have to integrate the serializers to their projects or switch to one of the still available serializers IgBinary, Json or PhpSerialize.

Due to these changes, other components using this component (such as laminas-cache and all adapters, laminas-hydrator, the doctrine module and a bunch of other components) are unable to use MsgPack, PhpCode, PythonPickle or Wddx.

Proposal(s)

Simply drop the code of these serializers for 4.0 so that the overall maintenance is reduced to the (most probably) mostly used serializers.

Appendix

Especially due to the slight scope of this component (providing two methods via an interface), re-implementing very specific serializers should not be a big deal.

@boesing boesing added the RFC label Jul 2, 2023
@laminas-bot
Copy link
Contributor

This package is considered feature-complete, and is now in security-only maintenance mode, following a decision by the Technical Steering Committee.
If you have a security issue, please follow our security reporting guidelines.
If you wish to take on the role of maintainer, please nominate yourself

If you are looking for an actively maintained package alternative, we recommend:

@boesing boesing reopened this Jul 2, 2023
@boesing boesing added this to the 3.0.0 milestone Jul 2, 2023
@boesing
Copy link
Member Author

boesing commented Jul 7, 2023

Keeping PhpCode for now, removal is initiated in #28 and finalized in #27

@boesing boesing linked a pull request Jul 7, 2023 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants