We just had (the first day of) an LSB face-to-face meeting today , where Python was discussed. I started with presenting my slides, and stated what I see as main goals:
- Allow Python scripts to run unmodified across Linux distributions - Optional: Allow extension modules to be used in binary form across distributions - Optional: Allow extension modules to be used in binary form across distributions
During the discussion, Robert Schweikert proposed another goal, from the view of a proprietary software vendor:
- Allow .pyc files to run unmodified across Linux distributions
The discussion evolved around backwards compatibility. I'll start separate threads for these; here is the summary: - LSB attempts to guarantee backwards compatibility with previous versions (starting with 4.0; currently, 3.2 is targeted). Linux distributions implementing future LSB versions should be backwards-compatible with previous LSB versions. - Removal of features can only occur after three major LSB releases; this means all features will stay for about 6 years - If LSB integrated a specific version now, that version will have to be supported by vendors for those 6 years - given that the Python ABI changes frequently over time, this makes standardization of the ABI difficult - even for API (i.e. library interfaces), backwards-compatibility would be difficult: for those packages/classes/modules/functions that become part of the LSB API, stability would be desirable.