On January 12, [EMAIL PROTECTED] said:
> featurep of XEmacs 21.1 and newer has fairly sophisticated emacs
> version testing support.  Has this been implemented for GNU Emacs
> yet?

See, this is still a problem, because if you're on XEmacs 21.1 the
feature already exists and there's no testing to do, and if you're
not, you don't have the feature.

There are two basic problems here, some referred to (I recently
discovered) in Kyle Jones' byte-compiling options for VM. The first is
compiling your .el files under Emacs X and then attempting to run them
using (X)Emacs Y; the second is simply figuring out what's available
on a given version of Emacs. Right now, the code is littered with
special-case handling for these problems, albeit mostly for the
latter. I would really, REALLY like to force the compile environment
to be the same as the run environment; specifically, if you compile
BBDB under Emacs Y, then it will only run under Emacs Y. This would
allow a lot more compile-time optimizing of things like
native-vs.-hacked-up functions and the like. Of course, this will no
doubt upset people who run multiple Emacs versions, and I don't
particularly want to upset people unnecessarily. At the same time, all
this run-time checking does slow BBDB down and it would be far nicer
to get rid of it where possible.

I had intended to make a release this evening, once I'd sorted out the
current misrequirement of VM (there are some other things on the known
bugs list, but not quite as big a deal). This will most likely happen
tomorrow instead because I've been away for most of the weekend and
I'd rather not rush a release out the door just to hit a self-imposed
and somewhat arbitrary deadline. However. Once I've made the release,
I'm going to look at rearranging the code with the following goals in
mind:

* All variable/custom definitions get migrated to their own file, akin
  to vm-vars in the VM distribution

* All Emacs-version-related code gets migrated to its own file, akin
  to w3's sysdep.el (which is a great idea that nobody seems to use,
  and I'm not even sure if it's still maintained)

* Possibly some other logical-location-of-functions cleanup, such as
  bbdb.el being able to read and parse the .bbdb file without needing
  to load anything other than the above two files.

In the meantime, I'll fix the bbdb-hooks thing. Thanks for all the
suggested code :)

Cheers,
Waider.
-- 
[EMAIL PROTECTED] / Yes, it /is/ very personal of me.

"It doesn't corner well.  It doesn't have to.  It just warps space until the
 street is facing the right way."  - Blair P. Houghton

_______________________________________________
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/bbdb-info
BBDB Home Page: http://bbdb.sourceforge.net/

Reply via email to