Skip to content

feat: support arrow large utf8 string format #63

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

Merged
merged 14 commits into from
Feb 27, 2024
Merged
30 changes: 23 additions & 7 deletions ci/pip_install_deps.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,19 +3,28 @@
import shlex
import textwrap
import platform
import argparse


arg_parser = argparse.ArgumentParser(
prog='pip_install_deps.py',
description='installs dependencies'
)

arg_parser.add_argument('--pandasVersion')

class UnsupportedDependency(Exception):
pass


def pip_install(package):
def pip_install(package, version=None):
args = [
sys.executable,
'-m', 'pip', 'install',
'--upgrade',
'--only-binary', ':all:',
package]
package if version is None else f'{package}=={version}'
]
args_s = ' '.join(shlex.quote(arg) for arg in args)
sys.stderr.write(args_s + '\n')
res = subprocess.run(
Expand All @@ -35,9 +44,9 @@ def pip_install(package):
sys.exit(res.returncode)


def try_pip_install(package):
def try_pip_install(package, version=None):
try:
pip_install(package)
pip_install(package, version)
except UnsupportedDependency as e:
msg = textwrap.indent(str(e), ' ' * 8)
sys.stderr.write(f' Ignored unsatisfiable dependency:\n{msg}\n')
Expand All @@ -52,12 +61,18 @@ def ensure_timezone():
pip_install('pytz')


def main():
def main(args):
ensure_timezone()
pip_install('pip')
pip_install('setuptools')
try_pip_install('fastparquet>=2023.10.1')
try_pip_install('pandas')

print(f"DEBUG: {args}, pandas: {args.pandasVersion}")

if args.pandasVersion is not None and args.pandasVersion != '':
try_pip_install('pandas', args.pandasVersion)
else:
try_pip_install('pandas')
try_pip_install('numpy')
try_pip_install('pyarrow')

Expand All @@ -80,4 +95,5 @@ def main():


if __name__ == "__main__":
main()
args = arg_parser.parse_args()
main(args)
17 changes: 13 additions & 4 deletions ci/run_tests_pipeline.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@ stages:
linux:
imageName: "ubuntu-latest"
poolName: "Azure Pipelines"
linux-old-pandas:
imageName: "ubuntu-latest"
poolName: "Azure Pipelines"
pandasVersion: "2.1.4"
linux-qdb-master:
imageName: "ubuntu-latest"
poolName: "Azure Pipelines"
Expand All @@ -31,11 +35,16 @@ stages:
lfs: false
submodules: true
- task: UsePythonVersion@0
- script: python3 --version
- script: |
python3 --version
python3 -m pip install cython
python3 ci/pip_install_deps.py
displayName: Installing Python dependencies
displayName: "Install cython"
- script: python3 ci/pip_install_deps.py
displayName: "Install pandas latest"
condition: eq(variables.pandasVersion, '')
- script: python3 ci/pip_install_deps.py --pandasVersion==$(pandasVersion)
displayName: "Install pandas older"
condition: ne(variables.pandasVersion, '')
- script: python3 proj.py build
displayName: "Build"
- script: |
Expand All @@ -47,7 +56,7 @@ stages:
inputs:
mavenPOMFile: 'questdb/pom.xml'
jdkVersionOption: '1.11'
options: "install -DskipTests -Pbuild-web-console"
options: "-DskipTests -Pbuild-web-console"
condition: eq(variables.vsQuestDbMaster, true)
- script: python3 proj.py test 1
displayName: "Test vs released"
Expand Down
Loading