semvec/pypi-packages huggingface dataset:
pip-example-pkg-revuel 0.10.3
Tutorial to distribute a pip package
Requires Python: >=3.7

# Pip example package 

[![Build Status](https://travis-ci.org/revuel/pip-example-pkg-revuel.svg?branch=master)](https://travis-ci.org/revuel/pip-example-pkg-revuel) 
[![Coverage](https://sonarcloud.io/api/project_badges/measure?project=revuel_pip-example-pkg-revuel&metric=coverage)](https://sonarcloud.io/dashboard?id=revuel_pip-example-pkg-revuel)
[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=revuel_pip-example-pkg-revuel&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=revuel_pip-example-pkg-revuel)
[![PyPI](https://img.shields.io/pypi/v/pip-example-pkg-revuel?color=purple&label=latest)](https://pypi.org/project/pip-example-pkg-revuel/)
[![License: WTFPL](https://img.shields.io/badge/License-WTFPL-brightgreen.svg)](http://www.wtfpl.net/about/)

---

[Tutorial about how to distribute pip packages](https://packaging.python.org/tutorials/packaging-projects/)

## Raw CLI
**Dependencies**

`pip install --upgrade setuptools wheel`

`pip install --upgrade twine`

**Build**

`python setup.py sdist bdist_wheel`

**Upload**

`twine upload  dist/*`

---

&#9989; Here a minion just to make this file more friendly

[<img src="https://upload.wikimedia.org/wikipedia/commons/f/fe/Minion_%28example%29.svg" width="100"/>](image.png)

<sub> This a subscripted string or at least is should be </sub>
sqlalchemy-acl-matt-kubica 0.0.1
Acces List library for SQLAlchemy ORM
Requires Python: >=3.8.6

# SQLAlchemy Acces List


## Virtual Environment
To initialize virtual env run following command in project root, `pipenv` required
```bash
$ pipenv shell
```


## Testing ACL 
Easiest way to test is creating simple script
```python
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy_acl import ACL
from models import Base, Wage


# creating engine and session, creating tables in db according to models
engine = create_engine('sqlite:///db.sqlite')
Session = sessionmaker(bind=engine, query_cls=ACL.Query)
session = Session()
Base.metadata.create_all(bind=engine)

# attchaing engine to ACL, initializing ACL
ACL.setup(engine)

# example entries for db
# defining few wages and two users, and acl
# admin has access to all entries in wages table, while std_user cannot access 'Prezio`
entries = [
    # wages
    Wage(id=1, person='Prezio', amount=1000000),
    Wage(id=2, person='Programista15k', amount=15000),
    Wage(id=3, person='Programista10k', amount=10000),
    Wage(id=4, person='Praktykantka', amount=1000),

    # users
    ACL.UserModel(id=1, username='admin'),
    ACL.UserModel(id=2, username='std_user'),

    # admin access
    ACL.ACLEntry(user_id=1, dest_table='wages', dest_id=1),
    ACL.ACLEntry(user_id=1, dest_table='wages', dest_id=2),
    ACL.ACLEntry(user_id=1, dest_table='wages', dest_id=3),
    ACL.ACLEntry(user_id=1, dest_table='wages', dest_id=4),
    
    # std_user access
    ACL.ACLEntry(user_id=2, dest_table='wages', dest_id=2),
    ACL.ACLEntry(user_id=2, dest_table='wages', dest_id=3),
    ACL.ACLEntry(user_id=2, dest_table='wages', dest_id=4)
]
# adding entries to session and commiting to db
session.add_all(entries)
session.commit()


# retrieving admin and std_user objects
admin = session.query(ACL.UserModel).filter_by(id=1).scalar()
std_user = session.query(ACL.UserModel).filter_by(id=2).scalar()


# when user is not set empty array will be returned
print(session.query(Wage).all())
# []

# setting user before executing query
ACL.set_user(admin)
print(session.query(Wage).all())
# [<Wage 1:Prezio:1000000>, <Wage 2:Programista15k:15000>, <Wage 3:Programista10k:10000>, <Wage 4:Praktykantka:1000>]

# setting user before executing query
ACL.set_user(std_user)
print(session.query(Wage).all())
# [<Wage 2:Programista15k:15000>, <Wage 3:Programista10k:10000>, <Wage 4:Praktykantka:1000>]

# unsetting user
ACL.unset_user()
print(session.query(Wage).all())
# []
```


## ACL.Query
**ACL.Query** can be used with legacy sqlalchemy project as well as with flask_sqlalchemy project. Due to different usage of those two, connecting **ACL** 
may vary, see *legacy_sqlalchemy_test.py* and *flask_sqlalchemy_test.py*.
RHaP 0.2
A python library to analyse hydride morphology present in light optical and scanning electron micrographs.
Requires Python: >=3.5
Keywords: micrograph,zirconium,hydride

# Radial Hydride Code

This is a Python package developed to aid in the charactacterisation and quantification of hydrides from micrographs. The main functions of this package are to: 
- Determine the Radial Hydride Fraction (RHF)
- Characterise the extent of branching
- Determine the most probable crack path within a micrograph

## **How to install**

- `pip install RHaP==0.1`

## **How to use**

- Enter `jupyter lab` into the anaconda terminal and Jupyter lab will open in your browser.
- Open the example notebook, provided with the folder downloaded earlier.
- Examples of how to use the software are included, as well as an example micrograph.

## **Documentation**

- For more help, browse the documentation in the /docs directory.

## **Credits**

The software uses the following open source packages:

- [jupyter-notebook](http://jupyter.org/)
- [numpy](http://numpy.org/)
- [matplotlib](http://matplotlib.org/)
- [scikit-image](http://scikit-image.org/)
- [scipy](https://scipy.org/scipylib/)
- [numba](https://numba.pydata.org)
- [skan](https://jni.github.io/skan/)
- [networkx](https://networkx.org/)
- [toolz](https://github.com/pytoolz/toolz/)
- [matplotlib-scalebar](https://pypi.org/project/matplotlib-scalebar/)

## **Contacts** 

- Mia Maric (mia.maric@manchester.ac.uk)
- Dr Pratheek Shanthraj (pratheek.shanthraj@manchester.ac.uk)
- Dr Rhys Thomas (rhys.thomas@manchester.ac.uk)
- Dr Michael Atkinson (michael.atkinson@manchester.ac.uk)