Skip to content


Subversion checkout URL

You can clone with
Download ZIP


Remove Active Resource source files from the repository #572

merged 1 commit into from

After all of the discussion, I think it's time for extract ActiveResource to a separate git repository. This will make sure that people will fork it and contribute to it in a good way.

I've done a git filter-branch ( to extract ActiveResource out, while making sure all of the history is still there. I've pushed it temporary to here:

I've saw that @radar has working on another rewrite of activeresource, and I think I'll try to merge in his rewrite to the project.

I'm thinking about making active_resource as external dependency on 3.1, and then make it a commented out option in Gemfile later in 3.2+ (or 4.0). This is to make sure that ActiveResource will still be available for people who're using it for now.

Please review the proposal, and apply it if you think it's appropriate. All the tests, except for the one that was broken, is passing.


Nyah, ARes is still used in a lot of places. I think the clean up we are doing on ARes (including Active Model Validations and the like) should make ActiveResource a first class citizen again.


Can we just say no to this proposal and pretend it didn't happen.


Linking the original discussion here:

I won't have a hard feeling if this got close, but I want to see someone going to step up and maintain it (like what @mikel done with ActionMailer).

I saw people are using something else for doing REST requests but not ActiveResource, so I don't really know if it's worth pushing it forward under Rails name. I personally haven't write any code using ActiveResource for like a year, so I think it's time to extract it.


By the way, I done this because I saw the core team thrown out prototype and rjs because people are not using it. People are not using ActiveResource too, why keep it?


How long was ActionMailer crap and for how long... I bet it was for longer then ARes has been in Rails.

Ripping out isn't the answer.

Asking for love, however is. Maybe this cry out is enough to stir the pot.

I just used ARes yesterday talking to two 3.0.7 apps. soon to hook into a 3rd. I think all it's lacking is real documentation to be honest. There are a couple of gotchas when you try deep diving into ARes, but on the flip side, hooking a Model up in app1 and fucking talking to app2, easy peasy is FANTASTIC.

If anything ARes needs a brand makeover, then a rip out.


I agree with this patch. The number of people using ActiveResource seriously does not warrant this to be a part of Rails. It is (as far as I and the other people on that rubyonrails-core thread know) unmaintained, something that is... ahem, maintained by the fact it hasn't had any large changes done to it. It either a) needs a maintainer or b) to be extracted out and maintained separately.


@pjammer: If you can point out those trouble areas we will attempt to fix them at Railsconf.


"This will make sure that people will fork it and contribute to it in a good way". Nothing is stopping people from making good contributions to ActiveRecord or ActionPack, so extracting to another git repository is not really fixing the problem. It is too late to remove ActiveResource from Rails 3.1, but it may be considered in future releases.

@josevalim josevalim closed this

I had a whole rant queued up, but i'll save it for another venue.

Active Resource mirrored functionality in Active Record. I'm sure it's more complicated then that, but the essence is there.

Shouldn't Active Resource be kept lock step with Active Records development too? Stripping it out could be crazy to maintain it as well, at least now when tests are ran on the suite it either passes or would get fixed as rails somehow stays green with the amount of changes it gets.

@sikachu sikachu reopened this
@sikachu sikachu Remove Active Resource source files from the repository
Dear Active Resource,

It's not that I hate you or anything, but you didn't get much attention lately. There're so many alternatives out there, and I think people have made their choice to use them than you. I think it's time for you to have a big rest, peacefully in this Git repository.

I will miss you,

@josevalim josevalim merged commit ae67a63 into rails:master

What is the plan for ActiveResource moving forward? Optional gem? This is something I'd very much like to use but if it's future is uncertain I'll look at other options.


The Rails Core Team is no longer maintaining Active Resource. Other people may fork the repository and step up for this task though.


The base repository for the fork is at, if someone want to fork it. The test is passing, and you should be able to stick it with Rails 4.x app just fine.


I would love to see it be re-worked for Rails 4.x.


About time. +1


@radar agree, probably we can do something better using ActiveModel


Good stuff.


Thank you for this move.


Can anyone tell me, what to do with my pull request here?


Trashbox or what? (just don't know how to handle now... ^^)


@SweeD no way, I think we should merge that pull request into the activeresource repository.


@sikachu Hmm... ok, then i will fork active_resource and do patch that...


I'm using ActiveResource extensively on several internal projects communicating with each other and I think this is a good thing. This won't kill ActiveResource, this will give it the ability to get some fixes faster than would otherwise be possible tied to a Rails release cycle. I'm writing an internal gem that has to work from Rails 2.3.11 -> 3.2, and having to maintain compatibility with a few different AR versions is painful. This doesn't directly solve that problem, but it sets the stage so that projects on Rails 4.0, 4.1, 5.0 and beyond can decide to upgrade AR without upgrading all of Rails.


+1 for the move ... as it is a really a part needing a complete rework


+1 not being used for most of my projects. the design is too fancy, and I don't think website made in other languages, like PHP will provide the exact API needed by ActiveResource.


-100 to all of you +1'rs. More neutering of a once great framework. ARes is still bound to Active Record in terms of it just working and all of it's magic that makes it awesome when you need it. I hope this new fork will keep in lock step with it's development too (if Active Record doesn't get cut) and not just die on the vine like the core team let it many years ago. When you need it, ARes is awesome. "Most projects" suck and are small unfinished tripe. ARes does some heavy lifting which i really do hope gets the love it deserves. Fuck, cleaning up the docs would probably be all it needs, and it'll be declared 'genius' and 'refreshing' by the hipster code militia.


Patches welcome. :trollface:


I agree. Totally that if it didn't work for you patch it up. However, it works for me and my needs. Always has to be honest. I guess I will improve the docs on the new fork it looks like.


ARes is a toy compared to what it could be. It doesn't automatically handle relationships, doesn't let you know what to pass to create to make a new object, requires out-of-band knowledge to use an api correctly, doesn't have a standard way to deal with finders, etc. All of these things have patches to fix them running out in the wild, but weren't accepted. Even if/when they were accepted, they had to be tied to the larger release cycle of rails itself. There have already been patches accepted to the new ARes!


All new OSS projects accepts patches quick. how have the other 'pull outs' been doing recently. All the rails helpers etc.


I mean for the record, if this is how it's going, awesome. let's make it right (to quote Mike Holmes) but let's be a better Rails than Rails. Meaning let's keep this new gem in step with those it depends on in core. Let's make core better by doing so, etc etc.


Sleep well, sweet prince.

Good riddance.

Not that I disagree with removing it from core, but the commit message is wrong, plenty of people are using ActiveResource. If you're doing SOAs purely in Rails then it's a pretty good choice. Hopefully it will get some love now that it has a dedicated repo.

@benja83 benja83 referenced this pull request from a commit in benja83/toyotakataboard-relational
@benja83 benja83