semvec/pypi-packages huggingface dataset:
bincrafters-package-tools 0.33.0
Bincrafters Packaging tools for build Conan projects
License: MIT
Keywords: conan,C/C++,package,libraries,developer,manager,dependency,tool,c,c++,cpp

[![Build status](https://github.com/bincrafters/bincrafters-package-tools/workflows/bincrafters-package-tools/badge.svg)](https://github.com/bincrafters/bincrafters-package-tools/actions)
[![Codecov](https://codecov.io/gh/bincrafters/bincrafters-package-tools/branch/main/graph/badge.svg)](https://codecov.io/gh/bincrafters/bincrafters-package-tools)
[![Pypi Download](https://img.shields.io/badge/download-pypi-blue.svg)](https://pypi.python.org/pypi/bincrafters-package-tools)

# Bincrafters Package Tools

## A modular toolset for [Conan Package Tools](https://github.com/conan-io/conan-package-tools)

This project contains files used by Conan Package Tools for all kinds of bincrafters builds.

These scripts are used during build process to allow for rapid testing and prototyping at this time.


### INSTALL
To install by pip is just one step

### Local
If you want to install by local copy

    pip install .

### Remote
Or if you want to download our pip package

    pip install bincrafters_package_tools


### ENVIRONMENT VARIABLES
All variables supported by Conan package tools, are treated by Bincrafters package tools as well.
To solve the upload, some variables are customized by default:

**CONAN_UPLOAD**: https://bincrafters.jfrog.io/artifactory/api/conan/public-conan  
**CONAN_REFERENCE**: Fields **name** and **version** from conanfile.py  
**CONAN_USERNAME**: Get from CI env vars. Otherwise, use **bincrafters**  
**CONAN_VERSION**: Get from CI env vars.  
**CONAN_VERSION**: Field **version** from conanfile.py  
**CONAN_UPLOAD_ONLY_WHEN_STABLE**: True for default template. False for Boost builds.  
**CONAN_STABLE_BRANCH_PATTERN**: stable/\*  
**CONAN_ARCHS**: Only x86_64 per default. To build 32-bit and 64-bit use e.g. [x86_64, x86]

___

**BPT SPECIFIC ENVIRONMENT VARIBLES**:

**BPT_MATRIX_SPLIT_BY_BUILD_TYPES**: Splits build jobs into `Release` and `Debug` build jobs.
**BPT_MATRIX_DISCARD_DUPLICATE_BUILD_IDS**: `true`/`false`, default: `true`. This does NOT YET what it says. Right now, this only has an effect for installer_only and header_only recipes when set to `false`. In those cases, you get the full build matrix, instead of a shortened build matrix. In the future, the matrix generation actually compares build IDs and discards jobs based on the IDs.

___


#### Testing and Development
To install extra packages required to test

    pip install .[test]


#### TESTING
To run all unit test + code coverage, just execute:

    pip install -r bincrafters/requirements_test.txt
    cd tests
    pytest -v --cov=bincrafters


#### LICENSE
[MIT](LICENSE.md)
py-file-change 0.0.1
py-file-change is a tool that execute specific command when any file changes in the directory.
License: MIT
Requires Python: >=3.8
Keywords: python,file-change,file-events,reloader,python-file-change,command-reloader

# py-file-change

py-file-change is a tool that execute specific command when any file changes in the directory.

## Usage

Start cmd/terminal and run following command.

```bash
$ python -m py-file-change config.json
```
---

## Config file

py-file-change requires a configuration file to continue/start the process.

Create a configuration file in root directory or current working directory where you execute the **py-file-change**

Configuration file must be JSON file and should content required data.

| Name | Type | Default value | Description |
| ---- | ---- | ---- | ----- |
| cmd | required | - | command to execute |
| watch | optional | . | directory to watch |
| exclude_ends | optional | [] | ending files will be excluded |
| do_print | optional | false | print created, changed, deleted files |
| use_kill | optional | false | uses kill method instead terminate method |

Below is the configuration file example that will used to execute command `python app.py` , watch current directory(`.`) , if the name of file changed is ending with `.json` process won't terminate

```json
{
    "cmd" : "python app.py",
    "watch" : ".",
    "exclude_ends" : [
        ".json"
    ],
    "do_print" : false,
    "use_kill" : false
}
```

**py-file-change** will take more **CPU** and **Memory** when you use it to detect changes in directory that contains large number of files.