]> Cypherpunks.ru repositories - gocheese.git/blobdiff - gocheese.texi
Checksumming of uploaded packages
[gocheese.git] / gocheese.texi
index fac8df0e4c564c3652a1e4043224be30c5dc4f38..f30743bffda1bc50c2c16332b4bbca7ba9911b5c 100644 (file)
@@ -10,9 +10,9 @@ GoCheese is Python private package repository and caching proxy.
 It serves two purposes:
 
 @itemize
-@item hosting of private locally uploaded packages (conforming to
-    @url{https://www.python.org/dev/peps/pep-0503/, PEP-0503} (Simple
-    Repository API))
+@item hosting of private locally uploaded packages
+    (conforming to @url{https://www.python.org/dev/peps/pep-0503/, PEP-0503}
+    (Simple Repository API))
 @item proxying and caching of missing packages from upstream
     @url{https://pypi.org/, PyPI}
 @end itemize
@@ -24,12 +24,18 @@ but nearly all the code was rewritten. It has huge differences:
 @itemize
 @item proxying and caching of missing packages
 @item atomic packages store on filesystem
-@item SHA256-checksummed packages (both uploaded and proxied one)
+@item SHA256-checksummed packages: storing checksums, giving them back,
+    verifying stored files integrity, verifying checksum of uploaded
+    packaged
 @item graceful HTTP-server shutdown
 @item no YAML configuration, just command-line arguments
 @item no package overwriting ability (as PyPI does)
 @end itemize
 
+Also it contains @file{pyshop2packages.sh} migration script for
+converting @url{https://pypi.org/project/pyshop/, Pyshop} database into
+GoCheese one, including private packages.
+
 GoCheese is free software, licenced under
 @url{https://www.gnu.org/licenses/gpl-3.0.html, GNU GPLv3}:
 see the file COPYING for copying conditions.
@@ -65,6 +71,9 @@ twine upload
     --password foo dist/tarball.tar.gz
 @end verbatim
 
+If @command{twine} sends SHA256 checksum in the request, then uploaded
+file is checked against it.
+
 @node Passwords
 @unnumbered Password authentication