<br><div class="gmail_quote">On Tue, Jan 19, 2010 at 5:01 PM, Robby Findler <span dir="ltr">&lt;<a href="mailto:robby@eecs.northwestern.edu">robby@eecs.northwestern.edu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I&#39;m not sure I&#39;m quite getting what you want, but is using &#39;planet<br>
url&#39; (via the planet commadline tool) sufficient?<br></blockquote><div><br><br>Sorry for being unclear.  It&#39;s not about &#39;planet url&#39;. <br><br>Basically the planet servlet appears to expect a parameter called &quot;lang&quot;, which is set to the current version number.  And planet does not download a package if the version number does not match the package&#39;s criteria. <br>
<br><div style="margin-left: 40px;">For example - with v4.2.3, if I run &#39;planet url bzlib base.plt 1 3&#39; I get the following url with a lang parameter <br><br><div style="margin-left: 40px;"><a href="http://planet.plt-scheme.org/servlets/planet-servlet.ss">http://planet.plt-scheme.org/servlets/planet-servlet.ss</a>?<b>lang=%224.2.3%22</b>&amp;name=%22base.plt%22&amp;maj=1&amp;min-lo=3&amp;min-hi=%23f&amp;path=%28%22bzlib%22%29<br>
</div><br>And if I strip the lang param out, which gives us  <br><br><div style="margin-left: 40px;"><a href="http://planet.plt-scheme.org/servlets/planet-servlet.ss?name=%22base.plt%22&amp;maj=1&amp;min-lo=3&amp;min-hi=%23f&amp;path=%28%22bzlib%22%29">http://planet.plt-scheme.org/servlets/planet-servlet.ss?name=%22base.plt%22&amp;maj=1&amp;min-lo=3&amp;min-hi=%23f&amp;path=%28%22bzlib%22%29</a><br>
</div>
<br>Passing the stripped url I get the following as a response instead of the package itself <br><br><div style="margin-left: 40px;">&quot;Binding for lang had improper format&quot;<br></div><br></div>Lang criteria is great for ensuring mzscheme downloading a package that matches its version, but this does not work well for mirroring, which simply tries to download all packages without caring about the versions.<br>
<br>I can currently think of the following ways to solve this issue - there probably are other ways I have not thought of, of course:<br><ul><li>Through planet server <br></li><ul><li>Enable &quot;lang-less&quot; download <br>
</li><ul><li>Either expose the directory structure where the plt files are held through the web server, or <br></li><li>Modify the servlet so lang becomes optional <br></li></ul><li>Provide an API to query for minimum version necessary for each plt file (this still requires one additional round trip) <br>
</li></ul><li>Through my mirroring client <br></li><ul><li>Try all mzscheme version number to see which one works (brute force) <br></li></ul></ul></div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

The .plt files are all there, but they aren&#39;t in a place that is<br>
served by the web server. I looked quickly into changing that; it<br>
isn&#39;t trivial, but it is certainly doable if &#39;planet url&#39; isn&#39;t<br>
sufficient.<font color="#888888"></font><br></blockquote><div><br>I was hoping this can be a trivial change - wasn&#39;t trying to create work for you ;)  If it&#39;s too much effort I can go with the brute force method until you can look into it.<br>
<br>Let me know if I need to provide additional clarifications.  Thanks,<br>yc<br><br></div></div>