Commit Graph

979 Commits

Author SHA1 Message Date
morganamilo
f4aa7f7933
Use alpm_sync_sysupgrade for uprepo
This allows us to support the Upgrade Usage option as well as relying on
alpm's logic instead of coming up with out own.

It is possible that this could lead to showing replaces in the upgrade
menu.
2018-07-26 14:00:08 +01:00
morganamilo
3180c66f39
Use alpm's built in searching for -Ss
This allows us to support the usage option in pacman.conf
This also speeds up the searching
2018-07-26 14:00:08 +01:00
morganamilo
2f975c7157
Update vendored dependencies 2018-07-26 14:00:08 +01:00
Anna
74f4a44da6
Merge pull request #584 from Morganamilo/completion-slow
Rework completion
2018-07-26 13:56:06 +01:00
morganamilo
bc6028348b
Make the completion refresh time configurable
The default setting is 7 days. The user can specify a different time in
days. -1 can be set to never refresh while 0 can be used to always
refresh.
2018-07-26 13:54:13 +01:00
morganamilo
9c882614a3
Rework completion
Bash seperates on whitespace, so the fish completion file
actually works for bash and zsh. So remove the concept of shells
entirley and just use the singular aur_sh.cache file.

If for some reason output without the repository data is needed, the
user could always just pipe it into awk like so
`yay -Pc | awk '{print $1}'`. Or perhaps a --quiet option could be added
where yay will strip the output itself.

The completion cache now updates when installing AUR packages. This is
done as a goroutine with no wait groups. This ensures the program will
never hang if there is a problem.

The completion is stil updated during -Pc but as long as an AUR package
has been installed recently it should not need to update.

The cache will now also wait 7 days instead of 2 before refreshing.
A refresh can be forced using -Pcc.
2018-07-26 13:54:10 +01:00
J Guerreiro
0b9e10e697
Demote FAQ question headers
Prevent FAQs from screaming at you
2018-07-26 12:05:50 +01:00
Anna
23417df29f
Merge pull request #588 from muesli/readme-typos
Fixed typos and improved punctuation consistency in README
2018-07-25 15:19:50 +01:00
Christian Muehlhaeuser
e6c2f6f3e3
Fixed typos and improved punctuation consistency in README 2018-07-25 13:58:18 +02:00
Anna
9670b46d7d
Merge pull request #587 from Morganamilo/print
Wrap -Sp
2018-07-25 11:21:10 +01:00
morganamilo
c4fec3dad0
Wrap -Sp
Currently we do not handle -Sp, this leads to yay trying a proper
install and failing. So instead pass it to pacman and exit. Ideally we
would extend -Sp to include AUR packages but for now don't bother.
2018-07-25 11:16:30 +01:00
Anna
96532c0b27
Merge pull request #562 from Morganamilo/#560
Add --makepkgconf
2018-07-24 13:08:21 +01:00
morganamilo
4af671afac
Add --[no]makepkgconf 2018-07-24 13:07:17 +01:00
Anna
f567abe386
Merge pull request #582 from Morganamilo/aururl
Add extra fields to -Si[i]
2018-07-24 13:06:12 +01:00
morganamilo
7c74dc5dec
Use none for empty fields 2018-07-24 13:04:32 +01:00
morganamilo
523c471a45
Add extra fields to -Si[i] 2018-07-24 13:04:32 +01:00
morganamilo
b3a53d613d
Update vendored dependencies 2018-07-24 13:04:07 +01:00
Anna
c8379db0aa
Merge pull request #583 from Morganamilo/Sca
Support --aur/--repo with -Sc
2018-07-24 02:51:27 +01:00
morganamilo
562a21fb4d
Support --aur/--repo with -Sc 2018-07-24 02:49:45 +01:00
Anna
4063cf9282
Merge pull request #580 from Morganamilo/fix-print
Don't print nothing to do every time
2018-07-24 00:17:08 +01:00
morganamilo
0ebaa8a750
Don't print nothing to do every time
When using nocombinedupgrade "there is nothing to do" is printed when
insinstalling repo packages. This is because as far as AUR
installer is concerned, there is nothing to do. Instead only print that
when doing a sysupgrade.
2018-07-24 00:13:34 +01:00
Anna
c0c018f005
Merge pull request #578 from Morganamilo/refactor-continue
Refactor continueTask()
2018-07-23 13:51:29 +01:00
morganamilo
e28f4f3431
Refactor continueTask()
The main reason behind this is for future localisation. yes and no can
be set to the localized equivalent and it should just work.

This Refactor also changes the function in ways which make it much less
confusing.

The param is no longer reversed and changed to a boolean. Before you had
to pass in Yy to get a default of no and vice versa.

