File tree 1 file changed +13
-3
lines changed
Distribution/Server/Features
1 file changed +13
-3
lines changed Original file line number Diff line number Diff line change @@ -72,6 +72,15 @@ serveLegacyGets = msum
72
72
movedPermanently (" /package/" ++ display (packageId :: PackageId )) $
73
73
toResponse " "
74
74
]
75
+ , dir " package" $ path $ \ fileName -> methodSP GET $
76
+ case Posix. splitExtension fileName of
77
+ (fileName', " .gz" ) -> case Posix. splitExtension fileName' of
78
+ (packageStr, " .tar" ) -> case simpleParse packageStr of
79
+ Just pkgid ->
80
+ movedPermanently (packageTarball pkgid) $ toResponse " "
81
+ _ -> mzero
82
+ _ -> mzero
83
+ _ -> mzero
75
84
]
76
85
where
77
86
-- HTTP 301 is suitable for permanently redirecting pages
@@ -127,11 +136,12 @@ serveArchiveTree = msum
127
136
]
128
137
]
129
138
where
130
- packageTarball :: PackageId -> String
131
- packageTarball pkgid = " /package/" ++ display pkgid ++ " /" ++ display pkgid ++ " .tar.gz"
132
-
133
139
docPath pkgid file = " /package/" ++ display pkgid ++ " /" ++ " doc/" ++ file
134
140
135
141
cabalPath pkgid = " /package/" ++ display pkgid ++ " /"
136
142
++ display (packageName pkgid) ++ " .cabal"
137
143
144
+ packageTarball :: PackageId -> String
145
+ packageTarball pkgid = " /package/" ++ display pkgid
146
+ ++ " /" ++ display pkgid ++ " .tar.gz"
147
+
You can’t perform that action at this time.
0 commit comments