with:
python-version: 3
cache: "pip" # caching pip dependencies
- cache-dependency-path: "**/*requirements*.txt"
+ cache-dependency-path: "**/pyproject.toml"
# update-environment: false
- - name: Install requirements
+ - name: Install package with development dependencies
run: |
- pip install -r requirements.txt
- pip install -r .requirements-lint.txt
-
- # NOTE: pytest is needed to lint the folder: "tests/"
- # pip install -r requirements-test.txt
-
+ pip install ".[dev]"
- name: format
run: make format
The project is maintained at https://github.com/Linekio/getmyancestors. Visit here for the latest version and more information.
-This script requires python3 and the modules indicated in the requirements.txt file. To install the modules, run in your terminal:
+This script requires python3 and the modules indicated in the pyproject.toml file. To install the modules, run in your terminal:
Installation
`pip install .`
+For development with linting and testing tools:
+
+`pip install ".[dev]"`
+
How to use
==========
With graphical user interface:
-```
-fstogedcom
-```
-
-Command line examples:
-
-Download four generations of ancestors for the main individual in your tree and output gedcom on stdout (will prompt for username and password):
-
-```
-getmyancestors
-```
-
-Download four generations of ancestors and output gedcom to a file while generating a verbode stderr (will prompt for username and password):
-
-```
-getmyancestors -o out.ged -v
-```
-
-Download four generations of ancestors for individual LF7T-Y4C and generate a verbose log file:
-
-```
-getmyancestors -u username -p password -i LF7T-Y4C -o out.ged -l out.log -v
-```
-
-Download six generations of ancestors for individual LF7T-Y4C and generate a verbose log file:
-
-```
-getmyancestors -a 6 -u username -p password -i LF7T-Y4C -o out.ged -l out.log -v
-```
-
-Download four generations of ancestors for individual LF7T-Y4C including all their children and their children spouses:
-
-```
-getmyancestors -d 1 -m -u username -p password -i LF7T-Y4C -o out.ged
-```
-
-Download six generations of ancestors for individuals L4S5-9X4 and LHWG-18F including all their children, grandchildren and their spouses:
-
-```
-getmyancestors -a 6 -d 2 -m -u username -p password -i L4S5-9X4 LHWG-18F -o out.ged
-```
-
-Download four generations of ancestors for individual LF7T-Y4C including LDS ordinances (need LDS account)
-
-```
-getmyancestors -c -u username -p password -i LF7T-Y4C -o out.ged
-```
-
-Merge two Gedcom files
-
-```
-mergemyancestors -i file1.ged file2.ged -o out.ged
-```
-
-
-Support
-=======
-
-Submit questions or suggestions, or feature requests by opening an Issue at https://github.com/Linekio/getmyancestors/issues
-
-Donation
-========
-
-If this project help you, you can give me a tip :)
-
-[](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=98X3CY93XTAYJ)
"babelfish==0.6.1",
"diskcache==5.6.3",
"requests==2.32.3",
- "fake-useragent==2.0.3",
+ "fake-useragent==2.2.0",
"geocoder==1.38.1",
"requests-ratelimiter==0.7.0",
- "requests-cache" # Added missing dependency
+ "requests-cache==1.2.1",
]
dynamic = ["version", "readme"]
mergemyancestors = "getmyancestors.mergemyanc:main"
fstogedcom = "getmyancestors.fstogedcom:main"
+[project.optional-dependencies]
+dev = [
+ "black==25.12.0",
+ "coverage==7.13.1",
+ "flake8==7.3.0",
+ "isort==7.0.0",
+ "mypy==1.19.1",
+ "pylint==4.0.4",
+ "pytest==9.0.2",
+ "ruff==0.14.10",
+ "types-requests==2.32.4.20250913",
+]
+
[tool.setuptools]
# Use find packages with exclude pattern
packages.find = {exclude = ["http_cache", "http_cache.*"]}