semvec/pypi-packages huggingface dataset:
gimfu 0.0.9
A toolkit and python library for generating future scenarios in AUTOUGH2.
Requires Python: >=3.8

# gimfu

A toolkit for generating future scenarios in AUTOUGH2.

-----

## Table of Contents

- [Installation](#installation)
- [Commands](#Commands)
- [Related Packages](#related-packages)
- [License](#license)
- [Developer](#Developer)

## Installation

```console
pip install -U gimfu
```

If you use conda, use the supplied `environment.yml` to create `py311-gimfu`.  This installs packages using conda as much as possible before installing packages from PyPI.

```console
conda env create -f environment.yml
```

## Commands

### Make Scenario

To build a scenario from a `.cfg` and its parts (.geners):

```console
make_scenarios make_scenarios_sXXX.cfg
```

This will generate a folder with the scenario name.  Use `run_all_models.bat` for Windows or `./run_all_models.sh`  for Linux/MacOS.

### Convert SAVE file to INCON file

```console
save2incon a.save b.incon
```

NOTE this command is used during the scenario run.

## Related Packages

These packages may be required to generate a full scenario report:
- LaTeX (`latex`, `dvips`)
- gnuplot (`gnuplot`)
- Ghostscript (`gs`)

## License

`gimfu` is distributed under the terms of the [MIT](https://spdx.org/licenses/MIT.html) license.

## Developer

### Build and Publish

To bump version, create a tag, eg. `v0.1.0`

PyPI token is expected in ~/.pypirc

Publish to PyPI:

```console
hatch build
hatch publish
```

### TODO

- `xlwt` only available in Python <= 3.11 if using conda, replace it with `xlsxwriter`
minivalidator 0.1.0
Pequeña librería de validadores reutilizables.
Requires Python: >=3.8

# Minivalidator

Pequeña librería de validadores reutilizables para Python.

## Descripción

Minivalidator es una librería ligera que proporciona reglas de validación reutilizables para validar datos en aplicaciones Python. Incluye validadores comunes como verificación de cadenas no vacías, formato de email y rangos numéricos.

## Instalación

Puedes instalar Minivalidator usando pip:

```bash
pip install minivalidator
```

O desde el código fuente:

```bash
git clone <https://github.com/KevinNavia/Pg2_2daInstancia.git>
cd minivalidator
pip install .
```

## Uso

### Importar la librería

```python
from minivalidator.rules import NotEmpty, IsEmail, InRange
from minivalidator.errors import ValidationError
```

### Ejemplos de uso

#### NotEmpty
Valida que una cadena no esté vacía.

```python
validator = NotEmpty()
try:
    validator.validate("hola")  # Pasa
    validator.validate("")      # Lanza ValidationError
except ValidationError as e:
    print(e)
```

#### IsEmail
Valida el formato de un email.

```python
validator = IsEmail()
try:
    validator.validate("user@example.com")  # Pasa
    validator.validate("invalid-email")     # Lanza ValidationError
except ValidationError as e:
    print(e)
```

#### InRange
Valida que un número esté dentro de un rango.

```python
validator = InRange(0, 10)
try:
    validator.validate(5)    # Pasa
    validator.validate(15)   # Lanza ValidationError
except ValidationError as e:
    print(e)
```

## API

### Clases de Validación

- `Rule`: Clase base abstracta para reglas de validación.
- `NotEmpty`: Valida que el valor no sea None o una cadena vacía.
- `IsEmail`: Valida que el valor sea una cadena con formato de email válido.
- `InRange(min_, max_)`: Valida que el valor numérico esté dentro del rango especificado.

### Excepciones

- `ValidationError`: Excepción lanzada cuando una validación falla. Incluye el mensaje de error y el valor inválido.

## Pruebas

Para ejecutar las pruebas, instala pytest y ejecuta:

```bash
pytest
```

O específicamente para las pruebas de reglas:

```bash
pytest test/test_rules.py
```

## Licencia

Este proyecto está bajo la Licencia MIT. Ver el archivo LICENSE para más detalles.

## Autor

Kevin Navia Matienzo - kevinnavia68@gmail.com