Refactoring project name to autoBIGSst.engine

This commit is contained in:
Harrison Deng 2025-01-22 18:24:04 +00:00
parent ade2f3b845
commit 53e74af20a
20 changed files with 30 additions and 66 deletions

4
.vscode/launch.json vendored
View File

@ -6,10 +6,10 @@
"configurations": [
{
"name": "automlst info -lschema pubmlst_bordetella_seqdef",
"name": "autobigsst info -lschema pubmlst_bordetella_seqdef",
"type": "debugpy",
"request": "launch",
"program": "${workspaceFolder}/src/automlst/cli/program.py",
"program": "${workspaceFolder}/src/autobigsst/cli/program.py",
"console": "integratedTerminal",
"args": [
"info",

8
Jenkinsfile vendored
View File

@ -26,7 +26,8 @@ pipeline {
}
steps {
sh "python -m build"
sh "conda-build automlst.engine --output-folder conda-bld"
sh "grayskull pypi dist/*.tar.gz"
sh "conda-build autobigsst.engine --output-folder conda-bld"
}
}
stage("archive") {
@ -38,10 +39,10 @@ pipeline {
parallel {
stage ("internal") {
environment {
TOKEN = credentials('git.reslate.systems')
CREDS = credentials('username-password-rs-git')
}
steps {
sh returnStatus: true, script: 'python -m twine upload --repository-url https://git.reslate.systems/api/packages/ydeng/pypi -u __token__ -p ${TOKEN} --non-interactive --disable-progress-bar --verbose dist/*'
sh returnStatus: true, script: 'python -m twine upload --repository-url https://git.reslate.systems/api/packages/ydeng/pypi -u ${CREDS_USR} -p ${CREDS__PSW} --non-interactive --disable-progress-bar --verbose dist/*'
}
}
stage ("external") {
@ -50,7 +51,6 @@ pipeline {
}
environment {
PYPI_TOKEN = credentials('pypi.org')
CONDA_TOKEN = credentials('anaconda.org')
}
steps {
sh returnStatus: true, script: 'python -m twine upload -u __token__ -p ${TOKEN} --non-interactive --disable-progress-bar --verbose dist/*'

View File

@ -1,4 +1,4 @@
# autoMLST.Engine
# autobigsst.Engine
A python library implementing common BIGSdb MLST schemes and databases. Implementation follows the RESTful API outlined by the official [BIGSdb documentation](https://bigsdb.readthedocs.io/en/latest/rest.html) up to `V1.50.0`.
@ -18,8 +18,8 @@ Furthermore, this library is highly asynchronous where any potentially blocking
This library can be installed through pip. Learn how to [setup and install pip first](https://pip.pypa.io/en/stable/installation/).
Then, it's as easy as running `pip install automlst-engine` in any terminal that has pip in it's path (any terminal where `pip --version` returns a valid version and install path).
Then, it's as easy as running `pip install autobigsst-engine` in any terminal that has pip in it's path (any terminal where `pip --version` returns a valid version and install path).
### CLI usage
This is a independent python library and thus does not have any form of direct user interface. One way of using it could be to create your own Python script that makes calls to this libraries functions. Alternatively, you may use `automlst-cli`, a `Python` package that implements a CLI for calling this library.
This is a independent python library and thus does not have any form of direct user interface. One way of using it could be to create your own Python script that makes calls to this libraries functions. Alternatively, you may use `autobigsst-cli`, a `Python` package that implements a CLI for calling this library.

View File

@ -1,43 +0,0 @@
{% set name = "automlst.engine" %}
{% set version = "0.5.2.dev2+gde36956" %}
package:
name: {{ name|lower }}
version: {{ version }}
source:
url: file:///workspaces/automlst.engine/dist/automlst_engine-0.5.2.dev2%2Bgde36956.tar.gz
sha256: 2dee4910744f063b7ec5c923bbf369c23151c82cc59b8b99da19e162414ba61d
build:
noarch: python
script: {{ PYTHON }} -m pip install . -vv --no-deps --no-build-isolation
number: 0
requirements:
host:
- python >=3.11
- setuptools >=64
- setuptools-scm >=8
- pip
run:
- python >=3.11
- biopython
- aiohttp
test:
imports:
- automlst
commands:
- pip check
requires:
- pip
about:
summary: A library to rapidly fetch fetch MLST profiles given sequences for various diseases.
license: GPL-3.0
license_file: LICENSE
extra:
recipe-maintainers:
- RealYHD

View File

@ -12,3 +12,6 @@ dependencies:
- pytest-cov
- grayskull
- conda-build
- anaconda-client
- conda-utils
- bioconda-build

View File

@ -3,7 +3,7 @@ requires = ["setuptools>=64", "setuptools_scm>=8"]
build-backend = "setuptools.build_meta"
[project]
name = "automlst.engine"
name = "autobigsst.engine"
dynamic = ["version"]
readme = "README.md"
authors = [
@ -19,6 +19,10 @@ dependencies = [
requires-python = ">=3.11"
description = "A library to rapidly fetch fetch MLST profiles given sequences for various diseases."
[project.urls]
Repository = "https://github.com/RealYHD/autobigsst.engine.git"
Issues = "https://github.com/RealYHD/autobigsst.engine/issues"
[tool.setuptools_scm]
[tool.pyright]

View File

@ -2,7 +2,7 @@ import csv
from os import PathLike
from typing import AsyncIterable, Mapping, Sequence, Union
from automlst.engine.data.structures.mlst import Allele, MLSTProfile
from autobigsst.engine.data.structures.mlst import Allele, MLSTProfile
def dict_loci_alleles_variants_from_loci(alleles_map: Mapping[str, Sequence[Allele]]):

View File

@ -3,7 +3,7 @@ from io import TextIOWrapper
from typing import Any, AsyncGenerator, Generator, Iterable, Sequence, Union
from Bio import SeqIO
from automlst.engine.data.structures.genomics import NamedString
from autobigsst.engine.data.structures.genomics import NamedString
async def read_fasta(handle: Union[str, TextIOWrapper]) -> AsyncGenerator[NamedString, Any]:
fasta_sequences = asyncio.to_thread(SeqIO.parse, handle=handle, format="fasta")

View File

@ -5,9 +5,9 @@ from typing import Any, AsyncGenerator, AsyncIterable, Collection, Generator, It
from aiohttp import ClientSession, ClientTimeout
from automlst.engine.data.structures.genomics import NamedString
from automlst.engine.data.structures.mlst import Allele, PartialAllelicMatchProfile, MLSTProfile
from automlst.engine.exceptions.database import NoBIGSdbExactMatchesException, NoBIGSdbMatchesException, NoSuchBIGSdbDatabaseException
from autobigsst.engine.data.structures.genomics import NamedString
from autobigsst.engine.data.structures.mlst import Allele, PartialAllelicMatchProfile, MLSTProfile
from autobigsst.engine.exceptions.database import NoBIGSdbExactMatchesException, NoBIGSdbMatchesException, NoSuchBIGSdbDatabaseException
class BIGSdbMLSTProfiler(AbstractAsyncContextManager):

View File

@ -1,5 +1,5 @@
from automlst.engine.data.local.csv import dict_loci_alleles_variants_from_loci
from automlst.engine.data.structures.mlst import Allele
from autobigsst.engine.data.local.csv import dict_loci_alleles_variants_from_loci
from autobigsst.engine.data.structures.mlst import Allele
def test_dict_loci_alleles_variants_from_loci_single_loci_not_list():

View File

@ -1,4 +1,4 @@
from automlst.engine.data.local.fasta import read_fasta
from autobigsst.engine.data.local.fasta import read_fasta
async def test_fasta_reader_not_none():

View File

@ -3,10 +3,10 @@ import re
from typing import Collection, Sequence, Union
from Bio import SeqIO
import pytest
from automlst.engine.data.structures.genomics import NamedString
from automlst.engine.data.structures.mlst import Allele, MLSTProfile
from automlst.engine.exceptions.database import NoBIGSdbExactMatchesException, NoBIGSdbMatchesException
from automlst.engine.data.remote.databases.bigsdb import BIGSdbIndex, BIGSdbMLSTProfiler
from autobigsst.engine.data.structures.genomics import NamedString
from autobigsst.engine.data.structures.mlst import Allele, MLSTProfile
from autobigsst.engine.exceptions.database import NoBIGSdbExactMatchesException, NoBIGSdbMatchesException
from autobigsst.engine.data.remote.databases.bigsdb import BIGSdbIndex, BIGSdbMLSTProfiler
def gene_scrambler(gene: str, mutation_site_count: Union[int, float], alphabet: Sequence[str] = ["A", "T", "C", "G"]):
rand = random.Random(gene)