aioeasysqlite

v1.2.1 safe
3.0
Low Risk

Library for easy work with databases. Easier aiosqlite version.

🤖 AI Analysis

Final verdict: SAFE

The package shows no signs of malicious activity, with low risks across all categories except metadata, where the maintainer's account status is concerning but insufficient to classify the package as malicious.

  • Low network, shell, obfuscation, and credential risks.
  • Maintainer's account is new or inactive, raising metadata risk.
Per-check LLM notes
  • Network: No network calls detected, which is normal unless the package requires external services.
  • Shell: No shell execution detected, which is expected for a library focused on asynchronous SQLite operations.
  • Obfuscation: No obfuscation patterns detected, suggesting normal behavior.
  • Credentials: No credential harvesting patterns detected, indicating safe handling of secrets.
  • Metadata: The maintainer has a new or inactive account and lacks author details, which raises some concern but does not definitively indicate malicious intent.

📦 Package Quality Overall: Medium (5.2/10)

◈ Medium Test Suite 6.0

Partial test coverage signals detected

  • 1 test file(s) detected (e.g. tests_db.py)
◈ Medium Documentation 5.0

Some documentation present

  • Detailed PyPI description (5607 chars)
○ Low Contributing Guide 2.0

No contributing guide or governance files found

  • No CONTRIBUTING, CODE_OF_CONDUCT, or governance files found
◈ Medium Type Annotations 7.0

Partial type annotation coverage

  • Type checker (mypy / pyright / pytype) referenced in project
  • 21 type-annotated function signatures detected in source
◈ Medium Multiple Contributors 6.0

Limited contributor diversity

  • 2 unique contributor(s) across 34 commits in treizd/AioEasySqlite
  • Two distinct contributors found

🔬 Heuristic Checks

Outbound Network Calls

No suspicious network call patterns found

Code Obfuscation

No obfuscation patterns detected

Shell / Subprocess Execution

No shell execution patterns detected

Credential Harvesting

No credential harvesting patterns detected

Typosquatting

No typosquatting candidates detected

Registered Email Domain

Email domain looks legitimate: gmail.com>

Suspicious Page Links

All external links appear legitimate

Git Repository History

Repository treizd/AioEasySqlite appears legitimate

Maintainer History score 4.0

2 maintainer concern(s) found

  • Author name is missing or very short
  • Author "" appears to have only 1 package on PyPI (new or inactive account)
Known CVE Vulnerabilities

No known vulnerabilities found in OSV database.

💡 AI App Starter Prompt

Use this prompt to build a project with aioeasysqlite
Create a fully functional mini-application using the 'aioeasysqlite' Python package, which simplifies asynchronous database operations. Your task is to develop a simple library management system that allows users to add, update, delete, and search books in a SQLite database. The application should also provide a feature to display all books currently in the library.

Here are the steps and features you need to implement:
1. Set up a basic SQLite database using 'aioeasysqlite'. Define a table named 'books' with columns: id (integer, primary key), title (text), author (text), publication_year (integer).
2. Implement a function to add a new book to the database. This function should take parameters for title, author, and publication year, and use 'aioeasysqlite' to insert these into the 'books' table.
3. Create a function to update the details of an existing book. This function should accept the book's ID and the updated information (title, author, publication year), then use 'aioeasysqlite' to modify the relevant record in the 'books' table.
4. Develop a delete function that removes a book from the database based on its ID, utilizing 'aioeasysqlite' to execute the deletion.
5. Add a search functionality that allows users to find books either by their ID, title, or author. The search should return matching records from the 'books' table.
6. Finally, implement a feature to list all books in the library, fetching all rows from the 'books' table using 'aioeasysqlite'.

Use 'aioeasysqlite' throughout your application to ensure efficient and easy handling of database interactions. Remember to handle exceptions and errors gracefully, providing meaningful feedback to the user if something goes wrong during any operation.