gbouras13 / plassembler

Program to quickly and accurately assemble plasmids in hybrid and long-only sequenced bacterial isolates
MIT License
50 stars 3 forks source link

[request] allow specifying dragonflye (or bactopia) outputs? #37

Closed incoherentian closed 11 months ago

incoherentian commented 12 months ago

Is your feature request related to a problem? Please describe. I would like to try using plassembler with dragonflye outputs, without wasting compute on rerunning flye in plassembler.

Describe the solution you'd like Would it be feasible to allow e.g.

--flye_assembly /scratch/$USER/out/d58_unidragonflye_m180/NN-MR49-2_all_merge_dflye_m180p_out_job63789870/flye.fasta
--flye_info /scratch/$USER/out/d58_unidragonflye_m180/NN-MR49-2_all_merge_dflye_m180p_out_job63789870/flye-info.txt

rather than having to rerun flye or make temp copies hopefully-concordant with standard flye output e.g.

[user@ccs0050(hawk) NN-MR49-2_all_merge_dflye_m180p_out_job63789870]$ mkdir temp_plassembler/
[user@ccs0050(hawk) NN-MR49-2_all_merge_dflye_m180p_out_job63789870]$ cp flye.fasta temp_plassembler/assembly.fasta
[user@ccs0050(hawk) NN-MR49-2_all_merge_dflye_m180p_out_job63789870]$ cp flye-info.txt temp_plassembler/assembly_info.txt
[...]

...for --flye_directory

Describe alternatives you've considered Perhaps this is the alternative (to what I currently do, follow up every dragonflye-mediated flye assembly with a full unicycler assembly)?

Thanks for openly sharing your plasmid recovery tool, either way!

gbouras13 commented 12 months ago

Hi @incoherentian ,

Thanks for this suggestion - it shouldn't be too hard to implement. I'll be very happy to support input to dragonflye, it's a great tool like everything else Robert creates :)

I would certainly recommend running Plassembler instead of Unicycler for your usecase (it's the exact reason why I made it!).

I'll add it with #36 in the next version for v1.3, I'm just waiting to check what Jan wanted in that issue. It should be trivial to implement this.

Also, you might want to try my tool Hybracter https://github.com/gbouras13/hybracter especially if you have multiple isolates, it comes built in with plassembler and a few other things (and it is why I made --flye_directory in the first place).

George

gbouras13 commented 11 months ago

Hi @incoherentian ,

I've implemented this in v1.3.0. Let me know if you have any issues.

George

incoherentian commented 11 months ago

Thanks!

Something weird occurring with my first try:

single positional indexer is out-of-bounds? ``` [c.medib@cl1(hawk) sbatch_sh]$ cat o.plass.63979805.log #!/bin/bash #SBATCH -J plassembler # Job name #SBATCH -o o.plass.%J.log # Job output file #SBATCH --ntasks=1 # number of parallel processes (tasks) #SBATCH --ntasks-per-node=1 # number of tasks per node #SBATCH --cpus-per-task=12 # physical processor cores per task #SBATCH --mem=20G # total memory assigned per node #SBATCH -p compute # selected queue #SBATCH --time=03:22:22 # time limit #SBATCH --account=scw1240 # project account code # Write this script to log scontrol write batch_script $SLURM_JOBID - # Load defaults set -eu module purge module load system #Set input/output folder &c. OUTDIR=/scratch/c.medib/bactopia_out/d61_plassembler_NNMR49-2_abx_only # SPECIFY SINGLE ISOLATE RUN=NN-MR49-2_abx_merge # --R1 R1=/scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/$RUN/${RUN}_R1_001_val_1.fq.gz # --R2 R2=/scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/$RUN/${RUN}_R2_001_val_2.fq.gz # --reads ONT=/scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/$RUN/${RUN}_ont.fastq.gz # flye assembly here FASSEMBLY=/scratch/c.medib/bactopia_out/d58uniflye_octo_NNMR49_unidragonflye_m180/NN-MR49-2_abx_merge_dflye_m180p_out_job63790440 # Load plassembler module load mambaforge/4.10.1 conda config --prepend pkgs_dirs /home/scw1940/.conda/pkgs conda config --prepend envs_dirs /home/scw1940/.conda/envs source activate conda activate plassembler202310 #plassembler usage at: https://plassembler.readthedocs.io/en/latest/run/ mkdir -p $OUTDIR/plassembler_job${SLURM_JOBID} plassembler run -t 12 -d /home/scw1940/.databases/plassembler/ \ -l $ONT -o $OUTDIR/plassembler_job${SLURM_JOBID} \ -1 $R1 -2 $R2 -c 700000 --flye_assembly $FASSEMBLY/flye.fasta \ --flye_info $FASSEMBLY/flye-info.txt --force Warning: '/home/scw1940/.conda/pkgs' already in 'pkgs_dirs' list, moving to the top Warning: '/home/scw1940/.conda/envs' already in 'envs_dirs' list, moving to the top 2023-10-25 22:53:45.721 | INFO | plassembler:begin_plassembler:96 - You are using Plassembler version 1.3.0 2023-10-25 22:53:45.722 | INFO | plassembler:begin_plassembler:97 - Repository homepage is https://github.com/gbouras13/plassembler 2023-10-25 22:53:45.722 | INFO | plassembler:begin_plassembler:98 - Written by George Bouras: george.bouras@adelaide.edu.au 2023-10-25 22:53:45.722 | INFO | plassembler:run:374 - Database directory is /home/scw1940/.databases/plassembler/ 2023-10-25 22:53:45.722 | INFO | plassembler:run:375 - Longreads file is /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_ont.fastq.gz 2023-10-25 22:53:45.723 | INFO | plassembler:run:376 - R1 fasta file is /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_R1_001_val_1.fq.gz 2023-10-25 22:53:45.723 | INFO | plassembler:run:377 - R2 fasta file is /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_R2_001_val_2.fq.gz 2023-10-25 22:53:45.723 | INFO | plassembler:run:378 - Chromosome length threshold is 700000 2023-10-25 22:53:45.723 | INFO | plassembler:run:379 - Output directory is /scratch/c.medib/bactopia_out/d61_plassembler_NNMR49-2_abx_only/plassembler_job63979805 2023-10-25 22:53:45.723 | INFO | plassembler:run:380 - Min long read length is 500 2023-10-25 22:53:45.724 | INFO | plassembler:run:381 - Min long read quality is 9 2023-10-25 22:53:45.724 | INFO | plassembler:run:382 - Thread count is 12 2023-10-25 22:53:45.724 | INFO | plassembler:run:383 - --force is True 2023-10-25 22:53:45.724 | INFO | plassembler:run:384 - --skip_qc is False 2023-10-25 22:53:45.724 | INFO | plassembler:run:385 - --raw_flag is False 2023-10-25 22:53:45.725 | INFO | plassembler:run:386 - --pacbio_model is nothing 2023-10-25 22:53:45.725 | INFO | plassembler:run:387 - --keep_fastqs is False 2023-10-25 22:53:45.725 | INFO | plassembler:run:388 - --keep_chromosome is False 2023-10-25 22:53:45.725 | INFO | plassembler:run:389 - --flye_directory is nothing 2023-10-25 22:53:45.725 | INFO | plassembler:run:390 - --flye_assembly is /scratch/c.medib/bactopia_out/d58uniflye_octo_NNMR49_unidragonflye_m180/NN-MR49-2_abx_merge_dflye_m180p_out_job63790440/flye.fasta 2023-10-25 22:53:45.726 | INFO | plassembler:run:391 - --flye_info is /scratch/c.medib/bactopia_out/d58uniflye_octo_NNMR49_unidragonflye_m180/NN-MR49-2_abx_merge_dflye_m180p_out_job63790440/flye-info.txt 2023-10-25 22:53:45.726 | INFO | plassembler:run:395 - Checking dependencies 2023-10-25 22:53:46.292 | INFO | plassembler.utils.input_commands:check_dependencies:199 - Flye version found is v2.9.2-b1786. 2023-10-25 22:53:46.293 | INFO | plassembler.utils.input_commands:check_dependencies:209 - Flye version is ok. 2023-10-25 22:53:46.339 | INFO | plassembler.utils.input_commands:check_dependencies:218 - Raven v1.8.3 found. 2023-10-25 22:53:46.340 | INFO | plassembler.utils.input_commands:check_dependencies:220 - Raven version is ok. 2023-10-25 22:53:46.969 | INFO | plassembler.utils.input_commands:check_dependencies:242 - Unicycler version found is v0.5.0. 2023-10-25 22:53:46.970 | INFO | plassembler.utils.input_commands:check_dependencies:255 - Unicycler version is ok. 2023-10-25 22:53:48.589 | INFO | plassembler.utils.input_commands:check_dependencies:265 - SPAdes v3.15.5 found. 2023-10-25 22:53:48.870 | INFO | plassembler.utils.input_commands:check_dependencies:278 - Samtools v1.18 found. 2023-10-25 22:53:48.923 | INFO | plassembler.utils.input_commands:check_dependencies:289 - minimap2 v2.26-r1175 found. 2023-10-25 22:53:49.002 | INFO | plassembler.utils.input_commands:check_dependencies:300 - fastp v0.23.4 found. 2023-10-25 22:53:49.067 | INFO | plassembler.utils.input_commands:check_dependencies:311 - chopper v0.6.0 found. 2023-10-25 22:53:49.194 | INFO | plassembler.utils.input_commands:check_dependencies:326 - mash v2.3 found. 2023-10-25 22:53:50.465 | INFO | plassembler.utils.input_commands:check_dependencies:337 - canu v2.2 found. 2023-10-25 22:53:52.162 | INFO | plassembler.utils.input_commands:check_dependencies:348 - dnaapler v0.3.2 found. 2023-10-25 22:53:54.882 | INFO | plassembler.utils.input_commands:check_dependencies:365 - BLAST version found is v2.14.1. 2023-10-25 22:53:54.883 | INFO | plassembler.utils.input_commands:check_dependencies:371 - All dependencies found. 2023-10-25 22:53:54.884 | INFO | plassembler:run:400 - Checking database installation. 2023-10-25 22:53:54.885 | INFO | plassembler.utils.db:check_db_installation:32 - PLSDB Database at /home/scw1940/.databases/plassembler has already been downloaded 2023-10-25 22:53:54.886 | INFO | plassembler:run:403 - Database successfully checked. 2023-10-25 22:53:54.886 | INFO | plassembler:run:406 - Checking input fastqs. 2023-10-25 22:53:55.177 | INFO | plassembler.utils.input_commands:validate_fastq:24 - FASTQ /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_ont.fastq.gz checked 2023-10-25 22:53:55.330 | INFO | plassembler.utils.input_commands:validate_fastq:24 - FASTQ /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_R1_001_val_1.fq.gz checked 2023-10-25 22:53:55.366 | INFO | plassembler.utils.input_commands:validate_fastq:24 - FASTQ /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_R2_001_val_2.fq.gz checked 2023-10-25 22:53:55.609 | INFO | plassembler:run:414 - FASTQ file /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_ont.fastq.gz compression is True 2023-10-25 22:53:55.610 | INFO | plassembler:run:415 - FASTQ file /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_R1_001_val_1.fq.gz compression is True 2023-10-25 22:53:55.610 | INFO | plassembler:run:416 - FASTQ file /scratch/c.medib/data.nextflow/d53_octo_NN-MR-49/NN-MR49-2_abx_merge/NN-MR49-2_abx_merge_R2_001_val_2.fq.gz compression is True 2023-10-25 22:53:55.611 | INFO | plassembler:run:424 - Filtering long reads with chopper 2023-10-25 22:53:55.611 | INFO | plassembler.utils.qc:chopper:25 - Started running chopper 2023-10-25 22:55:50.381 | INFO | plassembler.utils.qc:chopper:82 - Finished running chopper 2023-10-25 22:55:50.384 | INFO | plassembler:run:462 - You have specified a /scratch/c.medib/bactopia_out/d58uniflye_octo_NNMR49_unidragonflye_m180/NN-MR49-2_abx_merge_dflye_m180p_out_job63790440/flye.fasta and /scratch/c.medib/bactopia_out/d58uniflye_octo_NNMR49_unidragonflye_m180/NN-MR49-2_abx_merge_dflye_m180p_out_job63790440/flye-info.txt from an existing flye assembly. 2023-10-25 22:55:51.295 | INFO | plassembler:run:481 - Counting Contigs. 2023-10-25 22:55:51.357 | INFO | plassembler.utils.plass_class:get_contig_count:83 - Assembled 16 contigs. 2023-10-25 22:55:51.357 | INFO | plassembler:run:671 - More than one contig was assembled with Flye. 2023-10-25 22:55:51.358 | INFO | plassembler:run:672 - Extracting Chromosome. Traceback (most recent call last): File "/home/scw1940/.conda/envs/plassembler202310/bin/plassembler", line 10, in sys.exit(main()) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/plassembler/__init__.py", line 1520, in main main_cli() File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/click/core.py", line 1157, in __call__ return self.main(*args, **kwargs) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/click/core.py", line 1078, in main rv = self.invoke(ctx) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/click/core.py", line 1688, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/click/core.py", line 1434, in invoke return ctx.invoke(self.callback, **ctx.params) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/click/core.py", line 783, in invoke return __callback(*args, **kwargs) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/click/decorators.py", line 33, in new_func return f(get_current_context(), *args, **kwargs) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/plassembler/__init__.py", line 673, in run plass.identify_chromosome_process_flye(chromosome) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/plassembler/utils/plass_class.py", line 279, in identify_chromosome_process_flye plas_len = int(le.iloc[0]) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/pandas/core/indexing.py", line 1153, in __getitem__ return self._getitem_axis(maybe_callable, axis=axis) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/pandas/core/indexing.py", line 1714, in _getitem_axis self._validate_integer(key, axis) File "/home/scw1940/.conda/envs/plassembler202310/lib/python3.9/site-packages/pandas/core/indexing.py", line 1647, in _validate_integer raise IndexError("single positional indexer is out-of-bounds") IndexError: single positional indexer is out-of-bounds ```
gbouras13 commented 11 months ago

Hi @incoherentian ,

That is a strange bug indeed - I can't replicate it in my tests.

I would guess it is because the flye output contig names in the info file don't match the contig headers in the FASTA (because dragonflye changes this ?)

Anyway, the bug is caused by some bad code from me - I've made a fix that should hopefully fix the issue regardless.

It's on the dev branch if you are keen to try.

George

incoherentian commented 11 months ago

I had a go! An unsuccessful one...

Only read if you will not think less of me, knowing I am a poorly trained monkey using the "push various buttons on the git / pip box until I get working plassembler... or possibly a banana" approach :) ``` [c.medib@cl2(hawk) sbatch_sh]$ module load mambaforge [c.medib@cl2(hawk) sbatch_sh]$ conda config --prepend envs_dirs /home/scw1940/.conda/envs Warning: '/home/scw1940/.conda/envs' already in 'envs_dirs' list, moving to the top [c.medib@cl2(hawk) sbatch_sh]$ conda config --prepend pkgs_dirs /home/scw1940/.conda/pkgs Warning: '/home/scw1940/.conda/pkgs' already in 'pkgs_dirs' list, moving to the top [c.medib@cl2(hawk) sbatch_sh]$ conda env list # conda environments: # base                  *  /apps/languages/mambaforge/4.10.1/el7 signal                   /apps/languages/mambaforge/4.10.1/el7/envs/signal                          /home/c.medib/.bactopia/conda/bioconda--bactopia-gather-1.0.4 nanofilt                 /home/c.medib/.conda/envs/nanofilt bactopia-dev202309abricompat     /home/scw1940/.conda/envs/bactopia-dev202309abricompat dragonflye_m180          /home/scw1940/.conda/envs/dragonflye_m180 firefox113               /home/scw1940/.conda/envs/firefox113 ncbi-fcs-gx040           /home/scw1940/.conda/envs/ncbi-fcs-gx040 plassembler202309        /home/scw1940/.conda/envs/plassembler202309 plassembler202310        /home/scw1940/.conda/envs/plassembler202310 rclone                   /home/scw1940/.conda/envs/rclone trimgalore0610           /home/scw1940/.conda/envs/trimgalore0610 [c.medib@cl2(hawk) sbatch_sh]$ conda create -n plassembler-dev20231027 Collecting package metadata (current_repodata.json): done Solving environment: done ==> WARNING: A newer version of conda exists. <==   current version: 4.10.1   latest version: 23.9.0 Please update conda by running     $ conda update -n base conda ## Package Plan ##   environment location: /home/scw1940/.conda/envs/plassembler-dev20231027 Proceed ([y]/n)? y Preparing transaction: done Verifying transaction: done Executing transaction: done # # To activate this environment, use # #     $ conda activate plassembler-dev20231027 # # To deactivate an active environment, use # #     $ conda deactivate [c.medib@cl2(hawk) sbatch_sh]$ source activate [c.medib@cl2(hawk) sbatch_sh]$ conda activate plassembler-dev20231027 [c.medib@cl2(hawk) sbatch_sh]$ module avail git ---------------------------------------------------------- /apps/modules/tools ---------------------------------------------------------- git/2.19.2     git/2.36.0     git-lfs/2.13.3 [c.medib@cl2(hawk) sbatch_sh]$ ll -t /apps/modules/tools/git total 8 -rw-rw-r--. 1 software.builder software.builder 2060 Sep 25 22:23 2.36.0 -rw-rw-r--. 1 software.builder software.builder 2053 Apr 22  2020 2.19.2 [c.medib@cl2(hawk) sbatch_sh]$ module load git/2.36.0 [c.medib@cl2(hawk) sbatch_sh]$ cd /home/scw1940/.conda/envs/plassembler-dev20231027 [c.medib@cl2(hawk) plassembler-dev20231027]$ git clone https://github.com/gbouras13/plassembler.git Cloning into 'plassembler'... remote: Enumerating objects: 2630, done. remote: Counting objects: 100% (562/562), done. remote: Compressing objects: 100% (270/270), done. remote: Total 2630 (delta 291), reused 479 (delta 243), pack-reused 2068 Receiving objects: 100% (2630/2630), 88.03 MiB | 30.01 MiB/s, done. Resolving deltas: 100% (1667/1667), done. Updating files: 100% (165/165), done. [c.medib@cl2(hawk) plassembler-dev20231027]$ cd plassembler [c.medib@cl2(hawk) plassembler]$ pwd /home/scw1940/.conda/envs/plassembler-dev20231027/plassembler [c.medib@cl2(hawk) plassembler]$ ls .. conda-meta  plassembler [c.medib@cl2(hawk) plassembler]$ ls -a .. .  ..  conda-meta  plassembler [c.medib@cl2(hawk) plassembler]$ cd .. [c.medib@cl2(hawk) plassembler-dev20231027]$ mv plassembler bin [c.medib@cl2(hawk) plassembler-dev20231027]$ ll -t total 8 drwxrwsr-x. 9 c.medib scw1940 4096 Oct 27 16:36 bin drwxrwsr-x. 2 c.medib scw1940 4096 Oct 27 16:21 conda-meta [c.medib@cl2(hawk) plassembler-dev20231027]$ ls bin AUTHORS.md       HISTORY.md  README.md  docs  justfile    pyproject.toml    src CONTRIBUTING.md  LICENSE     build      img   mkdocs.yml  requirements.txt  tests [c.medib@cl2(hawk) plassembler-dev20231027]$ cd bin [c.medib@cl2(hawk) bin]$ module avail pip ---------------------------------------------------------- /apps/modules/tools ---------------------------------------------------------- pip/latest        pipe-viewer/1.6.6 [c.medib@cl2(hawk) bin]$ pip --version pip 21.1 from /apps/languages/mambaforge/4.10.1/el7/lib/python3.9/site-packages/pip (python 3.9) [c.medib@cl2(hawk) bin]$ pip install -e . WARNING: Value for scheme.headers does not match. Please report this to distutils: /apps/languages/mambaforge/4.10.1/el7/include/python3.9/UNKNOWN sysconfig: /apps/languages/mambaforge/4.10.1/el7/include/python3.9 WARNING: Additional context: user = False home = None root = None prefix = None Defaulting to user installation because normal site-packages is not writeable ERROR: File "setup.py" or "setup.cfg" not found. Directory cannot be installed in editable mode: /nfshome/store02/groups/scw1940/.conda/envs/plassembler-dev20231027/bin (A "pyproject.toml" file was found, but editable mode currently requires a setuptools-based build.) [c.medib@cl2(hawk) bin]$ ls AUTHORS.md       HISTORY.md  README.md  docs  justfile    pyproject.toml    src CONTRIBUTING.md  LICENSE     build      img   mkdocs.yml  requirements.txt  tests [c.medib@cl2(hawk) bin]$ module load pip [c.medib@cl2(hawk) bin]$ pip install -e . WARNING: Value for scheme.headers does not match. Please report this to distutils: /apps/languages/mambaforge/4.10.1/el7/include/python3.9/UNKNOWN sysconfig: /apps/languages/mambaforge/4.10.1/el7/include/python3.9 WARNING: Additional context: user = False home = None root = None prefix = None Defaulting to user installation because normal site-packages is not writeable ERROR: File "setup.py" or "setup.cfg" not found. Directory cannot be installed in editable mode: /nfshome/store02/groups/scw1940/.conda/envs/plassembler-dev20231027/bin (A "pyproject.toml" file was found, but editable mode currently requires a setuptools-based build.) [c.medib@cl2(hawk) bin]$ git clone https://github.com/gbouras13/plassembler.git Cloning into 'plassembler'... remote: Enumerating objects: 2630, done. remote: Counting objects: 100% (562/562), done. remote: Compressing objects: 100% (270/270), done. remote: Total 2630 (delta 291), reused 479 (delta 243), pack-reused 2068 Receiving objects: 100% (2630/2630), 88.03 MiB | 23.96 MiB/s, done. Resolving deltas: 100% (1667/1667), done. Updating files: 100% (165/165), done. [c.medib@cl2(hawk) bin]$ cd plassembler/ [c.medib@cl2(hawk) plassembler]$ pip install -e . WARNING: Value for scheme.headers does not match. Please report this to distutils: /apps/languages/mambaforge/4.10.1/el7/include/python3.9/UNKNOWN sysconfig: /apps/languages/mambaforge/4.10.1/el7/include/python3.9 WARNING: Additional context: user = False home = None root = None prefix = None Defaulting to user installation because normal site-packages is not writeable ERROR: File "setup.py" or "setup.cfg" not found. Directory cannot be installed in editable mode: /nfshome/store02/groups/scw1940/.conda/envs/plassembler-dev20231027/bin/plassembler (A "pyproject.toml" file was found, but editable mode currently requires a setuptools-based build.) [c.medib@cl2(hawk) plassembler]$ ```

The TL;DR is that I tried to install the dev build using pip within a new conda env for aforementioned test, but this results in:

[c.medib@cl2(hawk) plassembler]$ pip install -e .
WARNING: Value for scheme.headers does not match. Please report this to <https://github.com/pypa/pip/issues/9617>
distutils: /apps/languages/mambaforge/4.10.1/el7/include/python3.9/UNKNOWN
sysconfig: /apps/languages/mambaforge/4.10.1/el7/include/python3.9
WARNING: Additional context:
user = False
home = None
root = None
prefix = None
Defaulting to user installation because normal site-packages is not writeable
ERROR: File "setup.py" or "setup.cfg" not found. Directory cannot be installed in editable mode: /nfshome/store02/groups/scw1940/.conda/envs/plassembler-dev20231027/bin/plassembler
(A "pyproject.toml" file was found, but editable mode currently requires a setuptools-based build.)
gbouras13 commented 11 months ago

No judgment here Ian, sometimes I cant even get my own programs to install!

Pleasingly this has an easy fix. v1.4.0 incorporates this change is out on conda, so I’d just make a brand new environment with it.

George