Skip to content

Commit e2ff8fb

Browse files
authored
Merge pull request #8 from Roborian/release-0.1.3
Update OutsetaPy package version to 0.1.3 and refactor code structure
2 parents 03494b1 + 52016a3 commit e2ff8fb

23 files changed

Lines changed: 52 additions & 100 deletions

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@ dist/
44
build/
55
.env
66
private.md
7+
src/outsetapy.egg-info/

pyproject.toml

Lines changed: 8 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,57 +1,24 @@
11
[project]
22
name = "outsetapy"
3-
version = "0.1.1"
3+
version = "0.1.3"
4+
45
authors = [
56
{ name="Roborian, Inc", email="info@roborian.com" },
67
]
78
description = "A SDK for building applications with Outseta"
89
readme = "README.md"
9-
long_description = """
10-
# OutsetaPy : Outseta SDK for python
11-
12-
We created a Outseta SKD because we truely believe that outseta is the best membership management platorm in existance.
13-
14-
## Installation
15-
16-
pip install outsetapy
17-
18-
## Usage
19-
20-
OutsetaPy is a asynchronious library, so it has to run inside a async thread.
21-
See ./examples/ to learn how to use it
22-
23-
## API Reference
24-
25-
Comming soon
26-
27-
## Contributing
28-
29-
Provide guidelines on how to contribute to your project.
10+
requires-python = ">=3.8"
3011

31-
### Code formatting>
32-
33-
we use black to perform automatic code formatting, and flake8 for linting
34-
35-
## License
36-
37-
GNU AGPLv3
38-
39-
## Contact and Support
40-
41-
Support options can be found on our [Patreon](https://www.patreon.com/savelkouls)
42-
If you are developing a startup, and need help with the development of your product? Send us a message on info@roborian.com and we will be able to help you with it.
43-
"""
44-
requires-python = ">=3.7"
4512
classifiers = [
4613
"Programming Language :: Python :: 3",
4714
"License :: OSI Approved :: MIT License",
4815
"Operating System :: OS Independent",
4916
]
5017

51-
[build-system]
52-
requires = ["setuptools", "wheel", "requests"]
53-
build-backend = "setuptools.build_meta"
54-
5518
[project.urls]
5619
Homepage = "https://github.com/Roborian/outsetapy"
57-
Issues = "https://github.com/Roborian/outsetapy/issues"
20+
Issues = "https://github.com/Roborian/outsetapy/issues"
21+
22+
[build-system]
23+
requires = ["setuptools>=61.0"]
24+
build-backend = "setuptools.build_meta"

src/outsetapy/api/billing/invoices.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,13 @@
66
from outsetapy.models.billing.invoice import Invoice
77
from outsetapy.models.billing.subscription import Subscription
88
from outsetapy.models.billing.invoice_line_item import InvoiceLineItem
9-
from typing import List, Union
10-
from datetime import date
11-
from outsetapy.models.billing.subscription import Subscription
12-
from outsetapy.models.billing.invoice_line_item import InvoiceLineItem
139

1410

1511
class Invoices:
1612
def __init__(self, store: Store):
1713
self.store = store
1814

19-
async def add(self, invoice: dict) -> Union[Invoice, ValidationError[Invoice]]:
15+
async def add(self, invoice: dict) -> Invoice:
2016
request = (
2117
Request(self.store, "billing/invoices")
2218
.authenticate_as_server()
@@ -25,11 +21,11 @@ async def add(self, invoice: dict) -> Union[Invoice, ValidationError[Invoice]]:
2521
response = await request.post()
2622

2723
if response.status == 400:
28-
raise Exception(response.json())
24+
raise ValidationError(response.json())
2925
elif response.ok:
30-
return response.json()
26+
return Invoice(response.json())
3127
else:
32-
raise response
28+
raise Exception(response.json())
3329

3430
async def get_by_id(self, invoice_id: str) -> Invoice:
3531
request = Request(

src/outsetapy/api/billing/subscriptions.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,9 @@
1-
from outsetapy.models.billing.subscription_add_on import SubscriptionAddOn
21
from outsetapy.models.billing.plan_family import PlanFamily
32
from outsetapy.util.store import Store
43
from outsetapy.models.wrappers.validation_error import ValidationError
54
from outsetapy.util.request import Request, hasMoreResults
65
from outsetapy.models.billing.subscription import Subscription
7-
from outsetapy.models.billing.plan import Plan
86
from outsetapy.models.crm.account import Account
9-
from outsetapy.models.billing.billing_renewal_term import BillingRenewalTerm
107
from outsetapy.models.wrappers.list import List
118
from outsetapy.models.billing.charge_summary import ChargeSummary
129

@@ -72,7 +69,7 @@ async def get(self, uid: str, options: dict = {}) -> Subscription:
7269

7370
async def add(
7471
self, subscription: dict
75-
) -> Subscription | ValidationError[Subscription]:
72+
) -> Subscription:
7673
request = (
7774
Request(self.store, "billing/subscriptions/firsttimesubscription")
7875
.authenticate_as_server()

src/outsetapy/api/crm/accounts.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
from datetime import datetime
22
from typing import List, Union
3-
from outsetapy.models.wrappers.list import List
43
from outsetapy.models.crm.account import Account
54
from outsetapy.util.request import Request, hasMoreResults
65
from outsetapy.models.crm.account_stage import AccountStage

src/outsetapy/api/crm/activities.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
from typing import Union
2-
from outsetapy.models.shared.entity import EntityType
32
from outsetapy.models.crm.activity import Activity
4-
from outsetapy.models.crm.activity_type import ActivityType
53
from outsetapy.models.wrappers.list import List
64
from outsetapy.models.wrappers.validation_error import ValidationError
75
from outsetapy.util.request import Request, hasMoreResults

src/outsetapy/api/crm/people.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
from outsetapy.models.crm.person import Person
33
from outsetapy.util.request import Request, hasMoreResults
44
from outsetapy.models.wrappers.list import List
5-
from outsetapy.models.wrappers.validation_error import ValidationError
65

76

87
class People:

src/outsetapy/api/support/cases.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,6 @@
11
from typing import Union
2-
from outsetapy.models.crm.person import Person
32
from outsetapy.models.support.case import Case
43
from outsetapy.models.support.case_history import CaseHistory
5-
from outsetapy.models.support.case_source import CaseSource
64
from outsetapy.models.wrappers.list import List
75
from outsetapy.models.wrappers.validation_error import ValidationError
86
from outsetapy.util.request import Request, hasMoreResults

src/outsetapy/api/user/password.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from outsetapy.util.request import Request
22
from outsetapy.util.store import Store
33
from outsetapy.models.wrappers.validation_error import ValidationError
4-
from outsetapy.models.crm.person import Person
54

65

76
class Password:
@@ -19,7 +18,7 @@ async def update(self, existing_password: str, new_password: str) -> None:
1918
response = await request.put()
2019

2120
if response.status == 400:
22-
raise Exception(response.json())
21+
raise ValidationError(response.json())
2322
elif response.ok:
2423
return None
2524
else:

src/outsetapy/models/billing/invoice.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
from .invoice_line_item import InvoiceLineItem
21
from .subscription import Subscription
32

43

0 commit comments

Comments
 (0)