Skip to content

Commit

Permalink
2.0.0
Browse files Browse the repository at this point in the history
  • Loading branch information
oliver-zehentleitner committed Nov 9, 2023
1 parent 0168fa7 commit b1a2903
Show file tree
Hide file tree
Showing 28 changed files with 510 additions and 526 deletions.
38 changes: 25 additions & 13 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,30 +5,32 @@ assignees:
- oliver-zehentleitner
body:
- type: markdown
id: Info
attributes:
value: |
Please post here only issues concerning this repository and follow the [Issue-Guidelines](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-suite/wiki/Issue-Guidelines).
Most of these fields are not mandatory, but please provide as much information as possible.
- type: textarea
id: Version
attributes:
label: Version of this library.
description: |
Please control what version you are using with [this script](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-suite/blob/master/tools/get_versions_of_unicorn_packages.py) and post the output:
validations:
required: true

- type: checkboxes
id: Confirmation
attributes:
label: Solution to Issue cannot be found in the documentation or other Issues and also occurs in the latest version of this library.
description: |
I have searched for other Issues with the same problem or similar feature requests and have looked in the documentation. This issue also affects the latest version of this library.
I have searched for other Issues with the same problem or similar feature requests and have looked in the documentation. This issue also affects the latest version of this library.
options:
- label: I checked the documentation and other Issues. I am using the latest version of this library.
required: true

- type: textarea
id: Version
attributes:
label: Version of this library.
description: |
Please control what version you are using with [this script](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-suite/blob/master/tools/get_versions_of_unicorn_packages.py) and post the output:
validations:
required: true

- type: dropdown
id: Hardware
attributes:
Expand Down Expand Up @@ -63,22 +65,32 @@ body:
description: |
In which Python version is the code executed?
options:
- Python3.6
- Python3.7
- Python3.8
- Python3.9
- Python3.10
- Python3.11
- Python3.12
validations:
required: true

- type: textarea
id: WheelInfo
attributes:
label: Installed wheel files
description: |
Please share your installed wheel files of this library. Run `pip show unicorn-binance-websocket-api --files |
grep ' '` or `conda list -f unicorn-binance-websocket-api | grep ' '` and post the result:
render: shell
validations:
required: false

- type: textarea
id: Packages
attributes:
label: Installed packages
description: |
Please share your installed packages by running `pip list` or `conda list` and entering the output below:
_Note:_ This will be automatically formatted as code.
placeholder: "`pip list` or `conda list`"
render: shell
validations:
required: false
Expand Down
76 changes: 76 additions & 0 deletions .github/workflows/build_wheels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
name: Build and Publish
on:
workflow_dispatch:
permissions:
contents: write
discussions: write

