diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py
index 5d63991..4015c9e 100644
--- a/Lib/idlelib/EditorWindow.py
+++ b/Lib/idlelib/EditorWindow.py
@@ -37,7 +37,7 @@
             raise ImportError, 'No source for module ' + module.__name__
     return file, filename, descr
 
-class EditorWindow:
+class EditorWindow(object):
     from Percolator import Percolator
     from ColorDelegator import ColorDelegator
     from UndoDelegator import UndoDelegator
@@ -1297,7 +1297,7 @@
 _tokenize = tokenize
 del tokenize
 
-class IndentSearcher:
+class IndentSearcher(object):
 
     # .run() chews over the Text widget, looking for a block opener
     # and the stmt following it.  Returns a pair,
diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt
index 6337e7c..1e12ca9 100644
--- a/Lib/idlelib/NEWS.txt
+++ b/Lib/idlelib/NEWS.txt
@@ -1,3 +1,11 @@
+What's New in IDLE 1.2a0?
+=======================
+
+*Release date: XX-XXX-2005*
+
+- The remote procedure call module rpc.py can now access data attributes of
+  remote registered objects.  Changes to these attributes are local, however.
+
 What's New in IDLE 1.1?
 =======================
 
diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py
index 887d638..fae6130 100644
--- a/Lib/idlelib/PyShell.py
+++ b/Lib/idlelib/PyShell.py
@@ -1186,7 +1186,7 @@
             if not use_subprocess:
                 raise KeyboardInterrupt
 
-class PseudoFile:
+class PseudoFile(object):
 
     def __init__(self, shell, tags, encoding=None):
         self.shell = shell
diff --git a/Lib/idlelib/idlever.py b/Lib/idlelib/idlever.py
index aba89af..eef2885 100644
--- a/Lib/idlelib/idlever.py
+++ b/Lib/idlelib/idlever.py
@@ -1 +1 @@
-IDLE_VERSION = "1.1"
+IDLE_VERSION = "1.2a0"
diff --git a/Lib/idlelib/rpc.py b/Lib/idlelib/rpc.py
index d097f9b..1620063 100644
--- a/Lib/idlelib/rpc.py
+++ b/Lib/idlelib/rpc.py
@@ -121,7 +121,7 @@
 response_queue = Queue.Queue(0)
 
 
-class SocketIO:
+class SocketIO(object):
 
     nextseq = 0
 
@@ -475,7 +475,7 @@
 
 #----------------- end class SocketIO --------------------
 
-class RemoteObject:
+class RemoteObject(object):
     # Token mix-in class
     pass
 
@@ -484,7 +484,7 @@
     objecttable[oid] = obj
     return RemoteProxy(oid)
 
-class RemoteProxy:
+class RemoteProxy(object):
 
     def __init__(self, oid):
         self.oid = oid
@@ -533,7 +533,7 @@
     def get_remote_proxy(self, oid):
         return RPCProxy(self, oid)
 
-class RPCProxy:
+class RPCProxy(object):
 
     __methods = None
     __attributes = None
@@ -549,7 +549,11 @@
             return MethodProxy(self.sockio, self.oid, name)
         if self.__attributes is None:
             self.__getattributes()
-        if not self.__attributes.has_key(name):
+        if self.__attributes.has_key(name):
+            value = self.sockio.remotecall(self.oid, '__getattribute__',
+                                           (name,), {})
+            return value
+        else:
             raise AttributeError, name
 
     def __getattributes(self):
@@ -579,7 +583,7 @@
         if not callable(attr):
             attributes[name] = 1
 
-class MethodProxy:
+class MethodProxy(object):
 
     def __init__(self, sockio, oid, name):
         self.sockio = sockio
diff --git a/Lib/idlelib/run.py b/Lib/idlelib/run.py
index 90a4692..62f4cce 100644
--- a/Lib/idlelib/run.py
+++ b/Lib/idlelib/run.py
@@ -270,7 +270,7 @@
         thread.interrupt_main()
 
 
-class Executive:
+class Executive(object):
 
     def __init__(self, rpchandler):
         self.rpchandler = rpchandler
