semvec/pypi-packages huggingface dataset:
qubership-pipelines-common-library 2.0.3
Qubership Pipelines common library
License: Apache-2.0
Requires Python: <4.0,>=3.11

[![PyPI](https://img.shields.io/pypi/v/qubership-pipelines-common-library)](https://pypi.org/project/qubership-pipelines-common-library/)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/qubership-pipelines-common-library)
![Build](https://github.com/Netcracker/qubership-pipelines-common-python-library/actions/workflows/python-publish.yml/badge.svg)
![Repo Size](https://img.shields.io/github/repo-size/Netcracker/qubership-pipelines-common-python-library)

# Qubership Pipelines Common Library

Open-source python library of clients used by Qubership pipelines/modules.

Library provides easy-to-use clients and wrappers for common DevOps services (e.g. Jenkins, MiniO, GitLab Pipelines)

## Sample implementation

Sample implementation of CLI commands using this library is available at [qubership-pipelines-cli-command-samples](https://github.com/Netcracker/qubership-pipelines-cli-command-samples)

It includes reference python implementation along with the [Development Guide](https://github.com/Netcracker/qubership-pipelines-cli-command-samples/blob/main/docs/development.md)

## Structure

Library is presented as a set of clients with predefined operations

Auto-generated reference (via mkdocs) is available on [this repo's GitHub Pages](https://netcracker.github.io/qubership-pipelines-common-python-library/mkdocs)

## Installation

- Add the following section to your dependencies to add Qubership library as a dependency in your project:

  ```toml
  [tool.poetry.dependencies]
  qubership-pipelines-common-library = "*"
  ```

- Or you can install it via `pip`:

  ```bash
  pip install qubership-pipelines-common-library
  ```

## Backported version

There also exists backported to python3.9 version of this library

You can install it via `pip`:

```bash
pip install qubership-pipelines-common-library-py39
```
picosvgx 0.1.0
An extended fork of Google's picosvg with better real-world SVG compatibility
License: Apache-2.0
Requires Python: >=3.8
Keywords: svg, simplify, font, icon, vector

# picosvgx

An extended fork of Google's [picosvg](https://github.com/googlefonts/picosvg) with better real-world SVG compatibility.

## Why picosvgx?

picosvg is excellent for font/icon toolchains — it simplifies SVG files down to paths and gradients. But real-world SVG files are messy:

- They use CSS units (`12pt`, `100px`, `2cm`)
- They miss namespace declarations
- They contain `<filter>`, `<mask>`, `<pattern>` that you might want to preserve
- They have edge cases that cause crashes

picosvgx handles these gracefully.

## What's Different

| | picosvg | picosvgx |
|---|---------|----------|
| CSS units (`pt`, `cm`, `mm`) | Crashes | Parsed correctly |
| Missing SVG namespace | Crashes | Auto-fixed |
| `<filter>`, `<mask>`, `<pattern>` | Removed | Preserved (opt-in) |
| Empty `<clipPath>` | Crashes | Handled |
| Degenerate transforms | Crashes | Handled |
| Nested `<text>` in `<g>` | Not allowed | Supported |

## Installation

```bash
pip install picosvgx
```

## Usage

### Python API

```python
from picosvgx.svg import SVG

# Basic usage (same as picosvg)
svg = SVG.parse("input.svg")
result = svg.topicosvg()
print(result.tostring())

# Preserve filters, masks, patterns
result = svg.topicosvg(allow_all_defs=True)
```

### CLI

```bash
# Simplify SVG
picosvgx input.svg > output.svg

# Preserve filters, masks, patterns
picosvgx --allow_all_defs input.svg > output.svg

# Allow text pass-through
picosvgx --allow_text input.svg > output.svg
```

## Development

```bash
pip install -e '.[dev]'
pytest
```

## Compatibility

picosvgx maintains full API compatibility with picosvg. Drop-in replacement:

```python
# Before
from picosvg.svg import SVG

# After
from picosvgx.svg import SVG
```

## Credits

Based on [picosvg](https://github.com/googlefonts/picosvg) by Google Fonts. Original work Copyright 2020 Google LLC.

## License

Apache License 2.0. See [LICENSE](LICENSE) for details.