Gauche > Archives > 2014/10/20

2014/10/20 02:56:28 UTCyamasushi
#
<pubDate>Thu,  2 Oct 2014 01:14:03 Z</pubDate>
<guid isPermaLink="true">http://chaton.practical-scheme.net/gauche/a/2014/10/02#entry-542ca6db-1b20b</guid>
</item>
<item>
<title>shiro: POSIXでは言及がないので保証されてないみたい。Solarisのマニュアルではasync signal safeと明記してあった。ちょっと気になるのは、シグナルハンドラが呼ばれた時点でシステム的にそのシグナルは自動的にマスクされて、ハンドラが戻った直後にアンマスクされるから、ハンドラ内でマスクしても上書きされちゃうのかな、という点。</title>
<link>http://chaton.practical-scheme.net/gauche/a/2014/10/02#entry-542ca685-917c8</link>
<description><![CDATA[<div class="entry-single" id="entry-542ca685-917c8"><span>shiro: POSIXでは言及がないので保証されてないみたい。Solarisのマニュアルではasync signal safeと明記してあった。ちょっと気になるのは、シグナルハンドラが呼ばれた時点でシステム的にそのシグナルは自動的にマスクされて、ハンドラが戻った直後にアンマスクされるから、ハンドラ内でマスクしても上書きされちゃうのかな、という点。</span
></div
>]]></description>
<content:encoded><![CDATA[<div class="entry-single" id="entry-542ca685-917c8"><span>shiro: POSIXでは言及がないので保証されてないみたい。Solarisのマニュアルではasync signal safeと明記してあった。ちょっと気になるのは、シグナルハンドラが呼ばれた時点でシステム的にそのシグナルは自動的にマスクされて、ハンドラが戻った直後にアンマスクされるから、ハンドラ内でマスクしても上書きされちゃうのかな、という点。</span
></div
>]]></content:encoded>
<pubDate>Thu,  2 Oct 2014 01:12:37 Z</pubDate>
<guid isPermaLink="true">http://chaton.practical-scheme.net/gauche/a/2014/10/02#entry-542ca685-917c8</guid>
</item>
</channel>
</rss>
#
ここでフィードが止まってます。
#
10/2に何かあったのでしょうか・・・・・
2014/10/20 03:06:32 UTCshiro
#
ありゃ。サーバのGaucheはちょくちょく入れ替えてるので、HEADで何かエンバグしたかな。
2014/10/20 03:35:28 UTCshiro
#
いや、index.rdfはちゃんと出てるのか。そうではなく、current.datがpruneされないという問題、ということですか。
#
そんなことないな。current.datには日時にかかわらず30エントリ残すようにしてるだけだ。何が問題なのでしょう? >yamasushi
2014/10/20 04:18:08 UTCyamasushi
#
えーと,10/3以降のフィードを取ってこないんです。うちの環境の問題でしょうか?
#
<pubDate>Thu,  2 Oct 2014 02:40:18 Z</pubDate>
<guid isPermaLink="true">http://chaton.practical-scheme.net/gauche/a/2014/10/02#entry-542cbb12-2f75e</guid>
</item>
</channel>
</rss>
#
いまこのチャット画面のRSSをクリックしてダウンロードしたものの末尾です。
#
というか,chromeのRSSプラグインが反応してませんよね? RSSフィード
#
ああ,ask.fmも反応してないな。反応するページとしないページがあるのか・・・・
#
ask.fmだと,プロファイルではプラグインが用意しているRSS購読アイコンがでないですが,RSSをクリックするとフィード一覧が出るのですけど,chatonではダウンロードになりますね。(で,わたしはchatonをThunderbirdにリンクをコピペして購読してるんですけど。
#
https://chrome.google.com/webstore/detail/rss-subscription-extensio/nlbjncdgjeocebhnmkbbbdekmmmcbfjd ↑で書いたchromeプラグインというのはこれのことです。
2014/10/20 04:57:20 UTCyamasushi
#
http://chaton.practical-scheme.net/gauche/var/index.rdf これでいいんですよね? RSS。このページのRSSというリンクをコピペしてきたんですが。
#
いま,ダウンロードしてもやはり古いままみたいです・・・・・(謎
#
あ,見方を間違えてました。末尾じゃなくて先頭が最新でしたか。
#
ああ,ThunderbirdでXMLのパースエラーが出てました。
#
This feed does not validate.

    line 450, column 31: XML parsing error: <unknown>:450:31: not well-formed (invalid token) [help]

        <title>とおる。: ただたしかにアプリケーションのコードとしては、関数を読んだ先で yield されてていつまでたっても返ってこない、みたいなの ...
                                       ^

In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

    line 36, column 0: description should not contain onclick attribute (7 occurrences) [help]

        <description><![CDATA[<div class="entry-single" id="entry-54449630-21add"><s ...

    line 40, column 0: content:encoded should not contain onclick attribute (7 occurrences) [help]

        <content:encoded><![CDATA[<div class="entry-single" id="entry-54449630-21add ...

    line 110, column 76: Encode "&" and "<" in plain text using hexadecimal character references. (2 occurrences) [help]

        <title>yamasushi: &lt;pubDate&gt;Thu,  2 Oct 2014 02:40:18 Z&lt;/pubDate&gt; ...
                                                                                    ^

    line 420, column 36: Problematical RFC 822 date-time value: Mon, 6 Oct 2014 05:40:37 Z (3 occurrences) [help]

        <pubDate>Mon,  6 Oct 2014 05:40:37 Z</pubDate>
                                            ^

    Non-RSS 1.0 feeds should not be served with the "application/rdf+xml" media type [help]
#
それで,10/3まではパースが成功していて,それ以降で失敗しているみたいです。
#
http://validator.w3.org/feed/check.cgi?url=http%3A%2F%2Fchaton.practical-scheme.net%2Fgauche%2Fvar%2Findex.rdf
2014/10/20 05:07:30 UTCshiro
#
ああ、なんか妙なコード (^D) が混入してるな。そのせいだな。
2014/10/20 05:14:45 UTCshiro
#
これでどうかな。
#
まだだめか。
2014/10/20 05:20:12 UTCshiro
#
ああ、最初の問題のところは対応したけど、yamasushiさんが貼り付けたやつに残ってるか。CDATAの中でも制御文字はだめなのか。
2014/10/20 05:40:45 UTCshiro
#
んん? CDATAの中は ']]>' 以外の Charの並びが許されるはずだが。そもそもtokenとしてパーズされてるのはなんでじゃろ。
#
sxmlだと問題なくパーズできるな。
2014/10/20 05:51:58 UTCshiro
#
いや、XML1.0とXML1.1でCharの定義が違うのか。1.1だと許されるけど1.0だと駄目だ。
2014/10/20 06:09:39 UTCyamasushi
#
えーと,クライアント側はどうすれば。(困惑
2014/10/20 06:28:50 UTCshiro
#
1.0に適合するようにchaton側を変えますよ。
2014/10/20 06:41:05 UTCshiro
#
まあ目前のイシューとしては、問題のポストが流れていってしまえばいいわけだが。
2014/10/20 06:46:05 UTCshiro
#
current.datを編集して問題の文字を消してみた。
2014/10/20 06:46:27 UTCyamasushi
#
うまくいきますね。
2014/10/20 06:46:35 UTCshiro
#
いけてるようだな。後はpost時に混入しないようにフィルタすればいいか。
2014/10/20 07:47:57 UTCshiro
#
r6rs以降の \xNN; エスケープに対応してるEmacsのSchemeモードって誰か使ってる? 今まで何となく誤魔化して我慢してきたけどそろそろ限界…
2014/10/20 08:50:34 UTCg000001
#
こんにちは。あまり使われない機能な気はしますが、Gaucheのバージョン0.8.14からコマンドラインオプションの-fcase-foldが効かないようです。#!fold-caseは問題ないです。Changelogを眺めてみると2008-08-20辺りからでしょうか。
#
これが原因かは分かりませんが、src/read.cのread_wordもSCM_VM_RUNTIME_FLAG_IS_SET(Scm_VM(), SCM_CASE_FOLD)等を参照することはないみたいです。
2014/10/20 21:30:21 UTCshiro
#
む。r6rs対応の#!fold-caseあたりを入れた時にバグったかな。でも-fcase-foldのユニットテストは入ってるんだけど妙だな。
#
あああ、スクリプトファイルには効いてる(からテストは通る)んだけどREPLに効いてないのかな。
2014/10/20 22:50:40 UTCshiro
#
思い出した。case foldingフラグはポートについてて (#!fold-caseがそれの現れたポートにのみ影響するから)、-fcase-foldはそのフラグのデフォルト値を決めているんだけど、REPLに使うstdinポートはオプションパーズ時には既に作られているのでオプションの効果が無いのであった。