I have an R package A and a package B. The package B genuinely depends on A for some of its functions. The package A depends on B, but only for testing. So the package dependency is not genuinely circular.
The travis build fails for A because upon installing A it tries to install B only to find A is not installed.
How can I tell travis not to worry about B until it starts testing?
My thoughts are to:
- Put all of B's dependencies in A, leaving B independent.
- Leave off the dependency of A on B, and construct the test as if B didn't exist.
But both seem as drastic as abandoning unit testing.
I've mocked up an minimum reproducible example:
https://github.com/HughParsonage/AAAA
https://github.com/HughParsonage/BBBB
When I push AAAA
to travis, I get:
ERROR: dependency ‘AAAA’ is not available for package ‘BBBB’
removing ‘/usr/local/lib/R/site-library/BBBB’
Error: Command failed (1)
Execution halted
My actual packages are