Skip to content

Commit 381eb30

Browse files
committed
Replace setup.py with pyproject.toml
This also moves the README from rST to markdown
1 parent dd63af1 commit 381eb30

File tree

5 files changed

+116
-170
lines changed

5 files changed

+116
-170
lines changed

README.md

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# Zeep: Python SOAP client
2+
[![Documentation Status](https://readthedocs.org/projects/python-zeep/badge/?version=latest)](https://readthedocs.org/projects/python-zeep/)
3+
[![Python Tests](https://github.com/mvantellingen/python-zeep/workflows/Python%20Tests/badge.svg)](https://github.com/mvantellingen/python-zeep/actions?query=workflow%3A%22Python+Tests%22)
4+
[![Coverage](https://codecov.io/gh/mvantellingen/python-zeep/graph/badge.svg?token=zwew4hc8ih)](https://codecov.io/gh/mvantellingen/python-zeep)
5+
[![PyPI version](https://img.shields.io/pypi/v/zeep.svg)](https://pypi.python.org/pypi/zeep/)
6+
7+
A Python SOAP client
8+
9+
## Highlights:
10+
- Compatible with Python 3.9, 3.10, 3.11, 3.12, 3.13 and PyPy3
11+
- Built on top of lxml, requests, and httpx
12+
- Support for Soap 1.1, Soap 1.2, and HTTP bindings
13+
- Support for WS-Addressing headers
14+
- Support for WSSE (UserNameToken / x.509 signing)
15+
- Support for asyncio using the httpx module
16+
- Experimental support for XOP messages
17+
18+
Please see the [documentation](http://docs.python-zeep.org/) for more information.
19+
20+
## Status
21+
22+
> [!NOTE]
23+
> I consider this library to be stable. Since no new developments happen around the SOAP specification, it won't be updated that much. Good PRs which fix bugs are always welcome, however.
24+
25+
26+
## Installation
27+
28+
```bash
29+
pip install zeep
30+
```
31+
32+
Zeep uses the lxml library for parsing XML. See [lxml installation requirements](https://lxml.de/installation.html).
33+
34+
## Usage
35+
36+
```python
37+
from zeep import Client
38+
39+
client = Client('tests/wsdl_files/example.rst')
40+
client.service.ping()
41+
```
42+
43+
To quickly inspect a WSDL file, use:
44+
45+
```bash
46+
python -m zeep <url-to-wsdl>
47+
```
48+
49+
Please see the [documentation](http://docs.python-zeep.org) for more information.
50+
51+
# Support
52+
53+
If you want to report a bug, please first read [the bug reporting guidelines](http://docs.python-zeep.org/en/master/reporting_bugs.html).
54+
55+
Please only report bugs, not support requests, to the GitHub issue tracker.

README.rst

-82
This file was deleted.

pyproject.toml

+61
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,61 @@
1+
[project]
2+
name = "zeep"
3+
version = "4.2.1"
4+
description = "A Python SOAP client"
5+
readme = "README.md"
6+
license = { text = "MIT" }
7+
authors = [
8+
{ name = "Michael van Tellingen", email = "michaelvantellingen@gmail.com" }
9+
]
10+
requires-python = ">=3.8"
11+
classifiers = [
12+
"Development Status :: 5 - Production/Stable",
13+
"License :: OSI Approved :: MIT License",
14+
"Programming Language :: Python :: 3.8",
15+
"Programming Language :: Python :: 3.9",
16+
"Programming Language :: Python :: 3.10",
17+
"Programming Language :: Python :: 3.11",
18+
"Programming Language :: Python :: 3.12",
19+
"Programming Language :: Python :: Implementation :: CPython",
20+
"Programming Language :: Python :: Implementation :: PyPy",
21+
]
22+
dependencies = [
23+
"attrs>=17.2.0",
24+
"isodate>=0.5.4",
25+
"lxml>=4.6.0",
26+
"platformdirs>=1.4.0",
27+
"requests>=2.7.0",
28+
"requests-toolbelt>=0.7.1",
29+
"requests-file>=1.5.1",
30+
"pytz",
31+
]
32+
33+
[project.urls]
34+
Repository = "https://github.com/mvantellingen/python-zeep"
35+
Documentation = "https://docs.python-zeep.org"
36+
Changelog = "https://github.com/mvantellingen/python-zeep/blob/main/CHANGES"
37+
38+
[project.optional-dependencies]
39+
docs = ["sphinx>=1.4.0"]
40+
test = [
41+
"coverage[toml]==7.6.2",
42+
"freezegun==1.5.1",
43+
"pretend==1.0.9",
44+
"pytest-cov==5.0.0",
45+
"pytest-httpx",
46+
"pytest-asyncio",
47+
"pytest==8.3.3",
48+
"requests_mock==1.12.1",
49+
# Linting
50+
"isort==5.13.2",
51+
"flake8==7.1.1",
52+
"flake8-blind-except==0.2.1",
53+
"flake8-debugger==4.1.2",
54+
"flake8-imports==0.1.1",
55+
]
56+
async = ["httpx>=0.15.0"]
57+
xmlsec = ["xmlsec>=0.6.1"]
58+
159
[build-system]
260
requires = ["setuptools>=40.6.0", "wheel"]
361
build-backend = "setuptools.build_meta"
@@ -31,3 +89,6 @@ markers = [
3189
"requests",
3290
"network: test case requires network connection",
3391
]
92+
93+
[tool.flake8]
94+
max-line-length = 99

setup.cfg

-2
This file was deleted.

setup.py

-86
This file was deleted.

0 commit comments

Comments
 (0)