Code Monkey home page Code Monkey logo

thousands's People

Contributors

binrush avatar kagel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

thousands's Issues

Exception in prod

2015-12-25 16:02:14,006 - thousands - ERROR - Exception on /climb/new/50 [POST]
Traceback (most recent call last):
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1817, in ws
gi_app
    response = self.full_dispatch_request()
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1477, in fu
ll_dispatch_request
    rv = self.handle_user_exception(e)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1381, in ha
ndle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1475, in fu
ll_dispatch_request
    rv = self.dispatch_request()
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1461, in di
spatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask_Login-0.3.2-py2.7.egg/flask_login.py", line 792,
 in decorated_view
    return func(*args, **kwargs)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/views.py", line 136, in climb_new
    form=f)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/templating.py", line 128,
 in render_template
    context, ctx.app)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/templating.py", line 110,
 in _render
    rv = template.render(context)
  File "/opt/rh/python27/root/usr/lib/python2.7/site-packages/jinja2/environment.py", line 894, in render
    return self.environment.handle_exception(exc_info, True)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/templates/climb_edit.html", line 1, in top-level template code
    {% extends "layout.html" %}
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/templates/layout.html", line 65, in top-level template code
    {% block content %}{% endblock %}
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/templates/climb_edit.html", line 10, in block "content"
    <li>{{ form[field_name].label }}: {{ error }}</li>
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)

Add OSM layer

Not all objects from OSM map are added to thunderforest one. So, adding osm layer will be useful.

Track upload

Allow user to upload track and automatically detect what summits were visited

Exception in prod

2015-12-21 10:34:25,890 - thousands - ERROR - Exception on /login/vk [GET]
Traceback (most recent call last):
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/auth.py", line 70, in vk_login
    vk_get_user)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/auth.py", line 87, in oauth_login
    raise AuthError(req.args.get('error_description'))
AuthError: User denied your request
2015-12-21 10:34:32,615 - thousands - INFO - New user registration uid=45, src=1, name=****
2015-12-21 10:34:48,704 - thousands - ERROR - Exception on /login/vk [GET]
Traceback (most recent call last):
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/python/virtenv/lib/python2.7/site-packages/Flask-0.10.1-py2.7.egg/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/auth.py", line 70, in vk_login
    vk_get_user)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/auth.py", line 94, in oauth_login
    user, created = get_user(credentials)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/auth.py", line 159, in vk_get_user
    user.id = g.users_dao.create(user)
  File "/var/lib/openshift/55d5ae9189f5cfa557000085/app-root/runtime/repo/thousands/dao.py", line 323, in create
    user.preview_id))
  File "/opt/rh/python27/root/usr/lib64/python2.7/site-packages/psycopg2/extras.py", line 120, in execute
    return super(DictCursor, self).execute(query, vars)
IntegrityError: duplicate key value violates unique constraint "users_oauth_id_src_key"
DETAIL:  Key (oauth_id, src)=(1573559, 1) already exists.

Store images on filesystem

Storing images in database was a temporary solution. Now we should rewrite it to store and serve them from filesystem.

Default map layer

Change default map layer to something with topo data instead of default osm layer

Perform stress test

Before release, we should perform stress test to ensure that site can handle rather many user requests

Create awards system

Implement awards system to assign some virtual awards for climbers who reached some results ( 10, 50, 100, 200 summits, all main summits, etc.)

Fake authentication

Create some way to authenticate user without using external sites (for development only)

Rounding coordinates

When adding new summit, coordinates values should be rounded to 5 digits after dot

Allow non-exact climb date

User could not remember exact climb date. Interface should allow to choose only year or year and month along with exact date.

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.