新月の開発

21dfd4e1 anonymous 2015-11-16 10:30
>>cb2dabb9
Markdown対応は非常に興味深い。確かに新月のリンクの表記法と一部衝突するけど、新月の内部リンクは特徴があるので、そこら辺はbody内の内部リンクを最初にMarkdownの形式に変換してからMarkdownのパーサにかければ問題ないはず。レコードのフォーマットを拡張するならbodyの他にmarkdown-bodyでも追加すればいい。
4ad331cb anonymous 2015-11-16 10:34
あ、でも>>21dfd4e1[[shinGETsuプロトコル 0.8について議論するスレ]]向けの話だったかな。
9eb72079 anonymous 2015-11-16 11:53
time stampって取得した時間にするとダメな感じ?
ed83295d anonymous 2015-11-16 13:43
>>9eb72079
既存の実装では別扱いなんだっけ
失礼しました
e198deb6 anonymous 2015-11-17 03:17 1447697823.png (29KB)
レスのコンテキストメニューを実装しました。これである程度使えるようになったかな。
32aab68b anonymous 2015-11-17 03:19 1447697946.png (37KB)
レスのポップアップはこんな感じ。
0dcfbfb4 anonymous 2015-11-17 03:24 1447698255.png (15KB)
添付画像のプレビュー機能もついています。
fff2bdb6 anonymous 2015-11-17 18:03
>>f54e3350
ローカルでいいならsqlite3がいいかも
でも、cacheはディスク上で簡単に削除可能、が朔で売りじゃなかったっけ?
現状WEB上で削除できるから、必要かどうかわからんが。
0581f30b anonymous 2015-11-17 19:10
>>45347578
気が変わって、port0対応する前に0.0.3としました。
https://github.com/shingetsu-gou/shingetsu-gou/releases/tag/v0.0.3

すいませんが、ディスク上のgou_templateとwwwディレクトリは削除してください。
templateとwwwのファイルの扱いが変わったので。
ただし、自分で変更しているファイルだけは残してください(それが優先されます)

変更点
・template/wwwディレクトリのファイル展開をやめた。
・いくつかのリンクの埋め込み表示
・日本語以外で2ch interface使うと落ちていたのを修正
・スレを削除した後、空データをWEBに返してたのを修正
b90c2a42 anonymous 2015-11-19 03:13
>>fff2bdb6
ClojureはJVMベースなので、ローカルで使用する場合はJavaで書かれたHyperSQL( http://hsqldb.org/ )を使用する予定です。ygch.netに乗っけるときには冗長化されたMySQL鯖にするつもりです。
64241033 anonymous 2015-11-19 20:50
改めて皆さんに聞きたいんですが、現状ファイルとしてスレとレスがディスクに書き込まれてますが、これをデーターベースに
したら、やっぱり不便でしょうか?
一応朔でもWEB上から削除できるようにはなってると思うんですが。
合のパフォーマンス的にもDBにしたほうが良くなりそうな気がしてます。
760db09c anonymous 2015-11-19 22:29
パフォーマンス的に外部DBにした方がよいという根拠は?
2821baf1 anonymous 2015-11-20 00:06
>>64241033
SQLで直アクセスできるなら不便とは思いません。
2cfce19a anonymous 2015-11-20 01:53
>>64241033
winでのフルパス制限問題が解決しそう
cd5f7d9b anonymous 2015-11-20 02:02
>>64241033
将来的には外部データベースを使ったほうがいいでしょ。
今の朔の実装だとちょっとしたクエリでも性能ガタ落ちだし。
cd12be43 anonymous 2015-11-20 02:07
>>64241033
デフォルトでSQLiteを使って、オプションでMySQLとかに切り替えられると嬉しい。
95aaa9f1 anonymous 2015-11-20 14:13
見誤ってたらすいませんが、朔って、ノードAから
/update/ノードBのIPアドレス:8000+server.cgi
が来ると、ノードBのIPアドレスがノードAのIPアドレスと異なっていたらリジェクト、になってない?
仕様的には、有効な気がするんだが。

新月プロトコル0.1#1より抜粋
「自分の持っているファイルならば、それを更新したのち、 ノード名を自ノードのノード名に書き換えて接続しているノードにも通知する。 そうでなければそのまま、 送信されてきたプロトコルコマンドを接続しているノードに転送する。 」
c866c59b anonymous 2015-11-20 14:14
>>95aaa9f1

in server_cgi.py

    def get_remote_hostname(self, host):
        remote_addr = self.environ['REMOTE_ADDR']
        if host == '':
            return remote_addr
        ipaddr = socket.gethostbyname(host)
        if ipaddr == remote_addr:
            return host
        return None

    def do_update(self, path_info):
        self.header("text/plain")
        m = re.search(r"^update/(\w+)/(\d+)/(\w+)/([^:]*):(\d+)(.*)",path_info)
        if m is None:
            return False
        (datfile, stamp, id, host, port, path) = m.groups()
        if not title.is_valid_file(datfile, 'thread'):
            return False
        host = self.get_remote_hostname(host)
        if not host:
            return False
  <後略>
97eec536 anonymous 2015-11-20 14:18
外部dbはsqliteに比べると導入コスト移行コスト共にかなり高い
性能はsqlite3で充分
少なくともインデックス貼って正しく実装すれば遅くなるとは思わない
最適化もかなりされていて普通より早いと聞くし
288c5966 anonymous 2015-11-20 14:27
>>97eec536

>>cd12be43
>>b90c2a42
は、各マシンに分散保存したいんじゃない?
38e74faa anonymous 2015-11-20 15:13
>>95aaa9f1
仕様的には有効だけど、
受け入れるかどうかは実装次第。
新月プロトコルは全体的にそういうポリシーで、
スパム判定もそのポリシーの範疇。
87a31f39 anonymous 2015-11-20 15:32
>>38e74faa
まぁ、そう言ってしまえば、そうなんだが、

その割に朔自身、自分が持ってないスレの/updateが来た時、仕様どおり
そのまま転送している、、、、
1fb3e09d anonymous 2015-11-20 16:15
>>87a31f39
受け入れる実装がありうるので転送している。
74e6f9a1 anonymous 2015-11-20 19:11
>>1fb3e09d
なるへそ
9ae2724b anonymous 2015-11-20 20:52
>>97eec536
データベースを冗長化して公開ゲートウェイの可用性を高めたいのです。
今の朔の実装だと、朔を動かしているサーバーが故障したら
どうしようもないですからね。
00eedc89 anonymous 2015-11-21 18:59
>>9ae2724b
sqliteは単一ファイルなのでそれをrsyncやらで代替鯖にも同期をとればよいかと
e082733d anonymous 2015-11-21 22:33
sqlは共通なのでクエリを発行する関数を共通化すればできる
(型が違うので性能は落ちると思うが)
sqliteも壊れないとは限らないのでMySql対応は作っておいて損はない
f909c6d8 anonymous 2015-11-21 23:02
>>00eedc89
駄目みたいだぞ。

http://serverfault.com/questions/89329/rsync-sqlite-database
c0efa2d2 anonymous 2015-11-22 04:43
markedown対応ってmarked.js使えば拡張機能だけで出来るかな
a95fda3b anonymous 2015-11-22 11:53
sqlの各DB互換性って、どんなもんなの?

当然各DB互換にSQLはかけて、ただし、チューニングしようと思えばDB非互換になるとは思う。
実際にDB共通に作ったとして、性能として耐えられないレベルになってしまうん?
ebf242ef anonymous 2015-11-22 12:39
>>a95fda3b
主な問題点はtable宣言をどうするかだな
共通にすれば無駄ができる(特にsqliteとmysqlは)
逆にアクセスは共通でも問題ないはず
ea77dbf6 anonymous 2015-11-22 12:43
>>ebf242ef
一例を上げてもらえると嬉しい
786ffb93 anonymous 2015-11-22 12:57
合0.0.5をリリースします。

https://github.com/shingetsu-gou/shingetsu-gou/releases/tag/v0.0.5

・goroutine時のデータレース修正
・全/recentを1時間ごとに取得するよう変更
・レス取得を (現在-get_range)〜現在 から(スレ内最終レス時刻-get_range)〜現在 に変更
・port0仮対応
 ・0.0.5を実行いただけた方を探して動作確認する予定ですので、予めご了承ください
・NAT等の理由で外部から接続できない場合でも閲覧はできるよう変更。書き込んでも拡散されません。
118b7cbe anonymous 2015-11-22 13:08
>>786ffb93
Gou0.0.5に移行したので報告
http://opptape.iobb.net:8000/
3c2b0ae3 anonymous 2015-11-22 13:17
>>ea77dbf6
横だけどClojureで複数のDBをサポートするためにこの関数で違いを吸収した。
一番面倒くさかったのはcase insensitiveな文字列の扱い。あとは割と簡単だった。

(defn db-types
  [db-spec]
  (cond
    (or (= (:subprotocol db-spec) "h2")
        (and (:datasource db-spec)
             (re-find #"^jdbc:h2:" (java-get-jdbc-url (:datasource db-spec)))))
    {:id                                 "INTEGER PRIMARY KEY AUTO_INCREMENT"
     :varchar                            "VARCHAR"
     :varchar-ignorecase                 "VARCHAR_IGNORECASE"
     :varchar-ignorecase-unique          "VARCHAR_IGNORECASE UNIQUE"
     :blob                               "BLOB"}

    (or (= (:subprotocol db-spec) "hsqldb")
        (and (:datasource db-spec)
             (re-find #"^jdbc:hsqldb:" (java-get-jdbc-url (:datasource db-spec)))))
    {:id                                 "INTEGER GENERATED BY DEFAULT AS IDENTITY (START WITH 1, INCREMENT BY 1)"
     :varchar                            "VARCHAR(16777216)"
     :varchar-ignorecase                 "VARCHAR_IGNORECASE(16777216)"
     :varchar-ignorecase-unique          "VARCHAR_IGNORECASE(16777216) UNIQUE"
     :blob                               "BLOB"}

    (or (= (:subprotocol db-spec) "mysql")
        (and (:datasource db-spec)
             (re-find #"^jdbc:mysql:" (java-get-jdbc-url (:datasource db-spec)))))
    {:id                                 "SERIAL PRIMARY KEY"
     :varchar                            "LONGTEXT CHARACTER SET UTF8 COLLATE 'utf8_bin'"
     :varchar-ignorecase                 "LONGTEXT CHARACTER SET UTF8 COLLATE 'utf8_general_ci'"
     :varchar-ignorecase-unique          "LONGTEXT CHARACTER SET UTF8 COLLATE 'utf8_general_ci'" ; UNIQUE is not supported.
     :blob                               "LONGBLOB"}

    (or (= (:subprotocol db-spec) "postgresql")
        (and (:datasource db-spec)
             (re-find #"^jdbc:postgresql:" (java-get-jdbc-url (:datasource db-spec)))))
    {:id                                 "SERIAL PRIMARY KEY"
     :varchar                            "CITEXT"
     :varchar-ignorecase                 "CITEXT"
     :varchar-ignorecase-unique          "CITEXT UNIQUE"
     :blob                               "BYTEA"}

    :else
    nil))
4bcbe873 anonymous 2015-11-22 13:18
>>ea77dbf6
かなり違う
例えば文字列では
sqliteはtext一種に対し
mysqlはchar(x),varchar(x),text(サイズ毎に4種)
そこまで詳しい訳じゃないけど性能に響きそう
961694fd anonymous 2015-11-22 13:23
やっぱりコードを貼り付けるときにMarkdownが使えたほうがいいなあ。
4740e89a anonymous 2015-11-22 13:25
>>4bcbe873
>>3c2b0ae3
なるほど

810cade5 anonymous 2015-11-22 13:31
>>118b7cbe
ありがとう。
これが書き込めたたら、成功。
13bf3740 anonymous 2015-11-22 13:57
>>810cade5
おめ!
327a815a anonymous 2015-11-22 14:17
いつの間にか合が加わっていた。ありがとう。

http://shingetsu.info/index.ja
7999137e anonymous 2015-11-22 14:17
Gouの進化はえー
be965f04 anonymous 2015-11-22 15:12
色々言っちゃったがsqliteの型は凄く自由らしい
mysqlっぽく書いても認識されちゃった
でもchar(8)に何文字でも入れられる
条件を守ってくれる訳じゃないから多分共通化できるよとだけ
e0c22596 anonymous 2015-11-22 15:22
現在作成中の朔のモバイル版(PCも可)だけど、どんなもんでしょ。

http://mobile-shingetsu.ygch.net/ 
ef0e1c4c anonymous 2015-11-22 15:44
>>e0c22596
いいね
a8749929 anonymous 2015-11-22 22:50
というかマイクロサービスとしてDBの分離はいいんだけど、SQLが適切かを議論した方が良いのでは。
bf99e4a1 anonymous 2015-11-22 22:53
>>e0c22596
いいと思うけど、「名無しさん」ってのが2chに引きずられてて嫌。
2c65b3d5 anonymous 2015-11-22 23:01
>>bf99e4a1
なるほど。たしかにそんな気もするけど、どうしたらいいんだろう…
名無しの場合は名前欄を隠せばいいのかな。
806c0769 anonymous 2015-11-22 23:47
>>bf99e4a1
隠したらあまりにも殺風景だったので、とりあえず「匿名利用者」にしておきました。
なにかいい案があったらぜひ。
936f5288 anonymous 2015-11-22 23:48
>>2c65b3d5
名前欄表示しないのはシンプルで良いね
f877cf1c anonymous 2015-11-22 23:53
>>936f5288
う~ん、なれの問題かなあ。じゃあしばらく非表示にしてみようっと。
ba7e9ddf anonymous 2015-11-23 02:14
idがバーコードなのがちょっと違和感
79387e71 anonymous 2015-11-23 03:32
バーコードは、機械的に生成されてるんだよって感じが出ててちょっと面白いと思った
良いか悪いかは別として、独自性が出てる
920b59b1 anonymous 2015-11-23 04:52
>>79387e71
そうそうw ランダムな文字を表すのに何がいいかと考えたらこうなったんですよね。
11d0d130 anonymous 2015-11-23 04:55
>>a8749929
MongoDBみたいなNoSQLなデータベースを使うという話ですか?
3d686635 anonymous 2015-11-23 05:53
>>79387e71
タグ(栞?)みたいなグリフの方が自分は好きだな
beffbad0 anonymous 2015-11-23 06:15
>>3d686635
> >>79387e71
> タグ(栞?)みたいなグリフの方が自分は好きだな

どれどれ…
b6418932 anonymous 2015-11-23 06:22 1448227375.png (23KB)
>>3d686635
うん、これも悪く無いですね。なかなかすっきりしています。
39cabc14 anonymous 2015-11-23 09:32
>>b6418932
サンクス
c9eac498 anonymous 2015-11-23 16:11
QRがいい(*≧∀≦*)
ちゃんとIDをQR化したやつ((o( ̄ー ̄)o))
ef311424 anonymous 2015-11-23 17:29
>>c9eac498
コメントごとにQR画像が付くのか。悪夢だな。無駄にトラフィック増やさないでくれ。
a544348c anonymous 2015-11-23 18:20
NoSQLもそうだし、スケーラブルな実装となると単純なSQLでは駄目ですよね。
c9d978e4 anonymous 2015-11-23 18:22
>>ef311424
ローカルでやれば良くね?
b3f56293 anonymous 2015-11-23 18:23
>>ef311424
画像じゃなくても QR くらいならクライアント側で生成できそう
いずれにせよ新月ネットワークには流れないと思うので、その心配はしなくても良いと思う
4cd2f524 anonymous 2015-11-24 01:08
>>c9eac498
名前欄だと場所を取り過ぎるので、各ページの最後にQRコードを追加しました。
もちろんIDのQRコードも作れます。
1f893e8d anonymous 2015-11-24 01:11 1448295068.png (17KB)
>>c9eac498
スクリーンショットを貼り忘れたorz
e3719281 anonymous 2015-11-24 01:37
QR デカいなwww
要らないだろこれww
4179d9e5 anonymous 2015-11-24 01:51
>>a544348c
マルチマスターレプリケーションで冗長化したMySQL鯖が2台あるので、これを使うことを検討中です。
b0da69fb anonymous 2015-11-24 01:54
>>e3719281
やっぱりでかいですよねw
これぐらいないとスレタイが長いと読み取れなくなっちゃうんですけど、どうしたもんかな…
d6bf270d anonymous 2015-11-24 01:59
まあいいや。後でなんとかしようっと…
355fc4de anonymous 2015-11-24 02:12
というかローカルのDBの実装を統一する必要なくね?前出たIPFSとか使うなら別
あくまで通信が成立すれば新月ってことで

別仕様のクライアント間のDB移植はGouがやってるみたいにツールを用意すればいいし、朔仕様にそれぞれ対応すれば全部相互に移植可能になるじゃん
bda5eaf7 anonymous 2015-11-24 02:26
>>e3719281
QRコードはデフォルトで非表示にしました。
個人的には好きなのでちと残念。
0a48307c anonymous 2015-11-24 02:31
>>355fc4de
> というかローカルのDBの実装を統一する必要なくね?

いままでしていたのはどのような実装が良いかという話で、実装を統一するという話ではないと理解しています。朔からのインポートと朔へのエクスポートができれば十分でしょう。
076a956f anonymous 2015-11-24 03:39
ん?じゃあ何でsqliteとMySQL互換とかいう話が出てたの?
4f208459 anonymous 2015-11-24 03:49
>>076a956f
それは 1つの新月クライアントを複数ののデータベースに対応するのにどれくらい手間がかかるかと言う話のはずです。
6b5775fa anonymous 2015-11-24 03:53
>>076a956f
うち間違えた。「 1つの新月クライアントを複数のデータベースに対応させるのに、どれくらい手間がかかるかと言う話」でした。
67da3f20 anonymous 2015-11-24 04:53
>>076a956f
sqlite=導入作業不要
mysql=冗長化・高信頼性
使い方によって切り替えが出来るといいと言う要望があったからだと
e9fed841 anonymous 2015-11-24 04:54
>>6b5775fa
そうだったんですか。勘違いでした。
ef549564 anonymous 2015-11-24 08:05
>>1f893e8d
ほんの数文字程度でこの大きさになるのか・・・
871ac4a7 anonymous 2015-11-24 08:37
>>ef549564
あ、QRコードにはページのURLが全部入っています。
61a86df6 anonymous 2015-11-24 08:41
面白いからいいけど果たしてこのQR意味があるのか
とゆうか本来の目的と違うような
71739e3a anonymous 2015-11-24 09:34
>>61a86df6
多分ないですw PCで見ていたページを携帯で続けてみたいときぐらいですかね。
a261a984 anonymous 2015-11-24 11:38
gistでコード貼り付けとかって出来る?
コード貼る時に便利だと思うんだけど
68601e43 anonymous 2015-11-24 12:59
こんなエラーがよく出る。特定アドレスを排除したら収まった。
2015-11-23 00:53:08<>----------------------------------------
2015-11-23 00:53:08<>Exception happened during processing of request from ('150.70.173.8', 60600)
2015-11-23 00:53:08<>Traceback (most recent call last):
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/socketserver.py", line 592, in process_request_thread
2015-11-23 00:53:08<>    self.finish_request(request, client_address)
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/socketserver.py", line 334, in finish_request
2015-11-23 00:53:08<>    self.RequestHandlerClass(request, client_address, self)
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/socketserver.py", line 648, in __init__
2015-11-23 00:53:08<>    self.handle()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/http/server.py", line 396, in handle
2015-11-23 00:53:08<>    self.handle_one_request()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/http/server.py", line 384, in handle_one_request
2015-11-23 00:53:08<>    method()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/http/server.py", line 657, in do_GET
2015-11-23 00:53:08<>    f = self.send_head()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/http/server.py", line 930, in send_head
2015-11-23 00:53:08<>    return self.run_cgi()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/shingetsu/LightCGIHTTPServer.py", line 251, in run_cgi
2015-11-23 00:53:08<>    cgiobj.start()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/shingetsu/basecgi.py", line 103, in start
2015-11-23 00:53:08<>    self.run()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/shingetsu/server_cgi.py", line 69, in run
2015-11-23 00:53:08<>    self.do_recent(path)
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/shingetsu/server_cgi.py", line 246, in do_recent
2015-11-23 00:53:08<>    fp = self.output()
2015-11-23 00:53:08<>  File "/usr/lib/python3.2/shingetsu/server_cgi.py", line 194, in output
2015-11-23 00:53:08<>    return TextIOWrapper(fp, 'utf-8', 'replace')
2015-11-23 00:53:08<>AttributeError: readable
2015-11-23 00:53:08<>----------------------------------------
33584954 anonymous 2015-11-24 13:01
もう一個エラーメッセージ。

2015-11-23 04:28:22<>Exception in thread Thread-205:
Traceback (most recent call last):
  File "/usr/lib/python3.2/threading.py", line 740, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.2/shingetsu/crond.py", line 159, in run
    self.do_sync()
  File "/usr/lib/python3.2/shingetsu/crond.py", line 223, in do_sync
    cachelist.getall(timelimit=self.timelimit)
  File "/usr/lib/python3.2/shingetsu/cache.py", line 877, in getall
    rec.sync()
  File "/usr/lib/python3.2/shingetsu/cache.py", line 321, in sync
    attach = base64.decodestring(self['attach'].encode('utf-8'))
  File "/usr/lib/python3.2/base64.py", line 367, in decodestring
    return decodebytes(s)
  File "/usr/lib/python3.2/base64.py", line 360, in decodebytes
    return binascii.a2b_base64(s)
binascii.Error: Incorrect padding


7de084d7 anonymous 2015-11-24 13:17
>>2015-11-23 00:53:08<>Exception happened during processing of request from ('150.70.173.8', 60600)
Hostname        150-70-173-8.trendmicro.com
Network AS16880 TREND MICRO INCORPORATED

???

http://ipinfo.io/150.70.173.8
cac22d81 anonymous 2015-11-24 13:32
>>a261a984
こんなんでいいの? なんか違うような気がするけど…
http://mobile-shingetsu.ygch.net/mobile.cgi/thread/%E3%83%86%E3%82%B9%E3%83%88/baf0b411
a3b63476 anonymous 2015-11-24 13:58
>>7de084d7
ウィルスバスターのクローラーっぽいな。
しかしそれでどうしてエラーが出るのかまでは分からんな。
1b3aa17a anonymous 2015-11-24 13:59
>>a261a984
ようやくわかったw http://mobile-shingetsu.ygch.net/ では対応しておきました。
2445b1c8 anonymous 2015-11-25 02:15
ちょ、これって朔のCGIモジュールからは200以外のHTTPステータスコードは返せないってこと?
/(^o^)\ナンテコッタイ

----LightCGIHTTPServer.py----

        # import CGI module
        try:
            cgiclass = cgimodule[script].CGI
        except KeyError:
            self.send_error(404, "No such CGI script (%s)" % repr(scriptname))
            return
        self.send_response(200, "Script output follows")
        if hasattr(self, 'flush_headers'):
            self.flush_headers()
        elif hasattr(self, '_headers_buffer'):
            self.wfile.write(b"".join(self._headers_buffer))
            self._headers_buffer = []
2b317250 anonymous 2015-11-25 11:29
作者さんbase64 decode error修正ありがとん
1aa79cbc anonymous 2015-11-25 12:03
合0.0.6をリリースします。
https://github.com/shingetsu-gou/shingetsu-gou/releases/tag/v0.0.6

・巨大スレダウンロード時のメモリ消費量削減
・リレー時websocketがタイムアウトする問題修正
・uPnP機器があると外部ポート設定が無視される問題修正
・moonlight時全キャッシュを同時にダウンロードしていたのを修正
・markdown対抗
da4b658e anonymous 2015-11-25 12:06
>>1aa79cbc
レスが拡散されてないかも、という話は原因が特定できていません、、、
6900b70c anonymous 2015-11-25 12:18
>>1aa79cbc
乙乙
うちに帰ったらすぐに入れ替えるわ。
61ca4cd8 anonymous 2015-11-25 22:50
ygchのデフォのUIがモバイルのやつになってるね
66fa9791 anonymous 2015-11-25 23:18
>>61ca4cd8
ある程度モバイル版が使えるようになったので思い切って入れ替えちゃいましたw
要望等があったらぜひ。
a65a7d93 anonymous 2015-11-25 23:39
>>66fa9791
2chブラウザ用のスレのURLが変わった(同じ内容のスレがもう一つ現れて、お気に入りに入れていたスレが
DAT落ちとか削除された時と同じ処理になってた)のだけど、そのタイミングにでもおきたのかなぁ……。
f1eae5b1 anonymous 2015-11-25 23:50
>>a65a7d93
直しておきました。
b4db11ba anonymous 2015-11-26 00:30
>>f1eae5b1
ありがとうございます
525fd8f6 anonymous 2015-11-26 07:12
rssが作動しなくなった
前のページは残ってないの?

Top of this page. | <<last <<new 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 old>>

limit: 15360KB

(新月の開発/72075/49.4MB)

Powered by shinGETsu.