diff options
author | Erik Gilling <konkers@google.com> | 2024-02-14 18:26:24 +0000 |
---|---|---|
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2024-02-14 18:26:24 +0000 |
commit | b482f964bd56b7ffb7ba4cbd1f8e1c3ed82345cf (patch) | |
tree | 080ed7cdc1f6fcf4312fd37898f53c6af33e3838 | |
parent | ed9667511654c9f833d540283200e188dbb9b649 (diff) | |
download | pigweed-b482f964bd56b7ffb7ba4cbd1f8e1c3ed82345cf.tar.gz |
pw_presubmit: Allow markdown style TODOs and adjust rustdocs
Bug: b/315389119
Change-Id: I4ebb580a4b58424aacc9cf4e3029dc12b0090e41
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/192253
Pigweed-Auto-Submit: Erik Gilling <konkers@google.com>
Commit-Queue: Auto-Submit <auto-submit@pigweed-service-accounts.iam.gserviceaccount.com>
Presubmit-Verified: CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Armando Montanez <amontanez@google.com>
-rw-r--r-- | pw_log/rust/pw_log.rs | 6 | ||||
-rw-r--r-- | pw_log/rust/pw_log_backend_api.rs | 4 | ||||
-rw-r--r-- | pw_log/rust/pw_log_backend_printf.rs | 3 | ||||
-rw-r--r-- | pw_log/rust/pw_log_backend_println.rs | 3 | ||||
-rw-r--r-- | pw_presubmit/docs.rst | 11 | ||||
-rw-r--r-- | pw_presubmit/py/pw_presubmit/todo_check.py | 2 | ||||
-rw-r--r-- | pw_presubmit/py/todo_check_test.py | 6 |
7 files changed, 25 insertions, 10 deletions
diff --git a/pw_log/rust/pw_log.rs b/pw_log/rust/pw_log.rs index 5f17f519f..e1e6180de 100644 --- a/pw_log/rust/pw_log.rs +++ b/pw_log/rust/pw_log.rs @@ -35,11 +35,9 @@ //! [`core::fmt`]/`println!()` style strings planned //! ([b/311232607](https://issues.pigweed.dev/issues/311232607)). //! -//! TODO: https://issues.pigweed.dev/issues/311266298 - Document `pw_log`'s -//! backend API. +//! TODO: <pwbug.dev/311266298> - Document `pw_log`'s backend API. //! -//! TODO: https://issues.pigweed.dev/issues/311232605 - Document how to -//! configure facade backends. +//! TODO: <pwbug.dev/311232605> - Document how to configure facade backends. #![cfg_attr(not(feature = "std"), no_std)] #![deny(missing_docs)] diff --git a/pw_log/rust/pw_log_backend_api.rs b/pw_log/rust/pw_log_backend_api.rs index 27f8358f6..a1110f9af 100644 --- a/pw_log/rust/pw_log_backend_api.rs +++ b/pw_log/rust/pw_log_backend_api.rs @@ -20,8 +20,8 @@ /// levels from Python's logging library, but have different values. The /// values match the C/C++ implementation of the `pw_log` module. /// -/// TODO: https://issues.pigweed.dev/issues/314168783 - Add documentation on -/// the meaning of the log levels once it is written for Pigweed in general. +/// TODO: <pwbug.dev/314168783> - Add documentation on the meaning of the +/// log levels once it is written for Pigweed in general. #[repr(u8)] pub enum LogLevel { Debug = 1, diff --git a/pw_log/rust/pw_log_backend_printf.rs b/pw_log/rust/pw_log_backend_printf.rs index a91cc3a69..8952ec40a 100644 --- a/pw_log/rust/pw_log_backend_printf.rs +++ b/pw_log/rust/pw_log_backend_printf.rs @@ -23,8 +23,7 @@ //! such as bounding the length of strings explicitly but this is still an //! off-ramp from Rust's safety guarantees. //! -//! TODO: https://issues.pigweed.dev/issues/311232605 - Document how to -//! configure facade backends. +//! TODO: <pwbug.dev/311232605> - Document how to configure facade backends. use pw_log_backend_api::LogLevel; pub use pw_log_backend_printf_macro::pw_logf_backend; diff --git a/pw_log/rust/pw_log_backend_println.rs b/pw_log/rust/pw_log_backend_println.rs index c10754843..0922638ae 100644 --- a/pw_log/rust/pw_log_backend_println.rs +++ b/pw_log/rust/pw_log_backend_println.rs @@ -18,8 +18,7 @@ //! //! *Note*: This modules requires `std`. //! -//! TODO: https://issues.pigweed.dev/issues/311232605 - Document -//! how to configure facade backends. +//! TODO: <pwbug.dev/311232605> - Document how to configure facade backends. use pw_log_backend_api::LogLevel; pub use pw_log_backend_println_macro::pw_logf_backend; diff --git a/pw_presubmit/docs.rst b/pw_presubmit/docs.rst index faccd21e9..9a4781a8e 100644 --- a/pw_presubmit/docs.rst +++ b/pw_presubmit/docs.rst @@ -346,6 +346,17 @@ Pigweed expects these to look like ``TODO: https://pwbug.dev/### - Explanation``, but makes it easy for projects to define their own pattern instead. +In markdown docs like `Rustdoc <https://doc.rust-lang.org/rustdoc/what-is-rustdoc.html>`_ +the following format is preferred. + +.. todo-check: disable + +.. code-block:: + + //! TODO: <pwbug.dev/1234> - Explanation. + +.. todo-check: enable + Some older forms are still allowed but discouraged. In order of preference we allow the following formats by default. diff --git a/pw_presubmit/py/pw_presubmit/todo_check.py b/pw_presubmit/py/pw_presubmit/todo_check.py index a8cc81cf7..a973d0ca8 100644 --- a/pw_presubmit/py/pw_presubmit/todo_check.py +++ b/pw_presubmit/py/pw_presubmit/todo_check.py @@ -48,6 +48,7 @@ BUGS_ONLY = re.compile( r'(?:\bTODO: https://issues.pigweed.dev/issues/\d+ - )|' r'(?:\bTODO: https://pwbug.dev/\d+ - )|' r'(?:\bTODO: pwbug.dev/\d+ - )|' + r'(?:\bTODO: <pwbug.dev/\d+> - )|' r'(?:\bTODO: https://github\.com/bazelbuild/[a-z][-_a-z0-9]*/issues/\d+[ ]-[ ])' ) BUGS_OR_USERNAMES = re.compile( @@ -65,6 +66,7 @@ BUGS_OR_USERNAMES = re.compile( b/\d+| # Bug. https://pwbug.dev/\d+| # Short URL pwbug.dev/\d+| # Even shorter URL + <pwbug.dev/\d+>| # Markdown compatible even shorter URL https://issues.pigweed.dev/issues/\d+| # Fully qualified bug for rustdoc # Username@ with optional domain. [a-z]+@(?:[a-z][-a-z0-9]*(?:\.[a-z][-a-z0-9]*)+)? diff --git a/pw_presubmit/py/todo_check_test.py b/pw_presubmit/py/todo_check_test.py index 36e435a0f..87123e7c9 100644 --- a/pw_presubmit/py/todo_check_test.py +++ b/pw_presubmit/py/todo_check_test.py @@ -75,6 +75,12 @@ class TestTodoCheck(unittest.TestCase): self._run_bugs_users(contents) self.ctx.fail.assert_not_called() self._run_bugs(contents) + + def test_one_bug_shorter_markdown_url(self) -> None: + contents = 'TODO: <pwbug.dev/123> - foo\n' + self._run_bugs_users(contents) + self.ctx.fail.assert_not_called() + self._run_bugs(contents) self.ctx.fail.assert_not_called() def test_one_bug_full_url(self) -> None: |