semvec/pypi-packages huggingface dataset:
ldifparse 1.0.1
Parse LDIF data into YAML or JSON
License: MIT
Requires Python: >=3.10,<4.0

# ldifparse
Parse LDIF data into common text formats. It currently supports conversion to JSON and to YAML.

This is a thin wrapper around the [python-ldap](https://www.python-ldap.org/en/python-ldap-3.4.3/) package.

From:
```sh
$ ldapsearch -Q -L -Y EXTERNAL -H ldapi:/// -b dc=company,dc=com
version: 1

#
# LDAPv3
# base <dc=company,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# company.com
dn: dc=company,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: company
dc: company

# admin, company.com
dn: cn=admin,dc=company,dc=com
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator

# search result

# numResponses: 3
# numEntries: 2
```

To :
```sh
$ ldapsearch -Q -L -Y EXTERNAL -H ldapi:/// -b dc=company,dc=com | ldifparse
cn=admin,dc=company,dc=com:
  cn: admin
  description: LDAP administrator
  objectClass:
  - simpleSecurityObject
  - organizationalRole
dc=company,dc=com:
  dc: company
  o: company
  objectClass:
  - top
  - dcObject
  - organization
```

## Installation

### with pip/pipx

The recommended way of installing **ldifparse** is through the pipx installer : 

```sh
pipx install ldifparse
```

**ldifparse** will be installed in an isolated environment but will be available globally as a shell application.

Alternatively, you can install **ldifparse** in an environment of your choosing with pip :

```sh
pip install ldifparse
```

### manually

You can also download the source code from github :

```sh
git clone https://github.com/MatteoBouvier/ldifparse.git
```

## Tips

We recommend also installing [jq](https://jqlang.github.io/jq/) for viewing and manipulating JSON in the terminal.
The YAML equivalent is [yq](https://github.com/mikefarah/yq).

## Usage

The simplest way to use **ldifparse** is by piping it some LDIF data : 

```sh
cat input.ldif | ldifparse
```

This will print a YAML version of the data to stdout.

### Output format

You can specify the ouput format with the `--output` parameter (`-o` for the short version). The output can either be
`json` or `yaml` (`-oj` and `-oy` are also accepted as shorthands).

### Tree structure

Instead of a perfect translation of LDIF to JSON/YAML, you can get a tree representation with the `--tree` (`-t`) 
parameter.
settus 0.0.11
Settings management using Pydantic, with ability to retrieve cloud secrets.
License: MIT
Requires Python: >=3.9
Keywords: one,two

# Settus

[![pypi](https://img.shields.io/pypi/v/laktory.svg)](https://pypi.org/project/settus/)
[![test](https://github.com/okube-ai/settus/actions/workflows/test.yml/badge.svg)](https://github.com/okube-ai/settus/actions/workflows/test.yml)
[![downloads](https://static.pepy.tech/badge/settus/month)](https://pepy.tech/project/settus)
[![versions](https://img.shields.io/pypi/pyversions/settus.svg)](https://github.com/okube-ai/settus)
[![license](https://img.shields.io/github/license/okube-ai/settus.svg)](https://github.com/okube-ai/settus/blob/main/LICENSE)

Settings management using Pydantic Settings with cloud extensions.

<img src="docs/images/logo_sb.png" alt="settus logo" width="85"/>

Settus makes it possible to securely access local and cloud-stored secrets from multiple environments, with pre-defined fallback plans. Supported secrets provider are

* Azure Keyvault
* Databricks secrets [IN PROGRESS]
* AWS Secrets Manager
* GCP Secrets Manager [IN PROGRESS]

## Help
See [documentation](https://www.okube.ai/settus) for more details.


## Installation
Install using 
```commandline
pip install laktory[{cloud_provider}]
```
where `{cloud_provider}` is `azure`, `aws`, `databricks` or `gcp`. 

For more installation options,
see the [Install](https://www.okube.ai/settus/install/) section in the documentation.

## A Basic Example

```py
import os
from settus import BaseSettings
from settus import Field

KEYVAULT_URL = "https://o3-kv-settus-dev.vault.azure.net/"
AWS_SECRET_NAME = "vault"

os.environ["MY_ENV"] = "my_value"

class Settings(BaseSettings):
    # Value from environment variable "MY_ENV"
    my_env: str = Field(default="undefined")
    
    # Value from the Azure keyvault named `o3-kv-settus-dev` with secret key `my-secret` 
    my_azure_secret: str = Field(default="undefined", alias="my-secret", keyvault_url=KEYVAULT_URL)
    
    # Value from the secret named `vault` in AWS secrets manager and having the secret key `my-secret`
    my_aws_secret: str = Field(default="undefined", alias="my-secret", aws_secret_name=AWS_SECRET_NAME)

settings = Settings()
print(settings.my_env)
#> my_value
print(settings.my_azure_secret)
#> secret_sauce
print(settings.my_aws_secret)
#> secret_sauce
```

To get started with more examples, jump into the [Quickstart](https://www.okube.ai/settus/quickstart/).

## Okube Company
Okube is dedicated to build open source frameworks, the *kubes*, that empower businesses to build and deploy highly scalable data platforms and AI models. Contributions are more than welcome.