Skip to main content

put/remove flags for files and folders

Project description

mflag: powerful Python toolkit for mark/unmark files and directories

PyPI Latest Release

What is it?

mflag is a Python package that provides marking/unmarking files and directores. For years, dealing with processing files, we understood that we need to put flag for files/directories that are already processed. This package provides the ability to mark files/directories and avoid any unnecessary repeatitive processing of same files/directories. It also can manage serveral processes that willing to write on/in same files/directories. For example, we want to write to a parquet file, the whole processing generate part of the parquet file managed by a separate parallel processes. Using mflag avoid writing errors that happen at same time.

Where to get it

The source code is currently hosted on GitHub at: https://github.com/MosesDastmard/mflag

Binary installers for the latest released version are available at the Python Package Index (PyPI)

# !pip install flagify
from mflag import Flag
import pandas as pd
import os
# lets make a simple csv file
data = {'name':['mflag', 'pandas', 'numpy'],
        'toolkit':['marking', 'data analysis', 'data computing']}

pd.DataFrame(data).to_csv('data.csv', index=False)

class Process(Flag):
    def __init__(self, process_name):
        self.process_name = process_name
        Flag.__init__(self, process_name)
        
    def run(self, csv_path, parquet_path):
        if not self.isFlagged(csv_path):
            pd.read_csv(csv_path).to_parquet(parquet_path)
            self.putFlag(csv_path)
        else:
            print(f"the file {csv_path} is already processed")
Process(process_name='convert_csv_to_parquet').run('data.csv', 'data.parquet')
Process(process_name='convert_csv_to_parquet').run('data.csv', 'data.parquet')
the file data.csv is already processed

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

mflag-1.7.3.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

mflag-1.7.3-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file mflag-1.7.3.tar.gz.

File metadata

  • Download URL: mflag-1.7.3.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for mflag-1.7.3.tar.gz
Algorithm Hash digest
SHA256 4f8b80060b0b747ce310269d3bb5bafea089a2da68fbf40dfc4adff5c6514e20
MD5 d1fdd5b5e7886927d7dbd2c58a56e9ff
BLAKE2b-256 637b4e26c1f30c79c18e8ae9f22a27911cd7455a5a80da0cdcd3c72bdeea2320

See more details on using hashes here.

File details

Details for the file mflag-1.7.3-py3-none-any.whl.

File metadata

  • Download URL: mflag-1.7.3-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.18

File hashes

Hashes for mflag-1.7.3-py3-none-any.whl
Algorithm Hash digest
SHA256 edcbbcd7caa038c60af0b551d32242a9e5e661cbc33619cb381713a5ea877a34
MD5 6e6f631c3327ad2329776a13e035f71d
BLAKE2b-256 c2ac2b698cffc5d3378bb4ab9ed79dcf56364709c84b05229bc9b975a8b98c4c

See more details on using hashes here.

Supported by

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