Commit graph

1193 commits

Author SHA1 Message Date
Joe Groocock 52bf777e67
Print errors on stderr
This makes a start on fixing https://github.com/Jguer/yay/issues/715
It is by no means a complete solution, but instead a start
2018-11-20 22:27:30 +00:00
Anna 96a4d9637c
Merge pull request #791 from ZenixTheHusky/Fix#767
Modified readme to show extra dependency
2018-10-30 22:44:25 +00:00
Peter Dyer 57ba60f283 Modified readme to show extra dependency 2018-10-30 22:41:47 +00:00
Anna 431118b6ac
Merge pull request #783 from Morganamilo/unexport
Unexport consts. Make default a literal
2018-10-22 21:17:30 +01:00
Jguer 2ed7df4f5a
Unexport consts. Make default a literal
Signed-off-by: Jguer <me@jguer.space>
2018-10-22 21:00:16 +01:00
Anna b40b1ef910
Merge pull request #779 from ZenixTheHusky/Fix#767
--noprovides now hides Yay's provider menu
2018-10-18 23:42:53 +01:00
Peter Dyer c7123e03df Update man page for new --noprovides functionality 2018-10-18 23:27:49 +01:00
Peter Dyer e71fb8617a --noprovides now hides Yay's provider menu
--noprovides flag now takes the default option in the provider menu
without showing the menu.
2018-10-18 23:12:51 +01:00
Anna c2aeb4bc4e
Merge pull request #767 from Morganamilo/merge-dep-pool-order
Merge dep pool order and rework inner conflicts
2018-10-18 10:15:40 +01:00
Jguer 1f1cee7023
Update manual config version 2018-10-18 09:19:45 +01:00
Anna 79f7322722
Merge pull request #775 from dvejmz/fix#753
Handle libalpm callbacks when checking DB satisfiers for a package
2018-10-17 00:18:55 +01:00
dvejmz d42f737849 Handle libalpm callbacks when checking DB satisfiers for a package
Hide provider menu when checking for the existence of a package in
the repos
2018-10-16 23:55:35 +01:00
Anna a565544712
Merge pull request #770 from ZenixTheHusky/Fix#769
Added a more verbose message when db.lck exists
2018-10-13 18:57:40 +01:00
Peter Dyer 145a1393b5 Added a more verbose message when db.lck exists 2018-10-13 18:55:09 +01:00
morganamilo 7702a88ebb
Print conflicts in order of install
This is usefull for inner conflicts, you can follow when packages will
be swapped out with others.
2018-10-13 18:24:22 +01:00
morganamilo 0bfba1f24b
Use slices for AUR dep resolving
This ensures AUR packages are always installed in the order specified by
the user. In the case there are any inner conflicts packages will be
removed in a predictable way.
2018-10-13 18:24:00 +01:00
morganamilo f648697994
Rework inner conflicts
Inner conflicts now check against the previously installed aur packages
For example when installing yay, yay-bin and yay-git

yay will be checked the previously insalled packages (nothing)

yay-bin will be checked the previously insalled packages and see that it
conflicts with yay and warn you that yay will be removed

yay-git will be checked the previously insalled packages and see that it
conflicts with yay but see that it has already been removed by yay-bin
so does nothing. Then it will see that it conflicts with yay-bin and
warn you that yay-bin will be removed

This example is unlikley to happen unless the user enters
`yay -S yay yay-bin yay-git`. But where this does happen is packages
which have some sort of bootsrapping process such as ffmpeg-libfdk_aac.

If two repo packages conflict then we abort. This is because they will
be installed at the same time and we never swap repo packages mid AUR
install.
2018-10-13 17:04:22 +01:00
morganamilo 5080e400e1
Remove printing conflict name in conflicts
Currently when printing conflicts the package name is printed and then
name of the conflict if it differs from the package name.

For example if yay-git is installed and you are installing yay-bin:
	yay-bin conflicts with yay
	yay-git provides yay

	so the conflict is printed as "yay-bin (yay)"

This is not too bad but some packages have many provides and conflicts
that ends up cluttering the output.

For example if gvim is installed and you are installing vim:
	"gvim, gvim (vim-minimal), gvim (vim)" is printed

Just printing the package name should be enough information. If not the
user can always -Si either package.
2018-10-13 17:04:22 +01:00
morganamilo ff4f076d57
Move depSolver checks back to depCheck.go 2018-10-13 17:04:22 +01:00
morganamilo a83f8fb9e8
Remove depPool and depOrder code 2018-10-13 17:04:21 +01:00
morganamilo 4ff36fbd4b
Use depSolver in install 2018-10-13 17:04:21 +01:00
morganamilo 704e8406d1
Merge depOrder with depSolver
merge both dependency resolving parts into depSolver. The name was
choosen simply to not colide with the current code.

depSolver works but it not implemented in the install process and is
missing conflict checking.
2018-10-13 17:04:21 +01:00
Anna 827dbd21cb
Merge pull request #768 from Morganamilo/askflag
Add ask to accepted flags
2018-10-13 01:33:05 +01:00
morganamilo 8c44da374c
Add ask to accepted flags
Again, the list was generated via the manpage and as this is
undocumented it was forgotten.
2018-10-13 01:31:16 +01:00
morganamilo 0efc31a881
Add helper functions for []Base 2018-10-11 00:14:33 +01:00
morganamilo 75d01f32b4
Move Base code to dep.go 2018-10-10 22:28:01 +01:00
morganamilo 5109fc6250
Move target code to dep.go 2018-10-10 22:13:00 +01:00
Anna 2034575a76
Merge pull request #766 from Morganamilo/innerconflicts
Don't abort on inner conflicts
2018-10-10 19:31:48 +01:00
morganamilo 3861aef502
Don't abort on inner conflicts
Currently there may be times where there are inner conflicts but the
install would go okay as packages will be swapped out as they go. Warn
the user but leave it up to them if they want to continue.
2018-10-10 16:31:55 +01:00
Anna 69fd7a9b9e
Merge pull request #764 from Morganamilo/fix#762
Allow --print again
2018-10-09 16:16:25 +01:00
morganamilo 0f4768b4fe
Allow --print again
Comit 2d6fe95903 renamed the Yay specific
flag -P/--print to -P/--show. The rename caused --print to stop being
accepted as it was no longer in the list of accepted args.
2018-10-09 16:15:46 +01:00
Anna d6d76ee430
Merge pull request #763 from Morganamilo/fix#762
Fix missing '-' in flags
2018-10-09 16:06:58 +01:00
morganamilo 73deae94cf
Fix missing '-' in flags
isArg() was generated from pacman's manpage using a script. All dashes
were stripped out. Some flags used '-' as a seperator and were stripped
out by mistake.
2018-10-09 16:06:14 +01:00
Anna 5fe9160b1b
Merge pull request #760 from Morganamilo/fixprotocols
Use correct source protocol for VCS checks
2018-10-09 01:24:57 +01:00
morganamilo f26f36d459
Update tests 2018-10-09 01:21:31 +01:00
morganamilo cbc2a87c73
Use correct source protocol for VCS checks
Previously it was assumed that "git+https" means: use git and if that
fails fall back to https. What this actually means is just: use git over
https. Similary "git" just means use git and "git+http" means use git
over http.

Thus there is only ever one protocol to use. The current protocols array
has been kept for backwards compatibility with the vcs.json file. The
difference being now it will only ever place one protocol into the
array. Also when reading the array, the last protocol is always used.
This is so that entries that have not been regenerated will use the
correct protocol.
2018-10-09 01:18:23 +01:00
Jguer 621b8aac43
Update constant version. Add transitional support for patch version 2018-10-08 18:46:51 +01:00
J Guerreiro e316c979cc
Merge pull request #757 from Jguer/revert-756-fix-#752
Revert "Don't show missing packages if they are ignored.  Closes #752"
2018-10-08 11:53:02 +01:00
J Guerreiro f74a4f33b5
Revert "Don't show missing packages if they are ignored. Closes #752" 2018-10-08 11:51:19 +01:00
J Guerreiro a19151504d
Merge pull request #756 from Jguer/fix-#752
Don't show missing packages if they are ignored.  Closes #752
2018-10-08 00:27:55 +01:00
Jguer 9ad7c34949
Don't show missing packages if they are ignored 2018-10-08 00:20:43 +01:00
Anna 6ee14d44b8
Merge pull request #738 from Morganamilo/fix#736
Rework cleanafter
2018-10-04 09:18:57 +01:00
Anna c574cdcf98
Merge pull request #744 from tomswartz07/typos
Fix Typos
2018-10-03 09:07:10 +01:00
Tom Swartz ae7400890d Fix Typos 2018-10-02 16:30:18 -04:00
Anna 7ee2e5d1eb
Merge pull request #739 from Morganamilo/ttycolour
Support color = auto
2018-09-27 18:45:29 +01:00
morganamilo e78070ebbe
Support color = auto
This is done using the test command as the stdlib lacks any way to
do this without using syscalls directly
2018-09-27 16:52:22 +01:00
morganamilo 4cc57dd970
Rename afterclean to cleanafter
This makes more sense and falls in line with the structs value which has
always been cleanafter. afterclean is still useable for compatibility
but is undocumented.
2018-09-27 16:12:43 +01:00
morganamilo 42cba53165
Update doc for --afterclean and fix typo 2018-09-27 16:08:00 +01:00
morganamilo 98e6caefef
Fix dangling src/ directory
Yay first calls 'makepkg --nobuild -fC' to update the pkver. Later on we
call 'makepkg -cf --noectract --noprepare --holdver' to actually build
the package.

Inbetween these two calls we keep the already extracted
sources to save time on the reextract and duplicated call to prepare
(pkgbuilds should not require user input but things such as linux-ck do
and calling prepare twice will actually cause them to promt twice)

We also have two checks. First we see if the package is already
installed and up to date (--needed) and secondly we check if the
package is already built.

If any of these conditions are met we skip building the package. This
leaves a dangling src/ directory as 'makepkg -c' was never ran.

Now if these conditions are met tell makepkg to cleanup and exit.
2018-09-27 15:55:43 +01:00
morganamilo bf0ab3216a
Leave VCS files when using clean after 2018-09-27 15:55:43 +01:00