This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Removal of VMS support
Type: enhancement Stage: resolved
Components: Versions: Python 3.4
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: christian.heimes Nosy List: John.Malmberg, asvetlov, christian.heimes, jcea, lemburg, neologix, pitrou, python-dev, sandman101, trent, vstinner
Priority: normal Keywords:

Created on 2012-10-04 22:21 by jcea, last changed 2022-04-11 14:57 by admin. This issue is now closed.

Messages (33)
msg172001 - (view) Author: Jesús Cea Avión (jcea) * (Python committer) Date: 2012-10-04 22:21
According to PEP-11, we have to remove VMS support.
msg172002 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2012-10-04 22:29
Python on VMS is maybe not completly dead:
http://www.vmspython.org/History
msg172007 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2012-10-04 22:36
See also:
http://blog.python.org/2011/05/python-33-to-drop-support-for-os2.html
msg172010 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2012-10-04 22:38
After the blog post, Mathew, Sandeep from HP asked how to help:
http://mail.python.org/pipermail/python-dev/2011-May/111367.html
msg172011 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2012-10-04 22:38
Another email from Mathew, Sandeep:
http://mail.python.org/pipermail/python-dev/2011-May/111382.html
msg172012 - (view) Author: Trent Nelson (trent) * (Python committer) Date: 2012-10-04 22:40
FWIW, I have another Itanium box that I've earmarked for OpenVMS.  I don't believe the installation media is readily available for free, though, so I'd need to ping HP to try arrange a copy.
msg172061 - (view) Author: Charles-François Natali (neologix) * (Python committer) Date: 2012-10-05 08:08
> After the blog post, Mathew, Sandeep from HP asked how to help:

It was more than a year ago.
Has something actually be done?
msg172162 - (view) Author: Jesús Cea Avión (jcea) * (Python committer) Date: 2012-10-06 02:27
I am sending an email to Mathew Sandeep. Lets see...
msg172163 - (view) Author: Jesús Cea Avión (jcea) * (Python committer) Date: 2012-10-06 02:50
<sandeep.mathew@hp.com>: host smtp.hp.com[15.193.32.72] said: 550 5.1.1
    <sandeep.mathew@hp.com>: Recipient address rejected: User unknown in
    virtual alias table (in reply to RCPT TO command)

Looks like he is not in HP anymore. Searching in linkedin I think I have found him. Lets try that route.
msg172240 - (view) Author: STINNER Victor (vstinner) * (Python committer) Date: 2012-10-06 20:08
I'm in contact with Sysgroup, a french company which ported Python 2 on VMS.
msg172241 - (view) Author: Antoine Pitrou (pitrou) * (Python committer) Date: 2012-10-06 20:16
If they ported Python 2 on VMS, even though Python 2 is already supposed to work on Python 2, it means our compatibility code is broken.
msg172242 - (view) Author: Antoine Pitrou (pitrou) * (Python committer) Date: 2012-10-06 20:17
(correction: Python 2 is already supposed to work on VMS)
msg173547 - (view) Author: Sandeep Mathew (sandman101) Date: 2012-10-22 17:53
Hi ,

I love VMS very much, I could not concentrate actively on python
because other work commitments ate up most of my time. I have
left my job at HP and am now a PhD student and university of Nevada ,
Reno .  Now that I do not have any professional commitments , I should
be able to work on it in a more timely manner. I had used python for
an internal project in HP.


The problem now I have is that I need access to a VMS  machine. I was
not able to setup a build bot because buildbot needed some ports to be
open , the machine provided HP did not give privilleges to do that.
Another thing was that they wanted me to use gnv to compile python in
VMS . I however did not really agree with it , gnv is buggy and you
need to enable millions to of hacks to gets programs to compile.
Programs written for VMS should be written the VMS way not the unix
way. I was able to get Python 3.x to compile using gnv finally but it would not run properly. Is it possible for anyone to provide a VMS box with C Compiler and tools ( MMS) so that I can start working on it again. I will try asking HP , whether they would allow me to start working on it on the old VMS cluster they provided.


--Thomas
msg173550 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2012-10-22 18:18
We don't have any box that is capable of running VMS. Even Trent's Snakebit setup doesn't have VMS although he has lots of exotic hardware and OS, even HP-UX on a PA-RISC machine.

It seems to be possible to run VMS on a cluster of RaspberryPi machines [1]. The PSF might help out if you need some official contacts to acquire licenses.

[1] http://www.electronicsweekly.com/blogs/gadget-master/2012/07/raspberry-pi-emulates-vax-comp.html
msg173667 - (view) Author: Trent Nelson (trent) * (Python committer) Date: 2012-10-24 11:35
On Mon, Oct 22, 2012 at 11:18:03AM -0700, Christian Heimes wrote:
> 
> Christian Heimes added the comment:
> 
> We don't have any box that is capable of running VMS. Even Trent's
> Snakebit setup doesn't have VMS although he has lots of exotic
> hardware and OS, even HP-UX on a PA-RISC machine.

    I actually do have a box set aside for VMS.  It's a quad Itanium2
    with ~24-32GB of RAM (same hardware as the 'titanium' HP-UX box).

    I just haven't set it up yet due to lack of interest.  First thing
    I'll need is OpenVMS media/licenses.  I'll ping HP and see if they
    can assist.
msg174305 - (view) Author: Sandeep Mathew (sandman101) Date: 2012-10-31 16:02
I have asked HP for access to a VMS box so that I restart my work. I initially checked with the university to see if I can get hold of an Itanium box. 

@Trent : If you have HP - UX already running, you may make use of Hyper-V to get vms running without changing the existing the HP-UX installation.
msg174344 - (view) Author: Trent Nelson (trent) * (Python committer) Date: 2012-10-31 17:44
Ah, I forgot about the VOE stuff.  That will work a lot better.  I'll still need to acquire VMS media though.

You're not a committer are you?  I can sort you out with access to Snakebite anyway -- email me your ssh key if you're interested (trent at snakebite.org).

I'd recommend dropping by #python-dev on irc.freenode.net too.
msg175013 - (view) Author: Sandeep Mathew (sandman101) Date: 2012-11-06 22:01
Hey,
I was given access to HP's open source VMS cluster, Many thanks to HP. I should be able to continue python development for VMS. I shall ping you guys in case I get stuck. I should be good to go 

--Thomas
msg183860 - (view) Author: Jesús Cea Avión (jcea) * (Python committer) Date: 2013-03-10 02:21
Ping...
msg184091 - (view) Author: Sandeep Mathew (sandman101) Date: 2013-03-13 16:54
Sorry for late response. I got delayed , I am working on it .

Regards
Sandeep Mathew

2013/3/9 Jesús Cea Avión <report@bugs.python.org>:
>
> Jesús Cea Avión added the comment:
>
> Ping...
>
> ----------
>
> _______________________________________
> Python tracker <report@bugs.python.org>
> <http://bugs.python.org/issue16136>
> _______________________________________
msg191211 - (view) Author: Jesús Cea Avión (jcea) * (Python committer) Date: 2013-06-15 14:49
Possibly relevant:

http://www.theregister.co.uk/2013/06/10/openvms_death_notice/

http://www.openvms.org/stories.php?story=13/06/06/2422149
msg206612 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2013-12-19 13:07
Unless somebody says otherwise I'm going to remove VMS-related code over the course of the next couple of days.

PEP 11 says:
Name: VMS (issue 16136)
Unsupported in: Python 3.3
Code removed in: Python 3.4
msg206752 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2013-12-21 15:20
New changeset 568391b3eda9 by Christian Heimes in branch 'default':
Issue #16136: Remove VMS support and VMS-related code
http://hg.python.org/cpython/rev/568391b3eda9
msg206755 - (view) Author: Christian Heimes (christian.heimes) * (Python committer) Date: 2013-12-21 15:31
All VMS code has been removed except for some code in Lib/platform.py.

MAL:
Do you want to keep the code in the platform module?
msg206826 - (view) Author: John Malmberg (John.Malmberg) * Date: 2013-12-22 18:33
Access to VMS licenses and media:

1. Hobby - non-commercial applications - Free with 1 year time-bombed license keys with free media download.  A self-service mostly web based system.

http://www.openvms.org/pages.php?page=Hobbyist

Easiest way to get a membership ID is to join Encompasserve.org which is free.

Unfortunately right now, HP is in their holiday shutdown and Encompasserve.org is being relocated from Wisconsin to Massachusetts.

Both should be back available sometime in the beginning of January 2014.

2. Commercial - Company Alliance One Membership.  It is my understanding that upon acceptance to the program, 1 year time-bombed license keys are available with free.  Search for "Alliance One" on the HP site.

This has been the case for well over 10 years, so VMS programmers for open source projects should normally have no problem getting current media or license keys.

There are several free Alpha emulators now available for download.  These are less functional versions of the commercial versions of the emulator.

While there are also commercial VAX emulators that may be available, SimH VAX is free and open source.

Resources: comp.os.vms newsgroup, www.openvmshobbyist.com, sourceforge GNV and vms-ports projects, encompasserve.org, and www.openvms.org


GNV:

GNV as packaged by HP has multiple problems.  To use it at a minimum you need to install the newer Bash and Coreutils kits from the GNV sourceforge project.  Read http://sourceforge.net/p/gnv/wiki/InstallingGNVPackages/ before installing the updates.

Running configure scripts on GNV typically requires some hacks because most configure scripts test with out the header files, and on VMS, the header files are needed to get ANSI/ISO or X/Open behavior or bug-fixes.  Otherwise the tests fail.

Instructions: http://sourceforge.net/p/vms-ports/wiki/GeneratingConfigh/


As far as removing the VMS specific code, it is very likely that much of the VMS specific code is not needed for the current 8.3/8.4 versions of VMS, so it is probably better for a someone porting Python 3.x to VMS to start with clean code.

If a VMS library routine is missing or does not behave properly, it is better handled with a replacement routine than by putting #ifdef in the code.
msg206854 - (view) Author: Marc-Andre Lemburg (lemburg) * (Python committer) Date: 2013-12-23 09:41
On 21.12.2013 16:31, Christian Heimes wrote:
> 
> All VMS code has been removed except for some code in Lib/platform.py.
> 
> MAL:
> Do you want to keep the code in the platform module?

The platform.py module is intended to be usable by several Python versions,
so I think it's better to keep the code around for a little longer.
msg209928 - (view) Author: John Malmberg (John.Malmberg) * Date: 2014-02-02 00:42
Encompasserve.org is now back up.  It took a little longer than expected.

Should be no issues now in getting free hobby license keys for VMS on VAX, Alpha, and Itanium by using the web forms.
msg220434 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2014-06-13 12:56
New changeset 75b18ff66e41 by Victor Stinner in branch 'default':
Issue #16136: VMSError is done, bye bye VMS
http://hg.python.org/cpython/rev/75b18ff66e41
msg220436 - (view) Author: Roundup Robot (python-dev) (Python triager) Date: 2014-06-13 12:59
New changeset 48126f225f10 by Victor Stinner in branch '3.4':
Issue #16136: VMSError is done, bye bye VMS
http://hg.python.org/cpython/rev/48126f225f10
msg220794 - (view) Author: John Malmberg (John.Malmberg) * Date: 2014-06-17 05:31
Does not look like anything vital to VMS got removed.

Configure basically worked under current GNV.

And a few tweaks later with out changing any files checked out of the Mercurial repository, make is producing a functional python binary before it quits.

bash-4.2$ ./python notdeadyet.py
    I'm not Dead Yet, I think I'll go for a Walk
bash-4.2$ ./python
Python 3.5.0a0 (default, Jun 17 2014, 00:03:16) [C] on openvms0
Type "help", "copyright", "credits" or "license" for more information.
>>>  Exit
bash-4.2$ uname -a
OpenVMS EAGLE 0 V8.4 AlphaServer_DS10_617_MHz Alpha Alpha HP/OpenVMS

More work is needed of course, mostly adding some more libraries that Python is expecting and showing GNV how to have configure and make find them.  A lot of compile warnings need to be resolved.
msg220918 - (view) Author: Sandeep Mathew (sandman101) Date: 2014-06-18 01:52
It does build with some tweaking here and there. But I ran into runtime
issues. I am sorry, I cannot dedicate time on it further.  IMHO anything
built for VMS should use VMS specific API's in the way they are designed
for stability and performance reasons, some more code needs to be written.

Regards
Sandeep Mathew
On Tue, Jun 17, 2014 at 12:31 AM, John Malmberg <report@bugs.python.org>
wrote:

>
> John Malmberg added the comment:
>
> Does not look like anything vital to VMS got removed.
>
> Configure basically worked under current GNV.
>
> And a few tweaks later with out changing any files checked out of the
> Mercurial repository, make is producing a functional python binary before
> it quits.
>
> bash-4.2$ ./python notdeadyet.py
>     I'm not Dead Yet, I think I'll go for a Walk
> bash-4.2$ ./python
> Python 3.5.0a0 (default, Jun 17 2014, 00:03:16) [C] on openvms0
> Type "help", "copyright", "credits" or "license" for more information.
> >>>  Exit
> bash-4.2$ uname -a
> OpenVMS EAGLE 0 V8.4 AlphaServer_DS10_617_MHz Alpha Alpha HP/OpenVMS
>
> More work is needed of course, mostly adding some more libraries that
> Python is expecting and showing GNV how to have configure and make find
> them.  A lot of compile warnings need to be resolved.
>
> ----------
>
> _______________________________________
> Python tracker <report@bugs.python.org>
> <http://bugs.python.org/issue16136>
> _______________________________________
>
msg220937 - (view) Author: John Malmberg (John.Malmberg) * Date: 2014-06-18 12:51
Most of the issues needed to build python3 properly on VMS involve either bugs in the VMS C API that need to be worked around or missing libraries that Python3 expects to have.

