As it was initially discussed in #469, there is circular dependencies between fay and fay-base:
fay-base depends on fay.
fay-base contains modules with same names as in base (Prelude, Data.Maybe and so on). In order to prevent ambiguous modules names error, it was not exposed by default.
fay-tests executable which is hidden by flag test and disabled by default from fay package depends on fay-base.
Thus, fay-tests component could not be converted easily to enabled test-suite.
During discussion in #469 there were 2 proposals opened in order to mitigate circular dependencies:
- Move
fay-base into fay package as a (separate) library. (multi-component packages are enabled only since cabal 3.0).
- Split tests into compiler-related and base-related and convert them to corresponding test-suites.
I would prefer to keep two separate packages and relocate tests accordingly to their purpose (compiler or base library).
As it was initially discussed in #469, there is circular dependencies between
fayandfay-base:fay-basedepends onfay.fay-basecontains modules with same names as inbase(Prelude,Data.Maybeand so on). In order to preventambiguous modules nameserror, it was not exposed by default.fay-testsexecutable which is hidden by flagtestand disabled by default fromfaypackage depends onfay-base.Thus,
fay-testscomponent could not be converted easily to enabledtest-suite.During discussion in #469 there were 2 proposals opened in order to mitigate circular dependencies:
fay-baseintofaypackage as a (separate) library. (multi-component packages are enabled only since cabal 3.0).I would prefer to keep two separate packages and relocate tests accordingly to their purpose (compiler or base library).