-
Notifications
You must be signed in to change notification settings - Fork 74
Add static install support #183
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
base: master
Are you sure you want to change the base?
Conversation
Taking out the Mac classic stuff might be better as a separate PR. But, oh, it is #82 and snuck into this PR. :) |
Thanks @Leont, I have taken your PR into my branch https://github.com/andk/cpanpm/tree/pr-183-contd and have continued on top of it. Outstanding issues:
I could make this a TRIAL release if this is considered helpful. My testing seems to show that this branch is working well as long as the configuration turns static install support off (use_static_install => 0). |
@Leont or who it may concern : there was a bit of progress in my branch pr-183-contd , current commit is 2.38-28-g5cd61c4e ; but now I'm stuck and would be glad to get feedback. The last commit is just a sketch and does not work when there is no Build.PL and maybe under other circumstances. For CPAN::Reporter to work we need a commandline that gets passed to CPAN::Reporter::test(), which then runs the tests. Any suggestions? BTW, the first report generated with that commit was: https://www.cpantesters.org/cpan/report/5b3bcb52-8317-11f0-bcfe-8752473a1684 about DBIx-Class-EncodedColumn-0.11 |
The spec says that there should always be a Build.PL or Makefile.PL to fall back on, so that isn't necessarily a disaster. If we can't make static install work with CPAN::Reporter (but I think we can), we should just disable it if CPAN::Reporter is turned on.
CPAN::Static comes with a command-line tool: |
@Leont : cpan-static does not seem to get installed per default. Should I write an issue to CPAN-Static-Install or do you have a better idea anyway? |
I can't reproduce that.
|
OMG, my bad, sorry. |
@Leont : now I think I have a case that calls for a defense directly in supports_static_install. Consider a In such a case supports_static_install() should most probably never return true; but currently it does. Case in question: https://metacpan.org/release/CXW/List-AutoNumbered-0.000010/source/META.json |
@Leont , just FYI: in my latest commit 2.38-35-ged0daea8 I have implemented the defense I originally considered a good fit for supports_static_install(); so I feel safer now with my current implementation and I'm testing it in two fullsmoker VMs over the next weeks. |
It shouldn't happen, but Murphy's law applies so it probably will at some point. Any author doing that is silly, and rejecting that seems reasonable. |
This is a first stab at implementing static installation.
It's not tested at all yet, nor is it complete (especially around logging and reporting), but it should in essence get the job done.