semvec/pypi-packages huggingface dataset:
evenstar 0.2
A GraphQL query builder
License: MIT
Keywords: graphql

# Evenstar
Just another GraphQL query builder, but composable!

## How to install it?
It's simple, just run: `pip install evenstar`

## GraphQL Syntax Coverage
- [X] Fields
- [X] Arguments
- [X] Aliases
- [ ] Fragments
- [X] Operation Name
- [X] Variables
- [ ] Directives
- [X] Mutations
- [X] Inline Fragments

## Example

```python
apple_field = Field(
    name="appleMutation",
    alias="apple_mutation_alias",
    arguments=Arguments(
        {"input": VarSymbol("$apple_input")}
    ),
    children=[
        "__typename",
        InlineFragment(
            on="SomeErrKind",
            children=["code", "field", "message"]
        ),
        InlineFragment(
            on="SomeAnotherErrKind",
            children=["error_code"]
        ),
    ],
)

create_banana_field = Field(
    name="createBanana",
    alias="create_banana",
    arguments=Arguments(
        {"input": VarSymbol("$create_banana_input")}
    ),
    children=[
        "__typename",
        "code",
        InlineFragment(
            on="SomeAnotherErrKind",
            children=["error_code"]
        ),
        InlineFragment(
            on="Banana",
            children=[
                "id",
                "quality",
                Field(
                    "farm",
                    children=[
                        "country",
                        "town",
                        "number",
                    ],
                ),
            ],
        ),
    ],
)

gql_req = Request(
    children=[
        Mutation(
            children=[create_banana_field, apple_field],
            variables=[
                VarDeclaration("$apple_input", "CreateAppleInput!"),
                VarDeclaration("$banana_input", "CreateBananaInput!"),
            ],
        )
    ],
    variables={
        "apple_input": {"id": str(uuid4())},
        "banana_input": {"id": str(uuid4())},
    },
)

print(gql_req.json(indent=2))
```
pywpas 0.9.4
A python library to control wpa_supplicant via it's control socket.
License: MIT

.. image:: https://coveralls.io/repos/github/btimby/pywpas/badge.svg?branch=master
    :target: https://coveralls.io/github/btimby/pywpas?branch=master

.. image:: https://github.com/btimby/pywpas/actions/workflows/ci.yml/badge.svg
    :target: https://github.com/btimby/pywpas/actions

.. image:: https://badge.fury.io/py/pywpas.svg
    :target: https://badge.fury.io/py/pywpas

pywpas
======

A python library to control wpa_supplicant via it's control socket.

Installation
------------

``pip install pywpas``

Example
-------

.. code-block:: python

    import time
    import pywpas
    # sock_path below is the default and can be omitted.
    ctrl = pywpas.Control(sock_path='/var/run/wpa_supplicant)

    # You can get a list of interface names:
    interface_names = ctrl.interface_names()
    print(interface_names)

    # You can iterate over instances of the Interface class:
    for interface in ctrl.interfaces:
        print(interface.name)
    
    # You can get a specific Interface instance by name:
    interface = ctrl.interface(interface_names[0])
    print(interface.status())

    # You can scan for networks available on an interface:
    interface.scan()
    # You might wait a few seconds...
    time.sleep(5.0)
    scan_results = interface.results()

    for network in scan_results:
        print(network.ssid, network.signal_level)

    # You can connect to a network (implictly adds a profile):
    interface.connect(scan_results[0])
    # Write the network to the wpa_supplicant.conf file:
    interface.save_config()
    # Then disconnect...
    interface.disconnect()
    # and remove the network:
    interface.remove_network(scan_results[0])
    # Or remove ALL networks:
    interface.remove_networks()
    interface.save_config()

    # You can also add a profile (without connecting):
    interface.add_network(scan_results[0])
    # And save it:
    interface.save_config()

    # You can define a network and connect to it:
    network = pywpas.Network(ssid='FOOBAR', ...)
    interface.connect(network)
    interface.disconnect()

    # There is a high-level scan function, it will invoke callback
    # with each unique network found during the scan timeout duration:
    scan = interface.background_scan(lambda network: print(network.ssid),
                                     timeout=30.0)
    time.sleep(5.0)
    scan.stop()

wpa_supplicant configuration
----------------------------

You must configure wpa_supplicant to open a control socket. Optionally you can
enable config file writing.

.. code-block:: bash

    ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=nobody
    update_config=1

Event with an emtpy configuation (no networks) you can use this library to add
networks, connect to networks and save the profiles to the configuration file.

Development
-----------

To deploy to PyPI:

::

    git tag <version>
    git push --tags

CI will do the rest.

Tests and linting:

::

    make test
    make lint
ctrlp 1.0.5
Low-level hardware interface for Ctrl-P pressure control systems.
License: MIT

# Ctrl-P: Hardware Interface
The low-level hardware control interface for controlling a Ctrl-P pressure control system.


## Installation
### Install the release version
[This package is on pypi](https://pypi.org/project/ctrlp/), so anyone can install it with pip: `pip install ctrlp`

### Install the most-recent development version
1. Clone the package from the [github repo](https://github.com/cbteeple/ctrlp)
2. Navigate into the main folder (`cd ctrlp`)
3. `pip install -e .`


## Usage
[Instructions in the documentation](https://ctrl-p.cbteeple.com/top-level)

## About Ctrl-P
The Ctrl-P project is a full-stack pneumatic control system featuring smooth control of pressure at a high bandwidth.

Ctrl-P has four parts:
- [Arduino-Based Firmware](https://github.com/cbteeple/pressure_controller): Contains the low-level pressure control
- [Python Hardware Interface](https://github.com/cbteeple/ctrlp): The low-level device drivers and command handling via serial comms
- [Python Control Interface](https://github.com/cbteeple/pressure_control_interface): High-level handling of pressure trajectories in raw python
- [ROS Driver](https://github.com/cbteeple/pressure_control_cbt): High-level handling of pressure trajectories in ROS

Related Packages:
- [Pressure Controller Skills](https://github.com/cbteeple/pressure_controller_skills): Build complex parametric skills using straightforward definition files.
- [Visual Servoing](https://github.com/cbteeple/ihm_servoing): Example of setting up a realtime feedback controller.