Git Product home page Git Product logo

entropy's Introduction

Build Status Entropy

Entropy is the binary package management of Sabayon Linux.

License

GPL v2. See COPYING for details.

entropy's People

Contributors

ananace avatar dgikiller avatar dmaggot avatar enlik avatar freeboson avatar geaaru avatar gktrk avatar kpcyrd avatar mudler avatar prescott66 avatar rdnetto avatar robertek avatar ryuno-ki avatar samcv avatar skwerlman avatar whyman avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

entropy's Issues

RFC: Add support to tokenid inside repository config

For improving integration of entropy with Mottainai I propose to add support for TokenID field inside repository configuration and permit to test and use repositories available only as task artifacts or namespaces.

WDYT?

feature request: reorganize `equo preservedlibs` normal and verbose modes

The command equo preservedlibs list lists only the libs that have been preserved.
Adding -v makes the same output also inform which packages are causing libs to be preserved. Personally I wouldn't expect to find said output under a --verbose flag.

As per #41 (comment) defaulting to -v is potentially more useful.

Alternatively and from a UI point of view, one could also argue that -v answers a different question in which case it might make sense to split these to different commands. e.g. equo preserved libs list and equo preserved packages list.

equo: security oscheck explosion

This happens inside a chroot executed from iso boot with command:

equo sec oscheck -a --reinstall

☢ Hi. My name is Bug Reporter. I am sorry to inform you that the program crashed. Well, you know, shit happens.
☢ But there's something you could do to help me to be a better application.
☢ -- BUT, DO NOT SUBMIT THE SAME REPORT MORE THAN ONCE --
☢ Now I am showing you what happened. Don't panic, I'm here to help you.
Traceback (most recent call last):
  File "/usr/bin/equo", line 18, 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 449, in _call_shared
    return func(client)
  File "/usr/lib/entropy/client/solo/commands/security.py", line 513, in _oscheck
    False, 1, [], package_matches=list(valid_matches))
  File "/usr/lib/entropy/client/solo/commands/install.py", line 578, in _install_action
    self._advise_packages_update(entropy_client)
  File "/usr/lib/entropy/client/solo/commands/_manage.py", line 690, in _advise_packages_update
    entropy_client.calculate_critical_updates()
  File "/usr/lib/entropy/lib/entropy/client/misc.py", line 38, in wrapped
    return method(self, *args, **kwargs)
  File "/usr/lib/entropy/lib/entropy/client/interfaces/dep.py", line 3029, in calculate_critical_updates
    self._settings_client_plugin.packages_configuration_hash(),
  File "/usr/lib/entropy/lib/entropy/client/interfaces/settings.py", line 566, in packages_configuration_hash
    repository_id, ",".join(sorted(packages)),
TypeError: sequence item 0: expected string, int found

Frame packages_configuration_hash in /usr/lib/entropy/lib/entropy/client/interfaces/settings.py at line 566
	       repository_id = u'sabayon-weekly_ids@@:of:sabayon-weekly'
	            packages = set([234450])

equo: Crashing on autocomplete

Hello,

Using tab autocomplete for command:
equo security oscheck --assimilate
I got a crash after pressing tab just one another time.
I don't know if issue is related to this specific combination of command/options, I have not done further tests.
Here is the crash report i got:

☢ Hi. My name is Bug Reporter. I am sorry to inform you that the program crashed. Well, you know, shit happens.
☢ But there's something you could do to help me to be a better application.
☢ -- BUT, DO NOT SUBMIT THE SAME REPORT MORE THAN ONCE --
☢ Now I am showing you what happened. Don't panic, I'm here to help you.
Traceback (most recent call last):
File "/usr/bin/equo", line 18, in
main()
File "/usr/lib/entropy/client/solo/main.py", line 311, in main
cmd_obj.bashcomp(last_arg)
File "/usr/lib/entropy/client/solo/commands/security.py", line 210, in bashcomp
last_arg, outcome, self._commands)
File "/usr/lib/entropy/client/solo/commands/command.py", line 195, in _hierarchical_bashcomp
_commands = commands[item]
KeyError: u'--assimilate'

Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/entropy/client/solo/main.py", line 167, in handle_exception
rc = _text.ask_question(ask_msg)
File "/usr/lib/entropy/lib/entropy/output.py", line 815, in ask_question
raise KeyboardInterrupt()
KeyboardInterrupt

Original exception was:
Traceback (most recent call last):
File "/usr/bin/equo", line 18, in
main()
File "/usr/lib/entropy/client/solo/main.py", line 311, in main
cmd_obj.bashcomp(last_arg)
File "/usr/lib/entropy/client/solo/commands/security.py", line 210, in bashcomp
last_arg, outcome, self._commands)
File "/usr/lib/entropy/client/solo/commands/command.py", line 195, in _hierarchical_bashcomp
_commands = commands[item]
KeyError: u'--assimilate'

Python3.6 migration: utf-8 codec error on install app-misc/sabayon-skel

╠  +++ >>>  (7/29) app-misc/sabayon-skel-17-r8
╠    ## Unpacking: app-misc:sabayon-skel-17-r8.0e2096c6a6a7e43b4cef93ff97aa67f28482e966~0.tbz2
╠    ## Installing package: app-misc/sabayon-skel-17-r8
╠    ## [Sabayon Linux skel tree]
☢ Hi. My name is Bug Reporter. I am sorry to inform you that the program crashed. Well, you know, shit happens.
☢ But there's something you could do to help me to be a better application.
☢ -- BUT, DO NOT SUBMIT THE SAME REPORT MORE THAN ONCE --
☢ Now I am showing you what happened. Don't panic, I'm here to help you.
Traceback (most recent call last):
  File "/usr/bin/equo", line 16, in <module>
    main()
  File "/usr/lib/python3.6/site-packages/_entropy/solo/main.py", line 332, in main
    exit_st = func(*func_args)
  File "/usr/lib/python3.6/site-packages/_entropy/solo/commands/command.py", line 437, in _call_shared
    return func(client)
  File "/usr/lib/python3.6/site-packages/_entropy/solo/commands/upgrade.py", line 186, in _upgrade
    relaxed, multifetch)
  File "/usr/lib/python3.6/site-packages/_entropy/solo/commands/upgrade.py", line 250, in _upgrade_action
    package_matches=update)
  File "/usr/lib/python3.6/site-packages/_entropy/solo/commands/install.py", line 707, in _install_action
    exit_st = pkg.start()
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/action.py", line 218, in start
    exit_st = self._run()
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/install.py", line 260, in _run
    exit_st = method()
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/install.py", line 1410, in _install_phase
    return self._install_phase_unlocked(inst_repo)
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/install.py", line 1447, in _install_phase_unlocked
    inst_repo, remove_package_id)
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/install.py", line 1317, in _install_package_unlocked
    items_installed, items_not_installed)
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/install.py", line 2011, in _move_image_to_system_unlocked
    move_st = workout_file(currentdir, item)
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/install.py", line 1804, in workout_file
    protect, mask, protectskip, fromfile, tofile)
  File "/usr/lib/python3.6/site-packages/entropy/client/interfaces/package/actions/_manage.py", line 327, in _handle_config_protect
    protected = entropy.tools.istextfile(tofile)
  File "/usr/lib/python3.6/site-packages/entropy/tools.py", line 1929, in istextfile
    r = istext(f.read(blocksize))
  File "/usr/lib/python3.6/codecs.py", line 321, in decode
    (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xda in position 0: invalid continuation byte

Frame decode in /usr/lib/python3.6/codecs.py at line 321
	                data = b'\xda\x1ameta\x01\x00\x00\x00\x00\x00v\x95~\x9c\x00\x00\x00$\x00\x00\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x004\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/\x00\x00\x00'
	               final = False
	               input = b'\xda\x1ameta\x01\x00\x00\x00\x00\x00v\x95~\x9c\x00\x00\x00$\x00\x00\x00 \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x004\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00/\x00\x00\x00'
	                self = <encodings.utf_8.IncrementalDecoder object at 0xb1959d10>

Wine can cause problems with configuration files

Even after recent fixes it's still possible that there will be errors when editing system configuration files after update in Rigo. Once Wine is installed the default text editor by xdg standards can change to its desktop file.
xdg-mime query default text/plain
helps to see this, and
xdg-mime default leafpad.desktop text/plain
usable to select other text editor (Leafpad in this example).

Eit inject explosion with systemd on arm

╠  * [core-arm] adding package: systemd-239-r1.tbz2Traceback (most recent call last):
  File "/usr/lib/entropy/lib/entropy/server/interfaces/main.py", line 6924, in add_packages_to_repository
    repository_id, package_filepaths, inject = inject)
  File "/usr/lib/entropy/lib/entropy/server/interfaces/main.py", line 6146, in _package_injector
    restricted_callback = _package_injector_check_restricted)
  File "/usr/lib/entropy/lib/entropy/spm/plugins/interfaces/portage_plugin/__init__.py", line 1428, in extract_package_metadata
    extract_path = pkg_dir, catch_empty = False)
  File "/usr/lib/entropy/lib/entropy/tools.py", line 2159, in uncompress_tarball
    for tarinfo in tar:
  File "/usr/lib/python2.7/tarfile.py", line 2510, in next
    tarinfo = self.tarfile.next()
  File "/usr/lib/python2.7/tarfile.py", line 2358, in next
    tarinfo = self.tarinfo.fromtarfile(self)
  File "/usr/lib/python2.7/tarfile.py", line 1254, in fromtarfile
    return obj._proc_member(tarfile)
  File "/usr/lib/python2.7/tarfile.py", line 1276, in _proc_member
    return self._proc_pax(tarfile)
  File "/usr/lib/python2.7/tarfile.py", line 1406, in _proc_pax
    value = value.decode("utf8")
  File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode
    return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xff in position 8: invalid start byte

