cyrusimap / cassandane

Other
6 stars 11 forks source link

Net::LDAP is not mentioned as requirement #73

Open dilyanpalauzov opened 5 years ago

dilyanpalauzov commented 5 years ago

utils/fakeldapd needs Net::LDAP, but doc/README.deps does not mention it

dilyanpalauzov commented 5 years ago

Likewise, not mentioned and required are:

Some of them, like AnyEvent, are referenced in the botton for Fedora and Debian, but they are missing from the general section.

Since Net-DAVTalk requires Tie::DataUUID, XML::Spice and XML::Fast and is not installed over CPAN, the warnings from “perl Makefile.PL” are easily overseen. Likewise for the stuff from Net::CalDAVTalk, Net::CardDAVTalk and Mail-JMAPTalk.

elliefm commented 5 years ago

Hmm, I guess this list is out of date too: https://www.cyrusimap.org/imap/developer/developer-testing.html

elliefm commented 5 years ago

I think the web version is up to date now (or will be once the autoupdate hook runs), though it's hard to verify without setting up a blank environment and working through it step by step.

The *Talk modules are all available on CPAN these days (so their dependencies are fetched automatically). The information saying to get them elsewhere is wrong/old, but I've updated it now.

dilyanpalauzov commented 5 years ago

I had to install all of the aforementioned modules from CPAN, so a blank evironment will need them, too.

elliefm commented 5 years ago

I've added them to the list but can't be bothered writing descriptions of them right now

dilyanpalauzov commented 5 years ago

Net::LDAP is not mentioned as requirement.

dilyanpalauzov commented 5 years ago

To be precise, the first error I got was, that Net::LDAP was not installed. Then I installed it and was told, that Net::LDAP::Server is not installed. As Net::LDAP::Server requires Net::LDAP, explicitly spelling the latter is in fact not necessary.

elliefm commented 5 years ago

Yeah, that's why I left it out. It'd be nice to clean out all the ones (like Encode::IMAPUTF7) that are just dependencies of the other ones (and thus CPAN/apt/whatever will deal with the details) but that's an annoying rabbit hole for not a lot of real benefit, so I'm just gonna not stress about it instead.

But, thanks for your help updating this dependencies list. It only really gets exercised thoroughly when someone sets up a new machine, so if we forget to update it as we introduce dependencies (which we clearly sometimes do) it gets out of date easily! The feedback is appreciated :)

dilyanpalauzov commented 5 years ago

I propose substituting “2. Install dependencies” from cyrus-imap/docsrc/imap/developer/developer-testing.rst with “… as desrcibed in the doc/README.deps file” or doing anything else, which ensures that