glymotif 0.12.0
We introduce the “dynamic motif” feature in this release. Instead of specifying motifs manually or using motifs from the database, you can now extract motifs existing in your set of glycans. Two functions, extract_motifs() and extract_motifs_lgl(), are added for this purpose.
New features
- Add
extract_motif()to find all unique substructures (motifs) in a set of glycans. This function is suitable for motif finding in small glycans like O-GalNAc glycans. - Add
extract_branch_motif()to find all branching motifs in a set of N-glycans. This function is particular useful for N-glycan motif finding, where antennary patterns can be versatile. - The
alignmentoralignmentsargument of all related functions now supports a new alignment type: “exact”. This type of alignment works the best withextract_branch_motif()results.
glymotif 0.11.0
New features
-
have_motif(),have_motifs(),count_motif(), andcount_motifs()now support a new argumentstrict_subto control the strictness of substituent matching.The argument defaults toTRUE, to be consistent with the previous behavior. Whenstrict_subisFALSE, the substituent is optional in the motif, so the glycan “Neu5Ac9Ac(a2-” can match the motif “Neu5Ac(a2-”.
glymotif 0.10.0
New features
-
add_motifs_int()andadd_motifs_lgl()now support data frames as input.
glymotif 0.8.1
Minor improvements and bug fixes
-
quantify_motifs()now returns aglyexp::experiment()object with “traitomics” type for glycomics data, and “traitproteomics” type for glycoproteomics data, instead of “traitomics” for all input.
glymotif 0.8.0
New features
-
quantify_motifs()has been totally rewritten. Serious bug about column aggregation with descriptional columns about glycan structures are fixed. The function now behaves likeglydet::derive_traits(), adding back columns invar_infoonly when they have “many-to-one” relationship with glycosites (unique combinations ofproteinandprotein_site). -
quantify_motifs(),add_motifs_int(), andadd_motifs_lgl()now support a character vector ofglycan structure strings as the “glycan_structure” column invar_info.
Minor improvements and bug fixes
- Add a section in the Get Started vignette about ambiguity handling.
- Update the “Working with glyexp” vignette to use
glyexp::real_experiment. - Update the URL of GlycoMotif in the documentation of
all_motifs(). - Remove old “N-glycans” vignette from README.
glymotif 0.7.0
Breaking changes
- Remove
add_comp_descriptions(),add_glycan_descriptions(),add_struct_descriptions(),describe_n_glycans(),has_bisecting(),is_n_glycan(),n_antennae(),n_arm_fuc(),n_core_fuc(),n_gal(),n_glycan_type(),n_terminal_gal(). These functions are replaced by functions in theglydetpackage now.
Minor improvements and bug fixes
- Update dependencies to depend on release versions of glycoverse packages.
-
quantify_motifs()now returns aglyexp::experiment()object with “traitomics” type instead of “motifomics”.
glymotif 0.6.0
Breaking changes
-
available_motifs()is renamed toall_motifs().
New features
- Add
match_motif()andmatch_motifs()to find all occurrences of the given motif(s) in the glycans. Node-to-node mapping is returned for each match.
glymotif 0.5.0
Breaking changes
- Remove support for omitted reducing-end anomers in IUPAC-condensed strings. Strings like “Gal(b1-3)GlcNAc” are no longer valid. You must specify the anomer of the reducing-end monosaccharide, e.g. “Gal(b1-3)GlcNAc(b1-”.
- N-glycan functions now raise a warning when the input glycans are not N-glycans and return
NAfor those glycans, instead of throwing an error.
New features
- Add support for multiple glycan structure string formats in all functions. This includes IUPAC-condensed, IUPAC-short, IUPAC-extended, GlycoCT, WURCS, pGlyco-style, and StrucGP-style.
- All N-glycan functions now support vectorization, including
is_n_glycan(),n_glycan_type(),has_bisecting(),n_antennae(),n_core_fuc(),n_arm_fuc(),n_gal(), andn_terminal_gal().
glymotif 0.4.0
Major changes
- Add
quantify_motifs()to quantify motifs in aglyexp::experiment().
Minor improvements
- Split the “Get Started” vignette into three:
- The new “Get Started” vignette, only covering basic motif matching functions.
- A new “N-Glycans” vignette, covering N-glycan-specific functions.
- A new “Working with
glyexp::experiment()” vignette, covering the integration withglyexp::experiment().
glymotif 0.3.1
Minor improvements
- Update the documentation to reflect the naming rules of the return values of
have_motif(),have_motifs(),count_motif(), andcount_motifs().
glymotif 0.3.0
Major changes
- Add
add_glycan_descriptions(),add_struct_descriptions(), andadd_comp_descriptions(). These functions are moved fromglyexptoglymotiffor better separation of concerns. - Add
add_motifs_int()andadd_motifs_lgl()for adding motif annotations to aglyexp::experiment().
Minor improvements
- Remove the
parallelargument fromadd_glycan_descriptions(),add_struct_descriptions(), andadd_comp_descriptions(). We found it not very useful on a regular basis. - Update the vignette to reflect the new functions above.
Bug fixes
- Fix a bug in
get_motif_structure(), where the order of the results was not consistent with the order of the input motifs. This caused unexpected results in a wide range of functions includinghave_motifs(),count_motifs(), and the newadd_motifs_lgl()andadd_motifs_int()functions, when using motif names as input. Alone withget_motif_structure(), similar bugs inget_motif_alignment()andget_motif_aglycon()are also fixed.
glymotif 0.2.1
Minor improvements
-
have_motif(),have_motifs(),count_motif(), andcount_motifs()now support multiple substituents in the motif, to align with the updates inglyreprv0.5.0.
glymotif 0.2.0
Bug fixes
- Fixed monosaccharide type matching logic in
have_motif(),have_motifs(),count_motif(), andcount_motifs().- Generic glycans can no longer cause errors when compared with concrete motifs
- Concrete glycans now properly match generic motifs (converted to generic first)
- Generic glycans correctly return FALSE when compared with concrete motifs
- This resolves incorrect results in mixed-type motif matrices
