Skip to content

Releases: NickJD/PyamilySeq

v1.3.4: Rework of reverse_compliment function for speed up

Choose a tag to compare

@NickJD NickJD released this 03 Mar 12:49

v1.3.4: Rework of reverse_compliment function for speed up

Full Changelog: v1.3.3...1.3.4

v1.3.3: Fixed minor bugs with group output (-write_groups) and added logging system

Choose a tag to compare

@NickJD NickJD released this 05 Feb 17:23

v1.3.3: Fixed minor bugs with group output (-write_groups) and added logging system

Full Changelog: v1.3.0...v1.3.3

v1.3.0 - New Feature: Enhanced Gene Presence/Absence Output for Reclustering

Choose a tag to compare

@NickJD NickJD released this 03 Oct 09:07

New Feature: Enhanced Gene Presence/Absence Output for Reclustering
Reclustering now generates a gene presence/absence (GPA) file that tracks gene family evolution
When running PyamilySeq with reclustering enabled, the output GPA file now includes:

  • Original gene groups (group_) - Clusters from the initial clustering step
  • Combined gene groups (combined_group_) - Original clusters extended with new sequences from reclustering
  • Second-only gene groups (Second_group_) - Entirely new clusters formed exclusively from reclustered sequences

All gene groups are globally sorted by genome prevalence, allowing users to easily:

  • Identify which original clusters were extended with additional sequences
  • Track how core/accessory classifications changed after reclustering
  • Identify novel gene families that were missed in the initial clustering
  • Compare clustering results before and after adding new sequences

File format: The updated GPA file maintains compatibility with existing Roary/Panaroo downstream analysis tools (Coinfinder) while providing clearer labelling of cluster origins (group_, combined_group_, Second_group_ prefixes).
This enhancement improves transparency in understanding how reclustering impacts pangenome composition and gene family assignments.

Full Changelog: v1.1.2...v1.3.0

v1.1.2: minor bugfix update - PyamilySeq now sorts genome names in gpa

Choose a tag to compare

@NickJD NickJD released this 07 May 21:26

PyamilySeq now outputs genome names in the gene_presence_absence (GPA) file in alphabetical order.
This keeps consistency with Roary and Panaroo and improves usability.
Additional erroneous " were also removed from the GPA header lines.

Thanks to @lawkj for raising the issue here: #6

Full Changelog: v1.1.1...v1.1.2

v1.1.1: Added aux cluster tools | Fixed some IO & minor runtime issues

Choose a tag to compare

@NickJD NickJD released this 14 Mar 10:57

v1.1.1 introduces a number of small fixes and QOL improvements, along with additional auxiliary scripts to help in the interrogation of the resulting clusters and gene families we get from PyamilySeq and other pangenome tools.

Key Updates:

Auxiliary Clustering Tools Added:

  • Introduced compare_gpa.py and compare_trees.py scripts to enhance clustering analysis capabilities.

Bug Fixes:

  • Resolved various input/output and minor runtime issues to improve overall stability and performance.

Full Changelog: v1.1.0...v1.1.1

v1.1.0 Menu revamp, additional features and QOL improvements.

Choose a tag to compare

@NickJD NickJD released this 25 Feb 22:40

v1.1.0 introduces a number of improvements to the menu system for PyamilySeq and Seq-Combiner making both tools easier to tune to user needs. Below is a highlights list

  • Users can now specific input gff and fasta file affixes
  • Numerous additional checks to ensure we don't overwrite existing files & more error handling
  • Refined menu parameter names
  • Ability to output sequences and alignments for specific groups
  • Fixed more issues with gene_presence_absence files

Specifically these changes have now resolved 3 previously raised githut bugs and/or feature requests.

Thanks to @ecampbell50 for the requests.

v0.9.0: Major update with new tool (Cluster_Summary) and import fixes

Choose a tag to compare

@NickJD NickJD released this 07 Oct 14:06
  • Group-Splitter:

    • Replaced calculate similarity with Levenshtein difference.

    • Can be calculated using the Levenshtein library or fallback to much slower python implementation.

    • Fixed handling of AA/DNA clustering output of CD-HIT.

    • Calculating the representative sequence for each new
      subgroup now normalises length and pident.

    • If reclustering of a Group results in multiple CD-HIT clusters, each cluster will be processed separately. It is therefore important to understand reclustering options.

    • Added option to process only user-defined Groups or 'auto' to detect which groups to subgroup.

    • Added required user-parameter to state the number of genomes (or genera) in analysis.

    • Fixed some minor bugs and cleaned up output handling.

    • Fixed a bug where the total_genomes was being calculated on a per-cluster basis which was naive. User must now provide the number of genomes in the analysis.

    • Added option to not delete temp files.

    • Cleaned up some user-parameters to match those used in CD-HIT.

  • General:

    • A number of general bug fixes, user-menu improvements, added output during 'verbose' mode and code-cleanup.
  • Cluster-Summary:

    • A new sub-tool that summarises CD-HIT .clstr files.

v0.8.1: Fixes to core-gene alignment and user input improvements

Choose a tag to compare

@NickJD NickJD released this 30 Sep 02:21

Version v0.8.1 includes small but important fixes to the core-gene alignment system and a few user option improvements.

  • Group-Splitter now handles CD-HIT .clstr files correctly as there are slight differences between cd-hit and cd-hit-est (aa/dna) in how the pident's are reported.
  • Group-Splitter now requires the user to state whether the input is DNA or AA.
  • There was a bug where sometimes 'all' FASTA files are included in the core-gene alignment resulting in very odd alignments.
  • User options in PyamilySeq now take the -t THREADS parameter and passes it to CD-HIT and MAFFT.

v0.8.0: Major update with Group-Splitter to post-cluster split 'paralogous' groups and Gene_Presence_Absence file is now reported by default.

Choose a tag to compare

@NickJD NickJD released this 22 Sep 02:54

This major release has two main additions but mainly focuses on a new 'subtool' to help process and investigate potential paralogs that have been collapsed into single gene families/groups. More details will be provided in the future with examples.

  • Gene_Presence_Absence.csv outputted as Default: The Gene_Presence_Absence file is now automatically generated, making it easier to assess gene distribution across genomes. - This was a suggestion from @ecampbell50 #2

  • Group-Splitter Addition: New 'subtool' to split "paralogous" groups from clustering results, improving handling of gene families with multiple paralogs.

v0.7.0: Major changes, bug fixes, improvements and general overhaul.

Choose a tag to compare

@NickJD NickJD released this 10 Aug 22:49

Most changes are reflected in the user menu and a number of bugs were caught that should now result in the correct recording on Seconds when more than one First was clustered in the reclustering stage.