Repository: cogent3/cogent3 (python)

Issue:
load_annotations fails for .gbff suffix
**Describe the bug**
`load_annotations` does not recognise .gbff as a standard Genbank file format

**To Reproduce**
Steps to reproduce the behavior:
```python
from cogent3 import load_annotations
gb_db = load_annotations(path="path/to/genbank_data.gbff")
```

Pull request:
ENH: add support for gbff genbank format suffix, fixes #1510

Patch:
diff --git a/src/cogent3/parse/sequence.py b/src/cogent3/parse/sequence.py
index 182cf5737..6f52fb790 100644
--- a/src/cogent3/parse/sequence.py
+++ b/src/cogent3/parse/sequence.py
@@ -100,6 +100,7 @@ PARSERS = {
     "clustal": clustal.ClustalParser,
     "gb": genbank.RichGenbankParser,
     "gbk": genbank.RichGenbankParser,
+    "gbff": genbank.RichGenbankParser,
     "genbank": genbank.RichGenbankParser,
     "msf": gcg.MsfParser,
     "nex": nexus.MinimalNexusAlignParser,


Test patch:
diff --git a/tests/test_core/test_core_standalone.py b/tests/test_core/test_core_standalone.py
index f6cf09093..a939c190e 100644
--- a/tests/test_core/test_core_standalone.py
+++ b/tests/test_core/test_core_standalone.py
@@ -1024,3 +1024,16 @@ def test_load_multi_files_collection(multi_fasta):
         multi_fasta / "*.fa", moltype="dna", show_progress=False
     )
     assert collection.num_seqs == 5
+
+
+@pytest.fixture(scope="function", params=("gb", "gbk", "gbff"))
+def gb_file(tmp_dir, request):
+    inpath = DATA_DIR / "annotated_seq.gb"
+    outpath = tmp_dir / f"{inpath.stem}.{request.param}"
+    outpath.write_text(inpath.read_text())
+    return outpath
+
+
+def test_gb_suffixes(gb_file):
+    seqs = load_unaligned_seqs(gb_file)
+    isinstance(seqs, SequenceCollection)