(!) this page should be splitted in subpages so that it becomes well arranged

GSOC project logs

Date : 28.04. - 05.05.

Date : 05.05. - 12.05

2008-05-20 01:13:56

2008-05-20 02:52:05,930 DEBUG MoinMoin.auth.ldap_login:120 uso 
2008-05-20 02:52:05,930 DEBUG MoinMoin.auth.ldap_login:125 Setting misc. ldap options...
2008-05-20 02:52:05,936 DEBUG MoinMoin.auth.ldap_login:144 Trying to initialize 'ldap://localhost'.
2008-05-20 02:52:06,126 DEBUG MoinMoin.auth.ldap_login:146 Connected to LDAP server 'ldap://localhost'.
2008-05-20 02:52:06,128 DEBUG MoinMoin.auth.ldap_login:161 Bound with binddn 'cn=admin,dc=nodomain'
2008-05-20 02:52:06,128 DEBUG MoinMoin.auth.ldap_login:165 Searching u'(uid=foo)'
2008-05-20 02:52:06,129 DEBUG MoinMoin.auth.ldap_login:184 Search found no matches for u'(uid=foo)'.

Date : 24.05- 30.5

Date
06.06.2008.
Short description
- set ldap test framework (all 5 tests passed)
Date
07.06.2008.
Short description
- written tests for reading groups from LDAP and matching groups and users
Date
08.06.2008 - 16.06.2008
Short description
  • exams passing
Date
17.06.2008.
Short description
- test for searching groups that currently logged user is member of and adding groups to set
Date
18.06.2008.
Short description
  • test for storing groups from LDAP to caching module, ldap_login.py: reading groups from LDAP that currently loged user is member of and storing groups to caching module
  • changed test_ldapgroups.py - added search filter which looks at objectClass of defult LDAP Group types (groupOfNames, groupOfUniqueNames, posixGroup)
  • deal with 'is X member of group G'
Date
19.06.2008. - add member is_group to LDAP_groups lower level code
Date
20.06.2008.-27.06.2008.
Short description
  • worked on wikidicts design requirements
Date
28.06.2008.
Short description
  • finished wikidicts design requirements and started implementation of the config backend and high level code

To do

Topics

1. Caching and updating new things from LDAP

2. Who should change groups (add groups, add users to groups)

/!\ I am not sure that this is going into the right direction. IMHO, moin should not editing/modifying LDAP data, but just use what's already there (LDAP admins usually have other tools to modify it). I suggest you also discuss this with people having LDAP experience, like the people on the openldap mailing list (or python-ldap for specific stuff). -- ThomasWaldmann 2008-06-11 10:19:48

It is currently more important to get part 1 in a productive state. part 2 is an extension similiar to the wiki openid server JohannesBerg has implemented. On this part work could be done after part 1 is done and we have time left. It is about to use a wiki to setup ldap users, groups and user preferences. So you can control entries in a ldap from one wiki. At least you would like to control your userpreferences and part2 could be started to solve how you can change your user password from within the wiki on the ldap server. -- ReimarBauer 2008-06-11 16:49:40

3. I was reading /MoinMoinIdeas/WikiApplicationServerPage and was thinking to implement checking for LDAP changes every time when user logs into, but after I'm not sure. Could someon explain me that caching strategy (dynamic vs static) please?

But the decision if an item is static or dynamic depends on the caching strategy. Neither the parser nor the formatter nor the macros should have to know much about this strategy. By now it is hard coded in at least one of these three objects

We don't have currently different caching flags. You have to set the global var Dependency = [] in the definition of the parser, macro, formatter if it should not cache. This is needed for all kind of addons on a page which can change dynamicly. e.g. it does not make sense for Hits to cache the result and to show the cached result on every page request. Because that is the wrong value. This macro returns a value for every click on the page where it is used. RecentChanges isn't cached too because it's content is changed on every page edit etc action. So it can't become static. static can only be used for data which does not change. sometimes it is used also for data which costs lot of time to get. FullSearch can cost lots of time so if that is not wanted you can use FullSearchCached. the data cache will be rebuilded after cache is purged. pagelinks for example would only change if the pagename is changed but it does not need to be changed after any other request (static).

MoinMoin: MelitaMihaljevic/ProjectLogs (last edited 2008-06-28 18:46:38 by MelitaMihaljevic)