diff options
author | CoprDistGit <infra@openeuler.org> | 2023-04-10 16:25:05 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-04-10 16:25:05 +0000 |
commit | de36d440a4e223357d3c0ee3df76203c4be96cf1 (patch) | |
tree | 03fe32677ca3cccd80fb15e458ccb8c771167f82 | |
parent | 04eb187075cf035473dea400cae0c5ef5e021be5 (diff) |
automatic import of python-guppy3
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-guppy3.spec | 422 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 424 insertions, 0 deletions
@@ -0,0 +1 @@ +/guppy3-3.1.2.tar.gz diff --git a/python-guppy3.spec b/python-guppy3.spec new file mode 100644 index 0000000..964c863 --- /dev/null +++ b/python-guppy3.spec @@ -0,0 +1,422 @@ +%global _empty_manifest_terminate_build 0 +Name: python-guppy3 +Version: 3.1.2 +Release: 1 +Summary: Guppy 3 -- Guppy-PE ported to Python 3 +License: MIT +URL: https://github.com/zhuyifei1999/guppy3/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/89/3f/20b34899b9e29465525f0ed45812ad2c0e71ec329b62f416df3131a154e2/guppy3-3.1.2.tar.gz + + +%description +# Guppy 3 +[](https://travis-ci.com/zhuyifei1999/guppy3) [](https://codecov.io/gh/zhuyifei1999/guppy3) [](https://pypi.org/project/guppy3/) [](https://repology.org/project/python:guppy3/versions) +[](https://pypi.org/project/guppy3/) [](https://pypi.org/project/guppy3/) [](https://pypistats.org/packages/guppy3) [](https://github.com/zhuyifei1999/guppy3/blob/master/LICENSE) + +A Python Programming Environment & Heap analysis toolset. + +This package contains the following subpackages: +* etc - Support modules. Contains especially the Glue protocol module. +* gsl - The Guppy Specification Language implementation. This can be used + to create documents and tests from a common source. +* heapy - The heap analysis toolset. It can be used to find information about + the objects in the heap and display the information in various ways. +* sets - Bitsets and 'nodesets' implemented in C. + +Guppy 3 is a fork of Guppy-PE, created by Sverker Nilsson for Python 2. + +## Requirements + +You should have Python 3.6, 3.7, 3.8, or 3.9. This package is CPython only; +PyPy and other Python implementations are not supported. Python 2 support +can be obtained from [guppy-pe](http://guppy-pe.sourceforge.net/) by +Sverker Nilsson, from which this package is forked. + +To use the graphical browser, Tkinter is needed. +To use the remote monitor, threading must be available. + +## Installation + +Install with pip by: + +``` +pip install guppy3 +``` + +Install with conda by: +``` +conda install -c conda-forge guppy3 +``` + +## Usage + +The following example shows + +1. How to create the session context: `h=hpy()` +2. How to show the reachable objects in the heap: `h.heap()` +4. How to show the shortest paths from the root to the single largest object: `h.heap().byid[0].sp` +3. How to create and show a set of objects: `h.iso(1,[],{})` + +```python +>>> from guppy import hpy; h=hpy() +>>> h.heap() +Partition of a set of 30976 objects. Total size = 3544220 bytes. + Index Count % Size % Cumulative % Kind (class / dict of class) + 0 8292 27 739022 21 739022 21 str + 1 7834 25 625624 18 1364646 39 tuple + 2 2079 7 300624 8 1665270 47 types.CodeType + 3 400 1 297088 8 1962358 55 type + 4 4168 13 279278 8 2241636 63 bytes + 5 1869 6 269136 8 2510772 71 function + 6 400 1 228464 6 2739236 77 dict of type + 7 79 0 139704 4 2878940 81 dict of module + 8 1061 3 93368 3 2972308 84 types.WrapperDescriptorType + 9 172 1 81712 2 3054020 86 dict (no owner) +<89 more rows. Type e.g. '_.more' to view.> +>>> h.heap().byid[0].sp + 0: h.Root.i0_modules['os'].__dict__ +>>> h.iso(1,[],{}) +Partition of a set of 3 objects. Total size = 348 bytes. + Index Count % Size % Cumulative % Kind (class / dict of class) + 0 1 33 248 71 248 71 dict (no owner) + 1 1 33 72 21 320 92 list + 2 1 33 28 8 348 100 int +>>> +``` + +People have written awesome posts on how to use this toolset, including: +* [How to use guppy/heapy for tracking down memory usage](https://smira.ru/wp-content/uploads/2011/08/heapy.html) +* [Debugging Django memory leak with TrackRefs and Guppy](https://opensourcehacker.com/2008/03/07/debugging-django-memory-leak-with-trackrefs-and-guppy/) +* [Diagnosing Memory "Leaks" in Python](https://chase-seibert.github.io/blog/2013/08/03/diagnosing-memory-leaks-python.html) +* [Digging into python memory issues in ckan with heapy](https://leastsignificant.blogspot.com/2015/06/digging-into-python-memory-issues-in.html) + +Formal and API documentation are [also available](https://zhuyifei1999.github.io/guppy3/). + +## Contributing + +Issues and pull requests are welcome. You may also ask for help on using this +toolset; however, in such cases, we will only provide guidance, and not profile +your code for you. + +Please make sure to update tests as appropriate. + +### Testing + +To test if the heapy build and installation was ok, you can do: + +```python +>>> from guppy import hpy +>>> hpy().test() +Testing sets +Test #0 +Test #1 +Test #2 +... +``` + +There will be several more tests. Some tests may take a while. + +## License + +Copyright (C) 2005-2013 Sverker Nilsson, S. Nilsson Computer System AB +Copyright (C) 2019-2021 YiFei Zhu + +The right is granted to copy, use, modify and redistribute this code +according to the rules in what is commonly referred to as an MIT +license. + +*** USE AT YOUR OWN RISK AND BE AWARE THAT THIS IS AN EARLY RELEASE *** + +%package -n python3-guppy3 +Summary: Guppy 3 -- Guppy-PE ported to Python 3 +Provides: python-guppy3 +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +BuildRequires: python3-cffi +BuildRequires: gcc +BuildRequires: gdb +%description -n python3-guppy3 +# Guppy 3 +[](https://travis-ci.com/zhuyifei1999/guppy3) [](https://codecov.io/gh/zhuyifei1999/guppy3) [](https://pypi.org/project/guppy3/) [](https://repology.org/project/python:guppy3/versions) +[](https://pypi.org/project/guppy3/) [](https://pypi.org/project/guppy3/) [](https://pypistats.org/packages/guppy3) [](https://github.com/zhuyifei1999/guppy3/blob/master/LICENSE) + +A Python Programming Environment & Heap analysis toolset. + +This package contains the following subpackages: +* etc - Support modules. Contains especially the Glue protocol module. +* gsl - The Guppy Specification Language implementation. This can be used + to create documents and tests from a common source. +* heapy - The heap analysis toolset. It can be used to find information about + the objects in the heap and display the information in various ways. +* sets - Bitsets and 'nodesets' implemented in C. + +Guppy 3 is a fork of Guppy-PE, created by Sverker Nilsson for Python 2. + +## Requirements + +You should have Python 3.6, 3.7, 3.8, or 3.9. This package is CPython only; +PyPy and other Python implementations are not supported. Python 2 support +can be obtained from [guppy-pe](http://guppy-pe.sourceforge.net/) by +Sverker Nilsson, from which this package is forked. + +To use the graphical browser, Tkinter is needed. +To use the remote monitor, threading must be available. + +## Installation + +Install with pip by: + +``` +pip install guppy3 +``` + +Install with conda by: +``` +conda install -c conda-forge guppy3 +``` + +## Usage + +The following example shows + +1. How to create the session context: `h=hpy()` +2. How to show the reachable objects in the heap: `h.heap()` +4. How to show the shortest paths from the root to the single largest object: `h.heap().byid[0].sp` +3. How to create and show a set of objects: `h.iso(1,[],{})` + +```python +>>> from guppy import hpy; h=hpy() +>>> h.heap() +Partition of a set of 30976 objects. Total size = 3544220 bytes. + Index Count % Size % Cumulative % Kind (class / dict of class) + 0 8292 27 739022 21 739022 21 str + 1 7834 25 625624 18 1364646 39 tuple + 2 2079 7 300624 8 1665270 47 types.CodeType + 3 400 1 297088 8 1962358 55 type + 4 4168 13 279278 8 2241636 63 bytes + 5 1869 6 269136 8 2510772 71 function + 6 400 1 228464 6 2739236 77 dict of type + 7 79 0 139704 4 2878940 81 dict of module + 8 1061 3 93368 3 2972308 84 types.WrapperDescriptorType + 9 172 1 81712 2 3054020 86 dict (no owner) +<89 more rows. Type e.g. '_.more' to view.> +>>> h.heap().byid[0].sp + 0: h.Root.i0_modules['os'].__dict__ +>>> h.iso(1,[],{}) +Partition of a set of 3 objects. Total size = 348 bytes. + Index Count % Size % Cumulative % Kind (class / dict of class) + 0 1 33 248 71 248 71 dict (no owner) + 1 1 33 72 21 320 92 list + 2 1 33 28 8 348 100 int +>>> +``` + +People have written awesome posts on how to use this toolset, including: +* [How to use guppy/heapy for tracking down memory usage](https://smira.ru/wp-content/uploads/2011/08/heapy.html) +* [Debugging Django memory leak with TrackRefs and Guppy](https://opensourcehacker.com/2008/03/07/debugging-django-memory-leak-with-trackrefs-and-guppy/) +* [Diagnosing Memory "Leaks" in Python](https://chase-seibert.github.io/blog/2013/08/03/diagnosing-memory-leaks-python.html) +* [Digging into python memory issues in ckan with heapy](https://leastsignificant.blogspot.com/2015/06/digging-into-python-memory-issues-in.html) + +Formal and API documentation are [also available](https://zhuyifei1999.github.io/guppy3/). + +## Contributing + +Issues and pull requests are welcome. You may also ask for help on using this +toolset; however, in such cases, we will only provide guidance, and not profile +your code for you. + +Please make sure to update tests as appropriate. + +### Testing + +To test if the heapy build and installation was ok, you can do: + +```python +>>> from guppy import hpy +>>> hpy().test() +Testing sets +Test #0 +Test #1 +Test #2 +... +``` + +There will be several more tests. Some tests may take a while. + +## License + +Copyright (C) 2005-2013 Sverker Nilsson, S. Nilsson Computer System AB +Copyright (C) 2019-2021 YiFei Zhu + +The right is granted to copy, use, modify and redistribute this code +according to the rules in what is commonly referred to as an MIT +license. + +*** USE AT YOUR OWN RISK AND BE AWARE THAT THIS IS AN EARLY RELEASE *** + +%package help +Summary: Development documents and examples for guppy3 +Provides: python3-guppy3-doc +%description help +# Guppy 3 +[](https://travis-ci.com/zhuyifei1999/guppy3) [](https://codecov.io/gh/zhuyifei1999/guppy3) [](https://pypi.org/project/guppy3/) [](https://repology.org/project/python:guppy3/versions) +[](https://pypi.org/project/guppy3/) [](https://pypi.org/project/guppy3/) [](https://pypistats.org/packages/guppy3) [](https://github.com/zhuyifei1999/guppy3/blob/master/LICENSE) + +A Python Programming Environment & Heap analysis toolset. + +This package contains the following subpackages: +* etc - Support modules. Contains especially the Glue protocol module. +* gsl - The Guppy Specification Language implementation. This can be used + to create documents and tests from a common source. +* heapy - The heap analysis toolset. It can be used to find information about + the objects in the heap and display the information in various ways. +* sets - Bitsets and 'nodesets' implemented in C. + +Guppy 3 is a fork of Guppy-PE, created by Sverker Nilsson for Python 2. + +## Requirements + +You should have Python 3.6, 3.7, 3.8, or 3.9. This package is CPython only; +PyPy and other Python implementations are not supported. Python 2 support +can be obtained from [guppy-pe](http://guppy-pe.sourceforge.net/) by +Sverker Nilsson, from which this package is forked. + +To use the graphical browser, Tkinter is needed. +To use the remote monitor, threading must be available. + +## Installation + +Install with pip by: + +``` +pip install guppy3 +``` + +Install with conda by: +``` +conda install -c conda-forge guppy3 +``` + +## Usage + +The following example shows + +1. How to create the session context: `h=hpy()` +2. How to show the reachable objects in the heap: `h.heap()` +4. How to show the shortest paths from the root to the single largest object: `h.heap().byid[0].sp` +3. How to create and show a set of objects: `h.iso(1,[],{})` + +```python +>>> from guppy import hpy; h=hpy() +>>> h.heap() +Partition of a set of 30976 objects. Total size = 3544220 bytes. + Index Count % Size % Cumulative % Kind (class / dict of class) + 0 8292 27 739022 21 739022 21 str + 1 7834 25 625624 18 1364646 39 tuple + 2 2079 7 300624 8 1665270 47 types.CodeType + 3 400 1 297088 8 1962358 55 type + 4 4168 13 279278 8 2241636 63 bytes + 5 1869 6 269136 8 2510772 71 function + 6 400 1 228464 6 2739236 77 dict of type + 7 79 0 139704 4 2878940 81 dict of module + 8 1061 3 93368 3 2972308 84 types.WrapperDescriptorType + 9 172 1 81712 2 3054020 86 dict (no owner) +<89 more rows. Type e.g. '_.more' to view.> +>>> h.heap().byid[0].sp + 0: h.Root.i0_modules['os'].__dict__ +>>> h.iso(1,[],{}) +Partition of a set of 3 objects. Total size = 348 bytes. + Index Count % Size % Cumulative % Kind (class / dict of class) + 0 1 33 248 71 248 71 dict (no owner) + 1 1 33 72 21 320 92 list + 2 1 33 28 8 348 100 int +>>> +``` + +People have written awesome posts on how to use this toolset, including: +* [How to use guppy/heapy for tracking down memory usage](https://smira.ru/wp-content/uploads/2011/08/heapy.html) +* [Debugging Django memory leak with TrackRefs and Guppy](https://opensourcehacker.com/2008/03/07/debugging-django-memory-leak-with-trackrefs-and-guppy/) +* [Diagnosing Memory "Leaks" in Python](https://chase-seibert.github.io/blog/2013/08/03/diagnosing-memory-leaks-python.html) +* [Digging into python memory issues in ckan with heapy](https://leastsignificant.blogspot.com/2015/06/digging-into-python-memory-issues-in.html) + +Formal and API documentation are [also available](https://zhuyifei1999.github.io/guppy3/). + +## Contributing + +Issues and pull requests are welcome. You may also ask for help on using this +toolset; however, in such cases, we will only provide guidance, and not profile +your code for you. + +Please make sure to update tests as appropriate. + +### Testing + +To test if the heapy build and installation was ok, you can do: + +```python +>>> from guppy import hpy +>>> hpy().test() +Testing sets +Test #0 +Test #1 +Test #2 +... +``` + +There will be several more tests. Some tests may take a while. + +## License + +Copyright (C) 2005-2013 Sverker Nilsson, S. Nilsson Computer System AB +Copyright (C) 2019-2021 YiFei Zhu + +The right is granted to copy, use, modify and redistribute this code +according to the rules in what is commonly referred to as an MIT +license. + +*** USE AT YOUR OWN RISK AND BE AWARE THAT THIS IS AN EARLY RELEASE *** + +%prep +%autosetup -n guppy3-3.1.2 + +%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-guppy3 -f filelist.lst +%dir %{python3_sitearch}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 3.1.2-1 +- Package Spec generated @@ -0,0 +1 @@ +f79ecbb9f1640d6e7c1adc531271d63b guppy3-3.1.2.tar.gz |