5 ms·
> I don't want to say anything negative, but let's face it: django-piston is dead. Typical "I don't want to be rude or anything..." bullshit. Django Piston is
by oinksoft 14y ago
> I don't want to say anything negative, but let's face it: django-piston is dead.
Typical "I don't want to be rude or anything..." bullshit. Django Piston is not a dead project. It is stable and not buggy, which may explain why there is not a flurry of activity ... but even then, the project has a dozen commits in the past six weeks.
Django ROA depends on Piston. Bitbucket is using Piston. Piston is not going anywhere.
---
Edit: A commenter on the blog voiced a similar opinion.
> Jon Morton:
> How is django-piston dead? it seems big websites like bitbucket are actively using it and it has had several recent commits: https://bitbucket.org/jespern/.. https://bitbucket.org/jespern/...
>> pydanny:
>> Show me docs and test coverage improvements and I'll reconsider.
So, it seems we assess a project's liveliness by code coverage and thorough documentation. Sounds like the author is wrong and is grasping for other reasons to not like Piston. Of course, the fool's too lazy to find the docs (right there on the project page) at https://bitbucket.org/jespern/django-piston/wiki/Documentation https://bitbucket.org/jespern/django-piston/wiki/Documentati... , or to see the many tests for the code at https://bitbucket.org/jespern/django-piston/src/7c90898072ce/tests/test_project/apps/testapp/tests.py https://bitbucket.org/jespern/django-piston/src/7c90898072ce...
In short, don't listen to the author. People like him are the reason we'll have three more web service libraries targeting Django within a year.
- michaelmior 14y agoI'm curious where you saw that Bitbucket is using Piston. I'd be really interested to hear where and how extensively.
- oinksoft 14y agoIt's in the BitBucket footer: We run Django 1.3.1 / Piston 0.3dev / Git 1.7.6 / Hg 1.9.1 / Python 2.7.3 Presumably they use it for their APIs http://confluence.atlassian.com/display/BITBUCKET/Using+the+bitbucket+REST+APIs;jsessionid=3B702292065D84B6F92B8DC530FFB2E1 http://confluence.atlassian.com/display/BITBUCKET/Using+the+...
- andrewingram 14y agoGiven that Piston was developed in-house at Bitbucket, it's hardly surprising.
- michaelmior 14y agoThanks for dropping that knowledge. I didn't realize :)
- andrewingram 14y agoNo worries, sorry if I came across as a bit dickish
- deleted 14y ago[deleted]
- MBlume 14y agoI like piston. I use piston. I want to go on using piston. The current PyPI release of Piston (0.2.3) is six months old. It's incompatible with the current release version of Django (1.4). That Django release has been available for a month and a half, and available in beta for three months. This does not indicate a project that's in active development. A project in active development would get a release out the door so that if I run pip install django django-piston I get two pieces of software that work together.
- pydanny 14y agodjango-piston doesn't return serialized responses to invalid POST requests. See my article at http://pydanny.blogspot.com/2010/07/getting-piston-forms-to-play-nicely.html http://pydanny.blogspot.com/2010/07/getting-piston-forms-to-... which STILL gets a lot of hits. That django-piston is 'stable' means work outside of maintenance has ceased. Which means a lot of people are going to this post to figure out what django-piston should do out of the box.
- oinksoft 14y agoSo now you've gone from "I don't want to be negative..." to full-on anti-Piston zealot? Looks like you just edited that post, > Critical Update 2012/05/10!!! > Critical Update 2012/05/10!!! > Critical Update 2012/05/10!!! (I guess you wanted one line per exclamation point there) > Except for a critical security patch, django-piston has been unsupported for about 3 years. That is an eternity, and the number of forks to address multiple issues is cause for alarm. Also, the original author has left the project. Because of that, in it's place at this time I recommend django-tastypie. It is up-to-date, has very good documentation, supports OAUTH, and scored second place in the Django Packages thunderdome (it got nearly 3x as many points!). Another tool to consider is Django Rest Framework, which is as good as django-tastypie but lacks the OAUTH support. Good god, man.
- pydanny 14y agoI edited that post before I blogged. And I had a different Critical Update on that blog post for over 10 months with a harsher warning. I changed it today because I still had seen no progress but felt I should tone it down. If the django-piston community updates and documents, I'll post something nicer. In the meantime, the critical update remains.
- pydanny 14y agoAlso, from lots of personal experience, the django-piston wiki doesn't cover a lot of critical material. As it's a wiki, you can't submit pull requests for it. Which means documentation is functionally scattered across blog articles like mine and Stack Overflow. In the Django community that's considered somewhat lame.
- mcu 14y agoFor me, the lack of documentation was a blessing! When I first started investigating Piston I read almost every line of code that I was going to be using. I'm glad I did! Understanding Piston at the source level allowed me to create wrappers, mixins, and extensions that turned Piston into something that I was more comfortable with. I moved away from Piston (Piston lacks a few features that come baked-in by default w\ TP) to Tastypie, but, the experience was almost exactly the same. I spent most of last week reading the Tastypie code and creating a tastypie_ext library that helps me do things my way and patch up a few of what I see as major issues (did you know that Tastypie will 500 by default if you pass it malformed json/yaml/xml? That is, client input can raise an unhandled exception on demand.) As far as documentation goes, Tastypie isn't much better than Piston, and Django itself still has a few gaping holes in its documentation (I'm still waiting for better class-based view documentation before I adopt them completely.) I tend to view frameworks and libraries as loaded guns... At the end of the day every person using a framework should understand how it works from top to bottom at the source level. P.S. Thanks for django-uni-form (now django-crispy-forms)! I learned to use it by reading the source :D.
- pydanny 14y agoMCU - This is an incredible response. You win. :-)
- batista 14y ago>For me, the lack of documentation was a blessing! When I first started investigating Piston I read almost every line of code that I was going to be using. I'm glad I did! Nice story, but you forgot the obligatory YMMV warning. Reading the code is not a substitute for good documentation.
- pydanny 14y agoWhat's wrong with having three more web service libraries? Competition is good.
- acdha 14y agoFor me, it comes down to this issue: https://bitbucket.org/jespern/django-piston/issue/100/handler-resource_uri https://bitbucket.org/jespern/django-piston/issue/100/handle... tl;dr: either documentation or cross-resource links will be broken - pick one. It's been broken for years. There is a kludge-around but it's a rake in the grass waiting for every user. I also had a related issue which similarly means that a common Django feature breaks the documentation feature: https://bitbucket.org/jespern/django-piston/issue/142/handlerdocumentation-doesnt-handle https://bitbucket.org/jespern/django-piston/issue/142/handle... I won't say piston is dead but I will say that my experience with tastypie is that something like this would be fixed in a day or two.