2018/05/23

Python2系とPython3系では binascii.crc32 の計算結果が異なるので注意

### python2 では signed、python3 では unsigned として扱われる
具体的な例としては以下。

```python
`title: "python2";
>>> import binascii
>>> binascii.crc32(b"Hello")
-137262718
```

```python
`title: "python3";
>>> import binascii
>>> binascii.crc32(b"Hello")
4157704578
```

数字は違うのですが、`0xF7D18982` を 32bit の signed として扱っているか、unsigned として扱っているかの違いです。

そして、これは仕様のようです。

> 参考
>
> [Issue 4903: binascii.crc32() - document signed vs unsigned results - Python tracker](https://bugs.python.org/issue4903)

2018/05/12

Headless server につないだ Vino のキーボードを日本語レイアウトにする

[モニタをつないでいない Ubuntu の Vino に接続する](https://kokufu.blogspot.com/2018/02/ubuntu-vino.html) で Vino に繋がるようになったのは良いものの、キーボードレイアウトがおかしいようです日本語でもなければ、普通の英字キーボードでもない。
よく考えれば何も設定していないのであたりまえですね。

2018/05/11

Ubuntu 16.04 LTS から 18.04 LTS へのアップデートは7月後半まで出来ない

[Ubuntu 18.04 LTS](http://releases.ubuntu.com/18.04/) が出ましたね。

メインマシン(16.04 LTS) にアップデート通知がこないなーと思いつつ、
ちょうど仕事が忙しいタイミングと重なって放置していましたこのタイミングでアップデートするわけにもいかず、ちょうど良かったとも言える。

しかし、さすがに2週間経ってもこないのはおかしくない?と思って調べてみたら、
16.04 からのアップデートは 18.04.1 が出るまで無効化されているとのこと。

[BionicBeaver/ReleaseNotes - Ubuntu Wiki](https://wiki.ubuntu.com/BionicBeaver/ReleaseNotes#Upgrading_from_Ubuntu_16.04_LTS)

> Upgrades from 16.04 LTS will not be enabled until a few days after 18.04.1's release expected in late July.

18.04.1 の[リリーススケジュール](https://wiki.ubuntu.com/BionicBeaver/ReleaseSchedule)は7月後半一応、7月26日の予定。
ちょっと先ですね。
悩ましい。