-->

網頁

2020/01/14

修改專案的 tag (version) 就可以毀掉其他專案

今天剛好要處理 Zip 檔,目前看到功能比較齊全的專案應該是 Ne-Lexa/php-zip,但是用 composer require 時卻發生 error message 大噴發:



仔細一看 .... 居然有「v9.99.99」的版號,該不會要世界末日了吧?


打開 comploser.lock 看一下是怎麼回事,追蹤後得知相依性如下:

laravel v6.10.1  <=  ramsey/uuid ^v3.7

ramsey/uuid  <=  paragonie/random_compat": "^1 | ^2 | 9.99.99"

兇手抓到了,看來在 paragonie/random_compat 有一個版本號是 v9.99.99,composer 會自動拉最新的版本號來使用,因此只要任何專案 require 時沒有指定版本編號,composer 就會自動把相依性對到 v9.99.99,如果其他 package 有關連到,就是直接 dependency conflict 了。


要處理掉這個問題,只要在 composer.json 也 require paragonie/random_compat,但是加上指定版本編號如 ^v2.0,這樣 composer 就只會拉到 v2.x.x 的版本,不會去用 v9.99.99 這個版本。


ref:

2019/12/24

好兇的印表機



不知道是誰翻譯的,雖然不算完全翻譯正確,但也算是讓人輕鬆一笑。

2019/12/06

相信很多人看過這個錯誤訊息:
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module.

想必開剛使接觸 Python 的人應該都會遇到這個問題吧?然後就乖乖的「pip install MySQL db」、「pip install ConfigParser」之類的。
不過大家不用擔心,地雷我已經踩完,邊直接給答案。

先在系統上安裝套件「sud aptitude install libmysqlclient-dev」再回到 python 環境底下安裝「pip install mysqlclient」。到這邊都沒有看到錯誤的話,就可以試試看做一次 migration 了。

Ref: https://stackoverflow.com/a/4169790

2019/11/15

杯蓋的迷思

以前一直聽到別人說:咖啡外帶的蓋子材質不耐熱,一直蓋著可能會釋出有毒物質 ...。

今天叫外送的時候稍微看了一下杯蓋的材質:


左邊的標示材料為「PP 聚丙烯」,到 Widipedia 查了一下這個材料,耐熱可以到攝氏 140 度,所以其實當杯蓋應該還算安全。


備註:大家要注意的幾個點:

  • 水的沸點是攝氏 100 度,但如果改成玉米濃湯可就不一定囉
  • 杯蓋通常比較容易遇到的是水汽 (水蒸氣),蒸氣的溫度是可以破百的喔

2019/11/12

母校的學生可以自由的參與反送中

前幾天回母校「被」參加活動,無意間看到公佈欄,上面貼滿反送中的加油和關心。



看到其實蠻高興的,表示學校是開放的、自由的,學生在大學就已經在關心國際大事,不像筆者一直到出社會才開始看新聞。