続・チャイルドシート。

アップリカのサイト を見たら、レッグサポートというのが必要らしいのですが、そんなのものは見当たりません。明日はヨメさんとおまめが退院なのに困ったなぁと思ったら、 実はどうやら一体型 らしい。明日もう一度見てみることにします。

チャイルドシートの取り付け。

昨日、ヨメさんの友人からチャイルドシートを頂いたので後部座席に置いておいたのですが、坂道やちょっとブレーキを強く踏むとチャイルドシートによるボディアタックを喰らってその都度直さないといけないという面倒な自体にハマったので、帰ってきてから病院に行ったあとに設置してみました。

取り付け方が非常にややこしくて難しい。取扱説明書はなかったので 1 、本体についている説明書だけでやってみました。チャイルドシートって基本的にシートベルトだけで固定するんでしょうか。かなり不安定なんでそんな不安定な状態なシートにおまめちゃんを乗せるのはかなり不安なんですけどねぇ。

メーカーのWebサイトから説明書をダウンロードしてみないといけないですね。でも型番が分からないので説明書にたどり着けるかなぁ…。

1

他に頂いた服の入っている箱に入っているのでしょうか…?無いとかなり辛いんですが…。

mercurial-importorig実行時の”E: std@sys_remove_dir”のエラー。

Mercurialで管理されているソースコードを、mercuriarl-buildpackageパッケージを使ってビルドする際に出たエラー。

$ mercurial-importorig -v ../../funcparserlib_0.3.5+hg~100.orig.tar.gz
I: Unpacking ../../funcparserlib_0.3.5+hg~100.orig.tar.gz
E: std@sys_remove_dir
I: Reverting branch funcparserlib to state before import.

2行目に”E: std@sys_remove_dir”というエラーが出ていますが、mercurial-importorigコマンド自体をverboseモードで実行して上記のメッセージしか表示されず、debugモードなどもありません。なんだろうと思ってディレクトリの中を見てみると、明らかにおかしなディレクトリ”,,importorig-1330795335”がありました。これを削除できないエラーなのでしょう。

$ ls
 ,,importorig-1330795335  CHANGES  LICENSE  MANIFEST.in  Makefile  README  doc  examples  requires.txt  setup.py  src  tests

しかし、これは根本原因ではありません。とりあえず、ここは一旦”,,importorig-1330795335”ディレクトリを削除して、debuildを実行してみました。するとsymlinkが残っていてエラーになりました。

$ debuild -us -uc
(snip)
dpkg-source: error: cannot represent change to funcparserlib/doc/index.md:
dpkg-source: error:   new version is plain file
dpkg-source: error:   old version is symlink to ../README
dpkg-source: error: cannot represent change to funcparserlib/doc/Changes.md:
dpkg-source: error:   new version is plain file
dpkg-source: error:   old version is symlink to ../CHANGES
dpkg-source: warning: ignoring deletion of file CHANGES
dpkg-source: warning: ignoring deletion of file README
dpkg-source: error: unrepresentable changes to source
dpkg-buildpackage: error: dpkg-source -b funcparserlib gave error exit status 2
debuild: fatal error at line 1350:
(snip)

Mercurialのリポジトリからアーカイブを生成する際に、symlinkが含まれないようにすることで、このdebuildのエラーは解消できます。もしかして、mercurial-importorigコマンド実行時のエラーもこれが原因ではと思い、アーカイブの生成から再実行してみました。ビンゴ。

hg archiveを実行する時に、-Xオプションでsymlinkを除外するのようにして、mercurial-importorigを実行します。

$ hg archive --prefix funcparserlib/ -r 100 -t tgz -X doc/Changes.md -X doc/index.md ../funcparserlib_0.3.5+hg~100.orig.tar.gz

その後、インポートを実行したら正常に完了しました。-vオプションなしだと正常にインポートできたら何も表示されないのでオプションをつけた時の結果は下記です。