The function now retuens false for no and true for yes. Before it would
return true if the default option was choosen.
2018-07-23 13:49:45 +01:00
Anna
a3564ec3a7
Merge pull request #577 from AladW/patch-1
yay.8: typo in --nopgpfetch flag
2018-07-22 00:09:06 +01:00
Alad Wenter
a5a9afd681 yay.8: fix typo in --nopgpfetch 2018-07-22 01:04:22 +02:00
Anna
17c310156c
Merge pull request #576 from Morganamilo/cleanup
Remove unused code, fix typo for -g flag
2018-07-21 18:15:11 +01:00
morganamilo
253d162b5b
Remove unused code, fix typo for -g flag
As it turns out, the times you need root also tend to be the time you
need to manipulate the database. So the needWait() function can be
removed and repllaced by needRoot()
2018-07-21 17:40:32 +01:00
J Guerreiro
f9972da763
Wait for db.lck to become available before starting a db operation (#573)
* Wait for db.lck to become available before starting a db operation

* Fix err!=nil issues and avoid spamming users

* Remove redundant cases

* Remove return
2018-07-21 16:18:19 +01:00
Anna
1d463d1e3f
Merge pull request #575 from Morganamilo/fix#574
Add --{no,ask}removemake
2018-07-21 14:26:52 +01:00
morganamilo
ec48698f35
Add --{no,ask}removemake 2018-07-21 14:20:00 +01:00
Anna
0e5cd51910
Merge pull request #571 from Morganamilo/abort-conflict
Abort ealy when there's conflicts with --noconfirm
2018-07-20 20:53:25 +01:00
morganamilo
1d17940ce9
Abort ealy when there's conflicts with --noconfirm
When using --nouseask, manual intervention is needed to resolve conflicts.
When also useing --noconfirm the install will always fail. So abort
early, before trying to install any AUR packages.
2018-07-20 20:42:47 +01:00
Anna
1bc8d5ef34
Merge pull request #570 from Morganamilo/fix-devel
Fix devel updates
2018-07-20 19:02:48 +01:00
morganamilo
b5b6928803
Fix devel updates
Commit 474cc56f8d refactored the
getCommit() function to use the standard passToGit() and capture()
functions.

Unlike every other external call, here we use .Wait() and kill the
command after 5 seconds. This was missed and ended up breaking the
function.

So instead don't use capture but the manual .Wait() call. passToGit() is
still used.
2018-07-20 18:59:12 +01:00
Anna
23e0064382
Merge pull request #569 from AlexWayfer/unify_output_with_pacman
Make output more similar to `pacman`s
2018-07-19 23:02:59 +01:00
Alexander Popov
900dfd1851
Make output more similar to pacmans
Before:

* Empty line after `Searching AUR`
* `There is` starts with capital letter without space before

```
> yay --combinedupgrade -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Searching databases for updates...
:: Searching AUR for updates...

:: Starting full system upgrade...
 there is nothing to do

> yay --nocombinedupgrade -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Starting full system upgrade...
 there is nothing to do
:: Searching databases for updates...
:: Searching AUR for updates...

There is nothing to do
```

After:

```
> yay --combinedupgrade -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Searching databases for updates...
:: Searching AUR for updates...
:: Starting full system upgrade...
 there is nothing to do

> yay --nocombinedupgrade -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 community is up to date
 multilib is up to date
:: Starting full system upgrade...
 there is nothing to do
:: Searching databases for updates...
:: Searching AUR for updates...
 there is nothing to do
```
2018-07-20 00:36:06 +03:00
Anna
dd891aba8c
Merge pull request #568 from Morganamilo/diffs-as-diffs
Show tar diffs as diffs instead of editing
2018-07-19 22:31:05 +01:00
morganamilo
d1146de6d5
Show tar diffs as diffs instead of editing
When looking at diffs of packages downloaded as tar achives actually
show a diff instead of opening the files in the ediror. This diff
is against /var/empty so it is not that useful. In realiy this is an
excuse to move the srcinfo parsing back down to after the git merge.

Viewing the build files in the editor requires the .srcinfos to be
parsed to know what .install files are used. Now viewing diffs does not
need the srcinfos so they can be moved to after we git merge.

Before now the srcinfo would have been of the previous version. This is
not much of a problem because we don't really use the srcinfo for much.
Checking the arch and pgpkeys which never really change.

Recently libc++ changed their pgp keys and yay missed that because it
parsed the old srcinfo without the new keys.

Viewing a proper diff for tars can be tossed on the todo by doing
something along the lines of:
	mv pkg{,.old}
	diff pkg{,.old}
	rm -rf pkg.old

But I doubt there are many people out there using tar so it's not much
of an issue.
2018-07-19 22:19:24 +01:00
Anna
298afac0e0
Merge pull request #567 from Morganamilo/refactor-install
Refactor install
2018-07-19 21:32:29 +01:00
morganamilo
1d443c0d40
Merge GIT_TERMINAL_PROMPT with the current env 2018-07-19 20:52:30 +01:00
morganamilo
0196a47ad2
Refactor combinedupgrade code 2018-07-19 20:43:03 +01:00
morganamilo
257653047b
Move sudoloop code to exec.go 2018-07-19 18:58:04 +01:00
morganamilo
474cc56f8d
Use passToGit() in getCommit() 2018-07-19 18:51:57 +01:00
morganamilo
8427dc3804
Move passToFoo() functions to their own file 2018-07-19 18:48:46 +01:00
morganamilo
473a2de225
Refactor pssToFoo() functions
Previously each call to an external command had two functions.
PassToFoo() and PassToFooCapture(). These functions are always similar
and end up with duplicated code.

So instead have the passToFoo() functions return the cmd itself and
create small helper functions show() and capture() which will run the
command and either forward it to std{out,err,in} or capture the output

Also the saveVCSInfo() function which was called after every makepkg
call is now only called after the pacman -U succeeds.
2018-07-19 18:37:28 +01:00
Anna
6e41ef882b
Merge pull request #566 from Morganamilo/fix#564
Fixup FAQ and manpage typo
2018-07-19 17:52:53 +01:00
morganamilo
526cec70ed
Fix typo in man page 2018-07-19 17:50:30 +01:00
morganamilo
6313c14382
Add editing pkgbuild dependencies to the FAQ 2018-07-19 17:50:16 +01:00
morganamilo
a576dbc1fd
Mention --save in --combinedupgrade FAQ 2018-07-19 17:31:22 +01:00
Anna
c10716ab1a
Merge pull request #559 from Morganamilo/install
Show .install files with pkgbuilds when editing
2018-07-19 17:23:03 +01:00