Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
archlinux
aurbot
Commits
b490d9eb
Commit
b490d9eb
authored
Feb 24, 2022
by
Seblu
Browse files
Support AUR API v5
parent
bb34abc5
Pipeline
#484
passed with stages
in 5 minutes and 16 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
aurbot
View file @
b490d9eb
...
...
@@ -77,18 +77,19 @@ class AURPackage(dict):
def
__init__
(
self
,
name
,
timeout
=
None
):
super
().
__init__
()
self
.
name
=
name
url
=
"%s/rpc.php?type=info&arg=%s"
%
(
self
.
AUR_URL
,
name
)
url
=
"%s/rpc.php?
v=5&
type=info&arg
[]
=%s"
%
(
self
.
AUR_URL
,
name
)
url_req
=
Request
(
url
,
headers
=
{
"User-Agent"
:
self
.
USER_AGENT
})
debug
(
f
"
{
name
}
Requesting url:
{
url
}
(timeout:
{
timeout
}
s)"
)
url_fd
=
urlopen
(
url_req
,
timeout
=
timeout
)
d
=
jloads
(
url_fd
.
read
().
decode
(
"utf-8"
))
if
d
[
"version"
]
!=
1
:
if
d
[
"version"
]
!=
5
:
raise
Exception
(
f
"Unknown AUR Backend version:
{
d
[
'version'
]
}
"
)
if
len
(
d
[
"results"
])
==
0
:
raise
Exception
(
f
"No such package:
{
name
}
"
)
if
d
[
"results"
][
"PackageBase"
]
!=
name
:
raise
Exception
(
f
"No such base package:
{
name
}
"
)
self
.
_info
=
d
[
"results"
]
try
:
if
d
[
"results"
][
0
][
"PackageBase"
]
!=
name
:
raise
Exception
(
f
"Not a base package"
)
self
.
_info
=
d
[
"results"
][
0
]
except
Exception
as
err
:
raise
Exception
(
f
"No such package:
{
name
}
"
)
from
err
def
__getattr__
(
self
,
name
):
for
k
,
v
in
self
.
_info
.
items
():
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment