-
-
Notifications
You must be signed in to change notification settings - Fork 119
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
#67 support pnpm #89
#67 support pnpm #89
Conversation
Unfortunately I can't review this right now, but is there anything in this that differs from the I'm mostly curious because we might want to rethink how we do this in the future, especially if nothing is different (apart from the executable name) |
I didn't want to differ from |
I mean the implementation is as similar as npm and yarn implementation. And you're right, there could be more generic implementation of such executables. |
I was also wondering whether we wouldn't have better to reuse the existing code for npm and simply add a configuration property to tell that we want to use Is it better than writing another implementation like you did? For now, I don't know. But if we use a more generic approach, it would probably make sense to do the same thing for |
Thanks guys for quick comments. I thought of reusing Having What I think is build script like node {
version = '10.6.0'
packager {
pnpm {
version = '4.12.4'
workDir = project.file('.gradle/pnpm')
}
}
} where node {
version = '10.6.0'
packager {
custom {
command = 'my_npm'
version = '4.12.4'
workDir = project.file('.gradle/pnpm')
script = 'my_npm/bin/my_npm'
}
}
} |
Sorry for my late answer, I had to take some time to think about that. I was working on a big refactoring aiming at supporting correctly Gradle lazy configuration that I pushed it #93. This gave me the opportunity to think about that. I think that your suggestion (regarding the packager to use and ho we configure it) is relevant. But this needs yet another big refactoring that will take much time. I suggest we proceed this way:
This pull request will require some additional work to get it mergeable into the master branch (mostly when we merge #93 which changed many internal thinks). It is not currently merged since I would like a review. @langrp would you be volunteer to adapt your pull request in order to follow #93 changes?
This implies some important changes in the production code but should change nearly nothing in the tests since those changes are backward compatible in the Groovy DSL point of view. |
Good news :). |
Great! |
@langrp , could you update your branch from the master branch? I'll have a look at why the tests are broken, but it will be easier if I only see the diff from the latest master version. |
@bsautel I have moved changes on top of master. Strangely the test fails on windows only, which I can't test locally. |
Thanks @langrp for these changes. I added a few comments to try to help you fix the broken tests on Windows. That's not always easy! |
@bsautel I had to ignore PNPX tests on windows as there seems to be an issue pnpm/pnpm#948. Other tests are fixed |
Any chance of getting this merged? |
Now that 3.0.0 has stabilised it's probably a good time to have another look at this, currently it doesn't compile if merged into master, it breaks on |
Is there any updated information on this? |
Currently we have proxy tests that suddenly started failing, that's a big blocker and currently the highest priority issue, you can see the current priority in the upcoming milestone The problem with the tests is that I can't just chip away at it like usual and in the past month I've had limited availability. |
Thanks for the update. I was able to get pnpm to work using NpxTask for the moment. |
It would be really nice to have pnpm support in the the plugin. @deepy Is there anything we could do to push this PR over the finish line? Are there still any blockers besides the merge conflicts? |
merge conflicts and test failures, if you can revitalize the PR I promise to take care and merge it before starting anything else |
@DreierF ideally by checking out the branch and merging master into it, creating a second PR from that branch |
I'd like to support pnpm similar way as npm, without need of npx.