BottleRocketStudios / iOS-Hyperspace

An extremely lightweight wrapper around URLSession to make working with APIs a breeze.
Apache License 2.0
47 stars 17 forks source link

Version 2.0.0 #39

Closed wmcginty closed 6 years ago

wmcginty commented 6 years ago

There's a large set of changes incoming, this is a placeholder for the incoming 2.0.0 release.

Release checklist:

tylermilner commented 6 years ago

One other breaking change we might want to get into version 2.0 is the change of HTTP.Status to a RawRepresentable struct (similar to HTTP.HeaderKey and HTTP.HeaderValue). I'll work on getting a PR up for that soon.

We can also push out a 2.0 pre-release soon so that our projects that are currently using the new features don't have to point to the release branch.

tylermilner commented 6 years ago

I think the only thing that we've got left for this release is the great renaming. I think the general consensus is leaning towards: NetworkRequest -> Request AnyNetworkRequest<T> -> AnyRequest<T>

@wmcginty Is there anything else you can think of?

wmcginty commented 6 years ago

@tylermilner

Only things that might be worth doing (but can definitely be done between an RC and a final release) is documenting some of the less common features (I've started doing that for decoding and error handling), and possibly a migration guide.

wmcginty commented 6 years ago

The request rename is merged. Last thing we need to determine is if we want a 2.0-beta or go straight to 2.0. Thoughts @tylermilner @earlgaspard ?

earlgaspard commented 6 years ago

beta sounds like it is not done yet. is it done yet?

wmcginty commented 6 years ago

For me it means it's done, but it hasn't been thoroughly tested in a "production" environment yet. Unit Tests and examples can only go so far. I'm open to suggestions - RC maybe?

earlgaspard commented 6 years ago

I'm for 2.0.0. if we find problems, we can do hot fixes and increase that number. example: 2.0.1 that's my suggestions

tylermilner commented 6 years ago

Yeah, I think we're good to go ahead and release as 2.0.0. I think @earlgaspard's project has been pointing to the release branch for a while now.

wmcginty commented 6 years ago

Sounds good. Same as mine actually.

tylermilner commented 6 years ago

Just to keep in sync, I think the main thing blocking us from 2.0.0 release is the migration guide.

I was also thinking it might be nice to update the README to mention some of the advanced features that were added recently - like the retry/error handling logic. This would mainly point to the docs on those topics, but it would be good to have them mentioned in the main README so that the library doesn't seem too primitive upon first glance.

wmcginty commented 6 years ago

OK, I can take a look at updating the Readme for the new features if someone wants to take a stab at a basic migration guide.