Updated Python CMIS library released

I’ve tagged and released a new version of cmislib, the Python CMIS client library. What’s cool about this release is that it is the first one known to work with more than one CMIS provider. Yea for interoperability! The beauty of CMIS, realized! Okay, it wasn’t that beautiful, it’s still “0.1”, and there are known issues. But I can now say the library works with both Alfresco and IBM FileNet and that’s a Good Thing.

IBM was a big help with this. Al Brown, one of the CMIS spec leads turned one of his colleagues, Jay Brown, onto cmislib. Jay called me up and asked, “If I give you access to a FileNet P8 server, can you test cmislib against it?” I was on it faster than you could say, “unittest.main()”.

I think the effort was valuable for all sides. Our little “mini plugfest” turned up issues in my client as well as both CMIS providers. Jay worked hard to chase down everything on the FileNet side. Dave Caruana chased a few down on the Alfresco side as well. Thanks to everyone for the team effort.

Anyway, give the new cmislib release a try and give me your feedback. If you want a feel for how easy it can be to work with CMIS repositories using the cmislib API, check out the documentation or dive right in. Installation is as easy as “easy_install cmislib” (easy_install instructions).

Next up is Nuxeo. Can the open source ECM vendor achieve cmislib Unit Test Greatness faster than Big Blue? We shall see!

8 comments

  1. Al Brown says:

    Jeff,

    Thank you for your help as well. The testing effort was very positive and identified a couple of interoperability issues that the tc fixed in cd06.

    Best, -Al

  2. Jens Hübel says:

    Good news Jeff!

    if you are interested to test against OpenText CMIS just leave us a message. We have a public server that you can use.

    Jens

  3. jpotts says:

    Alexey,

    Can you comment on the differences between your CMIS stack and the one provided by Apache Chemistry?

    Jeff

  4. Gary Cox says:

    I did some initial testing with cmislib, and it’s really easy to work with. One question: will it support adding an aspect to a document when it is created in Alfresco? I only saw the ability to set properties.

    Thanks! It’s great that this library is out there.

  5. jpotts says:

    Hello, Gary. Nice meeting you at DevCon. CMIS doesn’t know anything about aspects, and the library tries to be as close to the spec as possible. So, the cmislib API itself doesn’t have a call like, “addAspect”. However, as you probably know, Alfresco has rule actions as well as behaviors, which are two things you could use to add an aspect when an object is created or updated by CMIS.

    I’ve seen the Alfresco form service automatically add aspects to objects when properties that belong to those aspects are set on an object. I haven’t tested to see if this is universal behavior or just form service behavior (actually, I think AVM web forms do this as well).

    Somehow, Alfresco has implemented aspect support via CMIS through CMIS policies. But I haven’t played with that yet.

    Long story, short: cmislib isn’t doing anything special to deal with aspects, but the underlying repo might be, and you might be able to do what you’re trying to do through policies.

    Jeff

Comments are closed.