···11+# Byte-compiled / optimized / DLL files
22+__pycache__/
33+*.py[codz]
44+*$py.class
55+66+# C extensions
77+*.so
88+99+# Distribution / packaging
1010+.Python
1111+build/
1212+develop-eggs/
1313+dist/
1414+downloads/
1515+eggs/
1616+.eggs/
1717+lib/
1818+lib64/
1919+parts/
2020+sdist/
2121+var/
2222+wheels/
2323+share/python-wheels/
2424+*.egg-info/
2525+.installed.cfg
2626+*.egg
2727+MANIFEST
2828+2929+# PyInstaller
3030+# Usually these files are written by a python script from a template
3131+# before PyInstaller builds the exe, so as to inject date/other infos into it.
3232+*.manifest
3333+*.spec
3434+3535+# Installer logs
3636+pip-log.txt
3737+pip-delete-this-directory.txt
3838+3939+# Unit test / coverage reports
4040+htmlcov/
4141+.tox/
4242+.nox/
4343+.coverage
4444+.coverage.*
4545+.cache
4646+nosetests.xml
4747+coverage.xml
4848+*.cover
4949+*.py.cover
5050+.hypothesis/
5151+.pytest_cache/
5252+cover/
5353+5454+# Translations
5555+*.mo
5656+*.pot
5757+5858+# Django stuff:
5959+*.log
6060+local_settings.py
6161+db.sqlite3
6262+db.sqlite3-journal
6363+6464+# Flask stuff:
6565+instance/
6666+.webassets-cache
6767+6868+# Scrapy stuff:
6969+.scrapy
7070+7171+# Sphinx documentation
7272+docs/_build/
7373+7474+# PyBuilder
7575+.pybuilder/
7676+target/
7777+7878+# Jupyter Notebook
7979+.ipynb_checkpoints
8080+8181+# IPython
8282+profile_default/
8383+ipython_config.py
8484+8585+# pyenv
8686+# For a library or package, you might want to ignore these files since the code is
8787+# intended to run in multiple environments; otherwise, check them in:
8888+# .python-version
8989+9090+# pipenv
9191+# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
9292+# However, in case of collaboration, if having platform-specific dependencies or dependencies
9393+# having no cross-platform support, pipenv may install dependencies that don't work, or not
9494+# install all needed dependencies.
9595+# Pipfile.lock
9696+9797+# UV
9898+# Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
9999+# This is especially recommended for binary packages to ensure reproducibility, and is more
100100+# commonly ignored for libraries.
101101+# uv.lock
102102+103103+# poetry
104104+# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
105105+# This is especially recommended for binary packages to ensure reproducibility, and is more
106106+# commonly ignored for libraries.
107107+# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
108108+# poetry.lock
109109+# poetry.toml
110110+111111+# pdm
112112+# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
113113+# pdm recommends including project-wide configuration in pdm.toml, but excluding .pdm-python.
114114+# https://pdm-project.org/en/latest/usage/project/#working-with-version-control
115115+# pdm.lock
116116+# pdm.toml
117117+.pdm-python
118118+.pdm-build/
119119+120120+# pixi
121121+# Similar to Pipfile.lock, it is generally recommended to include pixi.lock in version control.
122122+# pixi.lock
123123+# Pixi creates a virtual environment in the .pixi directory, just like venv module creates one
124124+# in the .venv directory. It is recommended not to include this directory in version control.
125125+.pixi
126126+127127+# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
128128+__pypackages__/
129129+130130+# Celery stuff
131131+celerybeat-schedule
132132+celerybeat.pid
133133+134134+# Redis
135135+*.rdb
136136+*.aof
137137+*.pid
138138+139139+# RabbitMQ
140140+mnesia/
141141+rabbitmq/
142142+rabbitmq-data/
143143+144144+# ActiveMQ
145145+activemq-data/
146146+147147+# SageMath parsed files
148148+*.sage.py
149149+150150+# Environments
151151+.env
152152+.envrc
153153+.venv
154154+env/
155155+venv/
156156+ENV/
157157+env.bak/
158158+venv.bak/
159159+160160+# Spyder project settings
161161+.spyderproject
162162+.spyproject
163163+164164+# Rope project settings
165165+.ropeproject
166166+167167+# mkdocs documentation
168168+/site
169169+170170+# mypy
171171+.mypy_cache/
172172+.dmypy.json
173173+dmypy.json
174174+175175+# Pyre type checker
176176+.pyre/
177177+178178+# pytype static type analyzer
179179+.pytype/
180180+181181+# Cython debug symbols
182182+cython_debug/
183183+184184+# PyCharm
185185+# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
186186+# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
187187+# and can be added to the global gitignore or merged into this file. For a more nuclear
188188+# option (not recommended) you can uncomment the following to ignore the entire idea folder.
189189+# .idea/
190190+191191+# Abstra
192192+# Abstra is an AI-powered process automation framework.
193193+# Ignore directories containing user credentials, local state, and settings.
194194+# Learn more at https://abstra.io/docs
195195+.abstra/
196196+197197+# Visual Studio Code
198198+# Visual Studio Code specific template is maintained in a separate VisualStudioCode.gitignore
199199+# that can be found at https://github.com/github/gitignore/blob/main/Global/VisualStudioCode.gitignore
200200+# and can be added to the global gitignore or merged into this file. However, if you prefer,
201201+# you could uncomment the following to ignore the entire vscode folder
202202+# .vscode/
203203+204204+# Ruff stuff:
205205+.ruff_cache/
206206+207207+# PyPI configuration file
208208+.pypirc
209209+210210+# Marimo
211211+marimo/_static/
212212+marimo/_lsp/
213213+__marimo__/
214214+215215+# Streamlit
216216+.streamlit/secrets.toml
···11+#include <pybind11/pybind11.h>
22+#include <ft2build.h>
33+#include FT_FREETYPE_H
44+55+int add(int a, int b) {
66+ return a + b;
77+}
88+99+int get_freetype_version() {
1010+ int ft_amajor;
1111+ int ft_aminor;
1212+ int ft_apatch;
1313+ FT_Library library;
1414+1515+ int error = FT_Init_FreeType(&library);
1616+ FT_Library_Version(library, &ft_amajor, &ft_aminor, &ft_apatch);
1717+1818+ return ft_amajor;
1919+}
2020+2121+namespace py = pybind11;
2222+2323+PYBIND11_MODULE(_core, m) {
2424+ m.doc() = "python wheel test";
2525+2626+ m.def("add", &add, R"pbdoc(
2727+ A function that adds
2828+ )pbdoc");
2929+ m.def("get_freetype_version", &get_freetype_version, R"pbdoc(
3030+ A function that gets the major FreeType version
3131+ )pbdoc");
3232+}