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

SCM improvements #5543

Merged
merged 19 commits into from Oct 24, 2019
Merged

SCM improvements #5543

merged 19 commits into from Oct 24, 2019

Conversation

@lasote
Copy link
Contributor

@lasote lasote commented Jul 26, 2019

Changelog: Feature: The scm feature does not replace the scm.revision="auto" field with the commit when uncommitted changes unless --scm-dirty argument is specified. The recipe in the local cache will be kept with revision=auto.

Changelog: Feature: The conan upload command forbids to upload a recipe that uses the scm feature containing revision=auto or url=auto, unless --force is used.

Changelog: Feature: The scm feature captures the local sources in the local cache during the export, avoiding later issues of modified local sources.

Docs: conan-io/docs#1471

Closes #5195
Closes #5126
Closes #4732

#PYVERS: Macos@py27, Windows@py36, Linux@py27, py34
#TAGS: svn, slow
#REVISIONS: 1

@lasote lasote added this to the 1.18 milestone Jul 26, 2019
@lasote lasote removed this from the 1.18 milestone Jul 29, 2019
@lasote lasote added this to the 1.19 milestone Jul 29, 2019
@lasote lasote removed this from the 1.19 milestone Sep 12, 2019
@lasote
Copy link
Contributor Author

@lasote lasote commented Oct 16, 2019

This issue cannot be solved marking the source_folder with a file (to know that the source has to e executed), because in case of a failed source() method, because of the dirty flag, it will remove also the scm contents. I think we don't have another choice than a special folder for the scm captured sources.

@lasote
Copy link
Contributor Author

@lasote lasote commented Oct 17, 2019

Also, cannot be done using the exports_sources folder because it would be compressed and uploaded.

@lasote lasote added this to the 1.20 milestone Oct 23, 2019
@lasote lasote removed this from Triaging in Milestone 1.19 Release Oct 23, 2019
@lasote lasote changed the title WIP scm refactor SCM improvments Oct 23, 2019
@lasote lasote marked this pull request as ready for review Oct 23, 2019
@lasote lasote requested a review from memsharded Oct 23, 2019
@lasote lasote requested a review from jgsogo Oct 23, 2019
@lasote lasote changed the title SCM improvments SCM improvements Oct 23, 2019
Copy link
Member

@memsharded memsharded left a comment

This is a great improvement. I agree the structure and behavior is much more understandable and structured, I like this very much.

conans/client/command.py Outdated Show resolved Hide resolved
conans/client/cmd/export.py Outdated Show resolved Hide resolved
conans/client/cmd/export.py Outdated Show resolved Hide resolved
conans/client/source.py Outdated Show resolved Hide resolved
@jgsogo jgsogo self-assigned this Oct 23, 2019
jgsogo
jgsogo approved these changes Oct 23, 2019
Copy link
Member

@jgsogo jgsogo left a comment

Just a couple of changes requested, but not blocking.

conans/client/command.py Outdated Show resolved Hide resolved
conans/client/command.py Outdated Show resolved Hide resolved
conans/client/command.py Outdated Show resolved Hide resolved
conans/client/source.py Outdated Show resolved Hide resolved
conans/client/source.py Outdated Show resolved Hide resolved
conans/test/functional/scm/scm_test.py Show resolved Hide resolved
@lasote lasote self-assigned this Oct 23, 2019
@lasote lasote merged commit df4bf5f into conan-io:develop Oct 24, 2019
2 checks passed
@lasote lasote self-assigned this Oct 30, 2019
@lasote lasote mentioned this pull request Oct 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants