轶哥

妄图改变世界的全栈程序员。

MacOS 12.3 无法正常使用code命令的解决方法
  •   更新:2022-04-17 14:59:53
  •   首发:2022-02-03 23:32:40
  •   python
  •   1311

从MacOS 12.3 Beta版本开始,系统将不再内置python2且将无法正常安装python2,无论是intel芯片还是Apple芯片的设备都无法安装。原因是/usr/bin/python的软链接无法正常被删除或覆盖。并且默认不开启python3命令。

2022年04月17日14:58:00更新: 从MacOS 12.4 Beta版(21F5048e) 开始,可以通过pyenv在intel和Apple芯片中安装python2。详细方法见《brew安装python2》

因此可能会导致一系列依赖python命令的应用程序无法运行。

例如将会遇到VS(Visual Studio Code)无法使用code命令。

➜  saas-web git:(892f9ef) ✗ code .
/usr/local/bin/code: line 6: python: command not found
/usr/local/bin/code: line 10: ./MacOS/Electron: No such file or directory

由此也可能导致"Visual Studio Code - Insiders" needs to be updated on macOS Monterey弹窗的问题。

brew安装python2
  •   更新:2022-04-17 14:56:43
  •   首发:2021-02-03 14:18:06
  •   python
  •   6723

Homebrew是MacOS中绝佳的包管理工具。通过brew安装pyton3非常容易brew install python@3,将会自动添加python3pip3命令。

关于python的安装,在Homebrew官网给出了详细的说明:https://docs.brew.sh/Homebrew-and-Python

Homebrew provided a python@2 formula until the end of 2019, at which point it was removed due to the Python 2 deprecation.

根据提示,我们知道python@2已经被移除。在2020年初,python@2仍然可以正常安装,但就在不久前,官方移除了python@2。我对Homebrew官方的操作表示支持和理解,毕竟技术的更新和迭代是不可逆转的,是需要大家一起支持的。

ubuntu 20.04 安装 pip2
  •   更新:2021-08-09 00:21:45
  •   首发:2021-03-14 17:34:03
  •   python
  •   5831

在ubuntu 20.04 LTS版本中,可以通过sudo apt install python安装python2,但是无法通过sudo apt install python-pip安装pip2,提示E: Unable to locate package python-pip

无法找到python-pip安装包的原因是,Python 2.7的支持周期已于2020年1月1日结束。因为不再维护Python 2.7,pip 21.0已于2021年1月停止对Python 2.7的支持。

如果通过pypa.io的默认get-pip.py脚本进行安装,也将遇到This script does not work on Python 2.7 The minimum supported Python version is 3.6.提示。

Redash刷新整个仪表盘API
  •   更新:2021-03-10 18:38:37
  •   首发:2021-03-10 18:38:37
  •   python
  •   1250

转眼间使用Redash已经两年多了,redash给我的感觉就是省心省事。基础需求都能实现,用户体验很好,升级版本也容易,二次开发也方便简单。

只不过有两个需求redash没有实现:

  • API刷新整个仪表盘
  • 导出仪表盘中所有的Widget数据为Excel文件

第二个需求,我在《Redash导出仪表盘中所有数据为Excel文件》一文进行了实现说明。

Poetry快速安装教程
  •   更新:2021-03-10 16:17:14
  •   首发:2021-03-10 13:16:21
  •   python
  •   3846

Poetry是一个Python的依赖管理工具。设计思路比较先进,运行速度非常快。非常类似于Node.js里面的yarn

Poetry在国内的安装速度比较慢。好在安装脚本提供了--file参数,可以指定安装包。我们可以通过这个方法进行快速安装。

关于Poetry

Poetry是用于处理依赖项安装以及Python程序包构建和打包的工具。只需一个文件即可完成所有工作:标准化的 pyproject.toml

换句话说,用pyproject.toml来代替setup.pyrequirements.txtsetup.cfgMANIFEST.in和新加入的Pipfile

  • 将尝试将语义版本控制作为版本命名的最佳实践。
  • 可以指定自述文件,included 和 excluded 文件:no more MANIFEST.inpoetry还将使用VCS忽略文件(如.gitignore)填充该exclude部分。
  • 可以指定关键字(最多5个),并在包发布站点上用作标签。
  • 依赖项部分支持插入符号,波浪号,通配符,不等式和多重依赖。
  • 您必须指定与您的软件包兼容的python版本。

poetry还将检测您是否在virtualenv中,并相应地安装软件包。因此,poetry可以在全球范围内安装并在任何地方使用。

poetry 还带有完整的依赖关系解析库。

更多内容不再赘述,参考peotry官网:https://python-poetry.org/

使用方法参考 peotry开源地址:https://github.com/python-poetry/poetry

Github 仓库迁移至 Gitea 脚本
  •   更新:2020-07-21 15:02:09
  •   首发:2019-06-12 08:38:10
  •   python
  •   3587

迁移 github 私有/公有仓库到 gitea 是一件容易的事情,不过可能由于网络原因,部分较大的项目可能会失败。此脚本会自动过滤已经迁移完成的仓库,因此重复执行脚本直至 gitea 中的仓库和 github 中的仓库数量一致,即表示迁移完成。gitea 迁移失败的仓库会被系统自动删除,因此可能出现仓库数量浮动。为了确保代码资产安全,您在迁移完成后应该间隔十分钟再次执行,直到 gitea 中的仓库和 github 中的仓库数量仍然一致。

需要注意,使用该脚本前,需创建一个Github Token,并且需要临时关闭Two-factor authentication

  上一页 下一页