Commit Graph

11419 Commits

Author SHA1 Message Date
Sławomir Nizio
cbcbf7495f [entropy.core] implement "drop all USE" in the new dep. rewrite 2018-02-24 19:52:12 +01:00
Sławomir Nizio
0a56ec74b8 [entropy.core,entropy.server] implement new dep. rewrite parser
It uses a simple rules without the need to use complex regexes. It is
not as powerful as the existing approaches so both are complementary.

For example, this:
    foo/bar (.*)app-crypt/pinentry(.*)\[gtk\] \1app-crypt/pinentry-gtk2\2
expresses the intention that can be expressed simpler:
    rewrite foo/bar from-dep=app-crypt/pinentry to-dep=app-crypt/pinentry-gtk2 if-dep-has-use=gtk drop-use=gtk
2018-02-24 19:35:44 +01:00
Sławomir Nizio
9e3f45f4c3 [entropy.server] simplify data container for dep_rewrite
Previously it has a dict with complex key (with the need to pack and
unpack it in places where it was used), and data was both part of the
keys and values.
It had the small advantage of removing duplicates, but changes for them
are very low and they are harmless anyway.
2018-02-24 18:49:43 +01:00
Sławomir Nizio
7635fb6d3b [entropy.server] create a simple abstration/interface for dep. rewrite 2018-02-24 18:47:29 +01:00
Ettore Di Giacinto
558630f16e Merge pull request #40 from geaaru/fix_ask_eit_commit
[eit] Fix pass of ask attribute on commit command
2018-01-16 10:09:13 +01:00
Geaaru
9781fa409f [eit] Fix pass of ask attribute to add_packages_to_repository function on commit command. 2017-12-26 17:03:49 +01:00
Fabio Erculiani
9bcf98ad0f Tagging Entropy version 310 310 2017-10-08 22:25:58 +02:00
Fabio Erculiani
8d0f16d9d5 Release Entropy 310 2017-10-08 22:25:58 +02:00
Fabio Erculiani
2d65d5b7bf [entropy.client] fix conflicts removal handling during upgrade.
In certain extreme situations, that are more likely if the install
state is old (e.g. 9 months +), Entropy may decide to remove packages
due to conflicts with the version being installed and shoot itself
in the foot, if this is the case of dev-lang/python :-).

So, this commit tries to avoid the scenario by filtering out package
removals for those that are being installed anyway as part of the
transaction (e.g. a system upgrade).

This should fix the very specific case, but increase uncertainty
and thus entropy in other cases where once a package that lists
conflicts is installed, it may not expect to find that package
installed. However, this case should be handled by the dependency
graph generator (and it currently does not), which would need to
reorder the execution of the queue to comply with conflicts.

Perhaps, someone in the future will improve that too, for now,
let's enjoy one more snowflake.

Current improvement:
- foo-1 and bar-2 are set to be installed
- foo-1 conflicts with <bar-2
- bar-1 is installed
- foo-1 wanted to remove bar-1 as part of foo-1 install transaction.
  (now fixed, it won't...)
- bar-2 is then installed

Better improvement:
- foo-1 and bar-2 are set to be installed
- foo-1 conflicts with <bar-2 (but bar-2 itself can be installed
  and does not conflict with foo-1)
- bar-2 is set to be installed before foo-1
- when entropy gets to foo-1 there is nothing to remove
2017-10-08 21:51:07 +02:00
Fabio Erculiani
18fa7ebf5d [RigoDaemon] fix typo in debug string name 2017-10-08 21:14:51 +02:00
Fabio Erculiani
57deded2a8 [magneto] fix typo in debug message :) 2017-09-11 08:18:03 +02:00
Fabio Erculiani
3dfd0cabff [magneto] s/applet_activated/_applet_activated/ 2017-09-11 08:17:33 +02:00
Fabio Erculiani
0088107ff3 Tagging Entropy version 309 309 2017-09-10 19:08:33 +02:00
Fabio Erculiani
330ffd1926 Release Entropy 309 2017-09-10 19:08:33 +02:00
Fabio Erculiani
8461cdaa98 [client/po] Update translations 2017-09-10 19:08:14 +02:00
Fabio Erculiani
a0b9dcb3a8 [app-admin/magneto] move magneto-gtk to use PyQt5 (ebuild needs to be updated) 2017-09-10 19:03:48 +02:00
Francesco Ferro
22797e28e0 Tagging Entropy version 308 308 2017-09-09 18:46:40 +02:00
Francesco Ferro
cac8ad2b29 Release Entropy 308 2017-09-09 18:46:39 +02:00
Fabio Erculiani
019d42c91f Merge pull request #38 from Sabayon/issue/fix-entropy-tag-sorting
[entropy.core] fix entropy tag sorting
2017-09-09 11:50:53 +02:00
Francesco Ferro
19a7a54dda [entropy.core] Remove nested function for natural sorting 2017-09-09 11:46:06 +02:00
Francesco Ferro
afbce1c169 [entropy.core] update tests for entropy tag sorting 2017-09-09 11:46:06 +02:00
Francesco Ferro
79e1bec57f [entropy.core] fix tags natural sorting issue
This commit will add a key generator that creates an array
from the original string where each group of numbers is
converted to a number.
2017-09-09 11:46:06 +02:00
Francesco Ferro
8a8eca7ac0 Update gitignore 2017-09-09 11:46:05 +02:00
Ettore Di Giacinto
055fb0bc4b [conf] remove Freelydifferent.com mirror 2017-07-26 19:15:14 +02:00
Fabio Erculiani
960cd6d911 Merge pull request #37 from samcv/zsh-fixes
[zsh-completion] Fix help message parse bugs and add improvements
2017-07-01 21:40:26 +02:00
Samantha McVey
14921ad719 [zsh-completion] Fix completion for equo query list
Before no completions would show. Now we remove unneeded code and use
the same completion processing for other commands.
2017-06-15 17:43:44 -07:00
Samantha McVey
83ea0e56cf [zsh-completion] Fix help message parse bugs and add improvements
This fixes a bug where certain tab completions would be met with lots
of sed errors.

It is also faster since it uses 1 less sed process.

Additionally it will also show 'no matches' if there are no
matches found for a command completion, instead of showing
a suggestion to add 1st level commands on.

Before: equo X (no cmds left to add)
zsh suggests install, query, remove etc.

Now it will properly say there are not more suggestions
for most of the $1 terms
2017-06-15 17:43:39 -07:00
Fabio Erculiani
c726b3d694 Merge pull request #34 from geaaru/basic_python3_4
Fix issue on use basic authentication with python3.4:
2017-05-14 18:29:16 +02:00
Fabio Erculiani
eb43caabca Tagging Entropy version 307 307 2017-05-13 14:36:24 +02:00
Fabio Erculiani
b2d0ca8707 Release Entropy 307 2017-05-13 14:36:24 +02:00
Fabio Erculiani
345d31b3c5 [entropy.client] Fix accidental deletion of preserved libs when still in use.
Entropy preserved libs handling code did not check all the followed symlink
before removing them. This causes the deletion of unexpected libraries during the
removal of packages. For example, app-emulation/vmware-workstation contains
the following symlink:

(A) /opt/vmware/lib/vmware/lib/libssl.so.1.0.1/libssl.so.1.0.1 -> (B) /usr/lib64/libssl.so.1.0.1

Upon removal of vmware-workstation, A is garbage collected and deleted,
if it's a symlink, the link is followed and (B) is removed as well, without
validating the action (i.e. checking if a package is still owning (B).)

This commit fixes this. See Sabayon bug #5812.
2017-05-13 14:25:01 +02:00
Geaaru
aa32d22d63 Fix issue on use basic authentication with python3.4:
Traceback (most recent call last):
  File "/usr/lib64/python3.4/base64.py", line 519, in _input_type_check
    m = memoryview(s)
