Add commands v3 documentation pages - #3339
SamCarlberg wants to merge 20 commits into
Conversation
sciencewhiz
left a comment
There was a problem hiding this comment.
Here's some initial comments. Also update new for 2027 to link to the documentation.
|
|
||
| .. tab-set-code:: | ||
|
|
||
| ```java |
There was a problem hiding this comment.
To improve maintainability, lets make these and all other "complete" code snippets into snippets in allwpilib and reference via RLIs.
There was a problem hiding this comment.
Yup. I plan on moving them when the code snippets are approved here. It's annoying to reference them across repos
Removed a lot of unnecessary tab-set-code and replaced others with manual tab-sets with descriptive tab labels
Co-authored-by: Dan Katzuv <31829093+katzuv@users.noreply.github.com>
|
@codex review |
sciencewhiz
left a comment
There was a problem hiding this comment.
A few more comments, haven't been able to get through everything yet
This should update the 2027 overview to link to the documentation instead of the confernce/design doc.
The examples page should be updated with the commands v3 examples
| @@ -0,0 +1,83 @@ | |||
| # State Machines with Commands | |||
There was a problem hiding this comment.
I think this article could benefit from a more complex example that demonstrates why State machines are beneficial for complex commands. The existing code example seems like something that could easily be done without a state machine
There was a problem hiding this comment.
I think this will need a followup with a new state machine example project added to allwpilib
Include a note on broken builds and a quick-and-dirty workaround Could also use `uv run make html SPHINXOPTS="-D rediraffe_redirects='path/to/empty-file.txt"` to point at an empty file outside the git repo without making any local changes, if on a Unix-like system
Comments don't affect the behavior of redirects, so they're safe to insert, remove, or modify at will
|
|
||
| // Triggers can be and are encouraged to be public. They can't control the mechanism, | ||
| // and make it easier to coordinate complex actions | ||
| public final Trigger isUp = new Trigger(() -> pivotMotor.getPosition() >= 90); |
There was a problem hiding this comment.
I don't think this code will compile, since PWMSparkMax isn't a smart motor controller with a sensor. In fact, because of the discussion of sensors above, using a separate encoder in this example seems like it would be better.
| @@ -0,0 +1,96 @@ | |||
| # Using Lambda Functions | |||
There was a problem hiding this comment.
There's also this existing doc on lambdas. Perhaps update and reference that doc for the general syntax part, and keep this specific to how they're used in Commands v3
Note that some docs reference not-yet-committed WPILib changes (wpilibsuite/allwpilib#9207)