Skip to content

Release v0.3.0 - Real Book Search, Purchase History & Env-Based Admin Panel

Pre-release
Pre-release

Choose a tag to compare

@devsmish devsmish released this 06 Sep 14:22
· 83 commits to main since this release
a21b18a

馃攳 Feature Enhancements

  • **Real Book Search: Updated db/books.py:search_books() with SQL LIKE filtering against titles and authors. Integrated

  • **services/bookstore.py:search_books() to return matching book records while preserving search query logging to MongoDB.

  • **Purchase History: Introduced db/purchases.py:get_user_purchases() joining purchases and books tables to show purchase date, book

  • **details, quantity, and total cost. Added Option 5. Purchase history to the CLI menu.

馃敀 Security & Access Control

  • **Environment-Based Admin Panel: Managed admin privileges strictly via an ADMIN_USERNAMES list in .env to prevent security risks

  • **associated with database flags or registration-time role selection.

  • **Dynamic Menu & CRUD Operations: Automatically grants Option 6. Admin panel (supporting book Add/Edit/Delete actions) only if the * **logged-in user matches an entry in ADMIN_USERNAMES.

鈿狅笍 Breaking Changes

  • **Authentication Signature Update: Updated auth.login() to return a (user_id, username) tuple instead of only user_id to enable
  • **username-based permission evaluation across the application.

Full Changelog: v0.2.0...v0.3.0