Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Add support for vendoring gopherjs #678
referenced this pull request
Aug 17, 2017
Thanks a lot investigating that it'd take to make vendoring GopherJS work!
If this is all that it takes, then that's great news. I think this is quite reasonable. I want to think a bit more about how we can clean it up and potentially simplify it, but this is already very manageable and solves a valuable issue.
@neelance Could you take a look and see if you get any ideas for how we could simplify the solution, now that we have a baseline of a solution?
@nmiyake How did you test this change? Do you have suggestions for how we can test it?
I currently have a project that uses
From a unit testing perspective this should be pretty straightforward to test (especially if we make the recommended modification and add the target vendor rewrite path as a parameter) -- we can narrowly test that all the import paths are re-written as expected and trust that things work.
The one complication here for integration testing comes from the fact that
If we assume for a second that
If vendoring isn't an approach this project is going to take, then the easiest way to integration test is probably Docker (this is what I did for a lot of my iteration). Would look like:
Either of the above approaches (or mimicking the above manually) should be sufficient for verification. As a sanity check I also did a search for the
The status of this PR is "open". To make progress, the PR needs to be reviewed and tested. The PR author has provided sufficient information to make that possible. There would either be changes requested, or it'd be approved and merged.
Unfortunately, I don't have an opportunity to review it soon.
Thank you for sending this PR, @nmiyake. It helped me better understand the problem and a potential solution (as well as ways of testing the end result).
I think it's conceptually simpler (there are more code changes, but that's mostly because the build context had to be propagated into more places) and has the benefit of making the
I'll close this since it shouldn't be needed now (if we do, it can be reopened). Thank you again!