$ mercurial-importorig -v ../../funcparserlib_0.3.5+hg~100.orig.tar.gz
I: Unpacking ../../funcparserlib_0.3.5+hg~100.orig.tar.gz
I: .hg_archival.txt を追加登録中
I: CHANGES を追加登録中
I: LICENSE を追加登録中
I: MANIFEST.in を追加登録中
I: Makefile を追加登録中
I: README を追加登録中
I: doc/Brackets.md を追加登録中
I: doc/FAQ.md を追加登録中
I: doc/Illustrated.md を追加登録中
I: doc/Makefile を追加登録中
I: doc/Tutorial.md を追加登録中
I: examples/dot/Makefile を追加登録中
I: examples/dot/dot.py を追加登録中
I: examples/dot/test-comments を追加登録中
I: examples/dot/test-comments.out を追加登録中
I: examples/dot/test-connected-subgraph を追加登録中
I: examples/dot/test-connected-subgraph.dot を追加登録中
I: examples/dot/test-connected-subgraph.out を追加登録中
I: examples/dot/test-default-attrs を追加登録中
I: examples/dot/test-default-attrs.dot を追加登録中
I: examples/dot/test-default-attrs.out を追加登録中
I: examples/dot/test-empty-graph を追加登録中
I: examples/dot/test-empty-graph.out を追加登録中
I: examples/dot/test-few-attrs を追加登録中
I: examples/dot/test-few-attrs.dot を追加登録中
I: examples/dot/test-few-attrs.out を追加登録中
I: examples/dot/test-few-nodes を追加登録中
I: examples/dot/test-few-nodes.dot を追加登録中
I: examples/dot/test-few-nodes.out を追加登録中
I: examples/dot/test-illegal-comma を追加登録中
I: examples/dot/test-illegal-comma.err を追加登録中
I: examples/dot/test-null を追加登録中
I: examples/dot/test-null.err を追加登録中
I: examples/dot/test-simple-cycle を追加登録中
I: examples/dot/test-simple-cycle.dot を追加登録中
I: examples/dot/test-simple-cycle.out を追加登録中
I: examples/dot/test-single-unicode-char を追加登録中
I: examples/dot/test-single-unicode-char.err を追加登録中
I: examples/dot/test-unicode-names を追加登録中
I: examples/dot/test-unicode-names.dot を追加登録中
I: examples/dot/test-unicode-names.out を追加登録中
I: examples/json/Makefile を追加登録中
I: examples/json/json.py を追加登録中
I: examples/json/test-1-array を追加登録中
I: examples/json/test-1-array.out を追加登録中
I: examples/json/test-1-object を追加登録中
I: examples/json/test-1-object.out を追加登録中
I: examples/json/test-bool-and-null を追加登録中
I: examples/json/test-bool-and-null.out を追加登録中
I: examples/json/test-empty-array を追加登録中
I: examples/json/test-empty-array.out を追加登録中
I: examples/json/test-1-object を追加登録中
I: examples/json/test-1-object.out を追加登録中
I: examples/json/test-bool-and-null を追加登録中
I: examples/json/test-bool-and-null.out を追加登録中
I: examples/json/test-empty-array を追加登録中
I: examples/json/test-empty-array.out を追加登録中
I: examples/json/test-empty-object を追加登録中
I: examples/json/test-empty-object.out を追加登録中
I: examples/json/test-many-array を追加登録中
I: examples/json/test-many-array.out を追加登録中
I: examples/json/test-many-object を追加登録中
I: examples/json/test-many-object.out を追加登録中
I: examples/json/test-null を追加登録中
I: examples/json/test-null.err を追加登録中
I: examples/json/test-numbers を追加登録中
I: examples/json/test-numbers.out を追加登録中
I: examples/json/test-strings を追加登録中
I: examples/json/test-strings.json を追加登録中
I: examples/json/test-strings.out を追加登録中
I: examples/json/test-toplevel-string を追加登録中
I: examples/json/test-toplevel-string.err を追加登録中
I: examples/run-tests を追加登録中
I: requires.txt を追加登録中
I: setup.py を追加登録中
I: src/funcparserlib/__init__.py を追加登録中
I: src/funcparserlib/lexer.py を追加登録中
I: src/funcparserlib/parser.py を追加登録中
I: src/funcparserlib/util.py を追加登録中
I: tests/test_parsing.py を追加登録中
I: Unpacking ../../funcparserlib_0.3.5+hg~100.orig.tar.gz
I: ファイル状態: 更新数 74、 マージ数 0、 削除数 0、 衝突未解消数 0
I: (マージ結果の commit を忘れずに)

先ほどの変なディレクトリも残らず、

$ ls
CHANGES  LICENSE  MANIFEST.in  Makefile  README  doc  examples  requires.txt  setup.py  src

debuild時のエラーももちろん解消されました。

Mercurialが分からない自分のためのメモ。

メンテナンスしているパッケージがMercurialを使っているので、備忘のためのメモです。 どのブランチにいるのかは hg branch を実行すれば分かります。

$ hg branch
default

すべてのブランチを表示するにはhg branches。

$ hg branches
0.3.x                        153:28528a73b122
default                      151:faefc873c619

Gitユーザにとって分かりにくいのが hg log 。このコマンドではすべてのブランチのログが表示されます。

$ hf log
チェンジセット:   153:28528a73b122
ブランチ:         0.3.x
タグ:             tip
ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
日付:             Tue Nov 29 23:03:05 2011 +0300
要約:             Switched from nosetests to unittest for compatibility

チェンジセット:   152:e568fcc9e6d6
ブランチ:         0.3.x
親:               149:f7b9c45450d7
ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
日付:             Tue Nov 29 23:03:03 2011 +0300
要約:             Python 3 compatibility

チェンジセット:   151:faefc873c619
ブックマーク:     master
親:               150:570348297487
親:               149:f7b9c45450d7
ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
日付:             Tue Nov 22 09:39:34 2011 +0300
要約:             merge

