Compare commits

..

21 Commits

Author SHA1 Message Date
MaksimZhukov
30a06d5828 Merge pull request #71 from actions/v-mazhuk/add-test-workflow
Add a new workflow to test Python versions
2020-12-16 09:23:36 +03:00
MaksimZhukov
d3614793c0 Add a new workflow to test Python versions 2020-12-15 17:31:08 +03:00
MaksimZhukov
fab0879a3d Merge pull request #70 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 12/15/2020
2020-12-15 11:48:07 +03:00
Service account
105a61d2c8 Update versions-manifest 2020-12-15 08:12:39 +00:00
MaksimZhukov
9515b3b32a Merge pull request #68 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 12/10/2020
2020-12-10 12:53:39 +03:00
Service account
597694ec77 Update versions-manifest 2020-12-10 09:25:34 +00:00
MaksimZhukov
a6b76b25b6 Merge pull request #69 from actions/v-mazhuk/fix-python-3.10
Update the list of modules in tests for Python 3.10
2020-12-10 12:05:36 +03:00
MaksimZhukov
3a4a0fd269 Update the list of modules in tests for Python 3.10 2020-12-10 11:45:28 +03:00
MaksimZhukov
c4836579b7 Merge pull request #65 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 11/27/2020
2020-11-30 13:33:41 +03:00
Service account
ed01c1359f Update versions-manifest 2020-11-27 08:24:08 +00:00
MaksimZhukov
650a155a9a Merge pull request #66 from dmitry-shibanov/v-dmshib/fix-StrictVersion
Replace StrictVersion to LooseVersion
2020-11-25 19:14:54 +03:00
Dmitry Shibanov
28d23216d1 Update python-config-test.py 2020-11-24 22:41:59 +03:00
MaksimZhukov
6468490367 Merge pull request #64 from actions/v-mazhuk/fix-powerhell-issue-with-paths
Fix PowerShell issue with relative paths
2020-11-23 17:35:28 +03:00
MaksimZhukov
4be9a4cca1 Update overwriteExistingFiles input 2020-11-23 16:47:07 +03:00
MaksimZhukov
89a619f4b9 Fix PowerShell issue with relative paths 2020-11-23 13:29:46 +03:00
MaksimZhukov
ac42875cb8 Merge pull request #63 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 11/09/2020
2020-11-09 16:00:27 +03:00
Service account
280f63ac35 Update versions-manifest 2020-11-09 12:34:15 +00:00
MaksimZhukov
f85839ce0d Merge pull request #62 from actions/update-versions-manifest-file
[versions-manifest] Update for release from 11/04/2020
2020-11-06 09:35:07 +03:00
Service account
594273ac16 Update versions-manifest 2020-11-04 17:39:24 +00:00
MaksimZhukov
bc57fd3c5f Merge pull request #59 from actions/update-versions-manifest-file
[versions-manifest] Build main Python versions with 1.1 version of openssl
2020-10-29 15:51:35 +03:00
Service account
a887886318 Update versions-manifest 2020-10-29 08:58:36 +00:00
11 changed files with 573 additions and 203 deletions

View File

@@ -0,0 +1,34 @@
name: Test Python version
on:
workflow_dispatch:
inputs:
version:
description: 'Python version to build'
required: true
architecture:
description: 'The target architecture (x86, x64) of the Python'
required: false
default: 'x64'
jobs:
test-python:
name: Test Python ${{ github.event.inputs.version }} ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-latest, windows-latest, ubuntu-18.04, ubuntu-20.04]
steps:
- name: Setup Python ${{ github.event.inputs.version }}
uses: actions/setup-python@main
with:
python-version: ${{ github.event.inputs.version }}
architecture: ${{ github.event.inputs.architecture }}
- name: Validate version
run: |
python --version
shell: pwsh
- name: Run simple code
run: python -c 'import math; print(math.factorial(5))'

View File

@@ -7,7 +7,17 @@ jobs:
steps:
- checkout: self
submodules: true
# We need this temporary step to have a consistent version of PowerShell on all images.
- task: PowerShell@2
displayName: 'Update PowerShell version for macOS'
condition: eq(variables['Platform'], 'darwin')
inputs:
TargetType: inline
script: |
brew update
brew cask upgrade powershell
- task: PowerShell@2
displayName: 'Build Python $(VERSION)'
inputs:

View File

@@ -27,6 +27,7 @@ jobs:
archiveFilePatterns: '$(Build.BinariesDirectory)/python-$(VERSION)-$(Platform)-$(Architecture).*'
destinationFolder: $(Build.BinariesDirectory)
cleanDestinationFolder: false
overwriteExistingFiles: true
- task: PowerShell@2
displayName: 'Apply build artifact to the local machines'

View File

@@ -1,6 +1,6 @@
using module "./builders/win-python-builder.psm1"
using module "./builders/ubuntu-python-builder.psm1"
using module "./builders/macos-python-builder.psm1"
using module "./win-python-builder.psm1"
using module "./ubuntu-python-builder.psm1"
using module "./macos-python-builder.psm1"
<#
.SYNOPSIS

View File

@@ -1,4 +1,4 @@
using module "./builders/nix-python-builder.psm1"
using module "./nix-python-builder.psm1"
class macOSPythonBuilder : NixPythonBuilder {
<#

View File

@@ -1,4 +1,4 @@
using module "./builders/python-builder.psm1"
using module "./python-builder.psm1"
class NixPythonBuilder : PythonBuilder {
<#

View File

@@ -1,4 +1,4 @@
using module "./builders/nix-python-builder.psm1"
using module "./nix-python-builder.psm1"
class UbuntuPythonBuilder : NixPythonBuilder {
<#

View File

@@ -1,4 +1,4 @@
using module "./builders/python-builder.psm1"
using module "./python-builder.psm1"
class WinPythonBuilder : PythonBuilder {
<#

View File

@@ -1,5 +1,5 @@
import distutils.sysconfig
from distutils.version import StrictVersion
from distutils.version import LooseVersion
import sysconfig
import sys
import platform
@@ -43,7 +43,7 @@ else:
### Validate macOS
if os_type == 'Darwin':
### Validate openssl links
if StrictVersion(nativeVersion) < StrictVersion("3.7.0"):
if LooseVersion(nativeVersion) < LooseVersion("3.7.0"):
expected_ldflags = '-L/usr/local/opt/openssl@1.1/lib'
ldflags = sysconfig.get_config_var('LDFLAGS')

View File

@@ -256,9 +256,10 @@ if sys.version_info > (3, 7):
if sys.version_info > (3, 8):
standard_library.remove('dummy_threading')
# 'symbol' module has been removed from Python 3.10
# 'symbol' and 'formatter' modules have been removed from Python 3.10
if sys.version_info >= (3, 10):
standard_library.remove('symbol')
standard_library.remove('formatter')
# Remove tkinter and Easter eggs
excluded_modules = [
@@ -270,7 +271,6 @@ excluded_modules = [
def check_missing_modules(expected_modules):
missing = []
for module in expected_modules:
print('Try to import module ', module)
try:
importlib.import_module(module)
except:

File diff suppressed because it is too large Load Diff