Spree Commerce

Try It Now

Posts in category ‘Product’

Spree 3.0.1 Released

Posted on May 05, 2015 by Jeff Dutil

Summary

Spree has issued new 2.3.10, 2.4.7, and 3.0.1 releases which are available now! These releases are primarily focused on bug fixes particularly with promotions.

You can review the Github Compare for a complete list of 2.3.x changes.
You can review the Github Compare for a complete list of 2.4.x changes.
You can review the Github Compare for a complete list of 3.0.x changes.

Follow Spree Commerce!

Spree 3.0.0 Released and Versions 2.2.11, 2.3.9 & 2.4.6 Released

Posted on March 10, 2015 by Jeff Dutil

Summary

The Spree 3.0.0, 2.4.6, 2.3.9, and 2.2.11 releases are out now!

What’s new in Spree 3? We’ve switched the front and back ends to use Bootstrap, added Rails 4.2 support, and added Google Analytics Enhanced Ecommerce tracking. We’ve also continued our move away from Spree handling things that should be done at the Rails application level, such as, specifying environments and setting up SSL.

You can view the Release Notes for more details, and upgrade tips.
Please feel free to submit a PR adding any of your own upgrade tips or gotchas not mentioned in the release notes.

Spree 2.2.11, 2.3.9, and 2.4.6 releases are focused on bug fixes related to regressions from the previous security release. You can view the full change comparisons on Github:

Older Versions of Spree

If you are using Spree versions 2.2.x and older you should consider upgrading as soon as possible. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Follow Spree Commerce!

Spree 3 Release Candidate 3 and Versions 2.3.7 & 2.4.4 Released

Posted on February 23, 2015 by Jeff Dutil

Summary

The Spree 3.0.0.rc3, 2.4.4, and 2.3.7 releases are out now!

What’s new in Spree 3? We’ve switched the front and back ends to use Bootstrap, added Rails 4.2 support, and added Google Analytics Enhanced Ecommerce tracking.

Please give the release candidate a try, and report any issues on Github project. If there are no serious issues reported in the coming week we will release a final version.

You can view the Release Notes for more details, and upgrade tips.
Please feel free to submit a PR adding any of your own upgrade tips or gotchas not mentioned in the release notes.

Spree 2.4.4 release is primarily focused on bug fixes, and minor performance improvements. You can review the Github Compare for a complete list of 2.4.x changes.

Spree 2.3.7 release is also primarily focused on bug fixes. You can review the Github Compare for a complete list of 2.3.x changes.

Older Versions of Spree

If you are using Spree versions 2.1.x and older you should consider upgrading as soon as possible. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Follow Spree Commerce!

Spree 3 Release Candidate and Version 2.4.3 Released

Posted on February 04, 2015 by Jeff Dutil

Summary

The Spree 3.0.0.rc1 and 2.4.3 releases are out now!

What’s new in Spree 3? We’ve switched the front and back ends to use Bootstrap, added Rails 4.2 support, and added Google Analytics Enhanced Ecommerce tracking.

Please give the release candidate a try, and report any issues on Github project. If there are no serious issues reported in the coming week we will release a final version.

You can view the Release Notes for more details, and upgrade tips.
Please feel free to submit a PR adding any of your own upgrade tips or gotchas not mentioned in the release notes.

Spree 2.4.3 release is primarily focused on bug fixes, and minor performance improvements. You can review the Github Compare for a complete list of 2.4.x changes.

Older Versions of Spree

If you are using Spree versions 2.1.x and older you should consider upgrading as soon as possible. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Follow Spree Commerce!

Spree 2.2.9 & 2.1.12 Released

Posted on December 23, 2014 by Jeff Dutil

Summary

We have just released new Spree versions 2.2.9 & 2.1.12.

The primary focus of these releases was resolving security flaws in the API. While no user or credit card data could be exploited with this flaw, there is the potential to commit fraud by manipulating order prices. It is recommended that all Spree installations running 2.1.x, and 2.2.x upgrade as soon as possible.

Thanks to Jordan Brough for finding the issue, and providing a patch to resolve the issue.

You can review the Github Compare for a complete list of 2.2.x changes.
You can review the Github Compare for a complete list of 2.1.x changes.

Reporting Security Issues

Please do not announce potential security vulnerabilities in public. We have a dedicated email address security@spreecommerce.com. We will work quickly to determine the severity of the issue and provide a fix for the appropriate versions. We will credit you with the discovery of this patch by naming you in a blog post.

If you would like to provide a patch yourself for the security issue do not open a pull request for it. Instead, create a commit on your fork of Spree and run this command:

$ git format-patch HEAD~1..HEAD —stdout > patch.txt

This command will generate a file called `patch.txt` with your changes. Please email a description of the patch along with the patch itself to security@spreecommerce.com.

Older Versions of Spree

If you are using Spree versions 2.0.x and older you should consider upgrading as soon as possible. While this security flaw only affects versions 2.1.x & 2.2.x we have already reached the end of life for official 2.0.x support. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Follow Spree Commerce!

Spree 2.4.2 Released

Posted on December 05, 2014 by Jeff Dutil

Summary

We have just released new versions of all the currently supported Spree versions. The Spree 2.4.2, 2.3.6, 2.2.8, 2.1.11 releases are out now!

The primary focus of these releases was resolving a security flaw in the API. While no user or credit card data could be exploited with this flaw, there is the potential to commit fraud by manipulating an item’s price. It is recommended that all Spree installations running a 2.1.x, 2.2.x, 2.3.x, and 2.4.x upgrade as soon as possible.

Thanks to Leandro Julian for finding the issue, and providing a patch to resolve the issue.

You can review the Github Compare for a complete list of 2.4.x changes.
You can review the Github Compare for a complete list of 2.3.x changes.
You can review the Github Compare for a complete list of 2.2.x changes.
You can review the Github Compare for a complete list of 2.1.x changes.

Reporting Security Issues

Please do not announce potential security vulnerabilities in public. We have a dedicated email address security@spreecommerce.com. We will work quickly to determine the severity of the issue and provide a fix for the appropriate versions. We will credit you with the discovery of this patch by naming you in a blog post.

If you would like to provide a patch yourself for the security issue do not open a pull request for it. Instead, create a commit on your fork of Spree and run this command:

$ git format-patch HEAD~1..HEAD —stdout > patch.txt

This command will generate a file called `patch.txt` with your changes. Please email a description of the patch along with the patch itself to security@spreecommerce.com.

Older Versions of Spree

If you are using Spree versions 2.0.x and older you should consider upgrading as soon as possible. While this security flaw only affects versions 2.1.x+ we have already reached the end of life for official 2.0.x support. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Follow Spree Commerce!

Spree 2.4.0 Released

Posted on November 20, 2014 by Jeff Dutil

Summary

The Spree 2.4.0 release is out now!

What’s new in Spree 2.4? We’ve completely overhauled the return authorization system in Spree, and made it much more robust and flexible. There are now also default html email templates, and an updated admin order form.

You can view the Release Notes for more details, and upgrade tips. Please feel free to submit a PR adding any of your own upgrade tips or gotchas not mentioned in the release notes.

What else is new?

We have also just released new versions of all the currently supported Spree versions.

The primary focus of these releases was updating to the latest version of Rails to patch
CVE-2014-7829

Users on Spree 2.3.x should also see some small performance improvements as well. These were primarily from adding database indexes, and improving the current order lookup hot spot.

You can review the Github Compare for a complete list of 2.3.x changes.
You can review the Github Compare for a complete list of 2.2.x changes.
You can review the Github Compare for a complete list of 2.1.x changes.
You can review the Github Compare for a complete list of 2.0.x changes.

Older Versions of Spree

If you are using Spree versions 2.0.x and older you should consider upgrading as soon as possible. We have reached the end of life for official 2.0.x support. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

What’s next?

We’ve got lots of great feedback from the Spree community on what you would like to see next. There are going to be a lot of big changes coming soon, and here is a short list of things to expect in the near future:

  • Performance, Performance, Performance!
  • Extended REST API
  • Store Credits
  • Bootstrap Back & Front
  • Rails 4.2

As well as improving the Spree codebase we’ve also got lots of feedback on our community management & process. We will have a follow-up blog post about this in the near future, but here are a few things to expect:

  • Additional core members outside of Spree Commerce
  • Improved community communication
  • Improved upgrade paths
  • Stricter backporting policies
  • Stricter code reviews

Spree now powers billions of dollars in eCommerce transactions every year, and we hear you loud and clear that we must uphold strict standards to ensure you’re not losing your piece of the pie.

Follow Spree Commerce!

Spree 2.4.0.rc3 Released

Posted on November 07, 2014 by Jeff Dutil

Summary

The Spree 2.4.0.rc3 release is out now. We would like everyone to try it out, and report any issues before a final version is released. We expect that 2.4.0 final will be released in a week or two unless there are any major issues discovered.

What’s new in Spree 2.4? We’ve completely rewritten the return authorization system in Spree, and made it much more robust and flexible. There are now also default html email templates, extendable order populator options, and an updated admin order form.

You can view the Release Notes for more details, and upgrade tips. Please free to submit a PR adding any of your own upgrade tips or gotchas not mentioned in the release notes.

What’s next?

Once Spree 2.4.0 is released we will begin work on a 2.5.0 release, which we will be focusing on Rails 4.2 support & major performance improvements. Once we’ve provided Rails 4.2 support in what is expected to be a quick release, we will be moving on to a major Spree 3 update!

Older Versions of Spree

If you are using Spree versions 2.0.x and older you should consider upgrading as soon as possible. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Spree 2.4.x will be released in the near future, and will mean the end of official 2.0.x support.

Follow Spree Commerce!

Spree 2.4.0.rc2 Released

Posted on October 09, 2014 by Jeff Dutil

Summary

Spree has issued new 2.4.0.rc2 & 2.3.4 releases which are available now!

The 2.3.4 release fixes a regression that allowed certain orders to transition to a complete state without completed payment. It is recommended to update soon as possible if you’re on the 2.3.x gem series.

You can review the Github Compare for a complete list of 2.3.x changes.

Spree 2.4.0.rc2

The Spree 2.4.0.rc2 release is out now. We would like everyone to try it out, and report any issues before a final version is released. We expect that 2.4.0 final will be released in a week or two unless there are any major issues discovered.

What’s new in Spree 2.4? We’ve completely rewritten the return authorization system in Spree, and made it much more robust and flexible. There are now also default html email templates, extendable order populator options, and an updated admin order form.

You can view the Release Notes for more details, and upgrade tips. Please free to submit a PR adding any of your own upgrade tips not mentioned to the release notes.

What’s next?

Once Spree 2.4.0 is released we will begin work on a 2.5.0 release, which we will be focusing on Rails 4.2 support & performance improvements. Once we’ve provided Rails 4.2 support in what is expected to be a quick release, we will be moving on to a major Spree 3 update!

Older Versions of Spree

If you are using Spree versions 2.0.x and older you should consider upgrading as soon as possible. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Spree 2.4.x will be released in the near future, and will mean the end of official 2.0.x support.

Follow Spree Commerce!

Spree 2.3.3 Released

Posted on September 19, 2014 by Jeff Dutil

Summary

Spree has issued new 2.3.3, 2.2.6, and 2.1.9 releases which are available now! These releases are primarily all focused on bug fixes.

If you are upgrading to Rails 4.1.6 or 4.0.10 please make sure to update to these latest releases, which resolve regressions caused by the mail gem dependency.

You can review the Github Compare for a complete list of 2.3.x changes.
You can review the Github Compare for a complete list of 2.2.x changes.
You can review the Github Compare for a complete list of 2.1.x changes.

Other Versions of Spree

If you are using Spree versions 2.0.x and older you should consider upgrading as soon as possible. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Spree 2.4.x will be released in the near future, and will mean the end of official 2.0.x support.

