Open alexlnkp opened 1 month ago
The issue was originally mistaken for YAY-specific problem, turns out the error was related to the fact that the AUR portal simply returned 404 Not Found
error on visit.
I forgot to check if AUR portal was even online... Turns out it isn't.
Trying to visit AUR portal leads to a 404 Not Found
error / nginx
The portal returned 404 Not Found
prior, but now it clearly states that the website is under maintenance. So yay
should cover BOTH cases, when the portal returns 404 Not Found
AND when the website is under maintenance.
The website's HTML for when it's under maintenance:
<!DOCTYPE html>
<!-- Source: https://gist.github.com/pitch-gist/2999707 -->
<html data-darkreader-mode="dynamic" data-darkreader-scheme="dark"><head>
<meta http-equiv="content-type" content="text/html; charset=windows-1252"><style class="darkreader darkreader--fallback" media="screen"></style><style class="darkreader darkreader--text" media="screen"></style><style class="darkreader darkreader--invert" media="screen">.jfk-bubble.gtx-bubble, .captcheck_answer_label > input + img, span#closed_text > img[src^="https://www.gstatic.com/images/branding/googlelogo"], span[data-href^="https://www.hcaptcha.com/"] > #icon, ::-webkit-calendar-picker-indicator, img.Wirisformula, img[src*="icons/"], img[src="/svg/calendar.svg"] {
filter: invert(100%) hue-rotate(180deg) contrast(90%) !important;
}</style><style class="darkreader darkreader--inline" media="screen">[data-darkreader-inline-bgcolor] {
background-color: var(--darkreader-inline-bgcolor) !important;
}
[data-darkreader-inline-bgimage] {
background-image: var(--darkreader-inline-bgimage) !important;
}
[data-darkreader-inline-border] {
border-color: var(--darkreader-inline-border) !important;
}
[data-darkreader-inline-border-bottom] {
border-bottom-color: var(--darkreader-inline-border-bottom) !important;
}
[data-darkreader-inline-border-left] {
border-left-color: var(--darkreader-inline-border-left) !important;
}
[data-darkreader-inline-border-right] {
border-right-color: var(--darkreader-inline-border-right) !important;
}
[data-darkreader-inline-border-top] {
border-top-color: var(--darkreader-inline-border-top) !important;
}
[data-darkreader-inline-boxshadow] {
box-shadow: var(--darkreader-inline-boxshadow) !important;
}
[data-darkreader-inline-color] {
color: var(--darkreader-inline-color) !important;
}
[data-darkreader-inline-fill] {
fill: var(--darkreader-inline-fill) !important;
}
[data-darkreader-inline-stroke] {
stroke: var(--darkreader-inline-stroke) !important;
}
[data-darkreader-inline-outline] {
outline-color: var(--darkreader-inline-outline) !important;
}
[data-darkreader-inline-stopcolor] {
stop-color: var(--darkreader-inline-stopcolor) !important;
}
[data-darkreader-inline-bg] {
background: var(--darkreader-inline-bg) !important;
}
[data-darkreader-inline-invert] {
filter: invert(100%) hue-rotate(180deg);
}</style><style class="darkreader darkreader--variables" media="screen">:root {
--darkreader-neutral-background: #131516;
--darkreader-neutral-text: #d8d4cf;
--darkreader-selection-background: #004daa;
--darkreader-selection-text: #e8e6e3;
}</style><style class="darkreader darkreader--root-vars" media="screen"></style><style class="darkreader darkreader--user-agent" media="screen">@layer {
html {
background-color: #181a1b !important;
}
html {
color-scheme: dark !important;
}
iframe {
color-scheme: initial;
}
html, body {
background-color: #181a1b;
}
html, body {
border-color: #736b5e;
color: #e8e6e3;
}
a {
color: #3391ff;
}
table {
border-color: #545b5e;
}
mark {
color: #e8e6e3;
}
::placeholder {
color: #b2aba1;
}
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
background-color: #404400 !important;
color: #e8e6e3 !important;
}
::-webkit-scrollbar {
background-color: #202324;
color: #aba499;
}
::-webkit-scrollbar-thumb {
background-color: #454a4d;
}
::-webkit-scrollbar-thumb:hover {
background-color: #575e62;
}
::-webkit-scrollbar-thumb:active {
background-color: #484e51;
}
::-webkit-scrollbar-corner {
background-color: #181a1b;
}
* {
scrollbar-color: #454a4d #202324;
}
::selection {
background-color: #004daa !important;
color: #e8e6e3 !important;
}
::-moz-selection {
background-color: #004daa !important;
color: #e8e6e3 !important;
}
}</style>
<meta name="keywords" content="automatic redirection">
<title>AUR under Maintenance</title>
<style>
body { text-align: right; padding: 150px; }
h1 { font-size: 50px; }
body { font: 20px Helvetica, sans-serif; color: #333; }
article { display: block; text-align: left; width: 650px; margin: 0 auto; }
a { color: #dc8100; text-decoration: none; }
a:hover { color: #333; text-decoration: none; }
</style><style class="darkreader darkreader--sync" media="screen"></style>
<meta name="darkreader" content="7285fd3633e14dbaa8205702f88a48db"><style class="darkreader darkreader--override" media="screen">.vimvixen-hint {
background-color: #7b5300 !important;
border-color: #d8b013 !important;
color: #f3e8c8 !important;
}
#vimvixen-console-frame {
color-scheme: light !important;
}
::placeholder {
opacity: 0.5 !important;
}
#edge-translate-panel-body,
.MuiTypography-body1,
.nfe-quote-text {
color: var(--darkreader-neutral-text) !important;
}
gr-main-header {
background-color: #0f3a48 !important;
}
.tou-z65h9k,
.tou-mignzq,
.tou-1b6i2ox,
.tou-lnqlqk {
background-color: var(--darkreader-neutral-background) !important;
}
.tou-75mvi {
background-color: #032029 !important;
}
.tou-ta9e87,
.tou-1w3fhi0,
.tou-1b8t2us,
.tou-py7lfi,
.tou-1lpmd9d,
.tou-1frrtv8,
.tou-17ezmgn {
background-color: #0a0a0a !important;
}
.tou-uknfeu {
background-color: #231603 !important;
}
.tou-6i3zyv {
background-color: #19576c !important;
}
div.mermaid-viewer-control-panel .btn {
background-color: var(--darkreader-neutral-background);
fill: var(--darkreader-neutral-text);
}
svg g rect.er {
fill: var(--darkreader-neutral-background) !important;
}
svg g rect.er.entityBox {
fill: var(--darkreader-neutral-background) !important;
}
svg g rect.er.attributeBoxOdd {
fill: var(--darkreader-neutral-background) !important;
}
svg g rect.er.attributeBoxEven {
fill: var(--darkreader-selection-background);
fill-opacity: 0.8 !important;
}
svg rect.er.relationshipLabelBox {
fill: var(--darkreader-neutral-background) !important;
}
svg g g.nodes rect,
svg g g.nodes polygon {
fill: var(--darkreader-neutral-background) !important;
}
svg g rect.task {
fill: var(--darkreader-selection-background) !important;
}
svg line.messageLine0,
svg line.messageLine1 {
stroke: var(--darkreader-neutral-text) !important;
}
div.mermaid .actor {
fill: var(--darkreader-neutral-background) !important;
}
mitid-authenticators-code-app > .code-app-container {
background-color: white !important;
padding-top: 1rem;
}
iframe#unpaywall[src$="unpaywall.html"] {
color-scheme: light !important;
}
embed[type="application/pdf"] { filter: invert(100%) contrast(90%); }</style></head>
<body>
<article>
<img src="AUR%20under%20Maintenance_files/archlinux-logo-dark-90dpi.ebdee92a15b3.png" alt="Arch Linux logo">
<h1>The AUR is currently undergoing maintenance</h1>
<div>
<p>As we <a href="https://lists.archlinux.org/archives/list/aur-general@lists.archlinux.org/thread/5JKT4WTJTASKN43YHJVWJSGGK4566BNN/">have previously announced</a> the AUR will undergo maintenance from 12:00
UTC until it is done (approximately 2 hours)!</p>
<p>— The Arch Linux DevOps Team</p>
</div>
</article>
</body></html>
Came here with the same issue. I think, the error should be different, like saying the portal is down.
Here's the HTML code for the 404:
<html>
<head><title>404 Not Found</title></head>
<body>
<center><h1>404 Not Found</h1></center>
<hr><center>nginx</center>
</body>
</html>
Came here with the same issue. I think, the error should be different, like saying the portal is down.
Here's the HTML code for the 404:
<html> <head><title>404 Not Found</title></head> <body> <center><h1>404 Not Found</h1></center> <hr><center>nginx</center> </body> </html>
Agree. The error that is printed out means nothing to the end user. In fact, I'd argue that it suggests that the yay
specifically is to blame here, when it, in fact, isn't.
The AUR site is undergoing maintenance as announced here: https://lists.archlinux.org/archives/list/aur-general@lists.archlinux.org/thread/5JKT4WTJTASKN43YHJVWJSGGK4566BNN/
Same issue with:
" response decoding failed: invalid character '<' looking for beginning of value"
Even rebuilt the yay package just in case, but turns out AUR is in maintenance mode:
"The AUR is currently undergoing maintenance
AUR will undergo maintenance from 12:00 UTC until it is done (approximately 2 hours)!"
The AUR site is undergoing maintenance as announced here: lists.archlinux.org/archives/list/aur-general@lists.archlinux.org/thread/5JKT4WTJTASKN43YHJVWJSGGK4566BNN
Still, a verbose message stating that the website is down should be printed instead of the one that is printed right now
The AUR site is undergoing maintenance as announced here: https://lists.archlinux.org/archives/list/aur-general@lists.archlinux.org/thread/5JKT4WTJTASKN43YHJVWJSGGK4566BNN/
Doesn't mean a yay
user should go and check the maillists, tbh.
Edited the issue to be more related to the cryptic error message for when the AUR portal is down/under maintenance
Should I edit this issue to be more about the fact that a better error message is warranted for when the website is under maintenance AND/OR is down?
Changing the error message would be optimal, since this error code looks like something broke in the yay package:
" response decoding failed: invalid character '<' looking for beginning of value"
The AUR site is undergoing maintenance as announced here: https://lists.archlinux.org/archives/list/aur-general@lists.archlinux.org/thread/5JKT4WTJTASKN43YHJVWJSGGK4566BNN/
Doesn't mean a
yay
user should go and check the maillists, tbh.
Agree that the error message from yay
should be more meaningful
I agree with this, a more user-friendly "the AUR could not be reached" or "AUR endpoint did not return valid data." , "Please check AUR status" could be of more assistance
Affected Version
Every version before and including
yay v12.3.5 - libalpm v14.0.0
Describe the bug
Whenever the AUR portal is down, whether it's for maintenance or not, the error message is not clear enough for end-users to understand.
Example output:
Trying to install any package (yay-git as example):
Reproduction Steps
yay
while AUR portal(s) is/are downExpected behavior
A clear and concise error message, stating that the website is under maintenance or is down.
Output
YAY config:
Running YAY with debug in config while the AUR portal is down for maintenance:
Trying to install
yay-git
usingyay
with debug turned on and the portal under maintenance: