Today we are pleased to release Shuup version 1.6, our latest stable version. This is our first release after 500 commits, and features numerous improvements to the Core, API’s, Admin, Front, and much more – all while sticking to our commitment to backwards compatibility and a smooth Shuup update experience.
Now that we’ve finalized the release, it’s worth reviewing which features were included, and which have been postponed until Shuup 2.0. You can find the full release notes below and in the main Shuup repository.
Version 1.6 available for install from PYPI and can be installed with `pip install shuup==1.6.0`.
In the upcoming months, we will focus on the Shuup backlog. Once all issues marked for the Shuup 2.0 milestone are complete, we will release Shuup version 2.0. The release date is not yet published.
Any help with these issues is greatly appreciated! You can find our contribution guide and documentation pages below. While work is in progress towards version 2.0.0, we will create new releases after our quality process for new code is completed.
Translations from Transifex will also be updated regularly by the Shuup team.
Shuup 2.0 will include at least the following features:
- Improved price cache
- Improved stock behavior handling
- Improved support for multivendor proved by tests
- Fixed migrations
- All known bugs fixed
We have a Gitter chat room for Shuup. Come chat with us!
Getting Started with Shuup development
Contributing to Shuup
Interested in contributing to Shuup? Please see our Contribution Guide.
Shuup documentation is available online at Read the Docs.
Issue the following commands to build the documentation:
pip install Sphinx # to install Sphinx cd doc && make html
To update the API documentation rst files, e.g. after adding new modules, use command:
We highly recommend extra testing for your project while updating to this release. If you had post 1.5.0 version of Shuup there shouldn’t be any backwards compatible problems.
Copy of 1.6 changelog:
- Add Tasks app to manage contact tasks
- GDPR: create option in customer dashboard to download personal data and anonymize account
- GDPR: add xtheme plugin to warn about data protection
- Add models to support General Data Protection Regulation (GDPR)
- Enable creating basket with a custom shop
- Base supplier: Only check stocks for stock managed suppliers when
- Make core basket command return the added line id
- Provides: add setting to blacklist undesired provides
- Refund: check the max refundable items when doing partial refunds
- Add customer related fields account manager, tax group and customer
groups to order for sales reporting.
- Order source: consider the packages quantities in order source lines
- Report: change date filter field to DateTime
- OrderCreator: Dispatch a signal when adding lines to order
- Enable refunds for order API
- API: Improved suppliers stock endpoints
- Add setting to manage contacts per shop
- Add ShuupMiddleware to set the current request shop
- Add get_supplier for shop product to define the business logic of
getting supplier for order/basket line
- Add shops to supplier to define which shops the supplier is available for
- Introduce settings provider through new provide key
- Breaking change: Admin Section receives the request object and get methods
converted to classmethod
- API: allow user to remove and clear basket coupons
- API: allow custom Basket serializer
- API: only return shop products of enabled shops
- Do not allow adding variation parents in the basket
- API: serialize front shop product price info
- API: Return basket customer information
- API: Add option to reset password for authenticated users
- API: Add opiton to reset password with token
- API: shuup.front.apps.auth.forms.PasswordRecoveryForm to core
- Add name, description and short_description fields to ShopProduct model
- API: add basket endpoint
- API: created front simple product endpoint
- API: add front orders endpoint to fetch users order history
- API: added nearby filter for products
- API: added nearby filter for shops
- API: allow orders to be created without customer, addresses, or service
- API: add front user endpoint
- API: add address endpoint
- API: add person contact endpoint
- API: add address endpoint
- Add admin module to configure settings for GDPR
- Add specific form to request and reset staff user password
- Allow shipments only for suppliers assigned to order lines
- Add multi shop support for media browser
- Improve admin order creator translations
- Add option to filter variation parents for product select view
- Fix home view help blocks filtering objects by the current shop
- Fix bug: Filter category parent choices based on current shop
- Add middleware to select and set the current shop in the request
- Breaking change: add optional shop parameter in get_model_url method of
- Add middleware to select the active admin shop using session
- Only categories, orders, products, contacts, campaigns and services for the
active shop are displayed in the admin
- Menu categories without any children are hidden
- Add custom method to cache MPTT child nodes
- GDPR: require user consent on registration and on authentication
- Breaking change: pass the request from registration views to forms to allow custom logics
- Create GDPR consent when placing the order
- Add shop option to require payment and shipping methods on checkout
- Add shops for carousels
- Add util for checking whether current user is admin
- Limit reqular user login access to own specified shop only
- Remove uniqueness from coupon code texts. Instead make sure that one shop
does not have multiple active basket campaigns with same code.
Customer Group Pricing
- Introduce Customer Group Discounts. A discount module to configure
discounts by contact group.
- Add multi-shop support in notify scripts.
- Add page type to support GDPR consent document
- Add shop attribute in Page model to work in multishop environments
- Add multi shop support
- on Feb 21