minchoc 0.0.4__tar.gz → 0.0.5__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {minchoc-0.0.4 → minchoc-0.0.5}/PKG-INFO +7 -1
- {minchoc-0.0.4 → minchoc-0.0.5}/README.md +6 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/views.py +24 -10
- {minchoc-0.0.4 → minchoc-0.0.5}/pyproject.toml +1 -1
- {minchoc-0.0.4 → minchoc-0.0.5}/LICENSE.txt +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/__init__.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/admin.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/apps.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/constants.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/filterlex.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/filteryacc.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/migrations/0001_initial.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/migrations/0002_alter_company_options_alter_package_unique_together_and_more.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/migrations/__init__.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/models.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/parsetab.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/py.typed +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/settings.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/tests.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/urls.py +0 -0
- {minchoc-0.0.4 → minchoc-0.0.5}/minchoc/wsgi.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: minchoc
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.5
|
|
4
4
|
Summary: Short description of project for PyPI etc.
|
|
5
5
|
License: MIT
|
|
6
6
|
Author: Andrew Udvare
|
|
@@ -33,3 +33,9 @@ ALLOW_PACKAGE_DELETION = False
|
|
|
33
33
|
WANT_NUGET_HOME = False
|
|
34
34
|
```
|
|
35
35
|
|
|
36
|
+
## Notes
|
|
37
|
+
|
|
38
|
+
When a user is created, a `NugetUser` is also made. This will contain the API key for pushing.
|
|
39
|
+
|
|
40
|
+
Only `choco install` and `choco push` are supported.
|
|
41
|
+
|
|
@@ -13,3 +13,9 @@ INSTALLED_APPS = ['minchoc']
|
|
|
13
13
|
ALLOW_PACKAGE_DELETION = False
|
|
14
14
|
WANT_NUGET_HOME = False
|
|
15
15
|
```
|
|
16
|
+
|
|
17
|
+
## Notes
|
|
18
|
+
|
|
19
|
+
When a user is created, a `NugetUser` is also made. This will contain the API key for pushing.
|
|
20
|
+
|
|
21
|
+
Only `choco install` and `choco push` are supported.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
# pylint: disable=no-member
|
|
2
|
+
from datetime import datetime
|
|
2
3
|
from pathlib import Path
|
|
3
4
|
from tempfile import TemporaryDirectory
|
|
4
5
|
from typing import Any
|
|
@@ -53,7 +54,7 @@ def home(_request: HttpRequest) -> HttpResponse:
|
|
|
53
54
|
|
|
54
55
|
|
|
55
56
|
@require_http_methods(['GET'])
|
|
56
|
-
def metadata(_request: HttpRequest
|
|
57
|
+
def metadata(_request: HttpRequest) -> HttpResponse:
|
|
57
58
|
return HttpResponse(f'''
|
|
58
59
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
|
59
60
|
<service xml:base="http://fixme/api/v2/"
|
|
@@ -64,7 +65,7 @@ def metadata(_request: HttpRequest, ending: str = '\n') -> HttpResponse:
|
|
|
64
65
|
<atom:title>Default</atom:title>
|
|
65
66
|
<collection href="Packages"><atom:title>Packages</atom:title></collection>
|
|
66
67
|
</workspace>
|
|
67
|
-
</service
|
|
68
|
+
</service>\n''',
|
|
68
69
|
content_type='application/xml')
|
|
69
70
|
|
|
70
71
|
|
|
@@ -119,17 +120,22 @@ def find_packages_by_id(request: HttpRequest) -> HttpResponse:
|
|
|
119
120
|
if (sem_ver_level := request.GET.get('semVerLevel')):
|
|
120
121
|
logger.warning(f'Ignoring semVerLevel={sem_ver_level}')
|
|
121
122
|
proto = 'https' if request.is_secure() else 'http'
|
|
123
|
+
proto_host = f'{proto}://{request.get_host()}'
|
|
122
124
|
try:
|
|
123
|
-
|
|
124
|
-
make_entry(
|
|
125
|
-
for x in Package.objects.filter(nuget_id=request.GET['id'].replace('\'', '')))
|
|
125
|
+
content = '\n'.join(
|
|
126
|
+
make_entry(proto_host, x)
|
|
127
|
+
for x in Package.objects.filter(nuget_id=request.GET['id'].replace('\'', '')))
|
|
128
|
+
return HttpResponse(f'{FEED_XML_PRE}{content}{FEED_XML_POST}\n' % {
|
|
129
|
+
'BASEURL': proto_host,
|
|
130
|
+
'UPDATED': datetime.now().isoformat()
|
|
131
|
+
},
|
|
126
132
|
content_type='application/xml')
|
|
127
133
|
except KeyError:
|
|
128
134
|
return HttpResponse(status=400)
|
|
129
135
|
|
|
130
136
|
|
|
131
137
|
@require_http_methods(['GET'])
|
|
132
|
-
def packages(request: HttpRequest
|
|
138
|
+
def packages(request: HttpRequest) -> HttpResponse:
|
|
133
139
|
filter_ = request.GET.get('$filter')
|
|
134
140
|
order_by = request.GET.get('$orderby') or 'id'
|
|
135
141
|
if (sem_ver_level := request.GET.get('semVerLevel')):
|
|
@@ -140,10 +146,14 @@ def packages(request: HttpRequest, ending: str = '\n') -> HttpResponse:
|
|
|
140
146
|
logger.warning(f'Ignoring $top={top}')
|
|
141
147
|
filters = filter_parser.parse(filter_) if filter_ else {}
|
|
142
148
|
proto = 'https' if request.is_secure() else 'http'
|
|
149
|
+
proto_host = f'{proto}://{request.get_host()}'
|
|
143
150
|
content = '\n'.join(
|
|
144
|
-
make_entry(
|
|
151
|
+
make_entry(proto_host, x)
|
|
145
152
|
for x in Package.objects.order_by(order_by).filter(**filters)[0:20])
|
|
146
|
-
return HttpResponse(f'{FEED_XML_PRE}\n{content}{FEED_XML_POST}{
|
|
153
|
+
return HttpResponse(f'{FEED_XML_PRE}\n{content}{FEED_XML_POST}\n' % {
|
|
154
|
+
'BASEURL': proto_host,
|
|
155
|
+
'UPDATED': datetime.now().isoformat()
|
|
156
|
+
},
|
|
147
157
|
content_type='application/xml')
|
|
148
158
|
|
|
149
159
|
|
|
@@ -151,8 +161,12 @@ def packages(request: HttpRequest, ending: str = '\n') -> HttpResponse:
|
|
|
151
161
|
def packages_with_args(request: HttpRequest, name: str, version: str) -> HttpResponse:
|
|
152
162
|
if (package := Package.objects.filter(nuget_id=name, version=version).first()):
|
|
153
163
|
proto = 'https' if request.is_secure() else 'http'
|
|
154
|
-
|
|
155
|
-
|
|
164
|
+
proto_host = f'{proto}://{request.get_host()}'
|
|
165
|
+
content = make_entry(proto_host, package)
|
|
166
|
+
return HttpResponse(f'{FEED_XML_PRE}\n{content}{FEED_XML_POST}\n' % {
|
|
167
|
+
'BASEURL': proto_host,
|
|
168
|
+
'UPDATED': datetime.now().isoformat()
|
|
169
|
+
},
|
|
156
170
|
content_type='application/xml')
|
|
157
171
|
return HttpResponseNotFound()
|
|
158
172
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|