チェンジセット:   150:570348297487
親:               143:82b1066c6c18
ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
日付:             Fri Nov 18 02:24:40 2011 +0300
要約:             Fixed bug #31 in many() backtracking

チェンジセット:   149:f7b9c45450d7
ブランチ:         0.3.x
ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
日付:             Fri Nov 18 02:15:56 2011 +0300
要約:             More information in exception objects (Issue 14)
(snip)

defaultブランチは、”ブランチ: default”とは表示されないんですね。 git log --graph のような表示をするには、 ~/.hgrc

http://labs.timedia.co.jp/2011/03/mercurial-extensions-we-should-setup-for-gituser.html

[extensions]
graphlog =

と書くそうです。

すると、 hg glog もしくは hg log -G で下記のように表示されます。

$ hg glog
o  チェンジセット:   153:28528a73b122
|  ブランチ:         0.3.x
|  タグ:             tip
|  ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
|  日付:             Tue Nov 29 23:03:05 2011 +0300
|  要約:             Switched from nosetests to unittest for compatibility
|
o  チェンジセット:   152:e568fcc9e6d6
|  ブランチ:         0.3.x
|  親:               149:f7b9c45450d7
|  ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
|  日付:             Tue Nov 29 23:03:03 2011 +0300
|  要約:             Python 3 compatibility
|
| @  チェンジセット:   151:faefc873c619
|/|  ブックマーク:     master
| |  親:               150:570348297487
| |  親:               149:f7b9c45450d7
| |  ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
| |  日付:             Tue Nov 22 09:39:34 2011 +0300
| |  要約:             merge
| |

チェックアウトしているチェンジセットが”@”になっています。 git checkout に相当するのが hg update なので、

$ hg update 0.3.x
ファイル状態: 更新数 20、 マージ数 0、 削除数 14、 衝突未解消数 0

と0.3.xブランチのheadにチェックアウトします。 hg log -G を実行して確認してみます。

$ hg log -G
@  チェンジセット:   153:28528a73b122
|  ブランチ:         0.3.x
|  タグ:             tip
|  ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
|  日付:             Tue Nov 29 23:03:05 2011 +0300
|  要約:             Switched from nosetests to unittest for compatibility
|
o  チェンジセット:   152:e568fcc9e6d6
|  ブランチ:         0.3.x
|  親:               149:f7b9c45450d7
|  ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
|  日付:             Tue Nov 29 23:03:03 2011 +0300
|  要約:             Python 3 compatibility
|
| o  チェンジセット:   151:faefc873c619
|/|  ブックマーク:     master
| |  親:               150:570348297487
| |  親:               149:f7b9c45450d7
| |  ユーザ:           Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
| |  日付:             Tue Nov 22 09:39:34 2011 +0300
| |  要約:             merge
| |

“@”の位置が変わりました。

git show に相当するのが、 hg exportgit format-patch に相当するのがどんなものか分からないので、 hg export コマンドで代用できます。

$ hg export faefc873c619

# HG changeset patch
# User Andrey Vlasovskikh <andrey.vlasovskikh@gmail.com>
# Date 1321943974 -10800
# Node ID faefc873c6198302a3459c121389d80e974da546
# Parent  570348297487181081fb91117d4bd236dfa8bc94
# Parent  f7b9c45450d7fbde14892009319c5930cffab9c1
merge

diff -r 570348297487 -r faefc873c619 .hgignore
--- a/.hgignore Fri Nov 18 02:24:40 2011 +0300
+++ b/.hgignore Tue Nov 22 09:39:34 2011 +0300
@@ -2,11 +2,13 @@
 MANIFEST
 build
 dist
+tags
 tmp
 tags
 .idea
 funcparserlib.egg-info
 examples/dot/*.png
+.idea
 *.pyc
 *.swp

diff -r 570348297487 -r faefc873c619 .hgtags
--- a/.hgtags   Fri Nov 18 02:24:40 2011 +0300
+++ b/.hgtags   Tue Nov 22 09:39:34 2011 +0300
@@ -5,3 +5,4 @@
 23cf9ed9635b112fcb2247d960f4a918eaaad4bc 0.3.2
 dfcce3e0b5765a393489570a41c7c95f5d8f1b15 0.3.3
 ce8269e2e9ad9795f089b397efbec33758337016 0.3.4
+2a094772c9e97ee5de5618f9c4479253fb357e4e 0.3.5
diff -r 570348297487 -r faefc873c619 CHANGES
--- a/CHANGES   Fri Nov 18 02:24:40 2011 +0300
+++ b/CHANGES   Tue Nov 22 09:39:34 2011 +0300
@@ -3,6 +3,17 @@
 (snip)

とりあえずこれくらい分かれば、 git-format-patch に相当するコマンドが分からないままですが、特定のチェンジセットからパッチを生成できますね。

参考

Spring visits our home.

My daughter was born yesterday, 1st March, 14:55 JST. Her tall and weight are 52cm, 3,714g. Between of the 74 hours my wife was borned to labor. I want to say thanks again to his wife.