feature request - add: equo preservedlibs why

Currently the output of equo preservedlibs list also present at the end of equo upgrade or equo install lists libs and their original packages but not which packages are causing the libraries to be kept.

This wiki article mentions a workaround for this limitation but from my experience the packages listed may not be the direct cause of the 'preservation'.
Instead I had to resort to equo remove --pretend <package-reported-by-entropypreservedlibs> and inspect the list of software that would be removed to find the culprit.

Another informative command was equo query required <lib.so> which allowed identifying which packages depend on some of the libs, although one has to use the right-hand side of the output of equo preservedlibs.

In short, entropy seems to have all the necessary machinery to provide a more user-friendly or informative output. While this machinery is mostly useful on systems that mix entropy and portage packages, it occasionally happens that entropy packages also need to preserve libs.

The proposed command equo preservedlibs why would produce an output of this sort:

$ equo preservedlibs why
╠ /usr/lib64/libmysqlclient.so.18 [libmariadb.so.3:2 -> dev-db/mariadb-10.2.12] - due to: {dev-perl/DBD-mysql-4.44.0 dev-qt/qtsql-4.8.7-r1 dev-qt/qtsql-5.9.4}
╠ /usr/lib64/libboost_thread.so.1.63.0 [libboost_thread.so.1.63.0:2 -> dev-libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}
╠ /usr/lib64/libboost_system.so.1.63.0 [libboost_system.so.1.63.0:2 -> dev-libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}
╠ /usr/lib64/libboost_signals.so.1.63.0 [libboost_signals.so.1.63.0:2 -> dev-libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}
╠ /usr/lib64/libboost_regex.so.1.63.0 [libboost_regex.so.1.63.0:2 -> dev-libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}
╠ /usr/lib64/libboost_program_options.so.1.63.0 [libboost_program_options.so.1.63.0:2 -> dev- libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}
╠ /usr/lib64/libboost_iostreams.so.1.63.0 [libboost_iostreams.so.1.63.0:2 -> dev-libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}
╠ /usr/lib64/libboost_filesystem.so.1.63.0 [libboost_filesystem.so.1.63.0:2 -> dev-libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}
╠ /usr/lib64/libboost_date_time.so.1.63.0 [libboost_date_time.so.1.63.0:2 -> dev-libs/boost-1.63.0] - due to: {sci-mathematics/rstudio-1.1.383}

