Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove files containing Macos meta-data #4103

Merged
merged 12 commits into from Dec 18, 2018
Merged

Conversation

@jgsogo
Copy link
Member

@jgsogo jgsogo commented Dec 10, 2018

Changelog: Feature: Remove files containing Macos meta-data (files beginning by ._)

@ghost ghost assigned jgsogo Dec 10, 2018
@ghost ghost added the stage: review label Dec 10, 2018
@jgsogo jgsogo changed the title Issue/3529 dot clean Remove files containing Macos meta-data Dec 10, 2018
@jgsogo jgsogo added this to the 1.11 milestone Dec 10, 2018
@jgsogo jgsogo requested a review from memsharded Dec 10, 2018
@lasote
Copy link
Contributor

@lasote lasote commented Dec 11, 2018

Please, as we discussed I would like to know when and why it was failing, because depending on it we could choose how to fix it. So, finally failing with the create and working with local methods?

@jgsogo
Copy link
Member Author

@jgsogo jgsogo commented Dec 11, 2018

In the test you can see how the offending file appears in the system. If a copy is performed it vanish. That is the difference between the two workflows: one is making a copy while the other one isn't.

Adnn explains everything about it:

Finally, back to the initial topic of this issue:

why is there a difference in behaviour between between the "developer workflow" and conan create

Because, to fully reproduce the expected recipe that would need to copy the source folder to modify bits of it, I added a manual cp step to the developer workflow, because I could not find any conan developer command to do this copy otherwise.

And the cp shipped with OS X took care of handling those ._ (applying the attributes, and not copying them over to destination).

So, here it is, a recipe that was working perfectly in "developer workflow" is breaking at build time with conan create.

Copy link
Member

@memsharded memsharded left a comment

I understood that this feature was due to downloading zip or tgz from the internet.
That is, the tools.get(), tools.unzip(), etc. I cannot see interface for this functionality.

On the other hand it is also affecting the core conan zip-unzip of .tgz, which we commented not to modify, as it has not been a problem so far.

So I suggest to move the

 if clean_macos_dot_files:
             dot_clean(dest_folder)

functionality to the corresponding tools section.

Please, feedback from @lasote too.

@jgsogo jgsogo dismissed memsharded’s stale review Dec 18, 2018

This has nothing to do with the previous behavior

conans/client/tools/files.py Outdated Show resolved Hide resolved
lasote
lasote approved these changes Dec 18, 2018
Copy link
Contributor

@lasote lasote left a comment

Don't forget the docs

@jgsogo
Copy link
Member Author

@jgsogo jgsogo commented Dec 18, 2018

I won't, there is a checkbox left in the first comment 👍

@lasote lasote merged commit 9000d72 into conan-io:develop Dec 18, 2018
2 checks passed
@ghost ghost removed the stage: review label Dec 18, 2018
@jgsogo jgsogo deleted the issue/3529-dot_clean branch Dec 18, 2018
grisumbras pushed a commit to grisumbras/conan that referenced this issue Dec 27, 2018
* if it is going to be a local import, reduce scope

* clean dot files in Macos

* pass parameter to uncompress function

* do nothing with the outputs

* test to check where the metadata is being lost

* add unittests for dot clean util

* ups

* work on tmp folder

* uneeded changes

* rename tool to mac_dot_clean, do not remove temp files

* renamed to 'apple_dot_clean'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

4 participants