Skip to content

Fix broken links in documentation #2479

@LukeAbby

Description

@LukeAbby

There are a number of things that cargo doc will lint about from [`euclidean_to_parametric`] not existing to the bare url https://wrfranklin.org/Research/Short_Notes/pnpoly.html (as opposed to wrapped in angle brackets).

cargo doc output
warning: unresolved link to `euclidean_to_parametric`
  --> libraries/bezier-rs/src/bezier/lookup.rs:13:53
   |
13 |     /// For performance reasons, this version of the [`euclidean_to_parametric`] function allows the caller to
   |                                                        ^^^^^^^^^^^^^^^^^^^^^^^ no item named `euclidean_to_parametric` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
   = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default

warning: unresolved link to `x`
  --> libraries/bezier-rs/src/bezier/solvers.rs:10:21
   |
10 |     /// Get roots as [[x], [y]]
   |                        ^ no item named `x` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `y`
  --> libraries/bezier-rs/src/bezier/solvers.rs:10:26
   |
10 |     /// Get roots as [[x], [y]]
   |                             ^ no item named `y` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: public documentation for `parametric_polynomial` links to private item `Polynomial`
  --> libraries/bezier-rs/src/bezier/solvers.rs:43:20
   |
43 |     /// Returns two [`Polynomial`]s representing the parametric equations for x and y coordinates of the bezier curve respectively.
   |                       ^^^^^^^^^^ this item is private
   |
   = note: this link will resolve properly if you pass `--document-private-items`
   = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default

warning: unresolved link to `line_test_crossings_prerotated`
   --> libraries/bezier-rs/src/bezier/solvers.rs:443:109
    |
443 | ... angle, consider instead using [`line_test_crossings_prerotated`] and moving this function's setup code into your own logic before the repeated call.
    |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `line_test_crossings_prerotated` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `line_test_crossings`
   --> libraries/bezier-rs/src/bezier/solvers.rs:455:37
    |
455 |     /// If that isn't important, use [`line_test_crossings`] which wraps this and provides an easier interface by taking a line rotation vector.
    |                                        ^^^^^^^^^^^^^^^^^^^ no item named `line_test_crossings` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `ray_test_crossings_prerotated`
   --> libraries/bezier-rs/src/bezier/solvers.rs:467:108
    |
467 | ...n angle, consider instead using [`ray_test_crossings_prerotated`] and moving this function's setup code into your own logic before the repeated call.
    |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `ray_test_crossings_prerotated` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `ray_test_crossings`
   --> libraries/bezier-rs/src/bezier/solvers.rs:479:37
    |
479 |     /// If that isn't important, use [`ray_test_crossings`] which wraps this and provides an easier interface by taking a ray direction vector.
    |                                        ^^^^^^^^^^^^^^^^^^ no item named `ray_test_crossings` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `new_regular_polygon`
   --> libraries/bezier-rs/src/subpath/core.rs:308:47
    |
308 |     /// Constructs a star polygon (n-star). See [new_regular_polygon], but with interspersed vertices at an `inner_radius`.
    |                                                  ^^^^^^^^^^^^^^^^^^^ no item named `new_regular_polygon` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `ray_test_crossings_count_prerotated`
  --> libraries/bezier-rs/src/subpath/solvers.rs:49:108
   |
49 |     /// If this needs to be called frequently with a ray of the same rotation angle, consider instead using [`ray_test_crossings_count_prerotated`].
   |                                                                                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `ray_test_crossings_count_prerotated` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `ray_test_crossings_count`
  --> libraries/bezier-rs/src/subpath/solvers.rs:56:37
   |
56 |     /// If that isn't important, use [`ray_test_crossings_count`] which provides an easier interface by taking a ray direction vector.
   |                                        ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `ray_test_crossings_count` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `point_inside_prerotated`
  --> libraries/bezier-rs/src/subpath/solvers.rs:67:70
   |
67 |     /// If this needs to be called frequently, consider instead using [`point_inside_prerotated`] and moving this function's setup code into your own logic b...
   |                                                                         ^^^^^^^^^^^^^^^^^^^^^^^ no item named `point_inside_prerotated` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `point_inside`
  --> libraries/bezier-rs/src/subpath/solvers.rs:85:37
   |
85 |     /// If that isn't important, use [`point_inside`] which provides an easier interface.
   |                                        ^^^^^^^^^^^^ no item named `point_inside` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `rectangle_intersections`
   --> libraries/bezier-rs/src/subpath/solvers.rs:189:36
    |
189 |     /// This is faster than calling [`rectangle_intersections`]`.len()` because it short-circuits as soon as an intersection is found.
    |                                       ^^^^^^^^^^^^^^^^^^^^^^^ no item named `rectangle_intersections` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: `bezier-rs` (lib doc) generated 14 warnings
warning: unresolved link to `ArtboardData`
   --> node-graph/gcore/src/graphic_element.rs:227:12
    |
227 | /// Some [`ArtboardData`] with some optional clipping bounds that can be exported.
    |            ^^^^^^^^^^^^ no item named `ArtboardData` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
    = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default

warning: unresolved link to `HandleIds`
   --> node-graph/gcore/src/vector/vector_data.rs:289:80
    |
289 |     /// Enumerate all segments that start or end at a point, converting them to [`HandleId`s]. Note that the handles may not exist e.g. for a linear segment.
    |                                                                                   ^^^^^^^^^^ no item named `HandleIds` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `WasmEditorApi`
   --> node-graph/gcore/src/application_io.rs:291:79
    |
291 |     /// Font data (for rendering text) made available to the graph through the [`WasmEditorApi`].
    |                                                                                  ^^^^^^^^^^^^^ no item named `WasmEditorApi` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `WasmEditorApi`
   --> node-graph/gcore/src/application_io.rs:296:67
    |
296 |     /// Editor preferences made available to the graph through the [`WasmEditorApi`].
    |                                                                      ^^^^^^^^^^^^^ no item named `WasmEditorApi` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: this URL is not a hyperlink
   --> node-graph/gcore/src/graphic_element/renderer/quad.rs:108:16
    |
108 |     /// Code from https://wrfranklin.org/Research/Short_Notes/pnpoly.html
    |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: bare URLs are not automatically turned into clickable links
    = note: `#[warn(rustdoc::bare_urls)]` on by default
help: use an automatic link instead
    |
108 |     /// Code from <https://wrfranklin.org/Research/Short_Notes/pnpoly.html>
    |                   +                                                       +

warning: this URL is not a hyperlink
   --> node-graph/gcore/src/graphic_element.rs:137:37
    |
137 |     /// Equivalent to the SVG <g> tag: https://developer.mozilla.org/en-US/docs/Web/SVG/Element/g
    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: bare URLs are not automatically turned into clickable links
help: use an automatic link instead
    |
137 |     /// Equivalent to the SVG <g> tag: <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/g>
    |                                        +                                                          +

warning: unclosed HTML tag `g`
   --> node-graph/gcore/src/graphic_element.rs:137:28
    |
137 |     /// Equivalent to the SVG <g> tag: https://developer.mozilla.org/en-US/docs/Web/SVG/Element/g
    |                               ^^^
    |
    = note: `#[warn(rustdoc::invalid_html_tags)]` on by default

warning: this URL is not a hyperlink
   --> node-graph/gcore/src/graphic_element.rs:139:56
    |
139 |     /// A vector shape, equivalent to the SVG <path> tag: https://developer.mozilla.org/en-US/docs/Web/SVG/Element/path
    |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: bare URLs are not automatically turned into clickable links
help: use an automatic link instead
    |
139 |     /// A vector shape, equivalent to the SVG <path> tag: <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/path>
    |                                                           +                                                             +

warning: unclosed HTML tag `path`
   --> node-graph/gcore/src/graphic_element.rs:139:44
    |
139 |     /// A vector shape, equivalent to the SVG <path> tag: https://developer.mozilla.org/en-US/docs/Web/SVG/Element/path
    |                                               ^^^^^^

warning: this URL is not a hyperlink
   --> node-graph/gcore/src/graphic_element.rs:198:101
    |
198 | ...d extent, equivalent to the SVG <image> tag: https://developer.mozilla.org/en-US/docs/Web/SVG/Element/image
    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |
    = note: bare URLs are not automatically turned into clickable links
help: use an automatic link instead
    |
198 |     /// A CPU-based bitmap image with a finite position and extent, equivalent to the SVG <image> tag: <https://developer.mozilla.org/en-US/docs/Web/SVG/Element/image>
    |                                                                                                        +                                                              +

warning: unclosed HTML tag `image`
   --> node-graph/gcore/src/graphic_element.rs:198:88
    |
198 |     /// A CPU-based bitmap image with a finite position and extent, equivalent to the SVG <image> tag: https://developer.mozilla.org/en-US/docs/Web/SVG/Elem...
    |                                                                                           ^^^^^^^

warning: unclosed HTML tag `dyn`
   --> node-graph/gcore/src/registry.rs:159:35
    |
159 | /// Wraps around a node taking Box<dyn DynAny> and returning Box<dyn DynAny>
    |                                   ^^^^

warning: unclosed HTML tag `dyn`
   --> node-graph/gcore/src/registry.rs:159:65
    |
159 | /// Wraps around a node taking Box<dyn DynAny> and returning Box<dyn DynAny>
    |                                                                 ^^^^

warning: `graphene-core` (lib doc) generated 13 warnings (run `cargo fix --lib -p graphene-core` to apply 4 suggestions)
warning: unresolved link to `DocumentNodeDefinition`
  --> node-graph/graph-craft/src/document.rs:88:24
   |
88 | /// An instance of a [`DocumentNodeDefinition`] that has been instantiated in a [`NodeNetwork`].
   |                        ^^^^^^^^^^^^^^^^^^^^^^ no item named `DocumentNodeDefinition` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
   = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default

warning: unresolved link to `DocumentNodeDefinition`
   --> node-graph/graph-craft/src/document.rs:622:24
    |
622 | /// An instance of a [`DocumentNodeDefinition`] that has been instantiated in a [`NodeNetwork`].
    |                        ^^^^^^^^^^^^^^^^^^^^^^ no item named `DocumentNodeDefinition` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `DocumentNodeDefinition`
   --> node-graph/graph-craft/src/document.rs:633:62
    |
633 |     /// The name of the node definition, as originally set by [`DocumentNodeDefinition`], used to display in the UI and to display the appropriate properties.
    |                                                                 ^^^^^^^^^^^^^^^^^^^^^^ no item named `DocumentNodeDefinition` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `DocumentNode::path`
   --> node-graph/graph-craft/src/document.rs:880:21
    |
880 |     /// Populate the [`DocumentNode::path`], which stores the location of the document node to allow for matching the resulting proto nodes to the document ...
    |                        ^^^^^^^^^^^^^^^^^^ the struct `DocumentNode` has no field or associated item named `path`

warning: unresolved link to `BorrowTree`
   --> node-graph/graph-craft/src/proto.rs:137:134
    |
137 | /// A proto node is an intermediate step between the `DocumentNode` and the boxed struct that actually runs the node (found in the [`BorrowTree`]).
    |                                                                                                                                      ^^^^^^^^^^ no item named `BorrowTree` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unclosed HTML tag `dyn`
   --> node-graph/graph-craft/src/document/value.rs:53:25
    |
53  |               /// Converts to a Box<dyn DynAny> - this isn't very neat but I'm not sure of a better approach
    |                                    ^^^^
...
137 | / tagged_value! {
138 | |     // TODO: Eventually remove this migration document upgrade code
139 | |     #[cfg_attr(feature = "serde", serde(deserialize_with = "graphene_core::raster::image::migrate_image_frame"))]
140 | |     ImageFrame(graphene_core::raster::image::ImageFrameTable<Color>),
...   |
216 | |     FontCache(Arc<graphene_core::text::FontCache>),
217 | | }
    | |_- in this macro invocation
    |
    = note: `#[warn(rustdoc::invalid_html_tags)]` on by default
    = note: this warning originates in the macro `tagged_value` (in Nightly builds, run with -Z macro-backtrace for more info)

warning: `graph-craft` (lib doc) generated 6 warnings
warning: public documentation for `BorrowTree` links to private item `Path`
   --> node-graph/interpreted-executor/src/dynamic_executor.rs:168:88
    |
168 | /// * `nodes`: A [`HashMap`] of [`NodeId`]s to tuples of [`SharedNodeContainer`] and [`Path`].
    |                                                                                        ^^^^ this item is private
    |
    = note: this link will resolve properly if you pass `--document-private-items`
    = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default

warning: public documentation for `BorrowTree` links to private item `Path`
   --> node-graph/interpreted-executor/src/dynamic_executor.rs:171:42
    |
171 | /// * `source_map`: A [`HashMap`] from [`Path`] to tuples of [`NodeId`] and [`NodeTypes`].
    |                                          ^^^^ this item is private
    |
    = note: this link will resolve properly if you pass `--document-private-items`

warning: `interpreted-executor` (lib doc) generated 2 warnings
warning: unresolved link to `BuildMetadata`
 --> editor/src/messages/dialog/simple_dialogs/about_graphite_dialog.rs:5:45
  |
5 | /// A dialog for displaying information on [BuildMetadata] viewable via *Help* > *About Graphite* in the menu bar.
  |                                             ^^^^^^^^^^^^^ no item named `BuildMetadata` in scope
  |
  = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
  = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default

warning: unresolved link to `ManipulatorPoint`
    --> editor/src/messages/tool/common_functionality/shape_editor.rs:1081:14
     |
1081 |     /// Find a [ManipulatorPoint] that is within the selection threshold and return the layer path, an index to the [ManipulatorGroup], and an enum index f...
     |                 ^^^^^^^^^^^^^^^^ no item named `ManipulatorPoint` in scope
     |
     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `ManipulatorGroup`
    --> editor/src/messages/tool/common_functionality/shape_editor.rs:1081:115
     |
1081 | ...ld and return the layer path, an index to the [ManipulatorGroup], and an enum index for [ManipulatorPoint].
     |                                                   ^^^^^^^^^^^^^^^^ no item named `ManipulatorGroup` in scope
     |
     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `ManipulatorPoint`
    --> editor/src/messages/tool/common_functionality/shape_editor.rs:1081:157
     |
1081 | ...the [ManipulatorGroup], and an enum index for [ManipulatorPoint].
     |                                                   ^^^^^^^^^^^^^^^^ no item named `ManipulatorPoint` in scope
     |
     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unused variable: `device_pixel_ratio`
  --> editor/src/messages/portfolio/document/overlays/overlays_message_handler.rs:22:4
   |
22 |             device_pixel_ratio,
   |             ^^^^^^^^^^^^^^^^^^ help: try ignoring the field: `device_pixel_ratio: _`
   |
   = note: `#[warn(unused_variables)]` on by default

warning: `graphite-editor` (lib doc) generated 4 warnings
warning: `graphite-editor` (lib) generated 1 warning
warning: unresolved link to `Node`
  --> node-graph/node-macro/src/lib.rs:23:24
   |
23 | ///   Implements the [`Node`] trait for the struct, with the `eval` method inside which is a modified version of the decorated function. See below for how th...
   |                        ^^^^ no item named `Node` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
   = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default

warning: unresolved link to `node_new`
  --> node-graph/node-macro/src/lib.rs:27:106
   |
27 | /// You'll use this macro most commonly when writing proto nodes. It's a convenient combination of the [`node_new`] and [`node_impl`] proc macros, which hand...
   |                                                                                                          ^^^^^^^^ no item named `node_new` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `node_impl`
  --> node-graph/node-macro/src/lib.rs:27:123
   |
27 | ...t's a convenient combination of the [`node_new`] and [`node_impl`] proc macros, which handles both of the bullet points above, respectively. There can onl...
   |                                                           ^^^^^^^^^ no item named `node_impl` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `node_impl`
  --> node-graph/node-macro/src/lib.rs:27:295
   |
27 | ...or method, but additional functions decorated by the [`node_impl`] macro can be added to implement different functionality across multiple type signatures.
   |                                                           ^^^^^^^^^ no item named `node_impl` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `node_impl`
  --> node-graph/node-macro/src/lib.rs:35:269
   |
35 | ... signatures, each each of these are converted by the [`node_impl`] macro into separate `impl` blocks for different `Node` traits.
   |                                                           ^^^^^^^^^ no item named `node_impl` in scope
   |
   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `node_fn`
   --> node-graph/node-macro/src/lib.rs:116:151
    |
116 | ... method. This is almost always called by the combined [`node_fn`] macro instead of using this one, however it can be used separately if needed. See that ...
    |                                                            ^^^^^^^ no item named `node_fn` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: unresolved link to `node_fn`
   --> node-graph/node-macro/src/lib.rs:122:258
    |
122 | ... functions each having different type signatures. The [`node_fn`] macro calls this macro as well as defining a `new` constructor method on the node struc...
    |                                                            ^^^^^^^ no item named `node_fn` in scope
    |
    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`

warning: `node-macro` (lib doc) generated 7 warnings
    Finished `dev` profile [optimized + debuginfo] target(s) in 1.43s

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions