1- [build-system ]
1+ [project ]
2+ name = " memray"
3+ version = " 1.11.0"
4+ description = " A memory profiler for Python applications"
5+ readme = " README.md"
6+ requires-python = " >=3.7.0"
7+ license = { text = " Apache 2.0" }
8+ authors = [{ name = " Pablo Galindo Salgado" }]
9+ classifiers = [
10+ " Intended Audience :: Developers" ,
11+ " License :: OSI Approved :: Apache Software License" ,
12+ " Operating System :: POSIX :: Linux" ,
13+ " Operating System :: MacOS" ,
14+ " Programming Language :: Python :: 3.8" ,
15+ " Programming Language :: Python :: 3.9" ,
16+ " Programming Language :: Python :: 3.10" ,
17+ " Programming Language :: Python :: 3.11" ,
18+ " Programming Language :: Python :: 3.12" ,
19+ " Programming Language :: Python :: Implementation :: CPython" ,
20+ " Topic :: Software Development :: Debuggers" ,
21+ ]
22+ dependencies = [
23+ " jinja2 >= 2.9" ,
24+ " typing_extensions; python_version < '3.8.0'" ,
25+ " rich >= 11.2.0" ,
26+ " textual >= 0.41.0" ,
27+ ]
228
3- requires = [
4- " setuptools" ,
5- " wheel" ,
6- " pkgconfig" ,
7- " Cython>=0.29.31"
29+ [project .optional-dependencies ]
30+ test = [
31+ " Cython" ,
32+ " greenlet; python_version < '3.12'" ,
33+ " pytest" ,
34+ " pytest-cov" ,
35+ " ipython" ,
36+ " setuptools; python_version >= '3.12'" ,
37+ " pytest-textual-snapshot" ,
38+ ]
39+ docs = [
40+ " IPython" ,
41+ " bump2version" ,
42+ " sphinx" ,
43+ " furo" ,
44+ " sphinx-argparse" ,
45+ " towncrier" ,
46+ ]
47+ lint = [" black" , " flake8" , " isort" , " mypy" , " check-manifest" ]
48+ benchmark = [" asv" ]
49+ dev = [
50+ " Cython" ,
51+ " greenlet; python_version < '3.12'" ,
52+ " pytest" ,
53+ " pytest-cov" ,
54+ " ipython" ,
55+ " setuptools; python_version >= '3.12'" ,
56+ " pytest-textual-snapshot" ,
57+ " black" ,
58+ " flake8" ,
59+ " isort" ,
60+ " mypy" ,
61+ " check-manifest" ,
62+ " IPython" ,
63+ " bump2version" ,
64+ " sphinx" ,
65+ " furo" ,
66+ " sphinx-argparse" ,
67+ " towncrier" ,
68+ " asv" ,
869]
970
10- build-backend = ' setuptools.build_meta'
71+ [project .urls ]
72+ Homepage = " https://github.com/bloomberg/memray"
73+
74+ [project .scripts ]
75+ memray = " memray.__main__:main"
76+ "memray3.7" = " memray.__main__:main"
77+ "memray3.8" = " memray.__main__:main"
78+ "memray3.9" = " memray.__main__:main"
79+ "memray3.10" = " memray.__main__:main"
80+ "memray3.11" = " memray.__main__:main"
81+ "memray3.12" = " memray.__main__:main"
82+
83+ [build-system ]
84+ requires = [" scikit-build-core" , " cython" ]
85+ build-backend = " scikit_build_core.build"
86+
87+ [tool .scikit-build ]
88+ wheel.packages = [" src/memray" ]
89+
1190
1291[tool .ruff ]
1392line-length = 95
@@ -17,7 +96,7 @@ fix = true
1796[tool .ruff .isort ]
1897force-single-line = true
1998known-first-party = [" memray" ]
20- known-third-party = [" rich" , " elftools" , " pytest" ]
99+ known-third-party = [" rich" , " elftools" , " pytest" ]
21100
22101[tool .ruff .per-file-ignores ]
23102"benchmarks/*" = [" C4" , " PERF" ]
@@ -29,36 +108,32 @@ include_trailing_comma = true
29108force_grid_wrap = 0
30109use_parentheses = true
31110line_length = 88
32- known_first_party = [" memray" ]
33- known_third_party = [" rich" , " elftools" , " pytest" ]
111+ known_first_party = [" memray" ]
112+ known_third_party = [" rich" , " elftools" , " pytest" ]
34113
35114[tool .towncrier ]
36115package = " memray"
37116package_dir = " src"
38117filename = " NEWS.rst"
39118directory = " news"
40119type = [
41- { name = " Features" , directory = " feature" , showcontent = true },
120+ { name = " Features" , directory = " feature" , showcontent = true },
42121 { name = " Deprecations and Removals" , directory = " removal" , showcontent = true },
43- { name = " Bug Fixes" , directory = " bugfix" , showcontent = true },
44- { name = " Improved Documentation" , directory = " doc" , showcontent = true },
45- { name = " Miscellaneous" , directory = " misc" , showcontent = true },
122+ { name = " Bug Fixes" , directory = " bugfix" , showcontent = true },
123+ { name = " Improved Documentation" , directory = " doc" , showcontent = true },
124+ { name = " Miscellaneous" , directory = " misc" , showcontent = true },
46125]
47126underlines = " -~"
48127
49128[tool .pytest .ini_options ]
50- markers = [
51- " valgrind" ,
52- ]
129+ markers = [" valgrind" ]
53130xfail_strict = true
54131
55132[tool .check-manifest ]
56- ignore = [
57- " src/memray/reporters/templates/assets/*.js" ,
58- ]
133+ ignore = [" src/memray/reporters/templates/assets/*.js" ]
59134
60135[tool .mypy ]
61- exclude = " tests/integration/(native_extension|multithreaded_extension)/"
136+ exclude = " tests/integration/(native_extension|multithreaded_extension)/"
62137
63138[tool .cibuildwheel ]
64139build = [" cp38-*" , " cp39-*" , " cp310-*" , " cp311-*" ]
@@ -82,26 +157,19 @@ before-all = [
82157 " git clone --depth 1 --branch v1.9.4 https://github.com/lz4/lz4 lz4" ,
83158 " cd lz4" ,
84159 " make" ,
85- " make install DESTDIR=/tmp/lz4_install"
160+ " make install DESTDIR=/tmp/lz4_install" ,
86161]
87162before-test = [
88163 " codesign --remove-signature /Library/Frameworks/Python.framework/Versions/*/bin/python3 || true" ,
89164 " codesign --remove-signature /Library/Frameworks/Python.framework/Versions/*/Resources/Python.app/Contents/MacOS/Python || true" ,
90165]
91166
92167[tool .coverage .run ]
93- plugins = [
94- " Cython.Coverage" ,
95- ]
96- source = [
97- " src/memray" ,
98- " tests/" ,
99- ]
168+ plugins = [" Cython.Coverage" ]
169+ source = [" src/memray" , " tests/" ]
100170branch = true
101171parallel = true
102- omit = [
103- " *__init__.py" ,
104- ]
172+ omit = [" *__init__.py" ]
105173
106174[tool .coverage .report ]
107175skip_covered = true
@@ -111,6 +179,4 @@ show_missing = true
111179# Override the default linux before-all for musl linux
112180[[tool .cibuildwheel .overrides ]]
113181select = " *-musllinux*"
114- before-all = [
115- " apk add --update libunwind-dev lz4-dev gdb lldb" ,
116- ]
182+ before-all = [" apk add --update libunwind-dev lz4-dev gdb lldb" ]
0 commit comments