-
Notifications
You must be signed in to change notification settings - Fork 0
/
setup.py
45 lines (37 loc) · 1.34 KB
/
setup.py
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
from setuptools import setup, find_packages
from pathlib import Path
# Read the contents of requirements.txt
def parse_requirements(file_path: str) -> list[str]:
"""
Reads the requirements file and returns a list of dependencies.
Args:
file_path (str): Path to the requirements.txt file.
Returns:
list[str]: List of dependencies.
"""
return Path(file_path).read_text().splitlines()
def readme():
with open("README.rst") as f:
return f.read()
setup(
name="outlook_email_sender",
version="2.0.0",
description="A Python package for authenticating to Outlook Web and sending emails using Playwright.",
long_description=readme(),
author="Rudolph Pienaar",
author_email="[email protected]",
packages=find_packages(where="src"), # Point to src directory for modules
package_dir={"": "src"}, # Tell setuptools where to find the code
install_requires=parse_requirements("requirements.txt"),
entry_points={
"console_scripts": [
"outwright=outlook_email_sender:main", # Bind the main function to 'outwright' command
],
},
classifiers=[
"Programming Language :: Python :: 3.11",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
],
python_requires=">=3.11",
)