@@ -1,6 +1,6 @@
FROM python:3.8-slim
-RUN apt update && apt install curl -y
+RUN apt update && apt install curl build-essential -y
# We use Poetry for dependency management
RUN curl -sSL https://install.python-poetry.org | python3 - && \
@@ -12,7 +12,7 @@ kill_timeout = "5s"
dockerfile = "fly.dockerfile"
[deploy]
- strategy = "bluegreen"
+ strategy = "canary"
[processes]
app = ""
@@ -37,8 +37,8 @@ kill_timeout = "5s"
port = 443
handlers = ["tls", "http"]
[services.concurrency]
- type = "connections"
- hard_limit = 80
+ type = "requests"
+ hard_limit = 60
soft_limit = 30
[[services.tcp_checks]]
@@ -47,7 +47,7 @@ def subheading(text: str, *, make_menu_entry: bool = True, more_link: Optional[s
if make_menu_entry:
with get_menu() as menu:
async def click():
- if await ui.run_javascript(f'!!document.querySelector("div.q-drawer__backdrop")'):
+ if await ui.run_javascript('!!document.querySelector("div.q-drawer__backdrop")', timeout=5):
menu.hide()
ui.open(f'#{name}')
ui.link(text, target=f'#{name}').props('data-close-overlay').on('click', click, [])
@@ -52,7 +52,7 @@ class Search:
def handle_input(self, e: events.ValueChangeEventArguments) -> None:
async def handle_input():
with self.results:
- results = await ui.run_javascript(f'return window.fuse.search("{e.value}").slice(0, 50)')
+ results = await ui.run_javascript(f'return window.fuse.search("{e.value}").slice(0, 50)', timeout=6)
self.results.clear()
for result in results:
href: str = result['item']['url']