Skip to content

Commit e74e2b8

Browse files
authored
Bugfix - Publish / Implement Source Build Pipeline (#23)
* Update copyright, versioning, change directory structure * Move source build to most recent schema * Rewrite the package publish pipeline Ref: #23
1 parent 2fcf9bc commit e74e2b8

25 files changed

+333
-330
lines changed

.github/workflows/pythonpublish.yml

+24-23
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,27 @@
11
name: Upload Python Package
2-
32
on:
4-
release:
5-
types: [created]
6-
3+
release:
4+
types: [created]
75
jobs:
8-
deploy:
9-
runs-on: ubuntu-latest
10-
steps:
11-
- uses: actions/checkout@v1
12-
- name: Set up Python
13-
uses: actions/setup-python@v1
14-
with:
15-
python-version: '3.x'
16-
- name: Install dependencies
17-
run: |
18-
python -m pip install --upgrade pip
19-
pip install setuptools wheel twine
20-
- name: Build and publish
21-
env:
22-
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
23-
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
24-
run: |
25-
python setup.py sdist bdist_wheel
26-
twine upload dist/*
6+
deploy:
7+
runs-on: ubuntu-latest
8+
steps:
9+
- uses: actions/checkout@v4.1.1
10+
- name: Setup Python (3.8)
11+
uses: actions/setup-python@v5
12+
with:
13+
python-version: "3.8"
14+
- name: Upgrade Pip, Build, Twine
15+
run: |
16+
python -m pip install --upgrade pip
17+
python -m pip install --upgrade build
18+
python -m pip install twine
19+
- name: Build Source
20+
run: |
21+
python -m build
22+
- name: Publish Source
23+
env:
24+
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }}
25+
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }}
26+
run: |
27+
twine upload dist/*

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,5 @@
22
notes.txt
33
*.pyc
44
**/__pycache__
5-
.vscode
5+
.vscode
6+
.dist

.python-version

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
3.9.4

LICENSE

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2021- Sanjay-B(Sanjay Bhadra)
3+
Copyright (c) 2024- sbhadr (Sanjay Bhadra)
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

examples/legacy/instanceGroup.py

-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import asyncio
2-
import aiohttp
32
from pyblox3 import Groups_v1
43

54
# Instance your group as a variable

examples/legacy/login.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22
# examples -> login.py
33
# pyblox
44
#
5-
# By Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2019- Sanjay-B(Sanjay Bhadra). All rights reserved.
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
7+
# THIS DOES NOT WORK. Roblox removed the ability for bots to login traditionally.
8+
# Use an account cookie or opencloud instead.
79
#
810

911
from pyblox3 import *

pyblox3/__init__.py

-29
This file was deleted.

pyblox3/src/util/cached.py

-12
This file was deleted.

pyproject.toml

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
[build-system]
2+
requires = ["hatchling"]
3+
build-backend = "hatchling.build"
4+
5+
[project]
6+
name = "pyblox3"
7+
version = "3.0-beta.6"
8+
authors = [
9+
{ name="Sanjay Bhadra", email="sbhadr.github@gmail.com" }
10+
]
11+
description = "An API wrapper for Roblox written in Python"
12+
readme = "README.md"
13+
license = { file="LICENSE" }
14+
requires-python = ">=3.8"
15+
dependencies = [
16+
"aiohttp",
17+
"asyncio",
18+
"httpx",
19+
"pytest"
20+
]
21+
classifiers = [
22+
"License :: OSI Approved :: MIT License",
23+
"Operating System :: OS Independent",
24+
"Development Status :: 4 - Beta",
25+
"Programming Language :: Python :: 3",
26+
"Programming Language :: Python :: 3.8",
27+
"Programming Language :: Python :: 3.9",
28+
"Programming Language :: Python :: 3.10",
29+
"Programming Language :: Python :: 3.11",
30+
"Programming Language :: Python :: 3.12",
31+
"Programming Language :: Python :: 3.13"
32+
]
33+
keywords = [
34+
"Python", "Roblox", "API", "Wrapper", "Library", "Python3", "API-Wrapper", "RobloxDev",
35+
"Roblox-API", "Game Development", "Automation", "Scripting", "HTTP Requests",
36+
"JSON", "Authentication", "User Management", "Asset Management", "Game Analytics",
37+
"Server Communication", "Data Parsing", "Web Scraping", "Multiplayer Games",
38+
"Community Engagement", "Player Data", "Game Sessions", "Inventory Management", "Platform Integration",
39+
"Cloud Services", "Social Features", "Development Tools", "Content Creation", "Security",
40+
"Rate Limiting", "Error Handling", "Open Source", "Collaboration", "Version Control",
41+
"Documentation", "Tutorials", "User Support", "Performance Optimization", "Cross-platform",
42+
"Event Handling", "Asynchronous Programming", "Dependency Management", "Unit Testing",
43+
"Continuous Integration", "Deployment", "Community Contributions", "Licensing"
44+
]
45+
46+
[project.urls]
47+
Repository = "https://github.com/RbxAPI/Pyblox/tree/nightly_build"
48+
Issues = "https://github.com/RbxAPI/Pyblox/issues"
49+
Source = "https://github.com/RbxAPI/Pyblox"
50+
Discord = "https://discord.com/invite/EDXNdAT"
51+
52+
[tool.hatch.build.targets.wheel]
53+
packages = [
54+
"src",
55+
"pyblox3.webapi",
56+
"pyblox3.webapi.util"
57+
]

requirements.txt

-4
This file was deleted.

setup.py

-46
This file was deleted.

src/__init__.py

+26
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
#
2+
# __init__.py
3+
# pyblox
4+
#
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
7+
#
8+
9+
__title__ = 'pyblox'
10+
__author__ = 'sbhadr'
11+
__version__ = '3.0-beta.6'
12+
__license__ = 'MIT'
13+
__copyright__ = 'Copyright © 2024- sbhadr (Sanjay Bhadra)'
14+
15+
16+
# Parent Class Modules
17+
from .webapi.groups import *
18+
from .webapi.users import *
19+
from .webapi.auth import *
20+
from .webapi.abtesting import *
21+
from .webapi.accountInformation import *
22+
from .webapi.privateMessages import *
23+
from .webapi.games import *
24+
25+
# Utility Modules
26+
from .webapi.util import *

pyblox3/src/abtesting.py src/webapi/abtesting.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
# abtesting.py
33
# pyblox
44
#
5-
# By NSG (Nikita Petko) and IvanG (Ivan Gregrovnich) with Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2019- Sanjay-B with MFD. All rights reserved.
5+
# By NSG (Nikita Petko) and IvanG (Ivan Gregrovnich) with sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr with MFD. All rights reserved.
77
#
88

9-
from .util import *
9+
from .util import Req
1010

1111
root = "https://abtesting.roblox.com"
1212

pyblox3/src/accountInformation.py src/webapi/accountInformation.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
# accountInformation.py
33
# pyblox
44
#
5-
# By Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2019- Sanjay-B(Sanjay Bhadra). All rights reserved.
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
77
#
88

9-
from .util import *
9+
from .util import Req
1010

1111
Req = Req()
1212

pyblox3/src/auth.py src/webapi/auth.py

+2-6
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,10 @@
22
# auth.py
33
# pyblox
44
#
5-
# By Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2019- Sanjay-B(Sanjay Bhadra). All rights reserved.
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
77
#
88

9-
from .util import *
10-
11-
Req = Req()
12-
139
root = "https://auth.roblox.com"
1410

1511
class Auth_v2:

pyblox3/src/games.py src/webapi/games.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
# games.py
33
# pyblox
44
#
5-
# By Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2019- Sanjay-B(Sanjay Bhadra). All rights reserved.
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
77
#
88

9-
from .util import *
9+
from .util import Req
1010

1111
Req = Req()
1212

pyblox3/src/groups.py src/webapi/groups.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
# groups.py
33
# pyblox
44
#
5-
# By Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2019- Sanjay-B(Sanjay Bhadra). All rights reserved.
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
77
#
88

9-
from .util import *
9+
from .util import Req
1010

1111
Req = Req()
1212

pyblox3/src/privateMessages.py src/webapi/privateMessages.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
# privateMessages.py
33
# pyblox
44
#
5-
# By Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2021- Sanjay-B(Sanjay Bhadra). All rights reserved.
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
77
#
88

9-
from .util import *
9+
from .util import Req
1010

1111
Req = Req()
1212

pyblox3/src/users.py src/webapi/users.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@
22
# users.py
33
# pyblox
44
#
5-
# By Sanjay-B(Sanjay Bhadra)
6-
# Copyright © 2020- Sanjay-B(Sanjay Bhadra). All rights reserved.
5+
# By sbhadr (Sanjay Bhadra)
6+
# Copyright © 2024- sbhadr (Sanjay Bhadra). All rights reserved.
77
#
88

9-
from .util import *
9+
from .util import Req
1010

1111
Req = Req()
1212

0 commit comments

Comments
 (0)