Ticket #11308 (closed PLIP: fixed)

Opened 5 years ago

Last modified 5 years ago

Ship lxml with installers

Reported by: ldr Owned by: smcmahon
Priority: minor Milestone: 4.2
Component: Installers Version:
Keywords: Cc: smcmahon

Description

Proposer: Laurence Rowe
Seconder: Steve McMahon

Motivation

Upcoming Plone technologies Diazo (XDV) and Deco require the lxml library. This can be quite tricky to build, so to ease adoption we should ship lxml with the installers as we do for PIL.

Assumptions

This proposal only covers shipping lxml with the installers. Including lxml as a dependency of Plone will be considered later.

Proposal & Implementation

  • For the Windows installer, this just means shipping the lxml binary egg.
  • For the Mac OS X installer, a binary, static lxml egg should be built against the shipped version of python. Options include z3c.recipe.staticlxml and the  --static-deps option to setup.py.
  • For the universal installer we should probably also build statically. So long as the specified libxml2/libxslt versions are put in the libs subdirectory of the lxml distribution then no network access is required.

Deliverables

  • Documentation of specific lxml version shipped with installers
  • Changes to installers

Risks

  • Statically built lxml may be incompatible with dynamic python-libxml2 bindings.

Participants

  • Laurence Rowe
  • Steve McMahon

Progress

Discussed in FWT call.

Change History

comment:1 Changed 5 years ago by esteele

  • Milestone changed from 4.1 to Future

comment:2 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.

comment:3 Changed 5 years ago by smcmahon

  • Status changed from closed to reopened
  • Resolution wontfix deleted
  • Milestone changed from Future to 4.2

This is something we just failed to get done in 4.1, but there are no significant barriers to implementation. It's really just a matter of Sidnei and I getting in sync.

This, by the way is something that's really all about the binary installers -- Windows & OS X. It's not so big a problem on *nix.

comment:4 Changed 5 years ago by eleddy

Approved by fWT for 4.2. elro will be your FWT correspondent. Go go go!

comment:5 Changed 5 years ago by smcmahon

(In [50148]) Add static-build lxml with option to skip. Refs #11308

comment:6 Changed 5 years ago by ldr

As the staticlxml recipe is being used, we will want to pin the lxml version to the latest release, 2.3 by adding a line "egg = lxml==${versions:lxml}" to the section and pinning to 2.3 in the versions.cfg.

comment:7 Changed 5 years ago by smcmahon

OK, will do so in the next iteration. The installer for RC3 is at 2.2.8

comment:8 Changed 5 years ago by smcmahon

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

Fixed in 4.1

Note: See TracTickets for help on using tickets.