Git Product home page Git Product logo

shuup / shuup Goto Github PK

View Code? Open in Web Editor NEW
2.2K 119.0 1.1K 29.88 MB

E-Commerce Platform

Home Page: https://www.shuup.com

License: Other

Python 82.87% HTML 0.01% JavaScript 4.85% CSS 0.02% Dockerfile 0.02% SCSS 1.79% Less 1.62% Jinja 8.82%
django python ecommerce ecommerce-platform ecommerce-shopping-solution ecommerce-framework ecommerce-website shuup multivendor multivendor-ecommerce

shuup's Introduction

image

image

PyPI

Known Vulnerabilities

Shuup

Shuup is an Open Source E-Commerce Platform based on Django and Python.

https://shuup.com/

Copyright (c) 2012-2021 by Shuup Commerce Inc. <[email protected]>

Shuup is International Registered Trademark & Property of Shuup Commerce Inc., Business ID: BC1126729, Business Address: 1500 West Georgia Suite 1300, Vancouver, BC, V6G-2Z6, Canada.

CLA

Contributor License Agreement is required for any contribution to this project. Agreement is signed as a part of pull request process. See the CLA.rst file distributed with Shuup.

License

Shuup is published under Open Software License version 3.0 (OSL-3.0). See the LICENSE file distributed with Shuup.

Some external libraries and contributions bundled with Shuup may be published under other compatible licenses. For these, please refer to VENDOR-LICENSES.md file in the source code tree or the licenses included within each package.

Chat

We have a Gitter chat room for Shuup. Come chat with us! Join chat

Docker quick start

Fastest way to get Shuup up and running is to use Docker.

  1. Run:

    docker-compose up
  2. Open localhost:8000/sa in a browser, log in with username: admin password: admin

Full Shuup installation guide

See Getting Started.

For simple project example see our Django-project template.

Getting Started with Shuup development

See Getting Started with Shuup Development.

Contributing to Shuup

Interested in contributing to Shuup? Please see our Contribution Guide.

Documentation

Shuup documentation is available online at Read the Docs.

Documentation is built with Sphinx.

Issue the following commands to build the documentation:

pip install -r requirements-doc.txt
cd doc && make html

To update the API documentation rst files, e.g. after adding new modules, use command:

./generate_apidoc.py

Roadmap

v3 (Q4 2021)

  • Initial Django 3.x support
  • Latest Jinja support
  • Deprecate theme folders under Shuup front which are used to override individual macros in macro folders. This does not work well with latest Jinja and adds extra complexity.

v4 (Q1 2022)

  • Move Shuup front, xtheme and theming features to own addons. This so that projects not ready for updating theme or front can still get latest Shuup.
  • Introduce new default theme and overhaul templates structure to be more simple (likely Bootstrap 5 will be used).
  • Bump admin Bootstrap version to match with the new front
  • Move various other not essential apps in this repository to addons for better version management.

Additional Material

Admin Preview

image

image

shuup's People

Contributors

akx avatar badasshenkka avatar bayoslav avatar bill-shuup avatar blomqma avatar chessbr avatar eberonsh avatar ehaivala avatar gray-shuup avatar gurch101 avatar hnduke avatar hrayr-artunyan avatar igordavydsson avatar jhess666 avatar joariski avatar jovan-shuup avatar juhakujala avatar kerkkoheiskanen avatar maximlion avatar mikkovedru avatar nvthanh11 avatar pikkupomo avatar ruohola avatar shawnadelic avatar strycore avatar suutari-ai avatar tulimaki avatar volodymyr-code avatar wardal avatar wiltso avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

shuup's Issues

"EPROTO: protocol error, symlink" during build_resources

Hello

When I run python setup.py build_resources I get the following error traceback.
How can I overcome that issue? I am running shoop app in virtual machine on Ubuntu.

npm WARN peerDependencies The peer dependency file-loader@* included from url-loader will no
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.
npm WARN peerDependencies The peer dependency babel-core@^5.0.0 included from babel-loader will no
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.
npm WARN peerDependencies The peer dependency webpack@* included from babel-loader will no
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.
npm WARN peerDependencies The peer dependency less@^2.3.1 included from less-loader will no
npm WARN peerDependencies longer be automatically installed to fulfill the peerDependency
npm WARN peerDependencies in npm 3+. Your application will need to depend on it explicitly.
npm WARN optional dep failed, continuing [email protected]
npm WARN optional dep failed, continuing [email protected]
npm WARN optional dep failed, continuing [email protected]
npm WARN optional dep failed, continuing [email protected]
npm WARN optional dep failed, continuing [email protected]
npm ERR! Linux 3.13.0-83-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "i"
npm ERR! node v4.4.5
npm ERR! npm  v2.15.5
npm ERR! path ../marked/bin/marked
npm ERR! code EPROTO
npm ERR! errno -71
npm ERR! syscall symlink

npm ERR! EPROTO: protocol error, symlink '../marked/bin/marked' -> '/www/shoop/shoop/admin/node_modules/.bin/marked'
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR!     <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR!     /www/shoop/shoop/admin/npm-debug.log

