From e9d7045829a98c50d03a270b102d1a6b215e1b3c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 7 May 2025 16:36:45 +0000 Subject: [PATCH 01/14] chore(deps): bump jinja2 from 3.1.5 to 3.1.6 in /docs Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.5 to 3.1.6. - [Release notes](https://github.com/pallets/jinja/releases) - [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst) - [Commits](https://github.com/pallets/jinja/compare/3.1.5...3.1.6) --- updated-dependencies: - dependency-name: jinja2 dependency-version: 3.1.6 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- docs/requirements-doc.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/requirements-doc.txt b/docs/requirements-doc.txt index 2c34522..8fbb6be 100644 --- a/docs/requirements-doc.txt +++ b/docs/requirements-doc.txt @@ -17,4 +17,4 @@ GitPython==3.1.43 Pygments==2.18.0 PyYAML==6.0.2 Markdown==3.7 -Jinja2==3.1.5 \ No newline at end of file +Jinja2==3.1.6 \ No newline at end of file From 3c0d5f51bcda11e2891e7e6beeb937f0d539191a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 19 May 2025 21:12:55 +0000 Subject: [PATCH 02/14] chore(deps): bump setuptools from 75.3.0 to 78.1.1 Bumps [setuptools](https://github.com/pypa/setuptools) from 75.3.0 to 78.1.1. - [Release notes](https://github.com/pypa/setuptools/releases) - [Changelog](https://github.com/pypa/setuptools/blob/main/NEWS.rst) - [Commits](https://github.com/pypa/setuptools/compare/v75.3.0...v78.1.1) --- updated-dependencies: - dependency-name: setuptools dependency-version: 78.1.1 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/requirements.txt b/requirements.txt index 04278d5..023d6a6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -14,5 +14,5 @@ pluggy==1.5.0 # Development & Formatting black==24.10.0 -setuptools==75.3.0 +setuptools==78.1.1 watchdog==6.0.0 \ No newline at end of file From f33b1119b3487ff1eeb4d12a7e39ecefe8525df8 Mon Sep 17 00:00:00 2001 From: Kyoto Date: Thu, 22 May 2025 18:52:15 +0200 Subject: [PATCH 03/14] feat: add monero mining stats feature --- qubipy/config.py | 2 ++ qubipy/core/core_client.py | 28 ++++++++++++++++++++++++++++ qubipy/endpoints_core.py | 6 +++++- 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/qubipy/config.py b/qubipy/config.py index d84a2a2..b4626b3 100644 --- a/qubipy/config.py +++ b/qubipy/config.py @@ -7,6 +7,8 @@ CORE_URL = 'https://api.qubic.org/v1' +MONERO_URL = 'https://xmr-stats.qubic.org' # This URL is only used to obtain monero mining stats. + TIMEOUT = 5 HEADERS = { diff --git a/qubipy/core/core_client.py b/qubipy/core/core_client.py index 3895c6c..b979247 100644 --- a/qubipy/core/core_client.py +++ b/qubipy/core/core_client.py @@ -541,4 +541,32 @@ def get_qx_fees(self) -> Dict[str, Any]: return data except requests.RequestException as E: raise QubiPy_Exceptions(f"Error when getting QX fees: {str(E)}") from None + + def get_monero_mining_stats(self) -> Dict[str, Any]: + + """ + Retrieves current Monero mining statistics from the external Monero system. + + This function makes an API call to fetch real-time or recent data related + to Monero network mining. + + Returns: + Dict[str, Any]: A dictionary containing various statistics related to Monero mining, + such as pool and network hashrates, network difficulty, block height, + and other relevant pool/miner data. The exact structure and content + depend on the Monero API response. + + Raises: + QubiPy_Exceptions: If there is an issue during the API request execution (e.g., + a network connection error, a non-2xx HTTP status code from the + API server, a timeout during the request, or if the API + response cannot be parsed as valid JSON). + """ + try: + response = requests.get(f'{MONERO_URL}{MONERO_MINING_STATS}', headers=HEADERS, timeout=self.timeout) + response.raise_for_status() # Raise an exception for bad HTTP status codes + data = response.json() + return data + except requests.RequestException as E: + raise QubiPy_Exceptions(f"Error when getting the monero mining stats: {str(E)}") from None diff --git a/qubipy/endpoints_core.py b/qubipy/endpoints_core.py index 9808b2f..2fbe7b3 100644 --- a/qubipy/endpoints_core.py +++ b/qubipy/endpoints_core.py @@ -42,4 +42,8 @@ QX_ENTITY_BID_ORDERS = '/qx/getEntityBidOrders' -QX_FEES = '/qx/getFees' \ No newline at end of file +QX_FEES = '/qx/getFees' + +# MONERO MINING STATS + +MONERO_MINING_STATS = '/stats' \ No newline at end of file From 78b3df00f3236b8a27485129274c389b440d7b85 Mon Sep 17 00:00:00 2001 From: Kyoto Date: Thu, 22 May 2025 18:53:25 +0200 Subject: [PATCH 04/14] chore: update comment --- qubipy/endpoints_rpc.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/qubipy/endpoints_rpc.py b/qubipy/endpoints_rpc.py index 58a5626..565bd0d 100644 --- a/qubipy/endpoints_rpc.py +++ b/qubipy/endpoints_rpc.py @@ -48,7 +48,7 @@ RICH_LIST = '/rich-list' -# Testing +# ASSETS ASSETS_ISSUANCE = '/assets/issuances' From d27014974935339ed37430096a1958933728fa19 Mon Sep 17 00:00:00 2001 From: Kyoto Date: Thu, 22 May 2025 20:41:31 +0200 Subject: [PATCH 05/14] refactor(rpc): Deprecate get_block_height in favor of get_tick_info --- qubipy/rpc/rpc_client.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/qubipy/rpc/rpc_client.py b/qubipy/rpc/rpc_client.py index d1323da..44f2c4d 100644 --- a/qubipy/rpc/rpc_client.py +++ b/qubipy/rpc/rpc_client.py @@ -7,6 +7,7 @@ import requests from typing import Dict, Any import json +import warnings from qubipy.exceptions import * from qubipy.config import * @@ -586,6 +587,9 @@ def get_block_height(self) -> Dict[str, Any]: """ Retrieves the current block height from the API. + .. deprecated:: 0.4.0 + Use :func:`get_tick_info` instead. This function will be removed in a future release. + Returns: Dict[str, Any]: A dictionary containing the current block height. If the block height is not found, an empty dictionary is returned. @@ -593,7 +597,12 @@ def get_block_height(self) -> Dict[str, Any]: Raises: QubiPy_Exceptions: If there is an issue with the API request (e.g., network error, invalid response, or timeout). """ - + warnings.warn( + "The 'get_block_height()' function is deprecated and will be removed in a future version of QubiPy. " + "Please use 'get_tick_info()' instead for future compatibility.", + DeprecationWarning, + stacklevel=2 + ) try: response = requests.get(f'{self.rpc_url}{BLOCK_HEIGHT}', headers=HEADERS, timeout=self.timeout) response.raise_for_status() From fc17f1cd5c648cb05f0065623db460948d550a7c Mon Sep 17 00:00:00 2001 From: Mazzya Date: Sat, 24 May 2025 20:57:17 +0200 Subject: [PATCH 06/14] docs: update changelog --- CHANGELOG.md | 4 ++++ README.md | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2344cd8..01e24c2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Change Log +## v0.4.0-beta - May 25, 2025 +* Added new endpoint method: + * get_monero_mining_stats(): Returns a dictionary containing various statistics related to Monero mining, such as pool and network hashrates, network difficulty, block height, and other relevant pool/miner data. + ## v0.3.0-beta - May 7, 2025 * Added new endpoints methods : * get_assets_issuances(): Returns a list of issued assets. diff --git a/README.md b/README.md index c8c395e..4050e2b 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ Currently, QubiPy is in a very early development phase, so please take this into Please visit the [Change log](https://github.com/QubiPy-Labs/QubiPy/blob/main/docs/changelog.md) to see all changes. -![release](https://img.shields.io/badge/release-v0.3.0--beta-blue) +![release](https://img.shields.io/badge/release-v0.4.0--beta-blue) ![python](https://img.shields.io/badge/python-3.10_%7C_3.11_%7C_3.12-blue) ![Python Package](https://github.com/QubiPy-Labs/QubiPy/actions/workflows/python-package.yml/badge.svg) ![Code Quality](https://github.com/QubiPy-Labs/QubiPy/actions/workflows/pylint.yml/badge.svg) From 8182728612ba3932da761ba3924c0d1b819b89bf Mon Sep 17 00:00:00 2001 From: Kyoto Date: Sun, 25 May 2025 11:14:48 +0200 Subject: [PATCH 07/14] feat: add monero rewards value --- qubipy/core/core_client.py | 1 + 1 file changed, 1 insertion(+) diff --git a/qubipy/core/core_client.py b/qubipy/core/core_client.py index b979247..bec2d72 100644 --- a/qubipy/core/core_client.py +++ b/qubipy/core/core_client.py @@ -566,6 +566,7 @@ def get_monero_mining_stats(self) -> Dict[str, Any]: response = requests.get(f'{MONERO_URL}{MONERO_MINING_STATS}', headers=HEADERS, timeout=self.timeout) response.raise_for_status() # Raise an exception for bad HTTP status codes data = response.json() + data['monero_amount_rewards'] = data['pool_blocks_found'] * 0.6 return data except requests.RequestException as E: raise QubiPy_Exceptions(f"Error when getting the monero mining stats: {str(E)}") from None From d487fc7655c4cb3b62fbaa75d5a9255af14fbd6a Mon Sep 17 00:00:00 2001 From: Kyoto Date: Sun, 25 May 2025 11:34:48 +0200 Subject: [PATCH 08/14] fix: monero rewards amount rounded --- qubipy/core/core_client.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/qubipy/core/core_client.py b/qubipy/core/core_client.py index bec2d72..8cdbeee 100644 --- a/qubipy/core/core_client.py +++ b/qubipy/core/core_client.py @@ -563,10 +563,12 @@ def get_monero_mining_stats(self) -> Dict[str, Any]: response cannot be parsed as valid JSON). """ try: + REWARD_PER_MONERO_BLOCK = 0.6 response = requests.get(f'{MONERO_URL}{MONERO_MINING_STATS}', headers=HEADERS, timeout=self.timeout) response.raise_for_status() # Raise an exception for bad HTTP status codes data = response.json() - data['monero_amount_rewards'] = data['pool_blocks_found'] * 0.6 + raw_rewards = data.get('pool_blocks_found', 0) * REWARD_PER_MONERO_BLOCK + data['monero_amount_rewards'] = round(raw_rewards, 8) return data except requests.RequestException as E: raise QubiPy_Exceptions(f"Error when getting the monero mining stats: {str(E)}") from None From cd443c7fa9a01672e0c6df514df54c2e8f41bb87 Mon Sep 17 00:00:00 2001 From: Mazzya Date: Sun, 25 May 2025 19:20:42 +0200 Subject: [PATCH 09/14] docs: update changelog --- CHANGELOG.md | 2 ++ docs/changelog.md | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 01e24c2..421765e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,8 @@ ## v0.4.0-beta - May 25, 2025 * Added new endpoint method: * get_monero_mining_stats(): Returns a dictionary containing various statistics related to Monero mining, such as pool and network hashrates, network difficulty, block height, and other relevant pool/miner data. + * Since the reward for each block of monero is 0.6 XMR, we have added a small formula that allows us to calculate approximate rewards. +* Some internal libraries have been updated to fix known vulnerabilities. ## v0.3.0-beta - May 7, 2025 * Added new endpoints methods : diff --git a/docs/changelog.md b/docs/changelog.md index 2344cd8..421765e 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,5 +1,11 @@ # Change Log +## v0.4.0-beta - May 25, 2025 +* Added new endpoint method: + * get_monero_mining_stats(): Returns a dictionary containing various statistics related to Monero mining, such as pool and network hashrates, network difficulty, block height, and other relevant pool/miner data. + * Since the reward for each block of monero is 0.6 XMR, we have added a small formula that allows us to calculate approximate rewards. +* Some internal libraries have been updated to fix known vulnerabilities. + ## v0.3.0-beta - May 7, 2025 * Added new endpoints methods : * get_assets_issuances(): Returns a list of issued assets. From ff6bd771e2cad614d3cca12ac3d4f55c90d3c4db Mon Sep 17 00:00:00 2001 From: Mazzya Date: Sun, 25 May 2025 19:21:03 +0200 Subject: [PATCH 10/14] chore: update setup file version --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 75c0c0a..30476e5 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,6 @@ from setuptools import setup, find_packages -__version__ = '0.3.0' +__version__ = '0.4.0' with open("README.md", "r", encoding="utf-8") as fh: From f5c86b28190475dbdd5200ecd8564ddf9fe182bd Mon Sep 17 00:00:00 2001 From: Mazzya Date: Sun, 25 May 2025 19:26:09 +0200 Subject: [PATCH 11/14] docs: update changelog --- CHANGELOG.md | 5 +++-- docs/changelog.md | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 421765e..ccfff33 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,9 +2,10 @@ ## v0.4.0-beta - May 25, 2025 * Added new endpoint method: - * get_monero_mining_stats(): Returns a dictionary containing various statistics related to Monero mining, such as pool and network hashrates, network difficulty, block height, and other relevant pool/miner data. - * Since the reward for each block of monero is 0.6 XMR, we have added a small formula that allows us to calculate approximate rewards. + * `get_monero_mining_stats()`: Returns a dictionary containing various statistics related to Monero mining, such as pool and network hashrates, network difficulty, block height, and other relevant pool/miner data. + * Since the reward for each block of monero is `0.6 XMR`, we have added a small formula that allows us to calculate approximate rewards. * Some internal libraries have been updated to fix known vulnerabilities. +* Since the : `/block-height` endpoint is going to be removed, a message has been added to the `get_block_height()` method to warn that it is recommended to use the `get_tick_info()` method instead to ensure maximum compatibility. ## v0.3.0-beta - May 7, 2025 * Added new endpoints methods : diff --git a/docs/changelog.md b/docs/changelog.md index 421765e..ccfff33 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -2,9 +2,10 @@ ## v0.4.0-beta - May 25, 2025 * Added new endpoint method: - * get_monero_mining_stats(): Returns a dictionary containing various statistics related to Monero mining, such as pool and network hashrates, network difficulty, block height, and other relevant pool/miner data. - * Since the reward for each block of monero is 0.6 XMR, we have added a small formula that allows us to calculate approximate rewards. + * `get_monero_mining_stats()`: Returns a dictionary containing various statistics related to Monero mining, such as pool and network hashrates, network difficulty, block height, and other relevant pool/miner data. + * Since the reward for each block of monero is `0.6 XMR`, we have added a small formula that allows us to calculate approximate rewards. * Some internal libraries have been updated to fix known vulnerabilities. +* Since the : `/block-height` endpoint is going to be removed, a message has been added to the `get_block_height()` method to warn that it is recommended to use the `get_tick_info()` method instead to ensure maximum compatibility. ## v0.3.0-beta - May 7, 2025 * Added new endpoints methods : From 27e1487f354ef5660c8be15904fa81e582c65882 Mon Sep 17 00:00:00 2001 From: Mazzya Date: Sun, 25 May 2025 19:34:39 +0200 Subject: [PATCH 12/14] docs: fix typo --- qubipy/rpc/rpc_client.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/qubipy/rpc/rpc_client.py b/qubipy/rpc/rpc_client.py index 44f2c4d..50bbd42 100644 --- a/qubipy/rpc/rpc_client.py +++ b/qubipy/rpc/rpc_client.py @@ -587,8 +587,9 @@ def get_block_height(self) -> Dict[str, Any]: """ Retrieves the current block height from the API. - .. deprecated:: 0.4.0 - Use :func:`get_tick_info` instead. This function will be removed in a future release. + ..deprecated:: 0.4.0 + The `get_block_height()` function is deprecated and will be removed in a future version of QubiPy. + Please use `get_tick_info()` instead for future compatibility. Returns: Dict[str, Any]: A dictionary containing the current block height. @@ -599,7 +600,7 @@ def get_block_height(self) -> Dict[str, Any]: """ warnings.warn( "The 'get_block_height()' function is deprecated and will be removed in a future version of QubiPy. " - "Please use 'get_tick_info()' instead for future compatibility.", + "Please use 'get_tick_info()' instead for maximum compatibility.", DeprecationWarning, stacklevel=2 ) From d5d39e2f62db082bd9f73152672eb6587215b46e Mon Sep 17 00:00:00 2001 From: Mazzya Date: Sun, 25 May 2025 20:01:01 +0200 Subject: [PATCH 13/14] docs: update documentation --- docs/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/index.md b/docs/index.md index 0fe68dc..6735ef1 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,11 +1,11 @@ # Welcome to the **QubiPy** official documentation, a Python Library for the QUBIC RPC API -!!! note "Beta Version: 0.3.0" +!!! note "Beta Version: 0.4.0" QubiPy is currently in beta. While functional, some features might change before the stable release. **QubiPy** is a Python library that provides RPC and Core client functionality. You can interact quickly and easily with the Qubic RPC API using the different methods offered by this library. -![release](https://img.shields.io/badge/release-v0.3.0--beta-blue) +![release](https://img.shields.io/badge/release-v0.4.0--beta-blue) ![python](https://img.shields.io/badge/python-3.10_%7C_3.11_%7C_3.12-blue) ![Python Package](https://github.com/QubiPy-Labs/QubiPy/actions/workflows/python-package.yml/badge.svg) ![Code Quality](https://github.com/QubiPy-Labs/QubiPy/actions/workflows/pylint.yml/badge.svg) From 1dafb3137428f50bc5f516b85ed811854bff39b5 Mon Sep 17 00:00:00 2001 From: Mazzya Date: Sun, 25 May 2025 20:59:03 +0200 Subject: [PATCH 14/14] docs: update documentation --- CHANGELOG.md | 1 + README.md | 18 ++++++++++++++++++ docs/about.md | 18 ++++++++++++++++++ docs/changelog.md | 1 + docs/index.md | 18 ++++++++++++++++++ 5 files changed, 56 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ccfff33..60fe67f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ * Since the reward for each block of monero is `0.6 XMR`, we have added a small formula that allows us to calculate approximate rewards. * Some internal libraries have been updated to fix known vulnerabilities. * Since the : `/block-height` endpoint is going to be removed, a message has been added to the `get_block_height()` method to warn that it is recommended to use the `get_tick_info()` method instead to ensure maximum compatibility. +* Donation addresses have been added to help cover operational costs, spend more time on new features, bug fixes and full documentation, ensuring that QubiPy remains a robust tool for everyone. More information in our [README](https://github.com/QubiPy-Labs/QubiPy/blob/main/README.md) and our [online documentation](https://qubipy.readthedocs.io/en/latest/about/#community-and-support). ## v0.3.0-beta - May 7, 2025 * Added new endpoints methods : diff --git a/README.md b/README.md index 4050e2b..ae0df20 100644 --- a/README.md +++ b/README.md @@ -96,6 +96,24 @@ $ { ``` +### Support Our Work (Donations) + +#### Your Contribution Matters + QubiPy is developed and maintained by QubiPy Labs as a free, open-source project for the Qubic community. + + Our dedication to providing high-quality tools is driven by passion, but maintaining and enhancing the library requires time, effort, and resources. + + If you find QubiPy valuable and wish to support its continued development, any contribution is greatly appreciated. + + Your donations help us cover operational costs, dedicate more time to new features, bug fixes, and comprehensive documentation, ensuring QubiPy remains a robust tool for everyone. + + You can send your generous contributions to the following addresses: + + * QUBIC : **`CNSLISZCRHAVHADBQCZWVYAVTYXCVNQREGVVTWKBLHSJXFHRFEGNLORCHRSE`** + * USDT (ETH, ARB, BSC or Polygon) : **`0x453471Cc01868895b833841Ce7DbaE11fd9D1933`** + + A huge thank you for being a part of the QubiPy journey! + ### Technical notes This library is using `crypto.dll` which is a C extension of Qubic key utility functions and bind it to Python. To build this `crypto.dll`, this repository was used: [https://github.com/serendipity-seeker/key-utils-binding](https://github.com/serendipity-seeker/key-utils-binding). diff --git a/docs/about.md b/docs/about.md index a260938..9d39e87 100644 --- a/docs/about.md +++ b/docs/about.md @@ -60,6 +60,24 @@ Check our [Contributing Guidelines](contributing.md) for more details. - Check our [Documentation](https://qubipy.readthedocs.io) - Ask questions on [GitHub Issues](https://github.com/QubiPy-Labs/QubiPy/issues) +### Support Our Work (Donations) + +!!! tip "Your Contribution Matters" + QubiPy is developed and maintained by QubiPy Labs as a free, open-source project for the Qubic community. + + Our dedication to providing high-quality tools is driven by passion, but maintaining and enhancing the library requires time, effort, and resources. + + If you find QubiPy valuable and wish to support its continued development, any contribution is greatly appreciated. + + Your donations help us cover operational costs, dedicate more time to new features, bug fixes, and comprehensive documentation, ensuring QubiPy remains a robust tool for everyone. + + You can send your generous contributions to the following addresses: + + * QUBIC : **`CNSLISZCRHAVHADBQCZWVYAVTYXCVNQREGVVTWKBLHSJXFHRFEGNLORCHRSE`** + * USDT (ETH, ARB, BSC or Polygon) : **`0x453471Cc01868895b833841Ce7DbaE11fd9D1933`** + + A huge thank you for being a part of the QubiPy journey! + ## Technical notes This library uses crypto.dll, which is a C extension of the Qubic key utility functions and binds them to Python. To build this crypto.dll, this [repository](https://github.com/serendipity-seeker/key-utils-binding) was used. diff --git a/docs/changelog.md b/docs/changelog.md index ccfff33..006aa1a 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -6,6 +6,7 @@ * Since the reward for each block of monero is `0.6 XMR`, we have added a small formula that allows us to calculate approximate rewards. * Some internal libraries have been updated to fix known vulnerabilities. * Since the : `/block-height` endpoint is going to be removed, a message has been added to the `get_block_height()` method to warn that it is recommended to use the `get_tick_info()` method instead to ensure maximum compatibility. +* Donation addresses have been added to help cover operational costs, spend more time on new features, bug fixes and full documentation, ensuring that QubiPy remains a robust tool for everyone. ## v0.3.0-beta - May 7, 2025 * Added new endpoints methods : diff --git a/docs/index.md b/docs/index.md index 6735ef1..3a3c56b 100644 --- a/docs/index.md +++ b/docs/index.md @@ -74,6 +74,24 @@ We welcome all contributions to QubiPy! Whether you want to: You can learn how to contribute [here](contributing.md) +## Support Our Work (Donations) + +!!! tip "Your Contribution Matters" + QubiPy is developed and maintained by QubiPy Labs as a free, open-source project for the Qubic community. + + Our dedication to providing high-quality tools is driven by passion, but maintaining and enhancing the library requires time, effort, and resources. + + If you find QubiPy valuable and wish to support its continued development, any contribution is greatly appreciated. + + Your donations help us cover operational costs, dedicate more time to new features, bug fixes, and comprehensive documentation, ensuring QubiPy remains a robust tool for everyone. + + You can send your generous contributions to the following addresses: + + * QUBIC : **`CNSLISZCRHAVHADBQCZWVYAVTYXCVNQREGVVTWKBLHSJXFHRFEGNLORCHRSE`** + * USDT (ETH, ARB, BSC or Polygon) : **`0x453471Cc01868895b833841Ce7DbaE11fd9D1933`** + + A huge thank you for being a part of the QubiPy journey! + ## Community