I had the following subsequent correspondence with EnterpriseDB. From: EnterpriseDB Customer Support <support@xxxxxxxxxxxxxxxx> To: <admillington@xxxxxxxxxxx> Sent: 25 Aug 2017, 10:19 AM Your concern for missing 'plpython2.dll' file from the PostgreSQL 9.6 installer(by EnterpriseDB) was redirected to the EnterpriseDB support portal by one of our Senior Principal Engineer. Regarding your queries, I would like to mention that the PostgreSQL 9.6 installer from EDB is complete and includes Python v3 within the package and the data link library file for the same is present as 'plpython3.dll' inside your lib directory (C:\Program Files\PostgreSQL\9.6\lib\plpython3.dll). Please let us know if you have any more queries in this regards. Vipul Shukla EnterpriseDB Corporation From: Alan Millington <admillington@xxxxxxxxxxx> To: EnterpriseDB Customer Support" <support@xxxxxxxxxxxxxxxx> Sent: 25 Aug 2017, 12:12 PM My question was concerning plpython2.dll, not plpython3.dll. plpython2.dll supports Python 2, and plpython3.dll supports Python 3. Python 2 and Python 3 are two different languages. They are not interchangeable. The Postgres documentation states in Chapter 43.1 (I am looking at the documentation for v. 9.5) that "PL/Python supports both the Python 2 and Python 3 language variants . . . the default Python language variant . . . is currently Python 2 . . . The default will probably be changed to Python 3 in a distant future release of PostgreSQL, depending on the progress of the migration to Python 3 in the Python community." That is a sensible policy. Some users want the new features of Python 3, and no doubt anyone starting a new system from scratch will use Python 3, but many organisations have complex systems written in Python 2, and many of them see no point in spending effort on translating their code to Python 3. Postgres distributions for other platforms (e.g. Ubuntu) include plpython2.so. From: EnterpriseDB Customer Support <support@xxxxxxxxxxxxxxxx> To: <admillington@xxxxxxxxxxx> Sent: 25 Aug 2017, 8:13 PM As per the update from our development team, we only ship and support plpython3 with our PostgreSQL installation package. We also do not plan to ship plpython2. Vipul Shukla EnterpriseDB Corporation From: Alan Millington <admillington@xxxxxxxxxxx> To: EnterpriseDB Customer Support <support@xxxxxxxxxxxxxxxx> Sent: 29 Aug 2017, 10:43 AM Thank you for that update. It leaves unanswered the question of why EnterpriseDB does not include plpython2.dll in its distribution, given the statement in the Postgres documentation that Python 2 is the default version of Python, and will remain so for the foreseeable future. From: EnterpriseDB Customer Support <support@xxxxxxxxxxxxxxxx> To: <admillington@xxxxxxxxxxx> Sent: 29 Aug 2017, 11:16 AM EnterpriseDB stopped providing support for PLPython long time ago. It is not possible to support each and every version of an extension indefinitely as it might require fixes from time to time and it is not possible. We have been supporting the latest version and we would continue to support the same in future. Also the document for Postgres was also updated to reflect the same to help customers plan the migration strategy or use plpythonu if they do not plan to migrate. Here is a excerpt from the documentation:: https://www.postgresql.org/docs/9.2/static/plpython-python23.html Existing users and users who are currently not interested in Python 3 use the language name plpythonu and don't have to change anything for the foreseeable future. It is recommended to gradually "future-proof" the code via migration to Python 2.6/2.7 to simplify the eventual migration to Python 3. In practice, many PL/Python functions will migrate to Python 3 with few or no changes. Amit Sharma EnterpriseDB Corporation That leaves me with the last question in my original post. If I try to build the library myself, would I have to build the whole of Postgres, or is is feasible to build just the library that I am missing? If the latter, which source files would I need to include in the build? -- Sent from: http://www.postgresql-archive.org/PostgreSQL-general-f1843780.html -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general