[GHC] #15575: Investigate Haskell rewrite of testsuite driver

#15575: Investigate Haskell rewrite of testsuite driver -------------------------------------+------------------------------------- Reporter: tdammers | Owner: (none) Type: task | Status: new Priority: normal | Milestone: Research needed Component: Test Suite | Version: 8.4.3 Keywords: | Operating System: Unknown/Multiple Architecture: | Type of failure: None/Unknown Unknown/Multiple | Test Case: | Blocked By: Blocking: | Related Tickets: #15363 Differential Rev(s): | Wiki Page: -------------------------------------+------------------------------------- Currently, the testsuite driver is written in Python. This is a bit of a liability: - Having to program in "not Haskell" might scare away potential contributors here - Even developers who are proficient in Python probably prefer working with Haskell - Managing Python as a dependency poses an additional burden and complicates deployment, setting up dev environments, CI, etc.; especially on Windows. - We miss out on the benefits of type checks and typed programming for a substantial bit of infrastructure - We miss out on a nice dog-fooding opportunity So in order to judge the scope of this task, and define it better, it would be good to investigate a bit: - What would it take to get high-level feature parity with the current solution? - Does the Haskell ecosystem cover the concerns that we would like to address with existing libraries? (Process management, for example) - Can we come up with a smart and frictionless way of migrating all the existing test cases in a reliable automated fashion? - What are risks and unknowns? #15363 is the recent case that sparked this - rather than the proposed patch there, which ports existing Haskell code to Python, we would prefer going in the other direction. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15575 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15575: Investigate Haskell rewrite of testsuite driver -------------------------------------+------------------------------------- Reporter: tdammers | Owner: (none) Type: task | Status: new Priority: normal | Milestone: Research | needed Component: Test Suite | Version: 8.4.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #15363 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Changes (by tdammers): * cc: tdammers, lantti (added) -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15575#comment:1 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler

#15575: Investigate Haskell rewrite of testsuite driver -------------------------------------+------------------------------------- Reporter: tdammers | Owner: (none) Type: task | Status: new Priority: normal | Milestone: Research | needed Component: Test Suite | Version: 8.4.3 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #15363 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by lantti): I haven't yet given a proper look to exactly what we would need for the testsuite as whole, but from the actual test cases most (6033/6618) are using the test language and canned functionality provided by the testsuite driver and should be straight-forward to migrate automatically (for example by modifing the existing test language interpreter), some (577/6618) use their own makefiles to do various tasks that might need manual work or elevated levels of smartness to migrate. Few (8/6618) run plain bash commands that probably will be migrated manually just because writing the automation would take longer. For the driver code, I can't yet at this point even start guessing which tools would be the most suitable and which compatibility problems they would have between our supported platforms. Counting the number of special cases and workarounds in the current driver might not be the most fruitful way as our set of tools and libraries would be completely different and have different problem spots. I'll still need to do some reading... -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/15575#comment:2 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC