<?xml version="1.0" encoding="UTF-8" standalone="yes"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-us"><id>https://blog.pgxn.org/tags/case-sensitive/</id><title>Case Sensitive</title><updated>2011-04-26T04:09:08Z</updated><link rel="self" type="application/atom+xml" href="https://blog.pgxn.org/tags/case-sensitive/feed.xml"/><link rel="alternate" type="text/html" href="https://blog.pgxn.org/tags/case-sensitive/"/><author><name>The PGXN Maintainers</name></author><generator uri="https://gohugo.io/" version="0.167.0">Hugo</generator><entry><id>https://blog.pgxn.org/post/4948135198</id><title type="html">Case Insensitivity</title><link rel="alternate" type="text/html" href="https://blog.pgxn.org/2011/case-insensitivity/"/><updated>2026-10-07T16:13:48Z</updated><published>2011-04-26T04:09:08Z</published><author><name>David E. Wheeler</name></author><category scheme="https://blog.pgxn.org/tags" term="lowercase" label="Lowercase"/><category scheme="https://blog.pgxn.org/tags" term="case" label="Case"/><category scheme="https://blog.pgxn.org/tags" term="case-sensitive" label="Case Sensitive"/><category scheme="https://blog.pgxn.org/tags" term="case-insensitive" label="Case Insensitive"/><category scheme="https://blog.pgxn.org/tags" term="meaning" label="Meaning"/><summary type="html"><![CDATA[<p>I pushed out new versions of PGXN::Manager, PGXN::API, and PGXN::Site today,
all with the aim of resolving some issues with case-sensitivity. I was alerted
to this when Daniele Varrzzo released <a href="https://pgxn.org/dist/italian_fts/">italian_fts</a> with the <a href="https://pgxn.org/tag/italian/">Italian tag</a> and
the API sync blew up. Oops.</p>
<p>So here&rsquo;s the deal. The following objects have case-insensitive names on PGXN:</p>
<ul>
<li>Distributions</li>
<li>Extensions</li>
<li>Versions</li>
<li>Users (nickname)</li>
<li>Tags</li>
</ul>
<p>These names are case-preserving, so they should show up with the proper
capitalization in JSON files and whatnot. But to avoid issues with URLs, I
decided that all file names should be lowercase only. Fortunately, nearly
everything was lowercase already: only a few nickname JSON files were not
lowercased, plus the files for <a href="https://pgxn.org/dist/pgtap/">pgTAP</a>. So once I got the code updated, I
renamed those files appropriately. In the case of the pgTAP download, I
actually re-indexed it, so that the prefix in the zip file would properly be
&ldquo;pgtap-0.25.0&rdquo; instead of &ldquo;pgTAP-0.25.0&rdquo;, since the file name is now
<code>pgtap-0.25.0.pgz</code>.</p>]]></summary><content type="html" xml:base="https://blog.pgxn.org/" xml:space="preserve"><![CDATA[<p>I pushed out new versions of PGXN::Manager, PGXN::API, and PGXN::Site today,
all with the aim of resolving some issues with case-sensitivity. I was alerted
to this when Daniele Varrzzo released <a href="https://pgxn.org/dist/italian_fts/">italian_fts</a> with the <a href="https://pgxn.org/tag/italian/">Italian tag</a> and
the API sync blew up. Oops.</p>
<p>So here&rsquo;s the deal. The following objects have case-insensitive names on PGXN:</p>
<ul>
<li>Distributions</li>
<li>Extensions</li>
<li>Versions</li>
<li>Users (nickname)</li>
<li>Tags</li>
</ul>
<p>These names are case-preserving, so they should show up with the proper
capitalization in JSON files and whatnot. But to avoid issues with URLs, I
decided that all file names should be lowercase only. Fortunately, nearly
everything was lowercase already: only a few nickname JSON files were not
lowercased, plus the files for <a href="https://pgxn.org/dist/pgtap/">pgTAP</a>. So once I got the code updated, I
renamed those files appropriately. In the case of the pgTAP download, I
actually re-indexed it, so that the prefix in the zip file would properly be
&ldquo;pgtap-0.25.0&rdquo; instead of &ldquo;pgTAP-0.25.0&rdquo;, since the file name is now
<code>pgtap-0.25.0.pgz</code>.</p>
<p>So why make these objects case-insensitive? Well, because I tend to think of
the names of things as having <em>meaning</em>, and really, there is no difference in
meaning between &ldquo;pgtap,&rdquo; &ldquo;pgTAP,&rdquo; or &ldquo;PGTap.&rdquo; I&rsquo;ve relased pgTAP; I think it
would be as confusing as hell if someone else released a completely different
distribution named &ldquo;PGTap.&rdquo; (And I went through a bit of hell when the
<a href="https://search.cpan.org/perldoc?Apache::test">Apache::test</a> CPAN module was replaced with <a href="https://search.cpan.org/perldoc?Apache::Test">Apache::Test</a>, a completely
new module. It really messed things up on the case-insensitive file system I
use).</p>
<p>But as I said, the case is preserved in the name I use, just not in the names
of files. So if you look at the <a href="https://pgxn.org/dist/pgtap/">pgTAP distribution page</a>, you&rsquo;ll see
that &ldquo;This Release&rdquo; is labeled &ldquo;pgTAP 0.25.0&rdquo; (I need to fix the <code>&lt;h1&gt;</code>
element still).</p>
]]></content></entry></feed>