semvec/pypi-packages huggingface dataset:
yapymp4 0.0.2a0
Implementation of a parser for MP4 in pure python.
Requires Python: >=3.6

# yapyMP4
[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/mylonasc/yapyMP4/blob/main/mp4reader_demo.ipynb)

## Why another one?

"**Y**et **A**nother **Pa**rser in **Py**thon for **Mp4**"

This was implemented as a "learning exercise" and a thin (metadata reading) interface for the MP4 container format. It is not as complete as other standard tools (such as ffmpeg) but this code aspires to provide some functionality that is only available through c/c++ interfaces for manipulating and getting meta-data about parts of mp4 files.

The initial motivation is/was to be able to request and partially download `mp4` files from streaming endpoints (such as youtube) while only downloading the first few bytes of metadata (in order to learn the chunk/sample offsets). 

##  Usage:
(see also the notebook)

```python
from src.ypapymp4 import MP4Atom

# This will throw an error if the class does not find all the expected root nodes if check_offsets_avail is set to true 
root = MP4Atom.init_from_chunk('test.mp4', head_chunk_max_size = 200000,check_offsets_avail = False)
```
lineage-keeper 0.2
A lightweight lineage tool based on Spark and Delta Lake

# Lineage Keeper

A lightweight lineage tool based on Spark and Delta Lake

<img src="https://raw.githubusercontent.com/otacilio-psf/lineage-keeper/main/.attachment/architecture.drawio.png" alt="Architecture" height="150"/>

## Table of contents

  * [Instalation](#instalation)
  * [Basic use](#basic-use)
  * [Functionalities](#functionalities)
    + [Listener function](#listener-function)
    + [load listener](#load-listener)
    + [Lineage graph viewer](#lineage-graph-viewer)
    + [Lineage graph writer](#lineage-graph-writer)
  * [Limitations](#limitations)
  * [Demo Notebook](#demo-notebook)

## Instalation

```
pip install lineage-keeper
```

## Basic use

```
from lineage_keeper import load_listener, LineageViewer
load_listener(spark)

df1 = spark.read.table("db.table_1")
df2 = spark.read.table("db.table_2")

df_join = df1.join(df2, "key")

df_join.write.saveAsTable("db.join_tables")

LineageViewer(spark).viewer()
```

## Functionalities

By default Lineage Keeper use "default._service_table_lineage_keeper" as a service table.

If wanted its possible to use a different service table.

### Listener function

Manually input lineage information on the service table

LineageListener : spark sesison
listener : source DataFrame, target table

```
ll = LineageListener(spark)
ll.listener(df, "target_db.target_table")
```

### load listener 

Change df.write.saveAsTable to automatically input lineage information on the service table

```
load_listener(spark)
```

### Lineage graph viewer

Generate a static HTML with the lineage graph

```
LineageViewer(spark).viewer()
```

### Lineage graph writer

Save a static HTML with the lineage graph on disk

```
LineageViewer(spark).save_graph(path)
```

## Limitations

- Its necessary to use tables sintax to read data
    - `spark.read.table("db.table")`
    - `spark.sql("SELECT * FROM db.table")`
- To use `load_listener` to  is necessary to use `df.write.saveAsTable("db.table")` otherwise need to call `LineageListener(spark).listener(df, "db.table")`

## Demo Notebook

[Sample using Lineage Keeper](https://colab.research.google.com/drive/19ZnFMPIxxwGWpQbj9x92CRnzUfzaTyaR?usp=sharing)

<img src="https://raw.githubusercontent.com/otacilio-psf/lineage-keeper/main/.attachment/graph_sample.png" alt="Graph_Sample" height="300"/>
superset-api-client 0.6.0
A simple REST API Client for Apache-Superset
Requires Python: >=3.6

# superset-api-client
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
[![PyPI version](https://badge.fury.io/py/superset-api-client.svg)](https://badge.fury.io/py/superset-api-client)
[![Coverage Status](https://coveralls.io/repos/github/opus-42/superset-api-client/badge.svg?branch=develop)](https://coveralls.io/github/opus-42/superset-api-client?branch=develop)

A Python Client for Apache Superset REST API.

This is a Alpha version. Stability is not guaranteed.

## Usage

Setup a superset client:
```python3
from supersetapiclient.client import SupersetClient

client = SupersetClient(
    host="http://localhost:8080",
    username="admin",
    password="admin",
)
```

### Quickstart
Get all dashboards or find one by name:
```python3
# Get all dashboards
dashboards = client.dashboards.find()

# Get a dashboard by name
dashboard = client.dashboards.find(dashboard_title="Example")[0]
```

Update dashboard colors, some properties and save changes to server:
```python3
# Update label_colors mapping
print(dashboard.colors)
dashboard.update_colors({
    "label": "#fcba03"
})
print(dashboard.colors)

# Change dashboard title
dashboard.dashboard_title = "New title"

# Save all changes
dashboard.save()
```

### Export one ore more dashboard

You may export one or more dashboard user `client.dashboards` or directly on a `dashboard` object

```python3
# Export many dashboards
client.dashboards.export(
    # Set dashboard ids you would like to export
    [
        1,
        2
    ],
    "./dashboards.json" # A string or a path-like object where export will be saved
)

# Export one dashboard
dashboard.export(
    "./dashboard.json"
)
```

This functionality is also available in the same manner for datasets

## Development

You will need Docker and docker-compose in order to run development environment.
To start development environment run:

```bash
    docker-compose up -d
```


# Contributing
Before committing to this repository, you must have [pre-commit](https://pre-commit.com) installed, and install
the following pre-commit hooks:

```sh
pre-commit install --install-hooks -t pre-commit -t pre-push
```