Releases: hangingman/fswiki
Releases · hangingman/fswiki
v4.0.1 freestylewiki(fork)
バグ修正や改良を実施したのでtag打ちしてみる
変更内容
バグ修正
- CSRF攻撃の対策 by @hangingman in #23
- セッション管理部分のコードを(Plack::Sessionの方式に修正) by @hangingman in #34
- fswikiのセッション管理ファイルの名称を修正 by @hangingman in #35
- PSGI向けに$ENVの処理を修正 #44 by @hangingman in #45
- Amazonプラグインの書影をGoogle Book APIから取得するよう修正 by @hangingman in #48
機能追加
- 編集画面をJavaScript製テキストエディタAceで実行する、等 by @hangingman in #22
- FSWikiデータのエクスポート機能実装 by @hangingman in #36
- fswiki用のsystemctlのunitファイルを作成 by @hangingman in #40
- ansible内部でrsyncを実行できるように修正 by @hangingman in #41
- systemdまわりの修正 by @hangingman in #43
Full Changelog: v4.0.0...v4.0.1
v4.0.0 freestylewiki(fork)
変更内容
変更内容から、過去のfreestylewikiとは異なるものになっているのでメジャーバージョンを+1してv4.0.0とした。変更内容は以下
-
機能面
- app.psgi
Plack::App::WrapCGI
を廃止し、app.psgi
の中でPSGIアプリケーションを公開するようにした- セッション、クッキーの設定、setup.datの読み込み等も
app.psgi
で実施するようにしている
- lib/CGI2.pm
- 内部的に保持するCGIオブジェクトをCGI::PSGIに変更
- lib/WikiApplication.pm
- redirect時にPlack::Responseを返すように変更、プラグイン側でHTTP responseヘッダ等が設定されている場合はreturnする
- その他
- 文字コード変更
- redirectの挙動変更に伴う修正
- app.psgi
-
開発用
.editorconfig
を追加し、インデント等を合わせるようにしたREADME.md
に記載の通りansibleによるデプロイを可能にしている、ローカルでのテストの際はdockerを使用する
v3からの移行
- 使っている人は自分ぐらいしかいない気がするのですが、setup.datに以下の項目の追加が必要
- (plackの内部でクッキーなどを作成するためのトークンです)
# HMACSHA1を使用してセッションデータに署名するためのサーバー側シークレット
# uuidgenコマンドで作るといい感じにランダム文字列が作れるのでおすすめ
secret = { uuidgenコマンドで生成した文字列 }
その後、ファイルのバックアップをとった後
- supervisorの停止とソースコードの更新、ライブラリのアップデート
# systemctl stop supervisord
# git pull --rebase
# carton install
- supervisorの起動と起動ログの監視
# systemctl start supervisord
# tail -f /tmp/fswiki.log
特にエラーがなければ完了