-
Notifications
You must be signed in to change notification settings - Fork 1.9k
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
append() does not respect current content if line contains '<' #1294
Labels
Comments
cmattoon
pushed a commit
to cmattoon/fabric
that referenced
this issue
Apr 13, 2015
cmattoon
pushed a commit
to cmattoon/fabric
that referenced
this issue
Apr 13, 2015
cmattoon
pushed a commit
to cmattoon/fabric
that referenced
this issue
Apr 24, 2015
cmattoon
pushed a commit
to cmattoon/fabric
that referenced
this issue
Apr 24, 2015
+1, still encountering this bug in 1.12, our poor servers are restoring their iptables rules way too many times x) |
I believe I've encountered the same one, with This adds multiple lines:
|
I have provided the fix in the initial description, you can probably create a patch from that and submit it. I'm no longer using fabric so will likely not fix this myself :( |
Fixed in #1559! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I noticed that if I run append() several times with the same content it also appends that line several times, instead of just one time. That is, append() is not idempotent.
The following small test script can reproduce the issue:
This issue seems to be similar to #341
The error has to do with the '<' symbol.
The problem seems to boil down to the regex that is sent to egrep in contains():
https://github.com/fabric/fabric/blob/master/fabric/contrib/files.py#L360
printing egrep_cmd gives me the following for the above testcase:
However the correct regex would be:
The incorrect regex seems to be generated by the
_escape_for_regex
function.The text was updated successfully, but these errors were encountered: