Skip to main content

SDIF Database Manager

Project description

sdif-db

License: MIT Python Version

SDIF Database Manager.

This library provides tools to manage and interact with SDIF (Standardized Data Interoperable Format) databases.

Table of Contents

Installation

Prerequisites

  • Python 3.9 or higher.

From PyPI (Recommended)

To install the latest stable version of sdif-db from PyPI:

pip install sdif-db

From Source (for Development)

If you want to contribute to sdif-db or need the latest development version:

  1. Clone the repository:

    git clone https://github.com/syncpulse-solutions/satif.git
    cd satif/libs/sdif
    
  2. Install dependencies using Poetry: Make sure you have Poetry installed.

    poetry install
    

    This will create a virtual environment and install all necessary dependencies, including development tools. Alternatively, you can use the Makefile command:

    make install
    

Usage

sdif-db can be used both as a Python library in your projects.

As a Library

You can import and use sdif-db components in your Python code.

from sdif_db import SDIFDatabase

try:
    with SDIFDatabase(path_to_your_sqlite_file) as db:
        # Perform operations
        data = db.query("SELECT * FROM your_table")
        print(data)
except Exception as e:
    print(f"An error occurred: {e}")

(More detailed examples and API documentation will be provided as the library evolves.)

Contributing

Contributions are welcome! Whether it's bug reports, feature requests, or code contributions, please feel free to get involved.

Contribution Workflow

  1. Fork the repository on GitHub.

  2. Clone your fork locally:

    git clone https://github.com/YOUR_USERNAME/satif.git
    cd satif/libs/sdif
    
  3. Create a new branch for your feature or bug fix:

    git checkout -b feature/your-feature-name
    

    or

    git checkout -b fix/your-bug-fix-name
    
  4. Set up the development environment as described in the From Source (for Development) section:

    make install  # or poetry install
    
  5. Make your changes. Ensure your code follows the project's style guidelines.

  6. Format and lint your code:

    make format
    make lint
    
  7. Run type checks:

    make typecheck
    
  8. Run tests to ensure your changes don't break existing functionality:

    make test
    

    To also generate a coverage report:

    make coverage
    
  9. Commit your changes with a clear and descriptive commit message.

  10. Push your changes to your fork on GitHub:

    git push origin feature/your-feature-name
    
  11. Submit a Pull Request (PR) to the main branch of the original syncpulse-solutions/satif repository.

Coding Standards

  • Follow PEP 8 for Python code.
  • Use Google Python Style Guide for docstrings (as configured in pyproject.toml).
  • Ensure code is well-documented, especially public APIs.

Issue Reporting

  • For bug reports, please include steps to reproduce the issue.
  • For feature requests, describe the desired functionality and its use case.
  • Check existing issues before creating a new one to avoid duplicates.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For questions or support, please open an issue on the GitHub repository.

Maintainer: Bryan Djafer (bryan.djafer@syncpulse.fr)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sdif_db-0.7.2.tar.gz (30.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sdif_db-0.7.2-py3-none-any.whl (30.2 kB view details)

Uploaded Python 3

File details

Details for the file sdif_db-0.7.2.tar.gz.

File metadata

  • Download URL: sdif_db-0.7.2.tar.gz
  • Upload date:
  • Size: 30.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sdif_db-0.7.2.tar.gz
Algorithm Hash digest
SHA256 89d931a49bfa0dc9154a164c2a8662866cd5c593bd795ba12ecc07339df11dce
MD5 cae9865ab0dc986d236ce8d518f81825
BLAKE2b-256 a7986035b2f2663bb1b041dc8f676343c55f4723e5ac24a854aa20442c581b15

See more details on using hashes here.

Provenance

The following attestation bundles were made for sdif_db-0.7.2.tar.gz:

Publisher: publish_sdif_db.yml on syncpulse-solutions/satif

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sdif_db-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: sdif_db-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 30.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for sdif_db-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3ab835c66b95d05ba83e4b8519de1b17c4f5283fbf26b52ce7974d90442691c5
MD5 97e07b13241acdd4342386354314c5be
BLAKE2b-256 53d045d1542378822fd1a875471bd3448cb7f1812c04f58a766d6627e4a6b6e6

See more details on using hashes here.

Provenance

The following attestation bundles were made for sdif_db-0.7.2-py3-none-any.whl:

Publisher: publish_sdif_db.yml on syncpulse-solutions/satif

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page