Be notified of new releases
Create your free GitHub account today to subscribe to this repository for new releases and build software alongside 28 million developers.Sign up
We are pleased to announce the September 2016 release of Giterrific, which bears the version designation v0.2.0.
Giterrific is a lightweight JSON API Microservice for private Git servers. It's designed to make it easy to surface repository information for consumption by software that wants to know things about your Git repositories.
This document will cover changes in 0.2.0. For more information on Giterrific broadly, check out:
Breaking API Changes
As noted in our README, since we're still in initial development the
v1 REST API is still unstable and minor releases will include breaking changes. In this release the following breaking changes were introduced:
- Commits endpoint now returns a wrapper data structure. Previously the endpoint for viewing commit history just included a JSON array of commit summaries as its only payload. Now, it'll also include a wrapper data structure that tells you some additional data about the commits you're browsing.
Raw File Retrieval Support
Giterrific v0.1.0 included support for retrieving raw files that were too large to JSON serialize as a streaming response on the wire. Now, the Scala client supports this, too. The new
getRaw method works just like the
getContents method, except that it'll return a
Future[InputStream] instead of a
So, if you're one of those crazy cats who stores 2GB files in your git repository, you should now be able to use Giterrific to retrieve them from your git server over HTTP to your heart's content!
Finagle HTTP Driver
With this release we introduced the Finagle HTTP Driver. If you eat, breathe, and dream of Finagle, then you can use that as your underlying HTTP driver implementation in the client. To use:
- Ensure Finagle is already in your library dependencies.
- Include the giterrific-finagle package in your library dependencies.
Then, just pass it in when you create your GiterrificClient instance:
import giterrific.client._ import giterrific.driver.http._ val driver = FinagleHttpDriver() override val testClient = new GiterrificClient("http://localhost:8080", driver)
We now have Swagger documentation of our REST API. You can visit our very own Swagger UI site and look around. If you spin up a copy of Giterrific 0.2.0 locally using Docker, you can even make some test requests and see how things work first hand!
Additionally, this means that if you're not a Scala person, you can still participate in the fun. Swagger can be used to generate client language bindings in many other languages!
To run the Giterrific server, you can either use the JAR attached to this release or use the Docker image. Release 0.2.0 is tagged as
0.2.0 on Docker Hub. (It's also currently tagged as latest, but that changes from time to time.)
For further instructions on Giterrific check out our README.