-
Notifications
You must be signed in to change notification settings - Fork 11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
back-porting fast cmdline re-organization from drop-dropseq into master #64
base: master
Are you sure you want to change the base?
Conversation
…e py.test unit-testing
oh yeah, I also added some new py.test code. Ultimately I want this to replace the somewhat clunky |
…dline and it completes the trusty old unittest.py. However, more testing of spatial and puck code is required
…pendency to most recent version as fix
…ad route now to spacemake/contrib.py __version__ as also used in setup.cfg
…d but no samples, pre-configured with both config.yaml and sample project_df.csv)
… pretty much everywhere anyway)
… for the pytest unit tests
…run -n' dry run test of the workflow logic
Pulled all recent changes to master for fixing a number of open issues and greatly expanded the tests. This branch should now feature-wise be a direct drop-in replacement for master. But that needs extensive testing on real data. It would be great if you, @nukappa and @danilexn, could give it a spin and let me know about the breakage you encounter. Thanks! :) |
Sure, I run the tests and will let you know. Also, I write additional unit tests (e.g., so we don't have issues like #89 anymore). Anyway, I will not implement anything new feature-wise. |
… from list into a string. It should not be a list. :)
…was unexpected downstream. Please run tests after changes.
…ret. Modified to be relative to spacemake source
…when-creating-a-new-run-mode fix #88 name added to configyaml when creating a new run mode
…ated 54 ensure map strategy validated
…occur downstream though...
@marvin-jens can you please merge the current |
@nukappa conflicts have been solved here, I will run tests on Open-ST and tiny test data, can you please run some independently? Thanks :) |
Yes will do! Thank you! |
There's something wrong with the |
Most recent commit cf5cb81 seems to fix this. There's another issue, though: for very large samples, |
When we merge #103 here (as soon as tested), we should be able to merge this into There are a couple of optimizations and bugfixes that I implemented there (I can port them here, but since the BamTagHistogram functionality seems to work great, I would do both directly) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great Daniel! If we pass all tests I see no reason not to merge.
The 'drop-dropseq' development branch and 'master' have moved very far apart. This makes it difficult and error-prone to merge other developments against master (e.g. Daniels spatial work) into both branches and keep them in sync.
Predominantly, issues are caused by a set of commits that I had made to speed up the commandline interface. On current master, the commandline interface imports all sorts of things right away (spacemake.preprocess, spacemake.spatial) and each of these modules has heavy import dependencies (scipy, scanpy, novosparc, cv2, ...).
My changes consist of
get_...._parser()
into a single, newspacemake/cmdline.py
spatial/__init__.py
andpreprocess/__init__.py
smk.py
is reduced to only the Spacemake object and related stuffTo get this into master, I also had to pull along changes to
config.py
andproject_df.py
. Mostly, this is moving the parser-code into cmdline.py (see point (1) above), but they have also evolved to support more functionality that is in drop-dropseq (adapter-flavors having the biggest footprint).The current pull-request therefore provides two desireable advantages and some neutral changes. Desirable: massive speed-up of spacemake commandline interface, bringing master and drop-dropseq much closer together in the code. Neutral: support for adapter-flavors and a few more features is in the cmdline interface and config.py/project_df.py but the functionality is not there (requires more merges from drop-dropseq).
The pull request does not change the directory structure and still uses dropseq tools. The code that does the fastq-to-uBAM conversion is unchanged. The spatial stuff should be unchanged, except for moving of (most) parser code into spacemake/cmdline.py and changing some import statements as required by (2).
'spacemake/unittest.py` runs through without errors. But there are no real tests there yet for meshing, H&E integration, tile assignments etc.
It would be lovely if you could test this branch with your current data (@nukappa @danilexn) and let me know where it breaks.
I would also be happy to cut back on the neutral stuff (at least hide it from cmdline) that is non-functional anyway.
Best regards,
-Marvin