こちらの新機能は現在クローズドベータ中です
新しく試したい方はこちらのフォームからリクエストしてください。

Changelog (変更履歴)

v1.8.1 (2022 年 7 月 26 日)

  • バージョンの命名規則を改善しました。

v1.8.0 (2022 年 7 月 26 日)

  • CLI コマンドtriggerscollaborators を複数形から単数形に変更し、triggercollaborator となりました。
  • CLI コマンドslack var を非推奨にしました。環境変数の追加・表示・削除をする際は slack env のサブコマンド addlistremove を使ってください。
  • CLI コマンドページを分かりやすくしました。各コマンドの完全な詳細情報を表示するには、ターミナル上で各コマンドを --help フラグをつけて実行してください。

v1.7.0 (2022 年 7 月 14 日)

  • データストアのスキーマ検証を改善しました。

v1.6.0 (2022 年 7 月 14 日)

  • integernumberusergrouptimestampblocksObject 型のサポートを追加しました(詳しくはこちら)。
  • App Home の設定プロパティの read_only_message_tabmessages_tab_enabled のサポートを追加しました。 アプリのマニフェストファイルfeatures プロパティによってメッセージタブを非表示にすることができるようになりました。
  • 新しい name プロパティを追加しました。また、 DefineType を定義するときの callback_id プロパティを非推奨にしました。より詳細な情報は新しいコードサンプルをご覧ください!

v1.5.0 (2022 年 6 月 30 日)

  • slack run コマンドのデフォルトの挙動が、ローカル実行が終了しても dev アプリを削除せずにワークスペース内に残すように変更されました。ローカル起動の終了後に dev アプリを削除したい場合は --cleanup フラグを指定してください。
  • upgrade コマンドを追加しました。 CLI と SDK を同時に更新するには slack upgrade コマンドを使ってください。
  • より強固なエラーハンドリングやエラー解決策の提示のためのサポート機能の追加を継続的に行っています。
  • ユーザのホームディレクトリで CLI コマンドを実行したときに .slack ディレクトリが削除されてしまう問題を修正しました。

v1.4.0 (2022 年 6 月 16 日)

  • ファンクションの配布(distribution)後に必要な対応について内容を更新しました。distribute コマンドを実行した後、他のユーザがファンクションにアクセスできるようにするには、アプリを再度デプロイする必要があります。より詳細な情報はこちらをお読みください。
  • slack activity コマンドに出力をフィルターするためのフラグ(指定は任意)として --component-id--source--trace-id を新たに追加しました。 詳しくはこちらをお読みください。
  • slack run 実行時に一部のユーザーに影響が発生していた cache_error というエラーの不具合を修正しました。
  • トークンが無効化された時やトークンローテーションによって期限切れになったときの開発者体験を改善しました。より詳細なエラーメッセージを表示するようにし、さらに既存の認可に関する問題を解消し、エラーが発生することなく slack login コマンドを再実行できるようになりました。

v1.3.0 (2022 年 6 月 2 日)

  • ファンクションの配布に関するコントロールを追加しました。 新しい distribute コマンドを利用することで "Run on Slack" ファンクションへのアクセス許可設定を変更することができます。--grant でアクセスを許可し、 --revoke で取り消します。詳しくはこちらを参照してください。

v1.2.0 (2022 年 5 月 24 日)

  • slack run コマンドに --no-cleanup フラグを追加しました。このフラグを指定すると、ローカル起動が終了しても dev アプリは削除されずにワークスペース内に残ります。
  • アプリマニフェストの検証時に破壊的な変更を検知した場合、警告を表示するようになりました。
  • Linux 環境での自動更新に関する問題を修正しました。
  • デフォルトのアプリテンプレートを Deno 1.22 で動作するよう更新しました。
  • アプリのオーナー権限をワークスペースをまたいで移行する場合に関する免責事項を追加しました。

v1.0.1 (2022 年 5 月 5 日)

  • client.apps.datastore.* の呼び出しで Datastore のジェネリック型を渡すことができるようになりました。 より詳細な情報は Datastores の使い方 のドキュメントを参照してください。
  • 直接 Slack API を呼び出すことができるようになりました。今後は client.apiCall('chat.postMessage', {...}) の代わりに client.chat.postMessage({...}) と記述できます。詳細は Slack API 呼び出し のドキュメントを参照してください。
  • クイックスタート用のインストールスクリプト は Deno のアップグレードを適切に対応するようになりました。
  • CLI で発生したパニックイベントがログに出力されるようになりました。
  • 開発者がローカルでの実行を終了したときのログ出力を改善しました。
  • activity --tail コマンドが正常に動作しなかった問題を修正しました。
  • トークンローテーションを改善しました。

v1.0.0 (2022 年 4 月 19 日)

2022 年 4 月 19 日以前に次世代プラットフォームのアプリを開発されましたか?
2022 年 4 月 19 日以前に次世代プラットフォームのアプリを開発された場合は、CLI は、ワークスペースから再度認可を受ける必要があります。これを実行するには slack auth logout コマンドでログアウトしてから slack auth login コマンドで再度の認可を行なってください。

新機能

  1. 以前のプロジェクトでは、ワークフロー・トリガー・ファンクションが含まれていましたが、このバージョンからファンクションのみを中心とした構成となりました。
  2. ファンクションの仕組みは全く新しい形に再構築されました。"Run on Slack" と呼ばれる、Slack のインフラにデプロイ可能でモジュール化されたファンクションを作ることができます。
    • ファンクションは、マニフェスト(アプリの設定ファイル)で定義され、ソースファイルで実装されます。
    • DefineFunctionid はファンクションの定義へ移動し、今後はそれを callback_id と呼びます。
    • 開発者用ショートカット (Developer Shortcut) と呼ばれる、ファンクションの移行をより容易にするために新たに追加された自動生成のショートカットを使って、ファンクションをテストすることができます。
    • 将来的には、開発したファンクションをワークフロービルダーのステップとして利用できるようになる予定です。
    • 将来的には、既存の Bolt アプリに "Remote" なファンクションを追加できる様になります。
  3. アプリの機能を提供するために、アプリ側でワークフローやトリガーを定義する必要はなくなりました。
  4. Tables は、より強力でレジリエントな Datastores という新しいキーバリューストアに変更されます。
  5. Project.tsmanifest.ts になりました。 アプリはプロジェクトのマニフェストで設定されます。
  6. Deno Slack SDK を動作させるためには Deno 1.20.0 以降のバージョンを利用する必要があります。
  7. マニフェストは、 JavaScript、 TypeScript のソースファイル、または JSON 形式の設定ファイルで記述することができます。
  8. ファンクションの実行時のロジックは JavaScript または TypeScript のソースファイルのものが実行されます。
  9. 新しい Deno Slack SDK は functionstypesdatastores に対応しています。
  10. DefineTypeid は型定義に移行し、今後は callback_id と呼びます。
  11. サポートされるスキーマの種別は channelsuserbooleanstring のみになりました。また userchannelstring (列挙型) の配列もサポートしています。
  12. このバージョンからは、ファンクションに client という変数を提供しません。別途公開されている API ライブラリを import し、token を提供するヘルパーを使ってインスタンス化してください。
  13. TypeScript の型情報は FunctionHandler を通じて利用できます。
  14. Audit Logs のログは CLI SDK 側ではなく、プラットフォームの API 側で記録されるようになりました。
  15. Deno Slack SDK がオープンソース化されました!
  16. slack create コマンドは、新しい Deno Slack SDK を使った Reverse String (文字列の反転) アプリを生成します。
  17. slack activity コマンドが出力するデプロイメントに関するログの内容が刷新されました。
  18. slack run コマンドは、ローカル開発のサーバを停止すると dev アプリを削除するようになりました。
  19. slack doctor コマンドは、さらに詳細な情報を含む形で刷新されました。
  20. slack list コマンドは、コラボレーターを表示する代わりに認可されたアカウントの一覧を表示するようになりました。
  21. .slack/cli.json はプロジェクトから削除されました。
  22. slack.json がプロジェクトのルートディレクトリの必須ファイルになりました。
  23. slack.json は SDK の更新をよりスムーズにするための新しいフォーマットに変更されました。
  24. slack tables コマンドは削除されました( slack datastore を参照してください)。
  25. CLI ではトリガーの生成・更新・削除を行うことができなくなりました。

変更されていない機能

以下の機能については変更はありません。

  1. slack login によるワークスペースへのログイン
  2. slack create によるアプリの作成
  3. slack run によるローカル開発
  4. slack deploy によるアプリのデプロイ
  5. slack activity --tail を使ったデプロイされたアプリのデバッグ
  6. slack collaborators によるコラボレーターの管理
  7. DefineFunctionDefineType の利用

Tables とそのデータに関して

私たちは作成されたテーブルとそれにアクセスするための API のルート (apps.tables.*) を2 週間維持します。もし取得しておきたいデータがあれば、この期間のうちに API を使って取得してください。(新しいバージョンの CLI/SDK は Tables API をサポートしないため、API を直接利用いただく必要があります)。データを移行する作業を容易にするためにこちらのスクリプトを使ってください。

Was this page helpful?