npm ERR! Linux 3.13.0-83-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "build"
npm ERR! node v4.4.5
npm ERR! npm  v2.15.5
npm ERR! code ELIFECYCLE
npm ERR! [email protected] build: `npm i && gulp bower && gulp build`
npm ERR! Exit status 185
npm ERR!
npm ERR! Failed at the [email protected] build script 'npm i && gulp bower && gulp build'.
npm ERR! This is most likely a problem with the shoop.admin package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     npm i && gulp bower && gulp build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs shoop.admin
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!
npm ERR!     npm owner ls shoop.admin
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /www/shoop/shoop/admin/npm-debug.log
Traceback (most recent call last):
  File "setup.py", line 146, in <module>
    cmdclass=utils.COMMANDS,
  File "/usr/lib/python3.4/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib/python3.4/distutils/dist.py", line 955, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.4/distutils/dist.py", line 974, in run_command
    cmd_obj.run()
  File "/www/shoop/shoop_setup_utils/commands.py", line 77, in run
    resource_building.build_resources(opts)
  File "/www/shoop/shoop_setup_utils/resource_building.py", line 45, in build_resources
    builder.build_all()
  File "/www/shoop/shoop_setup_utils/resource_building.py", line 67, in build_all
    self.build_dirs(package_json_dirs)
  File "/www/shoop/shoop_setup_utils/resource_building.py", line 79, in build_dirs
    self.build(dir)
  File "/www/shoop/shoop_setup_utils/resource_building.py", line 87, in build
    self._run_build(dir)
  File "/www/shoop/shoop_setup_utils/resource_building.py", line 96, in _run_build
    subprocess.check_call(self.command, cwd=dir, env=self.env, shell=shell)
  File "/usr/lib/python3.4/subprocess.py", line 561, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['npm', 'run', 'build']' returned non-zero exit status 1

Pages availability is confusing and missing date pickers

I created a page and set it Visible in menu. The "from" and "to" fields don't have date pickers and I thought they would be optional anyway, seems logical to me as saving works without filling them.

My page didn't appear in shop side. I then went back and manually typed a date "2014-01-01", saved, and pages menu appeared.

So, imho from and to should be optional constraints and they should definitely have date pickers.

selection_085

[enhancement] Consider different types of products

As I can see, current Shoop implantation presume that all products are physical, but what about, for example, digital products?

Even the main Product model declare required physical dimensions. Wouldn't it be more reasonable to develop Shoop with keeping in mind possibility of different product types?

For example, in the case mentioned above, you can add to the Product model type mixins (like ProductPhysical, ProductDigital, ProductVariationChild, etc) and mark type specific fields with null=True, blank=True. Besides, it will allow you to keep the Product model more clear, by separating specific type methods from it.

sorry for my grammar (._.)

Clarify license

AGPL seems a really strange choice for a Python ecommerce project. Some people would interpret GPL to mean that any website using shoop must provide all its source code under the same license, which is not going to be attractive to many ecommerce sites. For a Django app designed for non-profits, it might make more sense, but ecommerce sites are almost always going to be commercial.

When GPL meets Python, things get more complex:

https://jacobian.org/writing/gpl-questions/
http://lukeplant.me.uk/blog/posts/python-and-copyright/

The current license page leaves everything as clear as mud - https://www.shoop.io/shoop/license/ - but a clarification there still wouldn't be a substitute for a legal consensus on what the use of AGPL does to Python libraries and projects using them.

How to enable SHUUP subsite? like www.web.com/store/

I had partial success of enabling /store level subsite of shuup but its not fully functional as some of the ajax and other things are still trying to access root url.

Please advise the proper way to enable subsite in shuup.

Mithril.js 0.2.1 breaks admin UI

Editing views break with mithril.js 0.2.1 (with "mithriljs": "~0.2.0",). These are possibly fixed by 0.2.2-rc.1, according to changelog, but the way Shoop locks dependencies doesn't pull that in.

Locked my fork dep to 0.2.0 and admin edit views work again.

Question: why are Python dependencies locked to patch level but JavaScript not? Not locking dependencies causes each new environment to get a different version of the libraries, which can cause havoc with package maintainers breaking things at patch level. Could Shoop also lock javascript dependencies to patch level for increased stability?

http://nvie.com/posts/pin-your-packages/

Product Cross Sell plugin exception

Seems the plugin took a configuration value from a old plugin when I changed the type (from highlight to cross sell) of a plugin in xtheme editor.

The major problem here is because the server always returns error 500 and I can't change the value to fix the problem.

Traceback (most recent call last):
  File "/srv/www/env/lib/python3.5/site-packages/django/core/handlers/base.py", line 164, in get_response
    response = response.render()
  File "/srv/www/env/lib/python3.5/site-packages/django/template/response.py", line 158, in render
    self.content = self.rendered_content
  File "/srv/www/env/lib/python3.5/site-packages/django/template/response.py", line 135, in rendered_content
    content = template.render(context, self._request)
  File "/srv/www/env/lib/python3.5/site-packages/django_jinja/backend.py", line 86, in render
    return self.template.render(context)
  File "/srv/www/src/shuup/shuup/xtheme/engine.py", line 43, in render
    return self.environment.handle_exception(exc_info, True)
  File "/srv/www/env/lib/python3.5/site-packages/jinja2/environment.py", line 754, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/srv/www/env/lib/python3.5/site-packages/jinja2/_compat.py", line 37, in reraise
    raise value.with_traceback(tb)
  File "/srv/www/src/custom-theme/custom_theme/templates/custom_theme/shuup/front/index.jinja", line 1, in top-level template code
    {% extends "shuup/front/base.jinja" %}
  File "/srv/www/src/custom-theme/custom_theme/templates/custom_theme/shuup/front/base.jinja", line 63, in top-level template code
    {% block content %}{% endblock %}
  File "/srv/www/src/custom-theme/custom_theme/templates/custom_theme/shuup/front/index.jinja", line 30, in block "content"
    {% placeholder "front_content" %}
  File "/srv/www/src/shuup/shuup/xtheme/parsing.py", line 228, in _render_placeholder
    global_type=global_type,
  File "/srv/www/src/shuup/shuup/xtheme/rendering.py", line 71, in render_placeholder
    return renderer.render()
  File "/srv/www/src/shuup/shuup/xtheme/rendering.py", line 120, in render
    self._render_layout(write)
  File "/srv/www/src/shuup/shuup/xtheme/rendering.py", line 143, in _render_layout
    self._render_row(write, y, row)
  File "/srv/www/src/shuup/shuup/xtheme/rendering.py", line 163, in _render_row
    self._render_cell(write, x, cell)
  File "/srv/www/src/shuup/shuup/xtheme/rendering.py", line 191, in _render_cell
    content = cell.render(self.context)
  File "/srv/www/src/shuup/shuup/xtheme/layout.py", line 81, in render
    plugin_inst = self.instantiate_plugin()
  File "/srv/www/src/shuup/shuup/xtheme/layout.py", line 67, in instantiate_plugin
    return plugin_class(config=self.config)
  File "/srv/www/src/shuup/shuup/xtheme/plugins/products.py", line 76, in __init__
    type = map_relation_type(relation_type)
  File "/srv/www/src/shuup/shuup/front/template_helpers/product.py", line 94, in map_relation_type
    raise LookupError('Unknown ProductCrossSellType %r' % (relation_type,))
LookupError: Unknown ProductCrossSellType 'random'
[2016-09-23 12:24:23,416] (django.request:ERROR): Internal Server Error: /
Traceback (most recent call last):
  File "/srv/www/src/shuup/shuup/front/template_helpers/product.py", line 92, in map_relation_type
    return getattr(ProductCrossSellType, attr_name)
  File "/usr/lib/python3.5/enum.py", line 274, in __getattr__
    raise AttributeError(name) from None
AttributeError: RANDOM

Virtualenv in Dockerfile breaks build_messages

Inside the Dockerfile, a virtualenv is created. This virtualenv is then used by using /var/www/shuup/venv/bin/python as the python executable. This seems incorrect to me, as most of the virtualenv's environment is missing. Specifically, the $PATH environment variable is not updated to include the virtualenv's bin dir. This omission breaks build_messages, which is run during setup. build_messages uses django-admin from the virtualenv, which can't be found in the OS' PATH

I can think of 2 solutions:

  1. don't use virtualenvs in the docker image.
  2. amend the $PATH variable to include the virtualenv's path

I'm willing to write/test the patch once a choice has been made.

Error in python setup.py build

There is an error while building shuup development environment.

python setup.py build_resources

The error log is:


module.js:474
    throw err;
    ^

Error: Cannot find module 'internal/fs'
    at Function.Module._resolveFilename (module.js:472:15)
    at Function.Module._load (module.js:420:25)
    at Module.require (module.js:500:17)
    at require (internal/module.js:20:19)
    at evalmachine.<anonymous>:17:20
    at Object.<anonymous> (/Users/vikrantrathore/projects/shuup/shuup/admin/node_modules/gulp/node_modules/vinyl-fs/node_modules/graceful-fs/fs.js:11:1)
    at Module._compile (module.js:573:32)
    at Object.Module._extensions..js (module.js:582:10)
    at Module.load (module.js:490:32)
    at tryModuleLoad (module.js:449:12)

npm ERR! Darwin 16.1.0
npm ERR! argv "/usr/local/Cellar/node/7.1.0/bin/node" "/usr/local/bin/npm" "run" "build"
npm ERR! node v7.1.0
npm ERR! npm  v3.10.9
npm ERR! code ELIFECYCLE
npm ERR! [email protected] build: `npm i && gulp bower && gulp build`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] build script 'npm i && gulp bower && gulp build'

docker build -t shoop/dev . ---> non-zero code: 1 ??

I get this issue, someone know why?

$ uname -r
  3.13.0-86-generic
$ docker --version
Docker version 1.11.1, build 5604cbe
$ git clone git clone https://github.com/suutari-ai/shoop.git
$ cd shoop && docker build -t shoop/dev .

The command '/bin/sh -c /var/www/shoop/venv/bin/pip install /var/www/shoop/working_copy' returned a non-zero code: 1

Redirects to http despite serving content over SSL

Serving a test site using apache over SSL. I go through an ELB so redirects from port 80 to 443 are not possible. Why does the payment confirmation re-direct to http rather than stay on https? Is this intentional. Pointers as to how this can be changed appreciated.

Product does not get added to basket if force_new_line = True

I've spent a few hours debugging this but can't come up with a failing test to reproduce it, or find the right line where it goes wrong. But, I've got the following override class and basket spec set accordingly:

class ReservableBasket(BaseBasket):

    def add_product(self, supplier, shop, product, quantity, force_new_line=False, extra=None, parent_line=None):
        if not extra:
            extra = {}
        if self.request.POST.get("reservation_start", None):
            extra["reservation_start"] = self.request.POST.get("reservation_start")
            extra["adults"] = self.request.POST.get("adults", 1)
            extra["children"] = self.request.POST.get("children", 0)
        if product.type.identifier == "reservable":
            force_new_line = True
        return super(ReservableBasket, self).add_product(
            supplier, shop, product, quantity, force_new_line=force_new_line, extra=extra, parent_line=parent_line)

If force_new_line is not set to True, then everything works. But setting that to true causes the line not to be added to the basket at all.

After some debugging I ended up seeing that if it is set, then this line is never hit. In the debugger I could see self._data_lines being empty, but not reliably enough, it seems to be not consistent. Also a lot of stuff happens after that. After some hours and trying to verify it with a test I'm not sure any more.

I tried the following'ish in a shell to think of a way how to replicate a test:

>>> from shoop.front.basket.objects import BaseBasket
>>> from django.test import RequestFactory
>>> from shoop.testing.factories import get_default_shop, create_product, get_default_supplier
>>> from shoop.testing.factories import ProductFactory
>>> from django.utils.translation import activate
>>> activate("en")
>>> request = RequestFactory().get("/")
>>> shop = get_default_shop()
>>> request.shop = shop
>>> request.session = {}
>>> basket = BaseBasket(request)
>>> product = ProductFactory()
>>> basket.add_product(supplier, shop, product, 1, force_new_line=True)

Just to let you know if you can figure out if this is a bug or not. For now I'll just override BaseBasket._compare_line_for_addition to return False for this custom product type.

Search does not work with CJK (Chinese, Japanese Korean)

Tried adding a product with Chinese name and both the backend and frontend fails. Indeed raise a 500 internal server error for Chinese product names. I think something wrong with the way queries are handled. I think some issue with unicode encoding.

Fuzzy translations are being included in .po files

Hey, it looks like the translation import process currently also imports fuzzy (i.e. guessed) translations:

$ git grep ", fuzzy" | wc -l
     187

This should probably be fixed, since fuzzy translations are, in my experience anyway, pretty much always mistranslations.

Accept terms needs way to set terms

In the checkout phase the terms need to be accepted to go forward with an order (ConfirmForm.accept_terms). However, there is no way from the admin for the shop owner to set terms or no way to provide a link to the terms to a route for example, without overriding the relevant theme checkout.confirm stage template.

It would be nice if shop owner could specify terms in the shop admin and the form field would provide a link to the said terms in the confirm phase checkbox text.

selection_187

Running with gunicorn

Hi,

I've tried running the project with gunicorn using various switches, wanted to know what was the correct way, since all times it fails to boot worker process.

gunicorn shuup_workbench.wsgi:application
gunicorn shuup_workbench.wsgi

I've been able to run it through hendrix, but however, it seemed like it didn't display all the products/details in admin that it'd normally do.

Migration woes with post 3.0.0 dev version

I have a site running ~3.0.0. Locally trying to see whether upgrading to (almost) current development head would make sense and I'm having problems applying the migrations to a locally copied database.

The problem is that Shuup is mixing RunPython data migrations and table alters in the same migration. Django doesn't handle it well if after RunPython there are schema altering changes done. PostgreSQL raises for me for example with core.0020_services_and_methods:

django.db.utils.OperationalError: cannot ALTER TABLE "shoop_paymentmethod" because it has pending trigger events

Commenting out the RunPython and the (dependent on those) following alters passes that one, but the same crash comes in simple_cms.0004_add_parents. There could be other migrations too, I stopped here.

There is some discussion regarding this in a Django ticket.

Docs on RunPython explicitly say not to mix data and schema migrations:

On databases that do support DDL transactions (SQLite and PostgreSQL), RunPython operations do not have any transactions automatically added besides the transactions created for each migration (the atomic parameter has no effect on these databases). Thus, on PostgreSQL, for example, you should avoid combining schema changes and RunPython operations in the same migration or you may hit errors like OperationalError: cannot ALTER TABLE "mytable" because it has pending trigger events.

Would suggest cleaning up any post-3.0.0 migrations before a release or otherwise any PostgreSQL users are going to have a hell of a time updating.

Shuup unable to capture real ip through Nginx+Gunicorn(sockets)

I see in source code following is hard coded

self.request.META.get("REMOTE_ADDR"),

While only HTTP_REMOTE_ADDR has the real ip address. Is there a way to copy HTTP_REMOTE_ADDR to REMOTE_ADDR without modifying SHUUP code.
Also future versions of Shuup should make this header variable configruable.

Missing Shoop admin CSS

I've installed Shoop on a Ubuntu distro (14.04) exactly as I've installed on my OSX.
The problem is that the CSS from shoop_admin are missing (error 404) as you can see:

[14/Feb/2016 23:03:09] "GET / HTTP/1.1" 200 1862
[14/Feb/2016 23:03:12] "GET /sa/ HTTP/1.1" 302 0
[14/Feb/2016 23:03:12] "GET /sa/login/?error=You%20must%20be%20logged%20in.&next=/sa/ HTTP/1.1" 200 2544
[14/Feb/2016 23:03:12] "GET /static/shoop_admin/css/base.css HTTP/1.1" 404 1685
[14/Feb/2016 23:03:12] "GET /static/shoop_admin/js/vendor.js HTTP/1.1" 304 0
[14/Feb/2016 23:03:12] "GET /static/shoop_admin/js/base.js HTTP/1.1" 304 0

The classic gray theme css are all ok:

[14/Feb/2016 23:06:01] "GET /static/xtheme/editor-injection.js HTTP/1.1" 200 7525
[14/Feb/2016 23:06:09] "GET / HTTP/1.1" 200 13380
[14/Feb/2016 23:06:09] "GET /static/classic_gray/css/style.css HTTP/1.1" 200 229080
[14/Feb/2016 23:06:09] "GET /static/classic_gray/js/classic-gray.js HTTP/1.1" 200 488696
[14/Feb/2016 23:06:09] "GET /media/filer_public_thumbnails/filer_public/bd/51/bd51356c-8e90-4e23-bfa6-eb9911e1e16a/xiurwdmffq.jpg__500x500_q85_subsampling-2.jpg HTTP/1.1" 200 20462
[14/Feb/2016 23:06:09] "GET /static/classic_gray/img/no_image.png HTTP/1.1" 304 0
[14/Feb/2016 23:06:09] "GET /static/classic_gray/fonts/fontawesome-webfont.woff2?v=4.4.0 HTTP/1.1" 200 64464

I rebuilt the resources several times, but the problem persists.
Some idea? Maybe my npm build is failing (although I've not notice any error on builds)?

System check to verify Parler sanity

Shuup should check that the Parler configuration is sane before starting.

@JsseL and @juhakujala puzzled over an unrelated exception ('shuup.admin.modules.services.behavior_form_part.BehaviorFormSet object' has no attribute 'empty_form') for a while โ€“ turns out it was an AttributeError (which, as we unfortunately know, are hidden within @propertys) within FormSet.empty_form calls that happens due to PARLER_DEFAULT_LANGUAGE_CODE being undefined:

Traceback (most recent call last):
  File "~/django/forms/formsets.py", line 187, in empty_form
    empty_permitted=True,
  File "~/shuup/admin/modules/services/behavior_form_part.py", line 49, in form
    kwargs.setdefault("default_language", settings.PARLER_DEFAULT_LANGUAGE_CODE)
  File "~/django/conf/__init__.py", line 49, in __getattr__
    return getattr(self._wrapped, name)
AttributeError: 'Settings' object has no attribute 'PARLER_DEFAULT_LANGUAGE_CODE'

My suggestion is to add a simple system check in ShuupCoreAppConfig.ready() that throws an exception if some of the Parler settings (PARLER_DEFAULT_LANGUAGE_CODE and PARLER_LANGUAGES) are unset -- or perhaps it could automatically derive them based on the Django LANGUAGES setting, as "sane defaults" go?

UnicodeEncodeError on order notification due to euro sign

Shoop 3.0, testing out the notification system. Created a trigger to send an email when order is created.

Error seems to be caused by โ‚ฌ, which is coming from the core {{ order }} template tag.

[pid: 1238|app: 0|req: 22/28] xx.xx.xx.xx () {64 vars in 1414 bytes} [Sat Feb 27 21:51:10 2016] GET /order/payment/5/l60LmHObvlY6dzfjpwuIKUbMRP6eW7CQ/ => generated 0 bytes in 54 msecs (HTTP/1.1 302) 5 headers in 233 bytes (1 switches on core 1)
[2016-02-27 21:51:10,216] (shoop.simple_order_notification:ERROR): Failed to send order notification to ['*****@*****.***']
Traceback (most recent call last):
  File "/app/path/venv/lib/python3.4/site-packages/shoop/front/apps/simple_order_notification/__init__.py", line 49, in send_simple_order_notification
    message.send()
  File "/app/path/venv/lib/python3.4/site-packages/django/core/mail/message.py", line 303, in send
    return self.get_connection(fail_silently).send_messages([self])
  File "/app/path/venv/lib/python3.4/site-packages/django/core/mail/backends/console.py", line 36, in send_messages
    self.write_message(message)
  File "/app/path/venv/lib/python3.4/site-packages/django/core/mail/backends/console.py", line 23, in write_message
    self.stream.write('%s\n' % msg_data)
UnicodeEncodeError: 'ascii' codec can't encode character '\u20ac' in position 461: ordinal not in range(128)
[pid: 1238|app: 0|req: 23/29] xx.xx.xx.xx () {64 vars in 1417 bytes} [Sat Feb 27 21:51:10 2016] GET /order/complete/5/l60LmHObvlY6dzfjpwuIKUbMRP6eW7CQ/ => generated 13981 bytes in 226 msecs (HTTP/1.1 200) 5 headers in 263 bytes (1 switches on core 0)

Template looks like this:

selection_225

Markdown not cleaned in category product truncated description

Product page description supports markdown (even though this is not evident when editing the product).

Category page does not render markdown (as it probably shouldn't), but also doesn't clean the markdown code away, see as follows:

selection_161
selection_160

Shoop 1.2.0.post0.dev, current master head.

Info: postal service plugin?

some plugin for any postal service in United States. It is important at the time to be sending the package , choose , through that service is sent and calculate shipping

Statics not built/collected for admin

Added Shoop current master to requirements (from git), installed and it did lots of nice build jobs as such. In my project I then did collectstatic, loaded up the shop and front page looks good. However, going to /sa shows admin statics were not collected. Verified in my static folder they are missing. Also they are not in /static/shoop_admin in the site packages, only images and fonts there. So more likely a build issue than collection issue.

selection_091

The build job did build them, the pip install ended with:

    *** (1/2) Building: ./shoop/notify
    Saving build result of ./shoop/notify
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/00/ea603f7ecf1406b9067f9318ae8118411eb0b9/static/notify/admin/script-editor-bundle.js
    *** (2/2) Building: ./shoop/admin
    Saving build result of ./shoop/admin
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/js/picotable.js
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/js/base.js
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/js/dashboard.js
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/js/media-browser.js
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/js/vendor.js
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/js/remarkable.js
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/css/media-browser.css
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/css/base.css
    Caching to: /home/jaywink/.cache/shoop/build_resources/prod/e4/3133f611bedb3b59e4abeb4678afd3c9128021/static/shoop_admin/css/dashboard.css
Successfully installed shoop
Cleaning up...

Something missing that pushes them to the static folder for collection?

shoop==1.0.0.post0.dev78-g8bb9e05
pip 1.5.6
Python 3.4.3
Ubuntu 15.04

Oh and btw, not sure if intended, but if I install from git with pip using the -e flag, the builds are not triggered at all.

setuptools error

I was trying to set up Shoop and got the following error message:

Command "/Users/nina/myvenv/bin/python3 -u -c "import setuptools, tokenize;file='/var/folders/y_/4vf6_qvd66vcwsy1gdg6wh3w0000gn/T/pip-1c9uii4s-build/setup.py';exec(compile(getattr(tokenize, 'open', open)(file).read().replace('\r\n', '\n'), file, 'exec'))" install --record /var/folders/y_/4vf6_qvd66vcwsy1gdg6wh3w0000gn/T/pip-tgs2pdpk-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/nina/myvenv/include/site/python3.5/shoop" failed with error code 1 in /var/folders/y_/4vf6_qvd66vcwsy1gdg6wh3w0000gn/T/pip-1c9uii4s-build/

I noticed that requirements-doc.txt had setuptools commented out.

I'm new to Python, but I did set up another Django project without errors.

Admin product image can only handle one image at a time

The product image UI in the admin side only seems to work properly with one image at a time. Using latest master (development head). Bug verified in Cloud Shoop Demo.

  • Click the + Add new image --> nothing happens.
  • Shrug, then click "Browse" in the empty image container, select image and save.

Expected: chosen image is saved
What happens: page reloads to General Information tab. Going back to images shows error message with a now mysteriously appeared new empty image container, with fully empty values (see missing Ordering default value).

Even filling required values for the new appeared container doesn't allow saving - just jumps to general information each time with no further form errors.

selection_201

Products page not working

Hi,

I found out that the Products page is not working when configuring a shuup project from scratch using the settings configuration of the workbench project. When I run the workbench project, the page is working, but with my own project, I get the following error: "shuup_testing/products: Not found".

Now I looked into this through the source code and when the "/xtheme/products" link is accessed, a function that needs to return the products view is returning None.

The function in cause is "get_view" and is defined in "_theme.py", which exists in "shuup\xtheme".

I modified the function, adding these two lines and now the Products page is working:

import shuup.front.themes.views as views
return getattr(views, view_name, None)

I hope this is helpful.

bitcoin and paypal feature

Hi, some information about this features?
if possible embed now as plugin or where is this branch addons?
thanks in advance :)

Xtheme plugin API requires private import

The commit 71b6269 made it so that external consumers of the Xtheme plugin API (such as themes and addons) must use a private import (from xtheme.plugins._base import TemplatedPlugin).

This isn't very clean imho.

Assigning @suutari-ai as the original author of the mentioned API cleanup commit.

Deactivate language

How to deactivate languages like chinese and others. I want to use only English.

Failure to install Shoop in a fresh python 3.5 project virtualenv

I have a project which requires Shoop via the normal requirements file. I think this is my first environment since 3.0.0 release that I started from scratch, and Shoop fails to install in the build_messages part with the message:

error: [Errno 2] No such file or directory: 'django-admin'

It's trying to call django-admin before it is installed? My requirements file is here. The Shoop fork is based on current master head, this commit.

Caching to: /home/jaywink/.cache/shoop/build_resources/prod/53/121e7bd600fd6996b26facad87ee727bc5ddcf/static/classic_gray/fonts/glyphicons-halflings-regular.woff2

Caching to: /home/jaywink/.cache/shoop/build_resources/prod/53/121e7bd600fd6996b26facad87ee727bc5ddcf/static/classic_gray/js/classic-gray.js

running build_messages

error: [Errno 2] No such file or directory: 'django-admin'

----------------------------------------
Cleaning up...
Command /home/jaywink/.virtualenvs/kakara/bin/python3 -c "import setuptools, tokenize;__file__='/home/jaywink/.virtualenvs/kakara/build/shoop/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-baqpx8xu-record/install-record.txt --single-version-externally-managed --compile --install-headers /home/jaywink/.virtualenvs/kakara/include/site/python3.5 failed with error code 1 in /home/jaywink/.virtualenvs/kakara/build/shoop
Storing debug log for failure in /home/jaywink/.pip/pip.log

Just set up shoop

Can I add/delete categories and products from the GUI? Logged into admin/admin account. Thanks!

Unintuitive error message when trying to use forbidden extra data keys for source line

Hey, noticed this while working on a client project.

When calling

basket.add_product(
    supplier=Supplier.objects.first(),
    shop=Shop.objects.first(),
    product=Product.objects.get(sku="RIVI"),
    quantity=1,
    force_new_line=True,
    extra={"can_delete": False}  # <-- Note
)

I get

TypeError(You may not add these to SourceLine: {'taxful_unit_discount_amount', 'price', 'can_change_quantity', '__reduce_ex__', '__delattr__', '__sizeof__', '__gt__', 'shop_product', '_OBJECT_FIELDS', '__dict__', '__format__', 'taxless_price', '__reduce__', '_state_check', 'taxful_base_unit_price', '__ge__', '__dir__', '__subclasshook__', '__doc__', '__hash__', '__lt__', 'tax_amount', '_BasketLine__in_init', 'source', 'taxless_unit_discount_amount', '_FIELDSET', 'base_price', 'taxless_base_unit_price', 'taxes', '_FIELDS', '__setattr__', 'taxless_base_price', 'to_dict', '__weakref__', 'cache_info', 'tax_percentage', 'taxless_discount_amount', '__eq__', 'get', 'discounted_unit_price', '__ne__', 'from_dict', 'taxful_base_price', 'update', '__getattribute__', '_deserialize_data', 'taxless_discounted_unit_price', '_PRICE_FIELDS', 'is_discounted', '__str__', '__le__', '__module__', '_data', '__repr__', 'taxful_discount_amount', 'taxful_discounted_unit_price', '__init__', 'set_quantity', 'tax_rate', 'discount_percentage', '__new__', 'unit_discount_amount', 'can_delete', '__class__', '_serialize_field', 'taxful_price', 'discount_rate'})

with the traceback

File "shoop/front/basket/objects.py" in add_product
  267.         return self.update_line(data, quantity=new_quantity, **extra)
File "shoop/front/basket/objects.py" in update_line
  274.         line.update(**kwargs)
File "shoop/core/order_creator/_source.py" in update
  440.                 "You may not add these to SourceLine: %s" % forbidden_keys)

Looking at the locals for that frame made it pretty easy to figure out can_delete was the culprit, but I don't think the exception needs to list every single forbidden key? :)

Failed to build shoop

Hi
I tried to install shoop in my linuxmint 17.1.
I used the following steps.

  1. Install necessities git, npm, nodejs, virtualenv
  2. created a virtualenv named shoop and installed django in it
  3. installed shoop from shoop-master/
    It gives me this error:

Complete log...

(shoop)manish@manish-vm ~/Projects/shoop/shoop_demo $ pip install /home/manish/Downloads/shoop-master/
Processing /home/manish/Downloads/shoop-master
Requirement already satisfied (use --upgrade to upgrade): shoop==1.1.0.post0.dev0 from file:///home/manish/Downloads/shoop-master in /home/manish/Projects/shoop/lib/python2.7/site-packages/shoop-1.1.0.post0.dev0-py2.7.egg
Requirement already satisfied (use --upgrade to upgrade): Babel==1.3 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): Django==1.8.2 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-bootstrap3==6.1.0 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-countries==3.3 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-enumfields==0.7.3 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-filer==0.9.11 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-jinja==1.4.1 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-mptt==0.7.4 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-parler==1.4 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-polymorphic==0.7.1 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-registration-redux==1.2 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): django-timezone-field==1.2 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): djangorestframework==3.1.3 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): factory-boy==2.5.2 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): fake-factory==0.5.2 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): jsonfield==1.0.3 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): Markdown==2.6.2 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): pytz==2015.4 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): requests==2.7.0 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): six==1.9.0 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): enum34==1.0.4 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): Unidecode>=0.04 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from django-filer==0.9.11->shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): easy-thumbnails>=1.0 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from django-filer==0.9.11->shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): jinja2>=2.5 in /home/manish/Projects/shoop/lib/python2.7/site-packages (from django-jinja==1.4.1->shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): setuptools in /home/manish/Projects/shoop/lib/python2.7/site-packages (from django-polymorphic==0.7.1->shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): pillow in /home/manish/Projects/shoop/lib/python2.7/site-packages (from easy-thumbnails>=1.0->django-filer==0.9.11->shoop==1.1.0.post0.dev0)
Requirement already satisfied (use --upgrade to upgrade): markupsafe in /home/manish/Projects/shoop/lib/python2.7/site-packages (from jinja2>=2.5->django-jinja==1.4.1->shoop==1.1.0.post0.dev0)
Building wheels for collected packages: shoop
Running setup.py bdist_wheel for shoop
Complete output from command /home/manish/Projects/shoop/bin/python -c "import setuptools;file='/tmp/pip-byELhk-build/setup.py';exec(compile(open(file).read().replace('\r\n', '\n'), file, 'exec'))" bdist_wheel -d /tmp/tmpPVwXh4pip-wheel-:
/home/manish/Projects/shoop/local/lib/python2.7/site-packages/setuptools/dist.py:285: UserWarning: Normalizing '1.1.0.post0.dev' to '1.1.0.post0.dev0'
normalized_version,
running bdist_wheel
running build
running build_production_resources
npm ERR! Failed to parse json
npm ERR! Unexpected token U
npm ERR! File: /tmp/pip-byELhk-build/shoop/notify/package.json
npm ERR! Failed to parse package.json data.
npm ERR! package.json must be actual JSON, not just JavaScript.
npm ERR!
npm ERR! This is not a bug in npm.
npm ERR! Tell the package author to fix their package.json file. JSON.parse

npm ERR! System Linux 3.13.0-37-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "run" "build"
npm ERR! cwd /tmp/pip-byELhk-build/shoop/notify
npm ERR! node -v v0.10.25
npm ERR! npm -v 1.3.10
npm ERR! file /tmp/pip-byELhk-build/shoop/notify/package.json
npm ERR! code EJSONPARSE
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /tmp/pip-byELhk-build/shoop/notify/npm-debug.log
npm ERR! not ok code 0
*** (1/2) Building: ./shoop/notify
Traceback (most recent call last):
File "", line 1, in
File "/tmp/pip-byELhk-build/setup.py", line 138, in
cmdclass=utils.COMMANDS,
File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
dist.run_commands()
File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/home/manish/Projects/shoop/local/lib/python2.7/site-packages/wheel/bdist_wheel.py", line 175, in run
self.run_command('build')
File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/usr/lib/python2.7/distutils/command/build.py", line 128, in run
self.run_command(cmd_name)
File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
self.distribution.run_command(command)
File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "shoop_setup_utils/commands.py", line 75, in run
resource_building.build_resources(opts)
File "shoop_setup_utils/resource_building.py", line 46, in build_resources
builder.build_all()
File "shoop_setup_utils/resource_building.py", line 67, in build_all
self.build_dirs(package_json_dirs)
File "shoop_setup_utils/resource_building.py", line 79, in build_dirs
self.build(dir)
File "shoop_setup_utils/resource_building.py", line 87, in build
self._run_build(dir)
File "shoop_setup_utils/resource_building.py", line 96, in _run_build
subprocess.check_call(self.command, cwd=dir, env=self.env, shell=shell)
File "/usr/lib/python2.7/subprocess.py", line 540, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['npm', 'run', 'build']' returned non-zero exit status 1


