Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Okay, I’m sorry. But yes. This is real.

Do you have a TTW developed Zope site? Do you really wish you didn’t? mr.tennant exposes a git remote that you can pull from and get a git repository that represents your TTW code as well as its transaction history.

Then change it.

Then push it.

Yeah.

For now it’s just utlity functions, but try:

from AccessControl.SecurityManagement import newSecurityManager
from AccessControl.SecurityManager import setSecurityPolicy
from Testing.makerequest import makerequest
from Products.CMFCore.tests.base.security import PermissiveSecurityPolicy, OmnipotentUser
import tempfile
from mr.tennant.git import dump_objects, serialise_directory, serialise_commit

_policy=PermissiveSecurityPolicy()
_oldpolicy=setSecurityPolicy(_policy)
newSecurityManager(None, OmnipotentUser().__of__(app.acl_users))
app=makerequest(app)
from mr.tennant.git import get_commits_for_history

repo = tempfile.mkdtemp()
objects, HEAD = get_commits_for_history(app.repository)
dump_objects(repo, objects, HEAD=HEAD)
print repo

When you go to the tempfolder it points you to and run ‘git reset –hard’ you’ll get a working repo with a history, containing the contents of app.repository

Release history Release notifications | RSS feed

This release

1.0a1 This release

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page