semvec/pypi-packages huggingface dataset:
masav 0.0.2
Python API for Israeli Masav payments
Requires Python: >=3.6

# Python API for Israeli Masav payments

## Install

```console
pip install masav
```

## Usage

### from JSON

```python
# TODO
```

### low level API

```python
from masav import MasavPayingInstitute, MasavPaymentDetails

institute = MasavPayingInstitute(
    institute_code=12345678,
    institute_name="Company ISRAEL LTD.",
    sending_institute_code=12345
    )

payee_details_1 = MasavPaymentDetails(
    amount=85,
    bank_number="11",
    branch_number="303",
    account_number="007008629",
    payee_id="123123127",
    payee_name="Leto II Atreides",
    payee_number="00000000000001313131"
    )

payee_details_2 = MasavPaymentDetails(
    amount=1346.37,
    bank_number="31",
    branch_number="051",
    account_number="000283487",
    payee_id="123456782",
    payee_name="Thorin Oakenshield",
    payee_number="00000000000001122233"
    )

payments_list = [payee_details_1, payee_details_2]

file = "tests/payment_file_generated_by_test.bin"
institute.create_payment_file(
        file=file,
        payments_list=payments_list,
        payment_date="200507",
        serial_number=404,
        creation_date="200507"
    )
```

## Development

```console
git clone https://github.com/omrirz/masav.git
cd masav
pip install -r requirements.txt
```

## Test

```console
tox
```
pylint-forbidden-imports 1.0.0
Plugin for PyLint that checks if we import from permitted modules
Keywords: pylint,imports

How does it work?
=================
This plugin inspects import statements for configured packages. Both checkers are using powerful AST analysis techniques, standard for pylint.

Status
======
This emerged as a standalone experimentation during development of `the Clean Architecture example project`_

Why?
====
To enforce certain conventions project-wide in an automatic way, without having to watch for it during code review. For example: "we do not import anything from `foo` in `bar`." or "we must not import anything from guts of the package `baz`, only what's kept in it's top-level __init__.py `__all__` list".

How to use it?
==============
After installing a package just run `pylint`, appending `pylint_forbidden_imports` to your `--load-plugins` option.

An example::

    pylint my_cool_project --load-plugins=pylint_forbidden_imports

or append it to your `pylintrc` file::

    [MASTER]
    load-plugins=pylint_forbidden_imports


Then, you have to configure the plugin. Example for `.pylintrc`::

    [ARBITRARY-SECTION-NAME]
    encapsulated-modules=auctions,payments
    encapsulated-modules-friendships=auctions_infrastructure->auctions
    allowed-modules-dependencies=auctions_infrastructure->auctions,
                                 main->*,
                                 *->foundation,

All settings are comma-separated. 

`encapsulated-modules` - checks whether we import from it only things kept in top-level __init__.py.
`encapsulated-modules-friendships` - allows for creating exceptions to that rule for "friend" packages.
`allowed-modules-dependencies` - defines which packages are allowed to be imported from certain packages. Asterisk (*) is a wildcard - `main->*`  means main package can import anything while `*->foundation` means that any package can import from foundation.
If a certain package does not appear at least once, no rules are enforced.

Development
===========
Install dev dependencies: ::
    pip install -e .[dev]

.. _the Clean Architecture example project: https://github.com/Enforcer/clean-architecture
DrawLevels 0.2.12
A package for quickly generating simple nuclear level schemes.
Keywords: Nuclear Physics Level Scheme

DrawLevels
==========

DrawLevels is a python3 package to enable quickly drawing a level scheme and easilly allowing for the
slow encorporation of additional levels. The idea is that as a project goes forwards you can 
keep appending the file with new levels and transitions. This should be a lot easier than some
of the more fiddly methods that exist. It allows for exact level schemes to be easily drawn.

This is probably not ready for use in publication yet - but this should change with further updates.

Install
=======

To install use:

	pip install DrawLevels

This should give you the most up-to-date version of the package.

A note for installation - this requires the module 'pycairo' in order to render the image.
If not automatically installed, this can also be installed using:

	pip install pycairo

## Installation from source

The slightly more complicated but more reliable method to install DrawLevels is to install 
from source. While this sidesteps the convenience given by the package manager 'pip', it
also avoids the problems it can cause. To install first clone the GitHub repository with:

	git clone https://github.com/TheThirdFool/DrawLevels

Then enter the folder:

	cd DrawLevels

Now you can use pip to build the package from source:

	pip install .

This has the advantage of being a surefire way of ensuring installation of the most up-to-date
version of DrawLevels - as the GitHub is regularly updated. However, any further updates will
require a full repeat of this process, rather than updating via pip. 

Usage
=====

There are example level scheme scripts included in the files 'Example.py' and 'Example2.py'.
The level schemes that these produce are saved as 'ExampleLevelScheme.png' and 'ExampleLevelScheme\_2.png'.

Example.py shows the standard level scheme style with a 60Ni decay scheme + an extra few (fake) levels
in a 'branch' where the levels don't span the entire scheme. Example2.py shows the same information but
this time both the real and fake transtions are in seperate branches with only the ground level spanning
the whole diagram.

The python code must include the line:

	include DrawLevels

Then can be run with:

	python3 Example.py

More usage tips can be found on the GitHub wiki.

Thanks for using my maiden package! Enjoy!