mirror of
https://github.com/Paillat-dev/pycord-rest.git
synced 2026-01-02 17:14:56 +00:00
Compare commits
28 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
093f40ee7a | ||
|
|
6af19f0fb3 | ||
|
|
9e410d03f6 | ||
|
|
d7d7ad62df | ||
|
|
aebdf2655d | ||
|
|
03d58369b8 | ||
|
|
444d9272f7 | ||
|
|
9d4859caba | ||
|
|
b37d736dc3 | ||
|
|
5f3d6fab73 | ||
|
|
a63e620aad | ||
|
|
d4c54e236c | ||
|
|
7c4f032492 | ||
|
|
041e8bb6e3 | ||
|
|
2e0e835aa3 | ||
|
|
36b708f6c4 | ||
|
|
2318307378 | ||
|
|
e886d494d9 | ||
|
|
ec1efb1fb4 | ||
|
|
ed5ff75af6 | ||
|
|
844e557fc9 | ||
|
|
99a516b0f0 | ||
|
|
c356d0f74d | ||
|
|
8394b56afe | ||
| e971ba5f19 | |||
| fd45c0305e | |||
|
|
57c6a3c4cd | ||
|
|
013e4aba14 |
6
.github/workflows/publish.yaml
vendored
6
.github/workflows/publish.yaml
vendored
@@ -9,15 +9,15 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
environment: pypi
|
environment: pypi
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
|
|
||||||
- name: "Install uv"
|
- name: "Install uv"
|
||||||
uses: astral-sh/setup-uv@v5
|
uses: astral-sh/setup-uv@v6
|
||||||
with:
|
with:
|
||||||
enable-cache: true
|
enable-cache: true
|
||||||
|
|
||||||
- name: "Set up Python"
|
- name: "Set up Python"
|
||||||
uses: actions/setup-python@v5
|
uses: actions/setup-python@v6
|
||||||
with:
|
with:
|
||||||
python-version-file: "pyproject.toml"
|
python-version-file: "pyproject.toml"
|
||||||
|
|
||||||
|
|||||||
10
.github/workflows/quality.yaml
vendored
10
.github/workflows/quality.yaml
vendored
@@ -9,9 +9,9 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v5
|
||||||
- name: Setup Copywrite
|
- name: Setup Copywrite
|
||||||
uses: hashicorp/setup-copywrite@5e3e8a26d7b9f8a508848ad0a069dfd2f7aa5339
|
uses: hashicorp/setup-copywrite@32f9f1c86f661b8a51100768976a06f1b281a035
|
||||||
- name: Check Header Compliance
|
- name: Check Header Compliance
|
||||||
run: copywrite headers --plan --config .copywrite.hcl
|
run: copywrite headers --plan --config .copywrite.hcl
|
||||||
|
|
||||||
@@ -35,15 +35,15 @@ jobs:
|
|||||||
name: ${{ matrix.name }}
|
name: ${{ matrix.name }}
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v5
|
||||||
|
|
||||||
- name: "Install uv"
|
- name: "Install uv"
|
||||||
uses: astral-sh/setup-uv@v5
|
uses: astral-sh/setup-uv@v6
|
||||||
with:
|
with:
|
||||||
enable-cache: true
|
enable-cache: true
|
||||||
|
|
||||||
- name: "Set up Python"
|
- name: "Set up Python"
|
||||||
uses: actions/setup-python@v5
|
uses: actions/setup-python@v6
|
||||||
with:
|
with:
|
||||||
python-version-file: "pyproject.toml"
|
python-version-file: "pyproject.toml"
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ repos:
|
|||||||
exclude: \.(po|pot|yml|yaml)$
|
exclude: \.(po|pot|yml|yaml)$
|
||||||
- repo: https://github.com/astral-sh/ruff-pre-commit
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
||||||
# Ruff version.
|
# Ruff version.
|
||||||
rev: v0.9.10
|
rev: v0.11.11
|
||||||
hooks:
|
hooks:
|
||||||
# Run the linter.
|
# Run the linter.
|
||||||
- id: ruff
|
- id: ruff
|
||||||
|
|||||||
@@ -63,13 +63,9 @@ Built on:
|
|||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
pip install pycord-rest-bot --prerelease=allow
|
pip install pycord-rest-bot
|
||||||
```
|
```
|
||||||
|
|
||||||
<!-- prettier-ignore -->
|
|
||||||
> [!NOTE]
|
|
||||||
> The package is currently in pre-release.
|
|
||||||
|
|
||||||
<!-- quick-start -->
|
<!-- quick-start -->
|
||||||
|
|
||||||
## Quick Start
|
## Quick Start
|
||||||
|
|||||||
@@ -21,7 +21,7 @@ class MyView(discord.ui.View):
|
|||||||
def __init__(self, *args: Any, **kwargs: Any) -> None:
|
def __init__(self, *args: Any, **kwargs: Any) -> None:
|
||||||
super().__init__(*args, **kwargs)
|
super().__init__(*args, **kwargs)
|
||||||
self.add_item(
|
self.add_item(
|
||||||
discord.ui.Button(
|
discord.ui.Button( # pyright: ignore[reportUnknownArgumentType]
|
||||||
style=discord.ButtonStyle.link, label="GitHub", url="https://github.com/Paillat-dev/pycord-rest"
|
style=discord.ButtonStyle.link, label="GitHub", url="https://github.com/Paillat-dev/pycord-rest"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ authors = [
|
|||||||
{ name = "Paillat-dev", email = "me@paillat.dev" }
|
{ name = "Paillat-dev", email = "me@paillat.dev" }
|
||||||
]
|
]
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
requires-python = "==3.12.*"
|
requires-python = ">=3.12, <4.0"
|
||||||
classifiers = [
|
classifiers = [
|
||||||
"Development Status :: 3 - Alpha",
|
"Development Status :: 3 - Alpha",
|
||||||
"Intended Audience :: Developers",
|
"Intended Audience :: Developers",
|
||||||
@@ -24,7 +24,7 @@ keywords = ["discord", "bot", "rest", "pycord"]
|
|||||||
dependencies = [
|
dependencies = [
|
||||||
"fastapi>=0.115.11",
|
"fastapi>=0.115.11",
|
||||||
"orjson>=3.10.15",
|
"orjson>=3.10.15",
|
||||||
"py-cord==2.6.1",
|
"py-cord>=2.7.0rc1",
|
||||||
"pynacl>=1.5.0",
|
"pynacl>=1.5.0",
|
||||||
"uvicorn>=0.34.0",
|
"uvicorn>=0.34.0",
|
||||||
]
|
]
|
||||||
@@ -98,7 +98,7 @@ reportUnusedCallResult = false
|
|||||||
reportAny = false
|
reportAny = false
|
||||||
executionEnvironments = [
|
executionEnvironments = [
|
||||||
{ root = "src/pycord_rest/_version.py", reportDeprecated = false },
|
{ root = "src/pycord_rest/_version.py", reportDeprecated = false },
|
||||||
{ root = "examples", reportExplicitAny = false, reportUnknownMemberType = false, reportUnusedParameter = false, reportImplicitOverride = false }
|
{ root = "examples", reportExplicitAny = false, reportUnknownMemberType = false, reportUnusedParameter = false, reportImplicitOverride = false, reportAttributeAccessIssue = false, reportUnknownVariableType = false },
|
||||||
]
|
]
|
||||||
|
|
||||||
[tool.ruff]
|
[tool.ruff]
|
||||||
|
|||||||
@@ -1,25 +1,13 @@
|
|||||||
{
|
{
|
||||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
||||||
"extends": ["config:recommended"],
|
"extends": [
|
||||||
"baseBranches": ["main"],
|
"local>nicebots-xyz/renovate-config",
|
||||||
"labels": ["deps"],
|
":semanticPrefixFixDepsChoreOthers",
|
||||||
"ignorePaths": ["requirements.txt"],
|
":dependencyDashboard"
|
||||||
"commitMessagePrefix": "⬆️",
|
],
|
||||||
"commitMessageAction": "Upgrade",
|
"forkProcessing": "enabled",
|
||||||
"packageRules": [
|
"baseBranchPatterns": ["main"],
|
||||||
{
|
"lockFileMaintenance": {
|
||||||
"updateTypes": ["pin"],
|
"enabled": true
|
||||||
"commitMessagePrefix": "📌",
|
|
||||||
"commitMessageAction": "Pin"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"updateTypes": ["rollback"],
|
|
||||||
"commitMessagePrefix": "⬇️",
|
|
||||||
"commitMessageAction": "Downgrade"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"matchDatasources": ["pypi"],
|
|
||||||
"addLabels": ["pypi"]
|
|
||||||
}
|
}
|
||||||
]
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
# Copyright (c) Paillat-dev
|
# Copyright (c) Paillat-dev
|
||||||
# SPDX-License-Identifier: MIT
|
# SPDX-License-Identifier: MIT
|
||||||
|
|
||||||
|
import base64
|
||||||
import functools
|
import functools
|
||||||
import logging
|
import logging
|
||||||
import warnings
|
import warnings
|
||||||
@@ -80,13 +81,13 @@ class App(discord.Bot):
|
|||||||
self._connection._view_store._ViewStore__verify_integrity() # noqa: SLF001 # pyright: ignore [reportUnknownMemberType, reportAttributeAccessIssue, reportPrivateUsage]
|
self._connection._view_store._ViewStore__verify_integrity() # noqa: SLF001 # pyright: ignore [reportUnknownMemberType, reportAttributeAccessIssue, reportPrivateUsage]
|
||||||
message_id: int | None = interaction.message and interaction.message.id
|
message_id: int | None = interaction.message and interaction.message.id
|
||||||
key = (component_type, message_id, custom_id)
|
key = (component_type, message_id, custom_id)
|
||||||
value = self._connection._view_store._views.get(key) or self._connection._view_store._views.get( # pyright: ignore [reportUnknownVariableType, reportUnknownMemberType, reportPrivateUsage] # noqa: SLF001
|
value = self._connection._view_store._views.get(key) or self._connection._view_store._views.get( # pyright: ignore [reportPrivateUsage] # noqa: SLF001
|
||||||
(component_type, None, custom_id)
|
(component_type, None, custom_id)
|
||||||
)
|
)
|
||||||
if value is None:
|
if value is None:
|
||||||
return
|
return
|
||||||
|
|
||||||
view, item = value # pyright: ignore [reportUnknownVariableType]
|
view, item = value
|
||||||
item.refresh_state(interaction)
|
item.refresh_state(interaction)
|
||||||
|
|
||||||
# Code taken from View._dispatch_item
|
# Code taken from View._dispatch_item
|
||||||
@@ -96,7 +97,7 @@ class App(discord.Bot):
|
|||||||
if interaction.message:
|
if interaction.message:
|
||||||
view.message = interaction.message
|
view.message = interaction.message
|
||||||
|
|
||||||
await view._scheduled_task(item, interaction) # noqa: SLF001 # pyright: ignore [reportPrivateUsage, reportUnknownMemberType]
|
await view._scheduled_task(item, interaction) # noqa: SLF001 # pyright: ignore [reportPrivateUsage]
|
||||||
|
|
||||||
async def _verify_request(self, request: Request) -> None:
|
async def _verify_request(self, request: Request) -> None:
|
||||||
signature = request.headers["X-Signature-Ed25519"]
|
signature = request.headers["X-Signature-Ed25519"]
|
||||||
@@ -270,6 +271,7 @@ class App(discord.Bot):
|
|||||||
uvicorn_options["server_header"] = uvicorn_options.get("server_header", False)
|
uvicorn_options["server_header"] = uvicorn_options.get("server_header", False)
|
||||||
config = self._UvicornConfig(self._app, **uvicorn_options)
|
config = self._UvicornConfig(self._app, **uvicorn_options)
|
||||||
server = self._UvicornServer(config)
|
server = self._UvicornServer(config)
|
||||||
|
self._connection.application_id = int(base64.b64decode(token.split(".")[0] + "==").decode("utf-8"))
|
||||||
try:
|
try:
|
||||||
self.dispatch("connect")
|
self.dispatch("connect")
|
||||||
await server.serve()
|
await server.serve()
|
||||||
|
|||||||
Reference in New Issue
Block a user