Activity log for bug #985149

Date Who What changed Old value New value Message
2012-04-18 18:53:31 Barry Warsaw bug added bug
2012-04-20 16:14:31 Barry Warsaw summary Add List-Post value to permalink hash input Add List-ID value to permalink hash input
2012-04-20 17:25:04 Barry Warsaw description Currently, we define the X-Message-ID-Hash as the base32 encoding of the sha1 hash of the Message-ID content (sans angle brackets as defined in RFC 5322). The suggestion is made that List-Post value should be added to this hash so as to be able to distinguish cross-posted messages. This should be fine, and pretty easy. My only concern is that the header name is now a misnomer. I wonder, is it worth coming up with a better header? Now's the time to do it since it's likely that there are almost no consumers of this standard. What about `Permalink-Hash` ? Currently, we define the X-Message-ID-Hash as the base32 encoding of the sha1 hash of the Message-ID content (sans angle brackets as defined in RFC 5322). The suggestion is made that List-ID value should be added to this hash so as to be able to distinguish cross-posted messages. This should be fine, and pretty easy. My only concern is that the header name is now a misnomer. I wonder, is it worth coming up with a better header? Now's the time to do it since it's likely that there are almost no consumers of this standard. What about `Permalink-Hash` ?
2012-04-20 17:25:34 Barry Warsaw summary Add List-ID value to permalink hash input Add Permalink-Hash: header for interoperability with archivers.
2012-04-20 17:25:55 Barry Warsaw summary Add Permalink-Hash: header for interoperability with archivers. Permalink-Hash: header specification
2012-04-20 17:33:28 Barry Warsaw description Currently, we define the X-Message-ID-Hash as the base32 encoding of the sha1 hash of the Message-ID content (sans angle brackets as defined in RFC 5322). The suggestion is made that List-ID value should be added to this hash so as to be able to distinguish cross-posted messages. This should be fine, and pretty easy. My only concern is that the header name is now a misnomer. I wonder, is it worth coming up with a better header? Now's the time to do it since it's likely that there are almost no consumers of this standard. What about `Permalink-Hash` ? Currently, we define the X-Message-ID-Hash as the base32 encoding of the sha1 hash of the Message-ID content (sans angle brackets as defined in RFC 5322). The suggestion is made that List-ID value should be added to this hash so as to be able to distinguish cross-posted messages. This should be fine, and pretty easy. My only concern is that the header name is now a misnomer. I'm suggesting we change this to Permalink-Hash. Here is the proposed algorithm for calculating the Permalink-Hash >>> bare_msgid = msg['Message-ID'][1:-1] # remove the angle brackets >>> h = sha1(bare_msgid) >>> list_id = msg['List-ID'][1:-1] # remove angle brackets >>> h.update(list_id) >>> permalink_hash = b32encode(h.digest()) >>> msg.add_header('Permalink-Hash', permalink_hash, version='1') Notes: - If the Message-ID or List-ID values do not both start and end with angle brackets, the entire header value should be used (i.e. only strip off bytes 0 and -1 if they are angle brackets) - The Permalink-Hash header gets a "version=1" parameter to indicate the version of this spec the header conforms to. - RFC 5064 defines the Archived-At header, which mm3 already supports. It is suggested that this header would use the permalink hash as the URI directly to this message in the specified archive. - Some people suggest that the List-ID be explicit in the Permalink-Hash value. I would reject this on the grounds that the value should be opaque. If this information is needed, it should be added to the Archived-At header.
2012-09-08 23:35:05 Barry Warsaw mailman: milestone 3.0.0b2