Happy Friday!

Have a great weekend everyone.

Follow Spree Commerce!

The State of Extensions 2014

Posted on September 15, 2014 by Jeff Dutil

Over the course of Spree’s lifetime, there have been many extensions written. Some consist of features desired in Spree, and some consist of features removed from Spree. Many extensions were even written by Rails Dog before Spree Commerce was founded.

Over time, many of the extensions published to the Spree Spree Github Organization have been deprecated, become irrelevant, and been abandoned as community usage fell. This has lead to a lot of confusion about what is and isn’t officially supported by Spree Commerce. I’d like to take the time to clear up this confusion by announcing deprecated extensions, and what will be officially supported extensions going forward.

There are several reasons for these decisions, and we feel it will ultimately benefit the community. After all it was the Spree community who came up with the idea for the spree-contrib Github Organization at the last SpreeConf.

Discoverability

Providing a more centralized location to find Spree extensions, and a way for people to share their extensions is a big deal. We’ve seen lots of people trying to tackle the same problems, and releasing their own versions of extensions that never get found. This causes people to reinvent the wheel over and over again. We don’t want to see the extension ecosystem so fragmented that a dozen different people write their own Avatax or SOLR extensions. We believe making it easier for the community to collaborate on a single canonical project will make for better extensions with more support and less wasted time.

Maintenance

We want to broaden the committer base of many of these extensions, so that neglected extensions can be maintained by trusted developers outside of Spree Commerce. We don’t want to be standing in the way of the community upgrading extensions, and intend to make maintenance of extensions much easier and with a lower barrier to entry.

Managing Expectations

We think it’s important to manage community expectations by making it easier to tell what we support and what we don’t. There are lots of good extensions that we simply don’t support, but people still find useful. Luckily many of them live on, and are regularly updated by the community. Some extensions are not so lucky to have the community support, and when someone comes along trying to use a broken extension, it can understandably make them upset. We don’t always have the time to respond though, and we don’t want to leave people hanging on a response from us when we’re not even participating in the projects anymore.

Managing Time & The 80/20 Rule

We’ve had a long-standing 80/20 rule for Spree, and we believe it applies to the extensions we choose to officially support as well. When we receive new feature requests our rule of thumb is that if 80% of the people need this feature it’s probably worth inclusion. If something is a nice-to-have feature, but we only think 20% of people would use it then it’s probably not worth inclusion. Trying to please everyone, and simultaneously provide every feature is unsustainable. It also results in poor quality code.

Our goal is to provide the community with the best minimal, extensible, and flexible solutions that we can. In order to do that we’re focusing on what’s important to everyone, and will leave it up to the community to help us provide and support everything else.

Official Extensions:

https://github.com/spree/spree_auth_devise
https://github.com/spree/spree_gateway
https://github.com/spree/spree_i18n
https://github.com/spree/spree_wombat

Moving to spree-contrib:

https://github.com/spree/spree_social
https://github.com/spree/spree-product-assembly
https://github.com/spree/spree_active_shipping
https://github.com/spree/spree_shared
https://github.com/spree/spree_fancy
https://github.com/spree/spree_product_zoom
https://github.com/spree/spree-adyen
https://github.com/spree/spree_paypal_express
https://github.com/spree/spree_print_invoice
https://github.com/spree/spree_reviews
https://github.com/spree/spree_recently_viewed
https://github.com/spree/spree_social_products
https://github.com/spree/spree_wishlist
https://github.com/spree/spree_comments
https://github.com/spree/spree_volume_pricing
https://github.com/spree/spree_editor
https://github.com/spree/spree_static_content
https://github.com/spree/spree-multi-domain
https://github.com/spree/spree_multi_currency
https://github.com/spree/spree_related_products
https://github.com/spree/spree_affiliate
https://github.com/spree/spree_email_to_friend
https://github.com/spree/spree_jirafe
https://github.com/spree/spree_store_credits
https://github.com/spree/spree_product_groups
https://github.com/spree/spree_rdr_theme
https://github.com/spree/spree_clean
https://github.com/spree/spree_blue_sass_theme
https://github.com/spree/spree_page_cache
https://github.com/spree/spree_skrill
https://github.com/spree/spree_blue_theme
https://github.com/spree/spree_analytics
https://github.com/spree/spree_simple_dash
https://github.com/spree/spree_claim_order

Interested in contributing?

If you’re interested in contributing or helping to maintain any of these extensions please file an issue on the project, and we may grant you access depending on the extension. You may continue filing issues, and pull requests over on their new home in the spree-contrib organization as you normally would though.

Have an extension you’d like listed in spree-contrib?

If your extension serves a purpose not already covered by an extension or is a better alternative, we would be interested in providing it greater community support and visibility.

Some notable cases where we can already see this happening:

1. Thanks to Bonobos for providing a modern take on store credits & virtual gift cards.
2. Thanks to Ryan Bigg for providing a modern take on PayPal Express.

Follow Spree Commerce!

Spree 2.3.2 Released

Posted on August 29, 2014 by Jeff Dutil

Summary

Spree has issued new 2.3.2, 2.2.5, 2.1.8, and 2.0.12 releases which are available now! These releases are primarily all focused on bug fixes.

Version 2.3.2 has also received many API improvements as well.

You can review the Github Compare for a complete list of 2.3.x changes.
You can review the Github Compare for a complete list of 2.2.x changes.
You can review the Github Compare for a complete list of 2.1.x changes.
You can review the Github Compare for a complete list of 2.0.x changes.

Other Versions of Spree

If you are using Spree versions 2.0.x and older you should consider upgrading as soon as possible. Our current Release Policy is to only maintain the latest two versions of Spree along with the current master.

Spree 2.4.x will be released in the near future, and will mean the end of official 2.0.x support.

Happy Labor Day Weekend Everyone :)

Follow Spree Commerce!

Spree 2.3.0 Released

Posted on June 30, 2014 by Ryan Bigg

Spree 2.3’s large changes include Rails 4.1 support, better preferences storage, better support for multi-store, and better guest user tracking. There have been 700 commits by 97 contributers to bring us to Spree 2.3, and we are excited to release it!

Rails 4.1 Support

Rails 4.1 is now supported by Spree 2.3. If you wish to use 4.1, Spree 2.3 is the release for you.

Preferences serialized on records

Preferences are now stored on their records, rather than being stored in `spree_preferences`. This means that to fetch a preference for say, a calculator, one query needs to be done to the database for that row, as that row has the `preferences` column which contains all preferences.

Previously, there would be a single DB call for the record itself, and then any number of database calls thereafter to fetch the required preference values for that record. What happens now is that there’s only one database call, which means there should be some minor speedups.

Better multi-store support

A `Spree::Store` model for basic multi-store/multi-domain support has been added. This provides a basic framework for multi-store/multi-domain, based on the spree-multi-domain extension. Some existing configuration has been moved to this model, so that they can have different values depending on the site being served:

  • `Spree::Config[:site_name]` is moved to `name`
  • `Spree::Config[:site_url]` is moved to `url`
  • `Spree::Config[:default_meta_description]` is moved to `meta_description`
  • `Spree::Config[:default_meta_keywords]` is moved to `meta_keywords`
  • `Spree::Config[:default_seo_title]` is moved to `seo_title`

A migration will move existing configuration onto a new default store.

A new `ControllerHelpers::Store` concern provides a `current_store` helper to fetch a helper based on the request’s domain.

Better guest user tracking

Now we are using a signed cookie to store the guests’ unique token in the browser. This allows customers who close their browser to continue their shopping when they visit again. More importantly, it allows you as a store owner to uniquely identify your guests’ orders. Since we set `cookies.signed[:guest_token]` whenever a vistor comes you may also use this cookie token on other objects than just orders.

For instance, if a guest user wants to favorite a product, you can assign the `cookies.signed[:guest_token]` value to a token field on your favorites model. This will then allow you to analyze the orders and favorites that this user has placed before, which is useful for recommendations.

Summary

You can view a more detailed list of these changes on Github.

Follow Spree Commerce!

Top 5 Reasons Wombat Makes Life Easy for Developers

Posted on June 26, 2014 by Alexander Diegel

Top 5 Reasons Why Wombat Makes Life Easy for Developers

We have recently announced the launch of Wombat, and we are excited for all the new features our automated e-commerce solution will now provide! Wombat was created by developers, for developers, with the goal of making back-end logistical maintenance as simple and efficient as possible. Without further ado, here are the top five reasons why Wombat makes life easier for you, the developer.

1) Ability to connect with any storefront

Not only is Wombat a sophisticated e-commerce solution engine, it is also platform agnostic. Due to the standard JSON API format we use for communication, no matter what platform you are using—whether it be Spree, Magento Hybris or Demandware, you can integrate with Wombat. Even if you build your own custom platform, Wombat will be with you every step of the way!

2) Use of pre-defined or custom-built connections

Wombat comes complete with a number of predefined connections, ready for out-of-the box use so you can quickly integrate and get started. However, the flexibility of Wombat also allows you to integrate your own custom-built connections, so that you can customize this e-commerce solution to perform any and all of your desired functions.

3) Easily retry flows and keep track of errors

Wombat is complete with a fail-safe system of managing flows. If something has gone wrong within the flow setup, you will be notified immediately to retry the flow, debug the flow, or resolve the error. All errors are listed in order of most to least recent, with the goal of making errors as easy to manage as possible.

4) Adding integrations all the time.

Wombat is not open source. It is Software as a Service, or SaaS. However, Spree Commerce was founded on the principles of open source, and those values have carried over to the way we manage Wombat. We believe in a strong communal support system, so if there is an integration you want but don’t see available, let us know—and we’ll listen!

5) Transforms

In the context of Wombat, a transform represents the ability to easily modify data. Whether you want to convert an order into an email, or change all states to abbreviations, you can easily do so in Wombat’s transforms editor. Transforms work by embedding server side javascript directly into the flow. The javascript incorporates the logic dictating how data is transformed, and easily makes the desired changes.

These five advantages are why developers love to use Wombat. For more in-depth documentation on these topics—and virtually anything else you might want to learn about Wombat—visit our knowledge-based articles.

Follow Spree Commerce!

Spree 2.2.0 Released

Posted on February 26, 2014 by Ryan Bigg

Spree 2.2’s large changes include a re-working of the built-in adjustments system, caching improvements, a slightly different location for Spree’s assets and a basic implementation of risk analysis.

Adjustments system refactoring

For a while now we’ve been wanting to refactor the adjustments system and make it less confusing. Adjustments are a key part of any store, and therefore these need to function smoothly. In the end, we’ve produced an adjustments system that is more consistent and flexible than the system found in earlier versions of Spree.

Caching improvements

We’ve listened to feedback where people wanted caching within the Frontend and API components of Spree, and have added that in. Fragment caching will now happen with things such as the products list and product pages on the frontend, and on key actions within the API.

New Spree asset locations

Spree’s assets have moved within an application out of `app` and into `vendor`. Along with this, the assets have been renamed. For more information, please read this section in Core’s changelog.

Risk analysis

If an order’s payment falls outside of the proper AVS and CVS classifications, then the order will be considered “risky”. The order will need to be approved (or rejected) before anything can be done on it.

Summary

Each component’s changelogs will provide you with a more detailed log of what’s changed, so be sure to check them out:

Spree 2.1.0 Released

Posted on September 16, 2013 by Ryan Bigg

Spree 2.1.0 has now been officially released. Around 700 commits by 48 contributors went into making this release the best release of Spree yet.

There are not that many significant changes in this release, but there are three major things we would like to point out:

Rails 4 compatibility

This is the first release of Spree which is completely Rails 4 compatible. This effort was largely undertaken by Washington Luiz (huoxito), one of our core team members. If you wanted Rails 4 compatibility, you have it now. Thank Washington when you see him around.

API changes

In this major Spree release, the API component has been battle-tested with our experimental Spree + Marionette project. As a result of our testing, we found the API needed some improvements and we’ve done that and a bit more.

Better PayPal Express extension

We now have a better Spree PayPal Express extension which is fully compatible with this release. If you are looking for PayPal Express Checkout integration for your new Spree store, check out this extension.

For other changes, please read our release notes.

Spree 2.0.0.rc1 is Now Available

Posted on May 13, 2013 by Sean Schofield

We’re happy to announce Spree 2.0.0.rc1 is now available! We’ve been working around the clock to get the release ready before SpreeConf. Please test out the release candiate and report any showstopping issues you find ASAP. Please report any issues you have in our Github Issue tracker. Remember to indicate the problem is with the 2.0.0 code (as opposed to previous versions of Spree.)

2009 = The Year of Spree

Posted on January 02, 2009 by Sean Schofield

Well 2008 has come and gone and its been a good year for the Spree project. The project really started in March 2008. Prior to that it was known as Railscart and was just a rough starting point for something that I was experimenting with. In less then a year Spree has become a legitimate ecommerce platform used by hundreds of Rails developers around the world.

I expect great things from the Spree project in 2009. Several of last year’s major contributors remain active in the project and End Point (my employer) continues to bring in new Spree business. More paying Spree work means more great features for the rest of the community. Spree also continues to be adopted by developers outside of End Point which will lead to many more awesome contributions.

Currently there are two major efforts going on. The first is the order_refactor branch which represents some major changes to how orders are dealt with in the admin interface. The order screen is broken up into multiple tabs and we’re working towards supporting multiple payments and shipments for a single order. Eventually we be adding explicit support for multiple forms of payment (check, money order, coupons, etc.)

The second major refactoring going on is being led by Brian Quinn. Brian is doing a ton of work getting the i18n stuff working with Rails 2.2 (currently this support is being provided by the gloablite plugin.) This work is coming along nicely and Brian is in the final stages of getting all of our tests working again. I should also mention that Edmundo has been quite active as well with lots of patches and some interesting plugins for the Brazilian community.

In 2009 we will continue to emphasize compatibility with the latest Rails releases. That’s easier said then done, however, as Rails moves at a very rapid pace and makes many non trivial changes between releases. The Rails + Merb merger announcement came as a big shock to all of us but I think its a welcome development. We’ll obviously be supporting Rails 3 and beyond.

My open source roots trace back to Apache where inclusiveness and collaboration are the key to running a successful project. Its nice to see the Rails team be more open to alternate view points. This has been my philosophy for running the Spree project all along. If you compare the Spree project to other Rails commerce projects written by one or two people, I think the results speak for themselves.

We will also continue to put a high priority on supporting our localization features. Spree has a very large set of users outside of the U.S. and by accommodating these users we can spread the adoption of Spree and receive some great contributions in return. After the initial Rails 2.2 support is provided, I plan to add many rake tasks for making it easier to keep all of the translations up to date. It should soon be possible to issue simple rake tasks to identify missing content for translation or to jump start a new translation file.

There are also some exciting new features to look forward to in 2009. Full text search is one major feature that I think should be incorporated into the core. Edmundo already has an interesting extension and I look to expand upon this work. We’re also going to slick up the admin interface to make it look more polished. I’m also looking to create a fancy looking demo store to show off what Spree can do. This wouldn’t be part of the core, it would be a separate GitHub project that would also serve as a working example of how Spree can be customized for a specific set of needs. Please contact me if you’re handy with graphics and want to contribute some time and ideas.

Last year was a great start for Spree but this year will be the year the project comes into its own. We’ve got a great community in place and more people discovering the project each day. As the real world deployment base expands we will be getting exciting new features. I want to thank everyone who has contributed to the project so far. Thank you for your ideas, feedback, support, bug reports and (most importantly) your code. I look forward to working together with you this year to make Spree a truly awesome commerce platform. Best of luck to everyone this year in your professional and personal endeavors.