Alternatively, inverting the output to aggregate on the packages causing the issue:

$ equo preservedlibs why
The following packages are causing libs to be preserved:
 * dev-perl/DBD-mysql-4.44.0
   - /usr/lib64/libmysqlclient.so.18 [libmariadb.so.3:2 -> dev-db/mariadb-10.2.12]
 * dev-qt/qtsql-4.8.7-r1
   - /usr/lib64/libmysqlclient.so.18 [libmariadb.so.3:2 -> dev-db/mariadb-10.2.12]
 * dev-qt/qtsql-5.9.4
   - /usr/lib64/libmysqlclient.so.18 [libmariadb.so.3:2 -> dev-db/mariadb-10.2.12]
 * sci-mathematics/rstudio-1.1.383
   - /usr/lib64/libboost_thread.so.1.63.0 [libboost_thread.so.1.63.0:2 -> dev-libs/boost-1.63.0]
   - /usr/lib64/libboost_system.so.1.63.0 [libboost_system.so.1.63.0:2 -> dev-libs/boost-1.63.0]
   - /usr/lib64/libboost_signals.so.1.63.0 [libboost_signals.so.1.63.0:2 -> dev-libs/boost-1.63.0]
   - /usr/lib64/libboost_regex.so.1.63.0 [libboost_regex.so.1.63.0:2 -> dev-libs/boost-1.63.0]
   - /usr/lib64/libboost_program_options.so.1.63.0 [libboost_program_options.so.1.63.0:2 -> dev-libs/boost-1.63.0]
   - /usr/lib64/libboost_iostreams.so.1.63.0 [libboost_iostreams.so.1.63.0:2 -> dev-libs/boost-1.63.0]
   - /usr/lib64/libboost_filesystem.so.1.63.0 [libboost_filesystem.so.1.63.0:2 -> dev-libs/boost-1.63.0]
   - /usr/lib64/libboost_date_time.so.1.63.0 [libboost_date_time.so.1.63.0:2 -> dev-libs/boost-1.63.0]

equo install sometimes throw: error: No urls, filenames, or requirements specified

$ sudo equo i ncurses
╠  @@ Computing dependencies...
╠  ## [R] [sabayon-weekly] sys-libs/ncurses-6.0-r1|0   [6.0-r1|0]
╠  @@ Packages to install/update/remove: 1
╠  @@ Packages to remove: 0
╠  @@ Download size: 0b
╠  @@ Freed disk space: 0.0b
╠  @@ You need at least: 6.1MB free disk space
╠  ::: >>>  (1/1) 1 Package
╠    ## downloading: 1 Package## ( mirror #1 ) [sys-libs:ncurses-6.0-r1.fb6b109801b25fda6b67fa53c5f9dc8ca073f763~0.tbz2] @ http://debian.mirror.dkm.cz## Bulk download: 1 item# [1] debian.mirror.dkm.cz => sys-libs:ncurses-6.0-r1.fb6b109801b25fda6b67fa53c5f9dc8ca073f763~0.tbz2## Checking check sum…## ( mirror #1 ) [sys-libs:ncurses-6.0-r1.fb6b109801b25fda6b67fa53c5f9dc8ca073f763~0.tbz2] successful @ http://debian.mirror.dkm.cz
╠  +++ >>>  (1/1) sys-libs/ncurses-6.0-r1
╠    ## Unpacking: sys-libs:ncurses-6.0-r1.fb6b109801b25fda6b67fa53c5f9dc8ca073f763~0.tbz2## Package phase: preinstall## Installing Package: sys-libs/ncurses-6.0-r1## [console display library]## Updating installed packages repository: sys-libs/ncurses-6.0-r1## Cleaning up previously installed application data.
error: No urls, filenames, or requirements specified (see --help)
☢    ## An error occurred. Action aborted.
╠  @@ No configuration files to update.
☛ There are 4 preserved libraries on the system
╠ /usr/lib64/libpanelw.so.5.9 [libpanelw.so.5:2 -> sys-libs/ncurses-5.9-r4]
╠ /usr/lib64/libpanelw.so.5 [libpanelw.so.5:2 -> sys-libs/ncurses-5.9-r4]
╠ /lib64/libncursesw.so.5.9 [libncursesw.so.5:2 -> sys-libs/ncurses-5.9-r4]
╠ /lib64/libncursesw.so.5 [libncursesw.so.5:2 -> sys-libs/ncurses-5.9-r4]

The error message stem from pypa/pip#1425 but I could not figure out how to get rid of it.

As

NOTE: if egg_entry_point_group is set, you NEED the setuptools package.
states, there are conditions under which you need setuptools (which provides easy_install which seem to cause this error message).

Would be happy for tipps.

I can use the system as usual except some artefacts (like old unused (?) ncurses versions above).

Error on use tar class with equo command with python3.5

For development I use currently python3.5 and I see that if I have this version when execute equo install command I receive this exception:

╠    ## Unpacking: app-office:libreoffice-5.2.5.1.259b8568ff6da2de17c77afb28e160715ef0dcf9~0.tbz2
Traceback (most recent call last):
  File "/usr/lib/entropy/lib/entropy/client/interfaces/package/actions/install.py", line 438, in _unpack_package
    catch_empty = True
  File "/usr/lib/entropy/lib/entropy/tools.py", line 2172, in uncompress_tarball
    _setup_file_metadata(tarinfo, epath)
  File "/usr/lib/entropy/lib/entropy/tools.py", line 2110, in _setup_file_metadata
    tar.chown(tarinfo, epath)
TypeError: chown() missing 1 required positional argument: 'numeric_owner'
☢    ## Unable to unpack package
☢    ## An error occurred while trying to unpack the package. Check if your system is healthy. Error: 1

I will try to see if there is a solution to this cross python version in the next weeks.

bugs with Python 3

Before enabling Python 3 (in ebuild, after releasing Entropy with the changes related to sitedir), it's good to have a look at these.

please add more if found

to reproduce:

+        packages = entropy_client.Spm().search_paths_owners(["/bin/ls"])
  File "./client/equo.py", line 16, in <module>
    main()
  File "/.../entropy/client/solo/main.py", line 332, in main
    exit_st = func(*func_args)
  File "/...entropy/client/solo/commands/command.py", line 437, in _call_shared
    return func(client)
  File "/.../entropy/client/solo/commands/libtest.py", line 112, in _test
    packages = entropy_client.Spm().search_paths_owners(["/bin/ls"])
  File "/.../entropy/lib/entropy/spm/plugins/interfaces/portage_plugin/__init__.py", line 2105, in search_paths_owners
    slot = self.get_installed_package_metadata(pkg, "SLOT")
  File "/.../entropy/lib/entropy/spm/plugins/interfaces/portage_plugin/__init__.py", line 759, in get_installed_package_metadata
    package, key, root = root)
  File "/.../entropy/lib/entropy/spm/plugins/interfaces/portage_plugin/__init__.py", line 775, in _get_installed_package_metadata
    return vartree.dbapi.aux_get(package, [key])[0]
  File "/usr/lib64/python3.6/site-packages/portage/dbapi/vartree.py", line 741, in aux_get
    mydir = self.getpath(mycpv)
  File "/usr/lib64/python3.6/site-packages/portage/dbapi/vartree.py", line 228, in getpath
    rValue = self._eroot + VDB_PATH + _os.sep + mykey
TypeError: must be str, not bytes

it's due to stdout of process being bytes and then:

vartree.dbapi.aux_get(b'sys-apps/coreutils-8.30', ['SLOT'])
*** TypeError: must be str, not bytes

"Dictionary size changed after iteration", I think it was in lib/entropy/server/interfaces/main.py:

         if srv_dbcache is not None:
            for item in srv_dbcache.keys():
                 try:
                     srv_dbcache[item].close()
                 except ProgrammingError: # already closed?
                     pass
             srv_dbcache.clear()

packing with list() should help, something similar was done in 70bc63e , but I propose to investigate further if it's really OK to do. It's somewhat complex why the dict. is actually mutated; from what I saw and recall, it's about closing all repositories which somehow lead into dict. modification (through del sets_data[invalid_set] in _get_configured_package_sets?).

It could be related to srv_dbcache keeping the same repo but without different settings (rw/ro etc.) as dict keys, especially srv_dbcache. It was however added long time ago during development, so… maybe it really works as intended and just needs a list(). A better or another look is needed.

NameError: name 'file' is not defined

in matter and rigo_app, type=file in argparser.

  1. (Old traceback, some lines could be outdated.)
Traceback (most recent call last):
  File "./rigo/rigo_app.py", line 939, in _permissions_setup
    self._work_view_c.setup()
  File "/.../entropy/rigo/rigo/ui/gtk3/controllers/work.py", line 208, in setup
    box = self._setup_terminal_area()
  File "/.../entropy/rigo/rigo/ui/gtk3/controllers/work.py", line 104, in _setup_terminal_area
    _("<i>Show <b>Application Management</b> Progress</i>")))
TypeError: Must be string, not bytes
  1. triggered by equo libtest
  File "./client/equo.py", line 16, in <module>
    main()
  File "/.../entropy/client/solo/main.py", line 332, in main
    exit_st = func(*func_args)
  File "/.../entropy/client/solo/commands/command.py", line 437, in _call_shared
    return func(client)
  File "/.../entropy/client/solo/commands/libtest.py", line 129, in _test
    inst_repo, dump_results_to_file=dump, silent=quiet)
  File "/.../entropy/lib/entropy/qa.py", line 689, in test_shared_objects
    mywalk_iter = os.walk(etpConst['systemroot'] + ldpath)
TypeError: must be str, not bytes
  1. lib/entropy/client/misc.py does this:
if item[9] != "_"

(item is a byte array) which is never True (that's OKish) and silently so (that's not) because Python 3 (b'bla'[idx] is int). After fixing this, 7. occurs. Visible problem: eit commit does not warn about unmerged conf files.

To do: try to find all such occurences.

  1. (Requires 6. being fixed).

eit commit:

 File "/root/t/entropy/lib/entropy/client/misc.py", line 251, in _load_maybe_add
    darkgreen(filepath),
  File "/root/t/entropy/lib/entropy/output.py", line 412, in darkgreen
    return colorize("darkgreen", text)
  File "/root/t/entropy/lib/entropy/output.py", line 286, in colorize
    return codes[color_key] + text + codes["reset"]
TypeError: must be str, not bytes
  1. Also after correcting 6.

eit commit:

diff: b'/etc/ufw/._cfg0000_user6.rules': Nie ma takiego pliku ani katalogu diff: b'/etc/ufw/user6.rules': Nie ma takiego pliku ani katalogu
(means ENOENT)

  1. lib/entropy/services/client.py _encode_multipart_form and maybe others: concatenation of strings with bytes from "rb" files
    @geaaru FYI

equo: --ask should be default, config option

Equo is a dangerous tool without using --ask, in particular equo remove.

It would be very useful to have a config option, preferrably defaulting to "yes", having the same effect as passing --ask.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.