#1 by darkogav
Hello, I have the latest otree install and we are getting an error now when upgraded to python 3.8. All server checks pass. Not sure if missing module or something related to the old session code. I checked and datetime is installed. full error below. Exception in ASGI application Traceback (most recent call last): File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 140, in _resolve_variable obj = obj(*self.func_args) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/models/session.py", line 99, in _created_readable delta = now - self._created TypeError: unsupported operand type(s) for -: 'float' and 'datetime.datetime' The above exception was the direct cause of the following exception:
#2 by Chris_oTree
Can you show the full traceback? Also, what triggered this error? Starting the server, creating a session, etc....
#3 by Chris_oTree
By the way you have to reset the database when upgrading oTree. Meaning you delete your old sessions.
#4 by darkogav
Hello, i reset the db. No luck. The error is generated when trying to access sessions. Full error below. -- Exception in ASGI application Traceback (most recent call last): File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 140, in _resolve_variable obj = obj(*self.func_args) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/models/session.py", line 99, in _created_readable delta = now - self._created TypeError: unsupported operand type(s) for -: 'float' and 'datetime.datetime' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/home/otree/otree2022/lib/python3.8/site-packages/uvicorn/protocols/http/h11_impl.py", line 396, in run_asgi result = await app(self.scope, self.receive, self.send) File "/home/otree/otree2022/lib/python3.8/site-packages/uvicorn/middleware/proxy_headers.py", line 45, in __call__ return await self.app(scope, receive, send) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/applications.py", line 112, in __call__ await self.middleware_stack(scope, receive, send) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/middleware/base.py", line 26, in __call__ await response(scope, receive, send) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/responses.py", line 224, in __call__ await run_until_first_complete( File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/concurrency.py", line 24, in run_until_first_complete [task.result() for task in done] File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/concurrency.py", line 24, in <listcomp> [task.result() for task in done] File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/responses.py", line 216, in stream_response async for chunk in self.body_iterator: File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/middleware/base.py", line 56, in body_stream task.result() File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/middleware/base.py", line 38, in coro await self.app(scope, receive, send) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/errorpage.py", line 247, in __call__ raise exc # from None File "/home/otree/otree2022/lib/python3.8/site-packages/otree/errorpage.py", line 227, in __call__ await self.app(scope, receive, _send) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/middleware/base.py", line 25, in __call__ response = await self.dispatch_func(request, self.call_next) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/middleware.py", line 42, in dispatch response = await call_next(request) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/middleware/base.py", line 45, in call_next task.result() File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/middleware/base.py", line 38, in coro await self.app(scope, receive, send) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/middleware/sessions.py", line 75, in __call__ await self.app(scope, receive, send_wrapper) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/patch.py", line 41, in __call__ raise exc # from None File "/home/otree/otree2022/lib/python3.8/site-packages/otree/patch.py", line 29, in __call__ await self.app(scope, receive, sender) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/routing.py", line 582, in __call__ await route.handle(scope, receive, send) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/routing.py", line 243, in handle await self.app(scope, receive, send) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/views/cbv.py", line 45, in dispatch response = await run_in_threadpool(self.inner_dispatch, request) File "/home/otree/otree2022/lib/python3.8/site-packages/starlette/concurrency.py", line 40, in run_in_threadpool return await loop.run_in_executor(None, func, *args) File "/usr/lib/python3.8/concurrent/futures/thread.py", line 57, in run result = self.fn(*self.args, **self.kwargs) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/views/cbv.py", line 66, in inner_dispatch return self.get(request, **request.path_params) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/views/cbv.py", line 77, in get return self.render_to_response(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/views/cbv.py", line 126, in render_to_response return render(self.get_template_name(), context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/loader.py", line 85, in render ibis_loader.load(template_name, template_type=template_type).render( File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/template.py", line 36, in render return self.root_node.render(context.Context(data_dict, self)) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in wrender return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in <genexpr> return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in wrender return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in <genexpr> return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in wrender return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in <genexpr> return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in wrender return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in <genexpr> return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in wrender return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in <genexpr> return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 578, in wrender return self.render_block(context, block_list[:]) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 591, in render_block output = ''.join(child.render(context) for child in last_block.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 591, in <genexpr> output = ''.join(child.render(context) for child in last_block.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 578, in wrender return self.render_block(context, block_list[:]) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 591, in render_block output = ''.join(child.render(context) for child in last_block.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 591, in <genexpr> output = ''.join(child.render(context) for child in last_block.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 433, in wrender return self.true_branch.render(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in wrender return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in <genexpr> return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 318, in wrender output.append(self.for_branch.render(context)) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in wrender return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 207, in <genexpr> return ''.join(child.render(context) for child in self.children) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 190, in render return self.wrender(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 267, in wrender content = expr.eval(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 132, in eval return self._resolve_variable(context) File "/home/otree/otree2022/lib/python3.8/site-packages/otree/templating/nodes.py", line 144, in _resolve_variable raise errors.TemplateRenderingError(msg, self.token) from err otree.templating.errors.TemplateRenderingError: Error calling function 's._created_readable' in template 'otree/Sessions.html', line 73. (line 73, in "s._created_readable()") ---
#5 by darkogav
Hello, just wanted to follow up to confirm. This this error due to out environment install or is it an issue with the code in the session?