Skip to content

Conversation

@JGarnica22
Copy link
Contributor

Describe your changes

Add methods/stacas new metric component.

Add non-supervised version of STACAS tool for integration of single-cell transcriptomics data.
This functionality enables correction of batch effects while preserving biological variability without requiring prior cell type annotations.

More information at:

Checklist before requesting a review

  • I have performed a self-review of my code

  • Check the correct box. Does this PR contain:

    • Breaking changes
    • New functionality
    • Major changes
    • Minor changes
    • Bug fixes
  • Proposed changes are described in the CHANGELOG.md

  • CI Tests succeed and look good!

@JGarnica22 JGarnica22 changed the title Stacas S Apr 16, 2025
@JGarnica22 JGarnica22 changed the title S STACAS Apr 16, 2025
@JGarnica22 JGarnica22 changed the title STACAS Add STACAS as new method component Apr 16, 2025
@rcannood rcannood requested a review from mumichae August 8, 2025 14:28
@rcannood
Copy link
Member

rcannood commented Aug 8, 2025

@JGarnica22 Could you merge upstream/main into this PR so the github actions can run? 🙇

@JGarnica22
Copy link
Contributor Author

@JGarnica22 Could you merge upstream/main into this PR so the github actions can run? 🙇

thanks, done!

@JGarnica22
Copy link
Contributor Author

Hi,

It looks like the check failure is related to reticulate and its Python discovery/installation mechanism.

From the logs, the STACAS package installs fine, but when the test is run, reticulate tries to provision its own Python:

Error in python_config_impl(python) : 
  Error running '/root/.cache/R/reticulate/uv/cache/builds-v0/.../bin/python': No such file or directory

This suggests that the temporary Python environment created by reticulate is not persisted or is being erased/moved between build/test phases inside the container.

I found this same problem when I run the test locally but I could solve it by not installing dependencies via remotes::install_github(). Then everything works fine locally, and reticulate is not broken.

remotes::install_github("carmonalab/STACAS@2.2.0", dependencies = FALSE)

This makes me think the problem is container-specific:

  • In the base image (openproblems/base_r:1.0.0), reticulate works fine until dependencies are installed.
  • Installing with dependencies = TRUE seems to trigger a rebuild/relocation of reticulate’s Python, which later cannot be found during the test stage.

Would you recommend a preferred way forward here?

  • Pinning/using a system-level Python inside the container so reticulate doesn’t try to manage its own?
  • Or caching/persisting .cache/R/reticulate between steps?

Thanks for the guidance!

@JGarnica22
Copy link
Contributor Author

Hi, thanks for your support, I merged the changes.

@mumichae mumichae merged commit 9539ab4 into openproblems-bio:main Sep 25, 2025
2 checks passed
@JGarnica22
Copy link
Contributor Author

Added changes into a new PR:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants