Commit graph

2012 commits

Author SHA1 Message Date
David Bremner
0897209f4d build-system: update version check to support non-native packages.
We could be a bit more flexible about this and support optional Debian
versions, but for the moment, we pick a policy and stick to it.
2011-07-17 11:04:08 -03:00
David Bremner
466f3b57aa build-system: guard parts irrevokable parts of release target with REALLY_UPLOAD
This supports both testing and use by non-upload privileged
users. Along with previous commits in the series, this lets one do a
dry run of the release process and created a tarball, signature file,
and release announcement to inspect before uploading.
2011-07-17 10:59:41 -03:00
David Bremner
9b0dfd11c5 build-system: use signed tag to make tar file, if available.
This as the advantage that "make VERSION=n.m dist" will work correctly
even if the wrong branch happens to be checked out.
2011-07-17 10:59:41 -03:00
David Bremner
60173feb06 build-system: tag earlier in the release process.
If tagging fails, we really don't want to upload tarballs.
2011-07-17 10:59:41 -03:00
David Bremner
939c91b7ef build-system: remove use of git-buildpackage, dput. Add pristine-tar.
The previous setup was dependent on the git-buildpackage configuration
to find the resulting tar file, and consequently a bit fragile.

We use pristine-tar instead to save a checksum-identical copy of the
tar file. This will also faciliate "non-native" debian packages, if
desired.

dput again depends on the local configuration, and mainly is a bit too
brave for me to do automatically.
2011-07-17 10:59:41 -03:00
David Bremner
9fb9fb2986 build-system: run make clean before testing.
The reasoning is that we might have some error in the build system
that causes something not to be rebuilt; this would potentially have
the tests run on the wrong version of the code.
2011-07-17 10:59:41 -03:00
David Bremner
2e13698812 build-system: replace use of ssh with wget for checking the website
The idea is to see if the version we are already releasing exists on
the notmuch website. Using wget allows more people to run this target,
and also allows people with ssh access to run it without access to
their keys.
2011-07-17 10:59:41 -03:00
David Bremner
2b1b6df06f version: bump to 0.6.1 2011-07-17 10:59:08 -03:00
David Bremner
ab7de917bd update NEWS and debian/changelog for 0.6.1 2011-07-17 10:58:15 -03:00
David Bremner
a77cbe3c91 debian: use a non-native version number.
There is concensus to use non-native version number for updates that
contain only Debian changes. Unfortunately changing back and forth
between native and non-native packages has the potential for
confusion, since the archive will end up with notmuch-0.x.tar.gz and
notmuch-0.x.orig.tar.gz. So we use non-native numbering from the
beginning.
2011-07-17 10:42:53 -03:00
David Bremner
1510ba3c3a debian: add (demangled) Xapian exception typeinfo symbols to libnotmuch1.symbols
These are exported (again) by the library to prevent problems with
catching exceptions.
2011-07-16 22:16:46 -03:00
David Bremner
feb22fef2e libnotmuch: export Xapian typeinfo symbols
The lack of such exporting seems to cause problems catching
exceptions, as suggested by

    http://gcc.gnu.org/wiki/Visibility

This manifested in the symbol-hiding test failing when notmuch was
compile with gcc 4.4.5. On i386, this further manifested as notmuch
new failing to run (crashing with an uncaught exception on first run).
2011-07-16 22:16:46 -03:00
David Bremner
8b310a157c debian: update changelog for strict libnotmuch dependency 2011-07-10 09:35:00 -03:00
Uwe Kleine-König
f01b8d1331 debian: strictly depend on the same version of libnotmuch
It took quite some time to debug why folder: searches didn't work for me
though I had notmuch 0.6~rc1 installed. amdragon in #notmuch found out
that I still had libnotmuch1 0.5+nmu3 installed.

To prevent the same problem in the future let notmuch depend on the same
version of libnotmuch1.

Reviewed-By: David Bremner <david@tethera.net>

  The underlying issue is that the libnotmuch interface is not
  entirely captured by the set of exported symbols. In particular the
  query syntax can change without being visible to the linker at all.
2011-07-10 09:32:40 -03:00
David Bremner
7e3cb13a05 debian: start new changelog stanza for post 0.6 bugfix release
The version numbering scheme of n.n.n is chosen so as not to confuse
tools that rely on the presence of a dash to detect non-native
packages.
2011-07-07 22:41:59 -03:00
David Bremner
2e7956e884 debian: install README.Debian files for notmuch-vim and notmuch-emacs.
The notmuch-vim README.Debian in particular is quite important since
it discussions the need to install the package with vim-addons
2011-07-07 22:36:04 -03:00
David Bremner
6bd02fb4db version: bump to 0.6
The release machinery in the build system depends on this file
being correct.
2011-07-01 15:28:16 -03:00
David Bremner
74d00bb0e8 NEWS: Update for release 0.6
Fix some typos, add some notes on python bindings, "improve" the folder searching
description, expand the discussion of crypto changes.

This includes the changes from
id:"1309541202-4938-1-git-send-email-dmitry.kurochkin@gmail.com"

Thanks to Sebastian, Austin, and Uwe, Dmitry for the editing help.
2011-07-01 15:26:24 -03:00
David Bremner
8c5129bb51 debian: add changelog stanza for release 0.6, install upstream docs referred to.
This perhaps breaks the "one thing at a time rule", but seems better
than leaving the changelog pointing to nothing.
2011-07-01 11:48:01 -03:00
David Bremner
65bf14d59e debian: move vim directory creation to notmuch-vim binary package
This step was missed during the package split of notmuch to notmuch,
notmuch-emacs, and notmuch-vim.

It seems mostly harmless in this case, but it is silly for non-vim
users to have those directories.
(cherry picked from commit 4b5875d81e)
2011-07-01 09:58:08 -03:00
Carl Worth
9485ab5084 NEWS: Add notes for (imminent) notmuch 0.6 release
By skimming through "git log 0.5..origin/release" late at
night. Hopefully everything here is accurate.
(cherry picked from commit d173069ad9)
2011-07-01 09:57:12 -03:00
Carl Worth
8f9c403131 emacs: Fix to unconditionally display subject changes in collapsed thread view
The feature to show subject changes in the collapsed thread view was
originally added (8ab433607) with an option
(notmuch-show-always-show-subject) to display the subject
for all messages, even when there was no change.

The subsequent commit (4f04d273) changed the sense of the test (or to
and) and the name of the controlling variable
(notmuch-show-elide-same-subject).

But this commit is broken in a few ways:

  1. The original definition of notmuch-show-always-show-subject was
     left around

     But the variable isn't actually used in the code at all, so it
     just adds clutter and confusion to the customization interface.

  2. The name and description of the controlling variable doesn't
     match the implementation

     The name suggests that setting the variable to t will cause
     repeated subjects to be elided, (suggesting that when it is nil
     all subjects will be shown).

     However, when the variable is nil, no subjects are shown. So a
     correct name for the variable in this sense would be
     notmuch-show-subject-changes.

Showing subject changes is a useful feature, and should be on by
default. (We don't want to bury generally useful features behind
customizations that users have to find).

Rather than fixing the name of the variable and changing its default
value, here we remove the condition entirely, such that the feature is
enabled unconditionally.

So both the currently-used variable and the stale definition of the
formerly-used are removed.

Also, the one relevant test-suite result is updated, (showing the
intial subject of a collapsed thread, and no subject display for later
messages that do not change the subject).
(cherry picked from commit 580de27177)
2011-07-01 09:56:34 -03:00
David Bremner
5d53226005 debian: changelog stanza for first "official" release candidate
The last upload to experimental was really a release candidate too.
Switch versioning to ~rc1 as counting commits is confusing when
building from the release branch.
(cherry picked from commit 117852a5f1)
2011-06-30 10:09:00 -03:00
David Bremner
3f777b2ac2 debian: don't install zsh completion files into /usr/share/zsh
as of version 4.3.12, perhaps earlier, the Debian zsh package now
ships /usr/share/zsh/functions/Completion/Unix/_notmuch, so we
shouldn't install that ourselves anymore.

My understanding is that letting zsh ship the completion scripts is
the standard thing to do.

The script is still shipped in /usr/share/doc/notmuch/examples
(cherry picked from commit 0a0f5f1bbe)
2011-06-30 09:33:34 -03:00
Sebastian Spaeth
76399e5f73 python: Do not implicitely call maildir_flags_to_tags etc
In order to remain consistent with the underlying C API, we do not
automatically synchronize notmuch tags and maildir flags anymore.

The underlying functions Message.maildir_flags_to_tags and
Message.tags_to_maildir_flags still exist and are available to the user.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
(cherry picked from commit e59eaa5ddd)
2011-06-30 07:26:16 -03:00
Carl Worth
dd544f5dc6 debian/changelog: Add note that notmuch-vim description is in (bug #631974)
This note will automatically cause the bug entry to be closed as fixed when
the next package (including this change) is uploaded.
(cherry picked from commit 04b9ffa56f)
2011-06-29 22:02:58 -03:00
Mark Anderson
d77c7cefe4 Fix folder: coherence issue
Add removal of all ZXFOLDER terms to removal of all XFOLDER terms for
each message filename removal.

The existing filename-list reindexing will put all the needed terms
back in.  Test search-folder-coherence now passes.

Signed-off-by:Mark Anderson <ma.skies@gmail.com>
(cherry picked from commit 8a856e5c38)
2011-06-29 21:58:53 -03:00
Carl Worth
671ffbb766 test: Use increment_mtime rather than sleep
The sleep was to force the directory's mtime to advance between the
previous notmuch new and the subsequent rm;notmuch new.

The current convention is to use the existing increment_mtime function
for this purpose, (which avoids the test suite being slowed down by
calls to sleep).

Thanks to Austin Clements for noticing this undesired sleep.
(cherry picked from commit 55a78d5dbd)
2011-06-29 21:58:39 -03:00
Mark Anderson
c04e6f84d3 test:Folder tags shouldn't match after removal of file in given folder
Test for bug.  Current stemming support for notmuch adds extra terms
to the DB which aren't removed when the file renames are detected.

When folder tags are added to a message, Xapian terms for both XFOLDER
and ZXFOLDER are generated.  When one of the filenames are
renamed/removed, only the XFOLDER tags are removed, leaving it possible
for a match on a folder: tag that was previously but is no longer a
match in the maildir.
(cherry picked from commit 86e0baeb6d)
2011-06-29 21:58:19 -03:00
Mark Anderson
fa0c0d0e66 search --output=files: Output all filenames for each matching message
Messages in the database can have multiple files associated with a
single message-id, but until now only one filename for each message
has been reported by "notmuch search --output=files"

Signed-off-by: Mark Anderson <ma.skies@gmail.com>
(cherry picked from commit d752509abf)
2011-06-29 21:56:57 -03:00
David Bremner
8d46f05304 libnotmuch: build symbols list without relying on gcc -aux-info.
Carl reports "gcc -aux-info notmuch.aux lib/notmuch.h" does not
generate notmuch.aux for him with Debian gcc 4.6.0-8. A small
modification of the original sed regular expression allows us to work
directly from lib/notmuch.h, rather than preprocessing with gcc.

As with most such simple regex based "parsing", this is quite
sensitive to the input format, and needs that each symbol to be
exported from libnotmuch should

- start with "notmuch_"
- be the first non-whitespace token on the line
- be followed by an open parenthesis.

(Cherry-picked from 51b7ab6968, with conflicts resolved by db)
2011-06-28 16:32:07 -03:00
Dmitry Kurochkin
de1ed86b79 test: remove useless test_emacs call from an emacs FCC test
This was inadvertently left over when debugging an early version of
this commit. -Carl Worth <cworth@cworth.org>
(cherry picked from commit 8bf0c1c3de)
2011-06-23 22:01:35 -03:00
Dmitry Kurochkin
d012827890 Fix wrong-type-argument lisp error in `notmuch-fcc-header-setup'
This error occurs when `notmuch-fcc-dirs' is set to a list.  The error
was in the `notmuch-fcc-dirs' format check which was changed in an
incompatible way from 0.4 to 0.5.

The fix was extracted from a bigger patch series by David
Edmondson id:"1290682750-30283-2-git-send-email-dme@dme.org".

Signed-off-by: Jameson Graef Rollins <jrollins@finestructure.net>
(cherry picked from commit ce08571428)
2011-06-23 22:00:17 -03:00
Carl Worth
72d70ec60f test: Test emacs message composing with various values for notmuch-fcc-dirs
We exercise each of the documented values (nil, a string, and a
list). For the list, we test matching a specific entry, matching a
catch-all regular expression, and no match at all (in which case there
is no FCC set).
(cherry picked from commit 76b54f1898)
2011-06-23 21:58:10 -03:00
David Bremner
d6f05fde23 debian: fix installation of notmuch-vim README
There was a leftover override, installing it into the wrong package.
2011-06-23 20:39:29 -03:00
David Bremner
9acdabfe73 start new changelog stanza 2011-06-23 19:42:15 -03:00
David Bremner
3381ae4176 Revert "debian: Override RPATH_LDFLAGS"
This reverts commit fc126d89b2.

This override of the make variable RPATH_LDFLAGS should no longer
be required since the auto-configuration was fixed
2011-06-23 19:35:35 -03:00
David Bremner
1c396673f3 debian: Set conflicts from package split to point to an existing version.
The previous version was harmless, since there were no versions
uploaded between ~237 and ~254, but this is less confusing.
2011-06-23 14:42:15 -03:00
David Bremner
9e7c40543b debian: fix typo in short description of notmuch-vim
Thanks to Dirk Eddelbuettel for noticing.
2011-06-23 14:37:29 -03:00
David Bremner
1126732ece debian: update changelog for upload 0.6~254, bump standards version to 3.9.2 2011-06-23 07:58:31 -03:00
David Bremner
19f0ca7ee2 debian: remove Xapian exceptions symbols from libnotmuch1.symbols
These were never intended to be public, since the library exports only
a C API.
2011-06-23 07:58:27 -03:00
David Bremner
33330dc050 debian: split off vim interface to its own package
So far the package does notthing fancy with vim-addon-manager.
2011-06-23 07:54:40 -03:00
David Bremner
6f3d3c68a0 debian: split off emacs interface into its own package.
- rename emacsen-install/remove files, and change embedded package
  name

- split notmuch.install, notmuch.dirs

- add Breaks/Replaces for previous notmuch packages with overlapping
  files.
2011-06-23 07:54:40 -03:00
David Bremner
ffa88554d5 debian: Build depend on emacs-nox instead of emacs.
Nothing in the build process needs X, and the number of dependencies
that need to be installed is much smaller.
2011-06-23 07:13:32 -03:00
David Bremner
0fdc28cd6b debian: build package for python-bindings.
This uses dh_python2 (included with sufficiently recent versions of
the python/python-all packages). python-all brings in all of the
supported versions of python. The double calls to dh_auto_install and
friends are to avoid looping over python versions ourselves.
2011-06-23 07:13:32 -03:00
David Bremner
fba968dbfa tests: add a test for symbol hiding side effects
The worry here is that a binary linking with libnotmuch might lose
access to Xapian::Error symbols because libnotmuch hides them.

We are careful here to create ./fakedb/.notmuch in order to trigger a
Xapian exception, and not just a missing file check.

Thanks to jrollins and amddragon for suggestions.
(cherry picked from commit 66f37f5f6864a988f94ddb893e3a176af57f6c8e)
2011-06-23 07:05:25 -03:00
David Bremner
cdf1c70ab3 libnotmuch: add linker script to declare only notmuch_* symbols as global.
This is closely tied to gcc and particularly gnu ld, but I guess the
shared library linking code would need to be adjusted to work on a
non-gnu linker anyay.

I had to make a few not-obviously related changes to the
lib/Makefile.local to make this work: libnotmuch_modules is defined
with := and used in place of $^
(cherry picked from commit 014bf85b1c06ff49be2bde5a26433d2cf376cf70)
2011-06-23 07:04:56 -03:00
David Bremner
de35a0e7f9 debian: add changlog stanza for new snapshot 0.6~237
(cherry picked from commit 17daa480e435ad4c1d8f4f18447eff1ff36dbe00)
2011-06-22 22:45:33 -03:00
David Bremner
b2f0b8a186 debian: Changelog stanza for new git snapshot 0.6~215
(cherry picked from commit b85a415a7bd91c360c0acd453ead39be854f63f7)
2011-06-22 22:45:12 -03:00
David Bremner
a411eb4d1c debian: update symbols file for libnotmuch1
One of the Xapian exception symbols has gone missing.  Hopefully this
doesn't mean we should be bumping the SONAME.
(cherry picked from commit e8260d63f1f5a37094801ecd5d110bf48f22ee45)
2011-06-22 22:44:50 -03:00