#3244 closed task (fixed)

Switch away from using nevow

Reported by: habnabit Owned by: habnabit
Priority: normal Milestone: Support Python 3
Component: website Version: n/a
Keywords: Cc:
Launchpad Bug:

Description (last modified by sajith)

As part of the effort of porting to python 3, moving the web code away from nevow is the simplest option, since nevow won't be updated (and the code is using old parts of nevow anyway) but twisted.web is already compatible with python 3. twisted.web.template already does most of what the templates used in nevow in the first place.

Since nevow and twisted.web interoperate enough, this port can be done piecemeal at the granularity of one template per ticket/PR.

  • #3245: allmydata.web.introweb
  • #3246: allmydata.web.info
  • #3247: allmydata.web.storage
  • #3252: allmydata.web.directory
    • #3263: manifest (part of "directory")
    • #3381: DeepSizeResults
  • #3254: allmydata.web.status
    • #3287: allmydata.web.status.UploadStatusPage
    • #3288: allmydata.web.status.DownloadStatusPage
    • #3289: allmydata.web.status.PublishStatusPage
    • #3290: allmydata.web.status.RetrieveStatusPage
    • #3291: allmydata.web.status.MapupdateStatusPage
    • #3292: allmydata.web.status.Statistics
    • #3293: allmydata.web.status.HelperStatus
  • #3257: allmydata.web.root.URIHandler
  • #3305: allmydata.web.root.Root
  • #3432: Replace Nevow imports in tests with Twisted's equivalents
    • allmydata.test.test_checker
    • allmydata.test.web.test_storage_web
    • allmydata.test.web.test_token
    • allmydata.test.web.test_web
  • #3392: allmydata.test.common_web.WebRenderingMixin
  • #3393: allmydata.web._nevow_106
  • allmydata.web.operations
    • #3313: allmydata.web.operations.OphandleTable
    • #3315: allmydata.web.operations.ReloadMixin
  • allmydata.web.common
    • #3382: allmydata.web.common.MultiFormatPage
    • #3436: Remove unused web.common.getxmlfile()
  • #3316: allmydata.web.check_results
  • import of nevow.url
    • #3314: nevow.url in in web.filenode
    • nevow.url in web.operations
    • nevow.url in web.unlinked
  • #3433: allmydata.webish
  • #3434: static/tahoe.py
  • #3435: misc/build_helpers/show-tool-versions.py
  • #3420: Twisted web Resources should do "return ErrorPage" instead of "raise WebError"
  • #3428: twisted.web.resource.Resource subclasses should not return Deferreds

These were formerly part of the web UI, but they are no longer in use, and so probably not relevant to porting:

  • misc/operations_helpers/provisioning/provisioning.py
  • misc/operations_helpers/provisioning/run.py
  • misc/operations_helpers/provisioning/test_provisioning.py
  • misc/operations_helpers/provisioning/web_reliability.py

Change History (23)

comment:1 Changed at 2019-08-19T17:06:59Z by habnabit

Last edited at 2019-08-19T17:07:54Z by habnabit (previous) (diff)

comment:2 Changed at 2019-08-19T17:07:41Z by habnabit

  • Description modified (diff)
  • Status changed from new to assigned

comment:3 Changed at 2019-08-19T17:17:01Z by habnabit

  • Description modified (diff)

comment:4 Changed at 2019-08-22T23:08:26Z by meejah

  • Description modified (diff)

comment:5 Changed at 2019-08-27T01:46:04Z by meejah

  • Description modified (diff)

comment:6 Changed at 2019-09-24T19:45:33Z by meejah

  • Description modified (diff)

comment:7 Changed at 2019-11-05T08:11:51Z by meejah

  • Description modified (diff)

comment:8 Changed at 2020-04-27T14:47:28Z by sajith

  • Description modified (diff)

comment:9 Changed at 2020-05-23T11:13:32Z by sajith

  • Description modified (diff)

comment:10 Changed at 2020-06-02T13:58:03Z by sajith

  • Description modified (diff)

comment:11 Changed at 2020-06-04T01:45:44Z by sajith

  • Description modified (diff)

comment:12 Changed at 2020-07-21T19:41:51Z by sajith

  • Description modified (diff)

comment:13 Changed at 2020-07-21T19:42:33Z by sajith

  • Description modified (diff)

comment:14 Changed at 2020-08-18T12:34:45Z by sajith

  • Description modified (diff)

comment:15 Changed at 2020-08-18T12:35:11Z by sajith

  • Description modified (diff)

comment:16 Changed at 2020-08-18T12:46:10Z by sajith

  • Description modified (diff)

comment:17 Changed at 2020-08-22T20:43:47Z by sajith

  • Description modified (diff)

comment:18 Changed at 2020-08-22T21:17:22Z by sajith

  • Description modified (diff)

comment:19 Changed at 2020-09-17T21:02:10Z by sajith

  • Description modified (diff)

comment:20 Changed at 2020-09-22T18:50:39Z by sajith

  • Description modified (diff)

comment:21 Changed at 2020-09-22T21:21:40Z by sajith

  • Description modified (diff)

comment:22 Changed at 2020-09-23T01:02:49Z by sajith

  • Description modified (diff)

comment:23 Changed at 2022-03-22T20:07:10Z by exarkun

  • Resolution set to fixed
  • Status changed from assigned to closed

All of the work to actually stop depending on Nevow was completed a while ago. There is one more open ticket linked from this one but it is an optional improvement. Tahoe-LAFS does not actually use or depend on Nevow anymore.

Note: See TracTickets for help on using tickets.