Ticket #9322 (closed PLIP: wontfix)

Opened 7 years ago

Last modified 5 years ago

Ensure that Plone 4 can upgrade Zope on Windows and Mac OS X via binary eggs

Reported by: limi Owned by: dreamcatcher
Priority: major Milestone: 4.x
Component: Installers Version:
Keywords: Cc: plip-advisories@…, grahamperrin@…

Description (last modified by limi) (diff)

Proposer: Alexander Limi
Seconder: Steve McMahon

Motivation

With Plone 3.2, Plone took an important step into the buildout/eggs based setup world. This makes it possible to upgrade from Plone 3.2 to e.g. 3.3 by changing a single line in the configuration, and re-running buildout.

The one remaining problem is that we can't upgrade Zope in this manner, since it's not eggified, and doesn't have any binary eggs.

With Zope 2.12 (as suggested in PLIP #8808), we finally have a fully eggified Zope release, and we should take special care to make sure it's possible to upgrade the Unified installers even if it involves a new version of Zope, and even if you have no local C compiler available.

Assumptions

The binary eggs are only assumed to be needed on Mac OS X and Windows. Binary eggs are not easy on Linux, and they already have a culture of compiling software — the Unified installer for Linux and other unices does not ship with any binaries today.

Proposal & Implementation

This is mostly a meta-PLIP to make sure that this is tracked and tested — in theory, it should Just Work™, but it requires some cooperation from the Zope release manager to make sure that Windows and Mac OS X binary eggs are always made available, and sufficient upgrade testing on both platforms.

Deliverables

  • Documentation on the Unified Installer, how the new capabilities work
  • A repeatable, reliable way to get Windows and Mac OS X binary eggs of every Zope release going forward.

Risks

The risks are mostly related to not getting binary eggs published on the Zope side of things, but since they already produce Windows installers, and the release manager at the moment is on Mac OS X, this should hopefully be manageable. I assume that the Zope people are interested in simplifying their install story on Windows / OS X too.

Participants

Steve McMahon has volunteered to shepherd this.

Progress

Most of the work is already done in the Unified Installer, this PLIP is mostly about coordinating with the Zope release manager + test the upgrades extensively.

Change History

comment:1 Changed 7 years ago by limi

  • Priority changed from minor to n/a

comment:2 Changed 7 years ago by limi

  • Description modified (diff)

comment:3 Changed 7 years ago by limi

  • Description modified (diff)

comment:4 Changed 7 years ago by davisagli

+1

comment:5 Changed 7 years ago by erikrose

  • Owner smcmahon deleted

Clearing Owner field of 4.0 PLIPs so we can use it to mean "implementor". (Many of these owners were automatically assigned from choosing a Component that had a default owner.)

comment:6 Changed 7 years ago by alecm

  • Owner set to smcmahon

+1

comment:7 Changed 7 years ago by smcmahon

  • Cc plip-advisories@… added

comment:8 Changed 7 years ago by MatthewWilkes

I don't think this is a PLIP, it's simply a requirement of the installers.

/me jumps through the hoop

FWT Vote: +1

comment:9 Changed 7 years ago by rossp

I'm really not sure how we could ever get to release candidate without windows installers as a part of the release process, so yeah, of course. So why is this a PLIP? We have enough PLIPs as it is. :) Can we make this another type of ticket?

comment:10 Changed 7 years ago by calvinhp

FWT Vote: +1 Is there a place that these types of requirements are documented? A kind of Business Requirements for Plone?

comment:11 Changed 7 years ago by limi

I think it should definitely be tracked as a PLIP, the whole point is that this isn't possible to do right now, and is new functionality that needs to be tested and kept in shape as a critical part of the release, IMO. Sounds like a PLIP to me. :)

comment:12 Changed 7 years ago by esteele

Approved by FWT vote.

comment:13 Changed 7 years ago by smcmahon

  • Status changed from new to assigned

I'm taking the assignment as a responsibility to track this and coordinate the installer part.

comment:14 Changed 7 years ago by grahamperrin

  • Cc grahamperrin@… added

comment:15 Changed 6 years ago by smcmahon

  • Priority changed from n/a to major

comment:16 Changed 6 years ago by davisagli

We should also consider whether it's possible and worth the effort to provide both 32-bit and 64-bit eggs for Windows. As hannosch notes in #9523, this is probably going to be difficult.

comment:17 Changed 6 years ago by hannosch

Steve, what's the status of this? Was this ever implemented or do we need to reschedule for 4.1? Windows binary eggs for everything are available. For Mac OS we don't provide binary eggs, as there's too many platform differences that can cause problems with Apple provided Python vs. self-compiled vs. MacPorts (the UCS-2 vs. UCS-4 problem and the fact that eggs don't differentiate on them).

comment:18 Changed 6 years ago by smcmahon

  • Owner changed from smcmahon to dreamcatcher
  • Status changed from assigned to new
  • Milestone changed from 4.0 to 4.x

I've reassigned this to Sidnei, to see what he can do with it. It would be great if the Windows installer gained the ability to upgrade (without reinstalling) due to the availability of Zope binary eggs.

But, Hanno is right about the situation on OS X (and any other *nix environment). Binary eggs just aren't practical there.

comment:19 Changed 5 years ago by rossp

  • Status changed from new to closed
  • Resolution set to wontfix

PLEASE READ THIS AND RE-OPEN VALID PLIPS!

As we launch the new PLIP process we'd like to see which PLIPs:

  • are still appropriate/needed
  • still have owners/proposers/champions
  • still have available implementers

If this PLIP should still be considered for future releases of Plone please do re-open this ticket and assign an appropriate milestone. If it should be considered for the next release of Plone, use the 4.2 milestone. Also be sure to update the PLIP description, requester, owner, etc. and include a comment detailing recent progress and new plans. We will use all these details in the new continuous PLIP process.

Note: See TracTickets for help on using tickets.