TypeError: memoryview: str object does not have the buffer interface

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/usr/bin/equo", line 15, in <module>
    main()
  File "/usr/lib/entropy/client/solo/main.py", line 332, in main
    exit_st = func(*func_args)
  File "/usr/lib/entropy/client/solo/commands/command.py", line 406, in _call_exclusive
    return func(client)
  File "/usr/lib/entropy/client/solo/commands/update.py", line 115, in _update
    rc = self._normal_update(entropy_client)
  File "/usr/lib/entropy/client/solo/commands/update.py", line 236, in _normal_update
    rc = repo_intf.sync()
  File "/usr/lib/entropy/lib/entropy/client/interfaces/repository.py", line 327, in sync
    rc = self._run_sync()
  File "/usr/lib/entropy/lib/entropy/client/interfaces/repository.py", line 146, in _run_sync
    self._entropy, repo, self.force, self._gpg_feature)
  File "/usr/lib/entropy/lib/entropy/client/interfaces/db.py", line 2764, in update
    return updater.update()
  File "/usr/lib/entropy/lib/entropy/client/interfaces/db.py", line 2029, in update
    selected = self._select_database_mirror()
  File "/usr/lib/entropy/lib/entropy/client/interfaces/db.py", line 428, in _select_database_mirror
    https_validate_cert = https_validate_cert)
  File "/usr/lib/entropy/lib/entropy/client/interfaces/db.py", line 1992, in _remote_revision
    fetch_rc = fetcher.download()
  File "/usr/lib/entropy/lib/entropy/fetchers.py", line 391, in download
    status = downloader()
  File "/usr/lib/entropy/lib/entropy/fetchers.py", line 600, in _urllib_download
    self.__http_basic_user, self.__http_basic_pwd)).replace('\n', '')
  File "/usr/lib64/python3.4/base64.py", line 548, in encodestring
    return encodebytes(s)
  File "/usr/lib64/python3.4/base64.py", line 536, in encodebytes
    _input_type_check(s)
  File "/usr/lib64/python3.4/base64.py", line 522, in _input_type_check
    raise TypeError(msg) from err
TypeError: expected bytes-like object, not str
2017-04-29 15:31:32 +02:00
Fabio Erculiani
12c5fc31ec Tagging Entropy version 306 306 2016-11-20 08:07:37 +01:00
Fabio Erculiani
c611f76a33 Release Entropy 306 2016-11-20 08:07:36 +01:00
Fabio Erculiani
6de1430d76 [magneto] make updates notifications go away after the default timeout.
In the recent versions of GNOME, this became super annoying.
2016-11-20 08:06:52 +01:00
Fabio Erculiani
9c300b0a3c [client] update translations 2016-11-20 08:00:09 +01:00
Fabio Erculiani
ff0938611a [client] update entropy.pot 2016-11-20 07:54:55 +01:00
Fabio Erculiani
117100b18c [magneto] fix Gir related warnings when loading Magneto 2016-11-20 07:52:17 +01:00
Fabio Erculiani
a9ae8128a2 [magneto] Just show an "Updates are available" notification, drop the count.
This will prevent us from piling up notifications.
2016-11-20 07:44:38 +01:00
Fabio Erculiani
aa362bc92c [magneto] exec python rather than calling it.
No need to keep one more bash alive on every respawn.
2016-11-20 07:38:05 +01:00
Fabio Erculiani
2ab95aaae4 Tagging Entropy version 305 305 2016-11-19 21:16:27 +01:00
Fabio Erculiani
b95b0d80b4 Release Entropy 305 2016-11-19 21:16:27 +01:00
Fabio Erculiani
98cd2b2b9f [rigo] Force terminal expansion, fixes bug #5305 2016-11-19 21:14:41 +01:00
mudler
04c46ce17c Tagging Entropy version 304 304 2016-09-18 16:54:55 +02:00
mudler
4a0488bd41 Release Entropy 304 2016-09-18 16:54:55 +02:00
mudler
76f8fd1b92 add CICKU's FOSS Mirror 2016-09-17 14:09:06 +02:00
Fabio Erculiani
0d778e8b39 Merge pull request #32 from freeboson/equo-zsh-updates
Equo zsh completion updates
2016-09-02 09:40:42 +02:00
Sujeet Akula
3fc1de1e74 break up the long text processing pipes 2016-08-31 07:49:02 +10:00
Fabio Erculiani
b8007c3445 Merge pull request #23 from rdnetto/bugfix_read_settings
[entropy.core] _system_parser: Actually read the file
2016-08-30 20:19:46 +02:00
Fabio Erculiani
5ae09bf9c3 Merge pull request #30 from Enlik/exc-handler-fix
[entropy.client] fixes to exception handler
2016-08-30 20:18:38 +02:00