Labmateai

Latest version: v2.0.5

Safety actively analyzes 688126 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

2.0.3

Added

- **Comprehensive Database Testing**:
- Implemented a robust test suite for `labmateai_db.py`, ensuring reliable creation and configuration of the SQLAlchemy engine.

- **Continuous Integration Enhancements**:
- Updated `.travis.yml` to conditionally run Alembic migrations based on the testing environment.
- Integrated coverage reporting and Codecov for improved visibility of test coverage.

- **Updated Dependencies**:
- Added `alembic`, `pytest-cov`, `pytest-xdist`, and other testing tools to `requirements.txt` to support enhanced testing and coverage capabilities.

Fixed

- **CLI Import Errors**:
- Resolved `ImportError` by replacing relative imports with absolute imports in `cli.py`, ensuring smooth execution of migration commands.

- **Test Failures in Migration Tests**:
- Addressed and fixed issues in `test_cli.py` related to database migrations and user creation tests, ensuring all tests pass successfully.

- **Database Configuration Handling**:
- Enhanced the `get_engine` function in `labmateai_db.py` to better handle testing scenarios and invalid configurations, preventing unexpected crashes.

Improved

- **Requirements Management**:
- Streamlined `requirements.txt` by removing redundant packages and ensuring all necessary dependencies are included for both development and testing.

- **CI/CD Workflow**:
- Optimized the Travis CI configuration for faster and more reliable builds, leveraging caching and parallel test execution.

---

2.0.1

Fixed

- **Database Connection Issues**:
Fixed issue with users connecting to LabMateAI database.

---

2.0.0

Added

- **Database Integration**:
Integrated **SQLAlchemy ORM** to manage interactions with the Heroku PostgreSQL database (`labmateai-db`), enhancing data handling and scalability.

- **Alembic Migrations**:
Implemented **Alembic** for seamless database schema migrations, ensuring consistent database structures across different environments.

- **Enhanced CLI Functionality**:
Updated the **Command-Line Interface (CLI)** to automatically prompt users to rate recommended tools immediately after receiving recommendations, improving user engagement and feedback collection.

- **Automated Interaction Logging**:
Configured the CLI to automatically log all interaction data (`interaction_id`, `user_id`, `tool_id`, `rating`, `usage_frequency`, `timestamp`) into the `interactions` table, ensuring comprehensive tracking of user interactions.

- **Continuous Integration (CI) Enhancements**:
Updated `.travis.yml` to include **PostgreSQL** service, run migrations before tests, and handle secure environment variables, thereby streamlining the CI pipeline.

- **Improved Testing Setup**:
Enhanced the test suite to include database integration tests, ensuring that all interactions are properly logged and that the system behaves as expected under various scenarios.

- **Deployment Enhancements**:
Improved deployment configurations for secure and reliable **PyPI** deployments, facilitating smoother releases and updates.

- **Documentation Updates**:
Updated `README.md` and other documentation files to reflect the latest changes, providing clear setup and usage instructions for users and contributors.

Changed

- **Project Structure Refactoring**:
Refactored project directories to support ORM models, migrations, and improved code organization, enhancing maintainability and scalability.

- **CLI Workflow Modification**:
Modified the CLI workflow to remove the separate rating option and integrate rating prompts directly after recommendations, resulting in a more intuitive user experience.

- **Configuration Management Enhancements**:
Enhanced configuration files (`alembic.ini`, `.travis.yml`, `.env`) to support secure and efficient CI/CD pipelines, ensuring better security and performance.

Fixed

- **Naming Conflicts Resolved**:
Resolved naming conflicts between the ORM `ToolModel` and custom `Tool` classes by using aliases (`ToolModel` for ORM and `CustomTool` for the custom class), preventing import and reference issues.

- **Import Errors Fixed**:
Fixed `ModuleNotFoundError` issues by adjusting import statements and ensuring proper package structure, ensuring that all modules are correctly accessible.

- **Test Failures Addressed**:
Fixed failing tests caused by package renaming and import errors, ensuring that all tests pass successfully and maintain high code quality standards.

---

1.0.0

Added

- **Initial Release of LabMateAI**:
Renamed the project from **LabMate** to **LabMateAI** and launched the first version.

- **AI-Powered Recommendation System**:
Implemented an **AI-powered system** for recommending laboratory tools and software, leveraging advanced algorithms to provide accurate and relevant suggestions.

- **Command-Line Interface (CLI)**:
Introduced an interactive **CLI** for user-friendly interaction, allowing users to navigate and utilize the recommendation features efficiently.

- **Features**:
- **Tool Similarity Recommendations**:
Find tools similar to a specified tool, enabling users to discover alternatives and related solutions.

- **Category-Based Recommendations**:
Discover tools within a specific scientific category, assisting users in finding relevant tools tailored to their field.

- **Keyword-Based Search**:
Search for tools based on keywords related to research, facilitating quick and targeted tool discovery.

- **Documentation**:
- Updated `README.md` with comprehensive installation and usage instructions.
- Created `CONTRIBUTING.md` outlining guidelines for contributing to the project.
- Added `CODE_OF_CONDUCT.md` to establish community standards and ensure a welcoming environment.
- Updated `API.md` with detailed API documentation for developers.
- Updated `INSTALLATION.md` with new installation instructions tailored to the updated project structure.
- Created `USAGE_GUIDE.md` to help users navigate and utilize the application effectively.

- **Testing**:
- Updated and expanded the **test suite** using `pytest`, covering all major functionalities.
- Ensured all tests pass after package renaming and structural updates, maintaining high code quality and reliability.

Changed

- **Package Renaming**:
Changed the package name from `labmate` to `labmateai`, reflecting the integration of AI-powered features.
- Updated all module imports and references to align with the new package name.
- Adjusted the directory structure to use `labmateai` as the root package directory.

- **Setup Configuration**:
- Updated `setup.py` with the new package name and metadata, ensuring correct packaging and distribution.
- Adjusted the console script entry point to `labmateai`, facilitating seamless CLI access.

- **Documentation Updates**:
- Revised all documentation files to replace references to **LabMate** with **LabMateAI**, maintaining consistency across all materials.
- Updated code examples and command-line instructions in documentation to reflect the new package structure and functionalities.

Fixed

- **Import Errors**:
Resolved `ModuleNotFoundError` issues due to incorrect import statements by changing absolute imports to relative imports within package modules.

- **Test Failures**:
Fixed failing tests caused by package renaming and import errors by updating test cases to align with the new package structure, ensuring all tests pass successfully.

---

0.1.0

Added

- **Initial Development Release as LabMate**:
Laid the groundwork for the recommendation system under the original project name **LabMate**.
- Implemented basic **CLI** functionality, allowing initial user interactions.
- Developed core classes: `Graph`, `Tree`, `Recommender`, and `CLI`, forming the foundation of the recommendation system.
- Created an initial **test suite** to ensure basic functionalities operate as expected.

---

*Note*: Replace `YYYY-MM-DD` with the actual dates of the releases.

Links

Releases

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.