mirror of
https://github.com/pypiserver/pypiserver
synced 2025-02-22 19:19:37 +01:00
initial add json support
This commit is contained in:
parent
35fcdd0e06
commit
43958e4548
@ -8,6 +8,7 @@ import zipfile
|
||||
from collections import namedtuple
|
||||
from io import BytesIO
|
||||
from urllib.parse import urljoin, urlparse
|
||||
from json import dumps
|
||||
|
||||
from pypiserver.config import RunConfig
|
||||
from . import __version__
|
||||
@ -362,6 +363,21 @@ def server_static(filename):
|
||||
|
||||
return HTTPError(404, f"Not Found ({filename} does not exist)\n\n")
|
||||
|
||||
@app.route("/:project/json")
|
||||
@auth("list")
|
||||
def json_info(project):
|
||||
rv = {}
|
||||
releases = []
|
||||
for x in config.backend.find_project_packages(project):
|
||||
r = {x.version: [{"url": "http://localhost:8080/packages/" + x.relfn_unix}]}
|
||||
releases.append(r)
|
||||
rv["releases"] = releases
|
||||
# todo check if this really that simple
|
||||
max_version = max([r for r in releases.keys()])
|
||||
rv = {"info" : {"version": max_version}}
|
||||
response.content_type = 'application/json'
|
||||
return dumps(rv)
|
||||
|
||||
|
||||
@app.route("/:project")
|
||||
@app.route("/:project/")
|
||||
|
Loading…
Reference in New Issue
Block a user