| # Contributing guide |
| |
| When making changes to `package:dtd` and `package:dtd_impl` at the same |
| time, you'll need to |
| [build the Dart SDK](https://github.com/dart-lang/sdk/wiki/Building#building) |
| to ensure that changes to |
| `package:dtd_impl` are picked up in the DTD snapshot. |
| |
| ## Helpful aliases |
| |
| Consider adding these aliases to your `.zshrc` file for convenience. For |
| non-macOS platforms, replace "xcodebuild" with "out". |
| ``` |
| # Builds the entire Dart SDK. Run from the sdk/ directory. |
| alias build-dart='./tools/build.py -mrelease create_sdk' |
| |
| # The create_platform_sdk target will work exactly the same as the |
| # `create_sdk` target but without building the web tooling. |
| alias build-dart-fast='./tools/build.py -mrelease create_platform_sdk' |
| |
| # The dart exe that was built by running 'build-dart' or 'build-dart-fast' |
| # will be located here. Create an alias for convenience of using the dart exe. |
| alias sdkdart='/absolute_path_to/sdk/xcodebuild/ReleaseX64/dart-sdk/bin/dart' |
| |
| # The runtime target will only build what the VM needs to run, but will output |
| # the compiled dart binary at `xcodebuild/ReleaseX64/dart` instead of |
| # `xcodebuild/ReleaseX64/dart-sdk/bin/dart`. Runtime is a bit faster than |
| # `create_platform_sdk`, but both are faster than `create_sdk`. |
| alias build-dart-runtime='./tools/build.py -mrelease runtime' |
| |
| # The dart exe that was built by running `build-dart-runtime`. |
| alias sdkruntime='/absolute_path_to/sdk/xcodebuild/ReleaseX64/dart' |
| ``` |
| |
| After building the Dart SDK with your local changes, use the `dart` |
| executable that you just built to run commands that you want your |
| local changes applied to (e.g. `sdkdart run ...`, `sdkdart test ...`). |