Skip to content

Commit 4b9c322

Browse files
committed
feat: package
1 parent 7c8cc46 commit 4b9c322

File tree

7 files changed

+216
-0
lines changed

7 files changed

+216
-0
lines changed

.gitignore

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
# Byte-compiled / optimized / DLL files
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
6+
# C extensions
7+
*.so
8+
9+
# Distribution / packaging
10+
.Python
11+
build/
12+
develop-eggs/
13+
dist/
14+
downloads/
15+
eggs/
16+
.eggs/
17+
lib/
18+
lib64/
19+
parts/
20+
sdist/
21+
var/
22+
wheels/
23+
share/python-wheels/
24+
*.egg-info/
25+
.installed.cfg
26+
*.egg
27+
MANIFEST
28+
29+
# PyInstaller
30+
# Usually these files are written by a python script from a template
31+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
32+
*.manifest
33+
*.spec
34+
35+
# Installer logs
36+
pip-log.txt
37+
pip-delete-this-directory.txt
38+
39+
# Unit test / coverage reports
40+
htmlcov/
41+
.tox/
42+
.nox/
43+
.coverage
44+
.coverage.*
45+
.cache
46+
nosetests.xml
47+
coverage.xml
48+
*.cover
49+
*.py,cover
50+
.hypothesis/
51+
.pytest_cache/
52+
cover/
53+
54+
# Translations
55+
*.mo
56+
*.pot
57+
58+
# Django stuff:
59+
*.log
60+
local_settings.py
61+
db.sqlite3
62+
db.sqlite3-journal
63+
64+
# Flask stuff:
65+
instance/
66+
.webassets-cache
67+
68+
# Scrapy stuff:
69+
.scrapy
70+
71+
# Sphinx documentation
72+
docs/_build/
73+
74+
# PyBuilder
75+
.pybuilder/
76+
target/
77+
78+
# Jupyter Notebook
79+
.ipynb_checkpoints
80+
81+
# IPython
82+
profile_default/
83+
ipython_config.py
84+
85+
# pyenv
86+
# For a library or package, you might want to ignore these files since the code is
87+
# intended to run in multiple environments; otherwise, check them in:
88+
# .python-version
89+
90+
# pipenv
91+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
92+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
93+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
94+
# install all needed dependencies.
95+
#Pipfile.lock
96+
97+
# PEP 582; used by e.g. github.com/David-OConnor/pyflow
98+
__pypackages__/
99+
100+
# Celery stuff
101+
celerybeat-schedule
102+
celerybeat.pid
103+
104+
# SageMath parsed files
105+
*.sage.py
106+
107+
# Environments
108+
.env
109+
.venv
110+
env/
111+
venv/
112+
ENV/
113+
env.bak/
114+
venv.bak/
115+
116+
# Spyder project settings
117+
.spyderproject
118+
.spyproject
119+
120+
# Rope project settings
121+
.ropeproject
122+
123+
# mkdocs documentation
124+
/site
125+
126+
# mypy
127+
.mypy_cache/
128+
.dmypy.json
129+
dmypy.json
130+
131+
# Pyre type checker
132+
.pyre/
133+
134+
# pytype static type analyzer
135+
.pytype/
136+
137+
# Cython debug symbols
138+
cython_debug/

MANIFEST.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
include pyproject.toml
2+
include *.md

pyproject.toml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
[build-system]
2+
requires = ["poetry-core>=1.0.0"]
3+
build-backend = "poetry.core.masonry.api"
4+
5+
[tool.poetry]
6+
name = "python-notion-exporter"
7+
version = "0.1.0"
8+
description = "Export and download Notion pages asynchronously."
9+
authors = ["Romeo Phillips"]
10+
11+
[tool.poetry.dependencies]
12+
python = "^3.7" # or whichever version you're targeting
13+
certifi = "2023.7.22"
14+
charset-normalizer = "3.2.0"
15+
idna = "3.4"
16+
requests = "2.31.0"
17+
tqdm = "4.66.1"
18+
urllib3 = "2.0.4"
19+
20+
21+
[build]
22+
script = "build.py"

setup.cfg

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[metadata]
2+
version = attr: notion-exporter.__version__
3+
license_files = LICENSE

setup.py

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
import setuptools
2+
3+
with open("README.md", "r", encoding="utf-8") as fh:
4+
long_description = fh.read()
5+
6+
setuptools.setup(
7+
name="python-notion-exporter",
8+
author="Roméo Phillips",
9+
author_email="phillipsromeo@gmail.com",
10+
description="Export and download Notion pages asynchronously",
11+
keywords="notion, notion-api, notion-exporter, notion-downloader, notion-py",
12+
long_description=long_description,
13+
long_description_content_type="text/markdown",
14+
url="https://github.com/tomchen/example_pypi_package",
15+
project_urls={
16+
"Documentation": "https://github.com/Strvm/python-notion-exporter",
17+
"Bug Reports": "https://github.com/Strvm/python-notion-exporter",
18+
"Source Code": "https://github.com/Strvm/python-notion-exporter",
19+
},
20+
package_dir={"": "src"},
21+
packages=setuptools.find_packages(where="src"),
22+
classifiers=[
23+
# see https://pypi.org/classifiers/
24+
"Development Status :: 5 - Production/Stable",
25+
"Intended Audience :: Developers",
26+
"Topic :: Software Development :: Build Tools",
27+
"Programming Language :: Python :: 3",
28+
"Programming Language :: Python :: 3.6",
29+
"Programming Language :: Python :: 3.7",
30+
"Programming Language :: Python :: 3.8",
31+
"Programming Language :: Python :: 3.9",
32+
"Programming Language :: Python :: 3 :: Only",
33+
"License :: OSI Approved :: MIT License",
34+
"Operating System :: OS Independent",
35+
],
36+
python_requires=">=3.6",
37+
# install_requires=['Pillow'],
38+
extras_require={
39+
"dev": ["check-manifest"],
40+
# 'test': ['coverage'],
41+
},
42+
# entry_points={
43+
# "console_scripts": [ # This can provide executable scripts
44+
# "run=notion-exporter:main",
45+
# # You can execute `run` in bash to run `main()` in src/examplepy/__init__.py
46+
# ],
47+
# },
48+
)

src/notion-exporter/__init__.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
__version__ = "0.1.0"
2+
3+
from .main import *
File renamed without changes.

0 commit comments

Comments
 (0)