Skip to content

Using glob curly braces expansion in sources prevents change detection for some files #2073

Closed
@Neonox31

Description

@Neonox31

Description

Hello,

First thanks a lot for all your work on this project, I use it often for personal and professional contexts and saves me a lot of trouble 👍

Using :

sources:
  - src/{api,ingest-worker}/**/*

triggers correctly the job if I change source files in src/api folder but never trigger the job if I change files inside src/ingest-worker.
Instead the following :

sources:
  - src/api/**/*
  - src/ingest-worker/**/*

triggers the job if I change files inside both src/api and src/ingest-worker folders.

To be sure, I checked my syntax with zglob and seems to be OK :

❯ /bin/find dist/ src/
dist/
dist/ingest-worker
dist/ingest-worker/ingest-worker.out
dist/api
dist/api/api.out
src/
src/ingest-worker
src/ingest-worker/ingest-worker.source
src/foo
src/foo/foo.source
src/api
src/api/api.source

❯ ./zglob -d 'src/{api,ingest-worker}/**/*'
src/ingest-worker/ingest-worker.source
src/api/api.source

Maybe I misunderstood something but both methods should not match same files here ?

Version

Task version: v3.41.0 (h1:giUddhe0XZLbEWIQ/MuTPipR9ek+teulIA5xf/2IHXg=)

Operating system

Linux

Experiments Enabled

No response

Example Taskfile

version: '3'

tasks:
  build:
    cmds:
      - mkdir -p dist/{api,ingest-worker}
      - cp src/api/api.source dist/api/api.out
      - cp src/ingest-worker/ingest-worker.source dist/ingest-worker/ingest-worker.out
    sources:
      - src/{api,ingest-worker}/**/*

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: fingerprintingChanges related to checksums and caching.

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions