Skip to content

Refactor code. - #177

Merged
sdhutchins merged 94 commits into
dev-refactoredfrom
refactor-phylo
Dec 2, 2025
Merged

sdhutchins merged 94 commits into
dev-refactoredfrom
refactor-phylo

Conversation

@sdhutchins

Copy link
Copy Markdown
Member

Mainly a refactoring of phylogenetics.

@sdhutchins
sdhutchins requested a review from Copilot May 30, 2025 03:12
@sdhutchins
sdhutchins marked this pull request as ready for review May 30, 2025 03:12
@sdhutchins
sdhutchins removed the request for review from a team May 30, 2025 03:12
@sdhutchins sdhutchins self-assigned this May 30, 2025

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

A refactoring of the phylogenetics modules to introduce new, unified wrappers for PhyML and PAML, update documentation, and streamline CI and configuration-loading code.

  • Introduced PhyML wrapper (phyml.py) and removed the old orthophyml.py
  • Refactored ETE3PAML and CodemlRun classes, updated their tests and READMEs
  • Updated CI configs (.travis.yml, GitHub Actions) and improved project-wide task scripts

Reviewed Changes

Copilot reviewed 47 out of 47 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
OrthoEvol/Orthologs/Phylogenetics/Phylip/README.md Added Phylip usage docs (empty example needs content)
OrthoEvol/Orthologs/Phylogenetics/PhyML/phyml.py New PhyML wrapper implementation
OrthoEvol/Orthologs/Phylogenetics/PhyML/orthophyml.py Removed deprecated wrapper
OrthoEvol/Orthologs/Phylogenetics/PhyML/init.py Updated import to the new wrapper
OrthoEvol/Orthologs/Phylogenetics/PhyML/README.md Fixed examples and links (typo persists)
OrthoEvol/Manager/db_mana_test.py Refactored YAML loading; missing imports introduced
OrthoEvol/Cookies/new_website/tasks.py Streamlined Invoke tasks; missing webbrowser import
.travis.yml Updated Python versions and added phyml install
.github/workflows/ci.yml Added GitHub Actions CI
Comments suppressed due to low confidence (4)

OrthoEvol/Cookies/new_website/tasks.py:72

  • webbrowser.open_new_tab is called but webbrowser is not imported at the top of the file. Please add import webbrowser.
if browse:

OrthoEvol/Orthologs/Phylogenetics/PhyML/phyml.py:1

  • The new PhyML class has no accompanying unit tests. Consider adding tests for _check_exe, _validate_format, and run methods to ensure coverage.
import sys

