2013-04-04 3 views
4

패키지 foo에 의존하는 패키지에 대한 테스트를 작성하고 footest-suite으로 작성된 코드를 가져오고 싶습니다. 그러나 isn ' foo.cabal에 수출되거나 노출되었습니다. 즉 내 의존성 foo.cabal에서종속 패키지의 Test-Suite에서 모듈 가져 오기

이 섹션을

Test-Suite tests 
    Type:    exitcode-stdio-1.0 
    Build-Depends:  base, text, parsec >= 3, etc 
    Main-Is:   Test/TestRunner.hs 
    GHC-Options:  -fhpc -W -Wall -fno-warn-name-shadowing 
    CPP-Options:  -DTESTING 

을 가지고 그리고 난 모듈 Test/TestRunner.hs 수입의 일부를 가져올 것입니다. 나는 또한 cabal-dev로 이것을하고 싶다.

foo을 수정하지 않고이를 수행 할 방법이 있습니까? 그렇다면 무엇을 도와서 foo을 패치하는 좋은 방법이 될까요?

아마도 제 질문의 일반적인 버전은 입니다. Cabal에게 다른 패키지의 내 보낸 코드에 대한 액세스 권한을 부여 할 수 있습니까?

+0

"cabal에게 다른 패키지의 내 보낸 코드에 대한 액세스 권한을 부여한다고 말할 수 있다면 놀랄 것입니다." 일부 모듈을 내 보내지 않으면 사용자가 모듈에 액세스 할 수 없게됩니다. 카발 (cabal)이 단순한 스위치에서이를 무시했다면 저자의 의도를 존중하지 않을 것입니다. 당신이 unexported 것들에 대한 액세스가 필요하다면 소스'cabal unpack'을 사용하십시오. –

답변

2

대니얼 피셔 (Daniel Fischer)가 말했듯이 이것은 음모에 관해서는 어리석은 일입니다. 대신 lib 디렉토리를 포크하고 필요한 것을 내보낼 수 있습니다. 그리고 아마도 자식 서브 모듈이 여기에서 도움이 될 것입니다.