Eve REST API Framework v0.6.2 is out

Today I released Eve 0.6.2. It includes many fixes and improvements over the previous releases. Areas addressed are CORS management, soft deletes, token authentication, oplog, data validation, and others. Please see the changelog for details. Work on v0.7 is also ongoing. It will include new features such as support for the MongoDB Aggregation Framework (docs) and a few breaking changes, so you might want to check it out in advance....

March 14, 2016 · Nicola Iarocci

Eve 0.6.1 has been released

A new version of Eve, the REST API framework for Humans, has been released today. Following the 0.6 milestone released one month ago, v0.6.1 introduces some fixes and few new important features. Upgrade is strongly encouraged. As always, a changelog with full list of updates is available.

October 29, 2015 · Nicola Iarocci

My talk at Percona Live 2015

The slides of my talk at Percona Live 2015 (Amsterdam) are online. It was titled “MongoDB and REST APIs a Match Made in Heaven” and it was meant as an introduction to Mongo, REST principles and the Eve python framework. Overall it has been a pleasant experience, although I found that splitting 300 attendees through seven concurrent tracks ultimately led to too much fragmentation. People often found themselves with 2-3 interesting talks all happening simultaneously, and just had to pick one....

October 16, 2015 · Nicola Iarocci

Custom endpoint handlers with Eve

On Stack Overflow and the Eve mailing list, but also in my mailbox and even on Twitter, I get a lot of enquiries on how to build custom endpoints within a Eve-powered RESTful application. Now, since within Eve all endpoints are fully customizable, what they really mean is: How do I setup endpoints without any binding to a data entity, just connected to a custom method? They would like to call something like /mycustomendpoint and get the response from a method they have defined somewhere in the Python sources....

August 24, 2015 · Nicola Iarocci

Cerberus 0.9 has been released

A few days ago Cerberus 0.9 was released. It includes a bunch of new cool features, let’s browse through some of them. Collection rules First up is the new set of anyof, allof, noneof and oneof validation rules. anyof allows you to list multiple sets of rules to validate against. The field will be considered valid if it validates against one set in the list. For example, to verify that a property is a number between 0 and 10 or 100 and 110, you could do the following:...

June 30, 2015 · Nicola Iarocci

Talk Python To Me Podcast Episode #1: EVE RESTful APIs for Humans

I was lucky enough be the first guest for the shiny new Talk Python To Me Podcast hosted by Michael Kennedy. In this episode we talk about Eve an my other open source releases, which gives us an excuse to touch on a variety of topics such as Polyglot Programming, New Microsoft and the .NET evolution, MongoDB and the Open Source eco-system as seen from the point of view of an old fart who has been spending most of his career in closed systems....

April 1, 2015 · Nicola Iarocci

New Releases for Cerberus and Eve

Yesterday Cerberus 0.8.1 was released with a few little fixes, one of them being more a new feature than a fix really: sub-document fields can now be set as field dependencies by using a ‘dotted’ notation. So, suppose we set the following validation schema: schema = { 'test_field': { 'dependencies': [ 'a_dict.foo', 'a_dict.bar' ] }, 'a_dict': { 'type': 'dict', 'schema': { 'foo': {'type': 'string'}, 'bar': {'type': 'string'} } } } Then, we can validate a document like this:...

March 17, 2015 · Nicola Iarocci

Eve 0.5.2 ‘Giulia’ is Out

Eve 0.5.2 has just been released with a bunch of interesting fixes and documentation updates. See the changelog for details.

February 23, 2015 · Nicola Iarocci

On Sustainable Open Source Management

Tom Christie has some very good things to say on how to successfully maintain an open source project without losing sanity. Truth one: There are, and will always be, a non-finite number of possible valid issues to address. Your code can always be better polished, your APIs better defined, and your project more fully featured. Your documentation can always be better. The ecosystem within which your project lives is constantly evolving....

February 6, 2015 · Nicola Iarocci

How about a Sentinel for your Flask Application?

Flask-Sentinel is a OAuth2 Server implementation of the Resource Owner Password Credentials Grant pattern described in Section 1.3.3 of RFC 6749. It is powered by Flask-Oauthlib, Redis and MongoDB and is bundled as a Flask extension so it can be used to add OAuth2 capabilities to an existing application. So what is the Resource Owner Password Credentials Grant pattern? According to the official RFC: The resource owner password credentials (i.e., username and password) can be used directly as an authorization grant to obtain an access token....

February 4, 2015 · Nicola Iarocci