check-manifest icon indicating copy to clipboard operation
check-manifest copied to clipboard

check-manifest isn't aware of links

Open tomschr opened this issue 8 years ago • 1 comments

Thanks for this package! Very cool! :)

Assume I have a tests directory which contains a cases and a struct subdirectory. The latter contains a link. This looks like this:

tests/
├── cases
│   ├── data
│   │   ├── topic1.xml
│   │   ├── topic2.xml
│   │   └── topic3.xml
│  [... some more files, pruned ...]
├── struct
│   ├── data -> ../cases/data
└── [...]

As I want to include the complete tests directory, my MANIFEST.in contains the following line:

recursive-include tests *

When I run check-manifest I get the following errors:

$ check-manifest .

lists of files in version control and sdist do not match!
missing from VCS:
  tests/struct/data/topic1.xml
  tests/struct/data/topic2.xml
  tests/struct/data/topic3.xml
missing from sdist:
  tests/struct/data

However, this is wrong. The directory tests/struct/data is actually a link pointing to tests/cases/data and these files are already tracked by Git.

I suspect that check-manifest doesn't recognize links as such. Is my assumption true? (For more information see my repository https://github.com/tomschr/dbassembly)

tomschr avatar Jun 05 '16 20:06 tomschr

You're right: check-manifest currently ignores file types and just compares recursive directory listings (produced by reading the output of external commands such as tar xvzf and git ls).

I'm not sure how to fix this!

mgedmin avatar Jun 06 '16 05:06 mgedmin