Skip to content

Commit 5f28e1f

Browse files
committed
Merge Upload page improvements PR #553
2 parents d369fb0 + dae0f0a commit 5f28e1f

File tree

1 file changed

+22
-28
lines changed

1 file changed

+22
-28
lines changed

datafiles/templates/upload.html.st

Lines changed: 22 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -39,15 +39,9 @@ the <code>Maintainer</code> field as above either to commit to supporting the fo
3939
yourself or to mark it as unsupported.
4040
</p>
4141

42-
<p>Note that all of the above is a makeshift upload policy based on the features
43-
available in the newer hackage-server. The <code>Maintainer</code> field has its uses,
44-
as does maintainer user groups. The libraries mailing list should probably
45-
determine the best approach for this.
46-
</p>
47-
4842
<h3>Upload forms</h3>
4943
<p>Some last formalities: to upload a package, you'll need a Hackage
50-
<a href="accounts.html">username</a> and password. (Alternatively, there's a
44+
<a href="accounts">username</a> and password. (Alternatively, there's a
5145
command-line interface via cabal-install, which also needs the same username
5246
and password.)
5347
</p>
@@ -72,36 +66,36 @@ See the notes at the bottom of the page.
7266
</li>
7367

7468
<li>
75-
Categories are determined by whatever you put in the <code>Category</code> field
76-
(there's no agreed list of category names yet).
69+
Categories are determined by whatever you put in the <code>Category</code> field.
70+
You should try to pick existing categories when possible.
7771
You can have more than one category, separated by commas. If no other versions of
7872
the package exist, the categories automatically become the package's tags.
7973
</li>
8074

8175
<li>
82-
Documentation for library packages should be generated by a maintainer.
83-
The means of doing this is still up in the air.
84-
</li>
85-
86-
<li>
87-
We have moved to Haddock 2, and expect some glitches.
88-
89-
If you notice anything broken, please report it on the
90-
<a href="http://trac.haskell.org/haddock">Haddock bug tracker</a>.
91-
</li>
92-
93-
<li>
94-
In GHC 6.8, several modules were split from the <code>base</code> package
95-
into other packages.
76+
Occasional changes to the GHC base package can mean that some work needs to be done to make packages compatible across a range of versions.
77+
See <a href="https://github.com/haskell-infra/hackage-trustees/blob/master/cookbook.md">these notes</a> for some tips in how to do so.
9678

97-
See <a href="http://www.haskell.org/haskellwiki/Upgrading_packages">these notes</a>
98-
on making packages work with a range of versions of GHC.
79+
There are some notes for upgrading <a href="http://www.haskell.org/haskellwiki/Upgrading_packages">much older</a> packages as well.
9980
</li>
10081

10182
<li>
102-
While <a href="http://www.haskell.org/haddock/">Haddock 2</a>
103-
accepts GHC features, it is also more picky about comment syntax than
104-
the old version.
83+
The hackage-server attempts to build documentation for library
84+
packages, but this can fail. Maintainers can generate their own
85+
documentation and upload it by using something along the lines of the
86+
shell script below (note that the last two commands are the key ones):
87+
88+
<pre>
89+
#!/bin/sh
90+
set -e
91+
92+
dir=\$(mktemp -d dist-docs.XXXXXX)
93+
trap 'rm -r "\$dir"' EXIT
94+
95+
cabal haddock --builddir="\$dir" --for-hackage --haddock-option=--hyperlinked-source
96+
# Starting with cabal 2.0, `--publish` is needed for uploading to non-candidate releases
97+
cabal upload -d \$dir/*-docs.tar.gz
98+
</pre>
10599
</li>
106100

107101
</ul>

0 commit comments

Comments
 (0)