1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
%global _empty_manifest_terminate_build 0
Name: python-pyjack
Version: 0.3.2
Release: 1
Summary: Tools to reversibly replace functions / objects with proxy functions / objects for debug, testing, monkey-patching.
License: MIT
URL: http://packages.python.org/pyjack/
Source0: https://mirrors.aliyun.com/pypi/web/packages/1a/8f/b51bba149c353b55a5ccea1d7c3040be22913d2d5bb9057f992e1e87784e/pyjack-0.3.2.tar.gz
BuildArch: noarch
%description
pyjack is a debug/test/monkey-patching toolset that allows you to reversibly
replace *all* references to a function or object in memory with a
proxy function or object. pyjack has two major functions:
* function "connect" can connect a 'proxy' function to almost
any python function/method. This proxy function is called instead of the
original function. However, the original function is passed to the proxy
function along with all args, kwargs so you can do things like:
- Modify the args, kwargs first, print a debug message, then call the original
function
- Not call the function, rather just log it and print a debug message
etc. etc. -- it's all up to you.
* function "replace_all_refs" can be used to replace all
references to a object with references to another object. This replaces all
references in the _entire_ memory space. You get one final reference to the
original reference, so it is possible to call this function again to restore
the memory state back to it's original state.
%package -n python3-pyjack
Summary: Tools to reversibly replace functions / objects with proxy functions / objects for debug, testing, monkey-patching.
Provides: python-pyjack
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-pyjack
pyjack is a debug/test/monkey-patching toolset that allows you to reversibly
replace *all* references to a function or object in memory with a
proxy function or object. pyjack has two major functions:
* function "connect" can connect a 'proxy' function to almost
any python function/method. This proxy function is called instead of the
original function. However, the original function is passed to the proxy
function along with all args, kwargs so you can do things like:
- Modify the args, kwargs first, print a debug message, then call the original
function
- Not call the function, rather just log it and print a debug message
etc. etc. -- it's all up to you.
* function "replace_all_refs" can be used to replace all
references to a object with references to another object. This replaces all
references in the _entire_ memory space. You get one final reference to the
original reference, so it is possible to call this function again to restore
the memory state back to it's original state.
%package help
Summary: Development documents and examples for pyjack
Provides: python3-pyjack-doc
%description help
pyjack is a debug/test/monkey-patching toolset that allows you to reversibly
replace *all* references to a function or object in memory with a
proxy function or object. pyjack has two major functions:
* function "connect" can connect a 'proxy' function to almost
any python function/method. This proxy function is called instead of the
original function. However, the original function is passed to the proxy
function along with all args, kwargs so you can do things like:
- Modify the args, kwargs first, print a debug message, then call the original
function
- Not call the function, rather just log it and print a debug message
etc. etc. -- it's all up to you.
* function "replace_all_refs" can be used to replace all
references to a object with references to another object. This replaces all
references in the _entire_ memory space. You get one final reference to the
original reference, so it is possible to call this function again to restore
the memory state back to it's original state.
%prep
%autosetup -n pyjack-0.3.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-pyjack -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Tue Jun 20 2023 Python_Bot <Python_Bot@openeuler.org> - 0.3.2-1
- Package Spec generated
|