为选段做贡献

Blockly 示例包含与 Blockly 相关但不属于核心代码库的额外内容,包括插件、Codelab 和示例代码。如需详细了解其中每一项,请参阅代码库结构页面。

注意事项

下面简要概述了关于创建 PR 需要了解的块状样本的事实。

  • 工作分支是 master,所有 PR 都应针对 master。
  • 在 blockly-samples 的根级别运行 npm install,而不是在单个插件级别运行。Blockly-samples 是一个 monorepo,这意味着它在同一个代码库中包含多个软件包,在根级别进行安装是使用 Lerna 管理 monorepo 的工作流的一部分。
  • 代码必须符合 Google 的 JavaScript 样式指南TypeScript 样式指南,具体取决于所使用的语言。
  • 在提交消息和拉取请求标题中使用传统提交
  • 所有新代码文件的前缀都必须是 Apache 许可 v2.0:

    /**
     *   @license
     *   Copyright <Current YYYY> Google LLC
     *   SPDX-License-Identifier: Apache-2.0
     */
    

进行更改并验证更改

  1. 在 blockly-samples 的根级别运行 npm install 以安装依赖项。
  2. 在插件的目录中运行 npm run start,以构建并启动运行插件测试页的服务器。您可以通过此页面查看插件的现有行为,或者如果您要添加新插件,则需要将此页面设置为有用的测试页面,以便其他人可以查看您的插件的行为。如需了解详情,请参阅playground页面。
  3. 对插件代码进行必要的更改。
  4. 如果服务器处于运行状态,更改将自动加载。 否则,请重启服务器,并验证插件是否按预期运行,并且控制台中没有错误或警告。
  5. 运行 npm run build 并确保没有构建错误。
  6. test/ 目录中编写自动化 Mocha 测试。
  7. 运行 npm run test 以运行自动化测试。
  8. 运行 npm run lint:fix 以修复 lint 错误。解决其余的警告或错误。
  9. 运行 npm run format 以运行自动格式化程序。
  10. 如果所有测试均通过,您就可以针对 master 开启 PR 测试(包含更改)。