Zope icon indicating copy to clipboard operation
Zope copied to clipboard

Enhance docs to explain how to create a Zope2 app

Open Rudd-O opened this issue 9 years ago • 8 comments
trafficstars

The docs at readthedocs.io basically only mention how to get Zope2 to work, but nothing else.

They do not mention what to learn / know / how to write an egg that I can load in Zope2 and have it work, say, as an addable content type, or as a view registration, or as a traversal adapter, and so on, and so forth.

I propose that the documentation gain that information, or pointers to where that information may be obtained.

Rudd-O avatar Sep 29 '16 06:09 Rudd-O

The docs should also explain where to find / how to construct or get the wsgi-runnable application callable that accepts the standard (environ, start_response) argument pair.

petri avatar Sep 29 '17 11:09 petri

The missing WSGI documentation has been added at https://zope.readthedocs.io

dataflake avatar Apr 22 '19 18:04 dataflake

@dataflake Do you think this issue can be closed now?

icemac avatar May 06 '19 12:05 icemac

Once I finish chapter 4 of the Zope Dev guide, the very next topic to be revised is "5. Zope Products" / https://zope.readthedocs.io/en/latest/zdgbook/Products.html.

The current state already explains how to create a distributable package (tar.gz).

I'd plan to also explain how to create a proper package for PyPi - but this would be quite lengthy.

@icemac In your blog post https://blog.gocept.com/2017/10/24/zope4-errorhandling/ you mention PasteScript as an easy way to create a product/package. I did not know this one. It looks great, but also no longer properly maintained. Do you think I should include it in the above mentioned "Chapter 5. Zope Products"?

jugmac00 avatar May 06 '19 12:05 jugmac00

Well, I was asking myself the same question if this can be closed. But even if you point someone to the different documentation sources we have (until Jürgen cleans it up) there's still large areas that are uncovered. I don't think we have any documentation for registering views, for example. Or how to package a product for eggification. (The OP also talks about traversal adapters, but that's far out of scope for base documentation)

dataflake avatar May 06 '19 13:05 dataflake

Jürgen Gmach wrote at 2019-5-6 05:51 -0700:

Once I finish chapter 4 of the Zope Dev guide, the very next topic to be revised is "5. Zope Products" / https://zope.readthedocs.io/en/latest/zdgbook/Products.html.

The current state already explains how to create a distributable package (tar.gz).

Nowadays, one would likely use Python packaging tools (such as e.g. "setuptools") to create a distributable package.

I'd plan to also explain how to create a proper package for PyPi - but this would be quite lengthy.

Refer to the Python packaging guide (--> "https://packaging.python.org/"). Even for documentation, there is no need to reinvent the wheel.

Besides, just note the Zope peculiarities:

  • Products should be a "namespace" package

  • a package can be registered as a "Zope product" (--> "five:registerProduct")

  • initialize in the products main module.

@icemac In your blog post https://blog.gocept.com/2017/10/24/zope4-errorhandling/ you mention PasteScript as an easy way to create a product/package. I did not know this one. It looks great, but also no longer properly maintained. Do you think I should include it in the above mentioned "Chapter 5. Zope Products"?

That might be even better than the use of standard Python packaging tools.

d-maurer avatar May 06 '19 16:05 d-maurer

I was using PasteScript in the blog post so I did not have to show all the steps to get to an installable Python package. I'd not recommend it in the Zope documentation. cookiecutter seems to be a maintained alternative nowadays. But I do not have used it, yet.

icemac avatar May 09 '19 13:05 icemac

Removed the milestone. This is a bigger item and just pushing it from one milestone to the next isn't going to help anything.

dataflake avatar Sep 02 '19 17:09 dataflake