Skip to content

bug: --verify-module interferes with full verus verify #2806

Description

@mkovaxx

Originally reported by @jaylorch on #2794.

I've since learned even more details about the issue I was having. It seems it was deeper than just mtime issues.

What was actually going on was that verus-mode in emacs was using flycheck. This was making it so that whenever I saved a file, it would run a partial verification on just the module in that file (cargo verus verify -- --verify-module <m>). That module-only run succeeded and poisoned Cargo’s freshness cache. The subsequent full cargo verus verify reused it and reported success. After cargo clean, full verification failed correctly.

So the issue is that a --verify-module run poisons Cargo's freshness cache, making it think that every module is OK when only the verified module is.

In other words, this PR fixes the mtime issue (which I'm not sure was ever the actual underlying cause of the issues I was facing). But be aware that the PR doesn't fix what the real issue turns out to be, which is partial verification polluting Cargo's freshness cache.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions