semvec/pypi-packages huggingface dataset:
mongo2arango 0.2.2
A tool to migrate data from MongoDB to ArangoDB.
License: MIT
Requires Python: >=3.9,<4.0
Keywords: mongodb,arangodb,migration

<!-- @format -->

# mongo2arango

mongo2arango is a CLI tool designed to facilitate the migration of data from
MongoDB to ArangoDB. It provides an efficient and user-friendly way to transfer
your data between these two databases.

## Why mongo2arango?

    Seamless Migration: Easily migrate your data from MongoDB to ArangoDB without the hassle.
    Multi-threading Support: Optimize the migration process with multi-threaded data processing.
    Real-time Progress Tracking: Stay informed with a real-time progress bar during the migration.

## Prerequisites

    Ensure you have exported your MongoDB data using mongoexport. Note: Declarative types from Studio 3T export will not work with this tool. We require standard .json data.

## Why simplejson and ijson?

    simplejson: We use simplejson for its speed in encoding and decoding JSON data. It's especially beneficial when dealing with large datasets, ensuring the migration process is as fast as possible.

    ijson: ijson is utilized for its ability to parse large JSON files iteratively, without loading the entire file into memory. This means even if you have a massive MongoDB export, mongo2arango can handle it without consuming all of your system's memory.

## How to Use

Installation:

    ``` bash
    pip install mongo2arango
    ```

Setting Up ArangoDB Credentials: Before migrating data, you need to set up your
ArangoDB credentials. Run:

    ``` bash
    mongo2arango login
    ```

You will be prompted to enter your ArangoDB host, user, and password. These
credentials will be stored securely for future migrations.

Migrating Data: To migrate data, use the migrate command. You can specify
options like the target database, collection, input JSON file, and more. For
example:

    ``` bash
    mongo2arango migrate --db mydatabase --col mycollection --input /path/to/exported_data.json
    ```

If you don't specify the options, the tool will prompt you for the necessary
information.

Feel free to modify or expand upon this draft to better suit your needs.
pirates 0.7.0
Django app for users, teams and groups.
License: MIT
Requires Python: >=3.8,<4.0
Keywords: django,openid,sso

# Pirates

Django app na uživatele, týmy a skupiny, s napojením na SSO.

[![code style: Black](https://img.shields.io/badge/code%20style-Black-000000)](https://github.com/psf/black)
[![license MIT](https://img.shields.io/badge/license-MIT-brightgreen)](LICENSE)
![Python Version](https://img.shields.io/pypi/pyversions/pirates)
![Django Version](https://img.shields.io/pypi/djversions/pirates?color=0C4B33)

## Použití

### Settings

Přidat `pirates` do `INSTALLED_APPS`.

### Modely

Jsou k dipozici abstraktní modely pro uživatele, tým a organizační skupinu. Ty
lze doplnit o další fieldy specifické pro aplikaci. Příklad:

```python
from django.db import models
from pirates.models import AbstractUser

class CustomUser(AbstractUser):
    is_friendly = models.BooleanField(default=True)
```

A nezapomenout model pro uživatele nastavit v settings:

```python
AUTH_USER_MODEL = "myapp.CustomUser"
```

### URLs

URL patterns (v současné době pouze pro OpenID Connect) jsou definovány v
`pirates.urls`. Stačí je připojit k URL patterns projektu:

```python
from pirates.urls import urlpatterns as pirates_urlpatterns 

urlpatterns = [
    # URL patterns projektu
    # ...
] + pirates_urlpatterns

```

### SSO přes OpenID Connect

Implementaci OpenID zajišťuje knihovna
[mozilla-django-oidc](https://github.com/mozilla/mozilla-django-oidc).

V settings projektu je třeba nastavit několik konfiguračních konstant a
autentifikační backend. Příklad settings (s využitím
[django-environ](https://github.com/joke2k/django-environ)):

```python
from os.path import join
import environ

env = environ.Env()

AUTHENTICATION_BACKENDS = ["pirates.auth.PiratesOIDCAuthenticationBackend"]

OIDC_RP_CLIENT_ID = env.str("OIDC_RP_CLIENT_ID")
OIDC_RP_CLIENT_SECRET = env.str("OIDC_RP_CLIENT_SECRET")
OIDC_RP_REALM_URL = env.str("OIDC_RP_REALM_URL")
OIDC_RP_SIGN_ALGO = "RS256"
OIDC_OP_JWKS_ENDPOINT = join(OIDC_RP_REALM_URL, "protocol/openid-connect/certs")
OIDC_OP_AUTHORIZATION_ENDPOINT = join(OIDC_RP_REALM_URL, "protocol/openid-connect/auth")
OIDC_OP_TOKEN_ENDPOINT = join(OIDC_RP_REALM_URL, "protocol/openid-connect/token")
OIDC_OP_USER_ENDPOINT = join(OIDC_RP_REALM_URL, "protocol/openid-connect/userinfo")
```

URL patterns pro OpenID Connect už jsou součástí `pirates.urls` (viz výše).

#### Signál po přihlášení

Po přihlášení uživatele je poslán signál `pirates.signals.post_login` s
parametry:

* `sender` - `PiratesOIDCAuthenticationBackend`
* `user` - přihlášený uživatel (instance `AUTH_USER_MODEL`)
* `created` - `True`/`False` zda-li byl vytvořen nový uživatel
* `request` - instance `HttpRequest`