ZTK (Zope Toolkit)<\/a>\u00a0is no longer used in any of the projects using packages of it (Zope, Grok, Bluebream \u2013 as it is dead). It should be kept to test compatibility between the packages inside the ZTK.<\/p>\n","protected":false},"excerpt":{"rendered":"Now we\u00a0are helping\u00a0Zope in the Python 3 wonderland:\u00a0Almost 20 people started with the reanimation of Zope. We are working mostly on porting important dependencies of Zope to Python 3: RestrictedPython In the discussion we found out that the through the web (TTW) approach needs to be kept in Zope because it is needed by software … Continue reading “Zope Resurrection Part 1 \u2013 Reanimation”<\/span><\/a><\/p>\n","protected":false},"author":15344399,"featured_media":1751,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_newsletter_tier_id":0,"footnotes":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[10221],"tags":[5784,1158,196,832,581,6,72208],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/09\/img_2583-1.jpg?fit=3093%2C1740&ssl=1","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/pFP3y-rE","jetpack-related-posts":[{"id":2407,"url":"https:\/\/blog.gocept.com\/2017\/05\/05\/zope-2-resurrection-sprint-goal-accomplished\/","url_meta":{"origin":1714,"position":0},"title":"Zope 2 Resurrection Sprint \u2013 Goal accomplished","author":"Michael Howitz","date":"May 5, 2017","format":false,"excerpt":"The sprint days were really busy for\u00a0Earl Zope II\u00a0and the people helping him with the Python 3 wonderland immigration authorities. Zope can be installed using Python 3 can be started and renders some views has more than 1.700 of more than 2.300 tests running has some\u00a0optional dependencies left to be\u2026","rel":"","context":"In "en"","block_context":{"text":"en","link":"https:\/\/blog.gocept.com\/category\/en\/"},"img":{"alt_text":"Many screens","src":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2017\/05\/img_20170503_183916-e1493991770316.jpg?fit=1200%2C943&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2017\/05\/img_20170503_183916-e1493991770316.jpg?fit=1200%2C943&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2017\/05\/img_20170503_183916-e1493991770316.jpg?fit=1200%2C943&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2017\/05\/img_20170503_183916-e1493991770316.jpg?fit=1200%2C943&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2017\/05\/img_20170503_183916-e1493991770316.jpg?fit=1200%2C943&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1752,"url":"https:\/\/blog.gocept.com\/2016\/10\/04\/zope-resurrection-part-2-defibrillation\/","url_meta":{"origin":1714,"position":1},"title":"Zope Resurrection Part 2 \u2013 Defibrillation","author":"Michael Howitz","date":"October 4, 2016","format":false,"excerpt":"After\u00a0reanimation\u00a0we started\u00a0defibrillation of Zope and \u2026 it kinda worked: On our\u00a0sprint we got\u00a0the following things done to help\u00a0Zope in the Python 3 wonderland: Release\u00a0zope.testbrowser 5.0\u00a0which is compatible with Python 3 and no longer uses\u00a0mechanize. PullRequest for\u00a0ExtensionClass\u00a0with the Python 3 port of the C extension. five.globalrequest\u00a0is now compatible with Python 3.\u2026","rel":"","context":"In "en"","block_context":{"text":"en","link":"https:\/\/blog.gocept.com\/category\/en\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zopesprint.jpg?fit=1200%2C709&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zopesprint.jpg?fit=1200%2C709&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zopesprint.jpg?fit=1200%2C709&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zopesprint.jpg?fit=1200%2C709&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zopesprint.jpg?fit=1200%2C709&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":1873,"url":"https:\/\/blog.gocept.com\/2016\/10\/26\/towards-restrictedpython-3\/","url_meta":{"origin":1714,"position":2},"title":"Towards RestrictedPython 3","author":"Michael Howitz","date":"October 26, 2016","format":false,"excerpt":"The biggest blocker to port Zope to Python 3 is\u00a0RestrictedPython. What is RestrictedPython? It is a library used by Zope to restrict Python code at instruction level to a bare minimum of trusted functionality. It\u00a0parses and filters the code for not\u00a0allowed constructs (such as\u00a0open()) and adds wrappers around\u00a0each access on\u2026","rel":"","context":"In "en"","block_context":{"text":"en","link":"https:\/\/blog.gocept.com\/category\/en\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zope-is-not-dead.jpg?fit=1200%2C658&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zope-is-not-dead.jpg?fit=1200%2C658&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zope-is-not-dead.jpg?fit=1200%2C658&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zope-is-not-dead.jpg?fit=1200%2C658&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2016\/10\/zope-is-not-dead.jpg?fit=1200%2C658&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":2351,"url":"https:\/\/blog.gocept.com\/2017\/05\/03\/zope-2-resurrection-sprint-day-1\/","url_meta":{"origin":1714,"position":3},"title":"Zope 2 Resurrection Sprint \u2013 Day 1","author":"Michael Howitz","date":"May 3, 2017","format":false,"excerpt":"Welcome to the\u00a0Zope 2 Resurrection Sprint in Halle (Saale), Germany. We hope you enjoyed the time since the\u00a0Last call for take off to the Python 3 wonderland. We already achieved some things: Zope 4 no longer depends on\u00a0sourcecodegen\u00a0which was one of Zope's dependencies Earl Zope II\u00a0had to leave behind for\u2026","rel":"","context":"In "en"","block_context":{"text":"en","link":"https:\/\/blog.gocept.com\/category\/en\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":3312,"url":"https:\/\/blog.gocept.com\/2019\/05\/10\/celebration-zope-4-final-release\/","url_meta":{"origin":1714,"position":4},"title":"Celebration: Zope 4 final release","author":"Michael Howitz","date":"May 10, 2019","format":false,"excerpt":"TL;DR: Zope 4 beta phase ended, final version released! After hard, long years of preparation Earl Zope now finally made it to get a permanent license for the Python 3 wonderland: In September 2016 almost 20 people started with the reanimation of Zope at the Zope Resurrection sprint. This marked\u2026","rel":"","context":"In "en"","block_context":{"text":"en","link":"https:\/\/blog.gocept.com\/category\/en\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/fireworks-945386_1920.jpg?fit=1200%2C800&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/fireworks-945386_1920.jpg?fit=1200%2C800&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/fireworks-945386_1920.jpg?fit=1200%2C800&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/fireworks-945386_1920.jpg?fit=1200%2C800&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/fireworks-945386_1920.jpg?fit=1200%2C800&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":3306,"url":"https:\/\/blog.gocept.com\/2019\/05\/10\/zope-roadmap\/","url_meta":{"origin":1714,"position":5},"title":"Zope roadmap","author":"Michael Howitz","date":"May 10, 2019","format":false,"excerpt":"Zope 4 is the successor of Zope 2.13 supporting both Python 2.7 and Python 3. After the release of its final version 4.0: Zope 2.13 will drop into \"security fixes only\" mode. It will stay in this mode as long as there is a supported Plone version using Zope 2.13:\u2026","rel":"","context":"In "en"","block_context":{"text":"en","link":"https:\/\/blog.gocept.com\/category\/en\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/abend-amerika-ausflug-844167.jpg?fit=1200%2C772&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/abend-amerika-ausflug-844167.jpg?fit=1200%2C772&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/abend-amerika-ausflug-844167.jpg?fit=1200%2C772&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/abend-amerika-ausflug-844167.jpg?fit=1200%2C772&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/blog.gocept.com\/wp-content\/uploads\/2019\/05\/abend-amerika-ausflug-844167.jpg?fit=1200%2C772&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"_links":{"self":[{"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/posts\/1714"}],"collection":[{"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/users\/15344399"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/comments?post=1714"}],"version-history":[{"count":25,"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/posts\/1714\/revisions"}],"predecessor-version":[{"id":1756,"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/posts\/1714\/revisions\/1756"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/media\/1751"}],"wp:attachment":[{"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/media?parent=1714"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/categories?post=1714"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.gocept.com\/wp-json\/wp\/v2\/tags?post=1714"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}