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.3.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.3-py3-none-any.whl (30.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sdif_db-0.7.3.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.3.tar.gz
Algorithm Hash digest
SHA256 80e287fb0ce0199c57d201efdee3de8c5a3bd040697e42dc009233dd59cc5c24
MD5 bad1c6e4a751e0bd9ff6e24a61b658c9
BLAKE2b-256 b0924091ce3678918fedd74b022bf1ab103856e41927672d4fec998874bab564

See more details on using hashes here.

Provenance

The following attestation bundles were made for sdif_db-0.7.3.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.3-py3-none-any.whl.

File metadata

  • Download URL: sdif_db-0.7.3-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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 03ac2dbd8dce61432dca86c782dae0b990eb8e9e0d3b2029a4cb5b6339a2bed3
MD5 b2d1f34f4cbf9a1574569df205880dc2
BLAKE2b-256 47dbec1d8919368c5ca7c458bdc01e40a08f8c4636b9670f604adc2c3b7174eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for sdif_db-0.7.3-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