OrthoEvol/Orthologs/Phylogenetics/PhyML/phyml.py:62

  • The docstring uses four quotes ("""") instead of triple quotes. Please correct to """Run phyml.""".
""""Run phyml."""

OrthoEvol/Manager/db_mana_test.py:16

  • resource_filename, yml, and yaml are used but not imported. Add the necessary imports (from pkg_resources import resource_filename, import yaml, etc.) or update references.
file_path = resource_filename(yml.__name__, file_name)

Comment thread OrthoEvol/Orthologs/Phylogenetics/Phylip/README.md
"""
try:
AlignIO.read(open(infile), "phylip")
except ValueError as e:

Copilot AI May 30, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If the input file is not valid PHYLIP, _validate_format logs and returns False but the constructor proceeds silently without setting self.infile. Consider raising an exception on invalid format to prevent downstream attribute errors.

Copilot uses AI. Check for mistakes.
Comment thread OrthoEvol/Orthologs/Phylogenetics/PhyML/phyml.py Outdated
Comment thread OrthoEvol/Orthologs/Phylogenetics/PhyML/README.md Outdated
sdhutchins and others added 16 commits May 29, 2025 22:17
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Bumps [werkzeug](https://github.com/pallets/werkzeug) from 0.15.3 to 3.1.4.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](pallets/werkzeug@0.15.3...3.1.4)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-version: 3.1.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [jinja2](https://github.com/pallets/jinja) from 2.9.6 to 3.1.6.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](pallets/jinja@2.9.6...3.1.6)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-version: 3.1.6
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.25.0 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.25.0...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-version: 4.66.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-WERKZEUG-14151620

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 1.1.9 to 1.2.19.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 1.2.19
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 50 out of 53 changed files in this pull request and generated 17 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


if __name__ == '__main__':
mp = Multiprocess()
mp.map2function(phyml, files)

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The function name map2function in the README example doesn't match the actual method name map_to_function. This will cause an AttributeError if users follow this example.

Suggested change
mp.map2function(phyml, files)
mp.map_to_function(phyml, files)

Copilot uses AI. Check for mistakes.
if __name__ == '__main__':
mp = Multiprocess()
mp.map_to_function(printwords, words)
mp.map_to_function(printwords, words, processors=8)

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The parameter name in the README example uses processors but the actual method parameter is named procs. This inconsistency will cause a TypeError if users follow this documentation.

Copilot uses AI. Check for mistakes.
Comment thread tests/test_tools.py
Comment on lines +53 to +99
def test_mv(self):
# Create a file to move
with open("test.txt", "w") as f:
f.write("Test content")

# Create a PyBasher instance
pybasher = PyBasher()

# Move the file
pybasher.mv("test.txt", "moved.txt")

# Check that the file was moved
assert not os.path.exists("test.txt")
assert os.path.exists("moved.txt")

# Check that the moved file has the correct contents
with open("moved.txt", "r") as f:
moved_content = f.read()
assert moved_content == "Test content"

# Clean up
os.remove("moved.txt")

def test_cp(self):
# Create a file to copy
with open("test.txt", "w") as f:
f.write("Test content")

# Create a PyBasher instance
pybasher = PyBasher()

# Copy the file
pybasher.cp("test.txt", "copy.txt")

# Check that the copy was made
assert os.path.exists("copy.txt")

# Check that the copy has the same contents as the original
with open("test.txt", "r") as f:
original_content = f.read()
with open("copy.txt", "r") as f:
copy_content = f.read()
assert original_content == copy_content

# Clean up
os.remove("test.txt")
os.remove("copy.txt")

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The test methods test_mv and test_cp lack proper tearDown cleanup. If the test fails before the cleanup code at the end, it will leave test files behind. Consider using setUp/tearDown or the @contextmanager pattern for better cleanup.

Copilot uses AI. Check for mistakes.
Comment thread tests/test_tools.py
Comment on lines +53 to +99
def test_mv(self):
# Create a file to move
with open("test.txt", "w") as f:
f.write("Test content")

# Create a PyBasher instance
pybasher = PyBasher()

# Move the file
pybasher.mv("test.txt", "moved.txt")

# Check that the file was moved
assert not os.path.exists("test.txt")
assert os.path.exists("moved.txt")

# Check that the moved file has the correct contents
with open("moved.txt", "r") as f:
moved_content = f.read()
assert moved_content == "Test content"

# Clean up
os.remove("moved.txt")

def test_cp(self):
# Create a file to copy
with open("test.txt", "w") as f:
f.write("Test content")

# Create a PyBasher instance
pybasher = PyBasher()

# Copy the file
pybasher.cp("test.txt", "copy.txt")

# Check that the copy was made
assert os.path.exists("copy.txt")

# Check that the copy has the same contents as the original
with open("test.txt", "r") as f:
original_content = f.read()
with open("copy.txt", "r") as f:
copy_content = f.read()
assert original_content == copy_content

# Clean up
os.remove("test.txt")
os.remove("copy.txt")

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[nitpick] The test uses bare assert statements instead of unittest assertion methods (e.g., self.assertFalse, self.assertTrue). While this works, it's inconsistent with the rest of the test class and doesn't provide as helpful error messages on failure.

Copilot uses AI. Check for mistakes.
Comment on lines +76 to +79
"""Generate a maximum likelihoood tree using dnapaml.

:param outfile: Standard output filename.
:param outtree: Name of maximum likelihoood tree.

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo in the docstring: "likelihoood" should be "likelihood".

Suggested change
"""Generate a maximum likelihoood tree using dnapaml.
:param outfile: Standard output filename.
:param outtree: Name of maximum likelihoood tree.
"""Generate a maximum likelihood tree using dnapaml.
:param outfile: Standard output filename.
:param outtree: Name of maximum likelihood tree.

Copilot uses AI. Check for mistakes.
import warnings

from Bio import Phylo
from ete3 import Tree

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Import of 'Tree' is not used.

Copilot uses AI. Check for mistakes.
Comment thread tests/test_cookies.py
shutil.rmtree(item)
else:
item.unlink()
except (OSError, PermissionError):

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'except' clause does nothing but pass and there is no explanatory comment.

Copilot uses AI. Check for mistakes.
Comment thread tests/test_cookies.py
# Try to remove the directory again
try:
self.test_dir.rmdir()
except (OSError, PermissionError):

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'except' clause does nothing but pass and there is no explanatory comment.

Copilot uses AI. Check for mistakes.
Comment thread tests/test_cookies.py
if test_repo.exists():
try:
shutil.rmtree(test_repo)
except (OSError, PermissionError):

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'except' clause does nothing but pass and there is no explanatory comment.

Copilot uses AI. Check for mistakes.
Comment thread tests/test_manager.py
if project_path.exists():
try:
rmtree(project_path)
except (OSError, PermissionError):

Copilot AI Dec 2, 2025

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

'except' clause does nothing but pass and there is no explanatory comment.

Copilot uses AI. Check for mistakes.
@sdhutchins
sdhutchins merged commit 3c75a6e into dev-refactored Dec 2, 2025
15 of 16 checks passed
@sdhutchins
sdhutchins deleted the refactor-phylo branch December 2, 2025 04:21
sdhutchins added a commit that referenced this pull request Dec 2, 2025
* fix: requirements.txt to reduce vulnerabilities (#176)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-SETUPTOOLS-3113904

Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* fix: requirements.txt to reduce vulnerabilities (#175)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-PSUTIL-483082

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* fix: requirements.txt to reduce vulnerabilities (#170)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-COOKIECUTTER-2414281

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* fix: requirements.txt to reduce vulnerabilities (#179)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-SETUPTOOLS-3180412

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* Refactor code. (#177)

* Renamed orthophyl.py to phyml.py

* Renamed orthophylip.py to phylip.py

* Updated import of phylip.py

* Updated import of phyml.py

* Added docstrings for the init of the PhyML class.

* Refactored init in ETE3PAMl to create better API.

* Fixed logging issue.

* Added check_exe function.

* Added new examples to README.

* Added ApplicationError to try/except in run method.

* Added a test for phyml

* Added test data for phyml test.

* Added phyml installation to travis script.

* Added ability for user to choose number of processors.

* Updated README for new api.

* Removed deprecated csvtolist

* Added logging to ETE3PAML

* Added _import_alignment method

* Added a README for the PHYLIP class.

* Added try/except/else/finally for phylip methods

* Removed phylip test from Phylip folder.

* Added docstrings to ETE3PAML class.

* Fixed errors in README.

* Added TODO in codeml.py

* Changed data in test.

* Added missing doctrings.

* Updated example in README.

* Refactored TreeViz api.

* Refactored ncbi-download script

* Added validation function. Extended run api.

* Updated PhyML test data.

* Added ability to capture output for Phylip

* Fixed validate format issue.

* Renamed PhyloTree module to TreeViz

* Added a treeviz test.

* Removed sciluigi. Added matplotlib.

* Removed matplotlib from travis CI pip install line

* Added updated example to readme.

* Added docstrings.

* Removed version of matplotlib

* Corrected path to tree file in test.

* Updated Flask to latest version and removed other flask libraries.

* Corrected paths in tests.

* Additional fix to current directory for tests.

* Changed paths of test output.

* Fixed Phyml tests

* Fix extra lines in code.

* Fix psutil requirement.

* Remove cookiecutter version.

* Remove Flask version requirements.

Flash should be fairly backwards compatible. Fixes will be simpler.

* Drop support for Python < 3.7.

* Fix name for log level to format color.

* Remove version for setuptools.

* Remove incorrect character from travis script.

* Add commands to PyBasher.

* Refactor blastpipeline.

* Remove Flask-User.

* Set _COLORS for logging.

* Deprecate airflow.

* Comment out phyml test.

* Add more test infrastructure.

* Remove luigi version.

* Fix cookies test.

* Test.

* Test.

* Add github action for ci.

* Fix test.

* Fix texts for Oven and CookBook.

* Updated utils tests.

* Remove PackageVersion test.

* Fix Cookies tests.

* Remove github action.

* Add ci back. Remove blast tests.

* Change timeout.

* Update OrthoEvol/Orthologs/Phylogenetics/PhyML/README.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update OrthoEvol/Orthologs/Phylogenetics/PhyML/phyml.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Remove travis. Add GH action.

* Upgrade biopython version.

* Fixed tests.

* bump up python versions.

* Bump werkzeug (#211)

Bumps [werkzeug](https://github.com/pallets/werkzeug) from 0.15.3 to 3.1.4.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](pallets/werkzeug@0.15.3...3.1.4)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-version: 3.1.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump jinja2 (#206)

Bumps [jinja2](https://github.com/pallets/jinja) from 2.9.6 to 3.1.6.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](pallets/jinja@2.9.6...3.1.6)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-version: 3.1.6
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump tqdm from 4.25.0 to 4.66.3 (#208)

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.25.0 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.25.0...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-version: 4.66.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add test gpcr dataset.

* Fix utils test.

* Fix issue finding directory.

* Fix manage tests.

* Fix code cov.

* fix: requirements.txt to reduce vulnerabilities (#210)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-WERKZEUG-14151620

Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* Bump sqlalchemy (#209)

Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 1.1.9 to 1.2.19.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 1.2.19
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* Fix docstrings. Move templates to .github.

* Update examples and python version.

* Update python tasks.

* Add docstring to Orthologs module.

* Fix missing doc strings.

* Added more utils tests.

* Add more tests for manager module.

* Add more tests for tools module.

* Add changelog.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: Snyk bot <github+bot@snyk.io>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
sdhutchins added a commit that referenced this pull request Dec 2, 2025
* fix: requirements.txt to reduce vulnerabilities (#169)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-WTFORMS-40581

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* Bump jinja2 (#168)

Bumps [jinja2](https://github.com/pallets/jinja) from 2.9.6 to 2.11.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/master/CHANGES.rst)
- [Commits](pallets/jinja@2.9.6...2.11.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add additional tests (#212)

* fix: requirements.txt to reduce vulnerabilities (#176)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-SETUPTOOLS-3113904

Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* fix: requirements.txt to reduce vulnerabilities (#175)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-PSUTIL-483082

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* fix: requirements.txt to reduce vulnerabilities (#170)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-COOKIECUTTER-2414281

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* fix: requirements.txt to reduce vulnerabilities (#179)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-SETUPTOOLS-3180412

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* Refactor code. (#177)

* Renamed orthophyl.py to phyml.py

* Renamed orthophylip.py to phylip.py

* Updated import of phylip.py

* Updated import of phyml.py

* Added docstrings for the init of the PhyML class.

* Refactored init in ETE3PAMl to create better API.

* Fixed logging issue.

* Added check_exe function.

* Added new examples to README.

* Added ApplicationError to try/except in run method.

* Added a test for phyml

* Added test data for phyml test.

* Added phyml installation to travis script.

* Added ability for user to choose number of processors.

* Updated README for new api.

* Removed deprecated csvtolist

* Added logging to ETE3PAML

* Added _import_alignment method

* Added a README for the PHYLIP class.

* Added try/except/else/finally for phylip methods

* Removed phylip test from Phylip folder.

* Added docstrings to ETE3PAML class.

* Fixed errors in README.

* Added TODO in codeml.py

* Changed data in test.

* Added missing doctrings.

* Updated example in README.

* Refactored TreeViz api.

* Refactored ncbi-download script

* Added validation function. Extended run api.

* Updated PhyML test data.

* Added ability to capture output for Phylip

* Fixed validate format issue.

* Renamed PhyloTree module to TreeViz

* Added a treeviz test.

* Removed sciluigi. Added matplotlib.

* Removed matplotlib from travis CI pip install line

* Added updated example to readme.

* Added docstrings.

* Removed version of matplotlib

* Corrected path to tree file in test.

* Updated Flask to latest version and removed other flask libraries.

* Corrected paths in tests.

* Additional fix to current directory for tests.

* Changed paths of test output.

* Fixed Phyml tests

* Fix extra lines in code.

* Fix psutil requirement.

* Remove cookiecutter version.

* Remove Flask version requirements.

Flash should be fairly backwards compatible. Fixes will be simpler.

* Drop support for Python < 3.7.

* Fix name for log level to format color.

* Remove version for setuptools.

* Remove incorrect character from travis script.

* Add commands to PyBasher.

* Refactor blastpipeline.

* Remove Flask-User.

* Set _COLORS for logging.

* Deprecate airflow.

* Comment out phyml test.

* Add more test infrastructure.

* Remove luigi version.

* Fix cookies test.

* Test.

* Test.

* Add github action for ci.

* Fix test.

* Fix texts for Oven and CookBook.

* Updated utils tests.

* Remove PackageVersion test.

* Fix Cookies tests.

* Remove github action.

* Add ci back. Remove blast tests.

* Change timeout.

* Update OrthoEvol/Orthologs/Phylogenetics/PhyML/README.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update OrthoEvol/Orthologs/Phylogenetics/PhyML/phyml.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Remove travis. Add GH action.

* Upgrade biopython version.

* Fixed tests.

* bump up python versions.

* Bump werkzeug (#211)

Bumps [werkzeug](https://github.com/pallets/werkzeug) from 0.15.3 to 3.1.4.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](pallets/werkzeug@0.15.3...3.1.4)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-version: 3.1.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump jinja2 (#206)

Bumps [jinja2](https://github.com/pallets/jinja) from 2.9.6 to 3.1.6.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](pallets/jinja@2.9.6...3.1.6)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-version: 3.1.6
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump tqdm from 4.25.0 to 4.66.3 (#208)

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.25.0 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.25.0...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-version: 4.66.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add test gpcr dataset.

* Fix utils test.

* Fix issue finding directory.

* Fix manage tests.

* Fix code cov.

* fix: requirements.txt to reduce vulnerabilities (#210)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-WERKZEUG-14151620

Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* Bump sqlalchemy (#209)

Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 1.1.9 to 1.2.19.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 1.2.19
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* Fix docstrings. Move templates to .github.

* Update examples and python version.

* Update python tasks.

* Add docstring to Orthologs module.

* Fix missing doc strings.

* Added more utils tests.

* Add more tests for manager module.

* Add more tests for tools module.

* Add changelog.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: Snyk bot <github+bot@snyk.io>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Prepare release 1.0.0b2

* Rebuild docs.

* Add action for building docs.

* Fix workflow.

https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/

* Fix build script.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Snyk bot <github+bot@snyk.io>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
sdhutchins added a commit that referenced this pull request Dec 2, 2025
* fix: requirements.txt to reduce vulnerabilities (#169)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-WTFORMS-40581

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* Bump jinja2 (#168)

Bumps [jinja2](https://github.com/pallets/jinja) from 2.9.6 to 2.11.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/master/CHANGES.rst)
- [Commits](pallets/jinja@2.9.6...2.11.3)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add additional tests (#212)

* fix: requirements.txt to reduce vulnerabilities (#176)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-SETUPTOOLS-3113904

Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* fix: requirements.txt to reduce vulnerabilities (#175)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-PSUTIL-483082

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* fix: requirements.txt to reduce vulnerabilities (#170)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-COOKIECUTTER-2414281

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* fix: requirements.txt to reduce vulnerabilities (#179)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-SETUPTOOLS-3180412

Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>

* Refactor code. (#177)

* Renamed orthophyl.py to phyml.py

* Renamed orthophylip.py to phylip.py

* Updated import of phylip.py

* Updated import of phyml.py

* Added docstrings for the init of the PhyML class.

* Refactored init in ETE3PAMl to create better API.

* Fixed logging issue.

* Added check_exe function.

* Added new examples to README.

* Added ApplicationError to try/except in run method.

* Added a test for phyml

* Added test data for phyml test.

* Added phyml installation to travis script.

* Added ability for user to choose number of processors.

* Updated README for new api.

* Removed deprecated csvtolist

* Added logging to ETE3PAML

* Added _import_alignment method

* Added a README for the PHYLIP class.

* Added try/except/else/finally for phylip methods

* Removed phylip test from Phylip folder.

* Added docstrings to ETE3PAML class.

* Fixed errors in README.

* Added TODO in codeml.py

* Changed data in test.

* Added missing doctrings.

* Updated example in README.

* Refactored TreeViz api.

* Refactored ncbi-download script

* Added validation function. Extended run api.

* Updated PhyML test data.

* Added ability to capture output for Phylip

* Fixed validate format issue.

* Renamed PhyloTree module to TreeViz

* Added a treeviz test.

* Removed sciluigi. Added matplotlib.

* Removed matplotlib from travis CI pip install line

* Added updated example to readme.

* Added docstrings.

* Removed version of matplotlib

* Corrected path to tree file in test.

* Updated Flask to latest version and removed other flask libraries.

* Corrected paths in tests.

* Additional fix to current directory for tests.

* Changed paths of test output.

* Fixed Phyml tests

* Fix extra lines in code.

* Fix psutil requirement.

* Remove cookiecutter version.

* Remove Flask version requirements.

Flash should be fairly backwards compatible. Fixes will be simpler.

* Drop support for Python < 3.7.

* Fix name for log level to format color.

* Remove version for setuptools.

* Remove incorrect character from travis script.

* Add commands to PyBasher.

* Refactor blastpipeline.

* Remove Flask-User.

* Set _COLORS for logging.

* Deprecate airflow.

* Comment out phyml test.

* Add more test infrastructure.

* Remove luigi version.

* Fix cookies test.

* Test.

* Test.

* Add github action for ci.

* Fix test.

* Fix texts for Oven and CookBook.

* Updated utils tests.

* Remove PackageVersion test.

* Fix Cookies tests.

* Remove github action.

* Add ci back. Remove blast tests.

* Change timeout.

* Update OrthoEvol/Orthologs/Phylogenetics/PhyML/README.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update OrthoEvol/Orthologs/Phylogenetics/PhyML/phyml.py

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Remove travis. Add GH action.

* Upgrade biopython version.

* Fixed tests.

* bump up python versions.

* Bump werkzeug (#211)

Bumps [werkzeug](https://github.com/pallets/werkzeug) from 0.15.3 to 3.1.4.
- [Release notes](https://github.com/pallets/werkzeug/releases)
- [Changelog](https://github.com/pallets/werkzeug/blob/main/CHANGES.rst)
- [Commits](pallets/werkzeug@0.15.3...3.1.4)

---
updated-dependencies:
- dependency-name: werkzeug
  dependency-version: 3.1.4
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump jinja2 (#206)

Bumps [jinja2](https://github.com/pallets/jinja) from 2.9.6 to 3.1.6.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](pallets/jinja@2.9.6...3.1.6)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-version: 3.1.6
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Bump tqdm from 4.25.0 to 4.66.3 (#208)

Bumps [tqdm](https://github.com/tqdm/tqdm) from 4.25.0 to 4.66.3.
- [Release notes](https://github.com/tqdm/tqdm/releases)
- [Commits](tqdm/tqdm@v4.25.0...v4.66.3)

---
updated-dependencies:
- dependency-name: tqdm
  dependency-version: 4.66.3
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add test gpcr dataset.

* Fix utils test.

* Fix issue finding directory.

* Fix manage tests.

* Fix code cov.

* fix: requirements.txt to reduce vulnerabilities (#210)

The following vulnerabilities are fixed by pinning transitive dependencies:
- https://snyk.io/vuln/SNYK-PYTHON-WERKZEUG-14151620

Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* Bump sqlalchemy (#209)

Bumps [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) from 1.1.9 to 1.2.19.
- [Release notes](https://github.com/sqlalchemy/sqlalchemy/releases)
- [Changelog](https://github.com/sqlalchemy/sqlalchemy/blob/main/CHANGES.rst)
- [Commits](https://github.com/sqlalchemy/sqlalchemy/commits)

---
updated-dependencies:
- dependency-name: sqlalchemy
  dependency-version: 1.2.19
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Shaurita Hutchins <ms.s.hutchins@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>

* Fix docstrings. Move templates to .github.

* Update examples and python version.

* Update python tasks.

* Add docstring to Orthologs module.

* Fix missing doc strings.

* Added more utils tests.

* Add more tests for manager module.

* Add more tests for tools module.

* Add changelog.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: Snyk bot <github+bot@snyk.io>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Prepare release 1.0.0b2

* Rebuild docs.

* Add action for building docs.

* Fix workflow.

https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/

* Fix build script.

* Add readthedocs requirements.

* Fix readthe docs yaml.

* Fix badges.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Snyk bot <github+bot@snyk.io>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: sdhutchins <sdhutchins@outlook.com>
Co-authored-by: Shaurita D. Hutchins <shaurita.d.hutchins@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants