swisnl / json-api-client

A PHP package for mapping remote {json:api} resources to Eloquent like models and collections.
MIT License
205 stars 24 forks source link

2.0 plan #86

Closed bbrala closed 2 years ago

bbrala commented 3 years ago

This meta issue is overview of the work for the 2.0 release.

Goals

We want to minimize the dependencies of this package. There are a few that are currently added that are not really needed. Also we want to make this package more framework agnotic and extract the Laravel code to a separate package.

Related issues

Milestone: https://github.com/swisnl/json-api-client/milestone/1

85 - We will drop nyholm/psr7 when https://github.com/guzzle/psr7/issues/327 is resolved so the consumer can just choose their PSR-17 factory.

83 - Remove https://github.com/jenssegers/model dependency. Since the functionality it supplies is pretty simple we will pull maintenance to this package.

80 - Currently we use illuminate/support (also through jessegers/model also this dependency). It is now possible to use illuminate/collections and have only the parts that are needed instead of full Laravel.

ooglek commented 2 years ago

How's this progress going?

bbrala commented 2 years ago

Hmm, I think we actually did all the mentioned changes. :)

I made this to minimize dependencies. Kinda still want a version without any dependencies but that seems a bit hard.

I don't think we released the changes as 2.0 but as a minor.

ooglek commented 2 years ago

1.3.3 was released in January 2021, before the July 2021 commit of some of the changes.

2.0.0-beta is out since July 2021, but since it hadn't come out of pre-release, it seemed like it wasn't really ready or fully/well tested.

If it is, pull the trigger and push out 2.0.0 as a release!

bbrala commented 2 years ago

I'll talk to @JaZo and see if it's prudent :) thanks for reminding us 👍

ooglek commented 2 years ago

I appreciate the hard work on an important project! Cheers!

JaZo commented 2 years ago

We have been using 2.x in some production apps for a while now, so I think it's fair to say it's ready for a stable release. I'll cut the release today! Thanks for the reminder @ooglek!

JaZo commented 2 years ago

2.0.0 is released!