Releases: NickJD/PyamilySeq
Release list
v1.3.4: Rework of reverse_compliment function for speed up
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
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
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
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
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.
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.
- [Multiple alignment options with -w]
- [Options to specify input file extensions in separate input mode]
- [Seq-Combiner will read in and overwrite the output file.]
Thanks to @ecampbell50 for the requests.
v0.9.0: Major update with new tool (Cluster_Summary) and import fixes
-
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
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.
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.
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.