diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-05-17 03:00:38 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-05-17 03:00:38 +0000 |
| commit | 706e2a0728fc80476a3c5a6d420f945c1fbacc94 (patch) | |
| tree | cfcc7cae75c2afc86f8a5f088521e2efaf0e86cd /python-circleguard.spec | |
| parent | e9637ca7f5b6c4b38d030366808285797510c4f2 (diff) | |
automatic import of python-circleguard
Diffstat (limited to 'python-circleguard.spec')
| -rw-r--r-- | python-circleguard.spec | 308 |
1 files changed, 308 insertions, 0 deletions
diff --git a/python-circleguard.spec b/python-circleguard.spec new file mode 100644 index 0000000..9365410 --- /dev/null +++ b/python-circleguard.spec @@ -0,0 +1,308 @@ +%global _empty_manifest_terminate_build 0 +Name: python-circleguard +Version: 5.4.0 +Release: 1 +Summary: A utilities library for osu!. Provides support for parsing replays from a file or from the api, as well as support for unstable rate, hits, similarity, and frametime calculations. +License: GNU General Public License v3 (GPLv3) +URL: https://github.com/circleguard/circlecore +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/55/9d/ecb5f191b7d278a6c562b084e90c9035a06c94eca5d20869f6193afb4aa6/circleguard-5.4.0.tar.gz +BuildArch: noarch + +Requires: python3-osrparse +Requires: python3-ossapi +Requires: python3-wtc +Requires: python3-numpy +Requires: python3-requests +Requires: python3-slider +Requires: python3-scipy +Requires: python3-matplotlib + +%description +<img src="readme_resources/logo.png" alt="logo" width="200" height="200"/> + +[](https://pypi.org/project/circleguard/) + +# Circlecore ([documentation](https://circleguard.github.io/circlecore/)) + +Circlecore is a utilities library for osu!. Features include: + +* Unstable Rate calculation +* Judgments calculation (classifying all hitobjects into misses, hit300s, hit100s, hit50s, or sliderbreaks) +* Similarity calculation between two replays, for replay stealing detection +* Frametime calculation, for timewarp detection +* Jerky, suspicious movement detection (called Snaps) + +Circlecore is used by [Circleguard](https://github.com/circleguard/circleguard), a replay analysis tool. + +Circlecore is developed and maintained by: + +* [tybug](https://github.com/tybug) +* [samuelhklumpers](https://github.com/samuelhklumpers) + +## Installation + +Circlecore can be installed from pip: + +```bash +pip install circleguard +``` + +This documentation refers to the project as `circlecore` to differentiate it from our organization [Circleguard](https://github.com/circleguard) and the replay analysis tool [Circleguard](https://github.com/circleguard/circleguard). However, `circlecore` is installed from pypi with the name `circleguard`, and is imported as such in code (`import circleguard`). + +## Links + +Github: <https://github.com/circleguard/circlecore> <br/> +Documentation: <https://circleguard.github.io/circlecore/> <br/> +Discord: <https://discord.gg/VNnkTjm> <br/> + +## Usage + +We have a full tutorial and documentation at <https://circleguard.github.io/circlecore/>. If you really want to jump right in, below is a quickstart guide: + +```python +from circleguard import * + +# replace "key" with your api key +cg = Circleguard("key") +# replay on http://osu.ppy.sh/b/221777 by http://osu.ppy.sh/u/2757689 +replay = ReplayMap(221777, 2757689) + +print(cg.ur(replay)) # unstable rate +print(cg.frametime(replay)) # average frametime +print(cg.frametimes(replay)) # full frametime list +print(cg.hits(replay)) # where the replay hits hitobjects +print(cg.snaps(replay)) # any jerky/suspicious movement + +replay2 = ReplayMap(221777, 4196808) +print(cg.similarity(replay, replay2)) # how similar the replays are + +# ReplayMap isn't the only way to represent replays; we can also +# get a beatmap's top 3 plays +map_ = cg.Map(221777, span="1-3") +# or a User's fifteenth and twentieth best plays +user = cg.User(124493, span="15, 20") +# or a local replay +replay3 = ReplayPath("/path/to/local/osr/replay.osr") +# and more. You can find them all at +# https://circleguard.github.io/circlecore/appendix.html#circleguard.loadables.Loadable + +# maps and users can be iterated over +for r in map_: + print(cg.ur(r)) +``` + +## Contributing + +Join [our discord](https://discord.gg/VNnkTjm) and ask how you can help, or look around for open issues which interest you and tackle those. Pull requests are welcome! + + +%package -n python3-circleguard +Summary: A utilities library for osu!. Provides support for parsing replays from a file or from the api, as well as support for unstable rate, hits, similarity, and frametime calculations. +Provides: python-circleguard +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-circleguard +<img src="readme_resources/logo.png" alt="logo" width="200" height="200"/> + +[](https://pypi.org/project/circleguard/) + +# Circlecore ([documentation](https://circleguard.github.io/circlecore/)) + +Circlecore is a utilities library for osu!. Features include: + +* Unstable Rate calculation +* Judgments calculation (classifying all hitobjects into misses, hit300s, hit100s, hit50s, or sliderbreaks) +* Similarity calculation between two replays, for replay stealing detection +* Frametime calculation, for timewarp detection +* Jerky, suspicious movement detection (called Snaps) + +Circlecore is used by [Circleguard](https://github.com/circleguard/circleguard), a replay analysis tool. + +Circlecore is developed and maintained by: + +* [tybug](https://github.com/tybug) +* [samuelhklumpers](https://github.com/samuelhklumpers) + +## Installation + +Circlecore can be installed from pip: + +```bash +pip install circleguard +``` + +This documentation refers to the project as `circlecore` to differentiate it from our organization [Circleguard](https://github.com/circleguard) and the replay analysis tool [Circleguard](https://github.com/circleguard/circleguard). However, `circlecore` is installed from pypi with the name `circleguard`, and is imported as such in code (`import circleguard`). + +## Links + +Github: <https://github.com/circleguard/circlecore> <br/> +Documentation: <https://circleguard.github.io/circlecore/> <br/> +Discord: <https://discord.gg/VNnkTjm> <br/> + +## Usage + +We have a full tutorial and documentation at <https://circleguard.github.io/circlecore/>. If you really want to jump right in, below is a quickstart guide: + +```python +from circleguard import * + +# replace "key" with your api key +cg = Circleguard("key") +# replay on http://osu.ppy.sh/b/221777 by http://osu.ppy.sh/u/2757689 +replay = ReplayMap(221777, 2757689) + +print(cg.ur(replay)) # unstable rate +print(cg.frametime(replay)) # average frametime +print(cg.frametimes(replay)) # full frametime list +print(cg.hits(replay)) # where the replay hits hitobjects +print(cg.snaps(replay)) # any jerky/suspicious movement + +replay2 = ReplayMap(221777, 4196808) +print(cg.similarity(replay, replay2)) # how similar the replays are + +# ReplayMap isn't the only way to represent replays; we can also +# get a beatmap's top 3 plays +map_ = cg.Map(221777, span="1-3") +# or a User's fifteenth and twentieth best plays +user = cg.User(124493, span="15, 20") +# or a local replay +replay3 = ReplayPath("/path/to/local/osr/replay.osr") +# and more. You can find them all at +# https://circleguard.github.io/circlecore/appendix.html#circleguard.loadables.Loadable + +# maps and users can be iterated over +for r in map_: + print(cg.ur(r)) +``` + +## Contributing + +Join [our discord](https://discord.gg/VNnkTjm) and ask how you can help, or look around for open issues which interest you and tackle those. Pull requests are welcome! + + +%package help +Summary: Development documents and examples for circleguard +Provides: python3-circleguard-doc +%description help +<img src="readme_resources/logo.png" alt="logo" width="200" height="200"/> + +[](https://pypi.org/project/circleguard/) + +# Circlecore ([documentation](https://circleguard.github.io/circlecore/)) + +Circlecore is a utilities library for osu!. Features include: + +* Unstable Rate calculation +* Judgments calculation (classifying all hitobjects into misses, hit300s, hit100s, hit50s, or sliderbreaks) +* Similarity calculation between two replays, for replay stealing detection +* Frametime calculation, for timewarp detection +* Jerky, suspicious movement detection (called Snaps) + +Circlecore is used by [Circleguard](https://github.com/circleguard/circleguard), a replay analysis tool. + +Circlecore is developed and maintained by: + +* [tybug](https://github.com/tybug) +* [samuelhklumpers](https://github.com/samuelhklumpers) + +## Installation + +Circlecore can be installed from pip: + +```bash +pip install circleguard +``` + +This documentation refers to the project as `circlecore` to differentiate it from our organization [Circleguard](https://github.com/circleguard) and the replay analysis tool [Circleguard](https://github.com/circleguard/circleguard). However, `circlecore` is installed from pypi with the name `circleguard`, and is imported as such in code (`import circleguard`). + +## Links + +Github: <https://github.com/circleguard/circlecore> <br/> +Documentation: <https://circleguard.github.io/circlecore/> <br/> +Discord: <https://discord.gg/VNnkTjm> <br/> + +## Usage + +We have a full tutorial and documentation at <https://circleguard.github.io/circlecore/>. If you really want to jump right in, below is a quickstart guide: + +```python +from circleguard import * + +# replace "key" with your api key +cg = Circleguard("key") +# replay on http://osu.ppy.sh/b/221777 by http://osu.ppy.sh/u/2757689 +replay = ReplayMap(221777, 2757689) + +print(cg.ur(replay)) # unstable rate +print(cg.frametime(replay)) # average frametime +print(cg.frametimes(replay)) # full frametime list +print(cg.hits(replay)) # where the replay hits hitobjects +print(cg.snaps(replay)) # any jerky/suspicious movement + +replay2 = ReplayMap(221777, 4196808) +print(cg.similarity(replay, replay2)) # how similar the replays are + +# ReplayMap isn't the only way to represent replays; we can also +# get a beatmap's top 3 plays +map_ = cg.Map(221777, span="1-3") +# or a User's fifteenth and twentieth best plays +user = cg.User(124493, span="15, 20") +# or a local replay +replay3 = ReplayPath("/path/to/local/osr/replay.osr") +# and more. You can find them all at +# https://circleguard.github.io/circlecore/appendix.html#circleguard.loadables.Loadable + +# maps and users can be iterated over +for r in map_: + print(cg.ur(r)) +``` + +## Contributing + +Join [our discord](https://discord.gg/VNnkTjm) and ask how you can help, or look around for open issues which interest you and tackle those. Pull requests are welcome! + + +%prep +%autosetup -n circleguard-5.4.0 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-circleguard -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Wed May 17 2023 Python_Bot <Python_Bot@openeuler.org> - 5.4.0-1 +- Package Spec generated |
