You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
having trouble tracking the root cause down but something is encoding the "+" in e+38 to a space which is causing the render_parameters function in titiler to throw an error.
If you review the stack trace below, you'll see the rescale parameter is passed as you might expect to tilejson but then ends up with a space replacing the when sent to RenderParams in titiler/core/dependencies.py.
Any ideas welcome.
INFO: 127.0.0.1:65350 - "GET /info HTTP/1.1" 200 OK
bidx=1&rescale=-3.4028235e+38%2C3.4028235e+38
INFO: 127.0.0.1:65350 - "GET /tilejson.json?bidx=1&rescale=-3.4028235e+38,3.4028235e+38 HTTP/1.1" 500 Internal Server Error
ERROR: Exception in ASGI application
Traceback (most recent call last):
File "/usr/local/lib/python3.9/site-packages/uvicorn/protocols/http/h11_impl.py", line 373, in run_asgi
result = await app(self.scope, self.receive, self.send)
File "/usr/local/lib/python3.9/site-packages/uvicorn/middleware/proxy_headers.py", line 75, in __call__
return await self.app(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/fastapi/applications.py", line 199, in __call__
await super().__call__(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/starlette/applications.py", line 112, in __call__
await self.middleware_stack(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/errors.py", line 181, in __call__
raise exc from None
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/errors.py", line 159, in __call__
await self.app(scope, receive, _send)
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 25, in __call__
response = await self.dispatch_func(request, self.call_next)
File "/usr/local/lib/python3.9/site-packages/rio_viz/app.py", line 63, in dispatch
response = await call_next(request)
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 45, in call_next
task.result()
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/base.py", line 38, in coro
await self.app(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/gzip.py", line 18, in __call__
await responder(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/gzip.py", line 35, in __call__
await self.app(scope, receive, self.send_with_gzip)
File "/usr/local/lib/python3.9/site-packages/starlette/middleware/cors.py", line 78, in __call__
await self.app(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/starlette/exceptions.py", line 82, in __call__
raise exc from None
File "/usr/local/lib/python3.9/site-packages/starlette/exceptions.py", line 71, in __call__
await self.app(scope, receive, sender)
File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 580, in __call__
await route.handle(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 241, in handle
await self.app(scope, receive, send)
File "/usr/local/lib/python3.9/site-packages/starlette/routing.py", line 52, in app
response = await func(request)
File "/usr/local/lib/python3.9/site-packages/fastapi/routing.py", line 206, in app
solved_result = await solve_dependencies(
File "/usr/local/lib/python3.9/site-packages/fastapi/dependencies/utils.py", line 550, in solve_dependencies
solved = await run_in_threadpool(call, **sub_values)
File "/usr/local/lib/python3.9/site-packages/starlette/concurrency.py", line 40, in run_in_threadpool
return await loop.run_in_executor(None, func, *args)
File "/usr/local/Cellar/python@3.9/3.9.5/Frameworks/Python.framework/Versions/3.9/lib/python3.9/concurrent/futures/thread.py", line 52, in run
result = self.fn(*self.args, **self.kwargs)
File "<string>", line 7, in __init__
File "/usr/local/lib/python3.9/site-packages/titiler/core/dependencies.py", line 344, in __post_init__
[tuple(map(float, r.split(","))) for r in self.rescale]
File "/usr/local/lib/python3.9/site-packages/titiler/core/dependencies.py", line 344, in <listcomp>
[tuple(map(float, r.split(","))) for r in self.rescale]
ValueError: could not convert string to float: '-3.4028235e 38'
The text was updated successfully, but these errors were encountered:
Thanks for the report @abarciauskas-bgse
The problem was in TiTiler. For some reason (which I believe is uri encoding), the + within -3.4028235e+38 string was removed when decoded in TiTiler. the simple fix is to remove the white space -3.4028235e 38 -> -3.4028235e38 but I'll see if we can better encode those value to avoid this.
For now if you install titiler.core==0.3.6 it should work correctly
having trouble tracking the root cause down but something is encoding the "+" in
e+38
to a space which is causing therender_parameters
function in titiler to throw an error.If you review the stack trace below, you'll see the rescale parameter is passed as you might expect to tilejson but then ends up with a space replacing the
when sent to
RenderParams
in titiler/core/dependencies.py.Any ideas welcome.
The text was updated successfully, but these errors were encountered: