Mailing List Archive

ExtFile/ExtImage compatibility with Zope 4/5?
I am getting ready to migrate to Zope 4, and checking products I depends
massively on ExtFile/ExtImage. I wonder about the support of that
product or something similar.

Where are third-party Zope products hosted nowadays?

If this product is not supported/abandoned in Zope 4/5, would be people
interested in a fork maintained by me?

Could I ask here questions about "the modern way" of writing products
for current Zope? If not, who/where should I ask?

Thanks.

--
Jes?s Cea Avi?n _/_/ _/_/_/ _/_/_/
jcea@jcea.es - https://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/
Twitter: @jcea _/_/ _/_/ _/_/_/_/_/
jabber / xmpp:jcea@jabber.org _/_/ _/_/ _/_/ _/_/ _/_/
"Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
"My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz
Re: ExtFile/ExtImage compatibility with Zope 4/5? [ In reply to ]
Hey Jesus,

I will write a more extensive e-mail tomorrow, but as a starter...

Most Zope plugins are hosted now at https://github.com/zopefoundation

The best place to ask questions about Zope is the discussion board at https://community.plone.org/

Best,
J?rgen


________________________________
Von: Zope <zope-bounces@zope.org> im Auftrag von Jesus Cea <jcea@jcea.es>
Gesendet: Montag, 29. M?rz 2021 17:04
An: zope@zope.org Users <zope@zope.org>
Betreff: [Zope] ExtFile/ExtImage compatibility with Zope 4/5?

I am getting ready to migrate to Zope 4, and checking products I depends
massively on ExtFile/ExtImage. I wonder about the support of that
product or something similar.

Where are third-party Zope products hosted nowadays?

If this product is not supported/abandoned in Zope 4/5, would be people
interested in a fork maintained by me?

Could I ask here questions about "the modern way" of writing products
for current Zope? If not, who/where should I ask?

Thanks.

--
Jes?s Cea Avi?n _/_/ _/_/_/ _/_/_/
jcea@jcea.es - https://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/
Twitter: @jcea _/_/ _/_/ _/_/_/_/_/
jabber / xmpp:jcea@jabber.org _/_/ _/_/ _/_/ _/_/ _/_/
"Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
"My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz
Re: ExtFile/ExtImage compatibility with Zope 4/5? [ In reply to ]
Hi Jesus,

I don’t know anything about ExtFile/ExtImage specifically, the only reference I was able to find is from old.zope.org and no one has touched it since 2007. It looks like there is no support.

The product will need to be repackaged as an egg or wheel first, otherwise you won’t be able to start any real compatibility testing. Zope 4 does not allow you to just unzip a product inside a products folder anymore.

Most products only need minor modifications once they are repackaged. How to do this repackaging is a general Python packaging question, I suggest you just look at Zope products that are compatible, e.g. https://github.com/zopefoundation/Products.PluginRegistry, to get an idea.

Zope products are hosted where all other Python packages are hosted: pypi.org.

jens


> On 29. Mar 2021, at 17:04 , Jesus Cea <jcea@jcea.es> wrote:
>
> Signed PGP part
> I am getting ready to migrate to Zope 4, and checking products I depends massively on ExtFile/ExtImage. I wonder about the support of that product or something similar.
>
> Where are third-party Zope products hosted nowadays?
>
> If this product is not supported/abandoned in Zope 4/5, would be people interested in a fork maintained by me?
>
> Could I ask here questions about "the modern way" of writing products for current Zope? If not, who/where should I ask?
>
> Thanks.
>
> --
> Jesús Cea Avión _/_/ _/_/_/ _/_/_/
> jcea@jcea.es - https://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/
> Twitter: @jcea _/_/ _/_/ _/_/_/_/_/
> jabber / xmpp:jcea@jabber.org _/_/ _/_/ _/_/ _/_/ _/_/
> "Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
> "My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
> "El amor es poner tu felicidad en la felicidad de otro" - Leibniz
>
>
>
Re: ExtFile/ExtImage compatibility with Zope 4/5? [ In reply to ]
> On 29. Mar 2021, at 17:52 , Jürgen Gmach <juergen.gmach@apis.de> wrote:
>
>
> Most Zope plugins are hosted now at https://github.com/zopefoundation


To prevent confusion: Code and collaboration tools for development are hosted on github.com. The installable packages are hosted on pypi.org.

jens
Re: ExtFile/ExtImage compatibility with Zope 4/5? [ In reply to ]
On 29/3/21 18:04, Jens Vagelpohl wrote:
> I don’t know anything about ExtFile/ExtImage specifically, the only reference I was able to find is from old.zope.org and no one has touched it since 2007. It looks like there is no support.

Now the problem is... licensing. The project seems dead for 15 years but
I don't see a license files in
<https://old.zope.org/Members/shh/ExtFile/>. The readme says ZPL, but
not version is listed. Is ZPL still a thing?

The original old code in
<https://old.zope.org/Members/MacGregor/ExtFile/> seems to have a
MIT-like license.

> The product will need to be repackaged as an egg or wheel first, otherwise you won’t be able to start any real compatibility testing. Zope 4 does not allow you to just unzip a product inside a products folder anymore
>
> Most products only need minor modifications once they are repackaged. How to do this repackaging is a general Python packaging question, I suggest you just look at Zope products that are compatible, e.g. https://github.com/zopefoundation/Products.PluginRegistry, to get an idea.

That is useful. Thanks.

> Zope products are hosted where all other Python packages are hosted: pypi.org.

Understood.

--
Jesús Cea Avión _/_/ _/_/_/
_/_/_/
jcea@jcea.es - https://www.jcea.es/ _/_/ _/_/ _/_/ _/_/ _/_/
Twitter: @jcea _/_/ _/_/ _/_/_/_/_/
jabber / xmpp:jcea@jabber.org _/_/ _/_/ _/_/ _/_/ _/_/
"Things are not so easy" _/_/ _/_/ _/_/ _/_/ _/_/ _/_/
"My name is Dump, Core Dump" _/_/_/ _/_/_/ _/_/ _/_/
"El amor es poner tu felicidad en la felicidad de otro" - Leibniz
Re: ExtFile/ExtImage compatibility with Zope 4/5? [ In reply to ]
Hi Jesus,

> On 29. Mar 2021, at 19:45 , Jesus Cea <jcea@jcea.es> wrote:
>
> On 29/3/21 18:04, Jens Vagelpohl wrote:
>> I don’t know anything about ExtFile/ExtImage specifically, the only reference I was able to find is from old.zope.org and no one has touched it since 2007. It looks like there is no support.
>
> Now the problem is... licensing. The project seems dead for 15 years but I don't see a license files in <https://old.zope.org/Members/shh/ExtFile/>. The readme says ZPL, but not version is listed. Is ZPL still a thing?
>
> The original old code in <https://old.zope.org/Members/MacGregor/ExtFile/> seems to have a MIT-like license.

The last release (2.0.2) claims that the license is a ZPL, which is definitely “still a thing”. All 350+ packages in the zopefoundation GitHub organization are licensed under the ZPL, which is still an OSI-certified open source license. The current version is 2.1.

The main issue I see in ExtFile is the lack of documentation how the license and copyright switch was done. In order to be considered for inclusion in the zopefoundation organization projects - if that’s your goal - some proof like a written statement of agreement to the license and copyright change from Gregor would be mandatory, and then written proof that Stefan Holek agrees to transfer copyright to the Plone Foundation. The rest, like the lack of an actual license file, is cosmetics and easily fixed.

If those hurdles are too high no one can prevent you from creating a private fork and distributing it yourself, as long as you abide by the existing copyright and licensing provisions.

jens
Re: ExtFile/ExtImage compatibility with Zope 4/5? [ In reply to ]
Hi Jes?s,

> I am getting ready to migrate to Zope 4, and checking products I depends
> massively on ExtFile/ExtImage. I wonder about the support of that
> product or something similar.

I also inherited a Zope app, and successfully migrated it to Zope 4/5.

I guess I do not have to tell you the general way how to migrate an app to Python 3 (pyupgrade, six...).

So, some Zope specifics.

Zope 4 is a transition version, between Zope 2 (Python 2) and Zope 5 (Python 3), as Zope 4 both supports Python 2 and 3.

As you already did, it is important to catalog all your used plugins and check whether they are still supported, can be replaced by core functionality or another plugin, or even need to be ported to Zope 4.

My inherited legacy app even had two similar plugins to your ExtFile one, namely ExternalFile and LocalFS - both have no successors.

I could replace LocalFS entirely with Zope core functionality, in this case with resourceDirectory ( https://docs.plone.org/adapt-and-extend/theming/templates_css/resourcefolders.html ).

ExternalFile was rewritten from scratch, and now is only like 20 lines, which read a file from the file system and just return it to the browser.

So, no clue whether one or the other solution would fit your usecase.


When you want to work on the migration yourself, have a look at the docs...

https://zope.readthedocs.io/en/latest/migrations/zope4/index.html#

Generally, it is best to upgrade to the latest version 2 of Zope, first, before trying to update to Zope 4.

Michael, one of the core maintainers, gave a talk at EuroPython about a successful Zope migraton: https://www.youtube.com/watch?v=O-xSmvQwPHY

https://community.plone.org
Just for completion, if you need commercial support, you can post here: https://community.plone.org/c/jobs/38


And as already mentioned, https://community.plone.org is a good place to ask questions. This mailing list is super low volume.

Best,
J?rgen