Skip to content
This repository has been archived by the owner on Dec 26, 2022. It is now read-only.

Releases: Pincer-org/Pincer

Pincer 0.4.0 - Middlewares System rewrite

05 Sep 17:28
Compare
Choose a tag to compare
  • Dispatcher
  • Logging Improved
  • HTTP Client
  • Client base class
  • Basic events Improved

Client base class example:

from pincer.client import Bot

# Note that both `Bot` and `Client` are valid!
bot = Bot("...")
bot.run()

An example on on_ready event

from time import perf_counter
from pincer.client import Client

client = Client("...")


@client.event
async def on_ready():
    print(f"Logged in as {client.bot} after {perf_counter()} seconds")


client.run()

Inherited client

You have the possibility to use your own class to inherit from the pincer bot base.

class Bot(Client):

    def __init__(self) -> None:
        super(Bot, self).__init__(token='...')

    @Client.event
    async def on_ready(self) -> None:
        ...

See an advanced bot implementation:

https://github.com/Pincer-org/Pincer

Advanced Usage

Warning: These features are meant for advanced developers to make early experimentation with Pincer.

Enable the debug mode

If you want to see everything that is happening under the hood,
either for curiosity or the implementation of some features,
we provide a debug logging!

import logging

logging.basicConfig(level=logging.DEBUG)

Note: A lot of printing can happen, with sensitive information,
make sure to be aware or what your doing if your enable it!

middleware

Within the version 0.4.0-dev, middleware system has been re-created,
and now also advanced user to use them. However, it should be used carefully.

An /say command early implementation, using middleware

https://gist.github.com/Arthurdw/e110ebbdafca388722f25ddb79c1dfb8

Pincer 0.3.2 - Event system improvements

05 Sep 17:22
Compare
Choose a tag to compare
  • Dispatcher
  • Logging Improved
  • HTTP Client
  • Client base class
  • Basic events Improved

Client base class Example:

from pincer.client import Bot

# Note that both `Bot` and `Client` are valid!
bot = Bot("...")
bot.run()

An example on on_ready event

from time import perf_counter
from pincer.client import Client

client = Client("...")


@client.event
async def on_ready():
    print(f"Logged in as {client.bot} after {perf_counter()} seconds")


client.run()

Inherited client

You have the possibility to use your own class to inherit from the pincer bot base.

class Bot(Client):

    def __init__(self) -> None:
        super(Bot, self).__init__(token='...')

    @Client.event
    async def on_ready(self) -> None:
        ...

See an advanced bot implementation:

https://github.com/Pincer-org/Pincer

Pincer - 0.3.1 - Basic Event support (rewrite)

05 Sep 17:20
Compare
Choose a tag to compare
  • Dispatcher
  • Logging
  • HTTP Client
  • Client base class
  • Basic events Improved

Client base class Example:

from pincer.client import Bot

# Note that both `Bot` and `Client` are valid!
bot = Bot("...")
bot.run()

**An example on on_ready event

from time import perf_counter
from pincer.client import Client

client = Client("...")


@client.event
async def on_ready():
    print(f"Logged in as {client.bot} after {perf_counter()} seconds")


client.run()

Enable the debug mode

If you want to see everything that is happening under the hood,
either for curiosity or the implementation of some features,
we provide a debug logging!

import logging

logging.basicConfig(level=logging.DEBUG)

Note A lot of printing can happen, with sensitive information,
make sure to be aware or what your doing if your enable it!

Pincer - 0.3.0

05 Sep 17:15
Compare
Choose a tag to compare
Pincer - 0.3.0 Pre-release
Pre-release
  • Added basic event support

An example on on_ready event

from time import perf_counter
from pincer.client import Client

client = Client("...")


@client.event
async def on_ready():
    print(f"Logged in as {client.bot} after {perf_counter()} seconds")


client.run()

Pincer - 0.2.0 - The Bot class

31 Aug 18:19
Compare
Choose a tag to compare
Pre-release

Note: This is still an early dev version!

  • Implemented Bot Base for the client
from pincer.client import Bot

bot = Bot("...")
bot.run()

By default, all payloads with by printed, if you get an unhandled payload Exception please report it to the dev by creating an issue!

Pincer - 0.1.0

31 Aug 16:13
Compare
Choose a tag to compare
Pincer - 0.1.0 Pre-release
Pre-release

Note: This is still an early dev version!

  • Added an http client

Example
Adding a reaction to a message

import asyncio

from pincer.core.http import HTTPClient

client = HTTPClient("...")

CHANNEL_ID: int = ...
MESSAGE_ID: int = ...
REACTION: str = ...
# see: https://discord.com/developers/docs/resources/channel#get-channel


async def add_reaction() -> None:
    await client.put(
        f'channels/{CHANNEL_ID}/messages/{MESSAGE_ID}/reactions/{REACTION}/@me',
        {}
    )


def main() -> None:
    loop = asyncio.get_event_loop()
    loop.run_until_complete(add_reaction())


if __name__ == '__main__':
    main()

Pincer - 0.0.2

30 Aug 12:04
93e1778
Compare
Choose a tag to compare
Pincer - 0.0.2 Pre-release
Pre-release

Pincer 0.0.2

Scrutinizer Code Quality Build Status Scrutinizer Code Quality GitHub repo size GitHub last commit GitHub commit activity GitHub Code Style Discord

Discord API wrapper rebuild from scratch.

Links

Join the discord server: https://discord.gg/8WkYz3fNFm

The pypi package: https://pypi.org/project/Pincer/

Our website: https://pincer.dev

Installation

Use The following command to install Pincer into your python environment:

pip install pincer
Didn't work?

Depending on your python installation, you might need to use one of the following.

pip isn't in the path but python is

python -m pip install pincer

Unix system can use pip3/python3 command

python3 -m pip install pincer
pip3 install pincer

python isn't in the path

path/to/python.exe -m pip install pincer

Using multiple python versions

py -m pip install pincer

License

© 2021 copyright Pincer

This repository is licensed under the MIT License.
See LICENSE for details.

Pincer - 0.0.1

30 Aug 11:29
Compare
Choose a tag to compare
Pincer - 0.0.1 Pre-release
Pre-release

Pincer 0.0.1

Scrutinizer Code Quality Build Status Scrutinizer Code Quality GitHub repo size GitHub last commit GitHub commit activity GitHub Code Style Discord

Discord API wrapper rebuild from scratch.

Installation

Use The following command to install Pincer into your python environment:

pip install pincer
Didn't work?

Depending on your python installation, you might need to use one of the following.

pip isn't in the path but python is

python -m pip install pincer

Unix system can use pip3/python3 command

python3 -m pip install pincer
pip3 install pincer

python isn't in the path

path/to/python.exe -m pip install pincer

Using multiple python versions

py -m pip install pincer

License

© 2021 copyright Pincer

This repository is licensed under the MIT License.
See LICENSE for details.