Protocol RevisionsΒΆ
Conary’s internal XMLRPC API uses numbered revisions to negotiate which protocol will be used for client-server communications.
Both clients and servers are expected to maintain system update functionality with reasonable forward- and backwards-compatibility indefinitely, so that clients can always update to the latest version.
- Version 73:
- Added ‘resumeOffset’ arg to getChangeSet
- Added ‘extra’ dictionary to return value from getChangeset. extra may contain a ‘resumeOffset’ key indicating how many bytes were skipped in the response changeset. extra may contain a ‘tag’ key holding an opaque checksum of the changeset.
- Version 72:
- added getRoleFilters, setRoleFilters
- Version 71:
- corrected accidental use of X-Conary-UsedAnonymous as an error flag
- Version 70:
- added getDepsForTroveList, getTimestamps
- Version 69:
- added getCommitProgress
- prepareChangeset() returns a tuple of url, supportsGetCommitProgress (because the call is not supported on standalone repositories)
- Version 68:
- added getFileContentsCapsuleInfo
- Version 67:
- added getFileContentsFromTrove
- Version 66:
- added getLabelsForHost
- Version 65:
- getTroveInfo and getNewTroveInfo calls filter extended metadata from results for older clients
- Version 64:
- getTroveInfo call understands CLONEDFROMLIST troveInfo
- Version 63:
- added calls addRoleMember and getRoleMembers
- Version 62:
- added xmlrpc api call commitCheck()
- getPackageBranchPathIds now passes on a list of dirnames instead of filePrefixes
- Version 61:
- The following methods have been renamed for consistency: addAccessGroup -> addRole addEntitlementGroup -> addEntitlementClass addEntitlementOwnerAcl -> addEntitlementClassOwner addEntitlements -> addEntitlementKeys deleteAccessGroup -> deleteRole deleteEntitlementGroup -> deleteEntitlementClass deleteEntitlementOwnerAcl -> deleteEntitlementClassOwner deleteEntitlements -> deleteEntitlementKeys getEntitlementClassAccessGroup -> getEntitlementClassesRoles getUserGroups -> getRoles listAccessGroups -> listRoles listEntitlementGroups -> listEntitlementClasses listEntitlements -> listEntitlementKeys setEntitlementClassAccessGroup -> setEntitlementClassesRoles setUserGroupCanMirror -> setRoleCanMirror setUserGroupIsAdmin -> setRoleIsAdmin updateAccessGroupMembers -> updateRoleMembers
- Version 60:
- server side support for setUserGroupIsAdmin
- addAcl and editAcl cannot be used for setting the admin flag anymore
- fixed keyword arguments to work through proxy
- don’t include useAnonymous in return values
- return exception details as (exceptName, args, kwwargs) insteace of (exceptName,) + args
- Version 51:
- getChangeSet supports infoOnly parameter
- parameters are passed as (args, kwArgs) instead of individually
- Version 50:
- getChangeSet keeps (troveNeeded, filesNeeded, troveRemoved) information separate for each element of the job list
- Version 49:
- added mirrorMode to getChangeSet and getFingerprints which forces files to be included in changesets whenever the changeset is across hosts
- Version 48: Conary 1.1.25
- Added extra argument to getChangeSet to force the creation of a specific changeset version.
- Version 47:
- Added getNewTroveInfo and setTroveInfo
- added addMetadataItems call
- Version 46:
- Added hidden flag to commitChangeSet and hasTroves call (only allowed for users with mirror or write permissions, respectively) and the presentHiddenTroves() call which requires write permissions
- Version 45:
- addDigitalSignature takes a VersionedSignatureSet object. This call is incompatible between versions 43 and 44 of the protocol (though this could be addressed, to a limited extent).
- indicates that the repository can store V1 signatures and unknown troveinfo
- Version 44:
- added support for decoding “chunked” Transfer-encoding requests from clients
- added support for obtaining sizes of changesets > 2 GiB via the getChangeSet() and getFileContents() calls. The sizes are now returned as strings instead of ints.
- Version 43:
- added getTroveReferences call.
- added getTroveDescendants call
- switched to fileId,pathId indexed changesets (changeset 2007022001)
- added getChangesetFingerprints call (not exposed in netclient)
- getTroveInfo now advertises troves as missing instead of raising PermissionDenied
- Version 42: Conary 1.1.17
- Client uses negotiated protocol version
- getFileContents has authOnly parameter
- Version 41: Conary 1.1.16
- Added getTroveInfo call [proxy requires at least this version]