Closed tahahawa closed 7 years ago
Got the exact same error since a few days. Solution proposials from https://github.com/rmarquis/pacaur/issues/597 didn't help either
Well, it isn't the URL that is too long. You have lot of AUR packages (about 300), but the length limit is reached only with about 400 to 450 packages. The code should be able to handle more by splitting the request in subrequests (see #209 and #504), but that isn't used here. See the URL length check here, you're still way under the limit:
++ [[ 5802 -lt 8125 ]]
Two possible reasons come to mind, both involving the underlying curl:
I'd suggest starting to check if cower works correctly (cower -u
), or any other helper that relies on curl.
I can actually install packages, I updated pacaur using pacaur funnily enough (to make sure it wasn't a bug in the release I was using), but the full update doesn't work.
The certificate issue doesn't seem to be a problem either, as single packages work. Both with cower and pacaur. I tried the solution from #597 regardless. I also made sure to follow the manual upgrade guide for the ca-certificates change recently.
Here's the curl version:
curl 7.54.0 (x86_64-pc-linux-gnu) libcurl/7.54.0 OpenSSL/1.1.0e zlib/1.2.11 libpsl/0.17.0 (+libicu/59.1) libssh2/1.8.0 nghttp2/1.22.0
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: AsynchDNS IPv6 Largefile GSS-API Kerberos SPNEGO NTLM NTLM_WB SSL libz TLS-SRP HTTP2 UnixSockets HTTPS-proxy PSL
cower -u
does work, and detects a few updates:
:: alacritty-git 0.1.0.463.g7bc1691-1 -> 0.1.0.489.gf298e04-1
:: anki 2.1.0a10-1 -> 2.1.0a13-6
:: cloog 0.18.4-2 -> 0.18.5-1
:: gajim-plugin-omemo 1.2.0-1 -> 1.2.1-1
:: google-chrome 57.0.2987.133-1 -> 58.0.3029.96-1
:: google-chrome-beta 58.0.3029.68-1 -> 59.0.3071.36-1
:: gstreamer0.10-python 0.10.22-6 -> 0.10.22-7
:: insync-nautilus 1.3.12.36116-1 -> 1.3.12.36116-2
:: jdk 8u121-1 -> 8u131-1
:: nodejs-webpack 2.3.3-1 -> 2.4.1-1
:: pepper-flash 25.0.0.148-1 -> 25.0.0.171-1
:: pulsemixer 1.1.0-1 -> 1.2.0-1
:: reaper 5.403-1 -> 5.410-1
:: sayonara-player 0.9.2.git11.20161030-1 -> 0.9.3.git1.20170502-1
:: spotify 1.0.53.758-1 -> 1.0.53.758-2
:: webstorm 2017.1.1-1 -> 2017.1.2-1
I'm having the same issue. pacman
works fine. yaourt
works fine. cower
works fine. and even pacaur
works for upgrading single packages. but trying to do a general update with pacaur
results in "Failed to parse JSON" (x2) and then pacaur being unable to access the AUR.
Pacaur uses the default URL length limit, but it's possible the server settings got changed recently.
Try changing urlmax=8125
(here) to a lower value, in order to force pacaur to split the request.
Apart from this, I have no real idea about the reason curl fails here, and I'm afraid you guys are on your own.
As an extra piece of data:
When I run pacaur -Sua
, I get the JSON issue. But when I parse the output from pacaur -k
and just add the list of all packages in a space delimited fashion, the process proceeds as normal.
$ pacaur -Sa --needed 4pane adapta-gtk-theme-git albert aurvote clipit cndrvcups-lb-bin cower dropbox epson-inkjet-printer-escpr ffdec ffmpeg0.10 flatplat-theme-git git-extras gitflow-avh gitkraken gnome-perl gnome-shell-extension-system-monitor-git gnomecanvas-perl goocanvas1 google-chrome google-earth google-talkplugin gpodder3 gstreamer0.10 gstreamer0.10-bad gstreamer0.10-bad-plugins gstreamer0.10-base gstreamer0.10-base-plugins gstreamer0.10-ffmpeg gstreamer0.10-python gstreamer0.10-ugly gstreamer0.10-ugly-plugins hdf-java hmmer insync insync-nautilus koma-script lastpass-pocket lib32-qt4 libgnomecups libibverbs lua-posix makefontpkg masterpdfeditor mendeleydesktop metamorphose2 musicbrainz nautilus-megasync nixnote-beta nodejs-lts-boron numix-icon-theme-git nwjs-bin openprinting-ppds-postscript-ricoh openprinting-ppds-pxlcolor-ricoh openswan outspline pacaur pacleaner paper-gtk-theme-git perl-gnome2-wnck perl-goo-canvas perl-gtk2-imageview perl-gtk2-unique pithos pm2ml powerpill pspp pssh pycharm-community pyfa pyrenamer python-aiohttp python-cookiecutter python-liblarch-git python-pacparser python-path python-purplex python-tzlocal python2-markdown2-git python2-path python2-pypdf python2-pywebdav python2-thrift python2-vatnumber python2-vobject python3-kitchen python3-memoizedb python3-xcgf python3-xcpf pywebkitgtk qtwebkit rstudio-desktop-bin rtv samsung-unified-driver sardi-icons scudcloud shutter skype solaar spotify super-flat-remix-icon-theme tinyuml ttf-google-fonts-git ttf-mac-fonts vcsh vertex-themes-git wxgtk2.8 yed zotero
:: resolving dependencies...
:: looking for inter-conflicts...
:: ttf-google-fonts-git and noto-fonts are in conflict (noto-fonts). Remove noto-fonts? [y/N] y
:: gcc-multilib and gcc are in conflict (gcc). Remove gcc? [y/N] y
:: gcc-libs-multilib and gcc-libs are in conflict (gcc-libs). Remove gcc-libs? [y/N] y
:: adapta-gtk-theme-git latest revision -- fetching
:: cower-17-2 is up to date -- skipping
:: flatplat-theme-git latest revision -- fetching
:: gnome-shell-extension-system-monitor-git latest revision -- fetching
:: numix-icon-theme-git latest revision -- fetching
:: pacaur-4.7.7-1 is up to date -- skipping
:: paper-gtk-theme-git latest revision -- fetching
:: python-liblarch-git latest revision -- fetching
:: python2-markdown2-git latest revision -- fetching
:: vcsh-1.20151229.1-1 is up to date -- skipping
:: vertex-themes-git latest revision -- fetching
:: gstreamer0.10-base-0.10.36-9 has been flagged out of date on Thu 09 Mar 2017 01:49:40 AM EST
:: gstreamer0.10-base-plugins-0.10.36-9 has been flagged out of date on Thu 09 Mar 2017 01:49:40 AM EST
:: python2-thrift-0.9.3-1 has been flagged out of date on Fri 13 Jan 2017 03:54:30 PM EST
:: qtwebkit-2.3.4-5 has been flagged out of date on Fri 10 Mar 2017 06:48:34 PM EST
AUR Packages (117) Old Version New Version
aur/4pane 3.0-1 4.0-1
aur/adapta-gtk-theme-git 3.21.4.5.r6.99eace2-1 latest
aur/albert 0.9.1-1 0.11.1-1
aur/aurvote 1.9-2 1.9-3
aur/clipit 1.4.2-6 1.4.3-1
aur/cndrvcups-lb-bin 2.90-1 3.31-1
aur/dropbox 23.4.18-1 25.4.28-1
aur/epson-inkjet-printer-escpr 1.4.4-1 1.6.13-1
aur/ffdec 4.1.1-1 10.0.0-1
aur/ffmpeg0.10 0.10.16-2 0.10.16-3
aur/flatplat-theme-git r172.f9825ec-1 latest
aur/git-extras 4.2.0-1 4.3.0-1
aur/gitflow-avh 1.9.1-1 1.10.2-1
aur/gitkraken 2.4.0-1 2.5.0-1
aur/gnome-perl 1.045-4 1.045-7
aur/gnome-shell-extension-system-monitor-git 31.r18.gd04c136-1 latest
aur/gnomecanvas-perl 1.002-14 1.002-15
aur/goocanvas1 1.0.0-3 1.0.0-4
aur/google-chrome 55.0.2883.87-1 58.0.3029.96-1
aur/google-earth 7.1.2.2041-2 7.1.8.3036-1
aur/google-talkplugin 5.41.0.0-3 5.41.3.0-1
aur/gpodder3 3.8.4-1 3.9.3-1
aur/gstreamer0.10 0.10.36-4 0.10.36-16
aur/gstreamer0.10-bad 0.10.23-20 0.10.23-36
aur/gstreamer0.10-bad-plugins 0.10.23-20 0.10.23-36
aur/gstreamer0.10-base 0.10.36-3 0.10.36-9
aur/gstreamer0.10-base-plugins 0.10.36-3 0.10.36-9
aur/gstreamer0.10-ffmpeg 0.10.13-2 0.10.13-9
aur/gstreamer0.10-python 0.10.22-2 0.10.22-7
aur/gstreamer0.10-ugly 0.10.19-16 0.10.19-27
aur/gstreamer0.10-ugly-plugins 0.10.19-16 0.10.19-27
aur/hdf-java 2.11-1 2.13.0-1
aur/hmmer 3.1b1-2 3.1b2-1
aur/insync 1.3.9-1 1.3.16-1
aur/insync-nautilus 1.3.8.36087-1 1.3.12.36116-2
aur/koma-script 3.13.1783-1 3.21.2480-1
aur/lastpass-pocket 3.1.40-1 4.1.20-1
aur/lib32-openssl-1.0 1.0.2.k-1
aur/lib32-qt4 4.8.7-6 4.8.7-12
aur/libcurl-openssl-1.0 7.54.0-1
aur/libgnomecups 0.2.3-13 0.2.3-14
aur/libibverbs 1.1.8-2 1.2.1-1
aur/libopenssl-1.0-compat 1.0.2.k-3
aur/lua-posix 33.0.0.18.ge7dee4d-1 33.4.0-1
aur/makefontpkg 20150624-1 20160320-1
aur/masterpdfeditor 3.4.12-1 4.1.30-1
aur/megasync 3.0.1.0-2
aur/mendeleydesktop 1.17.6-1 1.17.9-1
aur/metamorphose2 0.8.3-2 0.8.4-1
aur/musicbrainz 2.1.5-7 2.1.5-8
aur/nautilus-megasync 2.9.2-3 3.0.1-3
aur/nixnote-beta 2.0-8 2.0_beta11-5
aur/nodejs-lts-boron 6.9.4-1 6.10.2-1
aur/numix-icon-theme-git 0.r1422.bca3c07-1 latest
aur/nwjs-bin 0.12.3-1 0.22.0-1
aur/openprinting-ppds-postscript-ricoh 20140829-1 20161206-1
aur/openprinting-ppds-pxlcolor-ricoh 20140319-2 20161206-1
aur/openswan 2.6.43.1-1 2.6.49.1-1
aur/outspline 0.8.2-1 0.8.3-1
aur/pacleaner 2.0-5 2.0-6
aur/paper-gtk-theme-git 299.cecb923-1 latest
aur/perl-gnome2-wnck 0.16-11 0.16-12
aur/perl-goo-canvas 0.06-7 0.06-9
aur/perl-gtk2-imageview 0.05-7 0.05-9
aur/perl-gtk2-unique 0.05-13 0.05-15
aur/pithos 1.2.1-3 1.3.1-1
aur/pm2ml 2016.8-3 2017.3-1
aur/powerpill 2016.5-3 2017-1
aur/pspp 0.10.1-1 0.10.2-1
aur/pssh 2.3.1-7 2.3.1-8
aur/pycharm-community 2017.1-1 2017.1.2-1
aur/pyfa 1.26.0-1 1.28.1-1
aur/pyrenamer 0.6.0-9 0.6.0-10
aur/python-aiohttp 2.0.3-1
aur/python-async-timeout 1.2.1-1
aur/python-cookiecutter 1.5.0-1 1.5.1-1
aur/python-liblarch-git v0.1.r131.gb873698-1 latest
aur/python-multidict 2.1.4-1
aur/python-pacparser 1.3.6-1 1.3.7-2
aur/python-path 8.2.1-1 10.1-1
aur/python-purplex 0.2.4-3
aur/python-tzlocal 1.3-1 1.4-1
aur/python-yarl 0.10.2-1
aur/python2-markdown2-git 2.3.0.r15.g05c1d89-1 latest
aur/python2-path 8.2.1-1 10.1-1
aur/python2-podcastparser 0.6.1-1
aur/python2-pypdf 1.13-2 1.13-3
aur/python2-pywebdav 0.9.8-2 0.9.8-5
aur/python2-thrift 0.9.2-1 0.9.3-1
aur/python2-vatnumber 1.1-2 1.2-1
aur/python2-vobject 0.8.1c-5 0.9.4.1-1
aur/python3-kitchen 1.2.1-1 1.2.4-1
aur/python3-memoizedb 2017-3 2017.3.30-1
aur/python3-xcgf 2017-1 2017.3-1
aur/python3-xcpf 2017-3 2017.2.10-1
aur/pywebkitgtk 1.1.8-3 1.1.8-5
aur/qtwebkit 2.3.4-4 2.3.4-5
aur/rstudio-desktop-bin 0.99.447-1 1.0.143-2
aur/rtv 1.12.0-0 1.15.1-1
aur/samsung-unified-driver 1.00.21-3 1.00.37-3
aur/samsung-unified-driver-common 1.00.37-3
aur/samsung-unified-driver-printer 1.00.37-3
aur/samsung-unified-driver-scanner 1.00.37-3
aur/sardi-icons 9.1-2 9.2-0
aur/scudcloud 2:1.40-2 2:1.58-1
aur/shutter 0.93.1-3 0.93.1-11
aur/skype 4.3.0.37-7 4.3.0.37-10
aur/solaar 0.9.2-5 0.9.2-6
aur/spotify 1.0.52.717-1 1.0.53.758-2
aur/super-flat-remix-icon-theme 1.09-1 20161024-1
aur/tinyuml 0.13_02-3 0.13_02-4
aur/ttf-google-fonts-git 20141126-1 latest
aur/ttf-mac-fonts 1-7 20100901.134-1
aur/vertex-themes-git r577.20160517-1 latest
aur/wxgtk2.8 2.8.12.1-4 2.8.12.1-6
aur/yed 3.15.0.2-1 3.17-1
aur/zotero 4.0.29.5-1 4.0.29.10-1
Repo Packages (27) Old Version New Version Download Size
community/cmark 0.27.1-1 0.13 MiB
extra/doxygen 1.8.13-3 3.83 MiB
multilib/gcc-libs-multilib 6.3.1-2 14.93 MiB
multilib/gcc-multilib 6.3.1-2 30.08 MiB
core/glib2-docs 2.52.1+4+g2eddcef1e-1 1.33 MiB
extra/gobject-introspection 1.52.1-1 1.05 MiB
extra/gperf 3.1-1 0.09 MiB
extra/gtk-doc 1.25+33+g567353f-1 0.27 MiB
extra/help2man 1.47.4-1 0.15 MiB
extra/l-smash 2.9.1-1 0.25 MiB
multilib/lib32-libpng12 1.2.57-1 0.09 MiB
community/librtmp0 2.4-2 0.05 MiB
community/libsass 3.4.3-1 0.64 MiB
community/pandoc 1.19.2.1-49 6.51 MiB
community/pandoc-citeproc 0.10.4.1-42 5.82 MiB
community/patchelf 0.9-1 0.04 MiB
extra/perl-extutils-depends 0.405-1 0.01 MiB
extra/perl-extutils-pkgconfig 1.16-1 0.01 MiB
extra/perl-test-pod 1.51-1 0.01 MiB
extra/python-beaker 1.8.1-2 0.07 MiB
extra/python-mako 1.0.6-2 0.12 MiB
community/python2-logbook 1.0.0-2 0.12 MiB
community/sassc 3.4.2-1 0.01 MiB
extra/source-highlight 3.1.8-11 0.59 MiB
extra/x264 2:148.20170121-1 0.55 MiB
extra/xorg-server-xvfb 1.19.3-2 0.71 MiB
extra/yasm 1.3.0-1 0.49 MiB
Repo Download Size: 67.94 MiB
Repo Installed Size: 370.95 MiB
:: Proceed with installation? [Y/n]
Interesting info.
I arbitrarily chose 4125 as the urlmax value, seems to work now as a workaround.
All right, I asked around a bit and here is a more likely explanation for the issue:
The newest curl release 7.54.0-3
that has left the [testing]
repo has been compiled with http/2
support (see FS#37894).
At this time, it is not clear to me if that sole change is reponsible for the issue, or if an associated server setting also plays a role. I'll adjust the max value as soon as I find out the right value.
I've looked into the various HTTP2 RFC, curl and nghttp2 documentation, but wasn't able to determine any information of a possible new limitation of the URL length.
I've played a bit with the AUR RPC (in my browser) and was able to determine that the server is still limited to the original total 8190 bytes length. Thus, the issue is effectively due to the new behavior of curl, which now uses HTTP/2 for HTTPS connections by default.
I've empirically determined that curl returns an error code 56 (CURLE_RECV_ERROR
) with any RPC request that has more than 4443 characters. I've reduced the AUR path length a bit (see c1142c1e21701a0c848f3cd21d57e205917d94ff and 9b0cf7174f63c907cc76c8b6f522d667e6a21802) and set the new urlmax value. Any request equal or larger than 4400 will now be split.
Feeback welcome.
Edit: Looks like the default nginx value for http/2 is defined here (4k). Thanks to eschwartz/contributors in -devops channel.
Pulled down the -git version and all seems to be working again. Cheers!
Thanks. New stable version has been released.
I'm still getting this issue.
Then please open a new ticket and attach the according debug output.
Important
Read me first: Bug reports
AND FOR GODS SAKE, do not ask support questions on the bug tracker. I'm not here to fix your freaking INCOMPETENCE. Or.give.me.MONEY. For paying support, see Paypal link in man page.
Version
pacaur -v
Description
JSON parsing fails, most likely because of too many args to URL?
I tried to see if I cut down the number of args to see if it would work, and it did in fact get the JSON once the args list was shorter.
Output
pacaur -Syu --noedit --needed --devel --noconfirm
Debug output
bash -x pacaur <your command>