在CentOS6上安装python3.6

接了个外包, 一个简单的展示页面, 就用django直接撸完了.

等到部署的时候才发现, 登录到机器上一查发行版发现是CentOS 6.

本来我想的是直接打包一个docker镜像放上去, 设置一下volumes就行了. 结果查了一下发现最高支持到1.7.1, 连新版docker都安不上, 本来想退而求其次安装一下docker旧版吧, 结果安装完了没法运行. 只能再退而求其次, 直接安装一个python3.6吧.

Read More

golang笔记

一些约定

  1. 使用驼峰命名法
  2. 首字母小写的变量/函数只能在包内使用(多按一次shift我要累死了, 虽然编辑器有时在小写输入的情况下也会自动补全大写内容, 但有时不是那么聪明)

Read More

基于asyncio的web框架aiohttp

本来想扯一通标准库里添加了asyncio的意义, 什么统一了异步框架, 什么方便代码前移之类的了. 然后发现原来大家也都是用装饰器+生成器来写的, 好像也没啥区别…

迁移的主要阻力也不是各个框架实现异步的方式不同, 而是用到了框架的某些特性, 在其他框架里可能没有, asyncio成为标准库也改变不了这一点.

不过python3.4 3.5 3.6添加了很多新功能,语言层面的异步支持越来越好了

在3.4 就是上面说的, 引入了asyncio的标准库.

3.5有了一系列的bug fix ,可以见why-is-python-3-5-3-the-lowest-supported-version, 还支持了async/await语法.

Read More

bash和zsh的自动补全

最近在给一个开源项目贡献代码,想要给他加上相应的自动补全功能

BGmi起初只是个cli程序,前端单纯的展示已经下载的剧集,后来给前端加了一些订阅功能,但是cli的使用频率还是很高,cli没有自动补全功能总是说不过去,所以就花了一些时间加上了这个功能.

Read More

git删除submodule

需要按这个顺序来,不然会出事,就得重来一遍。

git submodule deinit themes/NexT/
git rm themes/NexT/

慎用git push -f,如果推了一个其他的repo上去会造成已经clone下来的项目没法pull. fatal: refusing to merge unrelated histories

ubuntu使用命令重启进入BIOS

今天一不小心开了BIOS里的快速启动,导致进不去BIOS设置也无法选择启动项(我还把ubuntu设置成了第一启动项…)百度搜索无果,google发现了结果

sudo systemctl reboot --firmware-setup

会直接重启进入BIOS