Failed building wheel for shoop
Failed to build shoop

European VAT ID check not validating ID fully

Hi,

I just tried out your demo and filled out customer contact data in the cart.
First I entered a totally wrong EU VAT ID (not enough digits) and the system complained correctly about that.
But then I entered a correct German VAT ID for a company with address in *_another *_EU country. The system accepted that without noticing, so obviously the validity of the ID is not fully checked. There are different levels of checking the VAT ID:

  1. Checking the basic sanity of the ID, e.g. counting if the ID has enough characters, a country code prefix, etc. => The first error was identified correctly!
  2. Checking the logical sanity of the ID, i.e. checking if the ID could be valid by knowing the algorithm with which they are created (the last digits commonly are checksums)
  3. Checking if the ID is registered in the EU register
  4. Checking if the ID is registered in the EU register and if the company name, form and address are fitting to the ones in the EU database. => Did not notice mistake of German ID with foreign address.

For my comprehension, so that someone can say that the web shop is validating VAT IDs correctly, it must check as described in point 4: A full check.

Maybe this is helping someone: http://evatr.bff-online.de/eVatR/
It is the validation link of the German Tax office. After checking a VAT ID, in the second step you are presented with a "full check" which also checks company name, form and adress (even with a fuzzy factor!). In the menu to the left there are links with technical information for developers. Maybe those links are helping?

Cheers and all the best for this wonderful project!!

shuup setup error under python 3.4.4+mysql 5.7+ shuup-0.5.0-py2.py3-none-any.whl

MySQL connector version is: 2.1.3
django engine is: 'ENGINE': 'mysql.connector.django',
when i ran :
python manage.py migrate

error encountered:

Running migrations:
Rendering model states... DONE
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... OK
Applying admin.0002_logentry_remove_auto_add... OK
Applying contenttypes.0002_remove_content_type_name... OK
Applying auth.0002_alter_permission_name_max_length... OK
Applying auth.0003_alter_user_email_max_length... OK
Applying auth.0004_alter_user_username_opts... OK
Applying auth.0005_alter_user_last_login_null... OK
Applying auth.0006_require_contenttypes_0002... OK
Applying auth.0007_alter_validators_add_error_messages... OK
Applying filer.0001_initial... OK
Applying filer.0002_auto_20150606_2003... OK
Applying shuup.0001_initial... OK
Applying shuup.0002_rounding...Traceback (most recent call last):
File "d:\devhome\python3\lib\site-packages\mysql\connector\django\base.py", li
ne 177, in _execute_wrapper
return method(query, args)
File "d:\devhome\python3\lib\site-packages\mysql\connector\cursor.py", line 51
5, in execute
self._handle_result(self._connection.cmd_query(stmt))
File "d:\devhome\python3\lib\site-packages\mysql\connector\connection.py", lin
e 488, in cmd_query
result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query))
File "d:\devhome\python3\lib\site-packages\mysql\connector\connection.py", lin
e 395, in _handle_result
raise errors.get_exception(packet)
mysql.connector.errors.ProgrammingError: 1091 (42000): Can't DROP 'PRIMARY'; che
ck that column/key exists

Contact group sales range bug

Making new group in Contact Groups and adding Sales Range (e.g. from 0 -> _ ) should add all contacts to this group.

In the newest GH repo of Shuup it's not working at all - not adding any of users to group.
In the demo2.shuup only Admin is added to new group

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.