[Freeipa-devel] what's deprecated & what's in use in our tree?

Rob Crittenden rcritten at redhat.com
Wed Jan 27 20:46:27 UTC 2010


John Dennis wrote:
> When you check out an IPA tree apparently you get the kitchen sink. I 
> need to figure out what is deprecated in the tree and what is supposed 
> to be "in use installed code".

The only code that is really deprecated is the radius work you did for 
v1. It was carried along into the v2 tree to serve as a starting point 
in case anyone wanted to try to re-add radius support.

There is also some code from the old XML-RPC server that seems to be 
left over. This is, for example, why there are two SSLFile classes. One 
is for OpenSSL, the other for python-nss. Newer versions of httplib 
changed enough that made it necessary to pull SSLFile into our tree from 
older versions because we need to override certain pieces so we can 
stick in our authorization headers IIRC.

A lot of this was written prior to python-nss and may be a candidate for 
being rewritten/removed.

Additional code such as the CIDict and ipaldap are the legacy LDAP code 
that Pavel is working to replace.

We significantly restructed the code at some point and this is explains 
the one-for-one duplication, some files were simply not removed.

> According to Jason everything under ipapython is deprecated right?

No.

> 
> Is everything under ipaserver/install deprecated too?

No. This is the server installer code.

> 
> Is everything under ipaclient deprecated too?

No. This is the client installer.

> 
> Working on the assumption nothing should be importing from ipapython I 
> did a little search.
> 
> Under ipaserver the only imports for ipapython are in the 
> ipaserver/install directory, which is o.k. because install is deprecated.

No, this is where we put common code that is not part of the framework.

> 
> EXCEPT for ipaserver/plugins/dogtag.py which imports nsslib from ipapython.

ipapython is sort of common client/server code that lives outside the 
management framework that Jason did (ipalib).
> 
> We seem to have some problems with ipalib importing from ipapython:
> 
> rpc.py:    from ipapython import ipautil
> rpc.py:        from ipapython.ipasslfile import SSLFile
> rpc.py:        from ipapython.ipasslfile import FakeSocket
> ./plugins/cert.py:    from ipapython import dnsclient
> ./rpc.py:    from ipapython import ipautil
> ./rpc.py:        from ipapython.ipasslfile import SSLFile
> ./rpc.py:        from ipapython.ipasslfile import FakeSocket
> 
> We seem to have some problems with ipaclient importing from ipapython 
> but since ipaclient is deprecated (right?) that's not a problem, right?
> 
> If ipapython and ipaclient are deprecated why are we still building the 
> ipa-python and ipa-client rpms?
> 

Because they aren't deprecated.

rob




More information about the Freeipa-devel mailing list