Hi,<div><br></div><div>I think there is a bug in the path-&gt;url function (from net/url).</div><div><br></div><div><div>&gt; (url-&gt;string (path-&gt;url &quot;/tmp&quot;))</div><div>&quot;file:///tmp&quot;</div><div>&gt; (url-&gt;string (path-&gt;url &quot;/tmp/&quot;))</div>
<div>&quot;file:///tmp&quot;</div></div><div><br></div><div>As you can see the resulting URL is the same even if the path is a directory path.</div><div>I believe that in the second case the URL should be &quot;file:///tmp/&quot;.</div>
<div><br></div><div>This lead to an unexpected behaviour when using the result of path-&gt;url with combine-url/relative:</div><div><br></div><div><div>&gt; (url-&gt;string (combine-url/relative (path-&gt;url &quot;/tmp/&quot;) &quot;foo.txt&quot;))</div>
<div>&quot;file:///foo.txt&quot;</div></div><div><br></div><div>I&#39;ve made a fix and created the pull request #166 on GitHub (<a href="https://github.com/plt/racket/pull/166">https://github.com/plt/racket/pull/166</a>)</div>
<div><br></div><div>Could you please merge this change ?</div><div><br></div><div>Also, it should be noted that the path-&gt;url and url-&gt;path are not symmetric as one could expect.<br></div><div>Before my modification:</div>
<div>  (url-&gt;path (path-&gt;url &quot;/tmp/&quot;)) =&gt; #&lt;path:/tmp&gt;</div><div>After:</div><div>  (url-&gt;path (path-&gt;url &quot;/tmp/&quot;)) =&gt; #&lt;path:/tmp/.&gt;</div><div><br></div><div>I don&#39;t think it is a real problem but I thought it was worth mentioning.</div>
<div><br></div><div><div>Regards,<br></div><div>Philippe Mechaļ</div><div><br></div></div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div>