Skip to content
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

Added Before_Z_Hooks copy of AcqEngJ code. #757

Merged
merged 4 commits into from
Apr 15, 2024
Merged

Added Before_Z_Hooks copy of AcqEngJ code. #757

merged 4 commits into from
Apr 15, 2024

Conversation

nicost
Copy link
Member

@nicost nicost commented Apr 13, 2024

I have no way of actually running or testing this code. Pycharm seems to think it will compile, except for the use of StrVector, which was not introduced by me. This is an effort to play by the rules, but I have to say that the bar of contributing to AcqEngJ is pretty high given the requirement to write the same code in two languages and test in two completely different environments.

@henrypinkard
Copy link
Member

Thanks for this PR.

This is an effort to play by the rules, but I have to say that the bar of contributing to AcqEngJ is pretty high given the requirement to write the same code in two languages and test in two completely different environments.

Just to clarify, AcqEngPy and AcqEngJ do not need to be perfectly synchronized, and there aren’t separate sets of tests for each. All tests for AcqEngJ can be found within pycro-manager. While it’s beneficial to include tests with new features to ensure long-term stability, it’s not a strict requirement.

I find that writing tests in Python makes them more accessible to many in our community who know Python but not Java. Although it’s feasible to consider a separate Java test suite for AcqEngJ, setting up and automating the current system took a significant amount of work, and I don't have any plans to do the same for Java tests.

If you’re interested in developing additional tests in Java, that would certainly be valuable. More tests are always good!

I have no objections to you taking any of the approaches of 1) Write tests in python 2) Write new tests in Java 3) add new features without adding new tests. The only required thing is that new features don't break existing functionality. Sometimes this inevitably will require working in Python. I don't see how this can possibly be avoided in a multi-language project where different frontends rely on the same underlying modules

@henrypinkard henrypinkard enabled auto-merge April 15, 2024 21:11
@henrypinkard henrypinkard merged commit 65d2d5a into main Apr 15, 2024
2 checks passed
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.

2 participants