1

At my work we create hardware which we support for 10+ years. As part of the release and diagnosis of that hardware we use a lot of test software. It would be great if all the software we write had the same longevity of the hardware.

We recently began using python 3.4 under Linux to develop our code. This is an upgrade from our old language, powerbasic running on DOS.

10+ years into the future, we need to be able to:

  • Build a new station with all the same functionality as what we can build now
  • Run all the code we've written
  • Make small bug-fixes to the code

The concerns we have are:

  • The Linux OS we're using (ubuntu 14.04) will upgrade away some functionality and break our code.
  • Some python package we're using will upgrade and become incompatible or otherwise cease to be available

We've looked into a few options. cx_freeze looks like the most promising one, though it packages compiled files and not source code, making small bug fixes a hassle (either we'd need to re-freeze the fixed code, which might not run on a 10-year-old machine, or we'd need to compile the relevant files and incorporate them into the cx_freeze zip folder).

Is there a better way? Are there any other situations we need to worry about?

Dave
  • 123
  • 6
  • 1
    [This](http://stackoverflow.com/questions/679949/how-do-you-continue-to-develope-large-long-term-software-systems-with-legacy-a) question was slightly relevant – Dave Feb 13 '15 at 02:17
  • If I understand, you are talking about building in-house stations, rather than distributing to customers. This question might be better suited for python-list, accessible as gmane.comp.python.general at news.gmane.org. I suspect someone will suggest using virtualenv or venv, but I have not used either. – Terry Jan Reedy Feb 13 '15 at 03:40

0 Answers0