summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* quilt-el: fix quilt-editable when patches are stored in subdirsCédric Le Goater2015-03-121-1/+1
| | | | | | | | | | | | I frequently use sub-directories to store different patchsets under the quilt patches/ directory. Unfortunately, the quilt emacs mode does not handle this case and the file is not considered editable. The issue seems to be in the quilt-top-patch which does an equivalent of basename on the patch name. The proposal below changes the quilt-editable routine to keep the full name of the patch. Signed-off-by: Cédric Le Goater <legoater@free.fr>
* symlink.test: Make the test more robustJean Delvare2015-02-251-0/+1
| | | | | | | "mv" may or may not overwrite a read-only file by default, depending on whether or not it is considered to be interactive. Removing the file explicitly before avoids that uncertainty and makes it easier to play the test case manually.
* Delete blank line at end of filesJean Delvare2015-02-2512-12/+0
|
* Add missing editor hintsJean Delvare2015-02-253-0/+12
| | | | | Add the editor syntax hint comments to 3 files which do not have them yet.
* Strip metadata comments from generated filesJean Delvare2015-02-251-0/+1
| | | | | | | Source files include metadata comments to help text editors apply the right syntax highlighting. Generated files should not be edited so these comments are not needed there. Text editors should get the language right for generated files in the first place anyway.
* refresh: Always preserve modification timeJean Delvare2015-02-252-1/+4
| | | | | | In the general case, when doing a backup copy of a patch on refresh, the modification time of the file is preserved. We should do the same when the patch is a symbolic link.
* refresh: Break links to read-only patch filesJean Delvare2015-02-252-1/+52
| | | | | | | | We just changed the behavior of the refresh command to no longer break symbolic links. While preserving the links is the right thing to do in the general case, this approach fails if the patch file is read-only. In that case we want to replace the link itself with the refreshed patch, as we used to.
* refresh: Do not remove symlinksJason Wessel2015-02-183-2/+63
| | | | | | | | | | | | | | | | | | | | | | Change the core behavior of quilt to not remove symlinks to the patch files. Historical notes: This is an 6 year old patch that is still actively used for the Yocto Project and others. http://lists.nongnu.org/archive/html/quilt-dev/2008-01/msg00004.html Revised again here: http://comments.gmane.org/gmane.comp.handhelds.openembedded/34224 [Edited by Jean Delvare: removed a compatibility option, we'll introduce it only if users ask for it. Also cleaned up the test case a bit.] Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
* edit: Fix a corner caseJean Delvare2015-02-182-2/+35
| | | | | | | | | | | | | | | | There is one corner case which is not properly handled by the "edit" command. If a patch deletes a file, and the user calls "quilt edit" on that file but does not actually add anything back to it, "quilt remove" is called on the file when the editor exits. This causes the file to be restored to its original state before the patch deleted it. The user never asked for that, so the file should be left to its deleted state in this case. The file must only be removed from the patch if it was not part of the patch originally. The same problem would occur if the editor deleted the file. In general text editors don't do that, they'd leave an empty file instead, but nothing prevents them from actually deleting the file so we should handle this case properly too.
* edit: Use command "remove" to remove filesJean Delvare2015-02-182-1/+12
| | | | | | | | | | | Commit f1c186ee renamed command "remove" to "revert". Commit bd1dfdab changed the semantics of command "revert". Commit 6d2501ac restored command "remove". However command "edit" is still calling command "revert" to remove files from the patch when it should be using command "remove". This case was not covered by the test suite, which is why the bug was not spotted earlier.
* edit: Improve the test caseJean Delvare2015-02-181-3/+24
| | | | | | | | | Cover one more use case of the "edit" command in the test case: file creation. Also reorder some of the commands to make the tests easier to follow. The intent is easier to understand when the result is tested after each command.
* Remove garbage from commentJean Delvare2015-02-171-1/+1
|
* Merge the two revert test casesJean Delvare2015-02-172-46/+26
| | | | | Merge the two revert test cases into a single, complete and commented test file.
* Fix translation of main usage messageJean Delvare2015-02-116-23/+23
| | | | | | @ETCDIR@ is substituted at build time so it should not appear in translated messages. Replace it with %s and pass the actual value as a parameter.
* Improve the German translationHolger Wansing2015-02-111-107/+106
|
* Missing escape in Japanese translationJean Delvare2015-02-111-1/+1
| | | | | The original message has the dollar sign protected, so the Japanese translation should do the same.
* Make gettext happyJean Delvare2015-02-102-23/+24
|
* Update the release checklistJean Delvare2015-02-101-5/+6
| | | | Translation updates take time so it should be the first item.
* Set version to 0.64.v0.64Jean Delvare2015-02-093-15/+37
|
* Update the German translationHolger Wansing2015-02-081-279/+343
|
* Make gettext happyJean Delvare2015-02-061-2/+2
|
* Partial German translation updatePetr Tesarik2015-02-061-78/+43
|
* Fix one string in Japanese translationYasushi SHOJI2015-02-051-4/+2
| | | | Bash's printf doesn't allow reordering the arguments.
* Update Japanaese translation for 0.64Yasushi SHOJI2015-02-051-110/+97
|
* setup: Fix a corner case in create_symlinkJean Delvare2015-02-041-1/+1
| | | | | | | | | | | When a link's target is the directory it lives in, create_symlink would erroneously link to "..". Fix the code to properly link to "." instead. This fixes openSUSE bug #916007: https://bugzilla.opensuse.org/show_bug.cgi?id=916007 Credits to Robert Milasan for spotting the bug.
* setup: Fix removal of "." components in normalize_pathJean Delvare2015-02-041-1/+1
| | | | | | | | | | | The code was broken in 3 ways: * I forgot to escape the "." so it would match any character. * The g flag is not enough to catch consecutive "." components, because pattern matches can't overlap. * A trailing "." component would not be removed. This fixes commit 3fd706a50b7dbb4f8db6e5db014729db51e6beb0 ("setup: Let normalize_path deal with "."".)
* Update the Russian translationSergey Basalaev2015-02-011-288/+293
|
* Update the French translationJean Delvare2015-01-301-45/+45
|
* Resync translation filesJean Delvare2015-01-305-295/+544
|
* mail: Don't include the release number in User-AgentJean Delvare2015-01-292-2/+1
| | | | | | | | | | | | | | | | @RELEASE@ is replaced with the package-level release number in two places: the spec file, where it is legitimate, and the mail command's User-Agent string, where I think it is not. The package release number should not affect the contents of the package, otherwise it makes it difficult to compare build results. I have checked other MUA (Mutt, Thunderbird, Claws Mail) and they all only include the version, not the release number in their User-Agent string. Drop the @RELEASE@ replacement rule to make sure we don't use it accidentally anywhere in the future. The spec file has its own build rule so it is not affected.
* Clean up TESTS definitionJean Delvare2015-01-281-3/+3
| | | | | | Don't filter out test/patch-wrapper.test if we are going to add it back. Do it the other way around, that is include it by default and only filter it out if needed.
* Sort the testsJean Delvare2015-01-281-1/+2
| | | | | | | | Run the tests in predictable order. This allows comparing the output of "make check" between builds. With older versions of GNU make, the list was already sorted, but this is no longer the case. Suggested by Rich Burridge.
* quilt/mail: Remove procmail dependencyKent R. Spillner2015-01-276-34/+21
| | | | | | | | | | | quilt depends on procmail because 'quilt mail' requires formail. However, formail is only used to extract header values from messages. Since quilt already requires sed we can replace formail -x uses with sed instead. The sed script is slightly complicated because it needs to handle the case of "Long Header Fields" definied in RFC 2822, but essentially all it's doing is: look for the first line beginning with the name of header we are looking for, and print every line until one that does not start with blanks.
* test/mail: Test multi-line headersJean Delvare2015-01-271-2/+6
| | | | Add coverage of the multi-line header case to the mail test case.
* setup: Merge inspect into setupJean Delvare2015-01-243-200/+142
| | | | | | | There is no good reason for the setup command to be split into two scripts, setup and inspect. Merge inspect into setup to save the extra interfacing overhead. Performance improvement reaches 5% on simple packages.
* setup: Fix link creationJean Delvare2015-01-241-0/+1
| | | | | | | Fix funtion create_symlink. If the link has an absolute path then its target should be set to an absolute path as well. This fixes the use of "quilt setup" with an absolute -d path and a relative --sourcedir path.
* setup: Let normalize_path deal with "."Jean Delvare2015-01-201-1/+2
| | | | | | | Let function normalize_path handle "." path components. Otherwise invocations like "quilt setup --sourcedir=. foo.spec" may produce invalid series files, and "quilt setup -d ./dir foo.spec" generates a broken "patches" link.
* quilt-el: Fix patch select completionLeonid Movshovich2015-01-181-1/+1
| | | | | | A typo in quilt-patch-list prevents patch select completion operation. Reviewed and tested by Satoru Takeuchi.
* quilt-el: Fix tramp supportLeonid Movshovich2015-01-181-3/+3
| | | | | | | quilt-find-dir goes to endless recursion if root is not '/'. This holds for files opened with tramp for example. Reviewed and tested by Satoru Takeuchi.
* Test refresh behavior on hard-linked patchesJean Delvare2015-01-141-0/+36
| | | | | | If a patch file has hard links, refreshing it should break the links so that the other copies are left unmodified. Test this behavior to avoid breaking it accidentally.
* setup: Merge testsJean Delvare2014-12-181-32/+33
| | | | Don't test the same condition twice in a row, it's inefficient.
* setup: Add --fast optionJean Delvare2014-12-183-7/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an alternative implementation of "quilt setup" for rpm spec files, which is much faster than the original implementation. The idea is to have rpmbuild generate our working tree directly, instead of taking note of everything it does and then replaying that record from scratch. The new implementation is enabled with option --fast. The original implementation can be selected with --slow, which is the default. Having this option makes it possible to set the default to --fast in ~/.quiltrc and revert to --slow on the command line on a case-by-case basis. This will also make it easier if we decide to change the default in the future. In general, the generated working tree should be the same with --slow or --fast. There are 3 known exceptions though: * The header of the series files is incomplete when using --fast, which means that you can't reuse these series files to feed "quilt setup" later. * If the spec file generates files other than with the tar, unzip and patch commands, you wouldn't get these files in your working tree with --slow, but with --fast you will. * With --fast, all patches are added to the series file, regardless of whether they apply or not. This also means that patches which fail to apply are not reported as such until you attempt to push them. On large packages, this alternative implementation was found to be up to 4 times faster than the original implementation.
* inspect-wrapper: Trace calls earlierJean Delvare2014-12-181-3/+3
| | | | | | | Trace the calls to the patch/tar/unzip wrapper earlier. That way, if anything goes wrong, we know which type of file was being processed. Even if nothing goes wrong, the user now sees the file type as it is being processed (which can take a long time.)
* setup: New function to generate series headerJean Delvare2014-12-081-9/+13
| | | | | | Move the code that generates the series file header to a separate function. This makes the code easier to read due to less folding, and this is also more efficient than spawning a subshell.
* push: Clean up stray references to interactive modeJean Delvare2014-12-072-5/+1
| | | | | The push --interactive option has been removed long ago, clean up remaining references.
* Do not use interactive mode with "quilt push -f"Martin Panter2014-12-071-5/+2
| | | | | | The interactive mode was broken long ago, and not forcing the patch causes unpredictable and confusing behavior. Now the "patch -f" option is always used.
* push: Add --refresh optionJean Delvare2014-11-122-2/+40
| | | | | Add an option to automatically refresh each patch after is was successfully applied.
* pop: Add --refresh optionJean Delvare2014-11-122-2/+45
| | | | | Add an option to automatically refresh each patch before it gets unapplied.
* Allow patch format options to pass throughJean Delvare2014-11-121-0/+5
| | | | | In order to make "quilt_command refresh" work properly, we must ensure that format options are passed through.
* inspect-wrapper: Use exec to pass control backJean Delvare2014-11-121-2/+2
| | | | | | | When the wrapper script is done, it passes control back to tar, unzip or patch. Nothing needs to be done after that, so we might as well use exec to switch to the new process. That should be marginally faster than regular forking.