[CalendarServer-changes] [9351] CalendarServer/branches/release/CalendarServer-3.3-dev
source_changes at macosforge.org
source_changes at macosforge.org
Fri Jun 8 16:32:48 PDT 2012
Revision: 9351
http://trac.macosforge.org/projects/calendarserver/changeset/9351
Author: wsanchez at apple.com
Date: 2012-06-08 16:32:47 -0700 (Fri, 08 Jun 2012)
Log Message:
-----------
Re-merge changes from the old 3.3-dev branch.
Modified Paths:
--------------
CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/provision/root.py
CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/applepush.py
CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/test/test_applepush.py
CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/purge.py
CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/test/test_purge_old_events.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/aggregate.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/appleopendirectory.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/cachingdirectory.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/directory.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/sudo.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_cachedirectory.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_directory.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_util.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/util.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlaccountsparser.py
CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlfile.py
Property Changed:
----------------
CalendarServer/branches/release/CalendarServer-3.3-dev/
CalendarServer/branches/release/CalendarServer-3.3-dev/support/build.sh
CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/caldav/datastore/index_file.py
CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/caldav/datastore/test/test_index_file.py
CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/carddav/datastore/index_file.py
CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/carddav/datastore/test/test_index_file.py
Property changes on: CalendarServer/branches/release/CalendarServer-3.3-dev
___________________________________________________________________
Modified: svn:mergeinfo
- /CalendarServer/branches/config-separation:4379-4443
/CalendarServer/branches/egg-info-351:4589-4625
/CalendarServer/branches/generic-sqlstore:6167-6191
/CalendarServer/branches/new-store:5594-5934
/CalendarServer/branches/new-store-no-caldavfile:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2:5936-5981
/CalendarServer/branches/users/cdaboo/batchupload-6699:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464:4465-4957
/CalendarServer/branches/users/cdaboo/pods:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar:7085-7206
/CalendarServer/branches/users/cdaboo/pycard:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187:5188-5440
/CalendarServer/branches/users/cdaboo/timezones:7443-7699
/CalendarServer/branches/users/glyph/conn-limit:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge:4971-5080
/CalendarServer/branches/users/glyph/dalify:6932-7023
/CalendarServer/branches/users/glyph/db-reconnect:6824-6876
/CalendarServer/branches/users/glyph/deploybuild:7563-7572
/CalendarServer/branches/users/glyph/disable-quota:7718-7727
/CalendarServer/branches/users/glyph/dont-start-postgres:6592-6614
/CalendarServer/branches/users/glyph/imip-and-admin-html:7866-7984
/CalendarServer/branches/users/glyph/linux-tests:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6:6322-6368
/CalendarServer/branches/users/glyph/more-deferreds-7:6369-6445
/CalendarServer/branches/users/glyph/multiget-delete:8321-8330
/CalendarServer/branches/users/glyph/new-export:7444-7485
/CalendarServer/branches/users/glyph/oracle:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls:7340-7351
/CalendarServer/branches/users/glyph/other-html:8062-8091
/CalendarServer/branches/users/glyph/parallel-sim:8240-8251
/CalendarServer/branches/users/glyph/quota:7604-7637
/CalendarServer/branches/users/glyph/sendfdport:5388-5424
/CalendarServer/branches/users/glyph/shared-pool-take2:8155-8174
/CalendarServer/branches/users/glyph/sharedpool:6490-6550
/CalendarServer/branches/users/glyph/sql-store:5929-6073
/CalendarServer/branches/users/glyph/subtransactions:7248-7258
/CalendarServer/branches/users/glyph/uidexport:7673-7676
/CalendarServer/branches/users/glyph/use-system-twisted:5084-5149
/CalendarServer/branches/users/glyph/xattrs-from-files:7757-7769
/CalendarServer/branches/users/sagen/applepush:8126-8184
/CalendarServer/branches/users/sagen/inboxitems:7380-7381
/CalendarServer/branches/users/sagen/locations-resources:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066:4068-4075
/CalendarServer/branches/users/sagen/resources-2:5084-5093
/CalendarServer/branches/users/wsanchez/transations:5515-5593
/CalendarServer/trunk:8290,8294,8303,8305,8307,8314,8320,8331-8332,8422,8427,8445
+ /CalendarServer/branches/config-separation:4379-4443
/CalendarServer/branches/egg-info-351:4589-4625
/CalendarServer/branches/generic-sqlstore:6167-6191
/CalendarServer/branches/new-store:5594-5934
/CalendarServer/branches/new-store-no-caldavfile:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2:5936-5981
/CalendarServer/branches/release/CalendarServer-3.3-dev:8718-9344
/CalendarServer/branches/users/cdaboo/batchupload-6699:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464:4465-4957
/CalendarServer/branches/users/cdaboo/pods:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar:7085-7206
/CalendarServer/branches/users/cdaboo/pycard:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187:5188-5440
/CalendarServer/branches/users/cdaboo/timezones:7443-7699
/CalendarServer/branches/users/glyph/conn-limit:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge:4971-5080
/CalendarServer/branches/users/glyph/dalify:6932-7023
/CalendarServer/branches/users/glyph/db-reconnect:6824-6876
/CalendarServer/branches/users/glyph/deploybuild:7563-7572
/CalendarServer/branches/users/glyph/disable-quota:7718-7727
/CalendarServer/branches/users/glyph/dont-start-postgres:6592-6614
/CalendarServer/branches/users/glyph/imip-and-admin-html:7866-7984
/CalendarServer/branches/users/glyph/linux-tests:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6:6322-6368
/CalendarServer/branches/users/glyph/more-deferreds-7:6369-6445
/CalendarServer/branches/users/glyph/multiget-delete:8321-8330
/CalendarServer/branches/users/glyph/new-export:7444-7485
/CalendarServer/branches/users/glyph/oracle:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls:7340-7351
/CalendarServer/branches/users/glyph/other-html:8062-8091
/CalendarServer/branches/users/glyph/parallel-sim:8240-8251
/CalendarServer/branches/users/glyph/quota:7604-7637
/CalendarServer/branches/users/glyph/sendfdport:5388-5424
/CalendarServer/branches/users/glyph/shared-pool-take2:8155-8174
/CalendarServer/branches/users/glyph/sharedpool:6490-6550
/CalendarServer/branches/users/glyph/sql-store:5929-6073
/CalendarServer/branches/users/glyph/subtransactions:7248-7258
/CalendarServer/branches/users/glyph/uidexport:7673-7676
/CalendarServer/branches/users/glyph/use-system-twisted:5084-5149
/CalendarServer/branches/users/glyph/xattrs-from-files:7757-7769
/CalendarServer/branches/users/sagen/applepush:8126-8184
/CalendarServer/branches/users/sagen/inboxitems:7380-7381
/CalendarServer/branches/users/sagen/locations-resources:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066:4068-4075
/CalendarServer/branches/users/sagen/resources-2:5084-5093
/CalendarServer/branches/users/wsanchez/transations:5515-5593
/CalendarServer/trunk:8290,8294,8303,8305,8307,8314,8320,8331-8332,8422,8427,8445,8549
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/provision/root.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/provision/root.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/provision/root.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -286,9 +286,9 @@
break
if principal:
- log.debug("Wiki-authenticated principal %s being assigned to authnUser and authzUser" % (record.guid,))
+ log.debug("Wiki-authenticated principal %s being assigned to authnUser and authzUser" % (record.uid,))
request.authzUser = request.authnUser = davxml.Principal(
- davxml.HRef.fromString("/principals/__uids__/%s/" % (record.guid,))
+ davxml.HRef.fromString("/principals/__uids__/%s/" % (record.uid,))
)
if not hasattr(request, "authzUser") and config.WebCalendarAuthPath:
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/applepush.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/applepush.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/applepush.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -164,8 +164,9 @@
if numSubscriptions > 0:
self.log_debug("Sending %d APNS notifications for %s" %
(numSubscriptions, key))
- for token, guid in subscriptions:
- provider.sendNotification(token, key)
+ for token, uid in subscriptions:
+ if token and uid:
+ provider.sendNotification(token, key)
@@ -398,7 +399,7 @@
txn = self.factory.store.newTransaction()
subscriptions = (yield txn.apnSubscriptionsByToken(token))
- for key, modified, guid in subscriptions:
+ for key, modified, uid in subscriptions:
if timestamp > modified:
self.log_debug("FeedbackProtocol removing subscription: %s %s" %
(token, key))
@@ -546,24 +547,32 @@
@type request: L{twext.web2.server.Request}
"""
- token = request.args.get("token", None)
- key = request.args.get("key", None)
- if key and token:
- key = key[0]
- token = token[0].replace(" ", "").lower()
- principal = self.principalFromRequest(request)
- guid = principal.record.guid
- yield self.addSubscription(token, key, guid)
- code = responsecode.OK
- msg = None
- else:
+ token = request.args.get("token", ("",))[0].replace(" ", "").lower()
+ key = request.args.get("key", ("",))[0]
+
+ if not (key and token):
code = responsecode.BAD_REQUEST
msg = "Invalid request: both 'token' and 'key' must be provided"
+ elif not validToken(token):
+ code = responsecode.BAD_REQUEST
+ msg = "Invalid request: bad 'token' %s" % (token,)
+
+ else:
+ principal = self.principalFromRequest(request)
+ uid = principal.record.uid
+ try:
+ yield self.addSubscription(token, key, uid)
+ code = responsecode.OK
+ msg = None
+ except InvalidSubscriptionValues:
+ code = responsecode.BAD_REQUEST
+ msg = "Invalid subscription values"
+
returnValue((code, msg))
@inlineCallbacks
- def addSubscription(self, token, key, guid):
+ def addSubscription(self, token, key, uid):
"""
Add a subscription (or update its timestamp if already there).
@@ -573,12 +582,12 @@
@param key: The push key
@type key: C{str}
- @param guid: The GUID of the subscriber principal
- @type guid: C{str}
+ @param uid: The uid of the subscriber principal
+ @type uid: C{str}
"""
now = int(time.time()) # epoch seconds
txn = self.store.newTransaction()
- yield txn.addAPNSubscription(token, key, now, guid)
+ yield txn.addAPNSubscription(token, key, now, uid)
yield txn.commit()
def renderResponse(self, code, body=None):
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/test/test_applepush.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/test/test_applepush.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/push/test/test_applepush.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -61,12 +61,12 @@
token = "2d0d55cd7f98bcb81c6e24abcdc35168254c7846a43e2828b1ba5a8f82e219df"
key1 = "/CalDAV/calendars.example.com/user01/calendar/"
timestamp1 = 1000
- guid = "D2256BCC-48E2-42D1-BD89-CBA1E4CCDFFB"
- yield txn.addAPNSubscription(token, key1, timestamp1, guid)
+ uid = "D2256BCC-48E2-42D1-BD89-CBA1E4CCDFFB"
+ yield txn.addAPNSubscription(token, key1, timestamp1, uid)
key2 = "/CalDAV/calendars.example.com/user02/calendar/"
timestamp2 = 3000
- yield txn.addAPNSubscription(token, key2, timestamp2, guid)
+ yield txn.addAPNSubscription(token, key2, timestamp2, uid)
yield txn.commit()
# Set up the service
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/purge.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/purge.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/purge.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -188,7 +188,7 @@
class PurgePrincipalService(WorkerService):
- guids = None
+ uids = None
dryrun = False
verbose = False
completely = False
@@ -197,7 +197,7 @@
def doWork(self):
rootResource = self.rootResource()
directory = rootResource.getDirectory()
- total = (yield purgeGUIDs(directory, rootResource, self.guids,
+ total = (yield purgeUIDs(directory, rootResource, self.uids,
verbose=self.verbose, dryrun=self.dryrun,
completely=self.completely))
if self.verbose:
@@ -389,8 +389,8 @@
else:
raise NotImplementedError(opt)
- # args is a list of guids
- PurgePrincipalService.guids = args
+ # args is a list of uids
+ PurgePrincipalService.uids = args
PurgePrincipalService.completely = completely
PurgePrincipalService.dryrun = dryrun
PurgePrincipalService.verbose = verbose
@@ -496,14 +496,14 @@
@inlineCallbacks
-def purgeGUIDs(directory, root, guids, verbose=False, dryrun=False,
+def purgeUIDs(directory, root, uids, verbose=False, dryrun=False,
completely=False):
total = 0
allAssignments = { }
- for guid in guids:
- count, allAssignments[guid] = (yield purgeGUID(guid, directory, root,
+ for uid in uids:
+ count, allAssignments[uid] = (yield purgeUID(uid, directory, root,
verbose=verbose, dryrun=dryrun, completely=completely))
total += count
@@ -620,27 +620,27 @@
@inlineCallbacks
-def purgeGUID(guid, directory, root, verbose=False, dryrun=False, proxies=True,
+def purgeUID(uid, directory, root, verbose=False, dryrun=False, proxies=True,
when=None, completely=False):
if when is None:
when = PyCalendarDateTime.getNowUTC()
# Does the record exist?
- record = directory.recordWithGUID(guid)
+ record = directory.recordWithUID(uid)
if record is None:
# The user has already been removed from the directory service. We
# need to fashion a temporary, fake record
# FIXME: probaby want a more elegant way to accomplish this,
# since it requires the aggregate directory to examine these first:
- record = DirectoryRecord(directory, "users", guid, shortNames=(guid,),
+ record = DirectoryRecord(directory, "users", uid, shortNames=(uid,),
enabledForCalendaring=True)
record.enabled = True
- directory._tmpRecords["shortNames"][guid] = record
- directory._tmpRecords["guids"][guid] = record
+ directory._tmpRecords["shortNames"][uid] = record
+ directory._tmpRecords["uids"][uid] = record
- cua = "urn:uuid:%s" % (guid,)
+ cua = "urn:uuid:%s" % (uid,)
principalCollection = directory.principalCollection
principal = principalCollection.principalForRecord(record)
@@ -648,7 +648,7 @@
request = FakeRequest(root, None, None)
request.checkedSACL = True
request.authnUser = request.authzUser = davxml.Principal(
- davxml.HRef.fromString("/principals/__uids__/%s/" % (guid,))
+ davxml.HRef.fromString("/principals/__uids__/%s/" % (uid,))
)
calendarHome = yield principal.calendarHome(request)
@@ -669,7 +669,7 @@
count = 0
assignments = []
- perUserFilter = PerUserDataFilter(guid)
+ perUserFilter = PerUserDataFilter(uid)
for collName in (yield calendarHome.listChildren()):
collection = (yield calendarHome.getChild(collName))
@@ -696,7 +696,7 @@
event = perUserFilter.filter(event)
action = cancelEvent(event, when, cua)
- uri = "/calendars/__uids__/%s/%s/%s" % (guid, collName, childName)
+ uri = "/calendars/__uids__/%s/%s/%s" % (uid, collName, childName)
request.path = uri
if action == CANCELEVENT_MODIFIED:
count += 1
@@ -728,7 +728,7 @@
if not dryrun:
result = (yield childResource.storeRemove(request, True, uri))
if result != NO_CONTENT:
- print "Error deleting %s/%s/%s: %s" % (guid,
+ print "Error deleting %s/%s/%s: %s" % (uid,
collName, childName, result)
@@ -736,7 +736,7 @@
# Remove empty calendar collections (and calendar home if no more
# calendars)
- calHome = (yield txn.calendarHomeWithUID(guid))
+ calHome = (yield txn.calendarHomeWithUID(uid))
if calHome is not None:
calendars = list((yield calHome.calendars()))
remainingCalendars = len(calendars)
@@ -763,13 +763,13 @@
# Remove VCards
- abHome = (yield txn.addressbookHomeWithUID(guid))
+ abHome = (yield txn.addressbookHomeWithUID(uid))
if abHome is not None:
for abColl in list( (yield abHome.addressbooks()) ):
for card in list( (yield abColl.addressbookObjects()) ):
cardName = card.name()
if verbose:
- uri = "/addressbooks/__uids__/%s/%s/%s" % (guid, abColl.name(), cardName)
+ uri = "/addressbooks/__uids__/%s/%s/%s" % (uid, abColl.name(), cardName)
if dryrun:
print "Would delete: %s" % (uri,)
else:
@@ -815,13 +815,13 @@
proxyFor = (yield principal.proxyFor(proxyType == "write"))
for other in proxyFor:
- assignments.append((principal.record.guid, proxyType, other.record.guid))
+ assignments.append((principal.record.uid, proxyType, other.record.uid))
(yield removeProxy(other, principal))
subPrincipal = principal.getChild("calendar-proxy-" + proxyType)
proxies = (yield subPrincipal.readProperty(davxml.GroupMemberSet, None))
for other in proxies.children:
- assignments.append((str(other).split("/")[3], proxyType, principal.record.guid))
+ assignments.append((str(other).split("/")[3], proxyType, principal.record.uid))
(yield subPrincipal.writeProperty(davxml.GroupMemberSet(), None))
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/test/test_purge_old_events.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/test/test_purge_old_events.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/calendarserver/tools/test/test_purge_old_events.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -18,7 +18,7 @@
Tests for calendarserver.tools.purge
"""
from calendarserver.tap.util import getRootResource
-from calendarserver.tools.purge import purgeOldEvents, purgeGUID, purgeOrphanedAttachments
+from calendarserver.tools.purge import purgeOldEvents, purgeUID, purgeOrphanedAttachments
from twext.web2.http_headers import MimeType
@@ -512,7 +512,7 @@
test_purgeOldEvents.todo = "New lazy indexing broke this"
@inlineCallbacks
- def test_purgeGUID(self):
+ def test_purgeUID(self):
txn = self._sqlCalendarStore.newTransaction()
# Create an addressbook and one CardDAV resource
@@ -527,11 +527,11 @@
calColl = (yield calHome.calendarWithName("calendar1"))
self.assertEquals(len( (yield calColl.calendarObjects()) ), 3)
- # Make the newly created objects available to the purgeGUID transaction
+ # Make the newly created objects available to the purgeUID transaction
(yield txn.commit())
# Purge home1
- total, ignored = (yield purgeGUID("home1", self.directory,
+ total, ignored = (yield purgeUID("home1", self.directory,
self.rootResource, verbose=False, proxies=False,
when=PyCalendarDateTime(2010, 4, 1, 12, 0, 0, 0, PyCalendarTimezone(utc=True))))
@@ -549,7 +549,7 @@
@inlineCallbacks
- def test_purgeGUIDCompletely(self):
+ def test_purgeUIDCompletely(self):
txn = self._sqlCalendarStore.newTransaction()
# Create an addressbook and one CardDAV resource
@@ -564,11 +564,11 @@
calColl = (yield calHome.calendarWithName("calendar1"))
self.assertEquals(len( (yield calColl.calendarObjects()) ), 3)
- # Make the newly created objects available to the purgeGUID transaction
+ # Make the newly created objects available to the purgeUID transaction
(yield txn.commit())
# Purge home1 completely
- total, ignored = (yield purgeGUID("home1", self.directory,
+ total, ignored = (yield purgeUID("home1", self.directory,
self.rootResource, verbose=False, proxies=False, completely=True))
# 4 items deleted: 3 events and 1 vcard
Property changes on: CalendarServer/branches/release/CalendarServer-3.3-dev/support/build.sh
___________________________________________________________________
Modified: svn:mergeinfo
- /CalendarServer/branches/config-separation/support/build.sh:4379-4443
/CalendarServer/branches/egg-info-351/support/build.sh:4589-4615
/CalendarServer/branches/generic-sqlstore/support/build.sh:6167-6191
/CalendarServer/branches/new-store/support/build.sh:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/support/build.sh:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/support/build.sh:5936-5981
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/support/build.sh:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/support/build.sh:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace/support/build.sh:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591/support/build.sh:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/support/build.sh:4465-4957
/CalendarServer/branches/users/cdaboo/pods/support/build.sh:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/support/build.sh:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/support/build.sh:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/support/build.sh:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/support/build.sh:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/support/build.sh:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/support/build.sh:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/support/build.sh:4971-5080
/CalendarServer/branches/users/glyph/dalify/support/build.sh:6932-7023
/CalendarServer/branches/users/glyph/db-reconnect/support/build.sh:6824-6876
/CalendarServer/branches/users/glyph/deploybuild/support/build.sh:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/support/build.sh:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/support/build.sh:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/support/build.sh:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/support/build.sh:6322-6368
/CalendarServer/branches/users/glyph/more-deferreds-7/support/build.sh:6369-6445
/CalendarServer/branches/users/glyph/new-export/support/build.sh:7444-7485
/CalendarServer/branches/users/glyph/oracle-nulls/support/build.sh:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/support/build.sh:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/support/build.sh:6490-6550
/CalendarServer/branches/users/glyph/sql-store/support/build.sh:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/support/build.sh:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/support/build.sh:5084-5149
/CalendarServer/branches/users/sagen/applepush/support/build.sh:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/support/build.sh:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/support/build.sh:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/support/build.sh:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/support/build.sh:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/support/build.sh:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/support/build.sh:4068-4075
/CalendarServer/branches/users/sagen/resources-2/support/build.sh:5084-5093
/CalendarServer/branches/users/wsanchez/transations/support/build.sh:5515-5593
/CalendarServer/trunk/support/build.sh:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445
+ /CalendarServer/branches/config-separation/support/build.sh:4379-4443
/CalendarServer/branches/egg-info-351/support/build.sh:4589-4615
/CalendarServer/branches/generic-sqlstore/support/build.sh:6167-6191
/CalendarServer/branches/new-store/support/build.sh:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/support/build.sh:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/support/build.sh:5936-5981
/CalendarServer/branches/release/CalendarServer-3.3-dev/support/build.sh:8718-9344
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/support/build.sh:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/support/build.sh:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace/support/build.sh:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591/support/build.sh:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/support/build.sh:4465-4957
/CalendarServer/branches/users/cdaboo/pods/support/build.sh:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/support/build.sh:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/support/build.sh:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/support/build.sh:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/support/build.sh:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/support/build.sh:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/support/build.sh:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/support/build.sh:4971-5080
/CalendarServer/branches/users/glyph/dalify/support/build.sh:6932-7023
/CalendarServer/branches/users/glyph/db-reconnect/support/build.sh:6824-6876
/CalendarServer/branches/users/glyph/deploybuild/support/build.sh:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/support/build.sh:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/support/build.sh:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/support/build.sh:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/support/build.sh:6322-6368
/CalendarServer/branches/users/glyph/more-deferreds-7/support/build.sh:6369-6445
/CalendarServer/branches/users/glyph/new-export/support/build.sh:7444-7485
/CalendarServer/branches/users/glyph/oracle-nulls/support/build.sh:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/support/build.sh:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/support/build.sh:6490-6550
/CalendarServer/branches/users/glyph/sql-store/support/build.sh:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/support/build.sh:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/support/build.sh:5084-5149
/CalendarServer/branches/users/sagen/applepush/support/build.sh:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/support/build.sh:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/support/build.sh:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/support/build.sh:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/support/build.sh:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/support/build.sh:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/support/build.sh:4068-4075
/CalendarServer/branches/users/sagen/resources-2/support/build.sh:5084-5093
/CalendarServer/branches/users/wsanchez/transations/support/build.sh:5515-5593
/CalendarServer/trunk/support/build.sh:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445,8549
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/aggregate.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/aggregate.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/aggregate.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -72,10 +72,10 @@
# FIXME: This is a temporary workaround until new data store is in
# place. During the purging of deprovisioned users' data, we need
- # to be able to look up records by guid and shortName. The purge
+ # to be able to look up records by uid and shortName. The purge
# tool sticks temporary fake records in here.
self._tmpRecords = {
- "guids" : { },
+ "uids" : { },
"shortNames" : { },
}
@@ -134,7 +134,7 @@
# FIXME: These temporary records shouldn't be needed when we move
# to the new data store API. They're currently needed when purging
# deprovisioned users' data.
- record = self._tmpRecords["guids"].get(uid, None)
+ record = self._tmpRecords["uids"].get(uid, None)
if record:
return record
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/appleopendirectory.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/appleopendirectory.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/appleopendirectory.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -714,12 +714,8 @@
self.INDEX_TYPE_AUTHID : dsattributes.kDSNAttrAltSecurityIdentities,
}.get(indexType)
assert queryattr is not None, "Invalid type for record faulting query"
- # mailto: CUAs get normalized to lowercase internally, so do a case
- # insensitive search
- if queryattr == dsattributes.kDSNAttrEMailAddress:
- caseInsensitive = True
- else:
- caseInsensitive = False
+ # Make all OD queries case insensitive
+ caseInsensitive = True
results = []
for recordType in recordTypes:
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/cachingdirectory.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/cachingdirectory.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/cachingdirectory.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -36,6 +36,7 @@
from twistedcaldav.config import config
from twistedcaldav.directory.directory import DirectoryService, DirectoryRecord, DirectoryError, UnknownRecordTypeError
from twistedcaldav.scheduling.cuaddress import normalizeCUAddr
+from twistedcaldav.directory.util import normalizeUUID
class RecordTypeCache(object):
@@ -269,6 +270,7 @@
return self._lookupRecord(None, CachingDirectoryService.INDEX_TYPE_AUTHID, authID)
def recordWithGUID(self, guid):
+ guid = normalizeUUID(guid)
return self._lookupRecord(None, CachingDirectoryService.INDEX_TYPE_GUID, guid)
recordWithUID = recordWithGUID
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/directory.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/directory.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/directory.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -48,7 +48,7 @@
from twistedcaldav.config import config
from twistedcaldav.directory.idirectory import IDirectoryService, IDirectoryRecord
-from twistedcaldav.directory.util import uuidFromName
+from twistedcaldav.directory.util import uuidFromName, normalizeUUID
from twistedcaldav.scheduling.cuaddress import normalizeCUAddr
from twistedcaldav import servers
from twistedcaldav.memcacher import Memcacher
@@ -176,12 +176,14 @@
return None
def recordWithUID(self, uid):
+ uid = normalizeUUID(uid)
for record in self.allRecords():
if record.uid == uid:
return record
return None
def recordWithGUID(self, guid):
+ guid = normalizeUUID(guid)
for record in self.allRecords():
if record.guid == guid:
return record
@@ -923,7 +925,7 @@
)
def __init__(
- self, service, recordType, guid,
+ self, service, recordType, guid=None,
shortNames=(), authIDs=set(), fullName=None,
firstName=None, lastName=None, emailAddresses=set(),
calendarUserAddresses=set(), autoSchedule=False, enabledForCalendaring=None,
@@ -937,8 +939,7 @@
assert recordType
assert shortNames and isinstance(shortNames, tuple)
- if not guid:
- guid = uuidFromName(service.guid, "%s:%s" % (recordType, ",".join(shortNames)))
+ guid = normalizeUUID(guid)
if uid is None:
uid = guid
@@ -978,12 +979,15 @@
"""
if not self.enabledForCalendaring:
return frozenset()
- return frozenset(
- ["urn:uuid:%s" % (self.guid,)] +
+ cuas = set(
["mailto:%s" % (emailAddress,)
for emailAddress in self.emailAddresses]
)
+ if self.guid:
+ cuas.add("urn:uuid:%s" % (self.guid,))
+ return frozenset(cuas)
+
calendarUserAddresses = property(get_calendarUserAddresses)
def __cmp__(self, other):
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/sudo.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/sudo.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/sudo.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -126,7 +126,7 @@
super(SudoDirectoryRecord, self).__init__(
service=service,
recordType=recordType,
- guid=None,
+ uid="%s:%s" % (recordType, shortName),
shortNames=(shortName,),
fullName=shortName,
)
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_cachedirectory.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_cachedirectory.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_cachedirectory.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -187,6 +187,9 @@
self.service.queried = False
self.assertTrue(self.service.recordWithGUID(self.guidForShortName("user01")) is not None)
self.assertFalse(self.service.queried)
+
+ # Make sure guid is case-insensitive
+ self.assertTrue(self.service.recordWithGUID(self.guidForShortName("user01").lower()) is not None)
def test_cacheoneshortname(self):
self.dummyRecords()
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_directory.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_directory.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_directory.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -25,6 +25,7 @@
from twistedcaldav.directory.xmlfile import XMLDirectoryService
from twistedcaldav.directory.calendaruserproxyloader import XMLCalendarUserProxyLoader
from twistedcaldav.directory import augment, calendaruserproxy
+from twistedcaldav.directory.util import normalizeUUID
from twistedcaldav.directory.principal import DirectoryPrincipalProvisioningResource
import cPickle as pickle
@@ -38,7 +39,7 @@
return 0
return 1
-class SALCTests(TestCase):
+class SACLTests(TestCase):
def setUp(self):
self.patch(DirectoryRecord, "CheckSACL", StubCheckSACL)
@@ -560,3 +561,47 @@
)
+class GUIDTests(TestCase):
+
+ def setUp(self):
+ self.service = DirectoryService()
+ self.service.setRealm("test")
+ self.service.baseGUID = "0E8E6EC2-8E52-4FF3-8F62-6F398B08A498"
+
+ def test_normalizeUUID(self):
+
+ # Ensure that record.guid automatically gets normalized to
+ # uppercase+hyphenated form if the value is one that uuid.UUID( )
+ # recognizes.
+
+ data = (
+ (
+ "0543A85A-D446-4CF6-80AE-6579FA60957F",
+ "0543A85A-D446-4CF6-80AE-6579FA60957F"
+ ),
+ (
+ "0543a85a-d446-4cf6-80ae-6579fa60957f",
+ "0543A85A-D446-4CF6-80AE-6579FA60957F"
+ ),
+ (
+ "0543A85AD4464CF680AE-6579FA60957F",
+ "0543A85A-D446-4CF6-80AE-6579FA60957F"
+ ),
+ (
+ "0543a85ad4464cf680ae6579fa60957f",
+ "0543A85A-D446-4CF6-80AE-6579FA60957F"
+ ),
+ (
+ "foo",
+ "foo"
+ ),
+ (
+ None,
+ None
+ ),
+ )
+ for original, expected in data:
+ self.assertEquals(expected, normalizeUUID(original))
+ record = DirectoryRecord(self.service, "users", original,
+ shortNames=("testing",))
+ self.assertEquals(expected, record.guid)
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_util.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_util.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/test/test_util.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -24,5 +24,5 @@
def test_uuidFromName(self):
self.assertEquals(
uuidFromName(uuid_namespace_dns, "python.org"),
- "886313e1-3b8a-5372-9b90-0c9aee199e5d",
+ "886313E1-3B8A-5372-9B90-0C9AEE199E5D",
)
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/util.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/util.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/util.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -20,6 +20,7 @@
"""
__all__ = [
+ "normalizeUUID",
"uuidFromName",
]
@@ -38,8 +39,22 @@
if type(name) is unicode:
name = name.encode("utf-8")
- return str(uuid5(UUID(namespace), name))
+ return normalizeUUID(str(uuid5(UUID(namespace), name)))
+
+def normalizeUUID(value):
+ """
+ Convert strings which the uuid.UUID( ) method can parse into normalized
+ (uppercase with hyphens) form. Any value which is not parsed by UUID( )
+ is returned as is.
+ @param value: string value to normalize
+ """
+ try:
+ return str(UUID(value)).upper()
+ except (ValueError, TypeError):
+ return value
+
+
def transactionFromRequest(request, newStore):
"""
Return the associated transaction from the given HTTP request, creating a
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlaccountsparser.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlaccountsparser.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlaccountsparser.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -30,6 +30,7 @@
from twext.python.log import Logger
from twistedcaldav.directory.directory import DirectoryService
+from twistedcaldav.directory.util import normalizeUUID
import re
import hashlib
@@ -237,7 +238,7 @@
result = XMLAccountRecord(self.recordType)
result.shortNames = shortNames
- result.guid = guid
+ result.guid = normalizeUUID(guid)
result.password = password
result.fullName = fullName
result.firstName = firstName
Modified: CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlfile.py
===================================================================
--- CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlfile.py 2012-06-08 23:27:47 UTC (rev 9350)
+++ CalendarServer/branches/release/CalendarServer-3.3-dev/twistedcaldav/directory/xmlfile.py 2012-06-08 23:32:47 UTC (rev 9351)
@@ -34,6 +34,7 @@
from twistedcaldav.config import fullServerPath
from twistedcaldav.directory.directory import DirectoryService, DirectoryRecord, DirectoryError
from twistedcaldav.directory.xmlaccountsparser import XMLAccountsParser, XMLAccountRecord
+from twistedcaldav.directory.util import normalizeUUID
from twistedcaldav.scheduling.cuaddress import normalizeCUAddr
from twistedcaldav.xmlutil import addSubElement, createElement, elementToXML
from uuid import uuid4
@@ -256,6 +257,7 @@
return None
def recordWithGUID(self, guid):
+ guid = normalizeUUID(guid)
for recordType in self.recordTypes():
record = self._lookupInIndex(recordType, self.INDEX_TYPE_GUID, guid)
if record is not None:
@@ -431,6 +433,7 @@
"""
if guid is None:
guid = str(uuid4())
+ guid = normalizeUUID(guid)
if not shortNames:
shortNames = (guid,)
@@ -473,6 +476,8 @@
disk.
"""
+ guid = normalizeUUID(guid)
+
# Make sure latest XML records are read in
accounts = self._forceReload()
@@ -497,6 +502,8 @@
is serialized to disk.
"""
+ guid = normalizeUUID(guid)
+
# Make sure latest XML records are read in
accounts = self._forceReload()
Property changes on: CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/caldav/datastore/index_file.py
___________________________________________________________________
Modified: svn:mergeinfo
- /CalendarServer/branches/config-separation/txdav/caldav/datastore/index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/caldav/datastore/index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/caldav/datastore/index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/caldav/datastore/index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/caldav/datastore/index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/caldav/datastore/index_file.py:5936-5981
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/caldav/datastore/index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/caldav/datastore/index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/caldav/datastore/index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace/txdav/caldav/datastore/index_file.py:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/caldav/datastore/index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/caldav/datastore/index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/caldav/datastore/index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/caldav/datastore/index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/caldav/datastore/index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/caldav/datastore/index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/caldav/datastore/index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/caldav/datastore/index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/caldav/datastore/index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/caldav/datastore/index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/caldav/datastore/index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/caldav/datastore/index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/caldav/datastore/index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/caldav/datastore/index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/caldav/datastore/index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/caldav/datastore/index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/caldav/datastore/index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/caldav/datastore/index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/caldav/datastore/index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/caldav/datastore/index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/caldav/datastore/index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/caldav/datastore/index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/caldav/datastore/index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/caldav/datastore/index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/caldav/datastore/index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/caldav/datastore/index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/caldav/datastore/index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/caldav/datastore/index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/caldav/datastore/index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/caldav/datastore/index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/caldav/datastore/index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/caldav/datastore/index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/caldav/datastore/index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/caldav/datastore/index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/index.py:6322-6394
/CalendarServer/trunk/txdav/caldav/datastore/index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445
+ /CalendarServer/branches/config-separation/txdav/caldav/datastore/index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/caldav/datastore/index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/caldav/datastore/index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/caldav/datastore/index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/caldav/datastore/index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/caldav/datastore/index_file.py:5936-5981
/CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/caldav/datastore/index_file.py:8718-9344
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/caldav/datastore/index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/caldav/datastore/index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/caldav/datastore/index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace/txdav/caldav/datastore/index_file.py:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/caldav/datastore/index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/caldav/datastore/index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/caldav/datastore/index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/caldav/datastore/index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/caldav/datastore/index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/caldav/datastore/index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/caldav/datastore/index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/caldav/datastore/index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/caldav/datastore/index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/caldav/datastore/index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/caldav/datastore/index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/caldav/datastore/index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/caldav/datastore/index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/caldav/datastore/index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/caldav/datastore/index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/caldav/datastore/index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/caldav/datastore/index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/caldav/datastore/index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/caldav/datastore/index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/caldav/datastore/index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/caldav/datastore/index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/caldav/datastore/index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/caldav/datastore/index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/caldav/datastore/index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/caldav/datastore/index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/caldav/datastore/index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/caldav/datastore/index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/caldav/datastore/index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/caldav/datastore/index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/caldav/datastore/index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/caldav/datastore/index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/caldav/datastore/index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/caldav/datastore/index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/caldav/datastore/index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/index.py:6322-6394
/CalendarServer/trunk/txdav/caldav/datastore/index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445,8549
Property changes on: CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/caldav/datastore/test/test_index_file.py
___________________________________________________________________
Modified: svn:mergeinfo
- /CalendarServer/branches/config-separation/txdav/caldav/datastore/test/test_index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/caldav/datastore/test/test_index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/caldav/datastore/test/test_index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/caldav/datastore/test/test_index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/caldav/datastore/test/test_index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/caldav/datastore/test/test_index_file.py:5936-5981
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/caldav/datastore/test/test_index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/caldav/datastore/test/test_index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/caldav/datastore/test/test_index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/caldav/datastore/test/test_index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/caldav/datastore/test/test_index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/caldav/datastore/test/test_index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/caldav/datastore/test/test_index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/caldav/datastore/test/test_index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/caldav/datastore/test/test_index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/caldav/datastore/test/test_index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/caldav/datastore/test/test_index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/caldav/datastore/test/test_index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/caldav/datastore/test/test_index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/caldav/datastore/test/test_index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/caldav/datastore/test/test_index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/caldav/datastore/test/test_index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/caldav/datastore/test/test_index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/caldav/datastore/test/test_index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/caldav/datastore/test/test_index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/caldav/datastore/test/test_index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/caldav/datastore/test/test_index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/caldav/datastore/test/test_index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/caldav/datastore/test/test_index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/caldav/datastore/test/test_index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/caldav/datastore/test/test_index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/caldav/datastore/test/test_index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/caldav/datastore/test/test_index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/caldav/datastore/test/test_index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/caldav/datastore/test/test_index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/caldav/datastore/test/test_index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/caldav/datastore/test/test_index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/caldav/datastore/test/test_index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/caldav/datastore/test/test_index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/caldav/datastore/test/test_index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/caldav/datastore/test/test_index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/caldav/datastore/test/test_index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/caldav/datastore/test/test_index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/test/test_index.py:6322-6394
/CalendarServer/trunk/txdav/caldav/datastore/test/test_index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445
+ /CalendarServer/branches/config-separation/txdav/caldav/datastore/test/test_index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/caldav/datastore/test/test_index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/caldav/datastore/test/test_index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/caldav/datastore/test/test_index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/caldav/datastore/test/test_index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/caldav/datastore/test/test_index_file.py:5936-5981
/CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/caldav/datastore/test/test_index_file.py:8718-9344
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/caldav/datastore/test/test_index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/caldav/datastore/test/test_index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/caldav/datastore/test/test_index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/caldav/datastore/test/test_index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/caldav/datastore/test/test_index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/caldav/datastore/test/test_index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/caldav/datastore/test/test_index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/caldav/datastore/test/test_index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/caldav/datastore/test/test_index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/caldav/datastore/test/test_index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/caldav/datastore/test/test_index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/caldav/datastore/test/test_index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/caldav/datastore/test/test_index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/caldav/datastore/test/test_index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/caldav/datastore/test/test_index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/caldav/datastore/test/test_index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/caldav/datastore/test/test_index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/caldav/datastore/test/test_index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/caldav/datastore/test/test_index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/caldav/datastore/test/test_index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/caldav/datastore/test/test_index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/caldav/datastore/test/test_index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/caldav/datastore/test/test_index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/caldav/datastore/test/test_index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/caldav/datastore/test/test_index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/caldav/datastore/test/test_index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/caldav/datastore/test/test_index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/caldav/datastore/test/test_index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/caldav/datastore/test/test_index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/caldav/datastore/test/test_index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/caldav/datastore/test/test_index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/caldav/datastore/test/test_index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/caldav/datastore/test/test_index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/caldav/datastore/test/test_index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/caldav/datastore/test/test_index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/caldav/datastore/test/test_index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/caldav/datastore/test/test_index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/test/test_index.py:6322-6394
/CalendarServer/trunk/txdav/caldav/datastore/test/test_index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445,8549
Property changes on: CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/carddav/datastore/index_file.py
___________________________________________________________________
Modified: svn:mergeinfo
- /CalendarServer/branches/config-separation/txdav/carddav/datastore/index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/carddav/datastore/index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/carddav/datastore/index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/carddav/datastore/index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/carddav/datastore/index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/carddav/datastore/index_file.py:5936-5981
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/carddav/datastore/index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/carddav/datastore/index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/carddav/datastore/index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace/txdav/carddav/datastore/index_file.py:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/carddav/datastore/index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/carddav/datastore/index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/carddav/datastore/index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/carddav/datastore/index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/carddav/datastore/index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/carddav/datastore/index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/carddav/datastore/index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/carddav/datastore/index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/carddav/datastore/index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/carddav/datastore/index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/carddav/datastore/index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/carddav/datastore/index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/carddav/datastore/index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/carddav/datastore/index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/carddav/datastore/index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/carddav/datastore/index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/carddav/datastore/index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/carddav/datastore/index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/carddav/datastore/index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/carddav/datastore/index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/carddav/datastore/index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/carddav/datastore/index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/carddav/datastore/index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/carddav/datastore/index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/carddav/datastore/index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/carddav/datastore/index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/carddav/datastore/index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/carddav/datastore/index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/carddav/datastore/index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/carddav/datastore/index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/carddav/datastore/index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/carddav/datastore/index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/carddav/datastore/index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/carddav/datastore/index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/vcardindex.py:6322-6394
/CalendarServer/trunk/txdav/carddav/datastore/index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445
+ /CalendarServer/branches/config-separation/txdav/carddav/datastore/index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/carddav/datastore/index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/carddav/datastore/index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/carddav/datastore/index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/carddav/datastore/index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/carddav/datastore/index_file.py:5936-5981
/CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/carddav/datastore/index_file.py:8718-9344
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/carddav/datastore/index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/carddav/datastore/index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/carddav/datastore/index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/implicituidrace/txdav/carddav/datastore/index_file.py:8137-8141
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/carddav/datastore/index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/carddav/datastore/index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/carddav/datastore/index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/carddav/datastore/index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/carddav/datastore/index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/carddav/datastore/index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/carddav/datastore/index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/carddav/datastore/index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/carddav/datastore/index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/carddav/datastore/index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/carddav/datastore/index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/carddav/datastore/index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/carddav/datastore/index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/carddav/datastore/index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/carddav/datastore/index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/carddav/datastore/index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/carddav/datastore/index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/carddav/datastore/index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/carddav/datastore/index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/carddav/datastore/index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/carddav/datastore/index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/carddav/datastore/index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/carddav/datastore/index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/carddav/datastore/index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/carddav/datastore/index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/carddav/datastore/index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/carddav/datastore/index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/carddav/datastore/index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/carddav/datastore/index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/carddav/datastore/index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/carddav/datastore/index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/carddav/datastore/index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/carddav/datastore/index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/carddav/datastore/index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/vcardindex.py:6322-6394
/CalendarServer/trunk/txdav/carddav/datastore/index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445,8549
Property changes on: CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/carddav/datastore/test/test_index_file.py
___________________________________________________________________
Modified: svn:mergeinfo
- /CalendarServer/branches/config-separation/txdav/carddav/datastore/test/test_index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/carddav/datastore/test/test_index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/carddav/datastore/test/test_index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/carddav/datastore/test/test_index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/carddav/datastore/test/test_index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/carddav/datastore/test/test_index_file.py:5936-5981
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/carddav/datastore/test/test_index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/carddav/datastore/test/test_index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/carddav/datastore/test/test_index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/carddav/datastore/test/test_index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/carddav/datastore/test/test_index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/carddav/datastore/test/test_index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/carddav/datastore/test/test_index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/carddav/datastore/test/test_index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/carddav/datastore/test/test_index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/carddav/datastore/test/test_index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/carddav/datastore/test/test_index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/carddav/datastore/test/test_index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/carddav/datastore/test/test_index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/carddav/datastore/test/test_index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/carddav/datastore/test/test_index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/carddav/datastore/test/test_index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/carddav/datastore/test/test_index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/carddav/datastore/test/test_index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/carddav/datastore/test/test_index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/carddav/datastore/test/test_index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/carddav/datastore/test/test_index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/carddav/datastore/test/test_index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/carddav/datastore/test/test_index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/carddav/datastore/test/test_index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/carddav/datastore/test/test_index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/carddav/datastore/test/test_index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/carddav/datastore/test/test_index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/carddav/datastore/test/test_index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/carddav/datastore/test/test_index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/carddav/datastore/test/test_index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/carddav/datastore/test/test_index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/carddav/datastore/test/test_index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/carddav/datastore/test/test_index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/carddav/datastore/test/test_index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/carddav/datastore/test/test_index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/carddav/datastore/test/test_index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/carddav/datastore/test/test_index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/test/test_vcardindex.py:6322-6394
/CalendarServer/trunk/txdav/carddav/datastore/test/test_index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445
+ /CalendarServer/branches/config-separation/txdav/carddav/datastore/test/test_index_file.py:4379-4443
/CalendarServer/branches/egg-info-351/txdav/carddav/datastore/test/test_index_file.py:4589-4625
/CalendarServer/branches/generic-sqlstore/txdav/carddav/datastore/test/test_index_file.py:6167-6191
/CalendarServer/branches/new-store/txdav/carddav/datastore/test/test_index_file.py:5594-5934
/CalendarServer/branches/new-store-no-caldavfile/txdav/carddav/datastore/test/test_index_file.py:5911-5935
/CalendarServer/branches/new-store-no-caldavfile-2/txdav/carddav/datastore/test/test_index_file.py:5936-5981
/CalendarServer/branches/release/CalendarServer-3.3-dev/txdav/carddav/datastore/test/test_index_file.py:8718-9344
/CalendarServer/branches/users/cdaboo/batchupload-6699/txdav/carddav/datastore/test/test_index_file.py:6700-7198
/CalendarServer/branches/users/cdaboo/cached-subscription-calendars-5692/txdav/carddav/datastore/test/test_index_file.py:5693-5702
/CalendarServer/branches/users/cdaboo/directory-cache-on-demand-3627/txdav/carddav/datastore/test/test_index_file.py:3628-3644
/CalendarServer/branches/users/cdaboo/more-sharing-5591/txdav/carddav/datastore/test/test_index_file.py:5592-5601
/CalendarServer/branches/users/cdaboo/partition-4464/txdav/carddav/datastore/test/test_index_file.py:4465-4957
/CalendarServer/branches/users/cdaboo/pods/txdav/carddav/datastore/test/test_index_file.py:7297-7377
/CalendarServer/branches/users/cdaboo/pycalendar/txdav/carddav/datastore/test/test_index_file.py:7085-7206
/CalendarServer/branches/users/cdaboo/pycard/txdav/carddav/datastore/test/test_index_file.py:7227-7237
/CalendarServer/branches/users/cdaboo/relative-config-paths-5070/txdav/carddav/datastore/test/test_index_file.py:5071-5105
/CalendarServer/branches/users/cdaboo/shared-calendars-5187/txdav/carddav/datastore/test/test_index_file.py:5188-5440
/CalendarServer/branches/users/cdaboo/timezones/txdav/carddav/datastore/test/test_index_file.py:7443-7699
/CalendarServer/branches/users/glyph/conn-limit/txdav/carddav/datastore/test/test_index_file.py:6574-6577
/CalendarServer/branches/users/glyph/contacts-server-merge/txdav/carddav/datastore/test/test_index_file.py:4971-5080
/CalendarServer/branches/users/glyph/dalify/txdav/carddav/datastore/test/test_index_file.py:6932-7023
/CalendarServer/branches/users/glyph/deploybuild/txdav/carddav/datastore/test/test_index_file.py:7563-7572
/CalendarServer/branches/users/glyph/dont-start-postgres/txdav/carddav/datastore/test/test_index_file.py:6592-6614
/CalendarServer/branches/users/glyph/linux-tests/txdav/carddav/datastore/test/test_index_file.py:6893-6900
/CalendarServer/branches/users/glyph/misc-portability-fixes/txdav/carddav/datastore/test/test_index_file.py:7365-7374
/CalendarServer/branches/users/glyph/more-deferreds-6/txdav/carddav/datastore/test/test_index_file.py:6322-6334
/CalendarServer/branches/users/glyph/more-deferreds-7/txdav/carddav/datastore/test/test_index_file.py:6369
/CalendarServer/branches/users/glyph/new-export/txdav/carddav/datastore/test/test_index_file.py:7444-7485
/CalendarServer/branches/users/glyph/oracle/txdav/carddav/datastore/test/test_index_file.py:7106-7155
/CalendarServer/branches/users/glyph/oracle-nulls/txdav/carddav/datastore/test/test_index_file.py:7340-7351
/CalendarServer/branches/users/glyph/sendfdport/txdav/carddav/datastore/test/test_index_file.py:5388-5424
/CalendarServer/branches/users/glyph/sharedpool/txdav/carddav/datastore/test/test_index_file.py:6490-6550
/CalendarServer/branches/users/glyph/sql-store/txdav/carddav/datastore/test/test_index_file.py:5929-6073
/CalendarServer/branches/users/glyph/subtransactions/txdav/carddav/datastore/test/test_index_file.py:7248-7258
/CalendarServer/branches/users/glyph/use-system-twisted/txdav/carddav/datastore/test/test_index_file.py:5084-5149
/CalendarServer/branches/users/sagen/applepush/txdav/carddav/datastore/test/test_index_file.py:8126-8184
/CalendarServer/branches/users/sagen/inboxitems/txdav/carddav/datastore/test/test_index_file.py:7380-7381
/CalendarServer/branches/users/sagen/locations-resources/txdav/carddav/datastore/test/test_index_file.py:5032-5051
/CalendarServer/branches/users/sagen/locations-resources-2/txdav/carddav/datastore/test/test_index_file.py:5052-5061
/CalendarServer/branches/users/sagen/purge_old_events/txdav/carddav/datastore/test/test_index_file.py:6735-6746
/CalendarServer/branches/users/sagen/resource-delegates-4038/txdav/carddav/datastore/test/test_index_file.py:4040-4067
/CalendarServer/branches/users/sagen/resource-delegates-4066/txdav/carddav/datastore/test/test_index_file.py:4068-4075
/CalendarServer/branches/users/sagen/resources-2/txdav/carddav/datastore/test/test_index_file.py:5084-5093
/CalendarServer/branches/users/wsanchez/transations/txdav/carddav/datastore/test/test_index_file.py:5515-5593
/CalendarServer/trunk/twistedcaldav/test/test_vcardindex.py:6322-6394
/CalendarServer/trunk/txdav/carddav/datastore/test/test_index_file.py:8290,8294,8303,8305,8307,8314,8320,8331-8332,8427,8445,8549
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20120608/345b381a/attachment-0001.html>
More information about the calendarserver-changes
mailing list