Commit graph

803 commits

Author SHA1 Message Date
morganamilo 7a1e2de6cd
Simplfy upgrade skipping 2018-05-30 03:21:17 +01:00
morganamilo e76f978d63
Only show warnings for pkgs that are being updated
The previous warning system would show warnings recursivley for all
packages being resolved. While I like this, other have complained at it
being overly verbose.

Either way the main purpose of this is to allow warnings to be printed
before the upgrade menu shows. This is mostly just to get a usable
warning system.

This may change if a better solution is found.
2018-05-29 23:39:02 +01:00
morganamilo b140e66f6a
Improve --asdeps and --asexplicit handling
Correctly handle --asdeps and --asexplicit for both repo packages and
aur packages.
2018-05-29 22:35:58 +01:00
morganamilo c464af6b9b
Implement config option for provider searching 2018-05-29 17:40:35 +01:00
morganamilo 33d056e9ac
Split Targets to Targets and Explicit
Targets are used for tracking wether a package should be marked as
explicitly installed or as a dependency. This is not ideal because you
can have a target such as java-environment that resolves to a different
package.

Therefore Targets are now used only for the initial dependency resolving
and checking for missing dependencies. The Explicit set is now used to
mark what packages are explicit, seperate from the targets.
2018-05-29 16:47:43 +01:00
morganamilo 6df8c58e00
Re add isDevelName() 2018-05-29 13:15:45 +01:00
morganamilo 6e990e4dc5
Don't conflict with pkgs that are in the depPool
When upgrading multiple packages that are already installed we should
not conflict with already installed packages that are in the depPool.

This is because the version in the depTree is going to replace the
currently installed version of the package and may have different
conflicts.

If there is a conflict between stuff in the depPool these should be
handled by the innerConflicts check anyway.
2018-05-29 13:15:45 +01:00
morganamilo d51205194e
Support skiping updates and showing warnings
The warnings were moved down to after the upgrade menu, mainly because
it is a lot easier to do this way, it may get moved back if it can be
done in a non hacky way,
2018-05-29 13:15:40 +01:00
morganamilo b76d085418
Improve provider menu
Sort the provider menu alphabetically. Always ensure direct matches show
up first. This ensures hitting enter for the default value will always
be the same package that the user/dependency requested if an exact match
exists.

If a package is already installed pick that instead of providing a menu.

Ensure duplicates do not show up in the menu.
2018-05-29 13:13:33 +01:00
morganamilo 6423fb55b5
Fix build order being reversed 2018-05-29 13:13:33 +01:00
morganamilo 7b558ba47c
Fix check for missing dependencies
We dont check the dependencies of things already installed becuase,
well, they're already installed. But we should check the dependencies of
targets even if they are installed because they get reinstalled.
2018-05-29 13:13:33 +01:00
morganamilo 8c77ad061e
Clean up unused code 2018-05-29 13:13:33 +01:00
morganamilo 671f836ec5
Calculate makeDeps properly
MakeOnly would be set to true when moving from normal deps to make deps
But would incorrectly stay set to true when moving to the deps of the
following packages.

depOrder.Aur now only holds one package from each base like
depCatagories does.
2018-05-29 13:13:33 +01:00
morganamilo c019a2cc02
Remove old dependency code 2018-05-29 13:13:33 +01:00
morganamilo 2e7a022b7c
Use new dependency code in install()
The old depTree and depCatagories has been changed to depPool and
depOrder in the install function.
2018-05-29 13:13:33 +01:00
morganamilo b585cec123
Add Basses to depOrder
This should act exaclty like depCatagories.Basses
2018-05-29 13:13:33 +01:00
morganamilo b2d3eb5c49
Add new dependency code to replace the old code
This is a rewrite of the dependency system, It aims to be cleaner
written, with a better idea of what is needed from the start, meaning
less new code being hacked on for things that were not thought about.
This version also aims to use as many small functions as possible, for
cleaner code and better testing.

Added dep.go:
    general dependency functions
Added depPool.go:
    Replacement of depTree, dependencies were never ordered so
    a tree did not really make sense. Instead the term pool
    makes more sense.
Added depOrder.go:
    Replacement of depCatagories, This simply orders the
    dependencies, dependencies are still catagorized as repo and AUR
    but I believe this to be a better name
Added depCheck.go:
    Replaces conflicts.go and also contains the missing dependency
    code

This version is mostly the same as the old version with a few
improvments:
    Missing packages will print the full dependency tree
    Versioned dependency checking errors should be fixed
    Make depends should be calculated properly
    Experimental AUR provide searcher

This code has been added along side the old code for testing and is not
currently used by the install process. Once the install process is moved
to use this code, the old code will be removed.
2018-05-29 13:13:27 +01:00
Jguer d442af9dcc
Fix #435. Update vendor to include SIGLEVEL overflow fix 2018-05-29 11:36:45 +01:00
J Guerreiro cc2322f492 Update README.md to include temporary notice of manual intervention 2018-05-29 00:41:55 +01:00
J Guerreiro 030f847243
Merge pull request #432 from Jguer/5.1
5.1 vendor update
2018-05-29 00:08:15 +01:00
Jguer cd4f74a04d 5.1 vendor update
Signed-off-by: Jguer <me@jguer.space>
2018-05-29 00:05:37 +01:00
J Guerreiro e5b9f0aff4
Merge pull request #431 from Jguer/fix-430
Exit code 1 when packages are missing from -Si and -G
2018-05-28 13:48:43 +01:00
Jguer 2b5c725a0c Fixes #430. Don't abort -G just error to signal not all was good
Signed-off-by: Jguer <me@jguer.space>
2018-05-28 13:45:11 +01:00
Jguer 6d70716ba2 Quick fix to yay -Si error code #430. Will return all possible values and then error
Signed-off-by: Jguer <me@jguer.space>
2018-05-28 13:43:02 +01:00
Jguer 70e5f43171 Quick fix to yay -G error code #430
Signed-off-by: Jguer <me@jguer.space>
2018-05-28 13:31:33 +01:00
Jguer 3f15788c6a
Unexport functions and structures 2018-05-20 16:17:05 +01:00
Jguer 6b7ee97479
add quiet to print options. fish complete 2018-05-20 15:28:43 +01:00
J Guerreiro 20191f5bc4
Merge pull request #423 from Morganamilo/docnews
Document news and use build date over install date
2018-05-18 08:16:07 +01:00
morganamilo 84810a61af
Document news 2018-05-17 20:20:24 +01:00
morganamilo d6ab6ed9ac
Use native build date when printing news
Use the build date of the newest native package instead of the install
date of any package.
2018-05-17 20:11:07 +01:00
J Guerreiro 6be6ffc7d2
Merge pull request #420 from Morganamilo/news
Only show new news when calling -Pw
2018-05-16 18:57:35 +01:00
morganamilo 9f071a8e9b
Only show new news when calling -Pw
New news is defined as news that is newer than the install date of the
newest package on the users system.

All news can be shown using -Pww
2018-05-16 17:19:09 +01:00
J Guerreiro 0c49f0f7cb
Merge pull request #419 from Jguer/impgopkgchange
Implement new gopkgbuild Newer method
2018-05-15 12:48:39 +01:00
J Guerreiro a2072aa446
Merge pull request #418 from Jguer/fix#417
Fixes #417
2018-05-15 12:40:55 +01:00
J Guerreiro 7c3ea5b2b3
Merge branch 'master' into impgopkgchange 2018-05-14 22:25:26 +01:00
Jguer 3dc5238bd2 Implement new gopkgbuild Newer method
Signed-off-by: Jguer <me@jguer.space>
2018-05-14 22:22:47 +01:00
Jguer d15f899809 Fixes #417
Signed-off-by: Jguer <me@jguer.space>
2018-05-14 18:33:48 +01:00
Anna 250d6c61f7
Merge pull request #396 from AlexWayfer/print_newer_local_packages
Print warnings about newer local packages then remote versions
2018-05-14 15:36:50 +01:00
Alexander Popov d1602083f2
Print warnings about newer local packages then remote versions
Inspired by [`pakku`](https://github.com/kitsunyan/pakku)
2018-05-14 11:31:18 +03:00
Anna e7357f1360
Merge pull request #415 from Morganamilo/update2
Updated vendor dependencies
2018-05-13 19:00:04 +01:00
morganamilo 4b73ba37f3
Updated vendor dependencies 2018-05-13 18:58:08 +01:00
Anna 9437bf1576
Merge pull request #412 from Morganamilo/typos
Fix typos
2018-05-12 17:17:36 +01:00
morganamilo c399996cab
Fix typos 2018-05-12 17:16:48 +01:00
Anna d871e2c8de
Merge pull request #411 from Gravemind/fix-foreigne-typo
Fix typo --foreigne to --foreign
2018-05-12 15:32:06 +01:00
Gravemind 6c49436942 Fix typo --foreigne to --foreign 2018-05-12 15:41:32 +02:00
Anna 4143aaf6fd
Merge pull request #410 from Morganamilo/ignore2
Fix --ignore flag while skipping updates ammended
2018-05-12 00:25:54 +01:00
morganamilo 1b6d80f122
Fix --ignore flag while skipping updates ammended
Ammend to 58d53b1
Thought this was already included in the commit.
2018-05-12 00:24:47 +01:00
Anna 58d53b1f8b
Merge pull request #409 from Morganamilo/ignore2
Fix --ignore flag while skipping updates
2018-05-12 00:20:48 +01:00
morganamilo 2bf310d37c
Fix --ignore flag while skipping updates
If --ignore was specified on the command line and the user skips
packages using the number menu, packages would not be properly skipped
because they the manual --ignore would overide the --ignore from the
menu.

Now correctly combine both --ignore flags into a single combined flag
when passing to pacman.
2018-05-12 00:17:10 +01:00
J Guerreiro 686d6a3188
Merge pull request #407 from Morganamilo/fix#406
Tweak readme, add install and contrib sections
2018-05-11 22:54:58 +01:00