I went ahead and commited the code I've been working on while making the move to cred. There are a lot of failing tests (all of them are set to be skipped). But, in the spirit of open software development, and because there haven't been any commits recently, I decided to release the current progress.
So there still hasn't been a commit with the new cred transition refactoring. It has been a rather complicated process. Along the way, I have discovered some other issues as well. For instance, I'm currently wrestling with the Peer services concept. Previously, I hadn't thought about the fact that modifying bases affects all current and future instances of the class, not just the instance itself (which was my original intent). This was brought to my attention by a failing test. I'm actually not certain how the test ever passed. But now that it's failing, I'll need to rework that while I'm doing the cred switch. In essence, there isn't much to report other than I am still working on getting the next commit out the door.
I'm trying to move to using Twisted Cred and bring the perspective into perspective broker for Nessie. It's turning out to be a rather large refactoring. Because of that, I created a tag to the pre-cred code. Originally, information was shared in both directions through a single root peer object. Now, with the advent of avatars and perspectives, it's looking like information should really only flow in one direction. That is, from the authenticator to the authenticated. Or in other words, information should only flow from the server to the client. For the server to get information from the client, it needs to authenticate with the client. Thus, the server becomes a client and the client a server. (Sorry, I couldn't resist making that sound more complicated than it really is.) I think this will probably make things more secure. However, I think it's also likely that, in many cases, the server will not want to share information with an authenticated client unless the
I've been having trouble keeping a running inner-dialog posted in some sort of readable manner on the Nessie Notes page. So, I decided it's time to have a blog about Nessie. This will take the place of the activity log and I'll make some mention of that on the notes page. The intent is to keep the notes page updated and serving as a sort of informal design document. Today I read some documentation on newpb. Unfortunately, from the looks of things, newpb's support for third-party references is not going to be suitable for Nessie. At least not with some added work. Third-party references require the ability to connect directly to that third-party. That's not very P2P-like. So, although I was initially considering making the move the newpb a little early, I think I'm going to stick with oldpb instead and wait for newpb to stabilize.