jobs:
build_wheels:
name: Build wheels on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
env:
CIBW_PYPY_VERSION: "7.3.10*"
strategy:
matrix:
os: [ubuntu-20.04, windows-2019, macos-11]
steps:
- uses: actions/checkout@v4
- name: Upgrade pip
run: python -m pip install --upgrade pip
- name: Set up Environment
run: echo "CIBW_SKIP=pp36-* pp37-*" >> $GITHUB_ENV
- name: Check ENV
if: matrix.os == 'ubuntu-20.04'
run: echo $PATH
- name: Build wheels Linux
if: matrix.os == 'ubuntu-20.04'
uses: pypa/[email protected]
- name: Build wheels Mac
if: matrix.os == 'macos-11'
uses: pypa/[email protected]
- name: Build wheels Windows
if: matrix.os == 'windows-2019'
uses: pypa/[email protected]
- uses: actions/upload-artifact@v3
with:
path: ./wheelhouse/*.whl

build_sdist:
name: Build source distribution
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Build sdist
run: pipx run build --sdist
- uses: actions/upload-artifact@v3
with:
path: dist/*.tar.gz

Release:
needs: [build_wheels, build_sdist]
runs-on: ubuntu-latest
environment: pypi
permissions:
id-token: write
steps:
- uses: actions/download-artifact@v3
with:
name: artifact
path: dist
- uses: pypa/gh-action-pypi-publish@release/v1
- name: Create GitHub Release
uses: softprops/action-gh-release@v1
with:
body: |
Please read the [CHANGELOG](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/blob/main/CHANGELOG.md) for further information.
discussion_category_name: releases
draft: false
files: |
dist/*.tar.gz
dist/*.whl
generate_release_notes: true
name: unicorn-binance-rest-api
prerelease: false
tag_name: 2.0.0
token: ${{ secrets.RELEASE_TOKEN }}
4 changes: 2 additions & 2 deletions .github/workflows/unit-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ jobs:

runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v1
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
with:
python-version: 3.11
- name: Install dependencies
Expand Down
139 changes: 115 additions & 24 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -1,24 +1,115 @@
MIT License
===========

Copyright (c) 2017-2021 Sam McHardy (https://github.com/sammchardy)
Copyright (c) 2021-2023 LUCIT Systems and Development (https://www.lucit.tech) and Oliver Zehentleitner (https://about.me/oliver-zehentleitner)


Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
LSOSL - LUCIT Synergetic Open Source License
============================================

Version 1.0, November 2023

1. INTRODUCTION
2. PROJECT INFORMATION
3. LICENSE CONDITIONS AND VERIFICATION
4. LICENSE PURCHASE
5. CONTRIBUTING CODE
6. USAGE AND DISTRIBUTION
7. DATA COLLECTION AND LICENSE CONTROL
8. THIRD-PARTY SOFTWARE
9. DISCLAIMER OF WARRANTY AND LIABILITY
10. CHANGES TO LICENSE TERMS

------------------------------------------------------------------------------------------------------------------------

1. INTRODUCTION

The "LUCIT Synergetic Open Source License" oversees the utilization and distribution of the UNICORN Binance REST
API, a part of the UNICORN Binance Suite by LUCIT IT-Management GmbH. This API enables the effortless integration of
Binance features into diverse applications.


2. PROJECT INFORMATION

- Project name: UNICORN Binance REST API
- Project page: https://www.lucit.tech/unicorn-binance-rest-api.html
- GitHub repository: https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api
- PyPI repository: https://pypi.org/project/unicorn-binance-rest-api
- Get a license: https://shop.lucit.services/software


3. LICENSE CONDITIONS AND VERIFICATION

The use of UNICORN Binance REST API requires a license key and an API secret.

Licenses are available at: https://shop.lucit.services/software

Verification is done via a client-side module that forwards the license details to our backend for validation.
The software may be used and distributed without restriction, the only condition is that the execution requires a valid
license from LUCIT (https://shop.lucit.services/software) and must be operated with such a license.

For transparency, our licensing client module is available on GitHub:
https://github.com/LUCIT-Systems-and-Development/lucit-licensing-python


4. LICENSE PURCHASE

Usage of the our software necessitates obtaining a license from the LUCIT Online Shop.

More details can be found at: https://shop.lucit.services/software


5. CONTRIBUTING CODE

Contributions via GitHub pull requests are welcome. However, contributors should be aware that submitted code
automatically becomes LUCIT IT-Management GmbH's property and copyright.


6. USAGE AND DISTRIBUTION

The LSOSL licensed projects of LUCIT IT-Management GmbH can be used and integrated into any application without
restriction and distributed as desired. The only condition is that the execution of our software requires a valid
license from LUCIT (https://shop.lucit.services/software) and must be operated with such a license.

Furthermore, this license explicitly permits Conda-Forge, an open-source community-driven platform for package
management and distribution operated by NumFOCUS, to test the software package following its creation to ensure
functionality, compatibility, and security standards are met. This permission is granted to support the community's
efforts in maintaining a robust ecosystem for software distribution and to guarantee the quality and performance of the
software for end users.

For information on library versions that do not contain a license requirement, please contact: [email protected]


7. DATA COLLECTION AND LICENSE CONTROL

For license adherence, test license misuse prevention, API rate monitoring, and service improvement, we gather:

- User IP addresses
- Instance log data
- Used Python version
- Operating system type
- API usage rates
- MAC addresses (for misuse detection)
- Data volume processed (anonymously aggregated)

This data is stored only for its intended purpose and duration, except for anonymous statistics. We commit to
confidentiality and non-disclosure. Details are in our privacy policy.


8. THIRD-PARTY SOFTWARE

The software may embed third-party code or libraries, each governed by their respective licenses. Ensure awareness and
compliance when using the software.


9. DISCLAIMER OF WARRANTY AND LIABILITY

The software is rendered "as is", sans any assurances. LUCIT IT-Management GmbH disclaims liability for any potential
repercussions arising from software usage.


10. CHANGES TO LICENSE TERMS

LUCIT IT-Management GmbH reserves the right to modify, alter, or update the terms of this license at any time and at
its sole discretion. Users are encouraged to review the license terms regularly to ensure compliance.

------------------------------------------------------------------------------------------------------------------------

Thank you for selecting the UNICORN Binance REST API and products from LUCIT IT-Management GmbH. We deeply value
your trust in our technologies.

LUCIT IT-Management GmbH - Am Berg 391, 3970 Weitra, AUSTRIA - https://www.lucit.tech
23 changes: 19 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[![Get professional and fast support](https://raw.githubusercontent.com/LUCIT-Systems-and-Development/unicorn-binance-suite/master/images/support/LUCIT-get-professional-and-fast-support.png)](https://www.lucit.tech/get-support.html)
[![Get a UNICORN Binance Suite License](https://raw.githubusercontent.com/LUCIT-Systems-and-Development/unicorn-binance-suite/master/images/logo/LUCIT-UBS-License-Offer.png)](https://shop.lucit.services)

[![Github](https://img.shields.io/badge/source-github-cbc2c8)](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api)
[![GitHub Release](https://img.shields.io/github/release/LUCIT-Systems-and-Development/unicorn-binance-rest-api.svg?label=github)](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/releases)
Expand All @@ -12,6 +12,7 @@
[![PyPI - Status](https://img.shields.io/pypi/status/unicorn_binance_rest_api.svg)](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/issues)
[![CodeQL](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/actions/workflows/codeql-analysis.yml)
[![Unit Tests](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/actions/workflows/unit-tests.yml)
[![Build and Publish](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/actions/workflows/build_wheels.yml/badge.svg)](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/actions/workflows/build_wheels.yml)
[![Azure Pipelines](https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/unicorn-binance-rest-api-feedstock?branchName=main)](https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=15697&branchName=main)
[![codecov](https://codecov.io/gh/LUCIT-Systems-and-Development/unicorn-binance-rest-api/branch/master/graph/badge.svg?token=5I03AZ3F5S)](https://codecov.io/gh/LUCIT-Systems-and-Development/unicorn-binance-rest-api)
[![Read the Docs](https://img.shields.io/badge/read-%20docs-yellow)](https://unicorn-binance-rest-api.docs.lucit.tech/)
Expand All @@ -33,6 +34,13 @@ com-futures+testnet, us, tr) in a easy, fast, flexible, robust and fully-feature

Part of ['UNICORN Binance Suite'](https://www.lucit.tech/unicorn-binance-suite.html).

## Get a UNICORN Binance Suite License

To run modules of the *UNICORN Binance Suite* you need a
[valid license](https://medium.lucit.tech/how-to-obtain-and-use-a-unicorn-binance-suite-license-key-and-run-the-ubs-module-according-to-best-87b0088124a8#4ca4)!

## Receive Data from Binance REST endpoints

```
from unicorn_binance_rest_api.manager import BinanceRestApiManager
Expand Down Expand Up @@ -123,12 +131,17 @@ If you like the project, please [![star](https://raw.githubusercontent.com/lucit
[GitHub](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api)!

## Installation and Upgrade
The module requires Python 3.7 or above, as it depends on Pythons latest asyncio features for asynchronous/concurrent
processing.

For the PyPy interpreter we offer packages only from Python version 3.9 and higher.

The current dependencies are listed
[here](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/blob/master/requirements.txt).

If you run into errors during the installation take a look [here](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/wiki/Installation).

### A wheel and a source file of the latest release with `pip` from [PyPI](https://pypi.org/project/unicorn-binance-rest-api/)
### A Cython binary, PyPy or source code based CPython wheel of the latest version with `pip` from [PyPI](https://pypi.org/project/unicorn-binance-rest-api/)
`pip install unicorn-binance-rest-api --upgrade`

### A conda package of the latest release with `conda` from [Anaconda](https://anaconda.org/conda-forge/unicorn-binance-rest-api) via [CONDA-FORGE](https://conda-forge.org).
Expand All @@ -143,10 +156,10 @@ Run in bash:
`pip install https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/archive/$(curl -s https://api.github.com/repos/lucit-systems-and-development/unicorn-binance-rest-api/releases/latest | grep -oP '"tag_name": "\K(.*)(?=")').tar.gz --upgrade`

#### Windows
Use the below command with the version (such as 1.9.0) you determined
Use the below command with the version (such as 2.0.0) you determined
[here](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/releases/latest):

`pip install https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/archive/1.9.0.tar.gz --upgrade`
`pip install https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/archive/2.0.0.tar.gz --upgrade`

### From the latest source (dev-stage) with PIP from [Github](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api)
This is not a release version and can not be considered to be stable!
Expand All @@ -159,6 +172,7 @@ or the [current master branch](https://github.com/LUCIT-Systems-and-Development/
and use:

- ./environment.yml
- ./pyproject.toml
- ./requirements.txt
- ./setup.py

Expand All @@ -180,6 +194,7 @@ or the [current master branch](https://github.com/LUCIT-Systems-and-Development/
- [example_version_of_this_package.py](https://github.com/LUCIT-Systems-and-Development/unicorn-binance-rest-api/blob/master/example_version_of_this_package.py)

## Howto
- [How to Obtain and Use a Unicorn Binance Suite License Key and Run the UBS Module According to Best Practice](https://medium.lucit.tech/how-to-obtain-and-use-a-unicorn-binance-suite-license-key-and-run-the-ubs-module-according-to-best-87b0088124a8)
- [Restful Binance Requests in Python with UNICORN Binance REST API](https://medium.lucit.tech/restful-binance-requests-in-python-with-unicorn-binance-rest-api-288f364e92a8)
- [How to Download Klines from Binance using Python?](https://medium.lucit.tech/how-to-download-data-from-binance-using-python-8f1b6e8f19f3)
- [How to Connect to binance.com REST API using Python via a SOCKS5 Proxy](https://medium.lucit.tech/how-to-connect-to-binance-com-rest-api-using-python-via-a-socks5-proxy-638dbbecacfd)
Expand Down
Loading

0 comments on commit b1a2903

Please sign in to comment.