xp-framework / rfc

One of the major deficiencies in the development of many projects is that there is no roadmap or strategy available other than in the developers' heads. The XP team publishes its decisions by documenting change requests in form of RFCs.
2 stars 1 forks source link

Extract compression streams #342

Closed thekid closed 6 months ago

thekid commented 2 years ago

Scope of Change

This RFC suggests extracting compressing and decompressing stream implementations into a dedicated library.

Rationale

Faster evolution of their API, e.g. adding more compression algorithms while not having to base XP core on more exotic libraries

Functionality

The following classes will be removed from the io.streams packge.

public class io.streams.Bz2CompressingOutputStream
public class io.streams.Bz2DecompressingInputStream
public class io.streams.GzCompressingOutputStream
public class io.streams.GzDecompressingInputStream
public class io.streams.DeflatingOutputStream
public class io.streams.InflatingInputStream

Security considerations

None

Speed impact

Reduced size of XP core

Dependencies

Code must migrate to the new library, which can be done at any time.

Related documents

https://github.com/xp-forge/compression

thekid commented 6 months ago

Classes removed in https://github.com/xp-framework/core/releases/tag/v12.0.0