Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Removal of VMS support #60340

Closed
jcea opened this issue Oct 4, 2012 · 33 comments
Closed

Removal of VMS support #60340

jcea opened this issue Oct 4, 2012 · 33 comments
Assignees
Labels
type-feature A feature request or enhancement

Comments

@jcea
Copy link
Member

jcea commented Oct 4, 2012

BPO 16136
Nosy @malemburg, @jcea, @pitrou, @vstinner, @tiran, @tpn, @asvetlov

Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

Show more details

GitHub fields:

assignee = 'https://github.com/tiran'
closed_at = <Date 2014-06-16.21:46:55.191>
created_at = <Date 2012-10-04.22:21:03.554>
labels = ['type-feature']
title = 'Removal of VMS support'
updated_at = <Date 2014-06-18.15:13:33.907>
user = 'https://github.com/jcea'

bugs.python.org fields:

activity = <Date 2014-06-18.15:13:33.907>
actor = 'jcea'
assignee = 'christian.heimes'
closed = True
closed_date = <Date 2014-06-16.21:46:55.191>
closer = 'vstinner'
components = []
creation = <Date 2012-10-04.22:21:03.554>
creator = 'jcea'
dependencies = []
files = []
hgrepos = []
issue_num = 16136
keywords = []
message_count = 33.0
messages = ['172001', '172002', '172007', '172010', '172011', '172012', '172061', '172162', '172163', '172240', '172241', '172242', '173547', '173550', '173667', '174305', '174344', '175013', '183860', '184091', '191211', '206612', '206752', '206755', '206826', '206854', '209928', '220434', '220436', '220794', '220918', '220937', '220940']
nosy_count = 11.0
nosy_names = ['lemburg', 'jcea', 'pitrou', 'vstinner', 'christian.heimes', 'trent', 'asvetlov', 'neologix', 'python-dev', 'sandman101', 'John.Malmberg']
pr_nums = []
priority = 'normal'
resolution = 'fixed'
stage = 'resolved'
status = 'closed'
superseder = None
type = 'enhancement'
url = 'https://bugs.python.org/issue16136'
versions = ['Python 3.4']

@jcea
Copy link
Member Author

jcea commented Oct 4, 2012

According to PEP-11, we have to remove VMS support.

@vstinner
Copy link
Member

vstinner commented Oct 4, 2012

Python on VMS is maybe not completly dead:
http://www.vmspython.org/History

@vstinner
Copy link
Member

vstinner commented Oct 4, 2012

@vstinner
Copy link
Member

vstinner commented Oct 4, 2012

After the blog post, Mathew, Sandeep from HP asked how to help:
http://mail.python.org/pipermail/python-dev/2011-May/111367.html

@vstinner
Copy link
Member

vstinner commented Oct 4, 2012

Another email from Mathew, Sandeep:
http://mail.python.org/pipermail/python-dev/2011-May/111382.html

@tpn
Copy link
Member

tpn commented Oct 4, 2012

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.

@neologix
Copy link
Mannequin

neologix mannequin commented Oct 5, 2012

After the blog post, Mathew, Sandeep from HP asked how to help:

It was more than a year ago.
Has something actually be done?

@jcea
Copy link
Member Author

jcea commented Oct 6, 2012

I am sending an email to Mathew Sandeep. Lets see...

@jcea
Copy link
Member Author

jcea commented Oct 6, 2012

<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.

@vstinner
Copy link
Member

vstinner commented Oct 6, 2012

I'm in contact with Sysgroup, a french company which ported Python 2 on VMS.

@pitrou
Copy link
Member

pitrou commented Oct 6, 2012

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.

@pitrou
Copy link
Member

pitrou commented Oct 6, 2012

(correction: Python 2 is already supposed to work on VMS)

@sandman101
Copy link
Mannequin

sandman101 mannequin commented Oct 22, 2012

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

@tiran
Copy link
Member

tiran commented Oct 22, 2012

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

@tiran tiran added the type-feature A feature request or enhancement label Oct 22, 2012
@tpn
Copy link
Member

tpn commented Oct 24, 2012

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.

@sandman101
Copy link
Mannequin

sandman101 mannequin commented Oct 31, 2012

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.

@tpn
Copy link
Member

tpn commented Oct 31, 2012

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.

@sandman101
Copy link
Mannequin

sandman101 mannequin commented Nov 6, 2012

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

@jcea
Copy link
Member Author

jcea commented Mar 10, 2013

Ping...

@sandman101
Copy link
Mannequin

sandman101 mannequin commented Mar 13, 2013

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\>


@jcea
Copy link
Member Author

jcea commented Jun 15, 2013

@tiran
Copy link
Member

tiran commented Dec 19, 2013

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 (bpo-16136)
Unsupported in: Python 3.3
Code removed in: Python 3.4

@python-dev
Copy link
Mannequin

python-dev mannequin commented Dec 21, 2013

New changeset 568391b3eda9 by Christian Heimes in branch 'default':
Issue bpo-16136: Remove VMS support and VMS-related code
http://hg.python.org/cpython/rev/568391b3eda9

@tiran
Copy link
Member

tiran commented Dec 21, 2013

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?

@JohnMalmberg
Copy link
Mannequin

JohnMalmberg mannequin commented Dec 22, 2013

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.

  1. 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.

@malemburg
Copy link
Member

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.

@malemburg malemburg assigned tiran and unassigned malemburg Dec 23, 2013
@JohnMalmberg
Copy link
Mannequin

JohnMalmberg mannequin commented Feb 2, 2014

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.

@python-dev
Copy link
Mannequin

python-dev mannequin commented Jun 13, 2014

New changeset 75b18ff66e41 by Victor Stinner in branch 'default':
Issue bpo-16136: VMSError is done, bye bye VMS
http://hg.python.org/cpython/rev/75b18ff66e41

@python-dev
Copy link
Mannequin

python-dev mannequin commented Jun 13, 2014

New changeset 48126f225f10 by Victor Stinner in branch '3.4':
Issue bpo-16136: VMSError is done, bye bye VMS
http://hg.python.org/cpython/rev/48126f225f10

@JohnMalmberg
Copy link
Mannequin

JohnMalmberg mannequin commented Jun 17, 2014

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.

@sandman101
Copy link
Mannequin

sandman101 mannequin commented Jun 18, 2014

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\>


@JohnMalmberg
Copy link
Mannequin

JohnMalmberg mannequin commented Jun 18, 2014

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.

@jcea
Copy link
Member Author

jcea commented Jun 18, 2014

I think this is a good plan. Legacy platforms can me maintained by interested parties as a friendly fork.

@ezio-melotti ezio-melotti transferred this issue from another repository Apr 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type-feature A feature request or enhancement
Projects
None yet
Development

No branches or pull requests

6 participants