You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: datafiles/templates/upload.html.st
+15-6Lines changed: 15 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -36,6 +36,15 @@ of that name and version, including <em>package</em><tt>.cabal</tt>.
36
36
See the notes at the bottom of the page.
37
37
</p>
38
38
39
+
<p>A Cabal package name can use any alphabetic Unicode code-point, however
40
+
Hackage rejects package names that use alphabetic code-points other than those
41
+
from the Latin alphabet (that is, <code>A</code> to <code>Z</code> and
42
+
<code>a</code> to <code>z</code>). With one exception, the name of a new package
43
+
cannot be the same as the name of an existing package, based on a
44
+
case-insensitive comparison. The exception is if the maintainer uploading the
45
+
new package is a maintainer of the existing package.
46
+
</p>
47
+
39
48
<h3 id="changelogs">Version history and change logs</h3>
40
49
41
50
<p>If a package includes a ChangeLog file (in either plain text or Markdown format), Hackage will link to it on the corresponding package page. The following filenames are recognized:</p>
@@ -66,25 +75,25 @@ See the notes at the bottom of the page.
66
75
<h3 id="versioning_and_curation">Package versioning and curation</h3>
67
76
68
77
<p>By default, uploaded packages are <i>curated</i> which means that both maintainers and hackage trustees may revise their metadata (particularly involving version bounds) to guide build tools in producing install-plans. (For more information on revisions, see the <a href="https://github.com/haskell-infra/hackage-trustees/blob/master/revisions-information.md">FAQ</A>).
69
-
78
+
70
79
<p>In order to ensure the integrity and well-functioning of the Hackage/Cabal ecosystem, all curated packages <abbr title="[RFC2119] The word 'should' is intended to denote that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications MUST be understood and carefully weighed before choosing a different course">should</abbr> follow Haskell's <a href="https://pvp.haskell.org/">Package Versioning Policy (PVP)</a>.</p>
71
80
72
81
<p>In particular, be aware that although the <a href="https://pvp.haskell.org/">PVP</a> and <a href="http://semver.org/">SemVer</a> are based on the same concepts they differ significantly in structure and consequently are <em>not compatible</em> with each other. Please consult the <a href="https://pvp.haskell.org/faq/#semver">PVP/SemVer FAQ section</a> for more details about the differences and related issues.</p>
73
-
82
+
74
83
<p>Further, an important property of the PVP contract is that it can only be effective and provide strong enough guarantees if it is followed not only by an individual package, but also by that package's transitive dependencies. Consequently, packages which are curated should aim to depend only on other curated packages.</p>
75
84
76
85
<p>In the course of the curation process, the
77
86
<a href="/packages/trustees">Hackage Trustees</a> need to be
78
87
able to contact package maintainers, to inform them about and help to resolve issues with
79
88
their packages (including its meta-data) which affect the Hackage
80
89
ecosystem.</p>
81
-
90
+
82
91
<p>Package uploaders may choose to exclude individual package uploads from curation, by setting the <tt>x-curation:</tt> field of the package's cabal file to <tt>uncurated</tt>. Packages which are uncurated have no expectations on them regarding versioning policy. Trustees or maintainers may <i>adopt</i> uncurated packages into the curated layer through metadata revisions. Metadata revisions must not set the value of the <tt>x-curation</tt> field to any variant of <tt>uncurated</tt>.</p>
83
-
92
+
84
93
<p>Two variants of the <tt>uncurated</tt> property are supported. First, <tt>uncurated-no-trustee-contact</tt>, which indicates that maintainers do not wish to be contacted by trustees regarding any metadata issues with the package. (Contact may still occur over issues that are not related to curation, such as licensing, etc.). Second, <tt>uncurated-seeking-adoption</tt>, which indicates that maintainers would like their package to be adopted in the curated layer, but currently some issue prevents this, which they would like assistance with.</p>
85
94
86
-
<p>In the future, metadata regarding curation will be made available in the UI of Hackage, and different derived indexes will be provided for the uncurated and curated layers of packages.</p>
87
-
95
+
<p>In the future, metadata regarding curation will be made available in the UI of Hackage, and different derived indexes will be provided for the uncurated and curated layers of packages.</p>
96
+
88
97
<h3>Open source licenses</h3>
89
98
90
99
<p>The code and other material you upload and distribute via this site must be
0 commit comments