As none of the Python developers should need to care about this, and these issues are common to ports of other VMS projects, I plan to do the following unless someone objects:

1. Create a new issue tracker here to document what it takes to attempt build the in development branch of Python on VMS, and try keep it up to date with significant issues found.

2. Create a mercurial repository on the vms-ports sourceforge site that contains the additional VMS specific files that are needed to build the in development branch.  I will also create a VMS specific discussion there about the more detailed status of the port progress.

3. Where cases are actually found where the issue is in python, such as posixmodule.c overriding the configure files to assume fork is present when configure detected it was not, a ticket here will be filed.

If someone then shows up inquiring at the status of VMS, then they can be pointed at that new ticket.
msg220940 - (view) Author: Jesús Cea Avión (jcea) * (Python committer) Date: 2014-06-18 15:13
I think this is a good plan. Legacy platforms can me maintained by interested parties as a friendly fork.
History
Date User Action Args
2022-04-11 14:57:36adminsetgithub: 60340
2014-06-18 15:13:33jceasetmessages: + msg220940
2014-06-18 12:51:43John.Malmbergsetmessages: + msg220937
2014-06-18 01:52:24sandman101setmessages: + msg220918
2014-06-17 05:31:39John.Malmbergsetmessages: + msg220794
2014-06-16 21:46:55vstinnersetstatus: open -> closed
2014-06-13 12:59:04python-devsetmessages: + msg220436
2014-06-13 12:56:08python-devsetmessages: + msg220434
2014-02-02 00:42:50John.Malmbergsetmessages: + msg209928
2013-12-23 09:42:31lemburgsetassignee: lemburg -> christian.heimes
2013-12-23 09:41:56lemburgsetmessages: + msg206854
2013-12-22 18:33:19John.Malmbergsetstatus: pending -> open
nosy: + John.Malmberg
messages: + msg206826

2013-12-21 15:31:31christian.heimessetstatus: open -> pending

assignee: lemburg

nosy: + lemburg
messages: + msg206755
resolution: fixed
stage: resolved
2013-12-21 15:20:16python-devsetnosy: + python-dev
messages: + msg206752
2013-12-19 13:07:28christian.heimessetmessages: + msg206612
2013-06-15 14:49:10jceasetmessages: + msg191211
2013-03-13 16:54:25sandman101setmessages: + msg184091
2013-03-10 02:21:05jceasetmessages: + msg183860
2012-11-06 22:01:34sandman101setmessages: + msg175013
2012-10-31 17:44:33trentsetmessages: + msg174344
2012-10-31 16:02:31sandman101setmessages: + msg174305
2012-10-24 11:35:45trentsetmessages: + msg173667
2012-10-22 18:18:03christian.heimessettype: enhancement
messages: + msg173550
2012-10-22 18:13:29christian.heimessetnosy: + christian.heimes
2012-10-22 17:53:07sandman101setnosy: + sandman101
messages: + msg173547
2012-10-07 12:24:23asvetlovsetnosy: + asvetlov
2012-10-06 20:17:13pitrousetmessages: + msg172242
2012-10-06 20:16:48pitrousetnosy: + pitrou
messages: + msg172241
2012-10-06 20:08:27vstinnersetmessages: + msg172240
2012-10-06 02:50:08jceasetmessages: + msg172163
2012-10-06 02:27:58jceasetmessages: + msg172162
2012-10-05 08:08:01neologixsetnosy: + neologix
messages: + msg172061
2012-10-04 22:40:51trentsetnosy: + trent
messages: + msg172012
2012-10-04 22:38:32vstinnersetmessages: + msg172011
2012-10-04 22:38:00vstinnersetmessages: + msg172010
2012-10-04 22:36:38vstinnersetmessages: + msg172007
2012-10-04 22:29:17vstinnersetnosy: + vstinner
messages: + msg172002
2012-10-04 22:21:03jceacreate