http://www.perlmonks.org?node_id=484124


in reply to PPM Hell: "PPM::PPD::init: not a PPD and not a file"

For general ppm debugging, always turn on verbosity, and if that's not helpful, turn on LWP::Debug ( perl -MLWP::Debug=+ -S ppm).

Now to your particular error message, its looks like an error message generated by ipconf. PPM apparently isn't telling you which URL it's trying when it gets that message, but I wouldn't leap to the conclusion that its ExpatXS, especially since it is available from theoryx5. It looks more like a DNS problem than anything else (but you only show the top of the html returned).

Finally, shouldn't there be some kind of mechanism to prevent the publishing of ppds with dependencies that don't play nice with ppm?
No.
Would it be appropriate to notify randy kobes that this ppd causes problems?
Sure, but I'd contact him with more information than you've presented, something reproducible (if theoryx5 is having DNS problems, he might be in a position to fix it).

update: As a general note, since the theoryx5 repository is now being mirrored as part of the apache project, I'd try one of these mirrors (http://www.apache.org/dyn/closer.cgi/perl/win32-bin/ppms/) if its close .

MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
** The third rule of perl club is a statement of fact: pod is sexy.

Replies are listed 'Best First'.
Re^2: PPM Hell: "PPM::PPD::init: not a PPD and not a file"
by tphyahoo (Vicar) on Aug 16, 2005 at 11:47 UTC
    Thanks podmaster. I don't know if this sheds any light, but FWIW, what I got is pasted below, with LWP debug and verbose. Would you say this is reproducible enough to submit as a problem report?

    I didn't think this was a DNS problem because the first several dependencies installed okay, it just choked on the last. Or am I overlooking something?

    C:\thomasdata\experiments\catalyst>perl -MLWP::Debug=+ -S ppm PPM - Programmer's Package Manager version 3.1. Copyright (c) 2001 ActiveState SRL. All Rights Reserved. Entering interactive shell. Using Term::ReadLine::Stub as readline lib +rary. Type 'help' to get started. ppm> set install-verbose 1 Setting 'install-verbose' set to '1'. ppm> install http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd PPM::PPD::init: not a PPD and not a file: <HTML> <HEAD> <TITLE>IP-CONF Servermanager</TITLE> <META content="text/html; charset=iso-8859-1" http-equiv=Content-Type> <LINK href="./style.css" rel=stylesheet type=text/css> </HEAD> <BODY background="./anders.gif" bgColor=#ffffff bottomMargin=0 leftMar +gin=0 topM argin=0 MARGINHEIGHT="0" MARGINWIDTH="0"> <TABLE border=0 cellPadding=0 cellSpacing=0 height=80 width=700> <TBODY><TR><TD><IMG height=53 src="./leer.gif" ><IMG height=140 src=". +/sperr.gif " ></TD></tr></TBODY></table> <TABLE border=0 cellPadding=0 cellSpacing=0 height=20 width=700> <TBODY> <tr><TD rowspan=8>&nbsp;</td></tr> </TBODY> </TABLE> <TABLE border=0 cellPadding=0 cellSpacing=0 width=800> <TBODY> <TR> <TD valign=top width=1>&nbsp;</TD> <td valign=top width=120> <p> </p> </td> <TD width=430 valign="top"> <P align="left"> <FONT face="Arial, Helvetica, sans-serif" size=+1 color="#333333" CLAS +S="empu" > !! Fehler 404 !!<BR><BR>&nbsp;</FONT> </P> <P align="left"> <FONT face="Arial, Helvetica, sans-serif" size=-1 color="#333333" CLAS +S="stamm" >Die Aufgerufene URL ist nicht vorhanden !<BR><BR>Pr³fen Sie Ihre Eing +abe oder I hren Link.<BR><BR>&nbsp;</FONT> </P> <P align="left"><FONT face="Arial, Helvetica, sans-serif" size=-1 col +or="#33333 3" CLASS="empn" >&copy; 2005 IP-CONF Servermanager</FONT></P> </P> </TD> </TR> </TBODY> </TABLE> <P>&nbsp;</P> </BODY> </HTML>
      No. I don't see any lines beginning with LWP::, such as
      LWP::UserAgent::new: () LWP::UserAgent::request: () LWP::UserAgent::send_request: GET http://theoryx5.uwinnipeg.ca/ppms/PA +R-WebStart.ppd
      Either you're leaving something out, or you're pasting the wrong thing.

      The error message looks like a 404 error, but http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd is clearly not 404.

      Also, it appears your locale is dutch, and the error message is in dutch, it could be that you're behind some proxy (calling itself ip conf? not the ipconf i linked), but that wouldn't explain the lack of LWP debug messages.

      You could try adding Devel::Trace to the mix, but at this point it looks like a problem on your end somewhere (near the wire or the keys :)

      MJD says "you can't just make shit up and expect the computer to know what you mean, retardo!"
      I run a Win32 PPM repository for perl 5.6.x and 5.8.x -- I take requests (README).
      ** The third rule of perl club is a statement of fact: pod is sexy.

        Thanks again podmaster.

        Well, to be honest, I don't really understand LWP::Debug, although thanks to your post this is now on my list of things to learn. What I copied in my last post was straight out of the dos window, without skipping anything.

        Also, I don't think it's a proxy issue; my location is germany.

        But, I solved this issue without lwp debug. This was possible because, like I originally thought, the problem has to do with dependencies not installing "automagically" like I would exect with ppm.

        I determined the following dependencies chain, basically by reading the ppd definitions in the various ppd urls:

        http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd requires http://theoryx5.uwinnipeg.ca/ppms/XML-SAX-ExpatXS.ppd requires http://theoryx5.uwinnipeg.ca/ppms/XML-SAX.ppd which requires <INSTALL EXEC="PPM_PERL" HREF="http://theoryx5.uwinnipeg.ca/ppms +/scripts/install_libexpat">install_libexpat</INSTALL>
        This last "INSTALL EXEC" thing basically walks the user through copying a dll file into somewhere accessible by PATH. It appears to be this step which gums up the works.

        When I did ppm install http://theoryx5.uwinnipeg.ca/ppms/XML-SAX.ppd, including copying the dll, then ppm install http://theoryx5.uwinnipeg.ca/ppms/XML-SAX-ExpatXS.ppd, then finally ppm install http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd, I was finally able to install PAR-WebStart okay.

        I then deleted the dll and uninstalled all three modules with ppm uninstall module, and reinstalled, to see if I could recreate the problem. It turns out that

        ppm install http://theoryx5.uwinnipeg.ca/ppms/PAR-WebStart.ppd

        gives the same unhelpful error as before, but

        ppm install http://theoryx5.uwinnipeg.ca/ppms/XML-SAX-ExpatXS.ppd

        installs its depdendency, the dll, and itself, with no problem. On the initial install, I *think* ppm install XML-SAX-ExpatXS failed out with the same mysterious error as PAR-WebStart, but I can't recreate this. Could it be the dll got registered somehow even though I deleted it? I wish I had a fresh computer to try this out on. Well, maybe my memory is playing tricks on me.

        In any case, I have succeeded in recreating that PAR-WebStart has trouble initiating the automatic installation of its XML-SAX-ExpatXS dependency.

        I hope this is helpful to monks that have experienced the same PPM hell problems that I have. If someone knowledgable in ppm has any further light to shed on this, or workarounds, or ways to make something that should be easy, really easy, that would be great.

        PodMaster, again I totally appreciate the handholding. Even though it appears this wasn't a dns thing, your feedback kept me going on something that has been annoying me for months.

        I guess I finally will drop randy kobes a line about this as well.