Closed StephanHCB closed 11 months ago
Thanks for the detailed report.
Unfortunately CGO will be required for 2.x.x and beyond as we move to a different (Rust based) shared core, which contains most of the complex functionality that makes Pact work (there were also challenges with the Ruby based core).
You can stick with 1.x.x but it won't receive any major feature updates, and doesn't support things like plugins etc.
We currently take the position that a C development environment is not an undue expectation for a developer tool. For context, all Pact client languages will be moving (or already have moved) to this model.
Apologies for any inconvenience, however I will have to close this for now unless a workable model can be proposed.
Note, I will update the requirements in the docs for this package to note CGO and a C build end. For now, I'll close this off.
We tried updating our pact-go contract tests to v2.0.1, and saw that pact-go now apparently requires a C compiler to run.
Is there any chance this could be avoided? There are lots of systems and containerized build environments that do not have or want a C compiler.
We tried setting CGO_ENABLED=0, but since no pure go alternative is provided in the code, this did not help either.
Software versions
go1.20 windows/amd64
(also on linux)Expected behaviour
A simple consumer test that makes a single HTTP get request works.
Actual behaviour
go compile fails
Steps to reproduce
Any http request consumer test will do this. Simple example:
Relevent log files
No log file, the test fails to compile. Compile output see above.