python删除所有core文件_“pip uninstall”不会完全删除包,并引发一个弃用警告

我用这个做了一个python包设置.py文件:from distutils.core import setup

setup(

name='pizzamaker',

version='0.0.1',

packages=['pizzamaker'],

author = 'My name',

author_email = 'email@example.com',

keywords = ["pizza"],

description = "Library to make pizzas",

classifiers = [

"Intended Audience :: Developers",

'Programming Language :: Python',

'Programming Language :: Python :: 3',

'Programming Language :: Python :: 3.3',

'Programming Language :: Python :: 3.4',

'Programming Language :: Python :: 3.5',

'Programming Language :: Python :: 3.6',

'Topic :: Software Development :: Libraries :: Python Modules',

]

)

然后我使用以下命令创建了存档:

^{pr2}$

我得到了一个比萨制造者-0.0.1。焦油gz我可以使用$ tar zxvf pizzamaker-0.0.1.tar.gz

$ cd pizzamaker-0.0.1

$ python setup.py install --user

或者# python setup.py install

如果我是根用户。在

在这两种情况下,库都已安装并按预期工作。但是尝试用卸载它。在# pip3 uninstall pizzamaker

触发以下警告消息:DEPRECATION: Uninstalling a distutils installed project (pizzamaker) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.

Uninstalling pizzamaker-0.0.1:

/usr/local/lib/python3.5/site-packages/pizzamaker-0.0.1-py3.5.egg-info

Proceed (y/n)?

如果我键入y继续,则会删除egg文件,但仍保留以下文件:# find /usr/local/ | grep pizzamaker

/usr/local/lib/python3.5/site-packages/pizzamaker

/usr/local/lib/python3.5/site-packages/pizzamaker/__init__.py

/usr/local/lib/python3.5/site-packages/pizzamaker/__pycache__

/usr/local/lib/python3.5/site-packages/pizzamaker/__pycache__/__init__.cpython-35.pyc

实际上,我使用以下命令在pypi上注册了这样一个包:$ python setup.py sdist --formats=gztar upload

然后将其安装到另一台机器上,使用:

^{9}$

问题完全相同。这个库可以运行,但是当我试图卸载它时,我会收到弃用警告,当我继续卸载时,库中的一些文件仍然存在并且不会从site-packages中删除。在

我能做些什么来创建一个用户可以轻松卸载的pypi包?在

补遗

尝试使用setuptools而不是distutils。

我刚换了线from distutils.core import setup

与from setuptools import setup

保持一切不变。

尝试在新系统上安装软件包可以正常工作,但卸载问题同样存在:# pip3 uninstall pizzamaker

Uninstalling pizzamaker-0.0.1:

/usr/local/lib/python3.5/site-packages/pizzamaker-0.0.1-py3.5.egg

Proceed (y/n)? y

Successfully uninstalled pizzamaker-0.0.1

Traceback (most recent call last):

File "/usr/local/bin/pip3", line 11, in

sys.exit(main())

File "/usr/local/lib/python3.5/site-packages/pip/__init__.py", line 233, in main

return command.main(cmd_args)

File "/usr/local/lib/python3.5/site-packages/pip/basecommand.py", line 252, in main

pip_version_check(session)

File "/usr/local/lib/python3.5/site-packages/pip/utils/outdated.py", line 102, in pip_version_check

installed_version = get_installed_version("pip")

File "/usr/local/lib/python3.5/site-packages/pip/utils/__init__.py", line 838, in get_installed_version

working_set = pkg_resources.WorkingSet()

File "/usr/local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 644, in __init__

self.add_entry(entry)

File "/usr/local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 700, in add_entry

for dist in find_distributions(entry, True):

File "/usr/local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1949, in find_eggs_in_zip

if metadata.has_metadata('PKG-INFO'):

File "/usr/local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1463, in has_metadata

return self.egg_info and self._has(self._fn(self.egg_info, name))

File "/usr/local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1823, in _has

return zip_path in self.zipinfo or zip_path in self._index()

File "/usr/local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1703, in zipinfo

return self._zip_manifests.load(self.loader.archive)

File "/usr/local/lib/python3.5/site-packages/pip/_vendor/pkg_resources/__init__.py", line 1643, in load

mtime = os.stat(path).st_mtime

FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/lib/python3.5/site-packages/pizzamaker-0.0.1-py3.5.egg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值