Skip to content

Conversation

@Flakebi
Copy link
Contributor

@Flakebi Flakebi commented Jun 16, 2025

Replace fs::write with write_if_changed in two places. This can prevent unnecessary rebuilds. (I didn’t encounter any, but this should be ok nonetheless.)

Replace `fs::write` with `write_if_changed` in two places. This can
prevent unnecessary rebuilds. (I didn’t encounter any, but this should
be ok nonetheless.)
@Flakebi Flakebi requested a review from a team as a code owner June 16, 2025 22:40
@github-project-automation github-project-automation bot moved this to 📬Proposal in Roadmap Jun 16, 2025
@github-actions
Copy link
Contributor

Package Changes Through 706fb55

There are 8 changes which include tauri-bundler with minor, tauri-cli with minor, tauri-codegen with minor, tauri-utils with minor, @tauri-apps/cli with minor, tauri with minor, @tauri-apps/api with minor, tauri-runtime-wry with patch

Planned Package Versions

The following package releases are the planned based on the context of changes in this pull request.

package current next
@tauri-apps/api 2.5.0 2.6.0
tauri-utils 2.4.0 2.5.0
tauri-bundler 2.4.0 2.5.0
tauri-runtime 2.6.0 2.6.1
tauri-runtime-wry 2.6.0 2.6.1
tauri-codegen 2.2.0 2.3.0
tauri-macros 2.2.0 2.2.1
tauri-plugin 2.2.0 2.2.1
tauri-build 2.2.0 2.2.1
tauri 2.5.1 2.6.0
@tauri-apps/cli 2.5.0 2.6.0
tauri-cli 2.5.0 2.6.0

Add another change file through the GitHub UI by following this link.


Read about change files or the docs at github.com/jbolda/covector

@Legend-Master
Copy link
Contributor

I believe these 2 places are used only in target (OUT_DIR) directory and we don't need to guard it here

@Flakebi
Copy link
Contributor Author

Flakebi commented Oct 30, 2025

write_if_changed should be used when the generated file is a dependency for another build step or process (i.e. by include!ing the generated file).
If the written file changes, cargo will trigger the dependent build step. If the file doesn’t change, cargo can skip the dependent step.

I agree with you that write_if_changed shouldn’t matter here if src is read-only or not.
But for the benefit of unnecessary rebuilds, it shouldn’t really matter if the file is in OUT_DIR or somewhere else, write_if_changed can have benefits nonetheless.
For what it’s worth, there are other places that use write_if_changed for files in OUT_DIR:

write_if_changed(&out_path, toml)

(Sorry for the slow response)

Copy link
Contributor

@Legend-Master Legend-Master left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

But for the benefit of unnecessary rebuilds, it shouldn’t really matter if the file is in OUT_DIR or somewhere else, write_if_changed can have benefits nonetheless.

Sounds reasonable to me, thanks for explaining

(Sorry for the slow response)

No problems 🙃

@Legend-Master Legend-Master merged commit 1afa9df into tauri-apps:dev Oct 31, 2025
23 checks passed
@github-project-automation github-project-automation bot moved this from 📬Proposal to 🔎 In audit in Roadmap Oct 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: 🔎 In audit

Development

Successfully merging this pull request may close these issues.

2 participants