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

Release 1.1.0 #3484

Merged
merged 70 commits into from
Nov 30, 2023
Merged
Show file tree
Hide file tree
Changes from 27 commits
Commits
Show all changes
70 commits
Select commit Hold shift + click to select a range
283a54d
minor cleanup
st-pasha Nov 13, 2023
87d8fe3
Add python3.12 for appveyor
st-pasha Nov 13, 2023
a6caf4d
Add py3.12 into build matrix
st-pasha Nov 14, 2023
8fb9f0a
add std::regex_constants to the list of known symbols
st-pasha Nov 14, 2023
40179a8
update version.txt
st-pasha Nov 14, 2023
a46cdc4
update gh.py
st-pasha Nov 14, 2023
27320b4
update release notes
st-pasha Nov 14, 2023
ff0106a
Create the list of contributors
st-pasha Nov 14, 2023
9a2bbfb
update quickstart
st-pasha Nov 14, 2023
3c96a22
another attempt
st-pasha Nov 16, 2023
34e3aa2
Try to build with a GitHub Action
st-pasha Nov 16, 2023
6efa6f2
fix syntax errors
st-pasha Nov 16, 2023
ee71e30
add extra msvc path candidate
st-pasha Nov 16, 2023
634d2eb
expand logic for finding MSVC
st-pasha Nov 16, 2023
57e0240
add git fetch
st-pasha Nov 16, 2023
8b2d9dd
remove depth limit
st-pasha Nov 16, 2023
e6bee01
try origin/main
st-pasha Nov 16, 2023
4d46a35
try more paths
st-pasha Nov 16, 2023
f675802
specify pat to MSVC
st-pasha Nov 16, 2023
1d0a94f
try some more
st-pasha Nov 16, 2023
399609d
print msvc dir
st-pasha Nov 16, 2023
b950b2b
show github context
st-pasha Nov 16, 2023
f6a589a
better search for cl.exe
st-pasha Nov 16, 2023
0a64dd8
use Optional
st-pasha Nov 16, 2023
51031c5
fix environment vars script
st-pasha Nov 16, 2023
68c0577
format compiler.py
st-pasha Nov 16, 2023
2399a37
fix get_thread_ids() function for 3.12
st-pasha Nov 16, 2023
f248a8c
fix segfault when emitting log messages from fread
st-pasha Nov 21, 2023
e02bb55
Fix bad tests for Ftrl/Linear Model
st-pasha Nov 21, 2023
8e0c6b1
Fix crash in dt_linearmodel
st-pasha Nov 21, 2023
49e56f6
fix pandas-related tests
st-pasha Nov 21, 2023
3b0ac4f
minor
st-pasha Nov 21, 2023
d3ba320
disable MSVC warning
st-pasha Nov 21, 2023
1547cf7
Update release notes
st-pasha Nov 21, 2023
1e50a35
More reliable WinSDK detection on Windows
st-pasha Nov 28, 2023
1757944
Fix crash when exporting to Arrow
st-pasha Nov 28, 2023
4a3020c
fix a compiler warning
st-pasha Nov 28, 2023
e4d4dd0
Separate setup from build jobs
st-pasha Nov 28, 2023
680e562
add a checkout step
st-pasha Nov 28, 2023
3a367e6
fix typo
st-pasha Nov 28, 2023
202d754
minor
st-pasha Nov 28, 2023
edeed0f
print environment variables in build script
st-pasha Nov 28, 2023
9ce818a
move env
st-pasha Nov 28, 2023
4813a2d
Use Optional instead of `|None`
st-pasha Nov 28, 2023
5ccf6d0
split into more steps
st-pasha Nov 28, 2023
ab1cf6b
try to fix msvc pragma
st-pasha Nov 28, 2023
dcf2629
Remove Appveyor script
st-pasha Nov 28, 2023
b8198cc
Fix build script
st-pasha Nov 28, 2023
3a13023
Added steps for building on python 3.10 and 3.11
st-pasha Nov 28, 2023
d0cc5cb
restore __pragma
st-pasha Nov 28, 2023
16b9231
update step names
st-pasha Nov 28, 2023
4884989
Add a linux and macos steps
st-pasha Nov 28, 2023
a1a09c7
disable macos step for now
st-pasha Nov 28, 2023
a4014f2
add more build steps for macos
st-pasha Nov 28, 2023
c82fca3
Remove PPC64 from Jenkinsfile
st-pasha Nov 28, 2023
28ce5e0
Use actions/upload-artifact@v3
st-pasha Nov 28, 2023
954cf50
temporily enable macos-311
st-pasha Nov 28, 2023
a376cab
Add all steps for linux
st-pasha Nov 28, 2023
358ef17
prevent crash when converting to arrow
st-pasha Nov 29, 2023
645d4b6
rename the build script
st-pasha Nov 29, 2023
7a37908
build sdist step
st-pasha Nov 29, 2023
382deee
build with audit on linux
st-pasha Nov 29, 2023
bfbf647
remove Jenkins build file
st-pasha Nov 29, 2023
624bf06
Update the changelog
st-pasha Nov 29, 2023
e96d0de
Enable all build branches
st-pasha Nov 29, 2023
a68126b
quote python versions
st-pasha Nov 29, 2023
bb564d6
Use github version of auditwheel on python3.12
st-pasha Nov 29, 2023
e2e6ac4
Disable windows-3.12 build for now
st-pasha Nov 29, 2023
7da5a90
rename CHANGE_BRANCH -> DT_CHANGE_BRANCH
st-pasha Nov 29, 2023
6949182
Provide DT_CHANGE_BRANCH in the build script
st-pasha Nov 29, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 85 additions & 0 deletions .github/workflows/build-and-test-windows.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
name: Build and test wheels on Windows

on:
push:
branches:
- main
- /^rel\-*/
pull_request:
branches:
- main

jobs:
build:
runs-on: windows-latest

env:
DT_HARNESS: GitHub
DT_BUILD_ID: ${{ github.run_id }}
DT_BUILD_NUMBER: ''
DT_BUILD_SUFFIX: ''
DT_RELEASE: ''
DT_MSVC_PATH: C:\Program Files\Microsoft Visual Studio\2022\Enterprise

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Fetch remote branch
run: |
git fetch origin main

- name: Prepare environment variables
run: |
echo "DT_BUILD_ID=$((git rev-list --count origin/main) - 1)" >> $env:GITHUB_ENV
if ($env:GITHUB_EVENT_NAME -eq 'pull_request') {
if ($env:GITHUB_HEAD_REF -match '^rel-') {
echo "DT_RELEASE=True" >> $env:GITHUB_ENV
} else {
echo "DT_BUILD_SUFFIX=PR$($env:GITHUB_EVENT_NUMBER).$env:DT_BUILD_ID" >> $env:GITHUB_ENV
}
} elseif ($env:GITHUB_REF -eq 'refs/heads/main') {
echo "DT_BUILD_NUMBER=$env:DT_BUILD_ID" >> $env:GITHUB_ENV
} elseif ($env:GITHUB_REF -match '^refs/heads/rel-') {
echo "DT_RELEASE=True" >> $env:GITHUB_ENV
} else {
echo "DT_BUILD_SUFFIX=$env:GITHUB_REF.$env:DT_BUILD_ID" >> $env:GITHUB_ENV
}

- name: Print environment
run: |
echo "GITHUB_EVENT_NAME = $env:GITHUB_EVENT_NAME"
echo "GITHUB_EVENT_NUMBER = $env:GITHUB_EVENT_NUMBER"
echo "GITHUB_REF = $env:GITHUB_REF"
echo "GITHUB_HEAD_REF = $env:GITHUB_HEAD_REF"
echo "DT_HARNESS = $env:DT_HARNESS"
echo "DT_BUILD_ID = $env:DT_BUILD_ID"
echo "DT_RELEASE = $env:DT_RELEASE"
echo "DT_BUILD_SUFFIX = $env:DT_BUILD_SUFFIX"
echo "DT_BUILD_NUMBER = $env:DT_BUILD_NUMBER"

- name: Set up Python 3.8
uses: actions/setup-python@v3
with:
python-version: 3.8

- name: Build datatable wheel
run: |
python -V
python -m pip install --upgrade pip
python ci/ext.py wheel
echo "DT_WHEEL=$(ls dist/*-cp38-*.whl)" >> $env:GITHUB_ENV
echo "DT_WHEEL = $env:DT_WHEEL"

- name: Print build information
run: |
cat src/datatable/_build_info.py

- name: Install and test
run: |
python -m pip install $env:DT_WHEEL
python -m pip install pytest docutils pandas pyarrow
python -m pytest -ra --maxfail=10 -Werror -vv --showlocals ./tests/

- name: Uninstall wheel
run: python -m pip uninstall -y $env:DT_WHEEL
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@

# datatable

[![Gitter chat](https://badges.gitter.im/h2oai/datatable.png)](https://gitter.im/h2oai/datatable)
[![PyPi version](https://img.shields.io/pypi/v/datatable.svg)](https://pypi.org/project/datatable/)
[![License](https://img.shields.io/pypi/l/datatable.svg)](https://github.com/h2oai/datatable/blob/main/LICENSE)
[![Build Status](https://travis-ci.org/h2oai/datatable.svg?branch=main)](https://travis-ci.org/h2oai/datatable)
Expand Down
2 changes: 1 addition & 1 deletion VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
1.1.0a
1.1.0
23 changes: 23 additions & 0 deletions ci/Jenkinsfile.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -256,12 +256,14 @@ ansiColor('xterm') {
/opt/python/cp39-cp39/bin/python3.9 ci/ext.py wheel --audit && \
/opt/python/cp310-cp310/bin/python3.10 ci/ext.py wheel --audit && \
/opt/python/cp311-cp311/bin/python3.11 ci/ext.py wheel --audit && \
/opt/python/cp312-cp312/bin/python3.12 ci/ext.py wheel --audit && \
echo '===== Py3.8 Debug =====' && unzip -p dist/*debug*.whl datatable/_build_info.py && \
mv dist/*debug*.whl . && \
echo '===== Py3.8 =====' && unzip -p dist/*cp38*.whl datatable/_build_info.py && \
echo '===== Py3.9 =====' && unzip -p dist/*cp39*.whl datatable/_build_info.py && \
echo '===== Py3.10 =====' && unzip -p dist/*cp310*.whl datatable/_build_info.py && \
echo '===== Py3.11 =====' && unzip -p dist/*cp311*.whl datatable/_build_info.py && \
echo '===== Py3.12 =====' && unzip -p dist/*cp312*.whl datatable/_build_info.py && \
mv *debug*.whl dist/ && \
ls -la dist"
"""
Expand Down Expand Up @@ -296,10 +298,14 @@ ansiColor('xterm') {
source /Users/jenkins/datatable_envs/py311/bin/activate
python ci/ext.py wheel
deactivate
source /Users/jenkins/datatable_envs/py312/bin/activate
python ci/ext.py wheel
deactivate
echo '===== Py3.8 =====' && unzip -p dist/*cp38*.whl datatable/_build_info.py
echo '===== Py3.9 =====' && unzip -p dist/*cp39*.whl datatable/_build_info.py
echo '===== Py3.10 =====' && unzip -p dist/*cp310*.whl datatable/_build_info.py
echo '===== Py3.11 =====' && unzip -p dist/*cp311*.whl datatable/_build_info.py
echo '===== Py3.12 =====' && unzip -p dist/*cp312*.whl datatable/_build_info.py
ls dist
"""
stash name: 'x86_64-macos-wheels', includes: "dist/*.whl"
Expand Down Expand Up @@ -340,12 +346,14 @@ ansiColor('xterm') {
/opt/python/cp39-cp39/bin/python3.9 ci/ext.py wheel --audit && \
/opt/python/cp310-cp310/bin/python3.10 ci/ext.py wheel --audit && \
/opt/python/cp311-cp311/bin/python3.11 ci/ext.py wheel --audit && \
/opt/python/cp312-cp312/bin/python3.12 ci/ext.py wheel --audit && \
echo '===== Py3.8 Debug =====' && unzip -p dist/*debug*.whl datatable/_build_info.py && \
mv dist/*debug*.whl . && \
echo '===== Py3.8 =====' && unzip -p dist/*cp38*.whl datatable/_build_info.py && \
echo '===== Py3.9 =====' && unzip -p dist/*cp39*.whl datatable/_build_info.py && \
echo '===== Py3.10 =====' && unzip -p dist/*cp310*.whl datatable/_build_info.py && \
echo '===== Py3.11 =====' && unzip -p dist/*cp311*.whl datatable/_build_info.py && \
echo '===== Py3.12 =====' && unzip -p dist/*cp312*.whl datatable/_build_info.py && \
mv *debug*.whl dist/ && \
ls -la dist"
"""
Expand Down Expand Up @@ -435,6 +443,20 @@ ansiColor('xterm') {
}
}
}) <<
namedStage('Test x86_64-manylinux-py312', { stageName, stageDir ->
node(NODE_LINUX) {
buildSummary.stageWithSummary(stageName, stageDir) {
cleanWs()
dumpInfo()
dir(stageDir) {
unstash 'datatable-sources'
unstash 'x86_64-manylinux-wheels'
test_in_docker("x86_64-manylinux-py312", "312",
DOCKER_IMAGE_X86_64_MANYLINUX)
}
}
}
}) <<
namedStage('Test ppc64le-manylinux-py38-debug', doPpcTests && doPy38Tests, { stageName, stageDir ->
node(NODE_PPC) {
buildSummary.stageWithSummary(stageName, stageDir) {
Expand Down Expand Up @@ -779,6 +801,7 @@ def get_python_for_docker(String pyver, String image) {
if (pyver == "39") return "/opt/python/cp39-cp39/bin/python3.9"
if (pyver == "310") return "/opt/python/cp310-cp310/bin/python3.10"
if (pyver == "311") return "/opt/python/cp311-cp311/bin/python3.11"
if (pyver == "312") return "/opt/python/cp312-cp312/bin/python3.12"
}
throw new Exception("Unknown python ${pyver} for docker ${image}")
}
Expand Down
35 changes: 35 additions & 0 deletions ci/appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,8 @@ build_script:

$DEFAULT_PATH = $env:PATH

git fetch --depth=10 origin main

$MAIN_BUILD_ID = git rev-list --count main


Expand Down Expand Up @@ -351,3 +353,36 @@ build_script:

python -m pip uninstall -y $DT_WHEEL



# =======================================================================
# Build and test wheel for Python 3.12
# =======================================================================

$env:PATH = "C:/Python312-x64;C:/Python312-x64/Scripts;$DEFAULT_PATH"

python -V

python ci/ext.py wheel

$DT_WHEEL = ls dist/*-cp312-*.whl

echo "DT_WHEEL = $DT_WHEEL"

echo "----- _build_info.py for Python 3.12 ------------------------------"

cat src/datatable/_build_info.py

echo "------------------------------------------------------------------"

python -m pip install --upgrade pip

python -m pip install $DT_WHEEL

python -m pip install pytest docutils pandas pyarrow

python -m pytest -ra --maxfail=10 -Werror -vv --showlocals ./tests/

if(!$?) { Exit $LASTEXITCODE }

python -m pip uninstall -y $DT_WHEEL
2 changes: 1 addition & 1 deletion ci/gh.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ def connect(auth=None):
if not token:
token = getpass.getpass("Enter your GitHub access token: ")
try:
g = github.Github(token, "")
g = github.Github(auth=github.Auth.Token(token))
g.rate_limiting
except BadCredentialsException:
print("Invalid token, please try again")
Expand Down
1 change: 1 addition & 0 deletions ci/headers.py
Original file line number Diff line number Diff line change
Expand Up @@ -267,6 +267,7 @@
"std::realloc": ["cstdlib"],
"std::recursive_mutex": ["mutex"],
"std::regex": ["regex"],
"std::regex_constants": ["regex"],
"std::regex_error": ["regex"],
"std::regex_match": ["regex"],
"std::remove_all_extents": ["type_traits"],
Expand Down
Loading
Loading