Skip to content

AssetBundle.needsBuild(..) ignores deleted wildcard directories. #42230

Closed

Description

asset.dart's needsBuild(..) {..} returns whether an AssetBundle needs to be (re)built given a corresponding manifest.
Its approach is to check the existence and modified timestamp on the manifest and its directories.
However, when checking the directories (_wildcardDirectories) it checks if modified returns null, in which case it skips the directory.
For MemoryFileSystem this unfortunately means that if a "wildcard dir" is deleted, needsBuild will simply ignore it and will likely return false.

I believe this is a bug as any major changes to the filesystem should likely indicate that the AssetBundle needs rebuilding?

Activity

  1. mikhail-tokarev commented on Oct 8, 2019

    @mikhail-tokarev

    Hi @cskau-g
    can you please provide your flutter doctor -v,
    also if you could post a self contained app on github
    it'd help to better address the issue,
    thank you

  2. added
    waiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds
    on Oct 8, 2019
  3. removed
    waiting for responseThe Flutter team cannot make further progress on this issue until the original reporter responds
    on Oct 8, 2019
  4. jonahwilliams commented on Oct 8, 2019

    @jonahwilliams
    Contributor

    This test has been fairly stable for the last several months. I originally wrote it so I will look into it more

  5. self-assigned this
    on Oct 8, 2019
  6. github-actions commented on Aug 27, 2021

    @github-actions

    This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

  7. locked as resolved and limited conversation to collaborators on Aug 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

c: flakeTests that sometimes, but not always, incorrectly passengineflutter/engine related. See also e: labels.

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions