Skip to content

Conversation

@JoshuaBatty
Copy link
Member

@JoshuaBatty JoshuaBatty commented Sep 11, 2025

Description

The sway-lib-std docs are broken and not showing all of the generated documentaiton. The root index.html was showing only one module while all.html listed only a subset of types. This started happening after the parallel processing was introduced in #7296. This PR fixes this as can be seen in the screenshots below.

Also undoes the CI changes in #7362 & #7365 as they aren't necessary as this was the root cause.

  • Root cause: Using BTreeMap::extend to merge per-item results overwrote existing per-category vectors, so only the last chunk from parallel processing survived.
  • Fix: replace .extend merges with per-key append-and-dedup loops.

Before:
before

After:
after

Checklist

  • I have linked to any relevant issues.
  • I have commented my code, particularly in hard-to-understand areas.
  • I have updated the documentation where relevant (API docs, the reference, and the Sway book).
  • I have added tests that prove my fix is effective or that my feature works.
  • I have added (or requested a maintainer to add) the necessary Breaking* or New Feature labels where relevant.
  • I have done my best to ensure that my PR adheres to the Fuel Labs Code Review Standards.
  • I have requested a review from the relevant team or maintainers.

@JoshuaBatty JoshuaBatty requested a review from a team as a code owner September 11, 2025 02:35
@JoshuaBatty JoshuaBatty self-assigned this Sep 11, 2025
@JoshuaBatty JoshuaBatty added bug Something isn't working forc-doc Everything related to the `forc doc` command plugin. labels Sep 11, 2025
@JoshuaBatty JoshuaBatty marked this pull request as draft September 11, 2025 02:36
@JoshuaBatty JoshuaBatty marked this pull request as ready for review September 11, 2025 02:48
@JoshuaBatty JoshuaBatty requested a review from a team as a code owner September 11, 2025 02:48
@codspeed-hq
Copy link

codspeed-hq bot commented Sep 11, 2025

CodSpeed Performance Report

Merging #7379 will not alter performance

Comparing josh/doc-lib-std (fa86425) with master (3210f94)

Summary

✅ 25 untouched benchmarks

@JoshuaBatty JoshuaBatty enabled auto-merge (squash) September 11, 2025 03:22
@JoshuaBatty JoshuaBatty merged commit 4552c75 into master Sep 11, 2025
41 checks passed
@JoshuaBatty JoshuaBatty deleted the josh/doc-lib-std branch September 11, 2025 04:12
Elaela22soL pushed a commit to Elaela22soL/sway that referenced this pull request Sep 26, 2025
…abs#7379)

## Description
The sway-lib-std docs are broken and not showing all of the generated
documentaiton. The root `index.html` was showing only one module while
`all.html` listed only a subset of types. This started happening after
the parallel processing was introduced in FuelLabs#7296. This PR fixes this as
can be seen in the screenshots below.

Also undoes the CI changes in FuelLabs#7362 & FuelLabs#7365 as they aren't necessary as
this was the root cause.

- Root cause: Using BTreeMap::extend to merge per-item results overwrote
existing per-category vectors, so only the last chunk from parallel
processing survived.
- Fix: replace `.extend` merges with per-key append-and-dedup loops.

Before:
<img width="1608" height="1040" alt="before"
src="https://github.com/user-attachments/assets/e433fcc2-cce6-4737-8ed3-c9e2a679de5a"
/>

After:
<img width="1608" height="1040" alt="after"
src="https://github.com/user-attachments/assets/c9e9c007-df6a-49b3-b864-e30d19f487f2"
/>

## Checklist

- [x] I have linked to any relevant issues.
- [x] I have commented my code, particularly in hard-to-understand
areas.
- [ ] I have updated the documentation where relevant (API docs, the
reference, and the Sway book).
- [ ] If my change requires substantial documentation changes, I have
[requested support from the DevRel
team](https://github.com/FuelLabs/devrel-requests/issues/new/choose)
- [ ] I have added tests that prove my fix is effective or that my
feature works.
- [ ] I have added (or requested a maintainer to add) the necessary
`Breaking*` or `New Feature` labels where relevant.
- [x] I have done my best to ensure that my PR adheres to [the Fuel Labs
Code Review
Standards](https://github.com/FuelLabs/rfcs/blob/master/text/code-standards/external-contributors.md).
- [x] I have requested a review from the relevant team or maintainers.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working forc-doc Everything related to the `forc doc` command plugin.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants