Skip to content

Commit ff10cf3

Browse files
authored
Merge pull request #59 from WillNye/fix-chirp-auth
Fix chirp support.
2 parents efffe68 + 70236c4 commit ff10cf3

7 files changed

Lines changed: 33 additions & 25 deletions

File tree

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,15 @@
33

44
---
55

6+
## 0.3.14 (May 27, 2026)
7+
8+
BUG FIXES:
9+
* Update available notification is clickable
10+
* Bump Chirp endpoint to fix authentication issue
11+
* Resolve crash errors when closing the desktop app
12+
13+
---
14+
615
## 0.3.13 (March 25, 2026)
716

817
BUG FIXES:

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "tbr-deal-finder"
3-
version = "0.3.13"
3+
version = "0.3.14"
44
description = "Track price drops and find deals on books in your TBR list across audiobook and ebook formats."
55
readme = "README.md"
66
requires-python = ">=3.13"

tbr_deal_finder/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from pathlib import Path
22

3-
__VERSION__ = "0.3.13"
3+
__VERSION__ = "0.3.14"
44

55
QUERY_PATH = Path(__file__).parent.joinpath("queries")

tbr_deal_finder/gui/main.py

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ def refresh_navigation(self):
126126
# Add update indicator if update is available
127127
if self.update_info:
128128
bottom_section_widgets.append(
129-
get_update_notification_container()
129+
self.get_update_notification_container()
130130
)
131131

132132
# Update the bottom container content
@@ -215,7 +215,7 @@ def build_layout(self):
215215
# Add update indicator if update is available
216216
if self.update_info:
217217
bottom_section_widgets.append(
218-
get_update_notification_container()
218+
self.get_update_notification_container()
219219
)
220220

221221
# Create navigation container with logo at bottom
@@ -828,23 +828,22 @@ def get_last_run_time(self) -> datetime:
828828

829829
return self._last_run_time
830830

831-
832-
def get_update_notification_container():
833-
return ft.Container(
834-
content=ft.Text(
835-
"Update Available",
836-
size=11,
837-
color=ft.Colors.ORANGE_400,
838-
weight=ft.FontWeight.BOLD,
839-
text_align=ft.TextAlign.CENTER
840-
),
841-
padding=ft.padding.only(top=8, left=4, right=4, bottom=4),
842-
alignment=ft.alignment.center,
843-
on_click=lambda e: self.show_update_notification(),
844-
border_radius=4,
845-
bgcolor=ft.Colors.ORANGE_50,
846-
border=ft.border.all(1, ft.Colors.ORANGE_400)
847-
)
831+
def get_update_notification_container(self):
832+
return ft.Container(
833+
content=ft.Text(
834+
"Update Available",
835+
size=11,
836+
color=ft.Colors.ORANGE_400,
837+
weight=ft.FontWeight.BOLD,
838+
text_align=ft.TextAlign.CENTER
839+
),
840+
padding=ft.padding.only(top=8, left=4, right=4, bottom=4),
841+
alignment=ft.alignment.center,
842+
on_click=lambda e: self.show_update_notification(),
843+
border_radius=4,
844+
bgcolor=ft.Colors.ORANGE_50,
845+
border=ft.border.all(1, ft.Colors.ORANGE_400)
846+
)
848847

849848

850849
def ddb_cleanup():

tbr_deal_finder/retailer/chirp.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
class Chirp(AioHttpSession, Retailer):
1717
# Static because url for other locales just redirects to .com
1818
_url: str = "https://api.chirpbooks.com/api/graphql"
19-
USER_AGENT = "ChirpBooks/5.13.9 (Android)"
19+
USER_AGENT = "ChirpBooks/5.20.2 (Android)"
2020

2121
def __init__(self):
2222
super().__init__()

tbr_deal_finder/retailer/models.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,8 @@ def __del__(self):
114114
"""Attempt to close session on garbage collection."""
115115
if self._session and not self._session.closed:
116116
try:
117-
asyncio.create_task(self._session.close())
117+
asyncio.create_task(self.close())
118118
except RuntimeError:
119119
# Event loop might be closed
120-
pass
120+
asyncio.run(self.close())
121121

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)