beta 版の注意点
- ブラウザアクセスによる画面レイアウトが最適化されておらず、表示が乱れるところがあります。また、画面上での操作性が悪いところもあります。
- 性能面や安定性については、まだ検証が行なえていません。
- オンラインドキュメントが更新されていません。
v1.6 の特徴
Python 3 対応
- ・処理系が Python 2.7 から Python 3 系(Python 3.6以上)に移行しました。
- ・Python 3 がインストールされていない環境では、インストーラが自動的に Python 3 をインストールします。
CentOS 8 / RHEL 8 対応
- ・CentOS 8 および RHEL 8 にインストールできるようになりました。
- ・CentOS 7 および RHEL 7 にも引き続きインストール可能です。
- ・CentOS 6 および RHEL 6 はサポート対象外となり、インストールできなくなりました。
ソフトウェアのアップデート
Kompira が利用するソフトウェアをアップデートしました。アップデートした主要なソフトウェアを以下に示します。
- ミドルウェア
- ・python 3.x (3.6以上)
- ・postgresql 12.x
- ・rabbitmq 3.8.x
- ・memcached [New]
- Python ライブラリ
- ・amqp 2.5.x
- ・django 3.0.x
- ・djangorestframework 3.11.x
- ・django-select2 7.2.x
- ・psycopg2-binary 2.8.x
- ・apscheduler 3.6.x
- ・invoke 1.4.x [New]
- ・fabric 2.5.x
- ・pywinrm 0.4.x
- JavaScript ライブラリ
- ・jquery 3.5.x
v1.6 新機能ガイド
- バイナリデータを扱えるようになりました。
- ・v1.5 までは Unicode 文字列とバイナリデータを曖昧に利用できている機能がありましたが、v1.6 では明確に区別されるようになります。
- ・ジョブフローでは
b'\xe3\x81\x93\xe3\x82\x93\xe3\x81\xab\xe3\x81\xa1\xe3\x81\xaf'
などのように、b
プレフィックスでバイナリリテラルを記述できます。 - ・ジョブフローでバイナリデータを
print()
すると、バイナリリテラル表記の形式でコンソールに表示されます。 - ・バイナリデータ型は
decode()
メソッドを持ち、文字列型に変換できます。 - ・同様に文字列型には
encode()
メソッドが追加され、バイナリデータ型に変換できます。 - ・バイナリデータの
type()
の結果は"Binary"
になります。
- 浮動小数点データを扱えるようになりました。
- ・除算の結果は常に浮動小数点になります(v1.5 では整数型でした)。
- ・剰余の結果は第二引数と同じ型になります(v1.5 では整数型でした)。
- ・浮動小数点データの
type()
の結果は"Float"
になります。
- 型オブジェクトのフィールド種別として利用できる種別が増えました。
・Binary
: バイナリデータ・Float
: 浮動小数点データ・Dictinary<T>
: 型T
の辞書データ・Array<T>
: 型T
の配列データ
- コマンド出力のリアルタイム表示
- ・実行ジョブによるコマンドの標準出力や標準エラー出力を随時コンソールに表示するようになりました(v1.5 まではコマンドが終了するまで出力が表示されませんでした)。
- ・ただしブラウザがコンソールをリロードする間隔(1~5秒程度)より素早くは表示されません。
- コマンド出力のバイナリ対応
- ・コマンド出力は通常文字列であることを期待していますが、バイナリとして受け取ることができるようになりました。
- ・コマンド実行時に
__raw_stdout__ = true
と指定しておくことで、標準出力をバイナリとして受け取ります。 - ・同様に標準エラー出力をバイナリとして受け取りたい場合は
__raw_stderr__ = true
と指定します。
v1.5 以前から v1.6 に移行する場合の注意点
- Kompira enterprise v1.5 以前から v1.6 へのアップデートインストールはできません。新しいサーバ環境を用意するか、v1.5 以前の環境を完全に削除して新規インストールする必要があります。
- v1.5 以前から移行される場合は、一度 manage.py export_data コマンドを用いてデータをエクスポートした後、Kompira 1.6.0 をインストールしてから manage.py import_data コマンドを用いてインポートしなおしてください。
- v1.5 以前のジョブフローは、多くの場合そのまま v1.6 でも動作しますが、仕様変更に関わる機能を利用している箇所では修正が必要な場合もあります。
- v1.5 以前の Kompira からジョブフローやライブラリを移植する場合、基本的にはすべての機能・動作を再確認してください。
- とくにライブラリオブジェクトは処理系の Python が 2 系から 3 系(3.6以上)に変更になっているため、すべての実装を見直す必要があります(そのまま動作する可能性もあります)。
- Kompira オブジェクトのフィールド値やジョブフローにおいて、文字列データとバイナリデータが明確に区別されるようになりました。バイナリデータを扱っていた箇所については、実行時にエラーになる可能性があるため、実装を見直す必要があります。
- ・サーバ上のファイルを扱っている箇所
- ・Kompiraオブジェクトの添付ファイルを扱っている箇所
- ・外部連携においてバイナリデータを扱っている箇所