Skip to content

Commit 8ba03ee

Browse files
authored
Various typo and 0.6 specific changes to CONTRIBUTING.md
1 parent 4b924da commit 8ba03ee

File tree

1 file changed

+22
-28
lines changed

1 file changed

+22
-28
lines changed

CONTRIBUTING.md

Lines changed: 22 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
Thank you for your interest in contributing to ExecuTorch! We want to make
22
it easy to contribute to this project.
33

4-
 
5-
64
## Dev Install
75

86
Set up your environment by following the instructions at
9-
https://pytorch.org/executorch/stable/getting-started-setup.html to clone
7+
https://pytorch.org/executorch/0.6/getting-started-setup.html to clone
108
the repo and install the necessary requirements.
119

12-
Refer to this [document](https://pytorch.org/executorch/main/using-executorch-building-from-source.html) to build ExecuTorch from source.
10+
Refer to this [document](https://pytorch.org/executorch/0.6/using-executorch-building-from-source.html) to build ExecuTorch from source.
1311

1412
### Dev Setup for Android
1513
For Android, please refer to the [Android documentation](docs/source/using-executorch-android.md).
@@ -31,7 +29,6 @@ executorch
3129
│ ├── <a href="backends/cadence">cadence</a> - Cadence-specific backends. See <a href="docs/source/backends-cadence.md">doc</a>.
3230
│ ├── <a href="backends/example">example</a> - Example backend implementations.
3331
│ ├── <a href="backends/mediatek">mediatek</a> - MediaTek-specific backends. See <a href="docs/source/backends-mediatek.md">doc</a>.
34-
│ ├── <a href="backends/openvino">openvino</a> - OpenVINO backend for Intel hardware.
3532
│ ├── <a href="backends/qualcomm">qualcomm</a> - Qualcomm-specific backends. See <a href="docs/source/backends-qualcomm.md">doc</a>.
3633
│ ├── <a href="backends/transforms">transforms</a> - Transformations for backend optimization.
3734
│ ├── <a href="backends/vulkan">vulkan</a> - Vulkan backend for cross-platform GPU support. See <a href="docs/source/backends-vulkan.md">doc</a>.
@@ -41,12 +38,12 @@ executorch
4138
├── <a href="devtools">devtools</a> - Model profiling, debugging, and inspection. Please refer to the <a href="docs/source/devtools-overview.md">tools documentation</a> for more information.
4239
│ ├── <a href="devtools/bundled_program">bundled_program</a> - a tool for validating ExecuTorch model. See <a href="docs/source/bundled-io.md">doc</a>.
4340
│ ├── <a href="devtools/etdump">etdump</a> - ETDump - a format for saving profiling and debugging data from runtime. See <a href="docs/source/etdump.md">doc</a>.
44-
│ ├── <a href="devtools/etrecord">etrecord</a> - ETRecord - AOT debug artifact for ExecuTorch. See <a href="https://pytorch.org/executorch/main/etrecord.html">doc</a>.
45-
│ ├── <a href="devtools/inspector">inspector</a> - Python API to inspect ETDump and ETRecord. See <a href="https://pytorch.org/executorch/main/model-inspector.html">doc</a>.
41+
│ ├── <a href="devtools/etrecord">etrecord</a> - ETRecord - AOT debug artifact for ExecuTorch. See <a href="https://pytorch.org/executorch/0.6/etrecord.html">doc</a>.
42+
│ ├── <a href="devtools/inspector">inspector</a> - Python API to inspect ETDump and ETRecord. See <a href="https://pytorch.org/executorch/0.6/model-inspector.html">doc</a>.
4643
│ └── <a href="devtools/visualization">visualization</a> - Visualization tools for representing model structure and performance metrics.
4744
├── <a href="docs">docs</a> - Static docs tooling and documentation source files.
4845
├── <a href="examples">examples</a> - Examples of various user flows, such as model export, delegates, and runtime execution.
49-
├── <a href="exir">exir</a> - Ahead-of-time library: model capture and lowering APIs. EXport Intermediate Representation (EXIR) is a format for representing the result of <a href="https://pytorch.org/docs/main/export.ir_spec.html">torch.export</a>. This directory contains utilities and passes for lowering the EXIR graphs into different <a href="/docs/source/ir-exir.md">dialects</a> and eventually suitable to run on target hardware.
46+
├── <a href="exir">exir</a> - Ahead-of-time library: model capture and lowering APIs. EXport Intermediate Representation (EXIR) is a format for representing the result of <a href="https://pytorch.org/docs/0.6/export.ir_spec.html">torch.export</a>. This directory contains utilities and passes for lowering the EXIR graphs into different <a href="/docs/source/ir-exir.md">dialects</a> and eventually suitable to run on target hardware.
5047
│ ├── <a href="exir/_serialize">_serialize</a> - Serialize final export artifact.
5148
│ ├── <a href="exir/backend">backend</a> - Backend delegate ahead of time APIs.
5249
│ ├── <a href="exir/capture">capture</a> - Program capture.
@@ -58,7 +55,7 @@ executorch
5855
│ ├── <a href="exir/serde">serde</a> - Graph module serialization/deserialization.
5956
│ ├── <a href="exir/verification">verification</a> - IR verification.
6057
├── <a href="extension">extension</a> - Extensions built on top of the runtime.
61-
│ ├── <a href="extension/android">android</a> - ExecuTorch wrappers for Android apps. Please refer to the <a href="docs/source/using-executorch-android.md">Android documentation</a> and <a href="https://pytorch.org/executorch/main/javadoc/">Javadoc</a> for more information.
58+
│ ├── <a href="extension/android">android</a> - ExecuTorch wrappers for Android apps. Please refer to the <a href="docs/source/using-executorch-android.md">Android documentation</a> and <a href="https://pytorch.org/executorch/0.6/javadoc/">Javadoc</a> for more information.
6259
│ ├── <a href="extension/apple">apple</a> - ExecuTorch wrappers for iOS apps. Please refer to the <a href="docs/source/using-executorch-ios.md">iOS documentation</a> and <a href="https://pytorch.org/executorch/stable/apple-runtime.html">how to integrate into Apple platform</a> for more information.
6360
│ ├── <a href="extension/aten_util">aten_util</a> - Converts to and from PyTorch ATen types.
6461
│ ├── <a href="extension/data_loader">data_loader</a> - 1st party data loader implementations.
@@ -69,7 +66,7 @@ executorch
6966
│ ├── <a href="extension/memory_allocator">memory_allocator</a> - 1st party memory allocator implementations.
7067
│ ├── <a href="extension/module">module</a> - A simplified C++ wrapper for the runtime. An abstraction that deserializes and executes an ExecuTorch artifact (.pte file). Refer to the <a href="docs/source/extension-module.md">module documentation</a> for more information.
7168
│ ├── <a href="extension/parallel">parallel</a> - C++ threadpool integration.
72-
│ ├── <a href="extension/pybindings">pybindings</a> - Python API for executorch runtime. This is powering up the <a href="https://pytorch.org/executorch/main/runtime-python-api-reference.html">runtime Python API</a> for ExecuTorch.
69+
│ ├── <a href="extension/pybindings">pybindings</a> - Python API for executorch runtime. This is powering up the <a href="https://pytorch.org/executorch/0.6/runtime-python-api-reference.html">runtime Python API</a> for ExecuTorch.
7370
│ ├── <a href="extension/pytree">pytree</a> - C++ and Python flattening and unflattening lib for pytrees.
7471
│ ├── <a href="extension/runner_util">runner_util</a> - Helpers for writing C++ PTE-execution tools.
7572
│ ├── <a href="extension/tensor">tensor</a> - Tensor maker and <code>TensorPtr</code>, details in <a href="/docs/source/extension-tensor.md">this documentation</a>. For how to use <code>TensorPtr</code> and <code>Module</code>, please refer to the <a href="/docs/source/using-executorch-cpp.md">"Using ExecuTorch with C++"</a> doc.
@@ -86,12 +83,12 @@ executorch
8683
├── <a href="runtime">runtime</a> - Core C++ runtime. These components are used to execute the ExecuTorch program. Please refer to the <a href="docs/source/runtime-overview.md">runtime documentation</a> for more information.
8784
│ ├── <a href="runtime/backend">backend</a> - Backend delegate runtime APIs.
8885
│ ├── <a href="runtime/core">core</a> - Core structures used across all levels of the runtime. Basic components such as <code>Tensor</code>, <code>EValue</code>, <code>Error</code> and <code>Result</code> etc.
89-
│ ├── <a href="runtime/executor">executor</a> - Model loading, initialization, and execution. Runtime components that execute the ExecuTorch program, such as <code>Program</code>, <code>Method</code>. Refer to the <a href="https://pytorch.org/executorch/main/executorch-runtime-api-reference.html">runtime API documentation</a> for more information.
86+
│ ├── <a href="runtime/executor">executor</a> - Model loading, initialization, and execution. Runtime components that execute the ExecuTorch program, such as <code>Program</code>, <code>Method</code>. Refer to the <a href="https://pytorch.org/executorch/0.6/executorch-runtime-api-reference.html">runtime API documentation</a> for more information.
9087
│ ├── <a href="runtime/kernel">kernel</a> - Kernel registration and management.
9188
│ └── <a href="runtime/platform">platform</a> - Layer between architecture specific code and portable C++.
9289
├── <a href="schema">schema</a> - ExecuTorch PTE file format flatbuffer schemas.
9390
├── <a href="scripts">scripts</a> - Utility scripts for building libs, size management, dependency management, etc.
94-
├── <a href="shim">shim</a> - Compatibility layer between OSS and Internal builds.
91+
├── <a href="shim_et">shim_et</a> - Compatibility layer between OSS and Internal builds.
9592
├── <a href="test">test</a> - Broad scoped end-to-end tests.
9693
├── <a href="third-party">third-party</a> - Third-party dependencies.
9794
├── <a href="tools">tools</a> - Tools for building ExecuTorch from source, for different built tools (CMake, Buck).
@@ -106,8 +103,8 @@ We actively welcome your pull requests (PRs).
106103
1. [Claim an issue](#claiming-issues), if present, before starting work. If an
107104
issue doesn't cover the work you plan to do, consider creating one to provide
108105
context about it, and to build consensus about the scope and solution.
109-
1. Create your new branch from `main` in your forked repo, with a name
110-
describing the work you're completing; e.g., `add-feature-x`.
106+
1. Create your new branch from `0.6` in your forked repo, with a name
107+
describing the work you're completing; e.g. `add-feature-x`.
111108
1. If you've added code that should be tested, add tests. Ensure all tests pass.
112109
See the [testing section](#testing) for more information.
113110
1. If you've changed APIs or added a new tool or feature, [update the
@@ -192,9 +189,6 @@ in the Github repo.
192189

193190
## Coding Style
194191

195-
Goal: Encourage standards that make it easier to read, edit, maintain, and debug
196-
the ExecuTorch code.
197-
198192
### lintrunner
199193

200194
We use [`lintrunner`](https://pypi.org/project/lintrunner/) to help make sure the
@@ -259,7 +253,7 @@ toolchains, and having access to relatively modern C++ features.
259253

260254
#### C/C++ standard library usage
261255

262-
**Restricted usage of the C++ standard library.**
256+
**Restricted usage of the C++ standard library**
263257

264258
Rationale: ExecuTorch is intended to be portable to bare-metal systems that lack
265259
certain features, like dynamic memory, threading, and locking, required by parts
@@ -280,7 +274,7 @@ careful to also manually destroy objects initialized in this way.
280274

281275
#### C++ language features
282276

283-
**Exceptions: Do not use.**
277+
**Exceptions: Do not use**
284278
- Rationale: Exceptions are not widely supported on some classes of
285279
microcontrollers and DSPs, and they can significantly increase binary size.
286280

@@ -289,12 +283,12 @@ must work with threading**
289283
- Rationale: The core runtime must work on systems that do not have threading
290284
support.
291285

292-
**RTTI, dynamic_cast, and `<typeid>`: Do not use.**
286+
**RTTI, dynamic_cast, and `<typeid>`: Do not use**
293287
- Rationale: RTTI adds extra data to every virtual class. ExecuTorch doesn't
294288
have a strong need for `dynamic_cast` and friends, so it's better to reduce
295289
the binary size.
296290

297-
**Templates and template metaprogramming: Be careful and avoid if possible.**
291+
**Templates and template metaprogramming: Be careful and avoid if possible**
298292
- Rationale: Most templating results in code generation, and is one of the most
299293
common sources of binary bloat. Some use of templates is fine (e.g. an
300294
`ArrayRef<T>`, or code that handles multiple `ScalarType` types), but for the
@@ -327,8 +321,8 @@ the code you're modifying and find an author who has more context. Ask them
327321
for their help in the PR comments.
328322

329323
### Continuous Integration
330-
See https://hud.pytorch.org/hud/pytorch/executorch/main for the current state of
331-
the CI (continuous integration) jobs. If `main` is broken, consider rebasing
324+
See https://hud.pytorch.org/hud/pytorch/executorch/0.6 for the current state of
325+
the CI (continuous integration) jobs. If `0.6` is broken, consider rebasing
332326
your PR onto the `viable/strict` branch, which points to the most recent
333327
all-green commit.
334328

@@ -354,14 +348,14 @@ website preview based on your changes.
354348

355349
## Pull Requests
356350
This repo uses Github pull requests (PRs) to stage and review code before
357-
merging it into the `main` branch. See the [Github
351+
merging it into the `0.6` branch. See the [Github
358352
docs](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request-from-a-fork)
359353
for basics.
360354

361355
1. Push your branch to your fork of `pytorch/executorch`. Most people do not
362-
have permission to push a branch directoy to the upstream repo.
356+
have permission to push a branch directory to the upstream repo.
363357
1. Create your PR
364-
- Use the `main` branch as the base.
358+
- Use the `0.6` branch as the base.
365359
- Give the PR a clear and descriptive title. It will become the title of the
366360
merged commit, so it needs to be useful in the output of `git log`.
367361
- Bad title: "Fix a bug"
@@ -409,7 +403,7 @@ for basics.
409403
reviewers. A member of the ExecuTorch repo will find someone to review it.
410404
1. Address and discuss comments left by reviewers
411405
- If the reviewers have requests or questions, follow up with them.
412-
- The goal of the reviewer is to ensure that the code in the `main` branch of
406+
- The goal of the reviewer is to ensure that the code in the `0.6` branch of
413407
the repo is consistent, maintainable, and of high quality.
414408
1. Once the PR has been approved,
415409
- If you have the "write permission" in this repo, you can merge it yourself
@@ -420,7 +414,7 @@ for basics.
420414
to validate it against internal CI.
421415
- If the PR is approved but not merged within 5 business days, please comment
422416
on the PR to ask about its status.
423-
- Note that if the `main` [CI](#continuous-integration) jobs are broken, we
417+
- Note that if the `0.6` [CI](#continuous-integration) jobs are broken, we
424418
will only merge PRs that fix the broken jobs until all critical jobs are
425419
fixed.
426420

0 commit comments

Comments
 (0)