From 330f84758e4ea4440d33b730b384853ffc471563 Mon Sep 17 00:00:00 2001
From: robk-tahoe <robk-tahoe@allmydata.com>
Date: Wed, 9 Jan 2008 19:25:38 -0700
Subject: [PATCH] add build dependencies to support py2exe's modulefinder

adds windows/depends.py as a container for modules which are needed at runtime
but which py2exe's modulefinder dependency analysis fails to find as requisites.
---
 windows/depends.py  | 13 +++++++++++++
 windows/tahoe.py    |  3 +++
 windows/tahoesvc.py |  3 +++
 3 files changed, 19 insertions(+)
 create mode 100644 windows/depends.py

diff --git a/windows/depends.py b/windows/depends.py
new file mode 100644
index 00000000..937d96be
--- /dev/null
+++ b/windows/depends.py
@@ -0,0 +1,13 @@
+
+# nevow requires all these for its voodoo module import time adaptor registrations
+from nevow import accessors, appserver, static, rend, url, util, query, i18n, flat
+from nevow import guard, stan, testutil, context
+from nevow.flat import flatmdom, flatstan, twist
+from formless import webform, processors, annotate, iformless
+from decimal import Decimal
+
+# junk to appease pyflakes's outrage at py2exe's needs
+junk = [
+    accessors, appserver, static, rend, url, util, query, i18n, flat, guard, stan, testutil,
+    context, flatmdom, flatstan, twist, webform, processors, annotate, iformless, Decimal,
+    ]
diff --git a/windows/tahoe.py b/windows/tahoe.py
index 7c5d2d0b..f7ceecda 100644
--- a/windows/tahoe.py
+++ b/windows/tahoe.py
@@ -1,2 +1,5 @@
+import depends # import dependencies so that py2exe finds them
+_junk = depends # appease pyflakes
+
 from allmydata.scripts import runner
 runner.run(install_node_control=False)
diff --git a/windows/tahoesvc.py b/windows/tahoesvc.py
index 11eebb41..64686ab1 100644
--- a/windows/tahoesvc.py
+++ b/windows/tahoesvc.py
@@ -129,6 +129,9 @@ class Tahoe(win32serviceutil.ServiceFramework):
         try:
             logmsg("main thread startup")
 
+            import depends # import dependencies so that py2exe finds them
+            _junk = depends # appease pyflakes
+
             from twisted.internet import reactor
             from twisted.python import log, logfile
             from allmydata import client
-- 
2.45.2