From 8430cec7c36a949fc67a4c4ec2da870d8e513fd3 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Mon, 15 Jul 2024 18:35:17 +0000 Subject: [PATCH 01/43] Initial build setup for pylibcudf --- dependencies.yaml | 28 ++++ python/cudf/cudf/_lib/pylibcudf/io/avro.pxd | 12 -- .../pylibcudf/libcudf/strings/extract.pxd | 15 -- .../_lib/pylibcudf/strings/char_types.pxd | 5 - .../cudf/_lib/pylibcudf/strings/contains.pxd | 7 - .../_lib/pylibcudf/strings/regex_flags.pxd | 2 - python/{cudf => pylibcudf}/CMakeLists.txt | 7 +- python/pylibcudf/README.md | 1 + .../cmake/Modules/LinkPyarrowHeaders.cmake | 40 +++++ .../cmake/Modules/WheelHelpers.cmake | 59 ++++++++ .../pylibcudf/CMakeLists.txt | 0 python/pylibcudf/pylibcudf/VERSION | 1 + .../_lib => pylibcudf}/pylibcudf/__init__.pxd | 0 .../_lib => pylibcudf}/pylibcudf/__init__.py | 0 .../pylibcudf/aggregation.pxd | 5 +- .../pylibcudf/aggregation.pyx | 21 ++- .../_lib => pylibcudf}/pylibcudf/binaryop.pxd | 2 +- .../_lib => pylibcudf}/pylibcudf/binaryop.pyx | 15 +- .../_lib => pylibcudf}/pylibcudf/column.pxd | 11 +- .../_lib => pylibcudf}/pylibcudf/column.pyx | 11 +- .../pylibcudf/column_factories.pxd | 3 +- .../pylibcudf/column_factories.pyx | 7 +- .../pylibcudf/concatenate.pxd | 0 .../pylibcudf/concatenate.pyx | 11 +- .../_lib => pylibcudf}/pylibcudf/copying.pxd | 5 +- .../_lib => pylibcudf}/pylibcudf/copying.pyx | 21 ++- .../_lib => pylibcudf}/pylibcudf/datetime.pxd | 0 .../_lib => pylibcudf}/pylibcudf/datetime.pyx | 7 +- .../_lib => pylibcudf}/pylibcudf/filling.pxd | 2 +- .../_lib => pylibcudf}/pylibcudf/filling.pyx | 9 +- .../pylibcudf/gpumemoryview.pxd | 0 .../pylibcudf/gpumemoryview.pyx | 0 .../_lib => pylibcudf}/pylibcudf/groupby.pxd | 9 +- .../_lib => pylibcudf}/pylibcudf/groupby.pyx | 15 +- .../_lib => pylibcudf}/pylibcudf/interop.pyx | 13 +- .../pylibcudf/io/CMakeLists.txt | 0 .../pylibcudf/io/__init__.pxd | 0 .../pylibcudf/io/__init__.py | 0 python/pylibcudf/pylibcudf/io/avro.pxd | 12 ++ .../_lib => pylibcudf}/pylibcudf/io/avro.pyx | 7 +- .../pylibcudf/io/datasource.pxd | 5 +- .../pylibcudf/io/datasource.pyx | 5 +- .../_lib => pylibcudf}/pylibcudf/io/json.pxd | 7 +- .../_lib => pylibcudf}/pylibcudf/io/json.pyx | 19 +-- .../_lib => pylibcudf}/pylibcudf/io/types.pxd | 7 +- .../_lib => pylibcudf}/pylibcudf/io/types.pyx | 13 +- .../_lib => pylibcudf}/pylibcudf/join.pxd | 2 +- .../_lib => pylibcudf}/pylibcudf/join.pyx | 13 +- .../pylibcudf/libcudf/CMakeLists.txt | 0 .../pylibcudf/libcudf/__init__.pxd | 0 .../pylibcudf/libcudf/__init__.py | 0 .../pylibcudf/libcudf/aggregation.pxd | 3 +- .../pylibcudf/libcudf/aggregation.pyx | 0 .../pylibcudf/libcudf/binaryop.pxd | 9 +- .../pylibcudf/libcudf/binaryop.pyx | 0 .../pylibcudf/libcudf/column/__init__.pxd | 0 .../pylibcudf/libcudf/column/__init__.py | 0 .../pylibcudf/libcudf/column/column.pxd | 9 +- .../libcudf/column/column_factories.pxd | 11 +- .../pylibcudf/libcudf/column/column_view.pxd | 7 +- .../pylibcudf/libcudf/concatenate.pxd | 7 +- .../pylibcudf/libcudf/contiguous_split.pxd | 5 +- .../pylibcudf/libcudf/copying.pxd | 18 +-- .../pylibcudf/libcudf/copying.pyx | 0 .../pylibcudf/libcudf/datetime.pxd | 7 +- .../pylibcudf/libcudf/expressions.pxd | 9 +- .../pylibcudf/libcudf/filling.pxd | 13 +- .../pylibcudf/libcudf/groupby.pxd | 19 ++- .../pylibcudf/libcudf/hash.pxd | 7 +- .../pylibcudf/libcudf/interop.pxd | 8 +- .../pylibcudf/libcudf/io/CMakeLists.txt | 0 .../pylibcudf/libcudf/io/__init__.pxd | 0 .../pylibcudf/libcudf/io/__init__.py | 0 .../pylibcudf/libcudf/io/arrow_io_source.pxd | 3 +- .../pylibcudf/libcudf/io/avro.pxd | 5 +- .../pylibcudf/libcudf/io/csv.pxd | 7 +- .../pylibcudf/libcudf/io/data_sink.pxd | 0 .../pylibcudf/libcudf/io/datasource.pxd | 0 .../pylibcudf/libcudf/io/json.pxd | 7 +- .../pylibcudf/libcudf/io/json.pyx | 0 .../pylibcudf/libcudf/io/orc.pxd | 7 +- .../pylibcudf/libcudf/io/orc_metadata.pxd | 2 +- .../pylibcudf/libcudf/io/parquet.pxd | 9 +- .../pylibcudf/libcudf/io/parquet_metadata.pxd | 5 +- .../pylibcudf/libcudf/io/text.pxd | 3 +- .../pylibcudf/libcudf/io/timezone.pxd | 3 +- .../pylibcudf/libcudf/io/types.pxd | 11 +- .../pylibcudf/libcudf/io/types.pyx | 0 .../pylibcudf/libcudf/join.pxd | 9 +- .../pylibcudf/libcudf/labeling.pxd | 5 +- .../pylibcudf/libcudf/lists/__init__.pxd | 0 .../pylibcudf/libcudf/lists/__init__.py | 0 .../pylibcudf/libcudf/lists/combine.pxd | 7 +- .../pylibcudf/libcudf/lists/contains.pxd | 10 +- .../libcudf/lists/count_elements.pxd | 7 +- .../pylibcudf/libcudf/lists/explode.pxd | 7 +- .../pylibcudf/libcudf/lists/extract.pxd | 9 +- .../pylibcudf/libcudf/lists/gather.pxd | 7 +- .../libcudf/lists/lists_column_view.pxd | 4 +- .../pylibcudf/libcudf/lists/reverse.pxd | 7 +- .../pylibcudf/libcudf/lists/sorting.pxd | 9 +- .../libcudf/lists/stream_compaction.pxd | 9 +- .../pylibcudf/libcudf/merge.pxd | 7 +- .../pylibcudf/libcudf/null_mask.pxd | 11 +- .../pylibcudf/libcudf/nvtext/__init__.pxd | 0 .../pylibcudf/libcudf/nvtext/__init__.py | 0 .../libcudf/nvtext/byte_pair_encode.pxd | 7 +- .../libcudf/nvtext/edit_distance.pxd | 5 +- .../libcudf/nvtext/generate_ngrams.pxd | 9 +- .../pylibcudf/libcudf/nvtext/jaccard.pxd | 7 +- .../pylibcudf/libcudf/nvtext/minhash.pxd | 7 +- .../libcudf/nvtext/ngrams_tokenize.pxd | 9 +- .../pylibcudf/libcudf/nvtext/normalize.pxd | 5 +- .../pylibcudf/libcudf/nvtext/replace.pxd | 9 +- .../pylibcudf/libcudf/nvtext/stemmer.pxd | 7 +- .../libcudf/nvtext/subword_tokenize.pxd | 5 +- .../pylibcudf/libcudf/nvtext/tokenize.pxd | 9 +- .../pylibcudf/libcudf/partitioning.pxd | 11 +- .../pylibcudf/libcudf/quantiles.pxd | 11 +- .../pylibcudf/libcudf/reduce.pxd | 14 +- .../pylibcudf/libcudf/reduce.pyx | 0 .../pylibcudf/libcudf/replace.pxd | 6 +- .../pylibcudf/libcudf/replace.pyx | 0 .../pylibcudf/libcudf/reshape.pxd | 9 +- .../pylibcudf/libcudf/rolling.pxd | 8 +- .../pylibcudf/libcudf/round.pxd | 5 +- .../pylibcudf/libcudf/round.pyx | 0 .../pylibcudf/libcudf/scalar/__init__.pxd | 0 .../pylibcudf/libcudf/scalar/__init__.py | 0 .../pylibcudf/libcudf/scalar/scalar.pxd | 9 +- .../libcudf/scalar/scalar_factories.pxd | 3 +- .../pylibcudf/libcudf/search.pxd | 9 +- .../pylibcudf/libcudf/sorting.pxd | 12 +- .../pylibcudf/libcudf/stream_compaction.pxd | 10 +- .../pylibcudf/libcudf/stream_compaction.pyx | 0 .../pylibcudf/libcudf/strings/CMakeLists.txt | 0 .../pylibcudf/libcudf/strings/__init__.pxd | 0 .../pylibcudf/libcudf/strings/__init__.py | 0 .../pylibcudf/libcudf/strings/attributes.pxd | 5 +- .../pylibcudf/libcudf/strings/capitalize.pxd | 11 +- .../pylibcudf/libcudf/strings/case.pxd | 5 +- .../pylibcudf/libcudf/strings/char_types.pxd | 7 +- .../pylibcudf/libcudf/strings/char_types.pyx | 0 .../pylibcudf/libcudf/strings/combine.pxd | 9 +- .../pylibcudf/libcudf/strings/contains.pxd | 9 +- .../libcudf/strings/convert/__init__.pxd | 0 .../libcudf/strings/convert/__init__.py | 0 .../strings/convert/convert_booleans.pxd | 7 +- .../strings/convert/convert_datetime.pxd | 7 +- .../strings/convert/convert_durations.pxd | 7 +- .../strings/convert/convert_fixed_point.pxd | 7 +- .../strings/convert/convert_floats.pxd | 7 +- .../strings/convert/convert_integers.pxd | 7 +- .../libcudf/strings/convert/convert_ipv4.pxd | 5 +- .../libcudf/strings/convert/convert_lists.pxd | 7 +- .../libcudf/strings/convert/convert_urls.pxd | 5 +- .../pylibcudf/libcudf/strings/extract.pxd | 14 ++ .../pylibcudf/libcudf/strings/find.pxd | 9 +- .../libcudf/strings/find_multiple.pxd | 5 +- .../pylibcudf/libcudf/strings/findall.pxd | 7 +- .../pylibcudf/libcudf/strings/json.pxd | 7 +- .../pylibcudf/libcudf/strings/padding.pxd | 11 +- .../pylibcudf/libcudf/strings/regex_flags.pxd | 0 .../pylibcudf/libcudf/strings/regex_flags.pyx | 0 .../libcudf/strings/regex_program.pxd | 3 +- .../pylibcudf/libcudf/strings/repeat.pxd | 7 +- .../pylibcudf/libcudf/strings/replace.pxd | 9 +- .../pylibcudf/libcudf/strings/replace_re.pxd | 13 +- .../pylibcudf/libcudf/strings/side_type.pxd | 0 .../libcudf/strings/split/__init__.pxd | 0 .../libcudf/strings/split/__init__.py | 0 .../libcudf/strings/split/partition.pxd | 9 +- .../pylibcudf/libcudf/strings/split/split.pxd | 13 +- .../pylibcudf/libcudf/strings/strip.pxd | 9 +- .../pylibcudf/libcudf/strings/substring.pxd | 9 +- .../pylibcudf/libcudf/strings/translate.pxd | 9 +- .../pylibcudf/libcudf/strings/wrap.pxd | 7 +- .../pylibcudf/libcudf/strings_udf.pxd | 7 +- .../pylibcudf/libcudf/table/__init__.pxd | 0 .../pylibcudf/libcudf/table/__init__.py | 0 .../pylibcudf/libcudf/table/table.pxd | 10 +- .../pylibcudf/libcudf/table/table_view.pxd | 5 +- .../pylibcudf/libcudf/transform.pxd | 17 +-- .../pylibcudf/libcudf/transpose.pxd | 5 +- .../pylibcudf/libcudf/types.pxd | 0 .../pylibcudf/libcudf/types.pyx | 0 .../pylibcudf/libcudf/unary.pxd | 7 +- .../pylibcudf/libcudf/unary.pyx | 0 .../pylibcudf/libcudf/utilities/__init__.pxd | 0 .../pylibcudf/libcudf/utilities/__init__.py | 0 .../pylibcudf/libcudf/utilities/host_span.pxd | 0 .../pylibcudf/libcudf/utilities/traits.pxd | 3 +- .../pylibcudf/libcudf/wrappers/__init__.pxd | 0 .../pylibcudf/libcudf/wrappers/__init__.py | 0 .../pylibcudf/libcudf/wrappers/decimals.pxd | 3 +- .../pylibcudf/libcudf/wrappers/durations.pxd | 0 .../pylibcudf/libcudf/wrappers/timestamps.pxd | 0 .../_lib => pylibcudf}/pylibcudf/lists.pxd | 3 +- .../_lib => pylibcudf}/pylibcudf/lists.pyx | 23 ++- .../_lib => pylibcudf}/pylibcudf/merge.pxd | 0 .../_lib => pylibcudf}/pylibcudf/merge.pyx | 9 +- .../pylibcudf/quantiles.pxd | 3 +- .../pylibcudf/quantiles.pyx | 11 +- .../_lib => pylibcudf}/pylibcudf/reduce.pxd | 2 +- .../_lib => pylibcudf}/pylibcudf/reduce.pyx | 17 +-- .../_lib => pylibcudf}/pylibcudf/replace.pxd | 3 +- .../_lib => pylibcudf}/pylibcudf/replace.pyx | 7 +- .../_lib => pylibcudf}/pylibcudf/reshape.pxd | 2 +- .../_lib => pylibcudf}/pylibcudf/reshape.pyx | 9 +- .../_lib => pylibcudf}/pylibcudf/rolling.pxd | 2 +- .../_lib => pylibcudf}/pylibcudf/rolling.pyx | 9 +- .../_lib => pylibcudf}/pylibcudf/round.pxd | 3 +- .../_lib => pylibcudf}/pylibcudf/round.pyx | 10 +- .../_lib => pylibcudf}/pylibcudf/scalar.pxd | 3 +- .../_lib => pylibcudf}/pylibcudf/scalar.pyx | 3 +- .../_lib => pylibcudf}/pylibcudf/search.pxd | 0 .../_lib => pylibcudf}/pylibcudf/search.pyx | 7 +- .../_lib => pylibcudf}/pylibcudf/sorting.pxd | 10 +- .../_lib => pylibcudf}/pylibcudf/sorting.pyx | 11 +- .../pylibcudf/stream_compaction.pxd | 6 +- .../pylibcudf/stream_compaction.pyx | 17 +-- .../pylibcudf/strings/CMakeLists.txt | 0 .../pylibcudf/strings/__init__.pxd | 0 .../pylibcudf/strings/__init__.py | 0 .../pylibcudf/strings/capitalize.pxd | 4 +- .../pylibcudf/strings/capitalize.pyx | 15 +- .../pylibcudf/strings/case.pxd | 2 +- .../pylibcudf/strings/case.pyx | 7 +- .../pylibcudf/strings/char_types.pxd | 3 + .../pylibcudf/strings/char_types.pyx | 2 +- .../pylibcudf/pylibcudf/strings/contains.pxd | 7 + .../pylibcudf/strings/contains.pyx | 9 +- .../pylibcudf/strings/find.pxd | 6 +- .../pylibcudf/strings/find.pyx | 27 ++-- .../pylibcudf/strings/regex_flags.pxd | 2 + .../pylibcudf/strings/regex_flags.pyx | 2 +- .../pylibcudf/strings/regex_program.pxd | 3 +- .../pylibcudf/strings/regex_program.pyx | 8 +- .../pylibcudf/strings/replace.pxd | 6 +- .../pylibcudf/strings/replace.pyx | 15 +- .../pylibcudf/strings/slice.pxd | 4 +- .../pylibcudf/strings/slice.pyx | 21 ++- .../_lib => pylibcudf}/pylibcudf/table.pxd | 5 +- .../_lib => pylibcudf}/pylibcudf/table.pyx | 7 +- .../_lib => pylibcudf}/pylibcudf/traits.pxd | 0 .../_lib => pylibcudf}/pylibcudf/traits.pyx | 3 +- .../pylibcudf/transform.pxd | 0 .../pylibcudf/transform.pyx | 5 +- .../_lib => pylibcudf}/pylibcudf/types.pxd | 3 +- .../_lib => pylibcudf}/pylibcudf/types.pyx | 23 ++- .../_lib => pylibcudf}/pylibcudf/unary.pxd | 3 +- .../_lib => pylibcudf}/pylibcudf/unary.pyx | 9 +- .../_lib => pylibcudf}/pylibcudf/utils.pxd | 5 +- .../_lib => pylibcudf}/pylibcudf/utils.pyx | 5 +- python/pylibcudf/pyproject.toml | 143 ++++++++++++++++++ 255 files changed, 901 insertions(+), 848 deletions(-) delete mode 100644 python/cudf/cudf/_lib/pylibcudf/io/avro.pxd delete mode 100644 python/cudf/cudf/_lib/pylibcudf/libcudf/strings/extract.pxd delete mode 100644 python/cudf/cudf/_lib/pylibcudf/strings/char_types.pxd delete mode 100644 python/cudf/cudf/_lib/pylibcudf/strings/contains.pxd delete mode 100644 python/cudf/cudf/_lib/pylibcudf/strings/regex_flags.pxd rename python/{cudf => pylibcudf}/CMakeLists.txt (96%) create mode 120000 python/pylibcudf/README.md create mode 100644 python/pylibcudf/cmake/Modules/LinkPyarrowHeaders.cmake create mode 100644 python/pylibcudf/cmake/Modules/WheelHelpers.cmake rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/CMakeLists.txt (100%) create mode 120000 python/pylibcudf/pylibcudf/VERSION rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/aggregation.pxd (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/aggregation.pyx (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/binaryop.pxd (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/binaryop.pyx (83%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/column.pxd (84%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/column.pyx (97%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/column_factories.pxd (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/column_factories.pyx (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/concatenate.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/concatenate.pyx (80%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/copying.pxd (94%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/copying.pyx (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/datetime.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/datetime.pyx (78%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/filling.pxd (90%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/filling.pyx (94%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/gpumemoryview.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/gpumemoryview.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/groupby.pxd (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/groupby.pyx (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/interop.pyx (97%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/CMakeLists.txt (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/__init__.py (100%) create mode 100644 python/pylibcudf/pylibcudf/io/avro.pxd rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/avro.pyx (89%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/datasource.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/datasource.pyx (84%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/json.pxd (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/json.pyx (95%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/types.pxd (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/io/types.pyx (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/join.pxd (91%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/join.pyx (95%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/CMakeLists.txt (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/aggregation.pxd (98%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/aggregation.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/binaryop.pxd (84%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/binaryop.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/column/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/column/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/column/column.pxd (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/column/column_factories.pxd (93%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/column/column_view.pxd (97%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/concatenate.pxd (77%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/contiguous_split.pxd (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/copying.pxd (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/copying.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/datetime.pxd (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/expressions.pxd (94%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/filling.pxd (74%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/groupby.pxd (83%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/hash.pxd (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/interop.pxd (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/CMakeLists.txt (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/arrow_io_source.pxd (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/avro.pxd (91%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/csv.pxd (98%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/data_sink.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/datasource.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/json.pxd (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/json.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/orc.pxd (97%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/orc_metadata.pxd (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/parquet.pxd (97%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/parquet_metadata.pxd (89%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/text.pxd (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/timezone.pxd (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/types.pxd (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/io/types.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/join.pxd (88%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/labeling.pxd (78%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/combine.pxd (78%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/contains.pxd (80%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/count_elements.pxd (61%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/explode.pxd (59%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/extract.pxd (64%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/gather.pxd (67%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/lists_column_view.pxd (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/reverse.pxd (62%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/sorting.pxd (59%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/lists/stream_compaction.pxd (60%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/merge.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/null_mask.pxd (80%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/byte_pair_encode.pxd (73%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/edit_distance.pxd (75%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/generate_ngrams.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/jaccard.pxd (61%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/minhash.pxd (70%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/ngrams_tokenize.pxd (58%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/normalize.pxd (75%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/replace.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/stemmer.pxd (79%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/subword_tokenize.pxd (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/nvtext/tokenize.pxd (84%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/partitioning.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/quantiles.pxd (70%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/reduce.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/reduce.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/replace.pxd (88%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/replace.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/reshape.pxd (57%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/rolling.pxd (71%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/round.pxd (75%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/round.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/scalar/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/scalar/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/scalar/scalar.pxd (91%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/scalar/scalar_factories.pxd (84%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/search.pxd (73%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/sorting.pxd (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/stream_compaction.pxd (88%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/stream_compaction.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/CMakeLists.txt (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/attributes.pxd (76%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/capitalize.pxd (63%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/case.pxd (81%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/char_types.pxd (82%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/char_types.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/combine.pxd (83%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/contains.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_booleans.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_datetime.pxd (76%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_durations.pxd (72%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_fixed_point.pxd (73%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_floats.pxd (71%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_integers.pxd (80%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_ipv4.pxd (76%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_lists.pxd (62%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/convert/convert_urls.pxd (72%) create mode 100644 python/pylibcudf/pylibcudf/libcudf/strings/extract.pxd rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/find.pxd (83%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/find_multiple.pxd (68%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/findall.pxd (56%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/json.pxd (79%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/padding.pxd (59%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/regex_flags.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/regex_flags.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/regex_program.pxd (84%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/repeat.pxd (67%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/replace.pxd (73%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/replace_re.pxd (63%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/side_type.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/split/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/split/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/split/partition.pxd (63%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/split/split.pxd (78%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/strip.pxd (52%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/substring.pxd (66%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/translate.pxd (73%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings/wrap.pxd (58%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/strings_udf.pxd (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/table/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/table/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/table/table.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/table/table_view.pxd (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/transform.pxd (73%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/transpose.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/types.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/types.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/unary.pxd (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/unary.pyx (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/utilities/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/utilities/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/utilities/host_span.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/utilities/traits.pxd (93%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/wrappers/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/wrappers/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/wrappers/decimals.pxd (90%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/wrappers/durations.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/libcudf/wrappers/timestamps.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/lists.pxd (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/lists.pyx (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/merge.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/merge.pyx (83%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/quantiles.pxd (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/quantiles.pyx (93%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/reduce.pxd (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/reduce.pyx (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/replace.pxd (92%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/replace.pyx (97%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/reshape.pxd (80%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/reshape.pyx (86%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/rolling.pxd (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/rolling.pyx (89%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/round.pxd (77%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/round.pyx (85%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/scalar.pxd (91%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/scalar.pyx (97%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/search.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/search.pyx (93%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/sorting.pxd (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/sorting.pyx (96%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/stream_compaction.pxd (89%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/stream_compaction.pyx (95%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/CMakeLists.txt (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/__init__.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/__init__.py (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/capitalize.pxd (64%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/capitalize.pyx (74%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/case.pxd (76%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/case.pyx (79%) create mode 100644 python/pylibcudf/pylibcudf/strings/char_types.pxd rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/char_types.pyx (64%) create mode 100644 python/pylibcudf/pylibcudf/strings/contains.pxd rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/contains.pyx (75%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/find.pxd (77%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/find.pyx (90%) create mode 100644 python/pylibcudf/pylibcudf/strings/regex_flags.pxd rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/regex_flags.pyx (59%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/regex_program.pxd (70%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/regex_program.pyx (77%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/replace.pxd (71%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/replace.pyx (90%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/slice.pxd (69%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/strings/slice.pyx (81%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/table.pxd (78%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/table.pyx (93%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/traits.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/traits.pyx (98%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/transform.pxd (100%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/transform.pyx (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/types.pxd (90%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/types.pyx (63%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/unary.pxd (87%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/unary.pyx (94%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/utils.pxd (71%) rename python/{cudf/cudf/_lib => pylibcudf}/pylibcudf/utils.pyx (89%) create mode 100644 python/pylibcudf/pyproject.toml diff --git a/dependencies.yaml b/dependencies.yaml index 27621ff9a3f..afa10360515 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -112,6 +112,34 @@ files: includes: - test_python_common - test_python_cudf + py_build_pylibcudf: + output: pyproject + pyproject_dir: python/pylibcudf + extras: + table: tool.rapids-build-backend + key: requires + includes: + - build_base + - build_python_common + - build_python_cudf + py_run_pylibcudf: + output: pyproject + pyproject_dir: python/pylibcudf + extras: + table: project + includes: + - run_common + - run_cudf + - pyarrow_run + # py_test_pylibcudf: + # output: pyproject + # pyproject_dir: python/pylibcudf + # extras: + # table: project.optional-dependencies + # key: test + # includes: + # - test_python_common + # - test_python_cudf py_test_pandas_cudf: output: pyproject pyproject_dir: python/cudf diff --git a/python/cudf/cudf/_lib/pylibcudf/io/avro.pxd b/python/cudf/cudf/_lib/pylibcudf/io/avro.pxd deleted file mode 100644 index 3695f36a6e7..00000000000 --- a/python/cudf/cudf/_lib/pylibcudf/io/avro.pxd +++ /dev/null @@ -1,12 +0,0 @@ -# Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.io.types cimport SourceInfo, TableWithMetadata -from cudf._lib.pylibcudf.libcudf.io.avro cimport avro_reader_options -from cudf._lib.pylibcudf.libcudf.types cimport size_type - - -cpdef TableWithMetadata read_avro( - SourceInfo source_info, - list columns = *, - size_type skip_rows = *, - size_type num_rows = * -) diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/extract.pxd b/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/extract.pxd deleted file mode 100644 index 57903ca27de..00000000000 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/extract.pxd +++ /dev/null @@ -1,15 +0,0 @@ -# Copyright (c) 2020-2024, NVIDIA CORPORATION. - -from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program -from cudf._lib.pylibcudf.libcudf.table.table cimport table - - -cdef extern from "cudf/strings/extract.hpp" namespace "cudf::strings" nogil: - - cdef unique_ptr[table] extract( - column_view source_strings, - regex_program) except + diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/char_types.pxd b/python/cudf/cudf/_lib/pylibcudf/strings/char_types.pxd deleted file mode 100644 index a80e02f520c..00000000000 --- a/python/cudf/cudf/_lib/pylibcudf/strings/char_types.pxd +++ /dev/null @@ -1,5 +0,0 @@ -# Copyright (c) 2024, NVIDIA CORPORATION. - -from cudf._lib.pylibcudf.libcudf.strings.char_types cimport ( - string_character_types, -) diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/contains.pxd b/python/cudf/cudf/_lib/pylibcudf/strings/contains.pxd deleted file mode 100644 index 275aa95d97e..00000000000 --- a/python/cudf/cudf/_lib/pylibcudf/strings/contains.pxd +++ /dev/null @@ -1,7 +0,0 @@ -# Copyright (c) 2024, NVIDIA CORPORATION. - -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.strings.regex_program cimport RegexProgram - - -cpdef Column contains_re(Column input, RegexProgram prog) diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/regex_flags.pxd b/python/cudf/cudf/_lib/pylibcudf/strings/regex_flags.pxd deleted file mode 100644 index 79937bf574a..00000000000 --- a/python/cudf/cudf/_lib/pylibcudf/strings/regex_flags.pxd +++ /dev/null @@ -1,2 +0,0 @@ -# Copyright (c) 2020-2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags diff --git a/python/cudf/CMakeLists.txt b/python/pylibcudf/CMakeLists.txt similarity index 96% rename from python/cudf/CMakeLists.txt rename to python/pylibcudf/CMakeLists.txt index ecadbf5cbbc..021f8f593b3 100644 --- a/python/cudf/CMakeLists.txt +++ b/python/pylibcudf/CMakeLists.txt @@ -78,7 +78,7 @@ if(NOT cudf_FOUND) # control where they are installed to. Since there are multiple subpackages of cudf._lib that # require access to libcudf, we place the library and all its dependent artifacts in the cudf # directory as a single source of truth and modify the other rpaths appropriately. - set(cython_lib_dir cudf) + set(cython_lib_dir pylibcudf) include(cmake/Modules/WheelHelpers.cmake) # TODO: This install is currently overzealous. We should only install the libraries that are # downloaded by CPM during the build, not libraries that were found on the system. However, in @@ -93,9 +93,8 @@ endif() rapids_cython_init() include(cmake/Modules/LinkPyarrowHeaders.cmake) -add_subdirectory(cudf/_lib) -add_subdirectory(udf_cpp) +add_subdirectory(pylibcudf) if(DEFINED cython_lib_dir) - rapids_cython_add_rpath_entries(TARGET cudf PATHS "${cython_lib_dir}") + rapids_cython_add_rpath_entries(TARGET pylibcudf PATHS "${cython_lib_dir}") endif() diff --git a/python/pylibcudf/README.md b/python/pylibcudf/README.md new file mode 120000 index 00000000000..fe840054137 --- /dev/null +++ b/python/pylibcudf/README.md @@ -0,0 +1 @@ +../../README.md \ No newline at end of file diff --git a/python/pylibcudf/cmake/Modules/LinkPyarrowHeaders.cmake b/python/pylibcudf/cmake/Modules/LinkPyarrowHeaders.cmake new file mode 100644 index 00000000000..d432f9fe1f5 --- /dev/null +++ b/python/pylibcudf/cmake/Modules/LinkPyarrowHeaders.cmake @@ -0,0 +1,40 @@ +# ============================================================================= +# Copyright (c) 2023, NVIDIA CORPORATION. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except +# in compliance with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software distributed under the License +# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express +# or implied. See the License for the specific language governing permissions and limitations under +# the License. +# ============================================================================= +include_guard(GLOBAL) + +find_package(Python REQUIRED COMPONENTS Development NumPy) + +execute_process( + COMMAND "${Python_EXECUTABLE}" -c "import pyarrow; print(pyarrow.get_include())" + OUTPUT_VARIABLE PYARROW_INCLUDE_DIR + ERROR_VARIABLE PYARROW_ERROR + RESULT_VARIABLE PYARROW_RESULT + OUTPUT_STRIP_TRAILING_WHITESPACE +) + +if(${PYARROW_RESULT}) + message(FATAL_ERROR "Error while trying to obtain pyarrow include directory:\n${PYARROW_ERROR}") +endif() + +# Due to cudf's scalar.pyx needing to cimport pylibcudf's scalar.pyx (because there are parts of +# cudf Cython that need to directly access the c_obj underlying the pylibcudf Scalar) the +# requirement for arrow headers infects all of cudf. These requirements will go away once all +# scalar-related Cython code is removed from cudf. +function(link_to_pyarrow_headers targets) + foreach(target IN LISTS targets) + # PyArrow headers require numpy headers. + target_include_directories(${target} PRIVATE "${Python_NumPy_INCLUDE_DIRS}") + target_include_directories(${target} PRIVATE "${PYARROW_INCLUDE_DIR}") + endforeach() +endfunction() diff --git a/python/pylibcudf/cmake/Modules/WheelHelpers.cmake b/python/pylibcudf/cmake/Modules/WheelHelpers.cmake new file mode 100644 index 00000000000..278d6751c15 --- /dev/null +++ b/python/pylibcudf/cmake/Modules/WheelHelpers.cmake @@ -0,0 +1,59 @@ +# ============================================================================= +# Copyright (c) 2022-2023, NVIDIA CORPORATION. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except +# in compliance with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software distributed under the License +# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express +# or implied. See the License for the specific language governing permissions and limitations under +# the License. +# ============================================================================= +include_guard(GLOBAL) + +# Making libraries available inside wheels by installing the associated targets. +function(install_aliased_imported_targets) + list(APPEND CMAKE_MESSAGE_CONTEXT "install_aliased_imported_targets") + + set(options "") + set(one_value "DESTINATION") + set(multi_value "TARGETS") + cmake_parse_arguments(_ "${options}" "${one_value}" "${multi_value}" ${ARGN}) + + message(VERBOSE "Installing targets '${__TARGETS}' into lib_dir '${__DESTINATION}'") + + foreach(target IN LISTS __TARGETS) + + if(NOT TARGET ${target}) + message(VERBOSE "No target named ${target}") + continue() + endif() + + get_target_property(alias_target ${target} ALIASED_TARGET) + if(alias_target) + set(target ${alias_target}) + endif() + + get_target_property(is_imported ${target} IMPORTED) + if(NOT is_imported) + # If the target isn't imported, install it into the wheel + install(TARGETS ${target} DESTINATION ${__DESTINATION}) + message(VERBOSE "install(TARGETS ${target} DESTINATION ${__DESTINATION})") + else() + # If the target is imported, make sure it's global + get_target_property(type ${target} TYPE) + if(${type} STREQUAL "UNKNOWN_LIBRARY") + install(FILES $ DESTINATION ${__DESTINATION}) + message(VERBOSE "install(FILES $ DESTINATION ${__DESTINATION})") + else() + install(IMPORTED_RUNTIME_ARTIFACTS ${target} DESTINATION ${__DESTINATION}) + message( + VERBOSE + "install(IMPORTED_RUNTIME_ARTIFACTS $ DESTINATION ${__DESTINATION})" + ) + endif() + endif() + endforeach() +endfunction() diff --git a/python/cudf/cudf/_lib/pylibcudf/CMakeLists.txt b/python/pylibcudf/pylibcudf/CMakeLists.txt similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/CMakeLists.txt rename to python/pylibcudf/pylibcudf/CMakeLists.txt diff --git a/python/pylibcudf/pylibcudf/VERSION b/python/pylibcudf/pylibcudf/VERSION new file mode 120000 index 00000000000..d62dc733efd --- /dev/null +++ b/python/pylibcudf/pylibcudf/VERSION @@ -0,0 +1 @@ +../../../VERSION \ No newline at end of file diff --git a/python/cudf/cudf/_lib/pylibcudf/__init__.pxd b/python/pylibcudf/pylibcudf/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/__init__.pxd rename to python/pylibcudf/pylibcudf/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/__init__.py b/python/pylibcudf/pylibcudf/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/__init__.py rename to python/pylibcudf/pylibcudf/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/aggregation.pxd b/python/pylibcudf/pylibcudf/aggregation.pxd similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/aggregation.pxd rename to python/pylibcudf/pylibcudf/aggregation.pxd index 0981d0e855a..c9ab1eab21c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/aggregation.pxd +++ b/python/pylibcudf/pylibcudf/aggregation.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.aggregation cimport ( +from pylibcudf.libcudf.aggregation cimport ( Kind as kind_t, aggregation, correlation_type, @@ -15,7 +14,7 @@ from cudf._lib.pylibcudf.libcudf.aggregation cimport ( rolling_aggregation, scan_aggregation, ) -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.types cimport ( interpolation, nan_equality, null_equality, diff --git a/python/cudf/cudf/_lib/pylibcudf/aggregation.pyx b/python/pylibcudf/pylibcudf/aggregation.pyx similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/aggregation.pyx rename to python/pylibcudf/pylibcudf/aggregation.pyx index eed2f6de585..e510b738f70 100644 --- a/python/cudf/cudf/_lib/pylibcudf/aggregation.pyx +++ b/python/pylibcudf/pylibcudf/aggregation.pyx @@ -4,8 +4,7 @@ from cython.operator cimport dereference from libcpp.cast cimport dynamic_cast from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.aggregation cimport ( +from pylibcudf.libcudf.aggregation cimport ( aggregation, correlation_type, ewm_history, @@ -41,7 +40,7 @@ from cudf._lib.pylibcudf.libcudf.aggregation cimport ( rolling_aggregation, scan_aggregation, ) -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.types cimport ( interpolation, nan_equality, null_equality, @@ -51,18 +50,16 @@ from cudf._lib.pylibcudf.libcudf.types cimport ( size_type, ) -from cudf._lib.pylibcudf.libcudf.aggregation import Kind # no-cython-lint -from cudf._lib.pylibcudf.libcudf.aggregation import \ +from pylibcudf.libcudf.aggregation import Kind # no-cython-lint +from pylibcudf.libcudf.aggregation import \ correlation_type as CorrelationType # no-cython-lint -from cudf._lib.pylibcudf.libcudf.aggregation import \ +from pylibcudf.libcudf.aggregation import \ ewm_history as EWMHistory # no-cython-lint -from cudf._lib.pylibcudf.libcudf.aggregation import \ +from pylibcudf.libcudf.aggregation import \ rank_method as RankMethod # no-cython-lint -from cudf._lib.pylibcudf.libcudf.aggregation import \ +from pylibcudf.libcudf.aggregation import \ rank_percentage as RankPercentage # no-cython-lint -from cudf._lib.pylibcudf.libcudf.aggregation import ( # no-cython-lint - udf_type as UdfType, -) +from pylibcudf.libcudf.aggregation import udf_type as UdfType # no-cython-lint from .types cimport DataType @@ -71,7 +68,7 @@ cdef class Aggregation: """A type of aggregation to perform. Aggregations are passed to APIs like - :py:func:`~cudf._lib.pylibcudf.groupby.GroupBy.aggregate` to indicate what + :py:func:`~pylibcudf.groupby.GroupBy.aggregate` to indicate what operations to perform. Using a class for aggregations provides a unified API for handling parametrizable aggregations. This class should never be instantiated directly, only via one of the factory functions. diff --git a/python/cudf/cudf/_lib/pylibcudf/binaryop.pxd b/python/pylibcudf/pylibcudf/binaryop.pxd similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/binaryop.pxd rename to python/pylibcudf/pylibcudf/binaryop.pxd index 9a8c8e49dcf..39bf183e7b0 100644 --- a/python/cudf/cudf/_lib/pylibcudf/binaryop.pxd +++ b/python/pylibcudf/pylibcudf/binaryop.pxd @@ -1,6 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.binaryop cimport binary_operator +from pylibcudf.libcudf.binaryop cimport binary_operator from .column cimport Column from .scalar cimport Scalar diff --git a/python/cudf/cudf/_lib/pylibcudf/binaryop.pyx b/python/pylibcudf/pylibcudf/binaryop.pyx similarity index 83% rename from python/cudf/cudf/_lib/pylibcudf/binaryop.pyx rename to python/pylibcudf/pylibcudf/binaryop.pyx index c1d669c3c1c..8870bd2f2f0 100644 --- a/python/cudf/cudf/_lib/pylibcudf/binaryop.pyx +++ b/python/pylibcudf/pylibcudf/binaryop.pyx @@ -4,12 +4,11 @@ from cython.operator import dereference from libcpp.memory cimport unique_ptr from libcpp.utility cimport move +from pylibcudf.libcudf cimport binaryop as cpp_binaryop +from pylibcudf.libcudf.binaryop cimport binary_operator +from pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf cimport binaryop as cpp_binaryop -from cudf._lib.pylibcudf.libcudf.binaryop cimport binary_operator -from cudf._lib.pylibcudf.libcudf.column.column cimport column - -from cudf._lib.pylibcudf.libcudf.binaryop import \ +from pylibcudf.libcudf.binaryop import \ binary_operator as BinaryOperator # no-cython-lint from .column cimport Column @@ -26,9 +25,9 @@ cpdef Column binary_operation( """Perform a binary operation between a column and another column or scalar. ``lhs`` and ``rhs`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`, but at least one must be a - :py:class:`~cudf._lib.pylibcudf.column.Column`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`, but at least one must be a + :py:class:`~pylibcudf.column.Column`. For details, see :cpp:func:`binary_operation`. diff --git a/python/cudf/cudf/_lib/pylibcudf/column.pxd b/python/pylibcudf/pylibcudf/column.pxd similarity index 84% rename from python/cudf/cudf/_lib/pylibcudf/column.pxd rename to python/pylibcudf/pylibcudf/column.pxd index 13ee0a70681..92d63e4e495 100644 --- a/python/cudf/cudf/_lib/pylibcudf/column.pxd +++ b/python/pylibcudf/pylibcudf/column.pxd @@ -2,16 +2,13 @@ from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) -from cudf._lib.pylibcudf.libcudf.types cimport bitmask_type, size_type +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view +from pylibcudf.libcudf.types cimport bitmask_type, size_type from .gpumemoryview cimport gpumemoryview from .types cimport DataType diff --git a/python/cudf/cudf/_lib/pylibcudf/column.pyx b/python/pylibcudf/pylibcudf/column.pyx similarity index 97% rename from python/cudf/cudf/_lib/pylibcudf/column.pyx rename to python/pylibcudf/pylibcudf/column.pyx index cb96c1d9fce..c987fa3af57 100644 --- a/python/cudf/cudf/_lib/pylibcudf/column.pyx +++ b/python/pylibcudf/pylibcudf/column.pyx @@ -3,16 +3,13 @@ from cython.operator cimport dereference from libcpp.memory cimport make_unique, unique_ptr from libcpp.utility cimport move +from pylibcudf.libcudf.column.column cimport column, column_contents +from pylibcudf.libcudf.column.column_factories cimport make_column_from_scalar +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport size_type from rmm._lib.device_buffer cimport DeviceBuffer -from cudf._lib.pylibcudf.libcudf.column.column cimport column, column_contents -from cudf._lib.pylibcudf.libcudf.column.column_factories cimport ( - make_column_from_scalar, -) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type - from .gpumemoryview cimport gpumemoryview from .scalar cimport Scalar from .types cimport DataType, type_id diff --git a/python/cudf/cudf/_lib/pylibcudf/column_factories.pxd b/python/pylibcudf/pylibcudf/column_factories.pxd similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/column_factories.pxd rename to python/pylibcudf/pylibcudf/column_factories.pxd index 9dbd74ab16c..fef02359240 100644 --- a/python/cudf/cudf/_lib/pylibcudf/column_factories.pxd +++ b/python/pylibcudf/pylibcudf/column_factories.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.types cimport mask_state, size_type +from pylibcudf.libcudf.types cimport mask_state, size_type from .column cimport Column from .types cimport DataType, size_type, type_id diff --git a/python/cudf/cudf/_lib/pylibcudf/column_factories.pyx b/python/pylibcudf/pylibcudf/column_factories.pyx similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/column_factories.pyx rename to python/pylibcudf/pylibcudf/column_factories.pyx index ef7f512f0e5..4601cba515a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/column_factories.pyx +++ b/python/pylibcudf/pylibcudf/column_factories.pyx @@ -1,9 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_factories cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_factories cimport ( make_duration_column as cpp_make_duration_column, make_empty_column as cpp_make_empty_column, make_fixed_point_column as cpp_make_fixed_point_column, @@ -11,7 +10,7 @@ from cudf._lib.pylibcudf.libcudf.column.column_factories cimport ( make_numeric_column as cpp_make_numeric_column, make_timestamp_column as cpp_make_timestamp_column, ) -from cudf._lib.pylibcudf.libcudf.types cimport mask_state, size_type +from pylibcudf.libcudf.types cimport mask_state, size_type from .types cimport DataType, type_id diff --git a/python/cudf/cudf/_lib/pylibcudf/concatenate.pxd b/python/pylibcudf/pylibcudf/concatenate.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/concatenate.pxd rename to python/pylibcudf/pylibcudf/concatenate.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/concatenate.pyx b/python/pylibcudf/pylibcudf/concatenate.pyx similarity index 80% rename from python/cudf/cudf/_lib/pylibcudf/concatenate.pyx rename to python/pylibcudf/pylibcudf/concatenate.pyx index 5e40f921b2c..8bdcc086e0f 100644 --- a/python/cudf/cudf/_lib/pylibcudf/concatenate.pyx +++ b/python/pylibcudf/pylibcudf/concatenate.pyx @@ -3,12 +3,11 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf cimport concatenate as cpp_concatenate -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf cimport concatenate as cpp_concatenate +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/copying.pxd b/python/pylibcudf/pylibcudf/copying.pxd similarity index 94% rename from python/cudf/cudf/_lib/pylibcudf/copying.pxd rename to python/pylibcudf/pylibcudf/copying.pxd index 06543d3ca92..7dfed437673 100644 --- a/python/cudf/cudf/_lib/pylibcudf/copying.pxd +++ b/python/pylibcudf/pylibcudf/copying.pxd @@ -1,12 +1,11 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp cimport bool as cbool - -from cudf._lib.pylibcudf.libcudf.copying cimport ( +from pylibcudf.libcudf.copying cimport ( mask_allocation_policy, out_of_bounds_policy, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type from .column cimport Column from .scalar cimport Scalar diff --git a/python/cudf/cudf/_lib/pylibcudf/copying.pyx b/python/pylibcudf/pylibcudf/copying.pyx similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/copying.pyx rename to python/pylibcudf/pylibcudf/copying.pyx index 2d59deb3864..9743119d92a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/copying.pyx +++ b/python/pylibcudf/pylibcudf/copying.pyx @@ -6,29 +6,28 @@ from libcpp.functional cimport reference_wrapper from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - # TODO: We want to make cpp a more full-featured package so that we can access # directly from that. It will make namespacing much cleaner in pylibcudf. What # we really want here would be # cimport libcudf... libcudf.copying.algo(...) -from cudf._lib.pylibcudf.libcudf cimport copying as cpp_copying -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf cimport copying as cpp_copying +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.copying cimport ( +from pylibcudf.libcudf.copying cimport ( mask_allocation_policy, out_of_bounds_policy, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type -from cudf._lib.pylibcudf.libcudf.copying import \ +from pylibcudf.libcudf.copying import \ mask_allocation_policy as MaskAllocationPolicy # no-cython-lint -from cudf._lib.pylibcudf.libcudf.copying import \ +from pylibcudf.libcudf.copying import \ out_of_bounds_policy as OutOfBoundsPolicy # no-cython-lint from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/datetime.pxd b/python/pylibcudf/pylibcudf/datetime.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/datetime.pxd rename to python/pylibcudf/pylibcudf/datetime.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/datetime.pyx b/python/pylibcudf/pylibcudf/datetime.pyx similarity index 78% rename from python/cudf/cudf/_lib/pylibcudf/datetime.pyx rename to python/pylibcudf/pylibcudf/datetime.pyx index 82351327de6..0ddc68bcb9d 100644 --- a/python/cudf/cudf/_lib/pylibcudf/datetime.pyx +++ b/python/pylibcudf/pylibcudf/datetime.pyx @@ -1,11 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.datetime cimport ( - extract_year as cpp_extract_year, -) +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.datetime cimport extract_year as cpp_extract_year from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/filling.pxd b/python/pylibcudf/pylibcudf/filling.pxd similarity index 90% rename from python/cudf/cudf/_lib/pylibcudf/filling.pxd rename to python/pylibcudf/pylibcudf/filling.pxd index 3560ebf2ea2..b9345f8cd42 100644 --- a/python/cudf/cudf/_lib/pylibcudf/filling.pxd +++ b/python/pylibcudf/pylibcudf/filling.pxd @@ -1,5 +1,5 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type from .column cimport Column from .scalar cimport Scalar diff --git a/python/cudf/cudf/_lib/pylibcudf/filling.pyx b/python/pylibcudf/pylibcudf/filling.pyx similarity index 94% rename from python/cudf/cudf/_lib/pylibcudf/filling.pyx rename to python/pylibcudf/pylibcudf/filling.pyx index 05f67681428..61b430e64aa 100644 --- a/python/cudf/cudf/_lib/pylibcudf/filling.pyx +++ b/python/pylibcudf/pylibcudf/filling.pyx @@ -3,16 +3,15 @@ from cython.operator cimport dereference from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.filling cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.filling cimport ( fill as cpp_fill, fill_in_place as cpp_fill_in_place, repeat as cpp_repeat, sequence as cpp_sequence, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type from .column cimport Column from .scalar cimport Scalar diff --git a/python/cudf/cudf/_lib/pylibcudf/gpumemoryview.pxd b/python/pylibcudf/pylibcudf/gpumemoryview.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/gpumemoryview.pxd rename to python/pylibcudf/pylibcudf/gpumemoryview.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/gpumemoryview.pyx b/python/pylibcudf/pylibcudf/gpumemoryview.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/gpumemoryview.pyx rename to python/pylibcudf/pylibcudf/gpumemoryview.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/groupby.pxd b/python/pylibcudf/pylibcudf/groupby.pxd similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/groupby.pxd rename to python/pylibcudf/pylibcudf/groupby.pxd index eaa05c26986..79af2f1b746 100644 --- a/python/cudf/cudf/_lib/pylibcudf/groupby.pxd +++ b/python/pylibcudf/pylibcudf/groupby.pxd @@ -3,20 +3,19 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.aggregation cimport ( +from pylibcudf.libcudf.aggregation cimport ( aggregation, groupby_aggregation, groupby_scan_aggregation, ) -from cudf._lib.pylibcudf.libcudf.groupby cimport ( +from pylibcudf.libcudf.groupby cimport ( aggregation_request, aggregation_result, groupby, scan_request, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport null_order, order +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport null_order, order from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/groupby.pyx b/python/pylibcudf/pylibcudf/groupby.pyx similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/groupby.pyx rename to python/pylibcudf/pylibcudf/groupby.pyx index f5bb46ca6a2..ae5d33aaa46 100644 --- a/python/cudf/cudf/_lib/pylibcudf/groupby.pyx +++ b/python/pylibcudf/pylibcudf/groupby.pyx @@ -6,18 +6,17 @@ from libcpp.memory cimport make_unique, unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.groupby cimport ( +from pylibcudf.libcudf.groupby cimport ( aggregation_request, aggregation_result, groupby, groups, scan_request, ) -from cudf._lib.pylibcudf.libcudf.replace cimport replace_policy -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.replace cimport replace_policy +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type from .aggregation cimport Aggregation from .column cimport Column @@ -156,7 +155,7 @@ cdef class GroupBy: Parameters ---------- requests : List[GroupByRequest] - The list of `~.cudf._lib.pylibcudf.groupby.GroupByRequest` , each + The list of `~.pylibcudf.groupby.GroupByRequest` , each representing a set of aggregations to perform on a given column of values. Returns @@ -188,7 +187,7 @@ cdef class GroupBy: Parameters ---------- requests : List[GroupByRequest] - The list of `~.cudf._lib.pylibcudf.groupby.GroupByRequest` , each + The list of `~.pylibcudf.groupby.GroupByRequest` , each representing a set of aggregations to perform on a given column of values. Returns diff --git a/python/cudf/cudf/_lib/pylibcudf/interop.pyx b/python/pylibcudf/pylibcudf/interop.pyx similarity index 97% rename from python/cudf/cudf/_lib/pylibcudf/interop.pyx rename to python/pylibcudf/pylibcudf/interop.pyx index adf7e1fd7e8..6eea9c159d6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/interop.pyx +++ b/python/pylibcudf/pylibcudf/interop.pyx @@ -12,8 +12,8 @@ from functools import singledispatch from pyarrow import lib as pa -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.interop cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.interop cimport ( ArrowArray, ArrowArrayStream, ArrowSchema, @@ -23,12 +23,9 @@ from cudf._lib.pylibcudf.libcudf.interop cimport ( from_arrow_stream as cpp_from_arrow_stream, to_arrow as cpp_to_arrow, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport ( - fixed_point_scalar, - scalar, -) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.wrappers.decimals cimport ( +from pylibcudf.libcudf.scalar.scalar cimport fixed_point_scalar, scalar +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.wrappers.decimals cimport ( decimal32, decimal64, decimal128, diff --git a/python/cudf/cudf/_lib/pylibcudf/io/CMakeLists.txt b/python/pylibcudf/pylibcudf/io/CMakeLists.txt similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/io/CMakeLists.txt rename to python/pylibcudf/pylibcudf/io/CMakeLists.txt diff --git a/python/cudf/cudf/_lib/pylibcudf/io/__init__.pxd b/python/pylibcudf/pylibcudf/io/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/io/__init__.pxd rename to python/pylibcudf/pylibcudf/io/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/io/__init__.py b/python/pylibcudf/pylibcudf/io/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/io/__init__.py rename to python/pylibcudf/pylibcudf/io/__init__.py diff --git a/python/pylibcudf/pylibcudf/io/avro.pxd b/python/pylibcudf/pylibcudf/io/avro.pxd new file mode 100644 index 00000000000..8696fcb3c15 --- /dev/null +++ b/python/pylibcudf/pylibcudf/io/avro.pxd @@ -0,0 +1,12 @@ +# Copyright (c) 2024, NVIDIA CORPORATION. +from pylibcudf.io.types cimport SourceInfo, TableWithMetadata +from pylibcudf.libcudf.io.avro cimport avro_reader_options +from pylibcudf.libcudf.types cimport size_type + + +cpdef TableWithMetadata read_avro( + SourceInfo source_info, + list columns = *, + size_type skip_rows = *, + size_type num_rows = * +) diff --git a/python/cudf/cudf/_lib/pylibcudf/io/avro.pyx b/python/pylibcudf/pylibcudf/io/avro.pyx similarity index 89% rename from python/cudf/cudf/_lib/pylibcudf/io/avro.pyx rename to python/pylibcudf/pylibcudf/io/avro.pyx index 538bd8aa322..667c67f4c36 100644 --- a/python/cudf/cudf/_lib/pylibcudf/io/avro.pyx +++ b/python/pylibcudf/pylibcudf/io/avro.pyx @@ -3,13 +3,12 @@ from libcpp.string cimport string from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.io.types cimport SourceInfo, TableWithMetadata -from cudf._lib.pylibcudf.libcudf.io.avro cimport ( +from pylibcudf.io.types cimport SourceInfo, TableWithMetadata +from pylibcudf.libcudf.io.avro cimport ( avro_reader_options, read_avro as cpp_read_avro, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type cpdef TableWithMetadata read_avro( diff --git a/python/cudf/cudf/_lib/pylibcudf/io/datasource.pxd b/python/pylibcudf/pylibcudf/io/datasource.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/io/datasource.pxd rename to python/pylibcudf/pylibcudf/io/datasource.pxd index a0a9c3fa0d4..05c03dceee2 100644 --- a/python/cudf/cudf/_lib/pylibcudf/io/datasource.pxd +++ b/python/pylibcudf/pylibcudf/io/datasource.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport shared_ptr - -from cudf._lib.pylibcudf.libcudf.io.arrow_io_source cimport arrow_io_source -from cudf._lib.pylibcudf.libcudf.io.datasource cimport datasource +from pylibcudf.libcudf.io.arrow_io_source cimport arrow_io_source +from pylibcudf.libcudf.io.datasource cimport datasource cdef class Datasource: diff --git a/python/cudf/cudf/_lib/pylibcudf/io/datasource.pyx b/python/pylibcudf/pylibcudf/io/datasource.pyx similarity index 84% rename from python/cudf/cudf/_lib/pylibcudf/io/datasource.pyx rename to python/pylibcudf/pylibcudf/io/datasource.pyx index aa7fa0efdaf..d2de339bd6b 100644 --- a/python/cudf/cudf/_lib/pylibcudf/io/datasource.pyx +++ b/python/pylibcudf/pylibcudf/io/datasource.pyx @@ -3,9 +3,8 @@ from libcpp.memory cimport shared_ptr from pyarrow.includes.libarrow cimport CRandomAccessFile from pyarrow.lib cimport NativeFile - -from cudf._lib.pylibcudf.libcudf.io.arrow_io_source cimport arrow_io_source -from cudf._lib.pylibcudf.libcudf.io.datasource cimport datasource +from pylibcudf.libcudf.io.arrow_io_source cimport arrow_io_source +from pylibcudf.libcudf.io.datasource cimport datasource cdef class Datasource: diff --git a/python/cudf/cudf/_lib/pylibcudf/io/json.pxd b/python/pylibcudf/pylibcudf/io/json.pxd similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/io/json.pxd rename to python/pylibcudf/pylibcudf/io/json.pxd index 2e0e92a054f..ab9b5b99ce2 100644 --- a/python/cudf/cudf/_lib/pylibcudf/io/json.pxd +++ b/python/pylibcudf/pylibcudf/io/json.pxd @@ -1,14 +1,13 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp cimport bool - -from cudf._lib.pylibcudf.io.types cimport ( +from pylibcudf.io.types cimport ( SinkInfo, SourceInfo, TableWithMetadata, compression_type, ) -from cudf._lib.pylibcudf.libcudf.io.json cimport json_recovery_mode_t -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.io.json cimport json_recovery_mode_t +from pylibcudf.libcudf.types cimport size_type cpdef TableWithMetadata read_json( diff --git a/python/cudf/cudf/_lib/pylibcudf/io/json.pyx b/python/pylibcudf/pylibcudf/io/json.pyx similarity index 95% rename from python/cudf/cudf/_lib/pylibcudf/io/json.pyx rename to python/pylibcudf/pylibcudf/io/json.pyx index 2710ee60075..ce086f4a489 100644 --- a/python/cudf/cudf/_lib/pylibcudf/io/json.pyx +++ b/python/pylibcudf/pylibcudf/io/json.pyx @@ -5,14 +5,9 @@ from libcpp.map cimport map from libcpp.string cimport string from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.concatenate cimport concatenate -from cudf._lib.pylibcudf.io.types cimport ( - SinkInfo, - SourceInfo, - TableWithMetadata, -) -from cudf._lib.pylibcudf.libcudf.io.json cimport ( +from pylibcudf.concatenate cimport concatenate +from pylibcudf.io.types cimport SinkInfo, SourceInfo, TableWithMetadata +from pylibcudf.libcudf.io.json cimport ( json_reader_options, json_recovery_mode_t, json_writer_options, @@ -20,13 +15,13 @@ from cudf._lib.pylibcudf.libcudf.io.json cimport ( schema_element, write_json as cpp_write_json, ) -from cudf._lib.pylibcudf.libcudf.io.types cimport ( +from pylibcudf.libcudf.io.types cimport ( compression_type, table_metadata, table_with_metadata, ) -from cudf._lib.pylibcudf.libcudf.types cimport data_type, size_type -from cudf._lib.pylibcudf.types cimport DataType +from pylibcudf.libcudf.types cimport data_type, size_type +from pylibcudf.types cimport DataType cdef map[string, schema_element] _generate_schema_map(list dtypes): @@ -270,7 +265,7 @@ cpdef void write_json( str false_value = "false" ): """ - Writes a :py:class:`~cudf._lib.pylibcudf.table.Table` to JSON format. + Writes a :py:class:`~pylibcudf.table.Table` to JSON format. Parameters ---------- diff --git a/python/cudf/cudf/_lib/pylibcudf/io/types.pxd b/python/pylibcudf/pylibcudf/io/types.pxd similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/io/types.pxd rename to python/pylibcudf/pylibcudf/io/types.pxd index ab223c16a72..24b1b30e5aa 100644 --- a/python/cudf/cudf/_lib/pylibcudf/io/types.pxd +++ b/python/pylibcudf/pylibcudf/io/types.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.io.data_sink cimport data_sink -from cudf._lib.pylibcudf.libcudf.io.types cimport ( +from pylibcudf.libcudf.io.data_sink cimport data_sink +from pylibcudf.libcudf.io.types cimport ( column_encoding, column_in_metadata, column_name_info, @@ -19,7 +18,7 @@ from cudf._lib.pylibcudf.libcudf.io.types cimport ( table_metadata, table_with_metadata, ) -from cudf._lib.pylibcudf.table cimport Table +from pylibcudf.table cimport Table cdef class TableWithMetadata: diff --git a/python/cudf/cudf/_lib/pylibcudf/io/types.pyx b/python/pylibcudf/pylibcudf/io/types.pyx similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/io/types.pyx rename to python/pylibcudf/pylibcudf/io/types.pyx index df0b729b711..b2c28ffdf24 100644 --- a/python/cudf/cudf/_lib/pylibcudf/io/types.pyx +++ b/python/pylibcudf/pylibcudf/io/types.pyx @@ -6,11 +6,10 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.io.datasource cimport Datasource -from cudf._lib.pylibcudf.libcudf.io.data_sink cimport data_sink -from cudf._lib.pylibcudf.libcudf.io.datasource cimport datasource -from cudf._lib.pylibcudf.libcudf.io.types cimport ( +from pylibcudf.io.datasource cimport Datasource +from pylibcudf.libcudf.io.data_sink cimport data_sink +from pylibcudf.libcudf.io.datasource cimport datasource +from pylibcudf.libcudf.io.types cimport ( column_name_info, host_buffer, source_info, @@ -22,9 +21,9 @@ import errno import io import os -from cudf._lib.pylibcudf.libcudf.io.json import \ +from pylibcudf.libcudf.io.json import \ json_recovery_mode_t as JSONRecoveryMode # no-cython-lint -from cudf._lib.pylibcudf.libcudf.io.types import \ +from pylibcudf.libcudf.io.types import \ compression_type as CompressionType # no-cython-lint diff --git a/python/cudf/cudf/_lib/pylibcudf/join.pxd b/python/pylibcudf/pylibcudf/join.pxd similarity index 91% rename from python/cudf/cudf/_lib/pylibcudf/join.pxd rename to python/pylibcudf/pylibcudf/join.pxd index 83b4776c16e..06969b4a2db 100644 --- a/python/cudf/cudf/_lib/pylibcudf/join.pxd +++ b/python/pylibcudf/pylibcudf/join.pxd @@ -1,6 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.types cimport null_equality +from pylibcudf.libcudf.types cimport null_equality from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/join.pyx b/python/pylibcudf/pylibcudf/join.pyx similarity index 95% rename from python/cudf/cudf/_lib/pylibcudf/join.pyx rename to python/pylibcudf/pylibcudf/join.pyx index 308b1b39291..925efface7b 100644 --- a/python/cudf/cudf/_lib/pylibcudf/join.pyx +++ b/python/pylibcudf/pylibcudf/join.pyx @@ -4,19 +4,18 @@ from cython.operator import dereference from libcpp.memory cimport make_unique, unique_ptr from libcpp.utility cimport move - -from rmm._lib.device_buffer cimport device_buffer - -from cudf._lib.pylibcudf.libcudf cimport join as cpp_join -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf cimport join as cpp_join +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport ( data_type, null_equality, size_type, type_id, ) +from rmm._lib.device_buffer cimport device_buffer + from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/CMakeLists.txt b/python/pylibcudf/pylibcudf/libcudf/CMakeLists.txt similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/CMakeLists.txt rename to python/pylibcudf/pylibcudf/libcudf/CMakeLists.txt diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/__init__.py b/python/pylibcudf/pylibcudf/libcudf/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/aggregation.pxd b/python/pylibcudf/pylibcudf/libcudf/aggregation.pxd similarity index 98% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/aggregation.pxd rename to python/pylibcudf/pylibcudf/libcudf/aggregation.pxd index fe04db52094..58c579b86de 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/aggregation.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/aggregation.pxd @@ -5,8 +5,7 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.types cimport ( data_type, interpolation, nan_equality, diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/aggregation.pyx b/python/pylibcudf/pylibcudf/libcudf/aggregation.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/aggregation.pyx rename to python/pylibcudf/pylibcudf/libcudf/aggregation.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/binaryop.pxd b/python/pylibcudf/pylibcudf/libcudf/binaryop.pxd similarity index 84% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/binaryop.pxd rename to python/pylibcudf/pylibcudf/libcudf/binaryop.pxd index 0eda7d34ff9..a9ca4f5b708 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/binaryop.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/binaryop.pxd @@ -3,11 +3,10 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/binaryop.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/binaryop.pyx b/python/pylibcudf/pylibcudf/libcudf/binaryop.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/binaryop.pyx rename to python/pylibcudf/pylibcudf/libcudf/binaryop.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/column/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/column/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/column/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/__init__.py b/python/pylibcudf/pylibcudf/libcudf/column/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/column/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/column/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/column.pxd b/python/pylibcudf/pylibcudf/libcudf/column/column.pxd similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/column/column.pxd rename to python/pylibcudf/pylibcudf/libcudf/column/column.pxd index dd184d31cc6..7a369701bbd 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/column.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/column/column.pxd @@ -3,14 +3,13 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from rmm._lib.device_buffer cimport device_buffer - -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.types cimport data_type, size_type +from pylibcudf.libcudf.types cimport data_type, size_type + +from rmm._lib.device_buffer cimport device_buffer cdef extern from "cudf/column/column.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/column_factories.pxd b/python/pylibcudf/pylibcudf/libcudf/column/column_factories.pxd similarity index 93% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/column/column_factories.pxd rename to python/pylibcudf/pylibcudf/libcudf/column/column_factories.pxd index 2faff21a77b..f1a326bcd40 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/column_factories.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/column/column_factories.pxd @@ -1,12 +1,9 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from rmm._lib.device_buffer cimport device_buffer - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport ( bitmask_type, data_type, mask_state, @@ -14,6 +11,8 @@ from cudf._lib.pylibcudf.libcudf.types cimport ( type_id, ) +from rmm._lib.device_buffer cimport device_buffer + cdef extern from "cudf/column/column_factories.hpp" namespace "cudf" nogil: cdef unique_ptr[column] make_numeric_column(data_type type, diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/column_view.pxd b/python/pylibcudf/pylibcudf/libcudf/column/column_view.pxd similarity index 97% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/column/column_view.pxd rename to python/pylibcudf/pylibcudf/libcudf/column/column_view.pxd index c6403babe89..c0e971eb5bd 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/column/column_view.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/column/column_view.pxd @@ -2,12 +2,7 @@ from libcpp cimport bool from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.types cimport ( - bitmask_type, - data_type, - size_type, -) +from pylibcudf.libcudf.types cimport bitmask_type, data_type, size_type cdef extern from "cudf/column/column_view.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/concatenate.pxd b/python/pylibcudf/pylibcudf/libcudf/concatenate.pxd similarity index 77% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/concatenate.pxd rename to python/pylibcudf/pylibcudf/libcudf/concatenate.pxd index 0c362390ff2..92f5a185a54 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/concatenate.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/concatenate.pxd @@ -2,13 +2,12 @@ from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector +from pylibcudf.libcudf.column.column cimport column, column_view +from pylibcudf.libcudf.table.table cimport table, table_view +from pylibcudf.libcudf.utilities.host_span cimport host_span from rmm._lib.device_buffer cimport device_buffer -from cudf._lib.pylibcudf.libcudf.column.column cimport column, column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table, table_view -from cudf._lib.pylibcudf.libcudf.utilities.host_span cimport host_span - cdef extern from "cudf/concatenate.hpp" namespace "cudf" nogil: # The versions of concatenate taking vectors don't exist in libcudf diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/contiguous_split.pxd b/python/pylibcudf/pylibcudf/libcudf/contiguous_split.pxd similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/contiguous_split.pxd rename to python/pylibcudf/pylibcudf/libcudf/contiguous_split.pxd index b06feacb016..cadac6a0022 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/contiguous_split.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/contiguous_split.pxd @@ -3,12 +3,11 @@ from libc.stdint cimport uint8_t from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type from rmm._lib.device_buffer cimport device_buffer -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type - cdef extern from "cudf/contiguous_split.hpp" namespace "cudf" nogil: cdef cppclass packed_columns: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/copying.pxd b/python/pylibcudf/pylibcudf/libcudf/copying.pxd similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/copying.pxd rename to python/pylibcudf/pylibcudf/libcudf/copying.pxd index 001489d69bf..a4b6525d4d1 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/copying.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/copying.pxd @@ -5,19 +5,19 @@ from libcpp cimport bool from libcpp.functional cimport reference_wrapper from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport ( + column_view, + mutable_column_view, +) +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type from rmm._lib.device_buffer cimport device_buffer from cudf._lib.exception_handler cimport cudf_exception_handler -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( - column_view, - mutable_column_view, -) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type ctypedef const scalar constscalar diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/copying.pyx b/python/pylibcudf/pylibcudf/libcudf/copying.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/copying.pyx rename to python/pylibcudf/pylibcudf/libcudf/copying.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/datetime.pxd b/python/pylibcudf/pylibcudf/libcudf/datetime.pxd similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/datetime.pxd rename to python/pylibcudf/pylibcudf/libcudf/datetime.pxd index 7db77b9c7c5..a4465343197 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/datetime.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/datetime.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport scalar cdef extern from "cudf/datetime.hpp" namespace "cudf::datetime" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/expressions.pxd b/python/pylibcudf/pylibcudf/libcudf/expressions.pxd similarity index 94% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/expressions.pxd rename to python/pylibcudf/pylibcudf/libcudf/expressions.pxd index 279d969db50..be833b701bd 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/expressions.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/expressions.pxd @@ -2,15 +2,14 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.scalar.scalar cimport ( duration_scalar, numeric_scalar, timestamp_scalar, ) -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/ast/expressions.hpp" namespace "cudf::ast" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/filling.pxd b/python/pylibcudf/pylibcudf/libcudf/filling.pxd similarity index 74% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/filling.pxd rename to python/pylibcudf/pylibcudf/libcudf/filling.pxd index 16ed682f930..7bed80050d2 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/filling.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/filling.pxd @@ -2,16 +2,15 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/filling.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/groupby.pxd b/python/pylibcudf/pylibcudf/libcudf/groupby.pxd similarity index 83% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/groupby.pxd rename to python/pylibcudf/pylibcudf/libcudf/groupby.pxd index 16607cc3711..848462131fe 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/groupby.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/groupby.pxd @@ -5,25 +5,24 @@ from libcpp.functional cimport reference_wrapper from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.aggregation cimport ( +from pylibcudf.libcudf.aggregation cimport ( groupby_aggregation, groupby_scan_aggregation, ) -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.replace cimport replace_policy -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.replace cimport replace_policy +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport ( null_order, null_policy, order, size_type, sorted, ) -from cudf._lib.pylibcudf.libcudf.utilities.host_span cimport host_span +from pylibcudf.libcudf.utilities.host_span cimport host_span # workaround for https://github.com/cython/cython/issues/3885 ctypedef const scalar constscalar diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/hash.pxd b/python/pylibcudf/pylibcudf/libcudf/hash.pxd similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/hash.pxd rename to python/pylibcudf/pylibcudf/libcudf/hash.pxd index 5346252df69..51678ba69d8 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/hash.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/hash.pxd @@ -3,10 +3,9 @@ from libc.stdint cimport uint32_t, uint64_t from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/hashing.hpp" namespace "cudf::hashing" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/interop.pxd b/python/pylibcudf/pylibcudf/libcudf/interop.pxd similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/interop.pxd rename to python/pylibcudf/pylibcudf/libcudf/interop.pxd index 2151da28d4b..f3fed7a18ec 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/interop.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/interop.pxd @@ -7,10 +7,10 @@ from pyarrow.lib cimport CScalar, CTable from cudf._lib.types import cudf_to_np_types, np_to_cudf_types -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "dlpack/dlpack.h" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/CMakeLists.txt b/python/pylibcudf/pylibcudf/libcudf/io/CMakeLists.txt similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/CMakeLists.txt rename to python/pylibcudf/pylibcudf/libcudf/io/CMakeLists.txt diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/io/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/__init__.py b/python/pylibcudf/pylibcudf/libcudf/io/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/io/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/arrow_io_source.pxd b/python/pylibcudf/pylibcudf/libcudf/io/arrow_io_source.pxd similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/arrow_io_source.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/arrow_io_source.pxd index 1d2138f8d10..54a913a9ce3 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/arrow_io_source.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/arrow_io_source.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.datasource as cudf_io_datasource from libcpp.memory cimport shared_ptr from libcpp.string cimport string from pyarrow.includes.libarrow cimport CRandomAccessFile -cimport cudf._lib.pylibcudf.libcudf.io.datasource as cudf_io_datasource - cdef extern from "cudf/io/arrow_io_source.hpp" \ namespace "cudf::io" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/avro.pxd b/python/pylibcudf/pylibcudf/libcudf/io/avro.pxd similarity index 91% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/avro.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/avro.pxd index 530df5aa8f1..2d76e2f6c80 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/avro.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/avro.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.types as cudf_io_types from libcpp.string cimport string from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/io/avro.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/csv.pxd b/python/pylibcudf/pylibcudf/libcudf/io/csv.pxd similarity index 98% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/csv.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/csv.pxd index b5ff6558cd8..73a6d98650c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/csv.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/csv.pxd @@ -1,15 +1,14 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.types as cudf_io_types +cimport pylibcudf.libcudf.table.table_view as cudf_table_view from libc.stdint cimport uint8_t from libcpp cimport bool from libcpp.map cimport map from libcpp.memory cimport shared_ptr, unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -cimport cudf._lib.pylibcudf.libcudf.table.table_view as cudf_table_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type, size_type +from pylibcudf.libcudf.types cimport data_type, size_type cdef extern from "cudf/io/csv.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/data_sink.pxd b/python/pylibcudf/pylibcudf/libcudf/io/data_sink.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/data_sink.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/data_sink.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/datasource.pxd b/python/pylibcudf/pylibcudf/libcudf/io/datasource.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/datasource.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/datasource.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/json.pxd b/python/pylibcudf/pylibcudf/libcudf/io/json.pxd similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/json.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/json.pxd index 86621ae184f..7514e6c5258 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/json.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/json.pxd @@ -1,15 +1,14 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.types as cudf_io_types +cimport pylibcudf.libcudf.table.table_view as cudf_table_view from libc.stdint cimport int32_t, uint8_t from libcpp cimport bool from libcpp.map cimport map from libcpp.memory cimport shared_ptr, unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -cimport cudf._lib.pylibcudf.libcudf.table.table_view as cudf_table_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type, size_type +from pylibcudf.libcudf.types cimport data_type, size_type cdef extern from "cudf/io/json.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/json.pyx b/python/pylibcudf/pylibcudf/libcudf/io/json.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/json.pyx rename to python/pylibcudf/pylibcudf/libcudf/io/json.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/orc.pxd b/python/pylibcudf/pylibcudf/libcudf/io/orc.pxd similarity index 97% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/orc.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/orc.pxd index 25f91849dea..e4a09b8feb2 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/orc.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/orc.pxd @@ -1,5 +1,7 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.types as cudf_io_types +cimport pylibcudf.libcudf.table.table_view as cudf_table_view from libc.stdint cimport int64_t, uint8_t from libcpp cimport bool from libcpp.map cimport map @@ -7,10 +9,7 @@ from libcpp.memory cimport shared_ptr, unique_ptr from libcpp.optional cimport optional from libcpp.string cimport string from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -cimport cudf._lib.pylibcudf.libcudf.table.table_view as cudf_table_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type, size_type +from pylibcudf.libcudf.types cimport data_type, size_type cdef extern from "cudf/io/orc.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/orc_metadata.pxd b/python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/orc_metadata.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd index a23655b06f8..6d3fd4fc742 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/orc_metadata.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd @@ -1,12 +1,12 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.types as cudf_io_types from libc.stdint cimport int32_t, int64_t, uint32_t, uint64_t from libcpp cimport bool from libcpp.optional cimport optional from libcpp.string cimport string from libcpp.vector cimport vector -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types from cudf._lib.variant cimport monostate, variant diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/parquet.pxd b/python/pylibcudf/pylibcudf/libcudf/io/parquet.pxd similarity index 97% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/parquet.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/parquet.pxd index c38f39f7749..a8e1364b54a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/parquet.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/parquet.pxd @@ -1,5 +1,7 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.types as cudf_io_types +cimport pylibcudf.libcudf.table.table_view as cudf_table_view from libc.stdint cimport uint8_t from libcpp cimport bool from libcpp.functional cimport reference_wrapper @@ -8,11 +10,8 @@ from libcpp.memory cimport shared_ptr, unique_ptr from libcpp.optional cimport optional from libcpp.string cimport string from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -cimport cudf._lib.pylibcudf.libcudf.table.table_view as cudf_table_view -from cudf._lib.pylibcudf.libcudf.expressions cimport expression -from cudf._lib.pylibcudf.libcudf.types cimport data_type, size_type +from pylibcudf.libcudf.expressions cimport expression +from pylibcudf.libcudf.types cimport data_type, size_type cdef extern from "cudf/io/parquet.hpp" namespace "cudf::io" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/parquet_metadata.pxd b/python/pylibcudf/pylibcudf/libcudf/io/parquet_metadata.pxd similarity index 89% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/parquet_metadata.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/parquet_metadata.pxd index 34a299b73ab..8e6da56c9a6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/parquet_metadata.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/parquet_metadata.pxd @@ -1,12 +1,11 @@ # Copyright (c) 2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.types as cudf_io_types from libc.stdint cimport int64_t from libcpp.string cimport string from libcpp.unordered_map cimport unordered_map from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/io/parquet_metadata.hpp" namespace "cudf::io" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/text.pxd b/python/pylibcudf/pylibcudf/libcudf/io/text.pxd similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/text.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/text.pxd index bec223d4079..14397ef970d 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/text.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/text.pxd @@ -4,8 +4,7 @@ from libc.stdint cimport uint64_t from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column cimport column cdef extern from "cudf/io/text/byte_range_info.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/timezone.pxd b/python/pylibcudf/pylibcudf/libcudf/io/timezone.pxd similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/timezone.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/timezone.pxd index 88cb5544dc1..676901efcec 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/timezone.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/timezone.pxd @@ -4,8 +4,7 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.optional cimport optional from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table cimport table cdef extern from "cudf/timezone.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/types.pxd b/python/pylibcudf/pylibcudf/libcudf/io/types.pxd similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/types.pxd rename to python/pylibcudf/pylibcudf/libcudf/io/types.pxd index 8d87deb1472..4e83c56dcf0 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/types.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/types.pxd @@ -1,5 +1,8 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.io.data_sink as cudf_io_data_sink +cimport pylibcudf.libcudf.io.datasource as cudf_io_datasource +cimport pylibcudf.libcudf.table.table_view as cudf_table_view from libc.stdint cimport int32_t, uint8_t from libcpp cimport bool from libcpp.map cimport map @@ -9,12 +12,8 @@ from libcpp.string cimport string from libcpp.unordered_map cimport unordered_map from libcpp.vector cimport vector from pyarrow.includes.libarrow cimport CRandomAccessFile - -cimport cudf._lib.pylibcudf.libcudf.io.data_sink as cudf_io_data_sink -cimport cudf._lib.pylibcudf.libcudf.io.datasource as cudf_io_datasource -cimport cudf._lib.pylibcudf.libcudf.table.table_view as cudf_table_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/io/types.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/io/types.pyx b/python/pylibcudf/pylibcudf/libcudf/io/types.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/io/types.pyx rename to python/pylibcudf/pylibcudf/libcudf/io/types.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/join.pxd b/python/pylibcudf/pylibcudf/libcudf/join.pxd similarity index 88% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/join.pxd rename to python/pylibcudf/pylibcudf/libcudf/join.pxd index 32cd17f7c11..6f6c145b23c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/join.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/join.pxd @@ -4,14 +4,13 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.vector cimport vector +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport null_equality, size_type from rmm._lib.device_uvector cimport device_uvector -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport null_equality, size_type - ctypedef unique_ptr[device_uvector[size_type]] gather_map_type ctypedef pair[gather_map_type, gather_map_type] gather_map_pair_type diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/labeling.pxd b/python/pylibcudf/pylibcudf/libcudf/labeling.pxd similarity index 78% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/labeling.pxd rename to python/pylibcudf/pylibcudf/libcudf/labeling.pxd index 54731bf29af..ec6ef6b2a41 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/labeling.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/labeling.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cudf/labeling/label_bins.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/__init__.py b/python/pylibcudf/pylibcudf/libcudf/lists/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/lists/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/combine.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/combine.pxd similarity index 78% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/combine.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/combine.pxd index 728bd840f71..d077958ce03 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/combine.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/combine.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/lists/combine.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/contains.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd similarity index 80% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/contains.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd index 82aed7d70a0..05d4e7628e6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/contains.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd @@ -2,14 +2,12 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view +from pylibcudf.libcudf.scalar.scalar cimport scalar from cudf._lib.exception_handler cimport cudf_exception_handler -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar cdef extern from "cudf/lists/contains.hpp" namespace "cudf::lists" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/count_elements.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/count_elements.pxd similarity index 61% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/count_elements.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/count_elements.pxd index 38bdd4db0bb..fff082d90ef 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/count_elements.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/count_elements.pxd @@ -1,11 +1,8 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view cdef extern from "cudf/lists/count_elements.hpp" namespace "cudf::lists" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/explode.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/explode.pxd similarity index 59% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/explode.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/explode.pxd index 622a866f593..c64b2715cca 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/explode.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/explode.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/lists/explode.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/extract.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/extract.pxd similarity index 64% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/extract.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/extract.pxd index 53609ba8830..2ea060d87de 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/extract.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/extract.pxd @@ -1,12 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column, column_view -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column, column_view +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/lists/extract.hpp" namespace "cudf::lists" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/gather.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/gather.pxd similarity index 67% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/gather.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/gather.pxd index ab7ed141365..a762c6aa333 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/gather.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/gather.pxd @@ -1,11 +1,8 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view cdef extern from "cudf/lists/gather.hpp" namespace "cudf::lists" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/lists_column_view.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/lists_column_view.pxd similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/lists_column_view.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/lists_column_view.pxd index 8917a6ac899..f43340a78b0 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/lists_column_view.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/lists_column_view.pxd @@ -1,10 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/lists/lists_column_view.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/reverse.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/reverse.pxd similarity index 62% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/reverse.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/reverse.pxd index 0382a5d42c3..43b671ebfa0 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/reverse.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/reverse.pxd @@ -1,11 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view cdef extern from "cudf/lists/reverse.hpp" namespace "cudf::lists" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/sorting.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/sorting.pxd similarity index 59% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/sorting.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/sorting.pxd index 145ab41302f..561b25ed0a9 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/sorting.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/sorting.pxd @@ -1,12 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) -from cudf._lib.pylibcudf.libcudf.types cimport null_order, order +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view +from pylibcudf.libcudf.types cimport null_order, order cdef extern from "cudf/lists/sorting.hpp" namespace "cudf::lists" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/stream_compaction.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/stream_compaction.pxd similarity index 60% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/lists/stream_compaction.pxd rename to python/pylibcudf/pylibcudf/libcudf/lists/stream_compaction.pxd index 22b91df7192..f9980765772 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/lists/stream_compaction.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/stream_compaction.pxd @@ -1,12 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) -from cudf._lib.pylibcudf.libcudf.types cimport nan_equality, null_equality +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view +from pylibcudf.libcudf.types cimport nan_equality, null_equality cdef extern from "cudf/lists/stream_compaction.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/merge.pxd b/python/pylibcudf/pylibcudf/libcudf/merge.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/merge.pxd rename to python/pylibcudf/pylibcudf/libcudf/merge.pxd index dacb3dc2d74..6930b7a0d06 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/merge.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/merge.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.types as libcudf_types from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/merge.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/null_mask.pxd b/python/pylibcudf/pylibcudf/libcudf/null_mask.pxd similarity index 80% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/null_mask.pxd rename to python/pylibcudf/pylibcudf/libcudf/null_mask.pxd index 0cab404c05f..3fc2c7e8f1e 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/null_mask.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/null_mask.pxd @@ -2,17 +2,12 @@ from libc.stdint cimport int32_t from libcpp.pair cimport pair +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport bitmask_type, mask_state, size_type from rmm._lib.device_buffer cimport device_buffer -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport ( - bitmask_type, - mask_state, - size_type, -) - ctypedef int32_t underlying_type_t_mask_state diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/__init__.py b/python/pylibcudf/pylibcudf/libcudf/nvtext/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/nvtext/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/byte_pair_encode.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/byte_pair_encode.pxd similarity index 73% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/byte_pair_encode.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/byte_pair_encode.pxd index 033a820d2ef..fd768d22704 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/byte_pair_encode.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/byte_pair_encode.pxd @@ -2,10 +2,9 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar cdef extern from "nvtext/byte_pair_encoding.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/edit_distance.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/edit_distance.pxd similarity index 75% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/edit_distance.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/edit_distance.pxd index ca1f6650a5a..d459372fb8f 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/edit_distance.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/edit_distance.pxd @@ -2,9 +2,8 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "nvtext/edit_distance.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/generate_ngrams.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/generate_ngrams.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/generate_ngrams.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/generate_ngrams.pxd index 2034b1c1ee5..eefae746662 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/generate_ngrams.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/generate_ngrams.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type cdef extern from "nvtext/generate_ngrams.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/jaccard.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/jaccard.pxd similarity index 61% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/jaccard.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/jaccard.pxd index 789a1a2c35a..16c5f7f575e 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/jaccard.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/jaccard.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "nvtext/jaccard.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/minhash.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/minhash.pxd similarity index 70% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/minhash.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/minhash.pxd index fc5577bf3f9..0c352a5068b 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/minhash.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/minhash.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "nvtext/minhash.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/ngrams_tokenize.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/ngrams_tokenize.pxd similarity index 58% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/ngrams_tokenize.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/ngrams_tokenize.pxd index 229f4d8f5a3..89f6e5edfc4 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/ngrams_tokenize.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/ngrams_tokenize.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type cdef extern from "nvtext/ngrams_tokenize.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/normalize.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/normalize.pxd similarity index 75% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/normalize.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/normalize.pxd index 65c63b089df..cbf121920e1 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/normalize.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/normalize.pxd @@ -2,9 +2,8 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "nvtext/normalize.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/replace.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/replace.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/replace.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/replace.pxd index aaad28d2684..6bcfa1d9380 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/replace.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/replace.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type cdef extern from "nvtext/replace.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/stemmer.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/stemmer.pxd similarity index 79% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/stemmer.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/stemmer.pxd index 040d4c9de63..673bffa28ae 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/stemmer.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/stemmer.pxd @@ -2,10 +2,9 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "nvtext/stemmer.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/subword_tokenize.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/subword_tokenize.pxd similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/subword_tokenize.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/subword_tokenize.pxd index cce40bcd3f6..aabac0a617b 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/subword_tokenize.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/subword_tokenize.pxd @@ -4,9 +4,8 @@ from libc.stdint cimport uint16_t, uint32_t from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "nvtext/subword_tokenize.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/tokenize.pxd b/python/pylibcudf/pylibcudf/libcudf/nvtext/tokenize.pxd similarity index 84% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/tokenize.pxd rename to python/pylibcudf/pylibcudf/libcudf/nvtext/tokenize.pxd index 721a6cabd01..34c054cf36f 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/nvtext/tokenize.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/nvtext/tokenize.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type cdef extern from "nvtext/tokenize.hpp" namespace "nvtext" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/partitioning.pxd b/python/pylibcudf/pylibcudf/libcudf/partitioning.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/partitioning.pxd rename to python/pylibcudf/pylibcudf/libcudf/partitioning.pxd index babb167d2a0..1ea10e8a194 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/partitioning.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/partitioning.pxd @@ -1,15 +1,14 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.types as libcudf_types from libc.stdint cimport uint32_t from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/partitioning.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/quantiles.pxd b/python/pylibcudf/pylibcudf/libcudf/quantiles.pxd similarity index 70% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/quantiles.pxd rename to python/pylibcudf/pylibcudf/libcudf/quantiles.pxd index 32cfec2d4fc..cf2350fc36c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/quantiles.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/quantiles.pxd @@ -3,12 +3,11 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport ( interpolation, null_order, order, diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/reduce.pxd b/python/pylibcudf/pylibcudf/libcudf/reduce.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/reduce.pxd rename to python/pylibcudf/pylibcudf/libcudf/reduce.pxd index 3ae1f1a2906..6d2f4bd23d1 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/reduce.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/reduce.pxd @@ -3,15 +3,11 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport pair - -from cudf._lib.pylibcudf.libcudf.aggregation cimport ( - reduce_aggregation, - scan_aggregation, -) -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.aggregation cimport reduce_aggregation, scan_aggregation +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/reduction.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/reduce.pyx b/python/pylibcudf/pylibcudf/libcudf/reduce.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/reduce.pyx rename to python/pylibcudf/pylibcudf/libcudf/reduce.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/replace.pxd b/python/pylibcudf/pylibcudf/libcudf/replace.pxd similarity index 88% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/replace.pxd rename to python/pylibcudf/pylibcudf/libcudf/replace.pxd index e67efbdaba0..08edf3b824a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/replace.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/replace.pxd @@ -5,12 +5,12 @@ from libcpp.memory cimport unique_ptr from cudf._lib.types import cudf_to_np_types, np_to_cudf_types -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.scalar.scalar cimport scalar cdef extern from "cudf/replace.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/replace.pyx b/python/pylibcudf/pylibcudf/libcudf/replace.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/replace.pyx rename to python/pylibcudf/pylibcudf/libcudf/replace.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/reshape.pxd b/python/pylibcudf/pylibcudf/libcudf/reshape.pxd similarity index 57% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/reshape.pxd rename to python/pylibcudf/pylibcudf/libcudf/reshape.pxd index dfd9a71c3d3..446a082ab1b 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/reshape.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/reshape.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2019-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/reshape.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/rolling.pxd b/python/pylibcudf/pylibcudf/libcudf/rolling.pxd similarity index 71% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/rolling.pxd rename to python/pylibcudf/pylibcudf/libcudf/rolling.pxd index d7844f99a73..cc468587a15 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/rolling.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/rolling.pxd @@ -4,10 +4,10 @@ from libcpp.memory cimport unique_ptr from cudf._lib.types import cudf_to_np_types, np_to_cudf_types -from cudf._lib.pylibcudf.libcudf.aggregation cimport rolling_aggregation -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.aggregation cimport rolling_aggregation +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/rolling.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/round.pxd b/python/pylibcudf/pylibcudf/libcudf/round.pxd similarity index 75% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/round.pxd rename to python/pylibcudf/pylibcudf/libcudf/round.pxd index 027c4634c9f..1b65133f275 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/round.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/round.pxd @@ -2,9 +2,8 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cudf/round.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/round.pyx b/python/pylibcudf/pylibcudf/libcudf/round.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/round.pyx rename to python/pylibcudf/pylibcudf/libcudf/round.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/scalar/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/scalar/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/__init__.py b/python/pylibcudf/pylibcudf/libcudf/scalar/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/scalar/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/scalar.pxd b/python/pylibcudf/pylibcudf/libcudf/scalar/scalar.pxd similarity index 91% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/scalar.pxd rename to python/pylibcudf/pylibcudf/libcudf/scalar/scalar.pxd index 662eb90096e..4b40a8a26f6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/scalar.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/scalar/scalar.pxd @@ -3,11 +3,10 @@ from libc.stdint cimport int32_t, int64_t from libcpp cimport bool from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type -from cudf._lib.pylibcudf.libcudf.wrappers.decimals cimport scale_type +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.wrappers.decimals cimport scale_type cdef extern from "cudf/scalar/scalar.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/scalar_factories.pxd b/python/pylibcudf/pylibcudf/libcudf/scalar/scalar_factories.pxd similarity index 84% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/scalar_factories.pxd rename to python/pylibcudf/pylibcudf/libcudf/scalar/scalar_factories.pxd index c8220df8938..3a2dd57f15c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/scalar/scalar_factories.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/scalar/scalar_factories.pxd @@ -2,8 +2,7 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.scalar.scalar cimport scalar cdef extern from "cudf/scalar/scalar_factories.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/search.pxd b/python/pylibcudf/pylibcudf/libcudf/search.pxd similarity index 73% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/search.pxd rename to python/pylibcudf/pylibcudf/libcudf/search.pxd index e2247a1366f..5a6ad5384c9 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/search.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/search.pxd @@ -1,12 +1,11 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.types as libcudf_types from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/search.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/sorting.pxd b/python/pylibcudf/pylibcudf/libcudf/sorting.pxd similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/sorting.pxd rename to python/pylibcudf/pylibcudf/libcudf/sorting.pxd index 3d7d3aa2790..4b1705d9bb8 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/sorting.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/sorting.pxd @@ -6,12 +6,12 @@ from libcpp.vector cimport vector from cudf._lib.types import cudf_to_np_types, np_to_cudf_types -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.pylibcudf.libcudf.aggregation cimport rank_method -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +cimport pylibcudf.libcudf.types as libcudf_types +from pylibcudf.libcudf.aggregation cimport rank_method +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/sorting.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/stream_compaction.pxd b/python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd similarity index 88% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/stream_compaction.pxd rename to python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd index 11d803e5b76..2b476f69132 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/stream_compaction.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd @@ -6,11 +6,11 @@ from libcpp.vector cimport vector from cudf._lib.types import cudf_to_np_types, np_to_cudf_types -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport ( nan_equality, nan_policy, null_equality, diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/stream_compaction.pyx b/python/pylibcudf/pylibcudf/libcudf/stream_compaction.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/stream_compaction.pyx rename to python/pylibcudf/pylibcudf/libcudf/stream_compaction.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/CMakeLists.txt b/python/pylibcudf/pylibcudf/libcudf/strings/CMakeLists.txt similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/CMakeLists.txt rename to python/pylibcudf/pylibcudf/libcudf/strings/CMakeLists.txt diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/__init__.py b/python/pylibcudf/pylibcudf/libcudf/strings/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/strings/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/attributes.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/attributes.pxd similarity index 76% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/attributes.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/attributes.pxd index c4d52c83663..5e510339834 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/attributes.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/attributes.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cudf/strings/attributes.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/capitalize.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/capitalize.pxd similarity index 63% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/capitalize.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/capitalize.pxd index b0771e16680..77e3f46d7ee 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/capitalize.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/capitalize.pxd @@ -1,12 +1,9 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.char_types cimport ( - string_character_types, -) +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.char_types cimport string_character_types cdef extern from "cudf/strings/capitalize.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/case.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/case.pxd similarity index 81% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/case.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/case.pxd index 82c146b0023..7869e90f387 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/case.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/case.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cudf/strings/case.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/char_types.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/char_types.pxd similarity index 82% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/char_types.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/char_types.pxd index f63e1a93f91..5d54c1c3593 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/char_types.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/char_types.pxd @@ -2,10 +2,9 @@ from libc.stdint cimport uint32_t from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar cdef extern from "cudf/strings/char_types/char_types.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/char_types.pyx b/python/pylibcudf/pylibcudf/libcudf/strings/char_types.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/char_types.pyx rename to python/pylibcudf/pylibcudf/libcudf/strings/char_types.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/combine.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/combine.pxd similarity index 83% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/combine.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/combine.pxd index b05e46af0d6..e4c9fa5817a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/combine.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/combine.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/strings/combine.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/contains.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/contains.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/contains.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/contains.pxd index f8ed253ff3c..c2fb5f0dce4 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/contains.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/contains.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.regex_program cimport regex_program cdef extern from "cudf/strings/contains.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/__init__.py b/python/pylibcudf/pylibcudf/libcudf/strings/convert/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_booleans.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_booleans.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_booleans.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_booleans.pxd index daac2b5be28..83a9573baad 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_booleans.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_booleans.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar cdef extern from "cudf/strings/convert/convert_booleans.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_datetime.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_datetime.pxd similarity index 76% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_datetime.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_datetime.pxd index 263cee4fe1e..fa8975c4df9 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_datetime.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_datetime.pxd @@ -2,10 +2,9 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/strings/convert/convert_datetime.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_durations.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_durations.pxd similarity index 72% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_durations.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_durations.pxd index af357b9bde4..ebe10574353 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_durations.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_durations.pxd @@ -2,10 +2,9 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/strings/convert/convert_durations.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_fixed_point.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_fixed_point.pxd similarity index 73% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_fixed_point.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_fixed_point.pxd index 91c1abdb5e4..6f820f3c9a4 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_fixed_point.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_fixed_point.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/strings/convert/convert_fixed_point.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_floats.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_floats.pxd similarity index 71% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_floats.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_floats.pxd index 5fbf2be0244..f4fc4674506 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_floats.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_floats.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/strings/convert/convert_floats.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_integers.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_integers.pxd similarity index 80% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_integers.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_integers.pxd index 3d6c59cbfcf..f12aab0a2e4 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_integers.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_integers.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/strings/convert/convert_integers.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_ipv4.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_ipv4.pxd similarity index 76% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_ipv4.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_ipv4.pxd index 86de956b6b6..fe571cfced6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_ipv4.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_ipv4.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cudf/strings/convert/convert_ipv4.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_lists.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_lists.pxd similarity index 62% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_lists.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_lists.pxd index aba2dbcca64..109111568d8 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_lists.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_lists.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar cdef extern from "cudf/strings/convert/convert_lists.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_urls.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_urls.pxd similarity index 72% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_urls.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_urls.pxd index fb7e0cae6de..5c07b698454 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/convert/convert_urls.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/convert/convert_urls.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cudf/strings/convert/convert_urls.hpp" namespace \ diff --git a/python/pylibcudf/pylibcudf/libcudf/strings/extract.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/extract.pxd new file mode 100644 index 00000000000..12cd628fc1f --- /dev/null +++ b/python/pylibcudf/pylibcudf/libcudf/strings/extract.pxd @@ -0,0 +1,14 @@ +# Copyright (c) 2020-2024, NVIDIA CORPORATION. + +from libcpp.memory cimport unique_ptr +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.table.table cimport table + + +cdef extern from "cudf/strings/extract.hpp" namespace "cudf::strings" nogil: + + cdef unique_ptr[table] extract( + column_view source_strings, + regex_program) except + diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/find.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/find.pxd similarity index 83% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/find.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/find.pxd index 04e2ed554ee..1d1df1b8b8e 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/find.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/find.pxd @@ -2,11 +2,10 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/find.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/find_multiple.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/find_multiple.pxd similarity index 68% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/find_multiple.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/find_multiple.pxd index 1f1adc8e99f..0491644a10a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/find_multiple.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/find_multiple.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view cdef extern from "cudf/strings/find_multiple.hpp" namespace "cudf::strings" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/findall.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/findall.pxd similarity index 56% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/findall.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/findall.pxd index 4bc450b8911..b25724586e1 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/findall.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/findall.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2019-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.regex_program cimport regex_program cdef extern from "cudf/strings/findall.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/json.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/json.pxd similarity index 79% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/json.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/json.pxd index 5926fa1d29f..571ba7be7af 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/json.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/json.pxd @@ -3,10 +3,9 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar, string_scalar +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport scalar, string_scalar cdef extern from "cudf/json/json.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/padding.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/padding.pxd similarity index 59% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/padding.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/padding.pxd index 26681a1aa00..657fe61eb14 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/padding.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/padding.pxd @@ -2,12 +2,11 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.side_type cimport side_type -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.side_type cimport side_type +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/padding.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/regex_flags.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/regex_flags.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/regex_flags.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/regex_flags.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/regex_flags.pyx b/python/pylibcudf/pylibcudf/libcudf/strings/regex_flags.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/regex_flags.pyx rename to python/pylibcudf/pylibcudf/libcudf/strings/regex_flags.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/regex_program.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/regex_program.pxd similarity index 84% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/regex_program.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/regex_program.pxd index e92c8bd7737..5d1d9e583d5 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/regex_program.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/regex_program.pxd @@ -2,8 +2,7 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags cdef extern from "cudf/strings/regex/regex_program.hpp" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/repeat.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/repeat.pxd similarity index 67% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/repeat.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/repeat.pxd index 9e128529406..410ff58f299 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/repeat.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/repeat.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/repeat_strings.hpp" namespace "cudf::strings" \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/replace.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/replace.pxd similarity index 73% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/replace.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/replace.pxd index 34e03eec638..fd5f4fc4751 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/replace.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/replace.pxd @@ -3,11 +3,10 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/replace.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/replace_re.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/replace_re.pxd similarity index 63% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/replace_re.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/replace_re.pxd index 739505cd51d..40f0e2fa50c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/replace_re.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/replace_re.pxd @@ -3,13 +3,12 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/replace_re.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/side_type.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/side_type.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/side_type.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/side_type.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/split/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/split/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/__init__.py b/python/pylibcudf/pylibcudf/libcudf/strings/split/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/strings/split/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/partition.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/split/partition.pxd similarity index 63% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/partition.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/split/partition.pxd index 5119124b3e3..4162e886a7d 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/partition.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/split/partition.pxd @@ -2,11 +2,10 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.table.table cimport table cdef extern from "cudf/strings/split/partition.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/split.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/split/split.pxd similarity index 78% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/split.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/split/split.pxd index 4f75664e47a..3046149aebb 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/split/split.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/split/split.pxd @@ -2,13 +2,12 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/split/split.hpp" namespace \ diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/strip.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/strip.pxd similarity index 52% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/strip.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/strip.pxd index 2d6fd6a9e89..b0ca771762d 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/strip.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/strip.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.side_type cimport side_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.side_type cimport side_type cdef extern from "cudf/strings/strip.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/substring.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/substring.pxd similarity index 66% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/substring.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/substring.pxd index 02123cc0807..576dae9387f 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/substring.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/substring.pxd @@ -1,11 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport numeric_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport numeric_scalar +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/slice.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/translate.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/translate.pxd similarity index 73% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/translate.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/translate.pxd index b23ac277216..85fa719128a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/translate.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/translate.pxd @@ -4,11 +4,10 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport char_utf8 +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport char_utf8 cdef extern from "cudf/strings/translate.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/wrap.pxd b/python/pylibcudf/pylibcudf/libcudf/strings/wrap.pxd similarity index 58% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings/wrap.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings/wrap.pxd index 1d92d445634..c0053391328 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings/wrap.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings/wrap.pxd @@ -1,10 +1,9 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/strings/wrap.hpp" namespace "cudf::strings" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings_udf.pxd b/python/pylibcudf/pylibcudf/libcudf/strings_udf.pxd similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/strings_udf.pxd rename to python/pylibcudf/pylibcudf/libcudf/strings_udf.pxd index 804ad30dfb1..0c8fe1060ac 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/strings_udf.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/strings_udf.pxd @@ -4,13 +4,12 @@ from libc.stdint cimport uint8_t, uint16_t from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type - cdef extern from "cudf/strings/udf/udf_string.hpp" namespace \ "cudf::strings::udf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/table/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/table/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/table/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/table/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/table/__init__.py b/python/pylibcudf/pylibcudf/libcudf/table/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/table/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/table/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/table/table.pxd b/python/pylibcudf/pylibcudf/libcudf/table/table.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/table/table.pxd rename to python/pylibcudf/pylibcudf/libcudf/table/table.pxd index 737a1327d45..654c29b083a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/table/table.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/table/table.pxd @@ -2,13 +2,9 @@ from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table_view cimport ( - mutable_table_view, - table_view, -) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table_view cimport mutable_table_view, table_view +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/table/table.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/table/table_view.pxd b/python/pylibcudf/pylibcudf/libcudf/table/table_view.pxd similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/table/table_view.pxd rename to python/pylibcudf/pylibcudf/libcudf/table/table_view.pxd index 00e1a89c025..3af2f6a6c2c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/table/table_view.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/table/table_view.pxd @@ -1,12 +1,11 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type cdef extern from "cudf/table/table_view.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/transform.pxd b/python/pylibcudf/pylibcudf/libcudf/transform.pxd similarity index 73% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/transform.pxd rename to python/pylibcudf/pylibcudf/libcudf/transform.pxd index b0a978fe5c5..38298a7c1f1 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/transform.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/transform.pxd @@ -4,20 +4,15 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.string cimport string +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.expressions cimport expression +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport bitmask_type, data_type, size_type from rmm._lib.device_buffer cimport device_buffer -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.expressions cimport expression -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport ( - bitmask_type, - data_type, - size_type, -) - cdef extern from "cudf/transform.hpp" namespace "cudf" nogil: cdef pair[unique_ptr[device_buffer], size_type] bools_to_mask ( diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/transpose.pxd b/python/pylibcudf/pylibcudf/libcudf/transpose.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/transpose.pxd rename to python/pylibcudf/pylibcudf/libcudf/transpose.pxd index 5dcb9c165ad..9c0e3c073b0 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/transpose.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/transpose.pxd @@ -2,9 +2,8 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table_view cimport table_view cdef extern from "cudf/transpose.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/types.pxd b/python/pylibcudf/pylibcudf/libcudf/types.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/types.pxd rename to python/pylibcudf/pylibcudf/libcudf/types.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/types.pyx b/python/pylibcudf/pylibcudf/libcudf/types.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/types.pyx rename to python/pylibcudf/pylibcudf/libcudf/types.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/unary.pxd b/python/pylibcudf/pylibcudf/libcudf/unary.pxd similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/unary.pxd rename to python/pylibcudf/pylibcudf/libcudf/unary.pxd index 2a1b189af51..887f8c7fca4 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/unary.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/unary.pxd @@ -3,10 +3,9 @@ from libc.stdint cimport int32_t from libcpp cimport bool from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/unary.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/unary.pyx b/python/pylibcudf/pylibcudf/libcudf/unary.pyx similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/unary.pyx rename to python/pylibcudf/pylibcudf/libcudf/unary.pyx diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/utilities/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/utilities/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/__init__.py b/python/pylibcudf/pylibcudf/libcudf/utilities/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/utilities/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/host_span.pxd b/python/pylibcudf/pylibcudf/libcudf/utilities/host_span.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/host_span.pxd rename to python/pylibcudf/pylibcudf/libcudf/utilities/host_span.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/traits.pxd b/python/pylibcudf/pylibcudf/libcudf/utilities/traits.pxd similarity index 93% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/traits.pxd rename to python/pylibcudf/pylibcudf/libcudf/utilities/traits.pxd index 0cc58af735b..69765e44274 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/utilities/traits.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/utilities/traits.pxd @@ -2,8 +2,7 @@ from libcpp cimport bool from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.types cimport data_type +from pylibcudf.libcudf.types cimport data_type cdef extern from "cudf/utilities/traits.hpp" namespace "cudf" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/__init__.pxd b/python/pylibcudf/pylibcudf/libcudf/wrappers/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/__init__.pxd rename to python/pylibcudf/pylibcudf/libcudf/wrappers/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/__init__.py b/python/pylibcudf/pylibcudf/libcudf/wrappers/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/__init__.py rename to python/pylibcudf/pylibcudf/libcudf/wrappers/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/decimals.pxd b/python/pylibcudf/pylibcudf/libcudf/wrappers/decimals.pxd similarity index 90% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/decimals.pxd rename to python/pylibcudf/pylibcudf/libcudf/wrappers/decimals.pxd index 09b0c87e4b8..558299501d6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/decimals.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/wrappers/decimals.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. from libc.stdint cimport int32_t, int64_t - -from cudf._lib.pylibcudf.libcudf.types cimport int128 +from pylibcudf.libcudf.types cimport int128 cdef extern from "cudf/fixed_point/fixed_point.hpp" namespace "numeric" nogil: diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/durations.pxd b/python/pylibcudf/pylibcudf/libcudf/wrappers/durations.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/durations.pxd rename to python/pylibcudf/pylibcudf/libcudf/wrappers/durations.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/timestamps.pxd b/python/pylibcudf/pylibcudf/libcudf/wrappers/timestamps.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/libcudf/wrappers/timestamps.pxd rename to python/pylibcudf/pylibcudf/libcudf/wrappers/timestamps.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/lists.pxd b/python/pylibcudf/pylibcudf/lists.pxd similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/lists.pxd rename to python/pylibcudf/pylibcudf/lists.pxd index 38a479e4791..a8c5d3a5a7f 100644 --- a/python/cudf/cudf/_lib/pylibcudf/lists.pxd +++ b/python/pylibcudf/pylibcudf/lists.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp cimport bool - -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type from .column cimport Column from .scalar cimport Scalar diff --git a/python/cudf/cudf/_lib/pylibcudf/lists.pyx b/python/pylibcudf/pylibcudf/lists.pyx similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/lists.pyx rename to python/pylibcudf/pylibcudf/lists.pyx index 19c961aa014..4081249a0b7 100644 --- a/python/cudf/cudf/_lib/pylibcudf/lists.pyx +++ b/python/pylibcudf/pylibcudf/lists.pyx @@ -4,25 +4,24 @@ from cython.operator cimport dereference from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.lists cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.lists cimport ( contains as cpp_contains, explode as cpp_explode, gather as cpp_gather, reverse as cpp_reverse, ) -from cudf._lib.pylibcudf.libcudf.lists.combine cimport ( +from pylibcudf.libcudf.lists.combine cimport ( concatenate_list_elements as cpp_concatenate_list_elements, concatenate_null_policy, concatenate_rows as cpp_concatenate_rows, ) -from cudf._lib.pylibcudf.libcudf.lists.extract cimport ( +from pylibcudf.libcudf.lists.extract cimport ( extract_list_element as cpp_extract_list_element, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type -from cudf._lib.pylibcudf.lists cimport ColumnOrScalar, ColumnOrSizeType +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type +from pylibcudf.lists cimport ColumnOrScalar, ColumnOrSizeType from .column cimport Column, ListColumnView from .scalar cimport Scalar @@ -112,8 +111,8 @@ cpdef Column contains(Column input, ColumnOrScalar search_key): the search_key is contained in the input. ``search_key`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`. For details, see :cpp:func:`contains`. @@ -173,8 +172,8 @@ cpdef Column index_of(Column input, ColumnOrScalar search_key, bool find_first_o key row within the corresponding list row in the lists column. ``search_key`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`. For details, see :cpp:func:`index_of`. diff --git a/python/cudf/cudf/_lib/pylibcudf/merge.pxd b/python/pylibcudf/pylibcudf/merge.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/merge.pxd rename to python/pylibcudf/pylibcudf/merge.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/merge.pyx b/python/pylibcudf/pylibcudf/merge.pyx similarity index 83% rename from python/cudf/cudf/_lib/pylibcudf/merge.pyx rename to python/pylibcudf/pylibcudf/merge.pyx index 5aa46c142f6..a7d43c9d158 100644 --- a/python/cudf/cudf/_lib/pylibcudf/merge.pyx +++ b/python/pylibcudf/pylibcudf/merge.pyx @@ -3,11 +3,10 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf cimport merge as cpp_merge -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport null_order, order, size_type +from pylibcudf.libcudf cimport merge as cpp_merge +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport null_order, order, size_type from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/quantiles.pxd b/python/pylibcudf/pylibcudf/quantiles.pxd similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/quantiles.pxd rename to python/pylibcudf/pylibcudf/quantiles.pxd index 70ff135ca77..fbc1dfb30a6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/quantiles.pxd +++ b/python/pylibcudf/pylibcudf/quantiles.pxd @@ -1,7 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.types cimport interpolation, sorted +from pylibcudf.libcudf.types cimport interpolation, sorted from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/quantiles.pyx b/python/pylibcudf/pylibcudf/quantiles.pyx similarity index 93% rename from python/cudf/cudf/_lib/pylibcudf/quantiles.pyx rename to python/pylibcudf/pylibcudf/quantiles.pyx index c1f0e30ccd3..b847ade774d 100644 --- a/python/cudf/cudf/_lib/pylibcudf/quantiles.pyx +++ b/python/pylibcudf/pylibcudf/quantiles.pyx @@ -4,15 +4,14 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.quantiles cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.quantiles cimport ( quantile as cpp_quantile, quantiles as cpp_quantiles, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport null_order, order, sorted +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport null_order, order, sorted from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/reduce.pxd b/python/pylibcudf/pylibcudf/reduce.pxd similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/reduce.pxd rename to python/pylibcudf/pylibcudf/reduce.pxd index 935efd4acf2..047f08297e4 100644 --- a/python/cudf/cudf/_lib/pylibcudf/reduce.pxd +++ b/python/pylibcudf/pylibcudf/reduce.pxd @@ -1,6 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.reduce cimport scan_type +from pylibcudf.libcudf.reduce cimport scan_type from .aggregation cimport Aggregation from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/reduce.pyx b/python/pylibcudf/pylibcudf/reduce.pyx similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/reduce.pyx rename to python/pylibcudf/pylibcudf/reduce.pyx index c272f183007..b0212a5b9c1 100644 --- a/python/cudf/cudf/_lib/pylibcudf/reduce.pyx +++ b/python/pylibcudf/pylibcudf/reduce.pyx @@ -3,23 +3,18 @@ from cython.operator cimport dereference from libcpp.memory cimport unique_ptr from libcpp.utility cimport move, pair - -from cudf._lib.pylibcudf.libcudf cimport reduce as cpp_reduce -from cudf._lib.pylibcudf.libcudf.aggregation cimport ( - reduce_aggregation, - scan_aggregation, -) -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.reduce cimport scan_type -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf cimport reduce as cpp_reduce +from pylibcudf.libcudf.aggregation cimport reduce_aggregation, scan_aggregation +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.reduce cimport scan_type +from pylibcudf.libcudf.scalar.scalar cimport scalar from .aggregation cimport Aggregation from .column cimport Column from .scalar cimport Scalar from .types cimport DataType -from cudf._lib.pylibcudf.libcudf.reduce import \ - scan_type as ScanType # no-cython-lint +from pylibcudf.libcudf.reduce import scan_type as ScanType # no-cython-lint cpdef Scalar reduce(Column col, Aggregation agg, DataType data_type): diff --git a/python/cudf/cudf/_lib/pylibcudf/replace.pxd b/python/pylibcudf/pylibcudf/replace.pxd similarity index 92% rename from python/cudf/cudf/_lib/pylibcudf/replace.pxd rename to python/pylibcudf/pylibcudf/replace.pxd index 40484c728db..cb9fa8bf960 100644 --- a/python/cudf/cudf/_lib/pylibcudf/replace.pxd +++ b/python/pylibcudf/pylibcudf/replace.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp cimport bool - -from cudf._lib.pylibcudf.libcudf.replace cimport replace_policy +from pylibcudf.libcudf.replace cimport replace_policy from .column cimport Column from .scalar cimport Scalar diff --git a/python/cudf/cudf/_lib/pylibcudf/replace.pyx b/python/pylibcudf/pylibcudf/replace.pyx similarity index 97% rename from python/cudf/cudf/_lib/pylibcudf/replace.pyx rename to python/pylibcudf/pylibcudf/replace.pyx index 6e08e8f64a9..115dee132fd 100644 --- a/python/cudf/cudf/_lib/pylibcudf/replace.pyx +++ b/python/pylibcudf/pylibcudf/replace.pyx @@ -6,11 +6,10 @@ from cython.operator import dereference from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move +from pylibcudf.libcudf cimport replace as cpp_replace +from pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf cimport replace as cpp_replace -from cudf._lib.pylibcudf.libcudf.column.column cimport column - -from cudf._lib.pylibcudf.libcudf.replace import \ +from pylibcudf.libcudf.replace import \ replace_policy as ReplacePolicy # no-cython-lint from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/reshape.pxd b/python/pylibcudf/pylibcudf/reshape.pxd similarity index 80% rename from python/cudf/cudf/_lib/pylibcudf/reshape.pxd rename to python/pylibcudf/pylibcudf/reshape.pxd index a7cc45d7a08..c4d3d375f7a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/reshape.pxd +++ b/python/pylibcudf/pylibcudf/reshape.pxd @@ -1,6 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type from .column cimport Column from .scalar cimport Scalar diff --git a/python/cudf/cudf/_lib/pylibcudf/reshape.pyx b/python/pylibcudf/pylibcudf/reshape.pyx similarity index 86% rename from python/cudf/cudf/_lib/pylibcudf/reshape.pyx rename to python/pylibcudf/pylibcudf/reshape.pyx index b68eba48cd6..a99145be900 100644 --- a/python/cudf/cudf/_lib/pylibcudf/reshape.pyx +++ b/python/pylibcudf/pylibcudf/reshape.pyx @@ -2,14 +2,13 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.reshape cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.reshape cimport ( interleave_columns as cpp_interleave_columns, tile as cpp_tile, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/rolling.pxd b/python/pylibcudf/pylibcudf/rolling.pxd similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/rolling.pxd rename to python/pylibcudf/pylibcudf/rolling.pxd index cdadee68d43..9fcda21a62f 100644 --- a/python/cudf/cudf/_lib/pylibcudf/rolling.pxd +++ b/python/pylibcudf/pylibcudf/rolling.pxd @@ -1,6 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type from .aggregation cimport Aggregation from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/rolling.pyx b/python/pylibcudf/pylibcudf/rolling.pyx similarity index 89% rename from python/cudf/cudf/_lib/pylibcudf/rolling.pyx rename to python/pylibcudf/pylibcudf/rolling.pyx index 7aa7828a5dd..a46540d7ffa 100644 --- a/python/cudf/cudf/_lib/pylibcudf/rolling.pyx +++ b/python/pylibcudf/pylibcudf/rolling.pyx @@ -3,11 +3,10 @@ from cython.operator cimport dereference from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf cimport rolling as cpp_rolling -from cudf._lib.pylibcudf.libcudf.aggregation cimport rolling_aggregation -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf cimport rolling as cpp_rolling +from pylibcudf.libcudf.aggregation cimport rolling_aggregation +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.types cimport size_type from .aggregation cimport Aggregation from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/round.pxd b/python/pylibcudf/pylibcudf/round.pxd similarity index 77% rename from python/cudf/cudf/_lib/pylibcudf/round.pxd rename to python/pylibcudf/pylibcudf/round.pxd index ccb64fc2847..c8501b03fad 100644 --- a/python/cudf/cudf/_lib/pylibcudf/round.pxd +++ b/python/pylibcudf/pylibcudf/round.pxd @@ -1,7 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libc.stdint cimport int32_t - -from cudf._lib.pylibcudf.libcudf.round cimport rounding_method +from pylibcudf.libcudf.round cimport rounding_method from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/round.pyx b/python/pylibcudf/pylibcudf/round.pyx similarity index 85% rename from python/cudf/cudf/_lib/pylibcudf/round.pyx rename to python/pylibcudf/pylibcudf/round.pyx index cfcc2aafbb8..dc60d53b07e 100644 --- a/python/cudf/cudf/_lib/pylibcudf/round.pyx +++ b/python/pylibcudf/pylibcudf/round.pyx @@ -2,16 +2,12 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr from libcpp.utility cimport move +from pylibcudf.libcudf.round cimport round as cpp_round, rounding_method -from cudf._lib.pylibcudf.libcudf.round cimport ( - round as cpp_round, - rounding_method, -) - -from cudf._lib.pylibcudf.libcudf.round import \ +from pylibcudf.libcudf.round import \ rounding_method as RoundingMethod # no-cython-lint -from cudf._lib.pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column cimport column from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/scalar.pxd b/python/pylibcudf/pylibcudf/scalar.pxd similarity index 91% rename from python/cudf/cudf/_lib/pylibcudf/scalar.pxd rename to python/pylibcudf/pylibcudf/scalar.pxd index 3de86d93519..1f10649c4e0 100644 --- a/python/cudf/cudf/_lib/pylibcudf/scalar.pxd +++ b/python/pylibcudf/pylibcudf/scalar.pxd @@ -2,11 +2,10 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr +from pylibcudf.libcudf.scalar.scalar cimport scalar from rmm._lib.memory_resource cimport DeviceMemoryResource -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar - from .types cimport DataType diff --git a/python/cudf/cudf/_lib/pylibcudf/scalar.pyx b/python/pylibcudf/pylibcudf/scalar.pyx similarity index 97% rename from python/cudf/cudf/_lib/pylibcudf/scalar.pyx rename to python/pylibcudf/pylibcudf/scalar.pyx index 6799c37cea2..c2b89b222cf 100644 --- a/python/cudf/cudf/_lib/pylibcudf/scalar.pyx +++ b/python/pylibcudf/pylibcudf/scalar.pyx @@ -2,11 +2,10 @@ from cython cimport no_gc_clear from libcpp.memory cimport unique_ptr +from pylibcudf.libcudf.scalar.scalar cimport scalar from rmm._lib.memory_resource cimport get_current_device_resource -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar - from .types cimport DataType diff --git a/python/cudf/cudf/_lib/pylibcudf/search.pxd b/python/pylibcudf/pylibcudf/search.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/search.pxd rename to python/pylibcudf/pylibcudf/search.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/search.pyx b/python/pylibcudf/pylibcudf/search.pyx similarity index 93% rename from python/cudf/cudf/_lib/pylibcudf/search.pyx rename to python/pylibcudf/pylibcudf/search.pyx index 151a39f204f..ff2468f3f9c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/search.pyx +++ b/python/pylibcudf/pylibcudf/search.pyx @@ -3,10 +3,9 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf cimport search as cpp_search -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.types cimport null_order, order +from pylibcudf.libcudf cimport search as cpp_search +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.types cimport null_order, order from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/sorting.pxd b/python/pylibcudf/pylibcudf/sorting.pxd similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/sorting.pxd rename to python/pylibcudf/pylibcudf/sorting.pxd index a4ea541a03b..8127ab21ad1 100644 --- a/python/cudf/cudf/_lib/pylibcudf/sorting.pxd +++ b/python/pylibcudf/pylibcudf/sorting.pxd @@ -1,14 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp cimport bool - -from cudf._lib.pylibcudf.libcudf.aggregation cimport rank_method -from cudf._lib.pylibcudf.libcudf.types cimport ( - null_order, - null_policy, - order, - size_type, -) +from pylibcudf.libcudf.aggregation cimport rank_method +from pylibcudf.libcudf.types cimport null_order, null_policy, order, size_type from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/sorting.pyx b/python/pylibcudf/pylibcudf/sorting.pyx similarity index 96% rename from python/cudf/cudf/_lib/pylibcudf/sorting.pyx rename to python/pylibcudf/pylibcudf/sorting.pyx index 8c5a8e26899..bd173eebacb 100644 --- a/python/cudf/cudf/_lib/pylibcudf/sorting.pyx +++ b/python/pylibcudf/pylibcudf/sorting.pyx @@ -3,12 +3,11 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf cimport sorting as cpp_sorting -from cudf._lib.pylibcudf.libcudf.aggregation cimport rank_method -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport null_order, null_policy, order +from pylibcudf.libcudf cimport sorting as cpp_sorting +from pylibcudf.libcudf.aggregation cimport rank_method +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport null_order, null_policy, order from .column cimport Column from .table cimport Table diff --git a/python/cudf/cudf/_lib/pylibcudf/stream_compaction.pxd b/python/pylibcudf/pylibcudf/stream_compaction.pxd similarity index 89% rename from python/cudf/cudf/_lib/pylibcudf/stream_compaction.pxd rename to python/pylibcudf/pylibcudf/stream_compaction.pxd index 6f89aaf90e7..a4f39792f0c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/stream_compaction.pxd +++ b/python/pylibcudf/pylibcudf/stream_compaction.pxd @@ -1,9 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.stream_compaction cimport ( - duplicate_keep_option, -) -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.stream_compaction cimport duplicate_keep_option +from pylibcudf.libcudf.types cimport ( nan_equality, nan_policy, null_equality, diff --git a/python/cudf/cudf/_lib/pylibcudf/stream_compaction.pyx b/python/pylibcudf/pylibcudf/stream_compaction.pyx similarity index 95% rename from python/cudf/cudf/_lib/pylibcudf/stream_compaction.pyx rename to python/pylibcudf/pylibcudf/stream_compaction.pyx index 43449d3690a..b574bfa9fa2 100644 --- a/python/cudf/cudf/_lib/pylibcudf/stream_compaction.pyx +++ b/python/pylibcudf/pylibcudf/stream_compaction.pyx @@ -3,16 +3,11 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf cimport ( - stream_compaction as cpp_stream_compaction, -) -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.stream_compaction cimport ( - duplicate_keep_option, -) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf cimport stream_compaction as cpp_stream_compaction +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.stream_compaction cimport duplicate_keep_option +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport ( nan_equality, nan_policy, null_equality, @@ -20,7 +15,7 @@ from cudf._lib.pylibcudf.libcudf.types cimport ( size_type, ) -from cudf._lib.pylibcudf.libcudf.stream_compaction import \ +from pylibcudf.libcudf.stream_compaction import \ duplicate_keep_option as DuplicateKeepOption # no-cython-lint, isort:skip from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/CMakeLists.txt b/python/pylibcudf/pylibcudf/strings/CMakeLists.txt similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/strings/CMakeLists.txt rename to python/pylibcudf/pylibcudf/strings/CMakeLists.txt diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/__init__.pxd b/python/pylibcudf/pylibcudf/strings/__init__.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/strings/__init__.pxd rename to python/pylibcudf/pylibcudf/strings/__init__.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/__init__.py b/python/pylibcudf/pylibcudf/strings/__init__.py similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/strings/__init__.py rename to python/pylibcudf/pylibcudf/strings/__init__.py diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/capitalize.pxd b/python/pylibcudf/pylibcudf/strings/capitalize.pxd similarity index 64% rename from python/cudf/cudf/_lib/pylibcudf/strings/capitalize.pxd rename to python/pylibcudf/pylibcudf/strings/capitalize.pxd index 9acf189fc23..b45949d4eb4 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/capitalize.pxd +++ b/python/pylibcudf/pylibcudf/strings/capitalize.pxd @@ -1,7 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.scalar cimport Scalar +from pylibcudf.column cimport Column +from pylibcudf.scalar cimport Scalar cpdef Column capitalize(Column input, Scalar delimiters=*) diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/capitalize.pyx b/python/pylibcudf/pylibcudf/strings/capitalize.pyx similarity index 74% rename from python/cudf/cudf/_lib/pylibcudf/strings/capitalize.pyx rename to python/pylibcudf/pylibcudf/strings/capitalize.pyx index d3f79088018..c9c1db058f9 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/capitalize.pyx +++ b/python/pylibcudf/pylibcudf/strings/capitalize.pyx @@ -2,16 +2,15 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.scalar.scalar_factories cimport ( +from pylibcudf.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.scalar.scalar_factories cimport ( make_string_scalar as cpp_make_string_scalar, ) -from cudf._lib.pylibcudf.libcudf.strings cimport capitalize as cpp_capitalize -from cudf._lib.pylibcudf.scalar cimport Scalar -from cudf._lib.pylibcudf.strings.char_types cimport string_character_types +from pylibcudf.libcudf.strings cimport capitalize as cpp_capitalize +from pylibcudf.scalar cimport Scalar +from pylibcudf.strings.char_types cimport string_character_types from cython.operator import dereference diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/case.pxd b/python/pylibcudf/pylibcudf/strings/case.pxd similarity index 76% rename from python/cudf/cudf/_lib/pylibcudf/strings/case.pxd rename to python/pylibcudf/pylibcudf/strings/case.pxd index 225d566fe06..d3c98d5e3dc 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/case.pxd +++ b/python/pylibcudf/pylibcudf/strings/case.pxd @@ -1,6 +1,6 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.column cimport Column +from pylibcudf.column cimport Column cpdef Column to_lower(Column input) diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/case.pyx b/python/pylibcudf/pylibcudf/strings/case.pyx similarity index 79% rename from python/cudf/cudf/_lib/pylibcudf/strings/case.pyx rename to python/pylibcudf/pylibcudf/strings/case.pyx index 3a360fd6b10..9e6cd7717d3 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/case.pyx +++ b/python/pylibcudf/pylibcudf/strings/case.pyx @@ -2,10 +2,9 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.strings cimport case as cpp_case +from pylibcudf.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.strings cimport case as cpp_case cpdef Column to_lower(Column input): diff --git a/python/pylibcudf/pylibcudf/strings/char_types.pxd b/python/pylibcudf/pylibcudf/strings/char_types.pxd new file mode 100644 index 00000000000..ad4e4cf61d8 --- /dev/null +++ b/python/pylibcudf/pylibcudf/strings/char_types.pxd @@ -0,0 +1,3 @@ +# Copyright (c) 2024, NVIDIA CORPORATION. + +from pylibcudf.libcudf.strings.char_types cimport string_character_types diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/char_types.pyx b/python/pylibcudf/pylibcudf/strings/char_types.pyx similarity index 64% rename from python/cudf/cudf/_lib/pylibcudf/strings/char_types.pyx rename to python/pylibcudf/pylibcudf/strings/char_types.pyx index d96161951c6..e7621fb4d84 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/char_types.pyx +++ b/python/pylibcudf/pylibcudf/strings/char_types.pyx @@ -1,4 +1,4 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.strings.char_types import \ +from pylibcudf.libcudf.strings.char_types import \ string_character_types as StringCharacterTypes # no-cython-lint diff --git a/python/pylibcudf/pylibcudf/strings/contains.pxd b/python/pylibcudf/pylibcudf/strings/contains.pxd new file mode 100644 index 00000000000..2cd4891a0ea --- /dev/null +++ b/python/pylibcudf/pylibcudf/strings/contains.pxd @@ -0,0 +1,7 @@ +# Copyright (c) 2024, NVIDIA CORPORATION. + +from pylibcudf.column cimport Column +from pylibcudf.strings.regex_program cimport RegexProgram + + +cpdef Column contains_re(Column input, RegexProgram prog) diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/contains.pyx b/python/pylibcudf/pylibcudf/strings/contains.pyx similarity index 75% rename from python/cudf/cudf/_lib/pylibcudf/strings/contains.pyx rename to python/pylibcudf/pylibcudf/strings/contains.pyx index 8c598b7c953..1a2446f6e2c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/contains.pyx +++ b/python/pylibcudf/pylibcudf/strings/contains.pyx @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.strings cimport contains as cpp_contains -from cudf._lib.pylibcudf.strings.regex_program cimport RegexProgram +from pylibcudf.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.strings cimport contains as cpp_contains +from pylibcudf.strings.regex_program cimport RegexProgram cpdef Column contains_re( diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/find.pxd b/python/pylibcudf/pylibcudf/strings/find.pxd similarity index 77% rename from python/cudf/cudf/_lib/pylibcudf/strings/find.pxd rename to python/pylibcudf/pylibcudf/strings/find.pxd index bb43069f190..e7524a9360b 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/find.pxd +++ b/python/pylibcudf/pylibcudf/strings/find.pxd @@ -1,8 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.types cimport size_type -from cudf._lib.pylibcudf.scalar cimport Scalar +from pylibcudf.column cimport Column +from pylibcudf.libcudf.types cimport size_type +from pylibcudf.scalar cimport Scalar ctypedef fused ColumnOrScalar: Column diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/find.pyx b/python/pylibcudf/pylibcudf/strings/find.pyx similarity index 90% rename from python/cudf/cudf/_lib/pylibcudf/strings/find.pyx rename to python/pylibcudf/pylibcudf/strings/find.pyx index a0214efd0a1..22d370bf7e8 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/find.pyx +++ b/python/pylibcudf/pylibcudf/strings/find.pyx @@ -1,15 +1,14 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.strings cimport find as cpp_find -from cudf._lib.pylibcudf.scalar cimport Scalar +from pylibcudf.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.strings cimport find as cpp_find +from pylibcudf.scalar cimport Scalar from cython.operator import dereference -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.scalar.scalar cimport string_scalar cpdef Column find( @@ -22,8 +21,8 @@ cpdef Column find( first found in each string of the provided column. ``target`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`. If ``target`` is a scalar, the scalar will be searched for in each string. If ``target`` is a column, the corresponding string in the column will be @@ -126,8 +125,8 @@ cpdef Column contains( column. ``target`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`. If ``target`` is a scalar, the scalar will be searched for in each string. If ``target`` is a column, the corresponding string in the column will be @@ -180,8 +179,8 @@ cpdef Column starts_with( column. ``target`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`. If ``target`` is a scalar, the scalar will be searched for in each string. If ``target`` is a column, the corresponding string in the column will be @@ -233,8 +232,8 @@ cpdef Column ends_with( target string was found at the end of the string in the provided column. ``target`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`. If ``target`` is a scalar, the scalar will be searched for in each string. If ``target`` is a column, the corresponding string in the column will be diff --git a/python/pylibcudf/pylibcudf/strings/regex_flags.pxd b/python/pylibcudf/pylibcudf/strings/regex_flags.pxd new file mode 100644 index 00000000000..1ce3cd07df8 --- /dev/null +++ b/python/pylibcudf/pylibcudf/strings/regex_flags.pxd @@ -0,0 +1,2 @@ +# Copyright (c) 2020-2024, NVIDIA CORPORATION. +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/regex_flags.pyx b/python/pylibcudf/pylibcudf/strings/regex_flags.pyx similarity index 59% rename from python/cudf/cudf/_lib/pylibcudf/strings/regex_flags.pyx rename to python/pylibcudf/pylibcudf/strings/regex_flags.pyx index 903c2ddd503..ce3b6b10a42 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/regex_flags.pyx +++ b/python/pylibcudf/pylibcudf/strings/regex_flags.pyx @@ -1,4 +1,4 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.strings.regex_flags import \ +from pylibcudf.libcudf.strings.regex_flags import \ regex_flags as RegexFlags # no-cython-lint diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/regex_program.pxd b/python/pylibcudf/pylibcudf/strings/regex_program.pxd similarity index 70% rename from python/cudf/cudf/_lib/pylibcudf/strings/regex_program.pxd rename to python/pylibcudf/pylibcudf/strings/regex_program.pxd index 61ed268fb2d..045cc1e1c6b 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/regex_program.pxd +++ b/python/pylibcudf/pylibcudf/strings/regex_program.pxd @@ -2,8 +2,7 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.strings.regex_program cimport regex_program cdef class RegexProgram: diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/regex_program.pyx b/python/pylibcudf/pylibcudf/strings/regex_program.pyx similarity index 77% rename from python/cudf/cudf/_lib/pylibcudf/strings/regex_program.pyx rename to python/pylibcudf/pylibcudf/strings/regex_program.pyx index d605b0aba02..c19d900d156 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/regex_program.pyx +++ b/python/pylibcudf/pylibcudf/strings/regex_program.pyx @@ -4,12 +4,12 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags +from pylibcudf.libcudf.strings.regex_program cimport regex_program -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.strings.regex_flags import RegexFlags -from cudf._lib.pylibcudf.strings.regex_flags import RegexFlags -from cudf._lib.pylibcudf.strings.regex_flags cimport regex_flags +from pylibcudf.strings.regex_flags cimport regex_flags cdef class RegexProgram: diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/replace.pxd b/python/pylibcudf/pylibcudf/strings/replace.pxd similarity index 71% rename from python/cudf/cudf/_lib/pylibcudf/strings/replace.pxd rename to python/pylibcudf/pylibcudf/strings/replace.pxd index 52e2dc3c738..26273b96c57 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/replace.pxd +++ b/python/pylibcudf/pylibcudf/strings/replace.pxd @@ -1,8 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.types cimport size_type -from cudf._lib.pylibcudf.scalar cimport Scalar +from pylibcudf.column cimport Column +from pylibcudf.libcudf.types cimport size_type +from pylibcudf.scalar cimport Scalar cpdef Column replace( diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/replace.pyx b/python/pylibcudf/pylibcudf/strings/replace.pyx similarity index 90% rename from python/cudf/cudf/_lib/pylibcudf/strings/replace.pyx rename to python/pylibcudf/pylibcudf/strings/replace.pyx index c757150a600..9d0ebf4a814 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/replace.pyx +++ b/python/pylibcudf/pylibcudf/strings/replace.pyx @@ -2,20 +2,19 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.scalar.scalar_factories cimport ( +from pylibcudf.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.scalar.scalar_factories cimport ( make_string_scalar as cpp_make_string_scalar, ) -from cudf._lib.pylibcudf.libcudf.strings.replace cimport ( +from pylibcudf.libcudf.strings.replace cimport ( replace as cpp_replace, replace_multiple as cpp_replace_multiple, replace_slice as cpp_replace_slice, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type -from cudf._lib.pylibcudf.scalar cimport Scalar +from pylibcudf.libcudf.types cimport size_type +from pylibcudf.scalar cimport Scalar cpdef Column replace( diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/slice.pxd b/python/pylibcudf/pylibcudf/strings/slice.pxd similarity index 69% rename from python/cudf/cudf/_lib/pylibcudf/strings/slice.pxd rename to python/pylibcudf/pylibcudf/strings/slice.pxd index 7d8d0006ef4..01e9f2b3c88 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/slice.pxd +++ b/python/pylibcudf/pylibcudf/strings/slice.pxd @@ -1,7 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.scalar cimport Scalar +from pylibcudf.column cimport Column +from pylibcudf.scalar cimport Scalar ctypedef fused ColumnOrScalar: Column diff --git a/python/cudf/cudf/_lib/pylibcudf/strings/slice.pyx b/python/pylibcudf/pylibcudf/strings/slice.pyx similarity index 81% rename from python/cudf/cudf/_lib/pylibcudf/strings/slice.pyx rename to python/pylibcudf/pylibcudf/strings/slice.pyx index df75134fb71..70d10cab36c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/strings/slice.pyx +++ b/python/pylibcudf/pylibcudf/strings/slice.pyx @@ -2,16 +2,15 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.pylibcudf.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport numeric_scalar -from cudf._lib.pylibcudf.libcudf.scalar.scalar_factories cimport ( +from pylibcudf.column cimport Column +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.scalar.scalar cimport numeric_scalar +from pylibcudf.libcudf.scalar.scalar_factories cimport ( make_fixed_width_scalar as cpp_make_fixed_width_scalar, ) -from cudf._lib.pylibcudf.libcudf.strings cimport substring as cpp_slice -from cudf._lib.pylibcudf.libcudf.types cimport size_type -from cudf._lib.pylibcudf.scalar cimport Scalar +from pylibcudf.libcudf.strings cimport substring as cpp_slice +from pylibcudf.libcudf.types cimport size_type +from pylibcudf.scalar cimport Scalar from cython.operator import dereference @@ -25,9 +24,9 @@ cpdef Column slice_strings( """Perform a slice operation on a strings column. ``start`` and ``stop`` may be a - :py:class:`~cudf._lib.pylibcudf.column.Column` or a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. But ``step`` must be a - :py:class:`~cudf._lib.pylibcudf.scalar.Scalar`. + :py:class:`~pylibcudf.column.Column` or a + :py:class:`~pylibcudf.scalar.Scalar`. But ``step`` must be a + :py:class:`~pylibcudf.scalar.Scalar`. For details, see :cpp:func:`cudf::strings::slice_strings`. diff --git a/python/cudf/cudf/_lib/pylibcudf/table.pxd b/python/pylibcudf/pylibcudf/table.pxd similarity index 78% rename from python/cudf/cudf/_lib/pylibcudf/table.pxd rename to python/pylibcudf/pylibcudf/table.pxd index e476fc770e3..cf5c0aa80f2 100644 --- a/python/cudf/cudf/_lib/pylibcudf/table.pxd +++ b/python/pylibcudf/pylibcudf/table.pxd @@ -1,9 +1,8 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view cdef class Table: diff --git a/python/cudf/cudf/_lib/pylibcudf/table.pyx b/python/pylibcudf/pylibcudf/table.pyx similarity index 93% rename from python/cudf/cudf/_lib/pylibcudf/table.pyx rename to python/pylibcudf/pylibcudf/table.pyx index d91fa0474b0..5f77b89a605 100644 --- a/python/cudf/cudf/_lib/pylibcudf/table.pyx +++ b/python/pylibcudf/pylibcudf/table.pyx @@ -4,10 +4,9 @@ from cython.operator cimport dereference from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.table.table cimport table from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/traits.pxd b/python/pylibcudf/pylibcudf/traits.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/traits.pxd rename to python/pylibcudf/pylibcudf/traits.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/traits.pyx b/python/pylibcudf/pylibcudf/traits.pyx similarity index 98% rename from python/cudf/cudf/_lib/pylibcudf/traits.pyx rename to python/pylibcudf/pylibcudf/traits.pyx index d2370f8d641..5a1c67e1f6c 100644 --- a/python/cudf/cudf/_lib/pylibcudf/traits.pyx +++ b/python/pylibcudf/pylibcudf/traits.pyx @@ -1,8 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp cimport bool - -from cudf._lib.pylibcudf.libcudf.utilities cimport traits +from pylibcudf.libcudf.utilities cimport traits from .types cimport DataType diff --git a/python/cudf/cudf/_lib/pylibcudf/transform.pxd b/python/pylibcudf/pylibcudf/transform.pxd similarity index 100% rename from python/cudf/cudf/_lib/pylibcudf/transform.pxd rename to python/pylibcudf/pylibcudf/transform.pxd diff --git a/python/cudf/cudf/_lib/pylibcudf/transform.pyx b/python/pylibcudf/pylibcudf/transform.pyx similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/transform.pyx rename to python/pylibcudf/pylibcudf/transform.pyx index a734e71b820..100ccb580ce 100644 --- a/python/cudf/cudf/_lib/pylibcudf/transform.pyx +++ b/python/pylibcudf/pylibcudf/transform.pyx @@ -2,12 +2,11 @@ from libcpp.memory cimport unique_ptr from libcpp.utility cimport move, pair +from pylibcudf.libcudf cimport transform as cpp_transform +from pylibcudf.libcudf.types cimport size_type from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer -from cudf._lib.pylibcudf.libcudf cimport transform as cpp_transform -from cudf._lib.pylibcudf.libcudf.types cimport size_type - from .column cimport Column from .gpumemoryview cimport gpumemoryview diff --git a/python/cudf/cudf/_lib/pylibcudf/types.pxd b/python/pylibcudf/pylibcudf/types.pxd similarity index 90% rename from python/cudf/cudf/_lib/pylibcudf/types.pxd rename to python/pylibcudf/pylibcudf/types.pxd index 7d3ddca14a1..1278552e3c6 100644 --- a/python/cudf/cudf/_lib/pylibcudf/types.pxd +++ b/python/pylibcudf/pylibcudf/types.pxd @@ -2,8 +2,7 @@ from libc.stdint cimport int32_t from libcpp cimport bool as cbool - -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf.libcudf.types cimport ( data_type, interpolation, mask_state, diff --git a/python/cudf/cudf/_lib/pylibcudf/types.pyx b/python/pylibcudf/pylibcudf/types.pyx similarity index 63% rename from python/cudf/cudf/_lib/pylibcudf/types.pyx rename to python/pylibcudf/pylibcudf/types.pyx index 6dbb287f3c4..0a8cf5fcb6a 100644 --- a/python/cudf/cudf/_lib/pylibcudf/types.pyx +++ b/python/pylibcudf/pylibcudf/types.pyx @@ -1,19 +1,18 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. from libc.stdint cimport int32_t +from pylibcudf.libcudf.types cimport data_type, type_id -from cudf._lib.pylibcudf.libcudf.types cimport data_type, type_id - -from cudf._lib.pylibcudf.libcudf.types import type_id as TypeId # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import nan_policy as NanPolicy # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import null_policy as NullPolicy # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import interpolation as Interpolation # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import mask_state as MaskState # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import nan_equality as NanEquality # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import null_equality as NullEquality # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import null_order as NullOrder # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import order as Order # no-cython-lint, isort:skip -from cudf._lib.pylibcudf.libcudf.types import sorted as Sorted # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import type_id as TypeId # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import nan_policy as NanPolicy # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import null_policy as NullPolicy # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import interpolation as Interpolation # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import mask_state as MaskState # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import nan_equality as NanEquality # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import null_equality as NullEquality # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import null_order as NullOrder # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import order as Order # no-cython-lint, isort:skip +from pylibcudf.libcudf.types import sorted as Sorted # no-cython-lint, isort:skip cdef class DataType: diff --git a/python/cudf/cudf/_lib/pylibcudf/unary.pxd b/python/pylibcudf/pylibcudf/unary.pxd similarity index 87% rename from python/cudf/cudf/_lib/pylibcudf/unary.pxd rename to python/pylibcudf/pylibcudf/unary.pxd index d07df838172..9ee08653599 100644 --- a/python/cudf/cudf/_lib/pylibcudf/unary.pxd +++ b/python/pylibcudf/pylibcudf/unary.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp cimport bool - -from cudf._lib.pylibcudf.libcudf.unary cimport unary_operator +from pylibcudf.libcudf.unary cimport unary_operator from .column cimport Column from .types cimport DataType diff --git a/python/cudf/cudf/_lib/pylibcudf/unary.pyx b/python/pylibcudf/pylibcudf/unary.pyx similarity index 94% rename from python/cudf/cudf/_lib/pylibcudf/unary.pyx rename to python/pylibcudf/pylibcudf/unary.pyx index 8da46f0a832..839360ef406 100644 --- a/python/cudf/cudf/_lib/pylibcudf/unary.pyx +++ b/python/pylibcudf/pylibcudf/unary.pyx @@ -3,12 +3,11 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move +from pylibcudf.libcudf cimport unary as cpp_unary +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.unary cimport unary_operator -from cudf._lib.pylibcudf.libcudf cimport unary as cpp_unary -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.unary cimport unary_operator - -from cudf._lib.pylibcudf.libcudf.unary import \ +from pylibcudf.libcudf.unary import \ unary_operator as UnaryOperator # no-cython-lint from .column cimport Column diff --git a/python/cudf/cudf/_lib/pylibcudf/utils.pxd b/python/pylibcudf/pylibcudf/utils.pxd similarity index 71% rename from python/cudf/cudf/_lib/pylibcudf/utils.pxd rename to python/pylibcudf/pylibcudf/utils.pxd index 77c05086397..6b994f20b61 100644 --- a/python/cudf/cudf/_lib/pylibcudf/utils.pxd +++ b/python/pylibcudf/pylibcudf/utils.pxd @@ -2,9 +2,8 @@ from libcpp.functional cimport reference_wrapper from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport bitmask_type +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport bitmask_type cdef void * int_to_void_ptr(Py_ssize_t ptr) nogil diff --git a/python/cudf/cudf/_lib/pylibcudf/utils.pyx b/python/pylibcudf/pylibcudf/utils.pyx similarity index 89% rename from python/cudf/cudf/_lib/pylibcudf/utils.pyx rename to python/pylibcudf/pylibcudf/utils.pyx index b4427e8ecff..e31d0ffc294 100644 --- a/python/cudf/cudf/_lib/pylibcudf/utils.pyx +++ b/python/pylibcudf/pylibcudf/utils.pyx @@ -5,9 +5,8 @@ from cython.operator import dereference from libc.stdint cimport uintptr_t from libcpp.functional cimport reference_wrapper from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport bitmask_type +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport bitmask_type from .scalar cimport Scalar diff --git a/python/pylibcudf/pyproject.toml b/python/pylibcudf/pyproject.toml new file mode 100644 index 00000000000..f0e6b358de8 --- /dev/null +++ b/python/pylibcudf/pyproject.toml @@ -0,0 +1,143 @@ +# Copyright (c) 2021-2024, NVIDIA CORPORATION. + +[build-system] +build-backend = "rapids_build_backend.build" +requires = [ + "rapids-build-backend>=0.3.0,<0.4.0.dev0", + "scikit-build-core[pyproject]>=0.7.0", +] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. + +[project] +name = "pylibcudf" +dynamic = ["version"] +description = "pylibcudf - Python bindings for libcudf" +readme = { file = "README.md", content-type = "text/markdown" } +authors = [ + { name = "NVIDIA Corporation" }, +] +license = { text = "Apache 2.0" } +requires-python = ">=3.9" +dependencies = [ + "cachetools", + "cubinlinker", + "cuda-python>=11.7.1,<12.0a0", + "fsspec>=0.6.0", + "numba>=0.57", + "numpy>=1.23,<2.0a0", + "nvtx>=0.2.1", + "packaging", + "pandas>=2.0,<2.2.3dev0", + "ptxcompiler", + "pyarrow>=16.1.0,<16.2.0a0", + "rich", + "rmm==24.8.*,>=0.0.0a0", + "typing_extensions>=4.0.0", +] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. +classifiers = [ + "Intended Audience :: Developers", + "Topic :: Database", + "Topic :: Scientific/Engineering", + "License :: OSI Approved :: Apache Software License", + "Programming Language :: Python", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", +] + +[project.optional-dependencies] +test = [ + "cramjam", + "fastavro>=0.22.9", + "hypothesis", + "msgpack", + "pytest-benchmark", + "pytest-cases>=3.8.2", + "pytest-cov", + "pytest-xdist", + "pytest<8", + "scipy", + "tokenizers==0.15.2", + "transformers==4.39.3", + "tzdata", +] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. +pandas-tests = [ + "pandas[test, pyarrow, performance, computation, fss, excel, parquet, feather, hdf5, spss, html, xml, plot, output-formatting, clipboard, compression]", + "pytest-reportlog", +] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. +cudf-pandas-tests = [ + "ipython", + "openpyxl", +] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. + +[project.urls] +Homepage = "https://github.com/rapidsai/cudf" +Documentation = "https://docs.rapids.ai/api/cudf/stable/" + +[tool.isort] +line_length = 79 +multi_line_output = 3 +include_trailing_comma = true +force_grid_wrap = 0 +combine_as_imports = true +order_by_type = true +known_dask = [ + "dask", + "distributed", + "dask_cuda", +] +known_rapids = [ + "rmm", +] +known_first_party = [ + "cudf", +] +default_section = "THIRDPARTY" +sections = [ + "FUTURE", + "STDLIB", + "THIRDPARTY", + "DASK", + "RAPIDS", + "FIRSTPARTY", + "LOCALFOLDER", +] +skip = [ + "thirdparty", + ".eggs", + ".git", + ".hg", + ".mypy_cache", + ".tox", + ".venv", + "_build", + "buck-out", + "build", + "dist", + "__init__.py", +] + +[tool.rapids-build-backend] +build-backend = "scikit_build_core.build" +dependencies-file = "../../dependencies.yaml" +requires = [ + "cmake>=3.26.4,!=3.30.0", + "cython>=3.0.3", + "ninja", + "numpy==1.23.*", + "pyarrow==16.1.0.*", + "rmm==24.8.*,>=0.0.0a0", +] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. + +[tool.scikit-build] +build-dir = "build/{wheel_tag}" +cmake.build-type = "Release" +cmake.minimum-version = "3.26.4" +ninja.make-fallback = true +sdist.exclude = ["*tests*"] +sdist.reproducible = true +wheel.packages = ["cudf"] + +[tool.scikit-build.metadata.version] +provider = "scikit_build_core.metadata.regex" +input = "pylibcudf/VERSION" +regex = "(?P.*)" From 7e6b540fabc6a2e9e6f54251118afb81e1b8d378 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Wed, 17 Jul 2024 19:48:34 +0000 Subject: [PATCH 02/43] sync and add devcontainer command --- .devcontainer/cuda12.5-conda/devcontainer.json | 7 +++++-- python/pylibcudf/pylibcudf/expressions.pxd | 3 +-- python/pylibcudf/pylibcudf/expressions.pyx | 15 +++++++-------- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/.devcontainer/cuda12.5-conda/devcontainer.json b/.devcontainer/cuda12.5-conda/devcontainer.json index fadce01d060..b79c949999a 100644 --- a/.devcontainer/cuda12.5-conda/devcontainer.json +++ b/.devcontainer/cuda12.5-conda/devcontainer.json @@ -15,10 +15,13 @@ ], "hostRequirements": {"gpu": "optional"}, "features": { - "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils:24.8": {} + // TODO: change this back to rapidsai/devcontainers + // once https://github.com/lithomas1/devcontainers/tree/pylibcudf + // is merged in + "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils:24.8": {} }, "overrideFeatureInstallOrder": [ - "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils" + "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils" ], "initializeCommand": ["/bin/bash", "-c", "mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config,conda/pkgs,conda/${localWorkspaceFolderBasename}-cuda12.5-envs}"], "postAttachCommand": ["/bin/bash", "-c", "if [ ${CODESPACES:-false} = 'true' ]; then . devcontainer-utils-post-attach-command; . rapids-post-attach-command; fi"], diff --git a/python/pylibcudf/pylibcudf/expressions.pxd b/python/pylibcudf/pylibcudf/expressions.pxd index 64825b89d9f..65660b7c449 100644 --- a/python/pylibcudf/pylibcudf/expressions.pxd +++ b/python/pylibcudf/pylibcudf/expressions.pxd @@ -1,8 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr from libcpp.string cimport string - -from cudf._lib.pylibcudf.libcudf.expressions cimport ( +from pylibcudf.libcudf.expressions cimport ( ast_operator, expression, table_reference, diff --git a/python/pylibcudf/pylibcudf/expressions.pyx b/python/pylibcudf/pylibcudf/expressions.pyx index 38de11406ad..18ee9d3ad83 100644 --- a/python/pylibcudf/pylibcudf/expressions.pyx +++ b/python/pylibcudf/pylibcudf/expressions.pyx @@ -1,7 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.expressions import \ +from pylibcudf.libcudf.expressions import \ ast_operator as ASTOperator # no-cython-lint -from cudf._lib.pylibcudf.libcudf.expressions import \ +from pylibcudf.libcudf.expressions import \ table_reference as TableReference # no-cython-lint from cython.operator cimport dereference @@ -9,22 +9,21 @@ from libc.stdint cimport int32_t, int64_t from libcpp.memory cimport make_unique, unique_ptr from libcpp.string cimport string from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf cimport expressions as libcudf_exp -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport ( +from pylibcudf.libcudf cimport expressions as libcudf_exp +from pylibcudf.libcudf.scalar.scalar cimport ( duration_scalar, numeric_scalar, string_scalar, timestamp_scalar, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type, type_id -from cudf._lib.pylibcudf.libcudf.wrappers.durations cimport ( +from pylibcudf.libcudf.types cimport size_type, type_id +from pylibcudf.libcudf.wrappers.durations cimport ( duration_ms, duration_ns, duration_s, duration_us, ) -from cudf._lib.pylibcudf.libcudf.wrappers.timestamps cimport ( +from pylibcudf.libcudf.wrappers.timestamps cimport ( timestamp_ms, timestamp_ns, timestamp_s, From d3a23cee90c80470e2d217db0373a3152ff3d501 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Thu, 18 Jul 2024 21:45:46 +0000 Subject: [PATCH 03/43] add build scripts --- .github/workflows/pr.yaml | 10 +++++++++- ci/build_docs.sh | 2 +- ci/build_wheel_pylibcudf.sh | 16 ++++++++++++++++ ci/test_python_cudf.sh | 2 +- ci/test_wheel_cudf.sh | 8 ++++++-- .../api_docs/pylibcudf/aggregation.rst | 2 +- .../user_guide/api_docs/pylibcudf/binaryop.rst | 2 +- .../user_guide/api_docs/pylibcudf/column.rst | 2 +- .../api_docs/pylibcudf/column_factories.rst | 2 +- .../api_docs/pylibcudf/concatenate.rst | 2 +- .../user_guide/api_docs/pylibcudf/copying.rst | 2 +- .../user_guide/api_docs/pylibcudf/datetime.rst | 2 +- .../api_docs/pylibcudf/expressions.rst | 2 +- .../user_guide/api_docs/pylibcudf/filling.rst | 2 +- .../api_docs/pylibcudf/gpumemoryview.rst | 2 +- .../user_guide/api_docs/pylibcudf/groupby.rst | 2 +- .../user_guide/api_docs/pylibcudf/interop.rst | 2 +- .../user_guide/api_docs/pylibcudf/io/avro.rst | 2 +- .../user_guide/api_docs/pylibcudf/io/index.rst | 2 +- .../user_guide/api_docs/pylibcudf/io/json.rst | 2 +- .../user_guide/api_docs/pylibcudf/join.rst | 2 +- .../user_guide/api_docs/pylibcudf/lists.rst | 2 +- .../user_guide/api_docs/pylibcudf/merge.rst | 2 +- .../user_guide/api_docs/pylibcudf/quantiles.rst | 2 +- .../user_guide/api_docs/pylibcudf/reduce.rst | 2 +- .../user_guide/api_docs/pylibcudf/replace.rst | 2 +- .../user_guide/api_docs/pylibcudf/reshape.rst | 2 +- .../user_guide/api_docs/pylibcudf/rolling.rst | 2 +- .../user_guide/api_docs/pylibcudf/round.rst | 2 +- .../user_guide/api_docs/pylibcudf/scalar.rst | 2 +- .../user_guide/api_docs/pylibcudf/search.rst | 2 +- .../user_guide/api_docs/pylibcudf/sorting.rst | 2 +- .../api_docs/pylibcudf/stream_compaction.rst | 2 +- .../api_docs/pylibcudf/strings/contains.rst | 2 +- .../api_docs/pylibcudf/strings/replace.rst | 2 +- .../api_docs/pylibcudf/strings/slice.rst | 2 +- .../user_guide/api_docs/pylibcudf/table.rst | 2 +- .../user_guide/api_docs/pylibcudf/traits.rst | 2 +- .../user_guide/api_docs/pylibcudf/transform.rst | 2 +- .../user_guide/api_docs/pylibcudf/types.rst | 2 +- .../user_guide/api_docs/pylibcudf/unary.rst | 2 +- .../pylibcudf/tests}/common/utils.py | 0 .../pylibcudf/tests}/conftest.py | 0 .../pylibcudf/tests}/io/test_avro.py | 0 .../pylibcudf/tests}/io/test_json.py | 0 .../pylibcudf/tests}/io/test_source_sink_info.py | 0 .../pylibcudf/tests}/pytest.ini | 0 .../pylibcudf/tests}/test_column_factories.py | 0 .../pylibcudf/tests}/test_column_from_device.py | 0 .../pylibcudf/tests}/test_copying.py | 0 .../pylibcudf/tests}/test_datetime.py | 0 .../pylibcudf/tests}/test_expressions.py | 0 .../pylibcudf/tests}/test_interop.py | 0 .../pylibcudf/tests}/test_join.py | 0 .../pylibcudf/tests}/test_lists.py | 0 .../pylibcudf/tests}/test_quantiles.py | 0 .../pylibcudf/tests}/test_regex_program.py | 0 .../pylibcudf/tests}/test_reshape.py | 0 .../pylibcudf/tests}/test_round.py | 0 .../pylibcudf/tests}/test_string_capitalize.py | 0 .../pylibcudf/tests}/test_string_case.py | 0 .../pylibcudf/tests}/test_string_contains.py | 0 .../pylibcudf/tests}/test_string_find.py | 0 .../pylibcudf/tests}/test_string_replace.py | 0 .../pylibcudf/tests}/test_string_slice.py | 0 .../pylibcudf/tests}/test_table.py | 0 .../pylibcudf/tests}/test_traits.py | 0 .../pylibcudf/tests}/test_transform.py | 0 .../pylibcudf/tests}/test_unary.py | 0 69 files changed, 69 insertions(+), 41 deletions(-) create mode 100755 ci/build_wheel_pylibcudf.sh rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/common/utils.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/conftest.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/io/test_avro.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/io/test_json.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/io/test_source_sink_info.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/pytest.ini (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_column_factories.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_column_from_device.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_copying.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_datetime.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_expressions.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_interop.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_join.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_lists.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_quantiles.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_regex_program.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_reshape.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_round.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_string_capitalize.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_string_case.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_string_contains.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_string_find.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_string_replace.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_string_slice.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_table.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_traits.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_transform.py (100%) rename python/{cudf/cudf/pylibcudf_tests => pylibcudf/pylibcudf/tests}/test_unary.py (100%) diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 1fe64e7f318..76645cb71c8 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -23,6 +23,7 @@ jobs: - static-configure - conda-notebook-tests - docs-build + - wheel-build-pylibcudf - wheel-build-cudf - wheel-tests-cudf - wheel-build-cudf-polars @@ -120,10 +121,17 @@ jobs: arch: "amd64" container_image: "rapidsai/ci-conda:latest" run_script: "ci/build_docs.sh" - wheel-build-cudf: + wheel-build-pylibcudf: needs: checks secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuda-12.5.1 + with: + build_type: pull-request + script: "ci/build_wheel_pylibcudf.sh" + wheel-build-cudf: + needs: wheel-build-pylibcudf + secrets: inherit + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuda-12.5.1 with: build_type: pull-request script: "ci/build_wheel_cudf.sh" diff --git a/ci/build_docs.sh b/ci/build_docs.sh index 14dc7a59048..c67d127e635 100755 --- a/ci/build_docs.sh +++ b/ci/build_docs.sh @@ -29,7 +29,7 @@ PYTHON_CHANNEL=$(rapids-download-conda-from-s3 python) rapids-mamba-retry install \ --channel "${CPP_CHANNEL}" \ --channel "${PYTHON_CHANNEL}" \ - libcudf cudf dask-cudf + libcudf pylibcudf cudf dask-cudf export RAPIDS_DOCS_DIR="$(mktemp -d)" diff --git a/ci/build_wheel_pylibcudf.sh b/ci/build_wheel_pylibcudf.sh new file mode 100755 index 00000000000..aa42d895a01 --- /dev/null +++ b/ci/build_wheel_pylibcudf.sh @@ -0,0 +1,16 @@ +#!/bin/bash +# Copyright (c) 2023-2024, NVIDIA CORPORATION. + +set -euo pipefail + +package_dir="python/pylibcudf" + +export SKBUILD_CMAKE_ARGS="-DUSE_LIBARROW_FROM_PYARROW=ON" + +./ci/build_wheel.sh ${package_dir} + +python -m auditwheel repair -w ${package_dir}/final_dist ${package_dir}/dist/* + + +RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" +RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 ${package_dir}/final_dist diff --git a/ci/test_python_cudf.sh b/ci/test_python_cudf.sh index 217dd2fd9a8..ae34047e87f 100755 --- a/ci/test_python_cudf.sh +++ b/ci/test_python_cudf.sh @@ -15,7 +15,7 @@ trap "EXITCODE=1" ERR set +e rapids-logger "pytest pylibcudf" -pushd python/cudf/cudf/pylibcudf_tests +pushd python/pylibcudf/pylibcudf/tests python -m pytest \ --cache-clear \ --dist=worksteal \ diff --git a/ci/test_wheel_cudf.sh b/ci/test_wheel_cudf.sh index fdb61278d36..ec11bcba19b 100755 --- a/ci/test_wheel_cudf.sh +++ b/ci/test_wheel_cudf.sh @@ -3,9 +3,13 @@ set -eou pipefail +# Download the pylibcudf built in the previous step RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" -RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./dist +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep +python -m pip install ./local-pylibcudf-dep/pylibcudf*.whl +# Install cudf +RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./dist # echo to expand wildcard before adding `[extra]` requires for pip python -m pip install $(echo ./dist/cudf*.whl)[test] @@ -15,7 +19,7 @@ mkdir -p "${RAPIDS_TESTS_DIR}" rapids-logger "pytest pylibcudf" -pushd python/cudf/cudf/pylibcudf_tests +pushd python/pylibcudf/pylibcudf/tests python -m pytest \ --cache-clear \ --dist=worksteal \ diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/aggregation.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/aggregation.rst index 739305af5d4..4b2b213b6c3 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/aggregation.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/aggregation.rst @@ -2,5 +2,5 @@ aggregation =========== -.. automodule:: cudf._lib.pylibcudf.aggregation +.. automodule:: pylibcudf.aggregation :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/binaryop.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/binaryop.rst index e5bc6aa7cda..8bbbfbf88c1 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/binaryop.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/binaryop.rst @@ -2,5 +2,5 @@ binaryop ======== -.. automodule:: cudf._lib.pylibcudf.binaryop +.. automodule:: pylibcudf.binaryop :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/column.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/column.rst index d1105d356b4..d26c8737cf4 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/column.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/column.rst @@ -2,5 +2,5 @@ Column ====== -.. automodule:: cudf._lib.pylibcudf.column +.. automodule:: pylibcudf.column :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/column_factories.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/column_factories.rst index c858135b6ce..8dfaa4bae03 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/column_factories.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/column_factories.rst @@ -2,5 +2,5 @@ column_factories ================ -.. automodule:: cudf._lib.pylibcudf.column_factories +.. automodule:: pylibcudf.column_factories :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/concatenate.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/concatenate.rst index e83739056f4..7912cb83767 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/concatenate.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/concatenate.rst @@ -2,5 +2,5 @@ concatenate =========== -.. automodule:: cudf._lib.pylibcudf.concatenate +.. automodule:: pylibcudf.concatenate :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/copying.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/copying.rst index fddd3ea440f..25e3ef50e6a 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/copying.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/copying.rst @@ -2,5 +2,5 @@ copying ======= -.. automodule:: cudf._lib.pylibcudf.copying +.. automodule:: pylibcudf.copying :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/datetime.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/datetime.rst index 558268ea495..71f7874cfbe 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/datetime.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/datetime.rst @@ -2,5 +2,5 @@ datetime ======== -.. automodule:: cudf._lib.pylibcudf.datetime +.. automodule:: pylibcudf.datetime :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/expressions.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/expressions.rst index 03f769ee861..5493d4662a9 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/expressions.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/expressions.rst @@ -2,5 +2,5 @@ expressions =========== -.. automodule:: cudf._lib.pylibcudf.expressions +.. automodule:: pylibcudf.expressions :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/filling.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/filling.rst index 542a5e12bc4..0d328a0b0e9 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/filling.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/filling.rst @@ -2,5 +2,5 @@ filling ======== -.. automodule:: cudf._lib.pylibcudf.filling +.. automodule:: pylibcudf.filling :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/gpumemoryview.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/gpumemoryview.rst index dffc7c24e02..5515a74adcc 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/gpumemoryview.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/gpumemoryview.rst @@ -2,5 +2,5 @@ gpumemoryview ============= -.. automodule:: cudf._lib.pylibcudf.gpumemoryview +.. automodule:: pylibcudf.gpumemoryview :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/groupby.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/groupby.rst index d6e994f7dbc..27cda383818 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/groupby.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/groupby.rst @@ -2,5 +2,5 @@ groupby ======= -.. automodule:: cudf._lib.pylibcudf.groupby +.. automodule:: pylibcudf.groupby :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/interop.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/interop.rst index 881ab8d7be4..0d2cb55212e 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/interop.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/interop.rst @@ -2,5 +2,5 @@ interop ======= -.. automodule:: cudf._lib.pylibcudf.interop +.. automodule:: pylibcudf.interop :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/avro.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/avro.rst index 495bd505fdc..1c57a6157f5 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/avro.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/avro.rst @@ -2,5 +2,5 @@ Avro ==== -.. automodule:: cudf._lib.pylibcudf.io.avro +.. automodule:: pylibcudf.io.avro :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/index.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/index.rst index bde6d8094ce..4739a19f72f 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/index.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/index.rst @@ -5,7 +5,7 @@ I/O I/O Utility Classes =================== -.. automodule:: cudf._lib.pylibcudf.io.types +.. automodule:: pylibcudf.io.types :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/json.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/json.rst index 6aeae1f322a..a4626f43cc3 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/json.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/json.rst @@ -2,5 +2,5 @@ JSON ==== -.. automodule:: cudf._lib.pylibcudf.io.json +.. automodule:: pylibcudf.io.json :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/join.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/join.rst index 05b9709d116..de065e4fc40 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/join.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/join.rst @@ -2,5 +2,5 @@ join ==== -.. automodule:: cudf._lib.pylibcudf.join +.. automodule:: pylibcudf.join :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/lists.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/lists.rst index a127dd6006a..0fe1a876073 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/lists.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/lists.rst @@ -2,5 +2,5 @@ lists ===== -.. automodule:: cudf._lib.pylibcudf.lists +.. automodule:: pylibcudf.lists :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/merge.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/merge.rst index ef1189a064a..3f634ffcfd7 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/merge.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/merge.rst @@ -2,5 +2,5 @@ merge ===== -.. automodule:: cudf._lib.pylibcudf.merge +.. automodule:: pylibcudf.merge :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/quantiles.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/quantiles.rst index 3417c1ff59d..0f0f701b5dc 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/quantiles.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/quantiles.rst @@ -2,5 +2,5 @@ quantiles ========= -.. automodule:: cudf._lib.pylibcudf.quantiles +.. automodule:: pylibcudf.quantiles :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/reduce.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/reduce.rst index e6f1b02331d..047f217c276 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/reduce.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/reduce.rst @@ -2,5 +2,5 @@ reduce ====== -.. automodule:: cudf._lib.pylibcudf.reduce +.. automodule:: pylibcudf.reduce :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/replace.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/replace.rst index 7f846872fca..7410b20e1b0 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/replace.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/replace.rst @@ -2,5 +2,5 @@ replace ======= -.. automodule:: cudf._lib.pylibcudf.replace +.. automodule:: pylibcudf.replace :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/reshape.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/reshape.rst index 964cef04923..09ec0501bb9 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/reshape.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/reshape.rst @@ -2,5 +2,5 @@ reshape ======= -.. automodule:: cudf._lib.pylibcudf.reshape +.. automodule:: pylibcudf.reshape :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/rolling.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/rolling.rst index 0817d117a94..1f8da467e84 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/rolling.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/rolling.rst @@ -2,5 +2,5 @@ rolling ======= -.. automodule:: cudf._lib.pylibcudf.rolling +.. automodule:: pylibcudf.rolling :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/round.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/round.rst index c97fda12301..e064357cbd1 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/round.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/round.rst @@ -2,5 +2,5 @@ round ===== -.. automodule:: cudf._lib.pylibcudf.round +.. automodule:: pylibcudf.round :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/scalar.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/scalar.rst index b12f47618fb..a9100c6bb2d 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/scalar.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/scalar.rst @@ -2,5 +2,5 @@ Scalar ====== -.. automodule:: cudf._lib.pylibcudf.scalar +.. automodule:: pylibcudf.scalar :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/search.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/search.rst index aa57bcd9d92..02307037994 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/search.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/search.rst @@ -2,5 +2,5 @@ search ====== -.. automodule:: cudf._lib.pylibcudf.search +.. automodule:: pylibcudf.search :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/sorting.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/sorting.rst index e9441366eeb..b8fd8fda9bd 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/sorting.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/sorting.rst @@ -2,5 +2,5 @@ sorting ======= -.. automodule:: cudf._lib.pylibcudf.sorting +.. automodule:: pylibcudf.sorting :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/stream_compaction.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/stream_compaction.rst index 00b479446d8..0252d0684d9 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/stream_compaction.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/stream_compaction.rst @@ -2,5 +2,5 @@ stream_compaction ================= -.. automodule:: cudf._lib.pylibcudf.stream_compaction +.. automodule:: pylibcudf.stream_compaction :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/contains.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/contains.rst index e5745331bc7..d2d164be638 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/contains.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/contains.rst @@ -2,5 +2,5 @@ contains ======== -.. automodule:: cudf._lib.pylibcudf.strings.contains +.. automodule:: pylibcudf.strings.contains :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/replace.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/replace.rst index 9575ec226a7..d5417adac43 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/replace.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/replace.rst @@ -2,5 +2,5 @@ replace ======= -.. automodule:: cudf._lib.pylibcudf.strings.replace +.. automodule:: pylibcudf.strings.replace :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/slice.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/slice.rst index 0ee5af71c03..e9908904512 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/slice.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/slice.rst @@ -2,5 +2,5 @@ slice ===== -.. automodule:: cudf._lib.pylibcudf.strings.slice +.. automodule:: pylibcudf.strings.slice :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/table.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/table.rst index d8337b6596d..e39ca18a12b 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/table.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/table.rst @@ -2,5 +2,5 @@ Table ===== -.. automodule:: cudf._lib.pylibcudf.table +.. automodule:: pylibcudf.table :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/traits.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/traits.rst index 294ca8dc78c..2cce7b9d7d7 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/traits.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/traits.rst @@ -2,5 +2,5 @@ traits ====== -.. automodule:: cudf._lib.pylibcudf.traits +.. automodule:: pylibcudf.traits :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/transform.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/transform.rst index ef04bbad7e6..839163f83fc 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/transform.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/transform.rst @@ -2,5 +2,5 @@ transform ========= -.. automodule:: cudf._lib.pylibcudf.transform +.. automodule:: pylibcudf.transform :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/types.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/types.rst index 8d5409bbd97..75521ac2f4d 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/types.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/types.rst @@ -2,5 +2,5 @@ types ===== -.. automodule:: cudf._lib.pylibcudf.types +.. automodule:: pylibcudf.types :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/unary.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/unary.rst index add4baa0a54..34077242b90 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/unary.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/unary.rst @@ -2,5 +2,5 @@ unary ===== -.. automodule:: cudf._lib.pylibcudf.unary +.. automodule:: pylibcudf.unary :members: diff --git a/python/cudf/cudf/pylibcudf_tests/common/utils.py b/python/pylibcudf/pylibcudf/tests/common/utils.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/common/utils.py rename to python/pylibcudf/pylibcudf/tests/common/utils.py diff --git a/python/cudf/cudf/pylibcudf_tests/conftest.py b/python/pylibcudf/pylibcudf/tests/conftest.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/conftest.py rename to python/pylibcudf/pylibcudf/tests/conftest.py diff --git a/python/cudf/cudf/pylibcudf_tests/io/test_avro.py b/python/pylibcudf/pylibcudf/tests/io/test_avro.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/io/test_avro.py rename to python/pylibcudf/pylibcudf/tests/io/test_avro.py diff --git a/python/cudf/cudf/pylibcudf_tests/io/test_json.py b/python/pylibcudf/pylibcudf/tests/io/test_json.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/io/test_json.py rename to python/pylibcudf/pylibcudf/tests/io/test_json.py diff --git a/python/cudf/cudf/pylibcudf_tests/io/test_source_sink_info.py b/python/pylibcudf/pylibcudf/tests/io/test_source_sink_info.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/io/test_source_sink_info.py rename to python/pylibcudf/pylibcudf/tests/io/test_source_sink_info.py diff --git a/python/cudf/cudf/pylibcudf_tests/pytest.ini b/python/pylibcudf/pylibcudf/tests/pytest.ini similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/pytest.ini rename to python/pylibcudf/pylibcudf/tests/pytest.ini diff --git a/python/cudf/cudf/pylibcudf_tests/test_column_factories.py b/python/pylibcudf/pylibcudf/tests/test_column_factories.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_column_factories.py rename to python/pylibcudf/pylibcudf/tests/test_column_factories.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_column_from_device.py b/python/pylibcudf/pylibcudf/tests/test_column_from_device.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_column_from_device.py rename to python/pylibcudf/pylibcudf/tests/test_column_from_device.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_copying.py b/python/pylibcudf/pylibcudf/tests/test_copying.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_copying.py rename to python/pylibcudf/pylibcudf/tests/test_copying.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_datetime.py b/python/pylibcudf/pylibcudf/tests/test_datetime.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_datetime.py rename to python/pylibcudf/pylibcudf/tests/test_datetime.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_expressions.py b/python/pylibcudf/pylibcudf/tests/test_expressions.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_expressions.py rename to python/pylibcudf/pylibcudf/tests/test_expressions.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_interop.py b/python/pylibcudf/pylibcudf/tests/test_interop.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_interop.py rename to python/pylibcudf/pylibcudf/tests/test_interop.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_join.py b/python/pylibcudf/pylibcudf/tests/test_join.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_join.py rename to python/pylibcudf/pylibcudf/tests/test_join.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_lists.py b/python/pylibcudf/pylibcudf/tests/test_lists.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_lists.py rename to python/pylibcudf/pylibcudf/tests/test_lists.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_quantiles.py b/python/pylibcudf/pylibcudf/tests/test_quantiles.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_quantiles.py rename to python/pylibcudf/pylibcudf/tests/test_quantiles.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_regex_program.py b/python/pylibcudf/pylibcudf/tests/test_regex_program.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_regex_program.py rename to python/pylibcudf/pylibcudf/tests/test_regex_program.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_reshape.py b/python/pylibcudf/pylibcudf/tests/test_reshape.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_reshape.py rename to python/pylibcudf/pylibcudf/tests/test_reshape.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_round.py b/python/pylibcudf/pylibcudf/tests/test_round.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_round.py rename to python/pylibcudf/pylibcudf/tests/test_round.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_string_capitalize.py b/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_string_capitalize.py rename to python/pylibcudf/pylibcudf/tests/test_string_capitalize.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_string_case.py b/python/pylibcudf/pylibcudf/tests/test_string_case.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_string_case.py rename to python/pylibcudf/pylibcudf/tests/test_string_case.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_string_contains.py b/python/pylibcudf/pylibcudf/tests/test_string_contains.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_string_contains.py rename to python/pylibcudf/pylibcudf/tests/test_string_contains.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_string_find.py b/python/pylibcudf/pylibcudf/tests/test_string_find.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_string_find.py rename to python/pylibcudf/pylibcudf/tests/test_string_find.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_string_replace.py b/python/pylibcudf/pylibcudf/tests/test_string_replace.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_string_replace.py rename to python/pylibcudf/pylibcudf/tests/test_string_replace.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_string_slice.py b/python/pylibcudf/pylibcudf/tests/test_string_slice.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_string_slice.py rename to python/pylibcudf/pylibcudf/tests/test_string_slice.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_table.py b/python/pylibcudf/pylibcudf/tests/test_table.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_table.py rename to python/pylibcudf/pylibcudf/tests/test_table.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_traits.py b/python/pylibcudf/pylibcudf/tests/test_traits.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_traits.py rename to python/pylibcudf/pylibcudf/tests/test_traits.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_transform.py b/python/pylibcudf/pylibcudf/tests/test_transform.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_transform.py rename to python/pylibcudf/pylibcudf/tests/test_transform.py diff --git a/python/cudf/cudf/pylibcudf_tests/test_unary.py b/python/pylibcudf/pylibcudf/tests/test_unary.py similarity index 100% rename from python/cudf/cudf/pylibcudf_tests/test_unary.py rename to python/pylibcudf/pylibcudf/tests/test_unary.py From 1ecec47552c00c101e9ffd16333b332b4dabbad0 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Thu, 18 Jul 2024 21:48:56 +0000 Subject: [PATCH 04/43] cudf._lib.pylibcudf -> pylibcudf in tests --- python/pylibcudf/pylibcudf/tests/common/utils.py | 2 +- python/pylibcudf/pylibcudf/tests/conftest.py | 5 ++--- python/pylibcudf/pylibcudf/tests/io/test_avro.py | 3 +-- python/pylibcudf/pylibcudf/tests/io/test_csv.py | 5 ++--- python/pylibcudf/pylibcudf/tests/io/test_json.py | 5 ++--- python/pylibcudf/pylibcudf/tests/io/test_source_sink_info.py | 5 ++--- python/pylibcudf/pylibcudf/tests/test_datetime.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_expressions.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_interop.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_quantiles.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_regex_program.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_round.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_string_capitalize.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_string_case.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_string_contains.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_string_find.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_string_replace.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_string_slice.py | 3 +-- python/pylibcudf/pylibcudf/tests/test_table.py | 3 +-- 19 files changed, 23 insertions(+), 41 deletions(-) diff --git a/python/pylibcudf/pylibcudf/tests/common/utils.py b/python/pylibcudf/pylibcudf/tests/common/utils.py index e029edfa2ed..798b14c01a8 100644 --- a/python/pylibcudf/pylibcudf/tests/common/utils.py +++ b/python/pylibcudf/pylibcudf/tests/common/utils.py @@ -7,9 +7,9 @@ import numpy as np import pyarrow as pa import pytest +from pylibcudf.io.types import CompressionType from cudf._lib import pylibcudf as plc -from cudf._lib.pylibcudf.io.types import CompressionType def metadata_from_arrow_type( diff --git a/python/pylibcudf/pylibcudf/tests/conftest.py b/python/pylibcudf/pylibcudf/tests/conftest.py index 4a7194a6d8d..83166bb4990 100644 --- a/python/pylibcudf/pylibcudf/tests/conftest.py +++ b/python/pylibcudf/pylibcudf/tests/conftest.py @@ -8,10 +8,9 @@ import numpy as np import pyarrow as pa +import pylibcudf as plc import pytest - -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf.io.types import CompressionType +from pylibcudf.io.types import CompressionType sys.path.insert(0, os.path.join(os.path.dirname(__file__), "common")) diff --git a/python/pylibcudf/pylibcudf/tests/io/test_avro.py b/python/pylibcudf/pylibcudf/tests/io/test_avro.py index 061d6792ce3..0cd5064a697 100644 --- a/python/pylibcudf/pylibcudf/tests/io/test_avro.py +++ b/python/pylibcudf/pylibcudf/tests/io/test_avro.py @@ -5,11 +5,10 @@ import fastavro import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_table_and_meta_eq -import cudf._lib.pylibcudf as plc - avro_dtype_pairs = [ ("boolean", pa.bool_()), ("int", pa.int32()), diff --git a/python/pylibcudf/pylibcudf/tests/io/test_csv.py b/python/pylibcudf/pylibcudf/tests/io/test_csv.py index 95326a8b681..ccd7eef54f3 100644 --- a/python/pylibcudf/pylibcudf/tests/io/test_csv.py +++ b/python/pylibcudf/pylibcudf/tests/io/test_csv.py @@ -5,7 +5,9 @@ import pandas as pd import pyarrow as pa +import pylibcudf as plc import pytest +from pylibcudf.io.types import CompressionType from utils import ( _convert_numeric_types_to_floating, assert_table_and_meta_eq, @@ -13,9 +15,6 @@ write_source_str, ) -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf.io.types import CompressionType - # Shared kwargs to pass to make_source _COMMON_CSV_SOURCE_KWARGS = { "format": "csv", diff --git a/python/pylibcudf/pylibcudf/tests/io/test_json.py b/python/pylibcudf/pylibcudf/tests/io/test_json.py index 4239f2438bb..9d976fedf00 100644 --- a/python/pylibcudf/pylibcudf/tests/io/test_json.py +++ b/python/pylibcudf/pylibcudf/tests/io/test_json.py @@ -3,7 +3,9 @@ import pandas as pd import pyarrow as pa +import pylibcudf as plc import pytest +from pylibcudf.io.types import CompressionType from utils import ( assert_table_and_meta_eq, make_source, @@ -11,9 +13,6 @@ write_source_str, ) -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf.io.types import CompressionType - # Shared kwargs to pass to make_source _COMMON_JSON_SOURCE_KWARGS = {"format": "json", "orient": "records"} diff --git a/python/pylibcudf/pylibcudf/tests/io/test_source_sink_info.py b/python/pylibcudf/pylibcudf/tests/io/test_source_sink_info.py index 287dd8f21c8..907e69d309a 100644 --- a/python/pylibcudf/pylibcudf/tests/io/test_source_sink_info.py +++ b/python/pylibcudf/pylibcudf/tests/io/test_source_sink_info.py @@ -3,10 +3,9 @@ import io import pyarrow as pa +import pylibcudf as plc import pytest - -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf.io.datasource import NativeFileDatasource +from pylibcudf.io.datasource import NativeFileDatasource @pytest.fixture(params=[plc.io.SourceInfo, plc.io.SinkInfo]) diff --git a/python/pylibcudf/pylibcudf/tests/test_datetime.py b/python/pylibcudf/pylibcudf/tests/test_datetime.py index 75af0fa6ca1..035a1fc8462 100644 --- a/python/pylibcudf/pylibcudf/tests/test_datetime.py +++ b/python/pylibcudf/pylibcudf/tests/test_datetime.py @@ -3,11 +3,10 @@ import datetime import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture def column(has_nulls): diff --git a/python/pylibcudf/pylibcudf/tests/test_expressions.py b/python/pylibcudf/pylibcudf/tests/test_expressions.py index f661512caad..5894ef4624c 100644 --- a/python/pylibcudf/pylibcudf/tests/test_expressions.py +++ b/python/pylibcudf/pylibcudf/tests/test_expressions.py @@ -1,9 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest -import cudf._lib.pylibcudf as plc - # We can't really evaluate these expressions, so just make sure # construction works properly diff --git a/python/pylibcudf/pylibcudf/tests/test_interop.py b/python/pylibcudf/pylibcudf/tests/test_interop.py index 5c05f460e28..01c998f16d4 100644 --- a/python/pylibcudf/pylibcudf/tests/test_interop.py +++ b/python/pylibcudf/pylibcudf/tests/test_interop.py @@ -1,10 +1,9 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest -import cudf._lib.pylibcudf as plc - def test_list_dtype_roundtrip(): list_type = pa.list_(pa.int32()) diff --git a/python/pylibcudf/pylibcudf/tests/test_quantiles.py b/python/pylibcudf/pylibcudf/tests/test_quantiles.py index 13f3b037606..bac56691306 100644 --- a/python/pylibcudf/pylibcudf/tests/test_quantiles.py +++ b/python/pylibcudf/pylibcudf/tests/test_quantiles.py @@ -3,11 +3,10 @@ import numpy as np import pyarrow as pa import pyarrow.compute as pc +import pylibcudf as plc import pytest from utils import assert_column_eq, assert_table_eq -import cudf._lib.pylibcudf as plc - # Map pylibcudf interpolation options to pyarrow options interp_mapping = { plc.types.Interpolation.LINEAR: "linear", diff --git a/python/pylibcudf/pylibcudf/tests/test_regex_program.py b/python/pylibcudf/pylibcudf/tests/test_regex_program.py index 3a9bcec3616..777315df538 100644 --- a/python/pylibcudf/pylibcudf/tests/test_regex_program.py +++ b/python/pylibcudf/pylibcudf/tests/test_regex_program.py @@ -1,9 +1,8 @@ # Copyright (c) 2024, NVIDIA CORPORATION. +import pylibcudf as plc import pytest -import cudf._lib.pylibcudf as plc - @pytest.mark.parametrize("pat", ["(", "*", "\\"]) def test_regex_program_invalid(pat): diff --git a/python/pylibcudf/pylibcudf/tests/test_round.py b/python/pylibcudf/pylibcudf/tests/test_round.py index 991e6ed310d..d6cd40669db 100644 --- a/python/pylibcudf/pylibcudf/tests/test_round.py +++ b/python/pylibcudf/pylibcudf/tests/test_round.py @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture(params=["float32", "float64"]) def column(request, has_nulls): diff --git a/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py b/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py index c4e437fe5d9..143a9343c60 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture(scope="module") def str_data(): diff --git a/python/pylibcudf/pylibcudf/tests/test_string_case.py b/python/pylibcudf/pylibcudf/tests/test_string_case.py index 1039859b2cf..2fd06ab940b 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_case.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_case.py @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture(scope="module") def string_col(): diff --git a/python/pylibcudf/pylibcudf/tests/test_string_contains.py b/python/pylibcudf/pylibcudf/tests/test_string_contains.py index fc8c6656b5d..9a0d9489d73 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_contains.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_contains.py @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture(scope="module") def target_col(): diff --git a/python/pylibcudf/pylibcudf/tests/test_string_find.py b/python/pylibcudf/pylibcudf/tests/test_string_find.py index 95a1a3cf731..f8769fd9ff2 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_find.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_find.py @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture(scope="module") def data_col(): diff --git a/python/pylibcudf/pylibcudf/tests/test_string_replace.py b/python/pylibcudf/pylibcudf/tests/test_string_replace.py index f20edf6a506..71bd734a0cb 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_replace.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_replace.py @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture(scope="module") def data_col(): diff --git a/python/pylibcudf/pylibcudf/tests/test_string_slice.py b/python/pylibcudf/pylibcudf/tests/test_string_slice.py index bd63987b30f..d9ce5591b98 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_slice.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_slice.py @@ -1,11 +1,10 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest from utils import assert_column_eq -import cudf._lib.pylibcudf as plc - @pytest.fixture(scope="module") def pa_col(): diff --git a/python/pylibcudf/pylibcudf/tests/test_table.py b/python/pylibcudf/pylibcudf/tests/test_table.py index cf1d51f6491..e822d6a97a8 100644 --- a/python/pylibcudf/pylibcudf/tests/test_table.py +++ b/python/pylibcudf/pylibcudf/tests/test_table.py @@ -1,10 +1,9 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pylibcudf as plc import pytest -import cudf._lib.pylibcudf as plc - @pytest.mark.parametrize( "arrow_tbl", From b7a2782f1ac8fb841b7e7083768bd5e4de233b8f Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Thu, 18 Jul 2024 22:05:04 +0000 Subject: [PATCH 05/43] slim down dependencies [skip ci] --- dependencies.yaml | 38 +++++++++++++++++++++++++++++++-- python/pylibcudf/pyproject.toml | 8 ------- 2 files changed, 36 insertions(+), 10 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index a77617e1f84..b5104024e18 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -128,8 +128,7 @@ files: extras: table: project includes: - - run_common - - run_cudf + - run_pylibcudf - pyarrow_run # py_test_pylibcudf: # output: pyproject @@ -583,6 +582,41 @@ dependencies: # TODO: Update `numpy` in `build_python_common` when dropping `<2.0a0` - numpy>=1.23,<2.0a0 - pandas>=2.0,<2.2.3dev0 + run_pylibcudf: + common: + - output_types: [conda, requirements, pyproject] + packages: + - nvtx>=0.2.1 + - packaging + - typing_extensions>=4.0.0 + - output_types: conda + packages: + - *rmm_conda + - output_types: requirements + packages: + # pip recognizes the index as a global option for the requirements.txt file + # This index is needed for rmm. + - --extra-index-url=https://pypi.nvidia.com + - --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple + specific: + - output_types: [conda, requirements, pyproject] + matrices: + - matrix: {cuda: "12.*"} + packages: + - cuda-python>=12.0,<13.0a0 + - matrix: {cuda: "11.*"} + packages: &run_pylibcudf_packages_all_cu11 + - cuda-python>=11.7.1,<12.0a0 + - {matrix: null, packages: *run_pylibcudf_packages_all_cu11} + - output_types: [requirements, pyproject] + matrices: + - matrix: {cuda: "12.*"} + packages: + - rmm-cu12==24.8.*,>=0.0.0a0 + - matrix: {cuda: "11.*"} + packages: + - rmm-cu11==24.8.*,>=0.0.0a0 + - {matrix: null, packages: [*rmm_conda]} run_cudf: common: - output_types: [conda, requirements, pyproject] diff --git a/python/pylibcudf/pyproject.toml b/python/pylibcudf/pyproject.toml index f0e6b358de8..2686e09269a 100644 --- a/python/pylibcudf/pyproject.toml +++ b/python/pylibcudf/pyproject.toml @@ -18,18 +18,10 @@ authors = [ license = { text = "Apache 2.0" } requires-python = ">=3.9" dependencies = [ - "cachetools", - "cubinlinker", "cuda-python>=11.7.1,<12.0a0", - "fsspec>=0.6.0", - "numba>=0.57", - "numpy>=1.23,<2.0a0", "nvtx>=0.2.1", "packaging", - "pandas>=2.0,<2.2.3dev0", - "ptxcompiler", "pyarrow>=16.1.0,<16.2.0a0", - "rich", "rmm==24.8.*,>=0.0.0a0", "typing_extensions>=4.0.0", ] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. From b2306df549ac5db08dc0d1b09df270137dacfe9d Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Tue, 30 Jul 2024 20:08:13 +0000 Subject: [PATCH 06/43] fixes --- .github/workflows/pr.yaml | 2 +- python/pylibcudf/pylibcudf/column.pyx | 80 ++++++++++++++++++++++++++- 2 files changed, 78 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index c21bc28d6cc..86314d3c9d3 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -131,7 +131,7 @@ jobs: wheel-build-cudf: needs: wheel-build-pylibcudf secrets: inherit - uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@cuda-12.5.1 + uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 with: build_type: pull-request script: "ci/build_wheel_cudf.sh" diff --git a/python/pylibcudf/pylibcudf/column.pyx b/python/pylibcudf/pylibcudf/column.pyx index 6dcebd536a8..7177b321bbc 100644 --- a/python/pylibcudf/pylibcudf/column.pyx +++ b/python/pylibcudf/pylibcudf/column.pyx @@ -15,6 +15,10 @@ from .scalar cimport Scalar from .types cimport DataType, type_id from .utils cimport int_to_bitmask_ptr, int_to_void_ptr +import functools + +import numpy as np + cdef class Column: """A container of nullable device data as a column of elements. @@ -270,6 +274,51 @@ cdef class Column: c_result = move(make_column_from_scalar(dereference(slr.get()), size)) return Column.from_libcudf(move(c_result)) + @staticmethod + def from_cuda_array_interface_obj(object obj): + """Create a Column from an object with a CUDA array interface. + + Parameters + ---------- + obj : object + The object with the CUDA array interface to create a column from. + + Returns + ------- + Column + A Column containing the data from the CUDA array interface. + + Notes + ----- + Data is not copied when creating the column. The caller is + responsible for ensuring the data is not mutated unexpectedly while the + column is in use. + """ + data = gpumemoryview(obj) + iface = data.__cuda_array_interface__ + if iface.get('mask') is not None: + raise ValueError("mask not yet supported.") + + typestr = iface['typestr'][1:] + if not is_c_contiguous( + iface['shape'], + iface['strides'], + np.dtype(typestr).itemsize + ): + raise ValueError("Data must be C-contiguous") + + data_type = _datatype_from_dtype_desc(typestr) + size = iface['shape'][0] + return Column( + data_type, + size, + data, + None, + 0, + 0, + [] + ) + cpdef DataType type(self): """The type of data in the column.""" return self._data_type @@ -354,6 +403,34 @@ cdef class ListColumnView: return lists_column_view(self._column.view()) +@functools.cache +def _datatype_from_dtype_desc(desc): + mapping = { + 'u1': type_id.UINT8, + 'u2': type_id.UINT16, + 'u4': type_id.UINT32, + 'u8': type_id.UINT64, + 'i1': type_id.INT8, + 'i2': type_id.INT16, + 'i4': type_id.INT32, + 'i8': type_id.INT64, + 'f4': type_id.FLOAT32, + 'f8': type_id.FLOAT64, + 'b1': type_id.BOOL8, + 'M8[s]': type_id.TIMESTAMP_SECONDS, + 'M8[ms]': type_id.TIMESTAMP_MILLISECONDS, + 'M8[us]': type_id.TIMESTAMP_MICROSECONDS, + 'M8[ns]': type_id.TIMESTAMP_NANOSECONDS, + 'm8[s]': type_id.DURATION_SECONDS, + 'm8[ms]': type_id.DURATION_MILLISECONDS, + 'm8[us]': type_id.DURATION_MICROSECONDS, + 'm8[ns]': type_id.DURATION_NANOSECONDS, + } + if desc not in mapping: + raise ValueError(f"Unsupported dtype: {desc}") + return DataType(mapping[desc]) + + def is_c_contiguous( shape: Sequence[int], strides: Sequence[int], itemsize: int ) -> bool: @@ -376,9 +453,6 @@ def is_c_contiguous( if any(dim == 0 for dim in shape): return True - if strides is None: - # spec says strides = None -> c-contig - return True cumulative_stride = itemsize for dim, stride in zip(reversed(shape), reversed(strides)): if dim > 1 and stride != cumulative_stride: From acb31227d3ffb07e4a35be5d1c0ec6cbadbfe53d Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Tue, 30 Jul 2024 20:29:52 +0000 Subject: [PATCH 07/43] fixes --- dependencies.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/dependencies.yaml b/dependencies.yaml index 591caf5c445..3401362ad9a 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -112,6 +112,13 @@ files: includes: - test_python_common - test_python_cudf + py_rapids_build_cudf: + output: pyproject + pyproject_dir: python/pylibcudf + extras: + table: build-system + includes: + - rapids_build_skbuild py_build_pylibcudf: output: pyproject pyproject_dir: python/pylibcudf @@ -130,6 +137,7 @@ files: includes: - run_pylibcudf - pyarrow_run + # TODO: finishme # py_test_pylibcudf: # output: pyproject # pyproject_dir: python/pylibcudf From 5243eac8a90114e4fdf794760cb6b6029d9ba1a1 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Tue, 30 Jul 2024 21:11:03 +0000 Subject: [PATCH 08/43] fix cuda suffixing --- python/pylibcudf/pyproject.toml | 1 + 1 file changed, 1 insertion(+) diff --git a/python/pylibcudf/pyproject.toml b/python/pylibcudf/pyproject.toml index c71d486a299..8676dff09ce 100644 --- a/python/pylibcudf/pyproject.toml +++ b/python/pylibcudf/pyproject.toml @@ -111,6 +111,7 @@ skip = [ [tool.rapids-build-backend] build-backend = "scikit_build_core.build" dependencies-file = "../../dependencies.yaml" +matrix-entry = "cuda_suffixed=true" requires = [ "cmake>=3.26.4,!=3.30.0", "cython>=3.0.3", From b2b68e14b9faa1dac0f2516667f65ecb5693a744 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Tue, 30 Jul 2024 22:29:14 +0000 Subject: [PATCH 09/43] maybe fix? --- ci/build_python.sh | 7 +++++++ python/pylibcudf/CMakeLists.txt | 4 ++-- python/pylibcudf/pyproject.toml | 2 +- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ci/build_python.sh b/ci/build_python.sh index 79e09432779..3705786f8bc 100755 --- a/ci/build_python.sh +++ b/ci/build_python.sh @@ -22,6 +22,13 @@ CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp) # TODO: Remove `--no-test` flag once importing on a CPU # node works correctly # With boa installed conda build forwards to the boa builder + +# TODO: enable once conda recipes written for pylibcudf +# RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ +# --no-test \ +# --channel "${CPP_CHANNEL}" \ +# conda/recipes/pylibcudf + RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ --no-test \ --channel "${CPP_CHANNEL}" \ diff --git a/python/pylibcudf/CMakeLists.txt b/python/pylibcudf/CMakeLists.txt index 021f8f593b3..a94d87da9f7 100644 --- a/python/pylibcudf/CMakeLists.txt +++ b/python/pylibcudf/CMakeLists.txt @@ -16,10 +16,10 @@ cmake_minimum_required(VERSION 3.26.4 FATAL_ERROR) include(../../rapids_config.cmake) include(rapids-cuda) -rapids_cuda_init_architectures(cudf-python) +rapids_cuda_init_architectures(pylibcudf) project( - cudf-python + pylibcudf VERSION "${RAPIDS_VERSION}" LANGUAGES CXX CUDA ) diff --git a/python/pylibcudf/pyproject.toml b/python/pylibcudf/pyproject.toml index 8676dff09ce..d9f4ffc0759 100644 --- a/python/pylibcudf/pyproject.toml +++ b/python/pylibcudf/pyproject.toml @@ -128,7 +128,7 @@ cmake.minimum-version = "3.26.4" ninja.make-fallback = true sdist.exclude = ["*tests*"] sdist.reproducible = true -wheel.packages = ["cudf"] +wheel.packages = ["pylibcudf"] [tool.scikit-build.metadata.version] provider = "scikit_build_core.metadata.regex" From feac68de39be09c1751d0ccc2bb5f93b1075ac8f Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Wed, 31 Jul 2024 13:59:50 +0000 Subject: [PATCH 10/43] rpath was the problem? --- python/pylibcudf/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/pylibcudf/CMakeLists.txt b/python/pylibcudf/CMakeLists.txt index a94d87da9f7..fa52bc0780a 100644 --- a/python/pylibcudf/CMakeLists.txt +++ b/python/pylibcudf/CMakeLists.txt @@ -96,5 +96,5 @@ include(cmake/Modules/LinkPyarrowHeaders.cmake) add_subdirectory(pylibcudf) if(DEFINED cython_lib_dir) - rapids_cython_add_rpath_entries(TARGET pylibcudf PATHS "${cython_lib_dir}") + rapids_cython_add_rpath_entries(TARGET cudf PATHS "${cython_lib_dir}") endif() From 606d15e7260b553cbdb69f9ecd935c12ba94e430 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Wed, 31 Jul 2024 14:30:48 +0000 Subject: [PATCH 11/43] put back mistakenly removed CMakeLists.txt --- python/cudf/CMakeLists.txt | 101 +++++++++++++++++++++++++++++++++++++ 1 file changed, 101 insertions(+) create mode 100644 python/cudf/CMakeLists.txt diff --git a/python/cudf/CMakeLists.txt b/python/cudf/CMakeLists.txt new file mode 100644 index 00000000000..ecadbf5cbbc --- /dev/null +++ b/python/cudf/CMakeLists.txt @@ -0,0 +1,101 @@ +# ============================================================================= +# Copyright (c) 2022-2024, NVIDIA CORPORATION. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except +# in compliance with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software distributed under the License +# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express +# or implied. See the License for the specific language governing permissions and limitations under +# the License. +# ============================================================================= + +cmake_minimum_required(VERSION 3.26.4 FATAL_ERROR) + +include(../../rapids_config.cmake) +include(rapids-cuda) +rapids_cuda_init_architectures(cudf-python) + +project( + cudf-python + VERSION "${RAPIDS_VERSION}" + LANGUAGES CXX CUDA +) + +option(FIND_CUDF_CPP "Search for existing CUDF C++ installations before defaulting to local files" + OFF +) +option(USE_LIBARROW_FROM_PYARROW "Only use the libarrow contained in pyarrow" OFF) +mark_as_advanced(USE_LIBARROW_FROM_PYARROW) + +# Find Python early so that later commands can use it +find_package(Python 3.9 REQUIRED COMPONENTS Interpreter) + +# If the user requested it we attempt to find CUDF. +if(FIND_CUDF_CPP) + include(rapids-cpm) + include(rapids-export) + include(rapids-find) + rapids_cpm_init() + + if(USE_LIBARROW_FROM_PYARROW) + # We need to find arrow before libcudf since libcudf requires it but doesn't bundle arrow + # libraries. These variables have no effect because we are always searching for arrow via + # pyarrow, but they must be set as they are required arguments to the function in + # get_arrow.cmake. + set(CUDF_USE_ARROW_STATIC OFF) + set(CUDF_ENABLE_ARROW_S3 OFF) + set(CUDF_ENABLE_ARROW_ORC OFF) + set(CUDF_ENABLE_ARROW_PYTHON OFF) + set(CUDF_ENABLE_ARROW_PARQUET OFF) + include(../../cpp/cmake/thirdparty/get_arrow.cmake) + endif() + + find_package(cudf "${RAPIDS_VERSION}" REQUIRED) + + # an installed version of libcudf doesn't provide the dlpack headers so we need to download dlpack + # for the interop.pyx + include(../../cpp/cmake/thirdparty/get_dlpack.cmake) +else() + set(cudf_FOUND OFF) +endif() + +include(rapids-cython-core) + +if(NOT cudf_FOUND) + set(BUILD_TESTS OFF) + set(BUILD_BENCHMARKS OFF) + set(CUDF_BUILD_TESTUTIL OFF) + set(CUDF_BUILD_STREAMS_TEST_UTIL OFF) + set(CUDA_STATIC_RUNTIME ON) + + add_subdirectory(../../cpp cudf-cpp EXCLUDE_FROM_ALL) + + # libcudf targets are excluded by default above via EXCLUDE_FROM_ALL to remove extraneous + # components like headers from libcudacxx, but we do need the libraries. However, we want to + # control where they are installed to. Since there are multiple subpackages of cudf._lib that + # require access to libcudf, we place the library and all its dependent artifacts in the cudf + # directory as a single source of truth and modify the other rpaths appropriately. + set(cython_lib_dir cudf) + include(cmake/Modules/WheelHelpers.cmake) + # TODO: This install is currently overzealous. We should only install the libraries that are + # downloaded by CPM during the build, not libraries that were found on the system. However, in + # practice right this would only be a problem is if libcudf was not found but some of the + # dependencies were, and we have no real use cases where that happens. + install_aliased_imported_targets( + TARGETS cudf arrow_shared nvcomp::nvcomp nvcomp::nvcomp_gdeflate nvcomp::nvcomp_bitcomp + DESTINATION ${cython_lib_dir} + ) +endif() + +rapids_cython_init() + +include(cmake/Modules/LinkPyarrowHeaders.cmake) +add_subdirectory(cudf/_lib) +add_subdirectory(udf_cpp) + +if(DEFINED cython_lib_dir) + rapids_cython_add_rpath_entries(TARGET cudf PATHS "${cython_lib_dir}") +endif() From 8e5c00d2cad45908999808c13ed496b95065ecbd Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Thu, 1 Aug 2024 07:55:01 -0700 Subject: [PATCH 12/43] Fix merge conflicts --- .../all_cuda-118_arch-x86_64.yaml | 1 + .../all_cuda-125_arch-x86_64.yaml | 1 + conda/recipes/libcudf/conda_build_config.yaml | 3 + conda/recipes/libcudf/meta.yaml | 1 + .../io/parquet/compact_protocol_reader.cpp | 26 +- dependencies.yaml | 1 + docs/cudf/source/conf.py | 17 +- python/cudf/benchmarks/API/bench_dataframe.py | 7 + python/cudf/cudf/core/column/column.py | 3 +- python/cudf/cudf/core/column/datetime.py | 56 +++ python/cudf/cudf/core/column/interval.py | 64 ++- python/cudf/cudf/core/column/timedelta.py | 12 + python/cudf/cudf/core/dataframe.py | 34 +- python/cudf/cudf/core/index.py | 426 +++++++++++++++++- python/cudf/cudf/core/series.py | 43 +- python/cudf/cudf/pandas/_logger.py | 80 ++++ python/cudf/cudf/pandas/fast_slow_proxy.py | 6 +- .../cudf/cudf/tests/indexes/test_interval.py | 33 ++ python/cudf/cudf/tests/test_datetime.py | 107 +++++ python/cudf/cudf/tests/test_timedelta.py | 39 ++ python/pylibcudf/pylibcudf/column.pyx | 9 +- python/pylibcudf/pylibcudf/libcudf/types.pxd | 2 + python/pylibcudf/pylibcudf/types.pxd | 2 + python/pylibcudf/pylibcudf/types.pyx | 16 +- 24 files changed, 914 insertions(+), 75 deletions(-) create mode 100644 python/cudf/cudf/pandas/_logger.py diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index b1a1cc3c68e..d04804cafaf 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -30,6 +30,7 @@ dependencies: - dlpack>=0.8,<1.0 - doxygen=1.9.1 - fastavro>=0.22.9 +- flatbuffers==24.3.25 - fmt>=10.1.1,<11 - fsspec>=0.6.0 - gcc_linux-64=11.* diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 1017b11779c..e2c3558030d 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -31,6 +31,7 @@ dependencies: - dlpack>=0.8,<1.0 - doxygen=1.9.1 - fastavro>=0.22.9 +- flatbuffers==24.3.25 - fmt>=10.1.1,<11 - fsspec>=0.6.0 - gcc_linux-64=11.* diff --git a/conda/recipes/libcudf/conda_build_config.yaml b/conda/recipes/libcudf/conda_build_config.yaml index 4f99411e978..ff7458caf82 100644 --- a/conda/recipes/libcudf/conda_build_config.yaml +++ b/conda/recipes/libcudf/conda_build_config.yaml @@ -31,6 +31,9 @@ librdkafka_version: fmt_version: - ">=10.1.1,<11" +flatbuffers_version: + - "=24.3.25" + spdlog_version: - ">=1.12.0,<1.13" diff --git a/conda/recipes/libcudf/meta.yaml b/conda/recipes/libcudf/meta.yaml index 76115362b6c..aa1c94a4bca 100644 --- a/conda/recipes/libcudf/meta.yaml +++ b/conda/recipes/libcudf/meta.yaml @@ -68,6 +68,7 @@ requirements: - dlpack {{ dlpack_version }} - librdkafka {{ librdkafka_version }} - fmt {{ fmt_version }} + - flatbuffers {{ flatbuffers_version }} - spdlog {{ spdlog_version }} - zlib {{ zlib_version }} diff --git a/cpp/src/io/parquet/compact_protocol_reader.cpp b/cpp/src/io/parquet/compact_protocol_reader.cpp index 192833507b0..e13ed5e85e5 100644 --- a/cpp/src/io/parquet/compact_protocol_reader.cpp +++ b/cpp/src/io/parquet/compact_protocol_reader.cpp @@ -137,10 +137,10 @@ class parquet_field_bool : public parquet_field { struct parquet_field_bool_list : public parquet_field_list { parquet_field_bool_list(int f, std::vector& v) : parquet_field_list(f, v) { - auto const read_value = [this](uint32_t i, CompactProtocolReader* cpr) { + auto const read_value = [&val = v](uint32_t i, CompactProtocolReader* cpr) { auto const current_byte = cpr->getb(); assert_bool_field_type(current_byte); - this->val[i] = current_byte == static_cast(FieldType::BOOLEAN_TRUE); + val[i] = current_byte == static_cast(FieldType::BOOLEAN_TRUE); }; bind_read_func(read_value); } @@ -188,8 +188,8 @@ template struct parquet_field_int_list : public parquet_field_list { parquet_field_int_list(int f, std::vector& v) : parquet_field_list(f, v) { - auto const read_value = [this](uint32_t i, CompactProtocolReader* cpr) { - this->val[i] = cpr->get_zigzag(); + auto const read_value = [&val = v](uint32_t i, CompactProtocolReader* cpr) { + val[i] = cpr->get_zigzag(); }; this->bind_read_func(read_value); } @@ -229,11 +229,11 @@ class parquet_field_string : public parquet_field { struct parquet_field_string_list : public parquet_field_list { parquet_field_string_list(int f, std::vector& v) : parquet_field_list(f, v) { - auto const read_value = [this](uint32_t i, CompactProtocolReader* cpr) { + auto const read_value = [&val = v](uint32_t i, CompactProtocolReader* cpr) { auto const l = cpr->get_u32(); CUDF_EXPECTS(l < static_cast(cpr->m_end - cpr->m_cur), "string length mismatch"); - this->val[i].assign(reinterpret_cast(cpr->m_cur), l); + val[i].assign(reinterpret_cast(cpr->m_cur), l); cpr->m_cur += l; }; bind_read_func(read_value); @@ -269,8 +269,8 @@ struct parquet_field_enum_list : public parquet_field_list parquet_field_enum_list(int f, std::vector& v) : parquet_field_list(f, v) { - auto const read_value = [this](uint32_t i, CompactProtocolReader* cpr) { - this->val[i] = static_cast(cpr->get_i32()); + auto const read_value = [&val = v](uint32_t i, CompactProtocolReader* cpr) { + val[i] = static_cast(cpr->get_i32()); }; this->bind_read_func(read_value); } @@ -354,8 +354,8 @@ struct parquet_field_struct_list : public parquet_field_list& v) : parquet_field_list(f, v) { - auto const read_value = [this](uint32_t i, CompactProtocolReader* cpr) { - cpr->read(&this->val[i]); + auto const read_value = [&val = v](uint32_t i, CompactProtocolReader* cpr) { + cpr->read(&val[i]); }; this->bind_read_func(read_value); } @@ -395,7 +395,7 @@ struct parquet_field_binary_list : public parquet_field_list, FieldType::BINARY> { parquet_field_binary_list(int f, std::vector>& v) : parquet_field_list(f, v) { - auto const read_value = [this](uint32_t i, CompactProtocolReader* cpr) { + auto const read_value = [&val = v](uint32_t i, CompactProtocolReader* cpr) { auto const l = cpr->get_u32(); CUDF_EXPECTS(l <= static_cast(cpr->m_end - cpr->m_cur), "binary length mismatch"); @@ -482,9 +482,7 @@ void CompactProtocolReader::skip_struct_field(int t, int depth) skip_struct_field(t, depth + 1); } break; - default: - // printf("unsupported skip for type %d\n", t); - break; + default: break; } } diff --git a/dependencies.yaml b/dependencies.yaml index 4695a6357df..52f63d1a5cb 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -324,6 +324,7 @@ dependencies: - fmt>=10.1.1,<11 - librmm==24.10.*,>=0.0.0a0 - libkvikio==24.10.*,>=0.0.0a0 + - flatbuffers==24.3.25 - librdkafka>=1.9.0,<1.10.0a0 # Align nvcomp version with rapids-cmake - nvcomp==3.0.6 diff --git a/docs/cudf/source/conf.py b/docs/cudf/source/conf.py index 7421d9be298..43e2d6031bc 100644 --- a/docs/cudf/source/conf.py +++ b/docs/cudf/source/conf.py @@ -556,16 +556,23 @@ def on_missing_reference(app, env, node, contnode): ("py:class", "Dtype"), # The following are erroneously warned due to # https://github.com/sphinx-doc/sphinx/issues/11225 + ("py:obj", "cudf.DatetimeIndex.time"), + ("py:obj", "cudf.DatetimeIndex.date"), ("py:obj", "cudf.Index.values_host"), - ("py:class", "pa.Array"), - ("py:class", "ScalarLike"), - ("py:class", "ParentType"), - ("py:class", "ColumnLike"), - ("py:class", "ColumnLike"), ("py:obj", "cudf.Index.transpose"), ("py:obj", "cudf.Index.T"), ("py:obj", "cudf.Index.to_flat_index"), ("py:obj", "cudf.MultiIndex.to_flat_index"), + ("py:meth", "pyarrow.Table.to_pandas"), + ("py:class", "pa.Array"), + ("py:class", "ScalarLike"), + ("py:class", "ParentType"), + ("py:class", "pyarrow.lib.DataType"), + ("py:class", "pyarrow.lib.Table"), + ("py:class", "pyarrow.lib.Scalar"), + ("py:class", "pyarrow.lib.ChunkedArray"), + ("py:class", "pyarrow.lib.Array"), + ("py:class", "ColumnLike"), # TODO: Remove this when we figure out why typing_extensions doesn't seem # to map types correctly for intersphinx ("py:class", "typing_extensions.Self"), diff --git a/python/cudf/benchmarks/API/bench_dataframe.py b/python/cudf/benchmarks/API/bench_dataframe.py index 59d73015962..ba243eb6a7c 100644 --- a/python/cudf/benchmarks/API/bench_dataframe.py +++ b/python/cudf/benchmarks/API/bench_dataframe.py @@ -4,6 +4,7 @@ import string +import numba.cuda import numpy import pytest import pytest_cases @@ -16,6 +17,12 @@ def bench_construction(benchmark, N): benchmark(cudf.DataFrame, {None: cupy.random.rand(N)}) +@pytest.mark.parametrize("N", [100, 100_000]) +@pytest.mark.pandas_incompatible +def bench_construction_numba_device_array(benchmark, N): + benchmark(cudf.DataFrame, numba.cuda.to_device(numpy.ones((100, N)))) + + @benchmark_with_object(cls="dataframe", dtype="float", cols=6) @pytest.mark.parametrize( "expr", ["a+b", "a+b+c+d+e", "a / (sin(a) + cos(b)) * tanh(d*e*f)"] diff --git a/python/cudf/cudf/core/column/column.py b/python/cudf/cudf/core/column/column.py index 32e6aade65b..7e0d8ced595 100644 --- a/python/cudf/cudf/core/column/column.py +++ b/python/cudf/cudf/core/column/column.py @@ -1843,8 +1843,7 @@ def as_column( else: mask = None - arbitrary = cupy.asarray(arbitrary) - arbitrary = cupy.ascontiguousarray(arbitrary) + arbitrary = cupy.asarray(arbitrary, order="C") data = as_buffer(arbitrary, exposed=cudf.get_option("copy_on_write")) col = build_column(data, dtype=arbitrary.dtype, mask=mask) diff --git a/python/cudf/cudf/core/column/datetime.py b/python/cudf/cudf/core/column/datetime.py index 73902789c11..81fbb914842 100644 --- a/python/cudf/cudf/core/column/datetime.py +++ b/python/cudf/cudf/core/column/datetime.py @@ -286,6 +286,62 @@ def dayofyear(self) -> ColumnBase: def day_of_year(self) -> ColumnBase: return self.get_dt_field("day_of_year") + @property + def is_month_start(self) -> ColumnBase: + return (self.day == 1).fillna(False) + + @property + def is_month_end(self) -> ColumnBase: + last_day_col = libcudf.datetime.last_day_of_month(self) + return (self.day == last_day_col.day).fillna(False) + + @property + def is_quarter_end(self) -> ColumnBase: + last_month = self.month.isin([3, 6, 9, 12]) + return (self.is_month_end & last_month).fillna(False) + + @property + def is_quarter_start(self) -> ColumnBase: + first_month = self.month.isin([1, 4, 7, 10]) + return (self.is_month_start & first_month).fillna(False) + + @property + def is_year_end(self) -> ColumnBase: + day_of_year = self.day_of_year + leap_dates = libcudf.datetime.is_leap_year(self) + + leap = day_of_year == cudf.Scalar(366) + non_leap = day_of_year == cudf.Scalar(365) + return libcudf.copying.copy_if_else(leap, non_leap, leap_dates).fillna( + False + ) + + @property + def is_year_start(self) -> ColumnBase: + return (self.day_of_year == 1).fillna(False) + + @property + def days_in_month(self) -> ColumnBase: + return libcudf.datetime.days_in_month(self) + + @property + def day_of_week(self) -> ColumnBase: + raise NotImplementedError("day_of_week is currently not implemented.") + + @property + def is_normalized(self) -> bool: + raise NotImplementedError( + "is_normalized is currently not implemented." + ) + + def to_julian_date(self) -> ColumnBase: + raise NotImplementedError( + "to_julian_date is currently not implemented." + ) + + def normalize(self) -> ColumnBase: + raise NotImplementedError("normalize is currently not implemented.") + @property def values(self): """ diff --git a/python/cudf/cudf/core/column/interval.py b/python/cudf/cudf/core/column/interval.py index d09a1f66539..b2f79ef0c65 100644 --- a/python/cudf/cudf/core/column/interval.py +++ b/python/cudf/cudf/core/column/interval.py @@ -1,11 +1,18 @@ # Copyright (c) 2018-2024, NVIDIA CORPORATION. +from __future__ import annotations + +from typing import TYPE_CHECKING, Literal + import pandas as pd import pyarrow as pa import cudf -from cudf.core.column import StructColumn +from cudf.core.column import StructColumn, as_column from cudf.core.dtypes import IntervalDtype +if TYPE_CHECKING: + from cudf.core.column import ColumnBase + class IntervalColumn(StructColumn): def __init__( @@ -85,6 +92,61 @@ def copy(self, deep=True): children=struct_copy.base_children, ) + @property + def is_empty(self) -> ColumnBase: + left_equals_right = (self.right == self.left).fillna(False) + not_closed_both = as_column( + self.dtype.closed != "both", length=len(self) + ) + return left_equals_right & not_closed_both + + @property + def is_non_overlapping_monotonic(self) -> bool: + raise NotImplementedError( + "is_overlapping is currently not implemented." + ) + + @property + def is_overlapping(self) -> bool: + raise NotImplementedError( + "is_overlapping is currently not implemented." + ) + + @property + def length(self) -> ColumnBase: + return self.right - self.left + + @property + def left(self) -> ColumnBase: + return self.children[0] + + @property + def mid(self) -> ColumnBase: + try: + return 0.5 * (self.left + self.right) + except TypeError: + # datetime safe version + return self.left + 0.5 * self.length + + @property + def right(self) -> ColumnBase: + return self.children[1] + + def overlaps(other) -> ColumnBase: + raise NotImplementedError("overlaps is not currently implemented.") + + def set_closed( + self, closed: Literal["left", "right", "both", "neither"] + ) -> IntervalColumn: + return IntervalColumn( + size=self.size, + dtype=IntervalDtype(self.dtype.fields["left"], closed), + mask=self.base_mask, + offset=self.offset, + null_count=self.null_count, + children=self.base_children, + ) + def as_interval_column(self, dtype): if isinstance(dtype, IntervalDtype): return IntervalColumn( diff --git a/python/cudf/cudf/core/column/timedelta.py b/python/cudf/cudf/core/column/timedelta.py index 59ea1cc002c..47c8ed6fd95 100644 --- a/python/cudf/cudf/core/column/timedelta.py +++ b/python/cudf/cudf/core/column/timedelta.py @@ -251,6 +251,18 @@ def normalize_binop_value(self, other) -> ColumnBinaryOperand: def time_unit(self) -> str: return np.datetime_data(self.dtype)[0] + def total_seconds(self) -> ColumnBase: + raise NotImplementedError("total_seconds is currently not implemented") + + def ceil(self, freq: str) -> ColumnBase: + raise NotImplementedError("ceil is currently not implemented") + + def floor(self, freq: str) -> ColumnBase: + raise NotImplementedError("floor is currently not implemented") + + def round(self, freq: str) -> ColumnBase: + raise NotImplementedError("round is currently not implemented") + def as_numerical_column( self, dtype: Dtype ) -> "cudf.core.column.NumericalColumn": diff --git a/python/cudf/cudf/core/dataframe.py b/python/cudf/cudf/core/dataframe.py index 6ea11fe9f64..52dc29974bf 100644 --- a/python/cudf/cudf/core/dataframe.py +++ b/python/cudf/cudf/core/dataframe.py @@ -782,7 +782,6 @@ def __init__( ) elif hasattr(data, "__cuda_array_interface__"): arr_interface = data.__cuda_array_interface__ - # descr is an optional field of the _cuda_ary_iface_ if "descr" in arr_interface: if len(arr_interface["descr"]) == 1: @@ -5852,17 +5851,18 @@ def from_records( @_performance_tracking def _from_arrays( cls, - data: np.ndarray | cupy.ndarray, + data, index=None, columns=None, nan_as_null=False, ): - """Convert a numpy/cupy array to DataFrame. + """ + Convert an object implementing an array interface to DataFrame. Parameters ---------- - data : numpy/cupy array of ndim 1 or 2, - dimensions greater than 2 are not supported yet. + data : object of ndim 1 or 2, + Object implementing ``__array_interface__`` or ``__cuda_array_interface__`` index : Index or array-like Index to use for resulting frame. Will default to RangeIndex if no indexing information part of input data and @@ -5874,13 +5874,23 @@ def _from_arrays( ------- DataFrame """ - if data.ndim != 1 and data.ndim != 2: + array_data: np.ndarray | cupy.ndarray + if hasattr(data, "__cuda_array_interface__"): + array_data = cupy.asarray(data, order="F") + elif hasattr(data, "__array_interface__"): + array_data = np.asarray(data, order="F") + else: raise ValueError( - f"records dimension expected 1 or 2 but found: {data.ndim}" + "data must be an object implementing __cuda_array_interface__ or __array_interface__" + ) + + if array_data.ndim not in {1, 2}: + raise ValueError( + f"records dimension expected 1 or 2 but found: {array_data.ndim}" ) if data.ndim == 2: - num_cols = data.shape[1] + num_cols = array_data.shape[1] else: # Since we validate ndim to be either 1 or 2 above, # this case can be assumed to be ndim == 1. @@ -5898,14 +5908,14 @@ def _from_arrays( raise ValueError("Duplicate column names are not allowed") names = columns - if data.ndim == 2: + if array_data.ndim == 2: ca_data = { - k: column.as_column(data[:, i], nan_as_null=nan_as_null) + k: column.as_column(array_data[:, i], nan_as_null=nan_as_null) for i, k in enumerate(names) } - elif data.ndim == 1: + elif array_data.ndim == 1: ca_data = { - names[0]: column.as_column(data, nan_as_null=nan_as_null) + names[0]: column.as_column(array_data, nan_as_null=nan_as_null) } if index is not None: diff --git a/python/cudf/cudf/core/index.py b/python/cudf/cudf/core/index.py index 8c3b091abec..cd879d559cd 100644 --- a/python/cudf/cudf/core/index.py +++ b/python/cudf/cudf/core/index.py @@ -61,6 +61,7 @@ if TYPE_CHECKING: from collections.abc import Generator, Iterable + from datetime import tzinfo def ensure_index(index_like: Any) -> BaseIndex: @@ -1680,7 +1681,7 @@ class DatetimeIndex(Index): copy : bool Make a copy of input. freq : str, optional - This is not yet supported + Frequency of the DatetimeIndex tz : pytz.timezone or dateutil.tz.tzfile This is not yet supported ambiguous : 'infer', bool-ndarray, 'NaT', default 'raise' @@ -1847,6 +1848,210 @@ def searchsorted( value, side=side, ascending=ascending, na_position=na_position ) + def as_unit(self, unit: str, round_ok: bool = True) -> Self: + """ + Convert to a dtype with the given unit resolution. + + Currently not implemented. + + Parameters + ---------- + unit : {'s', 'ms', 'us', 'ns'} + round_ok : bool, default True + If False and the conversion requires rounding, raise ValueError. + """ + raise NotImplementedError("as_unit is currently not implemented") + + def mean(self, *, skipna: bool = True, axis: int | None = 0): + return self._column.mean(skipna=skipna) + + def std(self, *, skipna: bool = True, axis: int | None = 0, ddof: int = 1): + return self._column.std(skipna=skipna, ddof=ddof) + + def strftime(self, date_format: str) -> Index: + """ + Convert to Index using specified date_format. + + Return an Index of formatted strings specified by date_format, which + supports the same string format as the python standard library. + + Parameters + ---------- + date_format : str + Date format string (e.g. "%Y-%m-%d"). + """ + return Index._from_data( + {self.name: self._column.strftime(date_format)} + ) + + @property + def asi8(self) -> cupy.ndarray: + return self._column.astype("int64").values + + @property + def inferred_freq(self) -> cudf.DateOffset | None: + raise NotImplementedError("inferred_freq is currently not implemented") + + @property + def freq(self) -> cudf.DateOffset | None: + return self._freq + + @freq.setter + def freq(self) -> None: + raise NotImplementedError("Setting freq is currently not supported.") + + @property + def freqstr(self) -> str: + raise NotImplementedError("freqstr is currently not implemented") + + @property + def resolution(self) -> str: + """ + Returns day, hour, minute, second, millisecond or microsecond + """ + raise NotImplementedError("resolution is currently not implemented") + + @property + def unit(self) -> str: + return self._column.time_unit + + @property + def tz(self) -> tzinfo | None: + """ + Return the timezone. + + Returns + ------- + datetime.tzinfo or None + Returns None when the array is tz-naive. + """ + return getattr(self.dtype, "tz", None) + + @property + def tzinfo(self) -> tzinfo | None: + """ + Alias for tz attribute + """ + return self.tz + + def to_pydatetime(self) -> np.ndarray: + """ + Return an ndarray of ``datetime.datetime`` objects. + + Returns + ------- + numpy.ndarray + An ndarray of ``datetime.datetime`` objects. + """ + return self.to_pandas().to_pydatetime() + + def to_julian_date(self) -> Index: + return Index._from_data({self.name: self._column.to_julian_date()}) + + def to_period(self, freq) -> pd.PeriodIndex: + return self.to_pandas().to_period(freq=freq) + + def normalize(self) -> Self: + """ + Convert times to midnight. + + Currently not implemented. + """ + return type(self)._from_data({self.name: self._column.normalize()}) + + @property + def time(self) -> np.ndarray: + """ + Returns numpy array of ``datetime.time`` objects. + + The time part of the Timestamps. + """ + return self.to_pandas().time + + @property + def timetz(self) -> np.ndarray: + """ + Returns numpy array of ``datetime.time`` objects with timezones. + + The time part of the Timestamps. + """ + return self.to_pandas().timetz + + @property + def date(self) -> np.ndarray: + """ + Returns numpy array of python ``datetime.date`` objects. + + Namely, the date part of Timestamps without time and + timezone information. + """ + return self.to_pandas().date + + @property + def is_month_start(self) -> cupy.ndarray: + """ + Booleans indicating if dates are the first day of the month. + """ + return self._column.is_month_start.values + + @property + def is_month_end(self) -> cupy.ndarray: + """ + Booleans indicating if dates are the last day of the month. + """ + return self._column.is_month_end.values + + @property + def is_quarter_end(self) -> cupy.ndarray: + """ + Booleans indicating if dates are the last day of the quarter. + """ + return self._column.is_quarter_end.values + + @property + def is_quarter_start(self) -> cupy.ndarray: + """ + Booleans indicating if dates are the start day of the quarter. + """ + return self._column.is_quarter_start.values + + @property + def is_year_end(self) -> cupy.ndarray: + """ + Booleans indicating if dates are the last day of the year. + """ + return self._column.is_year_end.values + + @property + def is_year_start(self) -> cupy.ndarray: + """ + Booleans indicating if dates are the first day of the year. + """ + return self._column.is_year_start.values + + @property + def is_normalized(self) -> bool: + """ + Returns True if all of the dates are at midnight ("no time") + """ + return self._column.is_normalized + + @property + def days_in_month(self) -> Index: + """ + Get the total number of days in the month that the date falls on. + """ + return Index._from_data({self.name: self._column.days_in_month}) + + daysinmonth = days_in_month + + @property + def day_of_week(self) -> Index: + """ + Get the day of week that the date falls on. + """ + return Index._from_data({self.name: self._column.day_of_week}) + @property # type: ignore @_performance_tracking def year(self): @@ -2554,6 +2759,98 @@ def __getitem__(self, index): return pd.Timedelta(value) return value + def as_unit(self, unit: str, round_ok: bool = True) -> Self: + """ + Convert to a dtype with the given unit resolution. + + Currently not implemented. + + Parameters + ---------- + unit : {'s', 'ms', 'us', 'ns'} + round_ok : bool, default True + If False and the conversion requires rounding, raise ValueError. + """ + raise NotImplementedError("as_unit is currently not implemented") + + @property + def freq(self) -> cudf.DateOffset | None: + raise NotImplementedError("freq is currently not implemented") + + @property + def freqstr(self) -> str: + raise NotImplementedError("freqstr is currently not implemented") + + @property + def resolution(self) -> str: + """ + Returns day, hour, minute, second, millisecond or microsecond + """ + raise NotImplementedError("resolution is currently not implemented") + + @property + def unit(self) -> str: + return self._column.time_unit + + def to_pytimedelta(self) -> np.ndarray: + """ + Return an ndarray of ``datetime.timedelta`` objects. + + Returns + ------- + numpy.ndarray + An ndarray of ``datetime.timedelta`` objects. + """ + return self.to_pandas().to_pytimedelta() + + @property + def asi8(self) -> cupy.ndarray: + return self._column.astype("int64").values + + def sum(self, *, skipna: bool = True, axis: int | None = 0): + return self._column.sum(skipna=skipna) + + def mean(self, *, skipna: bool = True, axis: int | None = 0): + return self._column.mean(skipna=skipna) + + def median(self, *, skipna: bool = True, axis: int | None = 0): + return self._column.median(skipna=skipna) + + def std(self, *, skipna: bool = True, axis: int | None = 0, ddof: int = 1): + return self._column.std(skipna=skipna, ddof=ddof) + + def total_seconds(self) -> cupy.ndarray: + """ + Return total duration of each element expressed in seconds. + + This method is currently not implemented. + """ + return self._column.total_seconds().values + + def ceil(self, freq: str) -> Self: + """ + Ceil to the specified resolution. + + This method is currently not implemented. + """ + return type(self)._from_data({self.name: self._column.ceil(freq)}) + + def floor(self, freq: str) -> Self: + """ + Floor to the specified resolution. + + This method is currently not implemented. + """ + return type(self)._from_data({self.name: self._column.floor(freq)}) + + def round(self, freq: str) -> Self: + """ + Round to the specified resolution. + + This method is currently not implemented. + """ + return type(self)._from_data({self.name: self._column.round(freq)}) + @property # type: ignore @_performance_tracking def days(self): @@ -3132,6 +3429,31 @@ def from_breaks( ) return IntervalIndex(interval_col, name=name, closed=closed) + @classmethod + def from_arrays( + cls, + left, + right, + closed: Literal["left", "right", "both", "neither"] = "right", + copy: bool = False, + dtype=None, + ) -> Self: + raise NotImplementedError("from_arrays is currently not supported.") + + @classmethod + def from_tuples( + cls, + data, + closed: Literal["left", "right", "both", "neither"] = "right", + name=None, + copy: bool = False, + dtype=None, + ) -> IntervalIndex: + piidx = pd.IntervalIndex.from_tuples( + data, closed=closed, name=name, copy=copy, dtype=dtype + ) + return cls.from_pandas(piidx) + def __getitem__(self, index): raise NotImplementedError( "Getting a scalar from an IntervalIndex is not yet supported" @@ -3146,6 +3468,104 @@ def _is_boolean(self): def _clean_nulls_from_index(self): return self + @property + def is_empty(self) -> cupy.ndarray: + """ + Indicates if an interval is empty, meaning it contains no points. + """ + return self._column.is_empty.values + + @property + def is_non_overlapping_monotonic(self) -> bool: + """ + Return a True if the IntervalIndex is non-overlapping and monotonic. + """ + return self._column.is_non_overlapping_monotonic + + @property + def is_overlapping(self) -> bool: + """ + Return True if the IntervalIndex has overlapping intervals, else False. + + Currently not implemented + """ + return self._column.is_overlapping + + @property + def length(self) -> Index: + """ + Return an Index with entries denoting the length of each Interval. + """ + return _index_from_data({None: self._column.length}) + + @property + def left(self) -> Index: + """ + Return left bounds of the intervals in the IntervalIndex. + + The left bounds of each interval in the IntervalIndex are + returned as an Index. The datatype of the left bounds is the + same as the datatype of the endpoints of the intervals. + """ + return _index_from_data({None: self._column.left}) + + @property + def mid(self) -> Index: + """ + Return the midpoint of each interval in the IntervalIndex as an Index. + + Each midpoint is calculated as the average of the left and right bounds + of each interval. + """ + return _index_from_data({None: self._column.mid}) + + @property + def right(self) -> Index: + """ + Return right bounds of the intervals in the IntervalIndex. + + The right bounds of each interval in the IntervalIndex are + returned as an Index. The datatype of the right bounds is the + same as the datatype of the endpoints of the intervals. + """ + return _index_from_data({None: self._column.right}) + + def overlaps(self, other) -> cupy.ndarray: + """ + Check elementwise if an Interval overlaps the values in the IntervalIndex. + + Currently not supported. + """ + return self._column.overlaps(other).values + + def set_closed( + self, closed: Literal["left", "right", "both", "neither"] + ) -> Self: + """ + Return an identical IntervalArray closed on the specified side. + + Parameters + ---------- + closed : {'left', 'right', 'both', 'neither'} + Whether the intervals are closed on the left-side, right-side, both + or neither. + """ + return type(self)._from_data( + {self.name: self._column.set_closed(closed)} + ) + + def to_tuples(self, na_tuple: bool = True) -> pd.Index: + """ + Return an Index of tuples of the form (left, right). + + Parameters + ---------- + na_tuple : bool, default True + If ``True``, return ``NA`` as a tuple ``(nan, nan)``. If ``False``, + just return ``NA`` as ``nan``. + """ + return self.to_pandas().to_tuples(na_tuple=na_tuple) + @_performance_tracking def as_index( @@ -3391,9 +3811,11 @@ def _get_nearest_indexer( return indexer -def _validate_freq(freq: Any) -> cudf.DateOffset: +def _validate_freq(freq: Any) -> cudf.DateOffset | None: if isinstance(freq, str): return cudf.DateOffset._from_freqstr(freq) + elif freq is None: + return freq elif freq is not None and not isinstance(freq, cudf.DateOffset): raise ValueError(f"Invalid frequency: {freq}") return cast(cudf.DateOffset, freq) diff --git a/python/cudf/cudf/core/series.py b/python/cudf/cudf/core/series.py index 10ac1fdfc1e..929af5cd981 100644 --- a/python/cudf/cudf/core/series.py +++ b/python/cudf/cudf/core/series.py @@ -4415,7 +4415,9 @@ def is_month_start(self) -> Series: """ Booleans indicating if dates are the first day of the month. """ - return (self.day == 1).fillna(False) + return self._return_result_like_self( + self.series._column.is_month_start + ) @property # type: ignore @_performance_tracking @@ -4462,9 +4464,7 @@ def days_in_month(self) -> Series: 11 31 dtype: int16 """ - return self._return_result_like_self( - libcudf.datetime.days_in_month(self.series._column) - ) + return self._return_result_like_self(self.series._column.days_in_month) @property # type: ignore @_performance_tracking @@ -4505,9 +4505,7 @@ def is_month_end(self) -> Series: 8 False dtype: bool """ # noqa: E501 - last_day_col = libcudf.datetime.last_day_of_month(self.series._column) - last_day = self._return_result_like_self(last_day_col) - return (self.day == last_day.dt.day).fillna(False) + return self._return_result_like_self(self.series._column.is_month_end) @property # type: ignore @_performance_tracking @@ -4546,14 +4544,10 @@ def is_quarter_start(self) -> Series: 7 False dtype: bool """ - day = self.series._column.get_dt_field("day") - first_month = self.series._column.get_dt_field("month").isin( - [1, 4, 7, 10] + return self._return_result_like_self( + self.series._column.is_quarter_start ) - result = ((day == cudf.Scalar(1)) & first_month).fillna(False) - return self._return_result_like_self(result) - @property # type: ignore @_performance_tracking def is_quarter_end(self) -> Series: @@ -4591,16 +4585,10 @@ def is_quarter_end(self) -> Series: 7 False dtype: bool """ - day = self.series._column.get_dt_field("day") - last_day = libcudf.datetime.last_day_of_month(self.series._column) - last_day = last_day.get_dt_field("day") - last_month = self.series._column.get_dt_field("month").isin( - [3, 6, 9, 12] + return self._return_result_like_self( + self.series._column.is_quarter_end ) - result = ((day == last_day) & last_month).fillna(False) - return self._return_result_like_self(result) - @property # type: ignore @_performance_tracking def is_year_start(self) -> Series: @@ -4627,10 +4615,7 @@ def is_year_start(self) -> Series: 2 True dtype: bool """ - outcol = self.series._column.get_dt_field( - "day_of_year" - ) == cudf.Scalar(1) - return self._return_result_like_self(outcol.fillna(False)) + return self._return_result_like_self(self.series._column.is_year_start) @property # type: ignore @_performance_tracking @@ -4658,13 +4643,7 @@ def is_year_end(self) -> Series: 2 False dtype: bool """ - day_of_year = self.series._column.get_dt_field("day_of_year") - leap_dates = libcudf.datetime.is_leap_year(self.series._column) - - leap = day_of_year == cudf.Scalar(366) - non_leap = day_of_year == cudf.Scalar(365) - result = cudf._lib.copying.copy_if_else(leap, non_leap, leap_dates) - return self._return_result_like_self(result.fillna(False)) + return self._return_result_like_self(self.series._column.is_year_end) @_performance_tracking def _get_dt_field(self, field: str) -> Series: diff --git a/python/cudf/cudf/pandas/_logger.py b/python/cudf/cudf/pandas/_logger.py new file mode 100644 index 00000000000..68923c3e35c --- /dev/null +++ b/python/cudf/cudf/pandas/_logger.py @@ -0,0 +1,80 @@ +# SPDX-FileCopyrightText: Copyright (c) 2024, NVIDIA CORPORATION & AFFILIATES. +# All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +from __future__ import annotations + +import json +import logging + +logging.basicConfig( + filename="cudf_pandas_unit_tests_debug.log", level=logging.INFO +) +logger = logging.getLogger() + + +class StructuredMessage: + # https://docs.python.org/3/howto/logging-cookbook.html#implementing-structured-logging + def __init__(self, debug_type: str, /, **kwargs) -> None: + self.debug_type = debug_type + self.kwargs = kwargs + + def __str__(self) -> str: + log = {"debug_type": self.debug_type} + return json.dumps({**log, **self.kwargs}) + + +def reprify(arg) -> str: + """Attempt to return arg's repr for logging.""" + try: + return repr(arg) + except Exception: + return "" + + +def log_fallback( + slow_args: tuple, slow_kwargs: dict, exception: Exception +) -> None: + """Log when a fast call falls back to the slow path.""" + caller = slow_args[0] + module = getattr(caller, "__module__", "") + obj_name = getattr(caller, "__qualname__", type(caller).__qualname__) + if module: + slow_object = f"{module}.{obj_name}" + else: + slow_object = obj_name + # TODO: Maybe use inspect.signature to map called args and kwargs + # to their keyword names, but a user calling an API incorrectly would + # break this. + caller_args = slow_args[1] + args_passed = ", ".join((reprify(arg) for arg in caller_args)) + args_types_passed = ", ".join((type(arg).__name__ for arg in caller_args)) + kwargs_passed = {} + kwargs_types_passed = "" + if len(slow_args) == 3: + caller_kwargs = slow_args[2] + if caller_kwargs: + fmt_kwargs = ", ".join( + f"{kwarg}={reprify(value)}" + for kwarg, value in caller_kwargs.items() + ) + kwargs_types_passed = ", ".join( + f"{kwarg}={type(value).__name__}" + for kwarg, value in caller_kwargs.items() + ) + args_passed = f"{args_passed}, {fmt_kwargs}" + kwargs_passed = { + kwarg: reprify(value) for kwarg, value in caller_kwargs.items() + } + message = StructuredMessage( + "LOG_FAST_FALLBACK", + failed_call=f"{slow_object}({args_passed})", + exception=type(exception).__name__, + exception_message=str(exception), + slow_object=slow_object, + args_passed=args_passed, + kwargs_passed=kwargs_passed, + args_types_passed=args_types_passed, + kwargs_types_passed=kwargs_types_passed, + ) + logger.info(message) diff --git a/python/cudf/cudf/pandas/fast_slow_proxy.py b/python/cudf/cudf/pandas/fast_slow_proxy.py index dfb729cae6b..bb678fd1efe 100644 --- a/python/cudf/cudf/pandas/fast_slow_proxy.py +++ b/python/cudf/cudf/pandas/fast_slow_proxy.py @@ -930,13 +930,17 @@ def _fast_slow_function_call( "Pandas debugging mode failed. " f"The exception was {e}." ) - except Exception: + except Exception as err: with nvtx.annotate( "EXECUTE_SLOW", color=_CUDF_PANDAS_NVTX_COLORS["EXECUTE_SLOW"], domain="cudf_pandas", ): slow_args, slow_kwargs = _slow_arg(args), _slow_arg(kwargs) + if _env_get_bool("LOG_FAST_FALLBACK", False): + from ._logger import log_fallback + + log_fallback(slow_args, slow_kwargs, err) with disable_module_accelerator(): result = func(*slow_args, **slow_kwargs) return _maybe_wrap_result(result, func, *args, **kwargs), fast diff --git a/python/cudf/cudf/tests/indexes/test_interval.py b/python/cudf/cudf/tests/indexes/test_interval.py index 87b76ab7609..3b3a9f96543 100644 --- a/python/cudf/cudf/tests/indexes/test_interval.py +++ b/python/cudf/cudf/tests/indexes/test_interval.py @@ -368,3 +368,36 @@ def test_intervalindex_conflicting_closed(): def test_intervalindex_invalid_data(): with pytest.raises(TypeError): cudf.IntervalIndex([1, 2]) + + +@pytest.mark.parametrize( + "attr", + [ + "is_empty", + "length", + "left", + "right", + "mid", + ], +) +def test_intervalindex_properties(attr): + pd_ii = pd.IntervalIndex.from_arrays([0, 1], [0, 2]) + cudf_ii = cudf.from_pandas(pd_ii) + + result = getattr(cudf_ii, attr) + expected = getattr(pd_ii, attr) + assert_eq(result, expected) + + +def test_set_closed(): + data = [pd.Interval(0, 1)] + result = cudf.IntervalIndex(data).set_closed("both") + expected = pd.IntervalIndex(data).set_closed("both") + assert_eq(result, expected) + + +def test_from_tuples(): + data = [(1, 2), (10, 20)] + result = cudf.IntervalIndex.from_tuples(data, closed="left", name="a") + expected = pd.IntervalIndex.from_tuples(data, closed="left", name="a") + assert_eq(result, expected) diff --git a/python/cudf/cudf/tests/test_datetime.py b/python/cudf/cudf/tests/test_datetime.py index 7ab9ff2ef23..6bc775d2a2c 100644 --- a/python/cudf/cudf/tests/test_datetime.py +++ b/python/cudf/cudf/tests/test_datetime.py @@ -7,6 +7,7 @@ import cupy as cp import numpy as np import pandas as pd +import pandas._testing as tm import pyarrow as pa import pytest @@ -2429,3 +2430,109 @@ def test_day_month_name_locale_not_implemented(meth, klass): obj = obj.dt with pytest.raises(NotImplementedError): getattr(obj, meth)(locale="pt_BR.utf8") + + +@pytest.mark.parametrize( + "attr", + [ + "is_month_start", + "is_month_end", + "is_quarter_end", + "is_quarter_start", + "is_year_end", + "is_year_start", + "days_in_month", + "timetz", + "time", + "date", + ], +) +def test_dti_datetime_attributes(attr): + data = [ + "2020-01-01", + "2020-01-31", + "2020-03-01", + "2020-03-31", + "2020-03-31", + "2020-12-31", + None, + ] + pd_dti = pd.DatetimeIndex(data, name="foo") + cudf_dti = cudf.from_pandas(pd_dti) + + result = getattr(cudf_dti, attr) + expected = getattr(pd_dti, attr) + if isinstance(result, np.ndarray): + # numpy doesn't assert object arrays with NaT correctly + tm.assert_numpy_array_equal(result, expected) + else: + assert_eq(result, expected) + + +@pytest.mark.parametrize("attr", ["freq", "unit"]) +def test_dti_properties(attr): + pd_dti = pd.DatetimeIndex( + ["2020-01-01", "2020-01-02"], dtype="datetime64[ns]" + ) + cudf_dti = cudf.DatetimeIndex( + ["2020-01-01", "2020-01-02"], dtype="datetime64[ns]" + ) + + result = getattr(cudf_dti, attr) + expected = getattr(pd_dti, attr) + assert result == expected + + +def test_dti_asi8(): + pd_dti = pd.DatetimeIndex(["2020-01-01", "2020-12-31"], name="foo") + cudf_dti = cudf.from_pandas(pd_dti) + + result = pd_dti.asi8 + expected = cudf_dti.asi8 + assert_eq(result, expected) + + +@pytest.mark.parametrize( + "method, kwargs", + [ + ["mean", {}], + pytest.param( + "std", + {}, + marks=pytest.mark.xfail( + reason="https://github.com/rapidsai/cudf/issues/16444" + ), + ), + pytest.param( + "std", + {"ddof": 0}, + marks=pytest.mark.xfail( + reason="https://github.com/rapidsai/cudf/issues/16444" + ), + ), + ], +) +def test_dti_reduction(method, kwargs): + pd_dti = pd.DatetimeIndex(["2020-01-01", "2020-12-31"], name="foo") + cudf_dti = cudf.from_pandas(pd_dti) + + result = getattr(cudf_dti, method)(**kwargs) + expected = getattr(pd_dti, method)(**kwargs) + assert result == expected + + +@pytest.mark.parametrize( + "method, kwargs", + [ + ["to_pydatetime", {}], + ["to_period", {"freq": "D"}], + ["strftime", {"date_format": "%Y-%m-%d"}], + ], +) +def test_dti_methods(method, kwargs): + pd_dti = pd.DatetimeIndex(["2020-01-01", "2020-12-31"], name="foo") + cudf_dti = cudf.from_pandas(pd_dti) + + result = getattr(cudf_dti, method)(**kwargs) + expected = getattr(pd_dti, method)(**kwargs) + assert_eq(result, expected) diff --git a/python/cudf/cudf/tests/test_timedelta.py b/python/cudf/cudf/tests/test_timedelta.py index c4a2349f535..d622ff6b94e 100644 --- a/python/cudf/cudf/tests/test_timedelta.py +++ b/python/cudf/cudf/tests/test_timedelta.py @@ -1467,3 +1467,42 @@ def test_timedelta_series_cmpops_pandas_compatibility(data1, data2, op): got = op(gsr1, gsr2) assert_eq(expect, got) + + +@pytest.mark.parametrize( + "method, kwargs", + [ + ["sum", {}], + ["mean", {}], + ["median", {}], + ["std", {}], + ["std", {"ddof": 0}], + ], +) +def test_tdi_reductions(method, kwargs): + pd_tdi = pd.TimedeltaIndex(["1 day", "2 days", "3 days"]) + cudf_tdi = cudf.from_pandas(pd_tdi) + + result = getattr(pd_tdi, method)(**kwargs) + expected = getattr(cudf_tdi, method)(**kwargs) + assert result == expected + + +def test_tdi_asi8(): + pd_tdi = pd.TimedeltaIndex(["1 day", "2 days", "3 days"]) + cudf_tdi = cudf.from_pandas(pd_tdi) + + result = pd_tdi.asi8 + expected = cudf_tdi.asi8 + assert_eq(result, expected) + + +def test_tdi_unit(): + pd_tdi = pd.TimedeltaIndex( + ["1 day", "2 days", "3 days"], dtype="timedelta64[ns]" + ) + cudf_tdi = cudf.from_pandas(pd_tdi) + + result = pd_tdi.unit + expected = cudf_tdi.unit + assert result == expected diff --git a/python/pylibcudf/pylibcudf/column.pyx b/python/pylibcudf/pylibcudf/column.pyx index 7177b321bbc..a37a12fc7e1 100644 --- a/python/pylibcudf/pylibcudf/column.pyx +++ b/python/pylibcudf/pylibcudf/column.pyx @@ -12,13 +12,11 @@ from rmm._lib.device_buffer cimport DeviceBuffer from .gpumemoryview cimport gpumemoryview from .scalar cimport Scalar -from .types cimport DataType, type_id +from .types cimport DataType, size_of, type_id from .utils cimport int_to_bitmask_ptr, int_to_void_ptr import functools -import numpy as np - cdef class Column: """A container of nullable device data as a column of elements. @@ -300,14 +298,15 @@ cdef class Column: raise ValueError("mask not yet supported.") typestr = iface['typestr'][1:] + data_type = _datatype_from_dtype_desc(typestr) + if not is_c_contiguous( iface['shape'], iface['strides'], - np.dtype(typestr).itemsize + size_of(data_type) ): raise ValueError("Data must be C-contiguous") - data_type = _datatype_from_dtype_desc(typestr) size = iface['shape'][0] return Column( data_type, diff --git a/python/pylibcudf/pylibcudf/libcudf/types.pxd b/python/pylibcudf/pylibcudf/libcudf/types.pxd index 8e94ec296cf..eabae68bc90 100644 --- a/python/pylibcudf/pylibcudf/libcudf/types.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/types.pxd @@ -98,3 +98,5 @@ cdef extern from "cudf/types.hpp" namespace "cudf" nogil: HIGHER MIDPOINT NEAREST + + cdef size_type size_of(data_type t) except + diff --git a/python/pylibcudf/pylibcudf/types.pxd b/python/pylibcudf/pylibcudf/types.pxd index 1278552e3c6..aa48979d961 100644 --- a/python/pylibcudf/pylibcudf/types.pxd +++ b/python/pylibcudf/pylibcudf/types.pxd @@ -26,3 +26,5 @@ cdef class DataType: @staticmethod cdef DataType from_libcudf(data_type dt) + +cpdef size_type size_of(DataType t) diff --git a/python/pylibcudf/pylibcudf/types.pyx b/python/pylibcudf/pylibcudf/types.pyx index d13365eebfb..58c7d97e9bc 100644 --- a/python/pylibcudf/pylibcudf/types.pyx +++ b/python/pylibcudf/pylibcudf/types.pyx @@ -1,7 +1,12 @@ # Copyright (c) 2023-2024, NVIDIA CORPORATION. from libc.stdint cimport int32_t -from pylibcudf.libcudf.types cimport data_type, size_type, type_id +from pylibcudf.libcudf.types cimport ( + data_type, + size_of as cpp_size_of, + size_type, + type_id, +) from pylibcudf.libcudf.utilities.type_dispatcher cimport type_to_id from pylibcudf.libcudf.types import type_id as TypeId # no-cython-lint, isort:skip @@ -68,6 +73,15 @@ cdef class DataType: ret.c_obj = dt return ret +cpdef size_type size_of(DataType t): + """Returns the size in bytes of elements of the specified data_type. + + Only fixed-width types are supported. + + For details, see :cpp:func:`size_of`. + """ + with nogil: + return cpp_size_of(t.c_obj) SIZE_TYPE = DataType(type_to_id[size_type]()) SIZE_TYPE_ID = SIZE_TYPE.id() From 03365697dd1e7dd61d6643b0432f492ca2728bc4 Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Thu, 1 Aug 2024 10:49:05 -0700 Subject: [PATCH 13/43] Import pylibcudf correctly --- .github/labeler.yml | 2 +- ci/test_wheel_cudf_polars.sh | 2 +- .../user_guide/api_docs/pylibcudf/io/csv.rst | 2 +- .../api_docs/pylibcudf/io/parquet.rst | 2 +- python/cudf/cudf/_lib/CMakeLists.txt | 1 - python/cudf/cudf/_lib/avro.pyx | 4 +- python/cudf/cudf/_lib/column.pxd | 11 +++--- python/cudf/cudf/_lib/column.pyx | 18 ++++----- python/cudf/cudf/_lib/copying.pxd | 2 +- python/cudf/cudf/_lib/copying.pyx | 18 ++++----- python/cudf/cudf/_lib/csv.pyx | 20 +++++----- python/cudf/cudf/_lib/datetime.pyx | 12 +++--- python/cudf/cudf/_lib/groupby.pyx | 4 +- python/cudf/cudf/_lib/hash.pyx | 16 ++++---- python/cudf/cudf/_lib/interop.pyx | 7 ++-- python/cudf/cudf/_lib/io/utils.pxd | 8 ++-- python/cudf/cudf/_lib/io/utils.pyx | 12 +++--- python/cudf/cudf/_lib/json.pyx | 14 +++---- python/cudf/cudf/_lib/labeling.pyx | 9 ++--- python/cudf/cudf/_lib/lists.pyx | 4 +- python/cudf/cudf/_lib/null_mask.pyx | 12 +++--- .../cudf/_lib/nvtext/byte_pair_encode.pyx | 12 +++--- .../cudf/cudf/_lib/nvtext/edit_distance.pyx | 10 ++--- .../cudf/cudf/_lib/nvtext/generate_ngrams.pyx | 14 +++---- python/cudf/cudf/_lib/nvtext/jaccard.pyx | 12 +++--- python/cudf/cudf/_lib/nvtext/minhash.pyx | 12 +++--- .../cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx | 14 +++---- python/cudf/cudf/_lib/nvtext/normalize.pyx | 10 ++--- python/cudf/cudf/_lib/nvtext/replace.pyx | 14 +++---- python/cudf/cudf/_lib/nvtext/stemmer.pyx | 11 +++--- .../cudf/_lib/nvtext/subword_tokenize.pyx | 8 ++-- python/cudf/cudf/_lib/nvtext/tokenize.pyx | 14 +++---- python/cudf/cudf/_lib/orc.pyx | 31 ++++++++------- python/cudf/cudf/_lib/parquet.pyx | 39 ++++++++++--------- python/cudf/cudf/_lib/partitioning.pyx | 12 +++--- python/cudf/cudf/_lib/quantiles.pyx | 5 ++- python/cudf/cudf/_lib/reshape.pyx | 5 ++- python/cudf/cudf/_lib/round.pyx | 4 +- python/cudf/cudf/_lib/scalar.pxd | 3 +- python/cudf/cudf/_lib/scalar.pyx | 11 +++--- python/cudf/cudf/_lib/sort.pyx | 10 ++--- python/cudf/cudf/_lib/string_casting.pyx | 22 +++++------ python/cudf/cudf/_lib/strings/attributes.pyx | 10 ++--- python/cudf/cudf/_lib/strings/capitalize.pyx | 2 +- python/cudf/cudf/_lib/strings/case.pyx | 2 +- python/cudf/cudf/_lib/strings/char_types.pyx | 11 +++--- python/cudf/cudf/_lib/strings/combine.pyx | 14 +++---- python/cudf/cudf/_lib/strings/contains.pyx | 20 +++++----- .../strings/convert/convert_fixed_point.pyx | 11 +++--- .../_lib/strings/convert/convert_floats.pyx | 9 +++-- .../_lib/strings/convert/convert_integers.pyx | 9 +++-- .../_lib/strings/convert/convert_lists.pyx | 11 +++--- .../_lib/strings/convert/convert_urls.pyx | 9 +++-- python/cudf/cudf/_lib/strings/extract.pyx | 11 +++--- python/cudf/cudf/_lib/strings/find.pyx | 6 ++- .../cudf/cudf/_lib/strings/find_multiple.pyx | 9 +++-- python/cudf/cudf/_lib/strings/findall.pyx | 11 +++--- python/cudf/cudf/_lib/strings/json.pyx | 11 +++--- python/cudf/cudf/_lib/strings/padding.pyx | 11 +++--- python/cudf/cudf/_lib/strings/repeat.pyx | 9 +++-- python/cudf/cudf/_lib/strings/replace.pyx | 5 ++- python/cudf/cudf/_lib/strings/replace_re.pyx | 17 ++++---- .../cudf/_lib/strings/split/partition.pyx | 11 +++--- python/cudf/cudf/_lib/strings/split/split.pyx | 19 ++++----- python/cudf/cudf/_lib/strings/strip.pyx | 11 +++--- python/cudf/cudf/_lib/strings/substring.pyx | 2 +- python/cudf/cudf/_lib/strings/translate.pyx | 13 ++++--- python/cudf/cudf/_lib/strings/wrap.pyx | 9 +++-- python/cudf/cudf/_lib/strings_udf.pyx | 14 +++---- python/cudf/cudf/_lib/text.pyx | 8 ++-- python/cudf/cudf/_lib/timezone.pyx | 6 +-- python/cudf/cudf/_lib/transform.pyx | 26 ++++++------- python/cudf/cudf/_lib/transpose.pyx | 6 +-- python/cudf/cudf/_lib/types.pxd | 9 ++--- python/cudf/cudf/_lib/types.pyx | 8 ++-- python/cudf/cudf/_lib/utils.pxd | 5 +-- python/cudf/cudf/_lib/utils.pyx | 8 ++-- .../cudf/cudf/core/_internals/expressions.py | 5 +-- python/cudf/cudf/core/buffer/buffer.py | 3 +- python/cudf_kafka/cudf_kafka/_lib/kafka.pxd | 5 +-- python/cudf_kafka/cudf_kafka/_lib/kafka.pyx | 3 +- .../cudf_polars/containers/column.py | 2 +- .../cudf_polars/containers/dataframe.py | 2 +- python/cudf_polars/cudf_polars/dsl/expr.py | 2 +- python/cudf_polars/cudf_polars/dsl/ir.py | 2 +- .../cudf_polars/cudf_polars/dsl/translate.py | 2 +- .../cudf_polars/typing/__init__.py | 2 +- .../cudf_polars/cudf_polars/utils/dtypes.py | 2 +- .../cudf_polars/cudf_polars/utils/sorting.py | 2 +- .../tests/containers/test_column.py | 2 +- .../tests/containers/test_dataframe.py | 2 +- python/cudf_polars/tests/dsl/test_expr.py | 2 +- .../tests/expressions/test_literal.py | 2 +- .../tests/expressions/test_sort.py | 2 +- .../cudf_polars/tests/utils/test_broadcast.py | 2 +- python/pylibcudf/pylibcudf/_version.py | 24 ++++++++++++ python/pylibcudf/pylibcudf/types.pyx | 8 ---- 97 files changed, 454 insertions(+), 428 deletions(-) create mode 100644 python/pylibcudf/pylibcudf/_version.py diff --git a/.github/labeler.yml b/.github/labeler.yml index 48967417af3..90cdda4d3ca 100644 --- a/.github/labeler.yml +++ b/.github/labeler.yml @@ -12,7 +12,7 @@ cudf.polars: - 'python/cudf_polars/**' pylibcudf: - - 'python/cudf/cudf/_lib/pylibcudf/**' + - 'python/cudf/pylibcudf/**' libcudf: - 'cpp/**' diff --git a/ci/test_wheel_cudf_polars.sh b/ci/test_wheel_cudf_polars.sh index cc9f5788685..3047867413b 100755 --- a/ci/test_wheel_cudf_polars.sh +++ b/ci/test_wheel_cudf_polars.sh @@ -10,7 +10,7 @@ set -eou pipefail # files in cudf_polars/pylibcudf", rather than "are there changes # between upstream and this branch which touch cudf_polars/pylibcudf" # TODO: is the target branch exposed anywhere in an environment variable? -if [ -n "$(git diff --name-only origin/branch-24.10...HEAD -- python/cudf_polars/ python/cudf/cudf/_lib/pylibcudf/)" ]; +if [ -n "$(git diff --name-only origin/branch-24.10...HEAD -- python/cudf_polars/ python/cudf/pylibcudf/)" ]; then HAS_CHANGES=1 else diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/csv.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/csv.rst index 5a2276f8b2d..59f7d8fe54c 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/csv.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/csv.rst @@ -2,5 +2,5 @@ CSV === -.. automodule:: cudf._lib.pylibcudf.io.csv +.. automodule:: pylibcudf.io.csv :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/parquet.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/parquet.rst index 9dfbadfa216..07c2503ab28 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/io/parquet.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/io/parquet.rst @@ -2,5 +2,5 @@ Parquet ======= -.. automodule:: cudf._lib.pylibcudf.io.parquet +.. automodule:: pylibcudf.io.parquet :members: diff --git a/python/cudf/cudf/_lib/CMakeLists.txt b/python/cudf/cudf/_lib/CMakeLists.txt index 38b7e9ebe04..38f3b13fabe 100644 --- a/python/cudf/cudf/_lib/CMakeLists.txt +++ b/python/cudf/cudf/_lib/CMakeLists.txt @@ -69,5 +69,4 @@ link_to_pyarrow_headers("${targets_using_arrow_headers}") add_subdirectory(io) add_subdirectory(nvtext) -add_subdirectory(pylibcudf) add_subdirectory(strings) diff --git a/python/cudf/cudf/_lib/avro.pyx b/python/cudf/cudf/_lib/avro.pyx index 3c132b22880..b1759635a36 100644 --- a/python/cudf/cudf/_lib/avro.pyx +++ b/python/cudf/cudf/_lib/avro.pyx @@ -2,8 +2,8 @@ from cudf._lib.utils cimport data_from_pylibcudf_io -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf.io.types import SourceInfo +import pylibcudf as plc +from pylibcudf.io.types import SourceInfo cpdef read_avro(datasource, columns=None, skip_rows=0, num_rows=-1): diff --git a/python/cudf/cudf/_lib/column.pxd b/python/cudf/cudf/_lib/column.pxd index 437f44af9f0..ba812f3c38a 100644 --- a/python/cudf/cudf/_lib/column.pxd +++ b/python/cudf/cudf/_lib/column.pxd @@ -4,15 +4,14 @@ from typing import Literal from libcpp cimport bool from libcpp.memory cimport unique_ptr - -from rmm._lib.device_buffer cimport device_buffer - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type + +from rmm._lib.device_buffer cimport device_buffer cdef class Column: diff --git a/python/cudf/cudf/_lib/column.pyx b/python/cudf/cudf/_lib/column.pyx index e030147fdd3..4b99514b430 100644 --- a/python/cudf/cudf/_lib/column.pyx +++ b/python/cudf/cudf/_lib/column.pyx @@ -39,18 +39,18 @@ from cudf._lib.types cimport ( from cudf._lib.null_mask import bitmask_allocation_size_bytes from cudf._lib.types import dtype_from_pylibcudf_column - -cimport cudf._lib.pylibcudf.libcudf.copying as cpp_copying -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -cimport cudf._lib.pylibcudf.libcudf.unary as libcudf_unary -from cudf._lib.pylibcudf.libcudf.column.column cimport column, column_contents -from cudf._lib.pylibcudf.libcudf.column.column_factories cimport ( +cimport pylibcudf.libcudf.copying as cpp_copying +cimport pylibcudf.libcudf.types as libcudf_types +cimport pylibcudf.libcudf.unary as libcudf_unary +from pylibcudf.libcudf.column.column cimport column, column_contents +from pylibcudf.libcudf.column.column_factories cimport ( make_column_from_scalar as cpp_make_column_from_scalar, make_numeric_column, ) -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.null_mask cimport null_count as cpp_null_count -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.null_mask cimport null_count as cpp_null_count +from pylibcudf.libcudf.scalar.scalar cimport scalar + from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/copying.pxd b/python/cudf/cudf/_lib/copying.pxd index 8fc7f4e1da0..14c7d2066d8 100644 --- a/python/cudf/cudf/_lib/copying.pxd +++ b/python/cudf/cudf/_lib/copying.pxd @@ -1,6 +1,6 @@ # Copyright (c) 2021-2024, NVIDIA CORPORATION. -from cudf._lib.pylibcudf.libcudf.contiguous_split cimport packed_columns +from pylibcudf.libcudf.contiguous_split cimport packed_columns cdef class _CPackedColumns: diff --git a/python/cudf/cudf/_lib/copying.pyx b/python/cudf/cudf/_lib/copying.pyx index 796c70e615c..288abca56af 100644 --- a/python/cudf/cudf/_lib/copying.pyx +++ b/python/cudf/cudf/_lib/copying.pyx @@ -24,19 +24,17 @@ from cudf._lib.utils cimport table_view_from_table from cudf._lib.reduce import minmax from cudf.core.abc import Serializable +cimport pylibcudf.libcudf.contiguous_split as cpp_contiguous_split from libcpp.memory cimport make_unique - -cimport cudf._lib.pylibcudf.libcudf.contiguous_split as cpp_contiguous_split -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.lists.gather cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.lists.gather cimport ( segmented_gather as cpp_segmented_gather, ) -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport size_type + from cudf._lib.utils cimport columns_from_pylibcudf_table, data_from_table_view # workaround for https://github.com/cython/cython/issues/3885 diff --git a/python/cudf/cudf/_lib/csv.pyx b/python/cudf/cudf/_lib/csv.pyx index 099b61d62ae..a72eefc72ba 100644 --- a/python/cudf/cudf/_lib/csv.pyx +++ b/python/cudf/cudf/_lib/csv.pyx @@ -1,13 +1,13 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.types as libcudf_types from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move from libcpp.vector cimport vector +from pylibcudf.io.datasource cimport Datasource, NativeFileDatasource -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.pylibcudf.io.datasource cimport Datasource, NativeFileDatasource from cudf._lib.types cimport dtype_to_pylibcudf_type import errno @@ -22,23 +22,23 @@ import cudf from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool - -from cudf._lib.io.utils cimport make_sink_info -from cudf._lib.pylibcudf.libcudf.io.csv cimport ( +from pylibcudf.libcudf.io.csv cimport ( csv_writer_options, write_csv as cpp_write_csv, ) -from cudf._lib.pylibcudf.libcudf.io.data_sink cimport data_sink -from cudf._lib.pylibcudf.libcudf.io.types cimport compression_type, sink_info -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.io.data_sink cimport data_sink +from pylibcudf.libcudf.io.types cimport compression_type, sink_info +from pylibcudf.libcudf.table.table_view cimport table_view + +from cudf._lib.io.utils cimport make_sink_info from cudf._lib.utils cimport data_from_pylibcudf_io, table_view_from_table +import pylibcudf as plc from pyarrow.lib import NativeFile -import cudf._lib.pylibcudf as plc from cudf.api.types import is_hashable -from cudf._lib.pylibcudf.types cimport DataType +from pylibcudf.types cimport DataType CSV_HEX_TYPE_MAP = { "hex": np.dtype("int64"), diff --git a/python/cudf/cudf/_lib/datetime.pyx b/python/cudf/cudf/_lib/datetime.pyx index b30ef875a7b..40a9e3e9b87 100644 --- a/python/cudf/cudf/_lib/datetime.pyx +++ b/python/cudf/cudf/_lib/datetime.pyx @@ -4,16 +4,16 @@ import warnings from cudf.core.buffer import acquire_spill_lock +cimport pylibcudf.libcudf.datetime as libcudf_datetime from libcpp.memory cimport unique_ptr from libcpp.utility cimport move +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.filling cimport calendrical_month_sequence +from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.types cimport size_type -cimport cudf._lib.pylibcudf.libcudf.datetime as libcudf_datetime from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.filling cimport calendrical_month_sequence -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/groupby.pyx b/python/cudf/cudf/_lib/groupby.pyx index 9d18e023fe8..9448e9ec4be 100644 --- a/python/cudf/cudf/_lib/groupby.pyx +++ b/python/cudf/cudf/_lib/groupby.pyx @@ -18,8 +18,8 @@ from cudf._lib.utils cimport columns_from_pylibcudf_table from cudf._lib.scalar import as_device_scalar -from cudf._lib.pylibcudf.libcudf.replace cimport replace_policy -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.replace cimport replace_policy +from pylibcudf.libcudf.scalar.scalar cimport scalar from cudf._lib import pylibcudf from cudf._lib.aggregation import make_aggregation diff --git a/python/cudf/cudf/_lib/hash.pyx b/python/cudf/cudf/_lib/hash.pyx index b8331d5a226..41d78da1df1 100644 --- a/python/cudf/cudf/_lib/hash.pyx +++ b/python/cudf/cudf/_lib/hash.pyx @@ -2,15 +2,13 @@ from cudf.core.buffer import acquire_spill_lock +cimport pylibcudf.libcudf.types as libcudf_types from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.hash cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.hash cimport ( md5, murmurhash3_x86_32, sha1, @@ -20,11 +18,13 @@ from cudf._lib.pylibcudf.libcudf.hash cimport ( sha512, xxhash_64, ) -from cudf._lib.pylibcudf.libcudf.partitioning cimport ( +from pylibcudf.libcudf.partitioning cimport ( hash_partition as cpp_hash_partition, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view + +from cudf._lib.column cimport Column from cudf._lib.utils cimport columns_from_unique_ptr, table_view_from_columns diff --git a/python/cudf/cudf/_lib/interop.pyx b/python/cudf/cudf/_lib/interop.pyx index 37595b65e65..85588f78a25 100644 --- a/python/cudf/cudf/_lib/interop.pyx +++ b/python/cudf/cudf/_lib/interop.pyx @@ -6,13 +6,14 @@ from libcpp.utility cimport move from cudf._lib import pylibcudf -from cudf._lib.pylibcudf.libcudf.interop cimport ( +from pylibcudf.libcudf.interop cimport ( DLManagedTensor, from_dlpack as cpp_from_dlpack, to_dlpack as cpp_to_dlpack, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view + from cudf._lib.utils cimport ( columns_from_pylibcudf_table, columns_from_unique_ptr, diff --git a/python/cudf/cudf/_lib/io/utils.pxd b/python/cudf/cudf/_lib/io/utils.pxd index 680a87c789e..605876af7a9 100644 --- a/python/cudf/cudf/_lib/io/utils.pxd +++ b/python/cudf/cudf/_lib/io/utils.pxd @@ -2,15 +2,15 @@ from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.io.data_sink cimport data_sink -from cudf._lib.pylibcudf.libcudf.io.types cimport ( +from pylibcudf.libcudf.io.data_sink cimport data_sink +from pylibcudf.libcudf.io.types cimport ( column_name_info, sink_info, source_info, ) +from cudf._lib.column cimport Column + cdef source_info make_source_info(list src) except* cdef sink_info make_sinks_info( diff --git a/python/cudf/cudf/_lib/io/utils.pyx b/python/cudf/cudf/_lib/io/utils.pyx index 58956b9e9b7..163f3786f2e 100644 --- a/python/cudf/cudf/_lib/io/utils.pyx +++ b/python/cudf/cudf/_lib/io/utils.pyx @@ -6,18 +6,18 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move from libcpp.vector cimport vector - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.io.datasource cimport Datasource -from cudf._lib.pylibcudf.libcudf.io.data_sink cimport data_sink -from cudf._lib.pylibcudf.libcudf.io.datasource cimport datasource -from cudf._lib.pylibcudf.libcudf.io.types cimport ( +from pylibcudf.io.datasource cimport Datasource +from pylibcudf.libcudf.io.data_sink cimport data_sink +from pylibcudf.libcudf.io.datasource cimport datasource +from pylibcudf.libcudf.io.types cimport ( column_name_info, host_buffer, sink_info, source_info, ) +from cudf._lib.column cimport Column + import codecs import errno import io diff --git a/python/cudf/cudf/_lib/json.pyx b/python/cudf/cudf/_lib/json.pyx index 03bf9ed8b75..bab9d83dcdc 100644 --- a/python/cudf/cudf/_lib/json.pyx +++ b/python/cudf/cudf/_lib/json.pyx @@ -7,20 +7,20 @@ from collections import abc import cudf from cudf.core.buffer import acquire_spill_lock +cimport pylibcudf.libcudf.io.types as cudf_io_types from libcpp cimport bool +from pylibcudf.io.types cimport compression_type +from pylibcudf.libcudf.io.json cimport json_recovery_mode_t +from pylibcudf.libcudf.io.types cimport compression_type +from pylibcudf.libcudf.types cimport data_type, type_id +from pylibcudf.types cimport DataType -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types from cudf._lib.column cimport Column from cudf._lib.io.utils cimport add_df_col_struct_names -from cudf._lib.pylibcudf.io.types cimport compression_type -from cudf._lib.pylibcudf.libcudf.io.json cimport json_recovery_mode_t -from cudf._lib.pylibcudf.libcudf.io.types cimport compression_type -from cudf._lib.pylibcudf.libcudf.types cimport data_type, type_id -from cudf._lib.pylibcudf.types cimport DataType from cudf._lib.types cimport dtype_to_data_type from cudf._lib.utils cimport _data_from_columns, data_from_pylibcudf_io -import cudf._lib.pylibcudf as plc +import pylibcudf as plc cdef json_recovery_mode_t _get_json_recovery_mode(object on_bad_lines): diff --git a/python/cudf/cudf/_lib/labeling.pyx b/python/cudf/cudf/_lib/labeling.pyx index 439a727a9ca..73d12fbb63f 100644 --- a/python/cudf/cudf/_lib/labeling.pyx +++ b/python/cudf/cudf/_lib/labeling.pyx @@ -5,14 +5,11 @@ from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool as cbool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.labeling cimport inclusive, label_bins as cpp_label_bins from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.labeling cimport ( - inclusive, - label_bins as cpp_label_bins, -) # Note that the parameter input shadows a Python built-in in the local scope, diff --git a/python/cudf/cudf/_lib/lists.pyx b/python/cudf/cudf/_lib/lists.pyx index f6d9c8c404c..540a9f437c8 100644 --- a/python/cudf/cudf/_lib/lists.pyx +++ b/python/cudf/cudf/_lib/lists.pyx @@ -3,14 +3,14 @@ from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool +from pylibcudf.libcudf.types cimport null_order, size_type from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.types cimport null_order, size_type from cudf._lib.utils cimport columns_from_pylibcudf_table from cudf._lib import pylibcudf -from cudf._lib.pylibcudf cimport Scalar +from pylibcudf cimport Scalar @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/null_mask.pyx b/python/cudf/cudf/_lib/null_mask.pyx index b00deae2270..a1f55518a46 100644 --- a/python/cudf/cudf/_lib/null_mask.pyx +++ b/python/cudf/cudf/_lib/null_mask.pyx @@ -9,10 +9,8 @@ from cudf.core.buffer import acquire_spill_lock, as_buffer from libcpp.memory cimport make_unique, unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.null_mask cimport ( +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.null_mask cimport ( bitmask_allocation_size_bytes as cpp_bitmask_allocation_size_bytes, bitmask_and as cpp_bitmask_and, bitmask_or as cpp_bitmask_or, @@ -20,8 +18,10 @@ from cudf._lib.pylibcudf.libcudf.null_mask cimport ( create_null_mask as cpp_create_null_mask, underlying_type_t_mask_state, ) -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport mask_state, size_type +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport mask_state, size_type + +from cudf._lib.column cimport Column from cudf._lib.utils cimport table_view_from_columns diff --git a/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx b/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx index d60162d0656..3c0b39ded42 100644 --- a/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx +++ b/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx @@ -5,16 +5,16 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.byte_pair_encode cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.byte_pair_encode cimport ( bpe_merge_pairs as cpp_bpe_merge_pairs, byte_pair_encoding as cpp_byte_pair_encoding, load_merge_pairs as cpp_load_merge_pairs, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.scalar.scalar cimport string_scalar + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/nvtext/edit_distance.pyx b/python/cudf/cudf/_lib/nvtext/edit_distance.pyx index 514b6610575..71e9844d594 100644 --- a/python/cudf/cudf/_lib/nvtext/edit_distance.pyx +++ b/python/cudf/cudf/_lib/nvtext/edit_distance.pyx @@ -4,15 +4,15 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.edit_distance cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.edit_distance cimport ( edit_distance as cpp_edit_distance, edit_distance_matrix as cpp_edit_distance_matrix, ) +from cudf._lib.column cimport Column + @acquire_spill_lock() def edit_distance(Column strings, Column targets): diff --git a/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx b/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx index a6b9a1e4f7a..47cd7f60c98 100644 --- a/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx +++ b/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx @@ -4,17 +4,17 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.generate_ngrams cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.generate_ngrams cimport ( generate_character_ngrams as cpp_generate_character_ngrams, generate_ngrams as cpp_generate_ngrams, hash_character_ngrams as cpp_hash_character_ngrams, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/nvtext/jaccard.pyx b/python/cudf/cudf/_lib/nvtext/jaccard.pyx index 42fe15d6869..1e0d1dd41f4 100644 --- a/python/cudf/cudf/_lib/nvtext/jaccard.pyx +++ b/python/cudf/cudf/_lib/nvtext/jaccard.pyx @@ -4,14 +4,14 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.jaccard cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.jaccard cimport ( jaccard_index as cpp_jaccard_index, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/nvtext/minhash.pyx b/python/cudf/cudf/_lib/nvtext/minhash.pyx index 4c92999e190..0c341a156ef 100644 --- a/python/cudf/cudf/_lib/nvtext/minhash.pyx +++ b/python/cudf/cudf/_lib/nvtext/minhash.pyx @@ -4,15 +4,15 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.minhash cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.minhash cimport ( minhash as cpp_minhash, minhash64 as cpp_minhash64, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx b/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx index ccd8de8c96f..3d14e96d771 100644 --- a/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx +++ b/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx @@ -4,15 +4,15 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.ngrams_tokenize cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.ngrams_tokenize cimport ( ngrams_tokenize as cpp_ngrams_tokenize, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/nvtext/normalize.pyx b/python/cudf/cudf/_lib/nvtext/normalize.pyx index 9f81f865bb7..6f60c802161 100644 --- a/python/cudf/cudf/_lib/nvtext/normalize.pyx +++ b/python/cudf/cudf/_lib/nvtext/normalize.pyx @@ -5,15 +5,15 @@ from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.normalize cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.normalize cimport ( normalize_characters as cpp_normalize_characters, normalize_spaces as cpp_normalize_spaces, ) +from cudf._lib.column cimport Column + @acquire_spill_lock() def normalize_spaces(Column strings): diff --git a/python/cudf/cudf/_lib/nvtext/replace.pyx b/python/cudf/cudf/_lib/nvtext/replace.pyx index ce2edc58d19..a098622fe99 100644 --- a/python/cudf/cudf/_lib/nvtext/replace.pyx +++ b/python/cudf/cudf/_lib/nvtext/replace.pyx @@ -4,16 +4,16 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.replace cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.replace cimport ( filter_tokens as cpp_filter_tokens, replace_tokens as cpp_replace_tokens, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/nvtext/stemmer.pyx b/python/cudf/cudf/_lib/nvtext/stemmer.pyx index 8f75953ae99..5bf25562fed 100644 --- a/python/cudf/cudf/_lib/nvtext/stemmer.pyx +++ b/python/cudf/cudf/_lib/nvtext/stemmer.pyx @@ -7,16 +7,17 @@ from libcpp.utility cimport move from enum import IntEnum -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.stemmer cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.stemmer cimport ( is_letter as cpp_is_letter, letter_type, porter_stemmer_measure as cpp_porter_stemmer_measure, underlying_type_t_letter_type, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column class LetterType(IntEnum): diff --git a/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx b/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx index 1112667a087..cb596d208a1 100644 --- a/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx +++ b/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx @@ -8,10 +8,8 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.subword_tokenize cimport ( +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.subword_tokenize cimport ( hashed_vocabulary as cpp_hashed_vocabulary, load_vocabulary_file as cpp_load_vocabulary_file, move as tr_move, @@ -19,6 +17,8 @@ from cudf._lib.pylibcudf.libcudf.nvtext.subword_tokenize cimport ( tokenizer_result as cpp_tokenizer_result, ) +from cudf._lib.column cimport Column + cdef class Hashed_Vocabulary: cdef unique_ptr[cpp_hashed_vocabulary] c_obj diff --git a/python/cudf/cudf/_lib/nvtext/tokenize.pyx b/python/cudf/cudf/_lib/nvtext/tokenize.pyx index 98afd94ab1c..f74aa53ba21 100644 --- a/python/cudf/cudf/_lib/nvtext/tokenize.pyx +++ b/python/cudf/cudf/_lib/nvtext/tokenize.pyx @@ -4,11 +4,9 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.nvtext.tokenize cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.nvtext.tokenize cimport ( character_tokenize as cpp_character_tokenize, count_tokens as cpp_count_tokens, detokenize as cpp_detokenize, @@ -17,8 +15,10 @@ from cudf._lib.pylibcudf.libcudf.nvtext.tokenize cimport ( tokenize_vocabulary as cpp_tokenize_vocabulary, tokenize_with_vocabulary as cpp_tokenize_with_vocabulary, ) -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/orc.pyx b/python/cudf/cudf/_lib/orc.pyx index 9609e3131b4..67c8138a8aa 100644 --- a/python/cudf/cudf/_lib/orc.pyx +++ b/python/cudf/cudf/_lib/orc.pyx @@ -14,23 +14,17 @@ from libcpp.vector cimport vector import datetime from collections import OrderedDict -cimport cudf._lib.pylibcudf.libcudf.lists.lists_column_view as cpp_lists_column_view +cimport pylibcudf.libcudf.lists.lists_column_view as cpp_lists_column_view try: import ujson as json except ImportError: import json -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -from cudf._lib.column cimport Column -from cudf._lib.io.utils cimport ( - make_sink_info, - make_source_info, - update_column_struct_field_names, -) -from cudf._lib.pylibcudf.io.datasource cimport NativeFileDatasource -from cudf._lib.pylibcudf.libcudf.io.data_sink cimport data_sink -from cudf._lib.pylibcudf.libcudf.io.orc cimport ( +cimport pylibcudf.libcudf.io.types as cudf_io_types +from pylibcudf.io.datasource cimport NativeFileDatasource +from pylibcudf.libcudf.io.data_sink cimport data_sink +from pylibcudf.libcudf.io.orc cimport ( chunked_orc_writer_options, orc_chunked_writer, orc_reader_options, @@ -38,7 +32,7 @@ from cudf._lib.pylibcudf.libcudf.io.orc cimport ( read_orc as libcudf_read_orc, write_orc as libcudf_write_orc, ) -from cudf._lib.pylibcudf.libcudf.io.orc_metadata cimport ( +from pylibcudf.libcudf.io.orc_metadata cimport ( binary_statistics, bucket_statistics, column_statistics, @@ -53,7 +47,7 @@ from cudf._lib.pylibcudf.libcudf.io.orc_metadata cimport ( string_statistics, timestamp_statistics, ) -from cudf._lib.pylibcudf.libcudf.io.types cimport ( +from pylibcudf.libcudf.io.types cimport ( column_in_metadata, compression_type, sink_info, @@ -61,8 +55,15 @@ from cudf._lib.pylibcudf.libcudf.io.types cimport ( table_input_metadata, table_with_metadata, ) -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport data_type, size_type, type_id +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport data_type, size_type, type_id + +from cudf._lib.column cimport Column +from cudf._lib.io.utils cimport ( + make_sink_info, + make_source_info, + update_column_struct_field_names, +) from cudf._lib.variant cimport get_if as std_get_if, holds_alternative from cudf._lib.types import SUPPORTED_NUMPY_TO_LIBCUDF_TYPES diff --git a/python/cudf/cudf/_lib/parquet.pyx b/python/cudf/cudf/_lib/parquet.pyx index a2eed94bb3c..a794399b90e 100644 --- a/python/cudf/cudf/_lib/parquet.pyx +++ b/python/cudf/cudf/_lib/parquet.pyx @@ -22,6 +22,8 @@ from cudf._lib.utils cimport _data_from_columns, data_from_pylibcudf_io from cudf._lib.utils import _index_level_name, generate_pandas_metadata +cimport pylibcudf.libcudf.io.data_sink as cudf_io_data_sink +cimport pylibcudf.libcudf.io.types as cudf_io_types from libc.stdint cimport uint8_t from libcpp cimport bool from libcpp.map cimport map @@ -30,41 +32,40 @@ from libcpp.string cimport string from libcpp.unordered_map cimport unordered_map from libcpp.utility cimport move from libcpp.vector cimport vector - -cimport cudf._lib.pylibcudf.libcudf.io.data_sink as cudf_io_data_sink -cimport cudf._lib.pylibcudf.libcudf.io.types as cudf_io_types -from cudf._lib.column cimport Column -from cudf._lib.io.utils cimport ( - add_df_col_struct_names, - make_sinks_info, - make_source_info, -) -from cudf._lib.pylibcudf.expressions cimport Expression -from cudf._lib.pylibcudf.io.datasource cimport NativeFileDatasource -from cudf._lib.pylibcudf.io.parquet cimport ChunkedParquetReader -from cudf._lib.pylibcudf.libcudf.io.parquet cimport ( +from pylibcudf.expressions cimport Expression +from pylibcudf.io.datasource cimport NativeFileDatasource +from pylibcudf.io.parquet cimport ChunkedParquetReader +from pylibcudf.libcudf.io.parquet cimport ( chunked_parquet_writer_options, merge_row_group_metadata as parquet_merge_metadata, parquet_chunked_writer as cpp_parquet_chunked_writer, parquet_writer_options, write_parquet as parquet_writer, ) -from cudf._lib.pylibcudf.libcudf.io.parquet_metadata cimport ( +from pylibcudf.libcudf.io.parquet_metadata cimport ( parquet_metadata, read_parquet_metadata as parquet_metadata_reader, ) -from cudf._lib.pylibcudf.libcudf.io.types cimport ( +from pylibcudf.libcudf.io.types cimport ( column_in_metadata, table_input_metadata, ) -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column +from cudf._lib.io.utils cimport ( + add_df_col_struct_names, + make_sinks_info, + make_source_info, +) from cudf._lib.utils cimport table_view_from_table +import pylibcudf as plc from pyarrow.lib import NativeFile -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf cimport Table +from pylibcudf cimport Table + from cudf.utils.ioutils import _ROW_GROUP_SIZE_BYTES_DEFAULT diff --git a/python/cudf/cudf/_lib/partitioning.pyx b/python/cudf/cudf/_lib/partitioning.pyx index 708ec4174aa..b3426b14cfc 100644 --- a/python/cudf/cudf/_lib/partitioning.pyx +++ b/python/cudf/cudf/_lib/partitioning.pyx @@ -6,20 +6,18 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move from libcpp.vector cimport vector +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.partitioning cimport partition as cpp_partition +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.partitioning cimport ( - partition as cpp_partition, -) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view from cudf._lib.utils cimport columns_from_unique_ptr, table_view_from_columns from cudf._lib.reduce import minmax from cudf._lib.stream_compaction import distinct_count as cpp_distinct_count -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types +cimport pylibcudf.libcudf.types as libcudf_types @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/quantiles.pyx b/python/cudf/cudf/_lib/quantiles.pyx index 7b50c00919a..7666b7ff8da 100644 --- a/python/cudf/cudf/_lib/quantiles.pyx +++ b/python/cudf/cudf/_lib/quantiles.pyx @@ -13,10 +13,11 @@ from cudf._lib.types cimport ( from cudf._lib.types import Interpolation -from cudf._lib.pylibcudf.libcudf.types cimport interpolation, sorted +from pylibcudf.libcudf.types cimport interpolation, sorted + from cudf._lib.utils cimport columns_from_pylibcudf_table -import cudf._lib.pylibcudf as plc +import pylibcudf as plc @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/reshape.pyx b/python/cudf/cudf/_lib/reshape.pyx index 6bba8f0df35..6cebeb2bc16 100644 --- a/python/cudf/cudf/_lib/reshape.pyx +++ b/python/cudf/cudf/_lib/reshape.pyx @@ -2,11 +2,12 @@ from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.types cimport size_type + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.types cimport size_type from cudf._lib.utils cimport columns_from_pylibcudf_table -import cudf._lib.pylibcudf as plc +import pylibcudf as plc @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/round.pyx b/python/cudf/cudf/_lib/round.pyx index f8ad57947c8..f961c09e6f6 100644 --- a/python/cudf/cudf/_lib/round.pyx +++ b/python/cudf/cudf/_lib/round.pyx @@ -4,8 +4,8 @@ from cudf.core.buffer import acquire_spill_lock from cudf._lib.column cimport Column -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf.round import RoundingMethod +import pylibcudf as plc +from pylibcudf.round import RoundingMethod @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/scalar.pxd b/python/cudf/cudf/_lib/scalar.pxd index b57acbb37f1..9008b6234cb 100644 --- a/python/cudf/cudf/_lib/scalar.pxd +++ b/python/cudf/cudf/_lib/scalar.pxd @@ -2,11 +2,10 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr +from pylibcudf.libcudf.scalar.scalar cimport scalar from rmm._lib.memory_resource cimport DeviceMemoryResource -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport scalar - cdef class DeviceScalar: cdef public object c_value diff --git a/python/cudf/cudf/_lib/scalar.pyx b/python/cudf/cudf/_lib/scalar.pyx index e68398498d1..2cda60ace08 100644 --- a/python/cudf/cudf/_lib/scalar.pyx +++ b/python/cudf/cudf/_lib/scalar.pyx @@ -17,32 +17,33 @@ from cudf._lib.types import LIBCUDF_TO_SUPPORTED_NUMPY_TYPES from cudf.core.dtypes import ListDtype, StructDtype from cudf.core.missing import NA, NaT -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types +cimport pylibcudf.libcudf.types as libcudf_types # We currently need this cimport because some of the implementations here # access the c_obj of the scalar, and because we need to be able to call # pylibcudf.Scalar.from_libcudf. Both of those are temporarily acceptable until # DeviceScalar is phased out entirely from cuDF Cython (at which point # cudf.Scalar will be directly backed by pylibcudf.Scalar). -from cudf._lib.pylibcudf cimport Scalar as plc_Scalar -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport ( +from pylibcudf cimport Scalar as plc_Scalar +from pylibcudf.libcudf.scalar.scalar cimport ( duration_scalar, list_scalar, scalar, struct_scalar, timestamp_scalar, ) -from cudf._lib.pylibcudf.libcudf.wrappers.durations cimport ( +from pylibcudf.libcudf.wrappers.durations cimport ( duration_ms, duration_ns, duration_s, duration_us, ) -from cudf._lib.pylibcudf.libcudf.wrappers.timestamps cimport ( +from pylibcudf.libcudf.wrappers.timestamps cimport ( timestamp_ms, timestamp_ns, timestamp_s, timestamp_us, ) + from cudf._lib.types cimport dtype_from_column_view, underlying_type_t_type_id diff --git a/python/cudf/cudf/_lib/sort.pyx b/python/cudf/cudf/_lib/sort.pyx index ff9565b9a89..900dd79e530 100644 --- a/python/cudf/cudf/_lib/sort.pyx +++ b/python/cudf/cudf/_lib/sort.pyx @@ -8,13 +8,13 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector +from pylibcudf.libcudf.aggregation cimport rank_method +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.search cimport lower_bound, upper_bound +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport null_order, order as cpp_order from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.aggregation cimport rank_method -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.search cimport lower_bound, upper_bound -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport null_order, order as cpp_order from cudf._lib.utils cimport ( columns_from_pylibcudf_table, table_view_from_columns, diff --git a/python/cudf/cudf/_lib/string_casting.pyx b/python/cudf/cudf/_lib/string_casting.pyx index dfad7fd101c..bcace9de506 100644 --- a/python/cudf/cudf/_lib/string_casting.pyx +++ b/python/cudf/cudf/_lib/string_casting.pyx @@ -11,40 +11,40 @@ from cudf._lib.types import SUPPORTED_NUMPY_TO_LIBCUDF_TYPES from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_booleans cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.convert.convert_booleans cimport ( from_booleans as cpp_from_booleans, to_booleans as cpp_to_booleans, ) -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_datetime cimport ( +from pylibcudf.libcudf.strings.convert.convert_datetime cimport ( from_timestamps as cpp_from_timestamps, is_timestamp as cpp_is_timestamp, to_timestamps as cpp_to_timestamps, ) -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_durations cimport ( +from pylibcudf.libcudf.strings.convert.convert_durations cimport ( from_durations as cpp_from_durations, to_durations as cpp_to_durations, ) -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_floats cimport ( +from pylibcudf.libcudf.strings.convert.convert_floats cimport ( from_floats as cpp_from_floats, to_floats as cpp_to_floats, ) -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_integers cimport ( +from pylibcudf.libcudf.strings.convert.convert_integers cimport ( from_integers as cpp_from_integers, hex_to_integers as cpp_hex_to_integers, integers_to_hex as cpp_integers_to_hex, is_hex as cpp_is_hex, to_integers as cpp_to_integers, ) -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_ipv4 cimport ( +from pylibcudf.libcudf.strings.convert.convert_ipv4 cimport ( integers_to_ipv4 as cpp_integers_to_ipv4, ipv4_to_integers as cpp_ipv4_to_integers, is_ipv4 as cpp_is_ipv4, ) -from cudf._lib.pylibcudf.libcudf.types cimport data_type, type_id +from pylibcudf.libcudf.types cimport data_type, type_id + from cudf._lib.types cimport underlying_type_t_type_id import cudf diff --git a/python/cudf/cudf/_lib/strings/attributes.pyx b/python/cudf/cudf/_lib/strings/attributes.pyx index 1f3d7c4eb1b..e303efeec50 100644 --- a/python/cudf/cudf/_lib/strings/attributes.pyx +++ b/python/cudf/cudf/_lib/strings/attributes.pyx @@ -4,16 +4,16 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.attributes cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.attributes cimport ( code_points as cpp_code_points, count_bytes as cpp_count_bytes, count_characters as cpp_count_characters, ) +from cudf._lib.column cimport Column + @acquire_spill_lock() def count_characters(Column source_strings): diff --git a/python/cudf/cudf/_lib/strings/capitalize.pyx b/python/cudf/cudf/_lib/strings/capitalize.pyx index b3ca6a5ac8f..42c40e2e753 100644 --- a/python/cudf/cudf/_lib/strings/capitalize.pyx +++ b/python/cudf/cudf/_lib/strings/capitalize.pyx @@ -4,7 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from cudf._lib.column cimport Column -import cudf._lib.pylibcudf as plc +import pylibcudf as plc @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/case.pyx b/python/cudf/cudf/_lib/strings/case.pyx index 38f242a67d6..ad4cbb6f088 100644 --- a/python/cudf/cudf/_lib/strings/case.pyx +++ b/python/cudf/cudf/_lib/strings/case.pyx @@ -4,7 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.strings import case +from pylibcudf.strings import case @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/char_types.pyx b/python/cudf/cudf/_lib/strings/char_types.pyx index 5b7b6d19d9e..376a6f8af97 100644 --- a/python/cudf/cudf/_lib/strings/char_types.pyx +++ b/python/cudf/cudf/_lib/strings/char_types.pyx @@ -7,15 +7,16 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.char_types cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.char_types cimport ( all_characters_of_type as cpp_all_characters_of_type, filter_characters_of_type as cpp_filter_characters_of_type, string_character_types, ) + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/strings/combine.pyx b/python/cudf/cudf/_lib/strings/combine.pyx index 288f333d4d8..9d072f3c6e2 100644 --- a/python/cudf/cudf/_lib/strings/combine.pyx +++ b/python/cudf/cudf/_lib/strings/combine.pyx @@ -4,19 +4,19 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.combine cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.combine cimport ( concatenate as cpp_concatenate, join_list_elements as cpp_join_list_elements, join_strings as cpp_join_strings, output_if_empty_list, separator_on_nulls, ) -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.table.table_view cimport table_view + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar from cudf._lib.utils cimport table_view_from_columns diff --git a/python/cudf/cudf/_lib/strings/contains.pyx b/python/cudf/cudf/_lib/strings/contains.pyx index 502a1d14696..04a982ec7e2 100644 --- a/python/cudf/cudf/_lib/strings/contains.pyx +++ b/python/cudf/cudf/_lib/strings/contains.pyx @@ -8,22 +8,22 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.contains cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.contains cimport ( count_re as cpp_count_re, like as cpp_like, matches_re as cpp_matches_re, ) -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags +from pylibcudf.libcudf.strings.regex_program cimport regex_program + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar -from cudf._lib.pylibcudf.strings import contains -from cudf._lib.pylibcudf.strings.regex_program import RegexProgram +from pylibcudf.strings import contains +from pylibcudf.strings.regex_program import RegexProgram @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/convert/convert_fixed_point.pyx b/python/cudf/cudf/_lib/strings/convert/convert_fixed_point.pyx index 6faff606226..a8df8c9a92c 100644 --- a/python/cudf/cudf/_lib/strings/convert/convert_fixed_point.pyx +++ b/python/cudf/cudf/_lib/strings/convert/convert_fixed_point.pyx @@ -7,15 +7,16 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_fixed_point cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.convert.convert_fixed_point cimport ( from_fixed_point as cpp_from_fixed_point, is_fixed_point as cpp_is_fixed_point, to_fixed_point as cpp_to_fixed_point, ) -from cudf._lib.pylibcudf.libcudf.types cimport data_type, type_id +from pylibcudf.libcudf.types cimport data_type, type_id + +from cudf._lib.column cimport Column @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/convert/convert_floats.pyx b/python/cudf/cudf/_lib/strings/convert/convert_floats.pyx index 341cbc99dab..7965b588703 100644 --- a/python/cudf/cudf/_lib/strings/convert/convert_floats.pyx +++ b/python/cudf/cudf/_lib/strings/convert/convert_floats.pyx @@ -5,13 +5,14 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_floats cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.convert.convert_floats cimport ( is_float as cpp_is_float, ) +from cudf._lib.column cimport Column + @acquire_spill_lock() def is_float(Column source_strings): diff --git a/python/cudf/cudf/_lib/strings/convert/convert_integers.pyx b/python/cudf/cudf/_lib/strings/convert/convert_integers.pyx index 081b03cdc0d..8b6da2bfa1c 100644 --- a/python/cudf/cudf/_lib/strings/convert/convert_integers.pyx +++ b/python/cudf/cudf/_lib/strings/convert/convert_integers.pyx @@ -5,13 +5,14 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_integers cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.convert.convert_integers cimport ( is_integer as cpp_is_integer, ) +from cudf._lib.column cimport Column + @acquire_spill_lock() def is_integer(Column source_strings): diff --git a/python/cudf/cudf/_lib/strings/convert/convert_lists.pyx b/python/cudf/cudf/_lib/strings/convert/convert_lists.pyx index 4418bf2a72d..73aebf8ab35 100644 --- a/python/cudf/cudf/_lib/strings/convert/convert_lists.pyx +++ b/python/cudf/cudf/_lib/strings/convert/convert_lists.pyx @@ -5,14 +5,15 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_lists cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.convert.convert_lists cimport ( format_list_column as cpp_format_list_column, ) +from cudf._lib.column cimport Column + from cudf._lib.scalar import as_device_scalar from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/strings/convert/convert_urls.pyx b/python/cudf/cudf/_lib/strings/convert/convert_urls.pyx index 5f62efe5c00..e52116d6247 100644 --- a/python/cudf/cudf/_lib/strings/convert/convert_urls.pyx +++ b/python/cudf/cudf/_lib/strings/convert/convert_urls.pyx @@ -5,14 +5,15 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.convert.convert_urls cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.convert.convert_urls cimport ( url_decode as cpp_url_decode, url_encode as cpp_url_encode, ) +from cudf._lib.column cimport Column + @acquire_spill_lock() def url_decode(Column source_strings): diff --git a/python/cudf/cudf/_lib/strings/extract.pyx b/python/cudf/cudf/_lib/strings/extract.pyx index 3b80c4f6368..63f4d57e562 100644 --- a/python/cudf/cudf/_lib/strings/extract.pyx +++ b/python/cudf/cudf/_lib/strings/extract.pyx @@ -8,12 +8,13 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.extract cimport extract as cpp_extract +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags +from pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.table.table cimport table + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.extract cimport extract as cpp_extract -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program -from cudf._lib.pylibcudf.libcudf.table.table cimport table from cudf._lib.utils cimport data_from_unique_ptr diff --git a/python/cudf/cudf/_lib/strings/find.pyx b/python/cudf/cudf/_lib/strings/find.pyx index 3c0009ee569..2d284d1aa9d 100644 --- a/python/cudf/cudf/_lib/strings/find.pyx +++ b/python/cudf/cudf/_lib/strings/find.pyx @@ -1,10 +1,12 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. -import cudf._lib.pylibcudf as plc +import pylibcudf as plc + from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.types cimport size_type + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.types cimport size_type @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/find_multiple.pyx b/python/cudf/cudf/_lib/strings/find_multiple.pyx index c75f28db21b..1358f8e3c2c 100644 --- a/python/cudf/cudf/_lib/strings/find_multiple.pyx +++ b/python/cudf/cudf/_lib/strings/find_multiple.pyx @@ -5,13 +5,14 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.find_multiple cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.find_multiple cimport ( find_multiple as cpp_find_multiple, ) +from cudf._lib.column cimport Column + @acquire_spill_lock() def find_multiple(Column source_strings, Column target_strings): diff --git a/python/cudf/cudf/_lib/strings/findall.pyx b/python/cudf/cudf/_lib/strings/findall.pyx index 0d409889bc8..3cf2084e30a 100644 --- a/python/cudf/cudf/_lib/strings/findall.pyx +++ b/python/cudf/cudf/_lib/strings/findall.pyx @@ -8,12 +8,13 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.findall cimport findall as cpp_findall +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags +from pylibcudf.libcudf.strings.regex_program cimport regex_program + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.findall cimport findall as cpp_findall -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/json.pyx b/python/cudf/cudf/_lib/strings/json.pyx index 560f284b56c..c9b0bba088d 100644 --- a/python/cudf/cudf/_lib/strings/json.pyx +++ b/python/cudf/cudf/_lib/strings/json.pyx @@ -5,14 +5,15 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.json cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.json cimport ( get_json_object as cpp_get_json_object, get_json_object_options, ) + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/strings/padding.pyx b/python/cudf/cudf/_lib/strings/padding.pyx index 9226810951f..d0239e91ec3 100644 --- a/python/cudf/cudf/_lib/strings/padding.pyx +++ b/python/cudf/cudf/_lib/strings/padding.pyx @@ -6,18 +6,19 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.types cimport size_type + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type from enum import IntEnum -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.strings.padding cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.strings.padding cimport ( pad as cpp_pad, zfill as cpp_zfill, ) -from cudf._lib.pylibcudf.libcudf.strings.side_type cimport ( +from pylibcudf.libcudf.strings.side_type cimport ( side_type, underlying_type_t_side_type, ) diff --git a/python/cudf/cudf/_lib/strings/repeat.pyx b/python/cudf/cudf/_lib/strings/repeat.pyx index 2b8116848cf..42fcfa5d94e 100644 --- a/python/cudf/cudf/_lib/strings/repeat.pyx +++ b/python/cudf/cudf/_lib/strings/repeat.pyx @@ -5,11 +5,12 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings cimport repeat as cpp_repeat +from pylibcudf.libcudf.types cimport size_type + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings cimport repeat as cpp_repeat -from cudf._lib.pylibcudf.libcudf.types cimport size_type @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/replace.pyx b/python/cudf/cudf/_lib/strings/replace.pyx index 374831f1833..a260c4e4f45 100644 --- a/python/cudf/cudf/_lib/strings/replace.pyx +++ b/python/cudf/cudf/_lib/strings/replace.pyx @@ -4,11 +4,12 @@ from libc.stdint cimport int32_t from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.types cimport size_type + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.types cimport size_type from cudf._lib.scalar cimport DeviceScalar -import cudf._lib.pylibcudf as plc +import pylibcudf as plc @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/replace_re.pyx b/python/cudf/cudf/_lib/strings/replace_re.pyx index e13880a6186..fffc8b7c3f6 100644 --- a/python/cudf/cudf/_lib/strings/replace_re.pyx +++ b/python/cudf/cudf/_lib/strings/replace_re.pyx @@ -8,17 +8,18 @@ from libcpp.vector cimport vector from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program -from cudf._lib.pylibcudf.libcudf.strings.replace_re cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags +from pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.strings.replace_re cimport ( replace_re as cpp_replace_re, replace_with_backrefs as cpp_replace_with_backrefs, ) -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/strings/split/partition.pyx b/python/cudf/cudf/_lib/strings/split/partition.pyx index be377c0f86b..a81fb18e752 100644 --- a/python/cudf/cudf/_lib/strings/split/partition.pyx +++ b/python/cudf/cudf/_lib/strings/split/partition.pyx @@ -5,14 +5,15 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.split.partition cimport ( +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.split.partition cimport ( partition as cpp_partition, rpartition as cpp_rpartition, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table cimport table + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar from cudf._lib.utils cimport data_from_unique_ptr diff --git a/python/cudf/cudf/_lib/strings/split/split.pyx b/python/cudf/cudf/_lib/strings/split/split.pyx index 942235686d7..f481fea4c51 100644 --- a/python/cudf/cudf/_lib/strings/split/split.pyx +++ b/python/cudf/cudf/_lib/strings/split/split.pyx @@ -7,13 +7,12 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.regex_flags cimport regex_flags -from cudf._lib.pylibcudf.libcudf.strings.regex_program cimport regex_program -from cudf._lib.pylibcudf.libcudf.strings.split.split cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.regex_flags cimport regex_flags +from pylibcudf.libcudf.strings.regex_program cimport regex_program +from pylibcudf.libcudf.strings.split.split cimport ( rsplit as cpp_rsplit, rsplit_re as cpp_rsplit_re, rsplit_record as cpp_rsplit_record, @@ -23,8 +22,10 @@ from cudf._lib.pylibcudf.libcudf.strings.split.split cimport ( split_record as cpp_split_record, split_record_re as cpp_split_record_re, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.types cimport size_type +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.types cimport size_type + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar from cudf._lib.utils cimport data_from_unique_ptr diff --git a/python/cudf/cudf/_lib/strings/strip.pyx b/python/cudf/cudf/_lib/strings/strip.pyx index 199fa5fc3b6..acf52cb7b9f 100644 --- a/python/cudf/cudf/_lib/strings/strip.pyx +++ b/python/cudf/cudf/_lib/strings/strip.pyx @@ -5,12 +5,13 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.side_type cimport side_type +from pylibcudf.libcudf.strings.strip cimport strip as cpp_strip + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.side_type cimport side_type -from cudf._lib.pylibcudf.libcudf.strings.strip cimport strip as cpp_strip from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/strings/substring.pyx b/python/cudf/cudf/_lib/strings/substring.pyx index 706c21c0634..db96d99c7b6 100644 --- a/python/cudf/cudf/_lib/strings/substring.pyx +++ b/python/cudf/cudf/_lib/strings/substring.pyx @@ -10,7 +10,7 @@ from cudf._lib.scalar import as_device_scalar from cudf._lib.scalar cimport DeviceScalar -import cudf._lib.pylibcudf as plc +import pylibcudf as plc @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings/translate.pyx b/python/cudf/cudf/_lib/strings/translate.pyx index 8846e2e280d..3fad91bbfc0 100644 --- a/python/cudf/cudf/_lib/strings/translate.pyx +++ b/python/cudf/cudf/_lib/strings/translate.pyx @@ -8,16 +8,17 @@ from libcpp.vector cimport vector from cudf.core.buffer import acquire_spill_lock -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.scalar.scalar cimport string_scalar -from cudf._lib.pylibcudf.libcudf.strings.translate cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.scalar.scalar cimport string_scalar +from pylibcudf.libcudf.strings.translate cimport ( filter_characters as cpp_filter_characters, filter_type, translate as cpp_translate, ) -from cudf._lib.pylibcudf.libcudf.types cimport char_utf8 +from pylibcudf.libcudf.types cimport char_utf8 + +from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar diff --git a/python/cudf/cudf/_lib/strings/wrap.pyx b/python/cudf/cudf/_lib/strings/wrap.pyx index 92750f21e4d..eed5cf33b10 100644 --- a/python/cudf/cudf/_lib/strings/wrap.pyx +++ b/python/cudf/cudf/_lib/strings/wrap.pyx @@ -5,11 +5,12 @@ from libcpp.utility cimport move from cudf.core.buffer import acquire_spill_lock +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.strings.wrap cimport wrap as cpp_wrap +from pylibcudf.libcudf.types cimport size_type + from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.strings.wrap cimport wrap as cpp_wrap -from cudf._lib.pylibcudf.libcudf.types cimport size_type @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/strings_udf.pyx b/python/cudf/cudf/_lib/strings_udf.pyx index 7610cad0b40..0730d814ea9 100644 --- a/python/cudf/cudf/_lib/strings_udf.pyx +++ b/python/cudf/cudf/_lib/strings_udf.pyx @@ -1,8 +1,7 @@ # Copyright (c) 2022-2024, NVIDIA CORPORATION. from libc.stdint cimport uint8_t, uint16_t, uintptr_t - -from cudf._lib.pylibcudf.libcudf.strings_udf cimport ( +from pylibcudf.libcudf.strings_udf cimport ( get_character_cases_table as cpp_get_character_cases_table, get_character_flags_table as cpp_get_character_flags_table, get_special_case_mapping_table as cpp_get_special_case_mapping_table, @@ -15,11 +14,8 @@ from libcpp.utility cimport move from cudf.core.buffer import as_buffer -from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column, column_view -from cudf._lib.pylibcudf.libcudf.strings_udf cimport ( +from pylibcudf.libcudf.column.column cimport column, column_view +from pylibcudf.libcudf.strings_udf cimport ( column_from_udf_string_array as cpp_column_from_udf_string_array, free_udf_string_array as cpp_free_udf_string_array, get_cuda_build_version as cpp_get_cuda_build_version, @@ -27,6 +23,10 @@ from cudf._lib.pylibcudf.libcudf.strings_udf cimport ( udf_string, ) +from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer + +from cudf._lib.column cimport Column + def get_cuda_build_version(): return cpp_get_cuda_build_version() diff --git a/python/cudf/cudf/_lib/text.pyx b/python/cudf/cudf/_lib/text.pyx index 6e63b8758b8..19dc4349ac5 100644 --- a/python/cudf/cudf/_lib/text.pyx +++ b/python/cudf/cudf/_lib/text.pyx @@ -7,10 +7,8 @@ from libc.stdint cimport uint64_t from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move - -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.io.text cimport ( +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.io.text cimport ( byte_range_info, data_chunk_source, make_source, @@ -20,6 +18,8 @@ from cudf._lib.pylibcudf.libcudf.io.text cimport ( parse_options, ) +from cudf._lib.column cimport Column + def read_text(object filepaths_or_buffers, object delimiter=None, diff --git a/python/cudf/cudf/_lib/timezone.pyx b/python/cudf/cudf/_lib/timezone.pyx index 53977e984c2..facf2168e6f 100644 --- a/python/cudf/cudf/_lib/timezone.pyx +++ b/python/cudf/cudf/_lib/timezone.pyx @@ -4,11 +4,11 @@ from libcpp.memory cimport unique_ptr from libcpp.optional cimport make_optional from libcpp.string cimport string from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.io.timezone cimport ( +from pylibcudf.libcudf.io.timezone cimport ( make_timezone_transition_table as cpp_make_timezone_transition_table, ) -from cudf._lib.pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table cimport table + from cudf._lib.utils cimport columns_from_unique_ptr diff --git a/python/cudf/cudf/_lib/transform.pyx b/python/cudf/cudf/_lib/transform.pyx index 622725e06a3..7b711279f5d 100644 --- a/python/cudf/cudf/_lib/transform.pyx +++ b/python/cudf/cudf/_lib/transform.pyx @@ -8,30 +8,30 @@ from cudf.core._internals.expressions import parse_expression from cudf.core.buffer import acquire_spill_lock, as_buffer from cudf.utils import cudautils +cimport pylibcudf.libcudf.transform as libcudf_transform from cython.operator cimport dereference from libc.stdint cimport uintptr_t from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.string cimport string from libcpp.utility cimport move - -from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer - -cimport cudf._lib.pylibcudf.libcudf.transform as libcudf_transform -from cudf._lib.column cimport Column -from cudf._lib.pylibcudf cimport transform as plc_transform -from cudf._lib.pylibcudf.expressions cimport Expression -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.expressions cimport expression -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport ( +from pylibcudf cimport transform as plc_transform +from pylibcudf.expressions cimport Expression +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.expressions cimport expression +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport ( bitmask_type, data_type, size_type, type_id, ) + +from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer + +from cudf._lib.column cimport Column from cudf._lib.types cimport underlying_type_t_type_id from cudf._lib.utils cimport ( columns_from_unique_ptr, diff --git a/python/cudf/cudf/_lib/transpose.pyx b/python/cudf/cudf/_lib/transpose.pyx index 82b23439e6a..742058173d7 100644 --- a/python/cudf/cudf/_lib/transpose.pyx +++ b/python/cudf/cudf/_lib/transpose.pyx @@ -3,11 +3,11 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move +from pylibcudf.libcudf.column.column cimport column +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.transpose cimport transpose as cpp_transpose from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.transpose cimport transpose as cpp_transpose from cudf._lib.utils cimport columns_from_table_view, table_view_from_columns diff --git a/python/cudf/cudf/_lib/types.pxd b/python/cudf/cudf/_lib/types.pxd index 519d5ff8554..ec4d2c3629a 100644 --- a/python/cudf/cudf/_lib/types.pxd +++ b/python/cudf/cudf/_lib/types.pxd @@ -1,13 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.types as libcudf_types from libc.stdint cimport int32_t from libcpp cimport bool - -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view ctypedef bool underlying_type_t_order ctypedef bool underlying_type_t_null_order diff --git a/python/cudf/cudf/_lib/types.pyx b/python/cudf/cudf/_lib/types.pyx index 253fdf7b0d9..e2ca27d1ba9 100644 --- a/python/cudf/cudf/_lib/types.pyx +++ b/python/cudf/cudf/_lib/types.pyx @@ -5,13 +5,11 @@ from enum import IntEnum import numpy as np import pandas as pd +cimport pylibcudf.libcudf.types as libcudf_types from libcpp.memory cimport make_shared, shared_ptr +from pylibcudf.libcudf.column.column_view cimport column_view +from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view -cimport cudf._lib.pylibcudf.libcudf.types as libcudf_types -from cudf._lib.pylibcudf.libcudf.column.column_view cimport column_view -from cudf._lib.pylibcudf.libcudf.lists.lists_column_view cimport ( - lists_column_view, -) from cudf._lib.types cimport ( underlying_type_t_interpolation, underlying_type_t_order, diff --git a/python/cudf/cudf/_lib/utils.pxd b/python/cudf/cudf/_lib/utils.pxd index 1d55f7218dc..182ce65d77d 100644 --- a/python/cudf/cudf/_lib/utils.pxd +++ b/python/cudf/cudf/_lib/utils.pxd @@ -3,9 +3,8 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.libcudf.column.column cimport column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table, table_view +from pylibcudf.libcudf.column.column cimport column_view +from pylibcudf.libcudf.table.table cimport table, table_view cdef data_from_unique_ptr( diff --git a/python/cudf/cudf/_lib/utils.pyx b/python/cudf/cudf/_lib/utils.pyx index f136cd997a7..27d21438f85 100644 --- a/python/cudf/cudf/_lib/utils.pyx +++ b/python/cudf/cudf/_lib/utils.pyx @@ -9,12 +9,12 @@ from cython.operator cimport dereference from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector +from pylibcudf.libcudf.column.column cimport column, column_view +from pylibcudf.libcudf.table.table cimport table +from pylibcudf.libcudf.table.table_view cimport table_view +from pylibcudf.libcudf.types cimport size_type from cudf._lib.column cimport Column -from cudf._lib.pylibcudf.libcudf.column.column cimport column, column_view -from cudf._lib.pylibcudf.libcudf.table.table cimport table -from cudf._lib.pylibcudf.libcudf.table.table_view cimport table_view -from cudf._lib.pylibcudf.libcudf.types cimport size_type try: import ujson as json diff --git a/python/cudf/cudf/core/_internals/expressions.py b/python/cudf/cudf/core/_internals/expressions.py index 63714a78572..a1d443afac9 100644 --- a/python/cudf/cudf/core/_internals/expressions.py +++ b/python/cudf/cudf/core/_internals/expressions.py @@ -5,9 +5,8 @@ import functools import pyarrow as pa - -import cudf._lib.pylibcudf as plc -from cudf._lib.pylibcudf.expressions import ( +import pylibcudf as plc +from pylibcudf.expressions import ( ASTOperator, ColumnReference, Expression, diff --git a/python/cudf/cudf/core/buffer/buffer.py b/python/cudf/cudf/core/buffer/buffer.py index 80dbbe4c048..25bae3ff722 100644 --- a/python/cudf/cudf/core/buffer/buffer.py +++ b/python/cudf/cudf/core/buffer/buffer.py @@ -9,6 +9,7 @@ from typing import Any, Literal, Mapping import numpy +import pylibcudf from typing_extensions import Self import rmm @@ -501,7 +502,7 @@ def get_ptr_and_size(array_interface: Mapping) -> tuple[int, int]: shape = array_interface["shape"] or (1,) strides = array_interface["strides"] itemsize = cudf.dtype(array_interface["typestr"]).itemsize - if strides is None or cudf._lib.pylibcudf.column.is_c_contiguous( + if strides is None or pylibcudf.column.is_c_contiguous( shape, strides, itemsize ): nelem = math.prod(shape) diff --git a/python/cudf_kafka/cudf_kafka/_lib/kafka.pxd b/python/cudf_kafka/cudf_kafka/_lib/kafka.pxd index 2de0bf39785..e65b0d233b9 100644 --- a/python/cudf_kafka/cudf_kafka/_lib/kafka.pxd +++ b/python/cudf_kafka/cudf_kafka/_lib/kafka.pxd @@ -6,9 +6,8 @@ from libcpp.map cimport map from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector - -from cudf._lib.pylibcudf.io.datasource cimport Datasource -from cudf._lib.pylibcudf.libcudf.io.datasource cimport datasource +from pylibcudf.io.datasource cimport Datasource +from pylibcudf.libcudf.io.datasource cimport datasource cdef extern from "cudf_kafka/kafka_callback.hpp" \ diff --git a/python/cudf_kafka/cudf_kafka/_lib/kafka.pyx b/python/cudf_kafka/cudf_kafka/_lib/kafka.pyx index 2927dc0aa9a..20aa43b0134 100644 --- a/python/cudf_kafka/cudf_kafka/_lib/kafka.pyx +++ b/python/cudf_kafka/cudf_kafka/_lib/kafka.pyx @@ -6,8 +6,7 @@ from libcpp.map cimport map from libcpp.memory cimport make_unique, unique_ptr from libcpp.string cimport string from libcpp.utility cimport move - -from cudf._lib.pylibcudf.libcudf.io.datasource cimport datasource +from pylibcudf.libcudf.io.datasource cimport datasource from cudf_kafka._lib.kafka cimport kafka_consumer diff --git a/python/cudf_polars/cudf_polars/containers/column.py b/python/cudf_polars/cudf_polars/containers/column.py index 02018548b2c..dd3b771e305 100644 --- a/python/cudf_polars/cudf_polars/containers/column.py +++ b/python/cudf_polars/cudf_polars/containers/column.py @@ -8,7 +8,7 @@ import functools from typing import TYPE_CHECKING -import cudf._lib.pylibcudf as plc +import pylibcudf as plc if TYPE_CHECKING: from typing_extensions import Self diff --git a/python/cudf_polars/cudf_polars/containers/dataframe.py b/python/cudf_polars/cudf_polars/containers/dataframe.py index dba76855329..f2115f283bc 100644 --- a/python/cudf_polars/cudf_polars/containers/dataframe.py +++ b/python/cudf_polars/cudf_polars/containers/dataframe.py @@ -13,7 +13,7 @@ import polars as pl -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.containers.column import NamedColumn from cudf_polars.utils import dtypes diff --git a/python/cudf_polars/cudf_polars/dsl/expr.py b/python/cudf_polars/cudf_polars/dsl/expr.py index 9e0fca3f52f..099565f1093 100644 --- a/python/cudf_polars/cudf_polars/dsl/expr.py +++ b/python/cudf_polars/cudf_polars/dsl/expr.py @@ -24,7 +24,7 @@ from polars.polars import _expr_nodes as pl_expr -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.containers import Column, NamedColumn from cudf_polars.utils import dtypes, sorting diff --git a/python/cudf_polars/cudf_polars/dsl/ir.py b/python/cudf_polars/cudf_polars/dsl/ir.py index 7f62dff4389..f39453238a1 100644 --- a/python/cudf_polars/cudf_polars/dsl/ir.py +++ b/python/cudf_polars/cudf_polars/dsl/ir.py @@ -25,7 +25,7 @@ import polars as pl -import cudf._lib.pylibcudf as plc +import pylibcudf as plc import cudf_polars.dsl.expr as expr from cudf_polars.containers import DataFrame, NamedColumn diff --git a/python/cudf_polars/cudf_polars/dsl/translate.py b/python/cudf_polars/cudf_polars/dsl/translate.py index dec45679c75..277ad4f41db 100644 --- a/python/cudf_polars/cudf_polars/dsl/translate.py +++ b/python/cudf_polars/cudf_polars/dsl/translate.py @@ -17,7 +17,7 @@ import polars.polars as plrs from polars.polars import _expr_nodes as pl_expr, _ir_nodes as pl_ir -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.dsl import expr, ir from cudf_polars.typing import NodeTraverser diff --git a/python/cudf_polars/cudf_polars/typing/__init__.py b/python/cudf_polars/cudf_polars/typing/__init__.py index c04eac41bb7..eaabe2eb3a8 100644 --- a/python/cudf_polars/cudf_polars/typing/__init__.py +++ b/python/cudf_polars/cudf_polars/typing/__init__.py @@ -10,7 +10,7 @@ from polars.polars import _expr_nodes as pl_expr, _ir_nodes as pl_ir -import cudf._lib.pylibcudf as plc +import pylibcudf as plc if TYPE_CHECKING: from typing import Callable diff --git a/python/cudf_polars/cudf_polars/utils/dtypes.py b/python/cudf_polars/cudf_polars/utils/dtypes.py index cd68d021286..e44f0ef6e28 100644 --- a/python/cudf_polars/cudf_polars/utils/dtypes.py +++ b/python/cudf_polars/cudf_polars/utils/dtypes.py @@ -12,7 +12,7 @@ import polars as pl -import cudf._lib.pylibcudf as plc +import pylibcudf as plc __all__ = ["from_polars", "downcast_arrow_lists"] diff --git a/python/cudf_polars/cudf_polars/utils/sorting.py b/python/cudf_polars/cudf_polars/utils/sorting.py index 57f94c4ec4c..17ea44e5b1b 100644 --- a/python/cudf_polars/cudf_polars/utils/sorting.py +++ b/python/cudf_polars/cudf_polars/utils/sorting.py @@ -7,7 +7,7 @@ from typing import TYPE_CHECKING -import cudf._lib.pylibcudf as plc +import pylibcudf as plc if TYPE_CHECKING: from collections.abc import Sequence diff --git a/python/cudf_polars/tests/containers/test_column.py b/python/cudf_polars/tests/containers/test_column.py index 4f3c0de5975..36dd9801f9d 100644 --- a/python/cudf_polars/tests/containers/test_column.py +++ b/python/cudf_polars/tests/containers/test_column.py @@ -8,7 +8,7 @@ import pyarrow import pytest -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.containers import Column, NamedColumn diff --git a/python/cudf_polars/tests/containers/test_dataframe.py b/python/cudf_polars/tests/containers/test_dataframe.py index 87508e17407..ed3fa660505 100644 --- a/python/cudf_polars/tests/containers/test_dataframe.py +++ b/python/cudf_polars/tests/containers/test_dataframe.py @@ -7,7 +7,7 @@ import polars as pl -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.containers import DataFrame, NamedColumn diff --git a/python/cudf_polars/tests/dsl/test_expr.py b/python/cudf_polars/tests/dsl/test_expr.py index ddc3ca66d86..a459fc53181 100644 --- a/python/cudf_polars/tests/dsl/test_expr.py +++ b/python/cudf_polars/tests/dsl/test_expr.py @@ -5,7 +5,7 @@ import pytest -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.dsl import expr diff --git a/python/cudf_polars/tests/expressions/test_literal.py b/python/cudf_polars/tests/expressions/test_literal.py index 5bd3131d1d7..52bc4a9ac71 100644 --- a/python/cudf_polars/tests/expressions/test_literal.py +++ b/python/cudf_polars/tests/expressions/test_literal.py @@ -6,7 +6,7 @@ import polars as pl -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.testing.asserts import ( assert_gpu_result_equal, diff --git a/python/cudf_polars/tests/expressions/test_sort.py b/python/cudf_polars/tests/expressions/test_sort.py index d46df92db94..78a719e07de 100644 --- a/python/cudf_polars/tests/expressions/test_sort.py +++ b/python/cudf_polars/tests/expressions/test_sort.py @@ -8,7 +8,7 @@ import polars as pl -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars import translate_ir from cudf_polars.testing.asserts import assert_gpu_result_equal diff --git a/python/cudf_polars/tests/utils/test_broadcast.py b/python/cudf_polars/tests/utils/test_broadcast.py index 69ad1e519e2..17006385806 100644 --- a/python/cudf_polars/tests/utils/test_broadcast.py +++ b/python/cudf_polars/tests/utils/test_broadcast.py @@ -5,7 +5,7 @@ import pytest -import cudf._lib.pylibcudf as plc +import pylibcudf as plc from cudf_polars.containers import NamedColumn from cudf_polars.dsl.ir import broadcast diff --git a/python/pylibcudf/pylibcudf/_version.py b/python/pylibcudf/pylibcudf/_version.py new file mode 100644 index 00000000000..d2765e5d53c --- /dev/null +++ b/python/pylibcudf/pylibcudf/_version.py @@ -0,0 +1,24 @@ +# SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. +# SPDX-License-Identifier: Apache-2.0 + +from __future__ import annotations + +import importlib.resources + +__version__ = ( + importlib.resources.files(__package__) + .joinpath("VERSION") + .read_text() + .strip() +) +try: + __git_commit__ = ( + importlib.resources.files(__package__) + .joinpath("GIT_COMMIT") + .read_text() + .strip() + ) +except FileNotFoundError: + __git_commit__ = "" + +__all__ = ["__git_commit__", "__version__"] diff --git a/python/pylibcudf/pylibcudf/types.pyx b/python/pylibcudf/pylibcudf/types.pyx index 4e5126884d4..58c7d97e9bc 100644 --- a/python/pylibcudf/pylibcudf/types.pyx +++ b/python/pylibcudf/pylibcudf/types.pyx @@ -9,14 +9,6 @@ from pylibcudf.libcudf.types cimport ( ) from pylibcudf.libcudf.utilities.type_dispatcher cimport type_to_id -from pylibcudf.libcudf.types cimport ( - data_type, - size_of as cpp_size_of, - size_type, - type_id, -) -from pylibcudf.libcudf.utilities.type_dispatcher cimport type_to_id - from pylibcudf.libcudf.types import type_id as TypeId # no-cython-lint, isort:skip from pylibcudf.libcudf.types import nan_policy as NanPolicy # no-cython-lint, isort:skip from pylibcudf.libcudf.types import null_policy as NullPolicy # no-cython-lint, isort:skip From 50bd09fedc8ed5bf1a539e568bbe90297a390905 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 16:49:23 +0000 Subject: [PATCH 14/43] last fixes --- python/cudf/cudf/_lib/__init__.py | 1 - python/cudf/cudf/_lib/aggregation.pyx | 2 +- python/cudf/cudf/_lib/binaryop.pyx | 3 ++- python/cudf/cudf/_lib/column.pyx | 2 +- python/cudf/cudf/_lib/concat.pyx | 3 ++- python/cudf/cudf/_lib/copying.pyx | 3 ++- python/cudf/cudf/_lib/filling.pyx | 4 ++-- python/cudf/cudf/_lib/groupby.pyx | 3 ++- python/cudf/cudf/_lib/interop.pyx | 2 +- python/cudf/cudf/_lib/join.pyx | 2 +- python/cudf/cudf/_lib/lists.pyx | 2 +- python/cudf/cudf/_lib/merge.pyx | 2 +- python/cudf/cudf/_lib/reduce.pyx | 3 ++- python/cudf/cudf/_lib/replace.pyx | 3 ++- python/cudf/cudf/_lib/rolling.pyx | 3 ++- python/cudf/cudf/_lib/scalar.pyx | 3 ++- python/cudf/cudf/_lib/search.pyx | 2 +- python/cudf/cudf/_lib/sort.pyx | 2 +- python/cudf/cudf/_lib/stream_compaction.pyx | 2 +- python/cudf/cudf/_lib/types.pyx | 3 ++- python/cudf/cudf/_lib/unary.pyx | 2 +- python/cudf/cudf/core/column/numerical.py | 2 +- python/cudf/cudf/pandas/__init__.py | 4 ++-- 23 files changed, 33 insertions(+), 25 deletions(-) diff --git a/python/cudf/cudf/_lib/__init__.py b/python/cudf/cudf/_lib/__init__.py index 34c0e29d0b1..918edb6d3f1 100644 --- a/python/cudf/cudf/_lib/__init__.py +++ b/python/cudf/cudf/_lib/__init__.py @@ -21,7 +21,6 @@ orc, parquet, partitioning, - pylibcudf, quantiles, reduce, replace, diff --git a/python/cudf/cudf/_lib/aggregation.pyx b/python/cudf/cudf/_lib/aggregation.pyx index 1616c24eec2..5f0fa404740 100644 --- a/python/cudf/cudf/_lib/aggregation.pyx +++ b/python/cudf/cudf/_lib/aggregation.pyx @@ -1,10 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. import pandas as pd +import pylibcudf from numba.np import numpy_support import cudf -from cudf._lib import pylibcudf from cudf._lib.types import SUPPORTED_NUMPY_TO_PYLIBCUDF_TYPES from cudf.utils import cudautils diff --git a/python/cudf/cudf/_lib/binaryop.pyx b/python/cudf/cudf/_lib/binaryop.pyx index 2e352dd7904..e2547476849 100644 --- a/python/cudf/cudf/_lib/binaryop.pyx +++ b/python/cudf/cudf/_lib/binaryop.pyx @@ -4,7 +4,8 @@ from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar from cudf._lib.types cimport dtype_to_pylibcudf_type -from cudf._lib import pylibcudf +import pylibcudf + from cudf._lib.scalar import as_device_scalar from cudf.core.buffer import acquire_spill_lock diff --git a/python/cudf/cudf/_lib/column.pyx b/python/cudf/cudf/_lib/column.pyx index 4b99514b430..b228a4d0ebb 100644 --- a/python/cudf/cudf/_lib/column.pyx +++ b/python/cudf/cudf/_lib/column.pyx @@ -6,12 +6,12 @@ from typing import Literal import cupy as cp import numpy as np import pandas as pd +import pylibcudf import rmm import cudf import cudf._lib as libcudf -from cudf._lib import pylibcudf from cudf.core.buffer import ( Buffer, ExposureTrackedBuffer, diff --git a/python/cudf/cudf/_lib/concat.pyx b/python/cudf/cudf/_lib/concat.pyx index 89ddcfee99e..e661059faa3 100644 --- a/python/cudf/cudf/_lib/concat.pyx +++ b/python/cudf/cudf/_lib/concat.pyx @@ -5,7 +5,8 @@ from libcpp cimport bool from cudf._lib.column cimport Column from cudf._lib.utils cimport data_from_pylibcudf_table -from cudf._lib import pylibcudf +import pylibcudf + from cudf.core.buffer import acquire_spill_lock diff --git a/python/cudf/cudf/_lib/copying.pyx b/python/cudf/cudf/_lib/copying.pyx index 288abca56af..7d304264951 100644 --- a/python/cudf/cudf/_lib/copying.pyx +++ b/python/cudf/cudf/_lib/copying.pyx @@ -10,8 +10,9 @@ from libcpp.vector cimport vector from rmm._lib.device_buffer cimport DeviceBuffer +import pylibcudf + import cudf -from cudf._lib import pylibcudf from cudf.core.buffer import Buffer, acquire_spill_lock, as_buffer from cudf._lib.column cimport Column diff --git a/python/cudf/cudf/_lib/filling.pyx b/python/cudf/cudf/_lib/filling.pyx index b7302f3d07a..b2f4c620144 100644 --- a/python/cudf/cudf/_lib/filling.pyx +++ b/python/cudf/cudf/_lib/filling.pyx @@ -2,12 +2,12 @@ from cudf.core.buffer import acquire_spill_lock - from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar from cudf._lib.utils cimport columns_from_pylibcudf_table -from cudf._lib import pylibcudf +import pylibcudf + from cudf._lib.scalar import as_device_scalar diff --git a/python/cudf/cudf/_lib/groupby.pyx b/python/cudf/cudf/_lib/groupby.pyx index 9448e9ec4be..c199ed96d4f 100644 --- a/python/cudf/cudf/_lib/groupby.pyx +++ b/python/cudf/cudf/_lib/groupby.pyx @@ -21,7 +21,8 @@ from cudf._lib.scalar import as_device_scalar from pylibcudf.libcudf.replace cimport replace_policy from pylibcudf.libcudf.scalar.scalar cimport scalar -from cudf._lib import pylibcudf +import pylibcudf + from cudf._lib.aggregation import make_aggregation # The sets below define the possible aggregations that can be performed on diff --git a/python/cudf/cudf/_lib/interop.pyx b/python/cudf/cudf/_lib/interop.pyx index 85588f78a25..1dc586bb257 100644 --- a/python/cudf/cudf/_lib/interop.pyx +++ b/python/cudf/cudf/_lib/interop.pyx @@ -4,7 +4,7 @@ from cpython cimport pycapsule from libcpp.memory cimport unique_ptr from libcpp.utility cimport move -from cudf._lib import pylibcudf +import pylibcudf from pylibcudf.libcudf.interop cimport ( DLManagedTensor, diff --git a/python/cudf/cudf/_lib/join.pyx b/python/cudf/cudf/_lib/join.pyx index 0a54f0d67a0..2559358c21f 100644 --- a/python/cudf/cudf/_lib/join.pyx +++ b/python/cudf/cudf/_lib/join.pyx @@ -4,7 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from cudf._lib.column cimport Column -from cudf._lib import pylibcudf +import pylibcudf # The functions below return the *gathermaps* that represent # the join result when joining on the keys `lhs` and `rhs`. diff --git a/python/cudf/cudf/_lib/lists.pyx b/python/cudf/cudf/_lib/lists.pyx index 540a9f437c8..10254f20168 100644 --- a/python/cudf/cudf/_lib/lists.pyx +++ b/python/cudf/cudf/_lib/lists.pyx @@ -8,7 +8,7 @@ from pylibcudf.libcudf.types cimport null_order, size_type from cudf._lib.column cimport Column from cudf._lib.utils cimport columns_from_pylibcudf_table -from cudf._lib import pylibcudf +import pylibcudf from pylibcudf cimport Scalar diff --git a/python/cudf/cudf/_lib/merge.pyx b/python/cudf/cudf/_lib/merge.pyx index fe7f7ad2918..9372acdab44 100644 --- a/python/cudf/cudf/_lib/merge.pyx +++ b/python/cudf/cudf/_lib/merge.pyx @@ -4,7 +4,7 @@ from libcpp cimport bool from cudf._lib.utils cimport columns_from_pylibcudf_table -from cudf._lib import pylibcudf +import pylibcudf def merge_sorted( diff --git a/python/cudf/cudf/_lib/reduce.pyx b/python/cudf/cudf/_lib/reduce.pyx index 64634b7a6f9..b4a36464e91 100644 --- a/python/cudf/cudf/_lib/reduce.pyx +++ b/python/cudf/cudf/_lib/reduce.pyx @@ -8,7 +8,8 @@ from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar from cudf._lib.types cimport dtype_to_pylibcudf_type, is_decimal_type_id -from cudf._lib import pylibcudf +import pylibcudf + from cudf._lib.aggregation import make_aggregation diff --git a/python/cudf/cudf/_lib/replace.pyx b/python/cudf/cudf/_lib/replace.pyx index 2b5f32c7675..b50c6dd25e3 100644 --- a/python/cudf/cudf/_lib/replace.pyx +++ b/python/cudf/cudf/_lib/replace.pyx @@ -6,7 +6,8 @@ from cudf.core.buffer import acquire_spill_lock from cudf._lib.column cimport Column from cudf._lib.scalar cimport DeviceScalar -from cudf._lib import pylibcudf +import pylibcudf + from cudf._lib.scalar import as_device_scalar diff --git a/python/cudf/cudf/_lib/rolling.pyx b/python/cudf/cudf/_lib/rolling.pyx index 5439e70fdce..687b261c2c7 100644 --- a/python/cudf/cudf/_lib/rolling.pyx +++ b/python/cudf/cudf/_lib/rolling.pyx @@ -4,7 +4,8 @@ from cudf.core.buffer import acquire_spill_lock from cudf._lib.column cimport Column -from cudf._lib import pylibcudf +import pylibcudf + from cudf._lib.aggregation import make_aggregation diff --git a/python/cudf/cudf/_lib/scalar.pyx b/python/cudf/cudf/_lib/scalar.pyx index 2cda60ace08..0dde91316fb 100644 --- a/python/cudf/cudf/_lib/scalar.pyx +++ b/python/cudf/cudf/_lib/scalar.pyx @@ -11,8 +11,9 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move +import pylibcudf + import cudf -from cudf._lib import pylibcudf from cudf._lib.types import LIBCUDF_TO_SUPPORTED_NUMPY_TYPES from cudf.core.dtypes import ListDtype, StructDtype from cudf.core.missing import NA, NaT diff --git a/python/cudf/cudf/_lib/search.pyx b/python/cudf/cudf/_lib/search.pyx index 1ee73949fd3..8108361052b 100644 --- a/python/cudf/cudf/_lib/search.pyx +++ b/python/cudf/cudf/_lib/search.pyx @@ -4,7 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from cudf._lib.column cimport Column -from cudf._lib import pylibcudf +import pylibcudf @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/sort.pyx b/python/cudf/cudf/_lib/sort.pyx index 900dd79e530..5267bf0c508 100644 --- a/python/cudf/cudf/_lib/sort.pyx +++ b/python/cudf/cudf/_lib/sort.pyx @@ -20,7 +20,7 @@ from cudf._lib.utils cimport ( table_view_from_columns, ) -from cudf._lib import pylibcudf +import pylibcudf @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/stream_compaction.pyx b/python/cudf/cudf/_lib/stream_compaction.pyx index 834f91f48d9..1b8831940e3 100644 --- a/python/cudf/cudf/_lib/stream_compaction.pyx +++ b/python/cudf/cudf/_lib/stream_compaction.pyx @@ -7,7 +7,7 @@ from libcpp cimport bool from cudf._lib.column cimport Column from cudf._lib.utils cimport columns_from_pylibcudf_table -from cudf._lib import pylibcudf +import pylibcudf @acquire_spill_lock() diff --git a/python/cudf/cudf/_lib/types.pyx b/python/cudf/cudf/_lib/types.pyx index e2ca27d1ba9..79d9815ba71 100644 --- a/python/cudf/cudf/_lib/types.pyx +++ b/python/cudf/cudf/_lib/types.pyx @@ -16,8 +16,9 @@ from cudf._lib.types cimport ( underlying_type_t_sorted, ) +import pylibcudf + import cudf -from cudf._lib import pylibcudf class TypeId(IntEnum): diff --git a/python/cudf/cudf/_lib/unary.pyx b/python/cudf/cudf/_lib/unary.pyx index 2f58c4512d6..968989f2e98 100644 --- a/python/cudf/cudf/_lib/unary.pyx +++ b/python/cudf/cudf/_lib/unary.pyx @@ -4,8 +4,8 @@ from cudf._lib.column cimport Column from cudf._lib.types cimport dtype_to_pylibcudf_type import numpy as np +import pylibcudf -from cudf._lib import pylibcudf from cudf.api.types import is_decimal_dtype from cudf.core.buffer import acquire_spill_lock diff --git a/python/cudf/cudf/core/column/numerical.py b/python/cudf/cudf/core/column/numerical.py index f9404eb3b40..4f260eeff31 100644 --- a/python/cudf/cudf/core/column/numerical.py +++ b/python/cudf/cudf/core/column/numerical.py @@ -7,11 +7,11 @@ import numpy as np import pandas as pd +import pylibcudf from typing_extensions import Self import cudf from cudf import _lib as libcudf -from cudf._lib import pylibcudf from cudf.api.types import is_integer, is_scalar from cudf.core.column import ( ColumnBase, diff --git a/python/cudf/cudf/pandas/__init__.py b/python/cudf/cudf/pandas/__init__.py index a6667a7bcd9..6d1b07cd8eb 100644 --- a/python/cudf/cudf/pandas/__init__.py +++ b/python/cudf/cudf/pandas/__init__.py @@ -5,9 +5,9 @@ import os import warnings -import rmm.mr +import pylibcudf -from cudf._lib import pylibcudf +import rmm.mr from .fast_slow_proxy import is_proxy_object from .magics import load_ipython_extension From ca6a6976d589bfc86f963a44d11d3768b1b59cbd Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 16:52:46 +0000 Subject: [PATCH 15/43] put back removed file --- .../tests/test_column_from_device.py | 73 +++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 python/pylibcudf/pylibcudf/tests/test_column_from_device.py diff --git a/python/pylibcudf/pylibcudf/tests/test_column_from_device.py b/python/pylibcudf/pylibcudf/tests/test_column_from_device.py new file mode 100644 index 00000000000..0e129fdf0ef --- /dev/null +++ b/python/pylibcudf/pylibcudf/tests/test_column_from_device.py @@ -0,0 +1,73 @@ +# Copyright (c) 2024, NVIDIA CORPORATION. + +import pyarrow as pa +import pylibcudf as plc +import pytest +from utils import assert_column_eq + +import rmm + +VALID_TYPES = [ + pa.int8(), + pa.int16(), + pa.int32(), + pa.int64(), + pa.uint8(), + pa.uint16(), + pa.uint32(), + pa.uint64(), + pa.float32(), + pa.float64(), + pa.bool_(), + pa.timestamp("s"), + pa.timestamp("ms"), + pa.timestamp("us"), + pa.timestamp("ns"), + pa.duration("s"), + pa.duration("ms"), + pa.duration("us"), + pa.duration("ns"), +] + + +@pytest.fixture(params=VALID_TYPES, ids=repr) +def valid_type(request): + return request.param + + +class DataBuffer: + def __init__(self, obj, dtype): + self.obj = rmm.DeviceBuffer.to_device(obj) + self.dtype = dtype + self.shape = (int(len(self.obj) / self.dtype.itemsize),) + self.strides = (self.dtype.itemsize,) + self.typestr = self.dtype.str + + @property + def __cuda_array_interface__(self): + return { + "data": self.obj.__cuda_array_interface__["data"], + "shape": self.shape, + "strides": self.strides, + "typestr": self.typestr, + "version": 0, + } + + +@pytest.fixture +def input_column(valid_type): + if valid_type == pa.bool_(): + return pa.array([True, False, True], type=valid_type) + return pa.array([1, 2, 3], type=valid_type) + + +@pytest.fixture +def iface_obj(input_column): + data = input_column.to_numpy(zero_copy_only=False) + return DataBuffer(data.view("uint8"), data.dtype) + + +def test_from_cuda_array_interface(input_column, iface_obj): + col = plc.column.Column.from_cuda_array_interface_obj(iface_obj) + + assert_column_eq(input_column, col) From d011bbd4f6d7e8366007daaff6c5cb93113cf5c8 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 17:13:46 +0000 Subject: [PATCH 16/43] style checks --- .../cudf_polars/cudf_polars/containers/dataframe.py | 3 +-- python/cudf_polars/cudf_polars/dsl/expr.py | 3 +-- python/cudf_polars/cudf_polars/dsl/translate.py | 3 +-- python/cudf_polars/cudf_polars/typing/__init__.py | 4 ++-- python/cudf_polars/cudf_polars/utils/dtypes.py | 3 +-- python/pylibcudf/pylibcudf/libcudf/copying.pxd | 1 - .../pylibcudf/libcudf/exception_handler.pxd | 6 +++--- .../pylibcudf/pylibcudf/libcudf/lists/contains.pxd | 12 ++++++------ 8 files changed, 15 insertions(+), 20 deletions(-) diff --git a/python/cudf_polars/cudf_polars/containers/dataframe.py b/python/cudf_polars/cudf_polars/containers/dataframe.py index f2115f283bc..7c28e7b9a6c 100644 --- a/python/cudf_polars/cudf_polars/containers/dataframe.py +++ b/python/cudf_polars/cudf_polars/containers/dataframe.py @@ -10,11 +10,10 @@ from typing import TYPE_CHECKING, cast import pyarrow as pa +import pylibcudf as plc import polars as pl -import pylibcudf as plc - from cudf_polars.containers.column import NamedColumn from cudf_polars.utils import dtypes diff --git a/python/cudf_polars/cudf_polars/dsl/expr.py b/python/cudf_polars/cudf_polars/dsl/expr.py index 099565f1093..e1b4d30b76b 100644 --- a/python/cudf_polars/cudf_polars/dsl/expr.py +++ b/python/cudf_polars/cudf_polars/dsl/expr.py @@ -21,11 +21,10 @@ from typing import TYPE_CHECKING, Any, ClassVar, NamedTuple import pyarrow as pa +import pylibcudf as plc from polars.polars import _expr_nodes as pl_expr -import pylibcudf as plc - from cudf_polars.containers import Column, NamedColumn from cudf_polars.utils import dtypes, sorting diff --git a/python/cudf_polars/cudf_polars/dsl/translate.py b/python/cudf_polars/cudf_polars/dsl/translate.py index 277ad4f41db..6dc97c7cb51 100644 --- a/python/cudf_polars/cudf_polars/dsl/translate.py +++ b/python/cudf_polars/cudf_polars/dsl/translate.py @@ -11,14 +11,13 @@ from typing import Any import pyarrow as pa +import pylibcudf as plc from typing_extensions import assert_never import polars as pl import polars.polars as plrs from polars.polars import _expr_nodes as pl_expr, _ir_nodes as pl_ir -import pylibcudf as plc - from cudf_polars.dsl import expr, ir from cudf_polars.typing import NodeTraverser from cudf_polars.utils import dtypes diff --git a/python/cudf_polars/cudf_polars/typing/__init__.py b/python/cudf_polars/cudf_polars/typing/__init__.py index eaabe2eb3a8..02440e67fde 100644 --- a/python/cudf_polars/cudf_polars/typing/__init__.py +++ b/python/cudf_polars/cudf_polars/typing/__init__.py @@ -8,10 +8,10 @@ from collections.abc import Mapping from typing import TYPE_CHECKING, Literal, Protocol, Union -from polars.polars import _expr_nodes as pl_expr, _ir_nodes as pl_ir - import pylibcudf as plc +from polars.polars import _expr_nodes as pl_expr, _ir_nodes as pl_ir + if TYPE_CHECKING: from typing import Callable diff --git a/python/cudf_polars/cudf_polars/utils/dtypes.py b/python/cudf_polars/cudf_polars/utils/dtypes.py index e44f0ef6e28..7f6ea1edfd9 100644 --- a/python/cudf_polars/cudf_polars/utils/dtypes.py +++ b/python/cudf_polars/cudf_polars/utils/dtypes.py @@ -8,12 +8,11 @@ from functools import cache import pyarrow as pa +import pylibcudf as plc from typing_extensions import assert_never import polars as pl -import pylibcudf as plc - __all__ = ["from_polars", "downcast_arrow_lists"] diff --git a/python/pylibcudf/pylibcudf/libcudf/copying.pxd b/python/pylibcudf/pylibcudf/libcudf/copying.pxd index 3af62b7d8c6..4d4a4ba9b89 100644 --- a/python/pylibcudf/pylibcudf/libcudf/copying.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/copying.pxd @@ -11,7 +11,6 @@ from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) -from pylibcudf.libcudf.exception_handler cimport cudf_exception_handler from pylibcudf.libcudf.scalar.scalar cimport scalar from pylibcudf.libcudf.table.table cimport table from pylibcudf.libcudf.table.table_view cimport table_view diff --git a/python/pylibcudf/pylibcudf/libcudf/exception_handler.pxd b/python/pylibcudf/pylibcudf/libcudf/exception_handler.pxd index 4337d8db285..6abcd0a1c0f 100644 --- a/python/pylibcudf/pylibcudf/libcudf/exception_handler.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/exception_handler.pxd @@ -1,4 +1,4 @@ -# Copyright (c) 2023, NVIDIA CORPORATION. +# Copyright (c) 2023-2024, NVIDIA CORPORATION. # See @@ -24,7 +24,7 @@ cdef extern from *: * Since this function interoperates with Python's exception state, it * does not throw any C++ exceptions. */ - void cudf_exception_handler() + void libcudf_exception_handler() { // Catch a handful of different errors here and turn them into the // equivalent Python errors. @@ -66,4 +66,4 @@ cdef extern from *: } // anonymous namespace """ - cdef void cudf_exception_handler() + cdef void libcudf_exception_handler() diff --git a/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd index 81a5ad46389..de1740ab362 100644 --- a/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd @@ -2,7 +2,7 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr -from pylibcudf.exception_handler cimport libcudf_exception_handler +from pylibcudf.exception_handler cimport liblibcudf_exception_handler from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view @@ -18,25 +18,25 @@ cdef extern from "cudf/lists/contains.hpp" namespace "cudf::lists" nogil: cdef unique_ptr[column] contains( const lists_column_view& lists, const scalar& search_key, - ) except +libcudf_exception_handler + ) except +liblibcudf_exception_handler cdef unique_ptr[column] contains( const lists_column_view& lists, const column_view& search_keys, - ) except +libcudf_exception_handler + ) except +liblibcudf_exception_handler cdef unique_ptr[column] contains_nulls( const lists_column_view& lists, - ) except +libcudf_exception_handler + ) except +liblibcudf_exception_handler cdef unique_ptr[column] index_of( const lists_column_view& lists, const scalar& search_key, duplicate_find_option find_option, - ) except +libcudf_exception_handler + ) except +liblibcudf_exception_handler cdef unique_ptr[column] index_of( const lists_column_view& lists, const column_view& search_keys, duplicate_find_option find_option, - ) except +libcudf_exception_handler + ) except +liblibcudf_exception_handler From 64a94e8e2053339ecb47cb18b7a8fc74c750e5d3 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 17:17:12 +0000 Subject: [PATCH 17/43] more --- python/cudf_polars/tests/containers/test_column.py | 3 +-- python/cudf_polars/tests/containers/test_dataframe.py | 3 +-- python/cudf_polars/tests/dsl/test_expr.py | 3 +-- python/cudf_polars/tests/expressions/test_literal.py | 3 +-- python/cudf_polars/tests/expressions/test_sort.py | 3 +-- python/cudf_polars/tests/utils/test_broadcast.py | 3 +-- 6 files changed, 6 insertions(+), 12 deletions(-) diff --git a/python/cudf_polars/tests/containers/test_column.py b/python/cudf_polars/tests/containers/test_column.py index 36dd9801f9d..19919877f84 100644 --- a/python/cudf_polars/tests/containers/test_column.py +++ b/python/cudf_polars/tests/containers/test_column.py @@ -6,9 +6,8 @@ from functools import partial import pyarrow -import pytest - import pylibcudf as plc +import pytest from cudf_polars.containers import Column, NamedColumn diff --git a/python/cudf_polars/tests/containers/test_dataframe.py b/python/cudf_polars/tests/containers/test_dataframe.py index ed3fa660505..6b470268084 100644 --- a/python/cudf_polars/tests/containers/test_dataframe.py +++ b/python/cudf_polars/tests/containers/test_dataframe.py @@ -3,12 +3,11 @@ from __future__ import annotations +import pylibcudf as plc import pytest import polars as pl -import pylibcudf as plc - from cudf_polars.containers import DataFrame, NamedColumn diff --git a/python/cudf_polars/tests/dsl/test_expr.py b/python/cudf_polars/tests/dsl/test_expr.py index a459fc53181..b7d4672daca 100644 --- a/python/cudf_polars/tests/dsl/test_expr.py +++ b/python/cudf_polars/tests/dsl/test_expr.py @@ -3,9 +3,8 @@ from __future__ import annotations -import pytest - import pylibcudf as plc +import pytest from cudf_polars.dsl import expr diff --git a/python/cudf_polars/tests/expressions/test_literal.py b/python/cudf_polars/tests/expressions/test_literal.py index 52bc4a9ac71..ced49bdc254 100644 --- a/python/cudf_polars/tests/expressions/test_literal.py +++ b/python/cudf_polars/tests/expressions/test_literal.py @@ -2,12 +2,11 @@ # SPDX-License-Identifier: Apache-2.0 from __future__ import annotations +import pylibcudf as plc import pytest import polars as pl -import pylibcudf as plc - from cudf_polars.testing.asserts import ( assert_gpu_result_equal, assert_ir_translation_raises, diff --git a/python/cudf_polars/tests/expressions/test_sort.py b/python/cudf_polars/tests/expressions/test_sort.py index 78a719e07de..76c7648813a 100644 --- a/python/cudf_polars/tests/expressions/test_sort.py +++ b/python/cudf_polars/tests/expressions/test_sort.py @@ -4,12 +4,11 @@ import itertools +import pylibcudf as plc import pytest import polars as pl -import pylibcudf as plc - from cudf_polars import translate_ir from cudf_polars.testing.asserts import assert_gpu_result_equal diff --git a/python/cudf_polars/tests/utils/test_broadcast.py b/python/cudf_polars/tests/utils/test_broadcast.py index 17006385806..35aaef44e1f 100644 --- a/python/cudf_polars/tests/utils/test_broadcast.py +++ b/python/cudf_polars/tests/utils/test_broadcast.py @@ -3,9 +3,8 @@ from __future__ import annotations -import pytest - import pylibcudf as plc +import pytest from cudf_polars.containers import NamedColumn from cudf_polars.dsl.ir import broadcast From 84e9107109134cf56a4989f09bca044ad5fba042 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 17:29:37 +0000 Subject: [PATCH 18/43] maybe finish fixing my mess --- .../pylibcudf/pylibcudf/libcudf/lists/contains.pxd | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd b/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd index de1740ab362..81a5ad46389 100644 --- a/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/lists/contains.pxd @@ -2,7 +2,7 @@ from libc.stdint cimport int32_t from libcpp.memory cimport unique_ptr -from pylibcudf.exception_handler cimport liblibcudf_exception_handler +from pylibcudf.exception_handler cimport libcudf_exception_handler from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view @@ -18,25 +18,25 @@ cdef extern from "cudf/lists/contains.hpp" namespace "cudf::lists" nogil: cdef unique_ptr[column] contains( const lists_column_view& lists, const scalar& search_key, - ) except +liblibcudf_exception_handler + ) except +libcudf_exception_handler cdef unique_ptr[column] contains( const lists_column_view& lists, const column_view& search_keys, - ) except +liblibcudf_exception_handler + ) except +libcudf_exception_handler cdef unique_ptr[column] contains_nulls( const lists_column_view& lists, - ) except +liblibcudf_exception_handler + ) except +libcudf_exception_handler cdef unique_ptr[column] index_of( const lists_column_view& lists, const scalar& search_key, duplicate_find_option find_option, - ) except +liblibcudf_exception_handler + ) except +libcudf_exception_handler cdef unique_ptr[column] index_of( const lists_column_view& lists, const column_view& search_keys, duplicate_find_option find_option, - ) except +liblibcudf_exception_handler + ) except +libcudf_exception_handler From 86fc89e932763b732af4c98b7129b506a2dbdc82 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 17:55:05 +0000 Subject: [PATCH 19/43] try installing pylibcudf before build cudf --- ci/build_wheel_cudf.sh | 4 ++++ ci/build_wheel_pylibcudf.sh | 2 +- ci/test_wheel_cudf_polars.sh | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/ci/build_wheel_cudf.sh b/ci/build_wheel_cudf.sh index 1b563bc499c..f55a162a37d 100755 --- a/ci/build_wheel_cudf.sh +++ b/ci/build_wheel_cudf.sh @@ -7,6 +7,10 @@ package_dir="python/cudf" export SKBUILD_CMAKE_ARGS="-DUSE_LIBARROW_FROM_PYARROW=ON" +# Download the pylibcudf built in the previous step +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-cudf-dep +python -m pip install ./local-cudf-dep/cudf*.whl + ./ci/build_wheel.sh ${package_dir} python -m auditwheel repair -w ${package_dir}/final_dist ${package_dir}/dist/* diff --git a/ci/build_wheel_pylibcudf.sh b/ci/build_wheel_pylibcudf.sh index aa42d895a01..b25d118ff81 100755 --- a/ci/build_wheel_pylibcudf.sh +++ b/ci/build_wheel_pylibcudf.sh @@ -13,4 +13,4 @@ python -m auditwheel repair -w ${package_dir}/final_dist ${package_dir}/dist/* RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" -RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 ${package_dir}/final_dist +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 ${package_dir}/final_dist diff --git a/ci/test_wheel_cudf_polars.sh b/ci/test_wheel_cudf_polars.sh index 3047867413b..c57b94c44b7 100755 --- a/ci/test_wheel_cudf_polars.sh +++ b/ci/test_wheel_cudf_polars.sh @@ -10,7 +10,7 @@ set -eou pipefail # files in cudf_polars/pylibcudf", rather than "are there changes # between upstream and this branch which touch cudf_polars/pylibcudf" # TODO: is the target branch exposed anywhere in an environment variable? -if [ -n "$(git diff --name-only origin/branch-24.10...HEAD -- python/cudf_polars/ python/cudf/pylibcudf/)" ]; +if [ -n "$(git diff --name-only origin/branch-24.10...HEAD -- python/cudf_polars/ python/pylibcudf/)" ]; then HAS_CHANGES=1 else From 8662f8f6ebf1126a80fbd30d4aeefc22884de696 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 18:08:15 +0000 Subject: [PATCH 20/43] rework dependencies again --- .github/workflows/pr.yaml | 2 +- ci/build_wheel_cudf.sh | 4 ++-- dependencies.yaml | 29 ++++++++++++++++++++++++++++- python/cudf/pyproject.toml | 1 + python/cudf_polars/pyproject.toml | 2 +- 5 files changed, 33 insertions(+), 5 deletions(-) diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 86314d3c9d3..05cf2b16be4 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -143,7 +143,7 @@ jobs: build_type: pull-request script: ci/test_wheel_cudf.sh wheel-build-cudf-polars: - needs: wheel-build-cudf + needs: wheel-build-pylibcudf secrets: inherit uses: rapidsai/shared-workflows/.github/workflows/wheels-build.yaml@branch-24.10 with: diff --git a/ci/build_wheel_cudf.sh b/ci/build_wheel_cudf.sh index f55a162a37d..7ad5e82adaf 100755 --- a/ci/build_wheel_cudf.sh +++ b/ci/build_wheel_cudf.sh @@ -8,8 +8,8 @@ package_dir="python/cudf" export SKBUILD_CMAKE_ARGS="-DUSE_LIBARROW_FROM_PYARROW=ON" # Download the pylibcudf built in the previous step -RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-cudf-dep -python -m pip install ./local-cudf-dep/cudf*.whl +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep +python -m pip install ./local-pylibcudf-dep/pylibcudf*.whl ./ci/build_wheel.sh ${package_dir} diff --git a/dependencies.yaml b/dependencies.yaml index 52f63d1a5cb..3cc4c56c8a3 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -5,6 +5,7 @@ files: matrix: cuda: ["11.8", "12.5"] arch: [x86_64] + # TODO: add pylibcudf here? includes: - build_base - build_all @@ -103,6 +104,7 @@ files: - run_cudf - pyarrow_run - depends_on_cupy + - depends_on_pylibcudf py_test_cudf: output: pyproject pyproject_dir: python/cudf @@ -177,7 +179,7 @@ files: table: project includes: - run_cudf_polars - - depends_on_cudf + - depends_on_pylibcudf py_test_cudf_polars: output: pyproject pyproject_dir: python/cudf_polars @@ -808,6 +810,31 @@ dependencies: packages: - dask-cuda==24.10.*,>=0.0.0a0 - *numba + depends_on_pylibcudf: + common: + - output_types: conda + packages: + - &pylibcudf_unsuffixed pylibcudf==24.10.*,>=0.0.0a0 + - output_types: requirements + packages: + # pip recognizes the index as a global option for the requirements.txt file + # This index is needed for rmm, cubinlinker, ptxcompiler. + - --extra-index-url=https://pypi.nvidia.com + - --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple + specific: + - output_types: [requirements, pyproject] + matrices: + - matrix: + cuda: "12.*" + cuda_suffixed: "true" + packages: + - pylibcudf-cu12==24.10.*,>=0.0.0a0 + - matrix: + cuda: "11.*" + cuda_suffixed: "true" + packages: + - pylibcudf-cu11==24.10.*,>=0.0.0a0 + - {matrix: null, packages: [*pylibcudf_unsuffixed]} depends_on_cudf: common: - output_types: conda diff --git a/python/cudf/pyproject.toml b/python/cudf/pyproject.toml index b2ddb06d8c9..8fd1adb7d73 100644 --- a/python/cudf/pyproject.toml +++ b/python/cudf/pyproject.toml @@ -30,6 +30,7 @@ dependencies = [ "pandas>=2.0,<2.2.3dev0", "ptxcompiler", "pyarrow>=16.1.0,<16.2.0a0", + "pylibcudf==24.10.*,>=0.0.0a0", "rich", "rmm==24.10.*,>=0.0.0a0", "typing_extensions>=4.0.0", diff --git a/python/cudf_polars/pyproject.toml b/python/cudf_polars/pyproject.toml index 424c83a5199..c380853035d 100644 --- a/python/cudf_polars/pyproject.toml +++ b/python/cudf_polars/pyproject.toml @@ -19,8 +19,8 @@ authors = [ license = { text = "Apache 2.0" } requires-python = ">=3.9" dependencies = [ - "cudf==24.10.*,>=0.0.0a0", "polars>=1.0,<1.3", + "pylibcudf==24.10.*,>=0.0.0a0", ] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. classifiers = [ "Intended Audience :: Developers", From 599c6b94dfa4ecc4af8febdd58506d8ee9d14732 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 18:19:06 +0000 Subject: [PATCH 21/43] steal logic from libcudf C++ wheels CI script --- ci/build_wheel.sh | 1 + ci/build_wheel_cudf.sh | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ci/build_wheel.sh b/ci/build_wheel.sh index 7c1fa705faa..ba60542e2f3 100755 --- a/ci/build_wheel.sh +++ b/ci/build_wheel.sh @@ -12,4 +12,5 @@ rapids-generate-version > ./VERSION cd "${package_dir}" +if python -m pip wheel . -w dist -vvv --no-deps --disable-pip-version-check diff --git a/ci/build_wheel_cudf.sh b/ci/build_wheel_cudf.sh index 7ad5e82adaf..4b595ec96fa 100755 --- a/ci/build_wheel_cudf.sh +++ b/ci/build_wheel_cudf.sh @@ -8,9 +8,10 @@ package_dir="python/cudf" export SKBUILD_CMAKE_ARGS="-DUSE_LIBARROW_FROM_PYARROW=ON" # Download the pylibcudf built in the previous step -RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep -python -m pip install ./local-pylibcudf-dep/pylibcudf*.whl +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 /tmp/pylibcudf_dist +echo "pylibcudf-${RAPIDS_PY_CUDA_SUFFIX} @ file://$(echo /tmp/pylibcudf_dist/pylibcudf_*.whl)" > /tmp/constraints.txt +export PIP_CONSTRAINT="/tmp/constraints.txt" ./ci/build_wheel.sh ${package_dir} python -m auditwheel repair -w ${package_dir}/final_dist ${package_dir}/dist/* From 0787a0183563eeb0f3625b5bc1604fa543300b37 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 18:25:40 +0000 Subject: [PATCH 22/43] oops a typo --- ci/build_wheel.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/ci/build_wheel.sh b/ci/build_wheel.sh index ba60542e2f3..7c1fa705faa 100755 --- a/ci/build_wheel.sh +++ b/ci/build_wheel.sh @@ -12,5 +12,4 @@ rapids-generate-version > ./VERSION cd "${package_dir}" -if python -m pip wheel . -w dist -vvv --no-deps --disable-pip-version-check From 026d45ab68020c7e16b7ba3bc5b09e65bcdd58ff Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 19:26:43 +0000 Subject: [PATCH 23/43] assorted fixes --- .devcontainer/cuda12.5-pip/devcontainer.json | 4 ++-- ci/build_wheel_cudf.sh | 3 +-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/.devcontainer/cuda12.5-pip/devcontainer.json b/.devcontainer/cuda12.5-pip/devcontainer.json index beab2940176..2416960e0f9 100644 --- a/.devcontainer/cuda12.5-pip/devcontainer.json +++ b/.devcontainer/cuda12.5-pip/devcontainer.json @@ -15,10 +15,10 @@ ], "hostRequirements": {"gpu": "optional"}, "features": { - "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils:24.10": {} + "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils:24.10": {} }, "overrideFeatureInstallOrder": [ - "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils" + "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils" ], "initializeCommand": ["/bin/bash", "-c", "mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config/pip,local/share/${localWorkspaceFolderBasename}-cuda12.5-venvs}"], "postAttachCommand": ["/bin/bash", "-c", "if [ ${CODESPACES:-false} = 'true' ]; then . devcontainer-utils-post-attach-command; . rapids-post-attach-command; fi"], diff --git a/ci/build_wheel_cudf.sh b/ci/build_wheel_cudf.sh index 4b595ec96fa..7c0fb1efebe 100755 --- a/ci/build_wheel_cudf.sh +++ b/ci/build_wheel_cudf.sh @@ -8,6 +8,7 @@ package_dir="python/cudf" export SKBUILD_CMAKE_ARGS="-DUSE_LIBARROW_FROM_PYARROW=ON" # Download the pylibcudf built in the previous step +RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 /tmp/pylibcudf_dist echo "pylibcudf-${RAPIDS_PY_CUDA_SUFFIX} @ file://$(echo /tmp/pylibcudf_dist/pylibcudf_*.whl)" > /tmp/constraints.txt @@ -16,6 +17,4 @@ export PIP_CONSTRAINT="/tmp/constraints.txt" python -m auditwheel repair -w ${package_dir}/final_dist ${package_dir}/dist/* - -RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-upload-wheels-to-s3 ${package_dir}/final_dist From 73ff5fb12786a9c7b074d4dc63e529953e78b949 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 20:51:29 +0000 Subject: [PATCH 24/43] fix dependencies again --- ci/test_wheel_cudf_polars.sh | 4 +- .../all_cuda-118_arch-x86_64.yaml | 1 + .../all_cuda-125_arch-x86_64.yaml | 1 + dependencies.yaml | 62 +++++++++++++++++-- python/cudf/pyproject.toml | 1 + 5 files changed, 61 insertions(+), 8 deletions(-) diff --git a/ci/test_wheel_cudf_polars.sh b/ci/test_wheel_cudf_polars.sh index c57b94c44b7..357d4170d47 100755 --- a/ci/test_wheel_cudf_polars.sh +++ b/ci/test_wheel_cudf_polars.sh @@ -21,8 +21,8 @@ RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" RAPIDS_PY_WHEEL_NAME="cudf_polars_${RAPIDS_PY_CUDA_SUFFIX}" RAPIDS_PY_WHEEL_PURE="1" rapids-download-wheels-from-s3 ./dist # Download the cudf built in the previous step -RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-cudf-dep -python -m pip install ./local-cudf-dep/cudf*.whl +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep +python -m pip install ./local-pylibcudf-dep/pylibcudf*.whl rapids-logger "Install cudf_polars" python -m pip install $(echo ./dist/cudf_polars*.whl)[test] diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index d04804cafaf..7372a11b7d0 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -65,6 +65,7 @@ dependencies: - pandas>=2.0,<2.2.3dev0 - pandoc - pip +- polars>=1.0,<1.3 - pre-commit - ptxcompiler - pyarrow==16.1.0.* diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index e2c3558030d..36b2daed91d 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -63,6 +63,7 @@ dependencies: - pandas>=2.0,<2.2.3dev0 - pandoc - pip +- polars>=1.0,<1.3 - pre-commit - pyarrow==16.1.0.* - pydata-sphinx-theme!=0.14.2 diff --git a/dependencies.yaml b/dependencies.yaml index 3cc4c56c8a3..519e9b377dd 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -11,6 +11,7 @@ files: - build_all - build_cpp - build_python_common + - build_python_pylibcudf - build_python_cudf - cuda - cuda_version @@ -23,6 +24,8 @@ files: - rapids_build_setuptools - run_common - run_cudf + - run_cudf_polars + - run_pylibcudf - run_dask_cudf - run_custreamz - test_cpp @@ -77,14 +80,14 @@ files: - docs - libarrow_run - py_version - py_rapids_build_cudf: + py_build_cudf: output: pyproject pyproject_dir: python/cudf extras: table: build-system includes: - rapids_build_skbuild - py_build_cudf: + py_rapids_build_cudf: output: pyproject pyproject_dir: python/cudf extras: @@ -94,6 +97,7 @@ files: - build_base - build_python_common - build_python_cudf + - pylibcudf_build_dep py_run_cudf: output: pyproject pyproject_dir: python/cudf @@ -114,7 +118,7 @@ files: includes: - test_python_common - test_python_cudf - py_rapids_build_cudf: + py_rapids_build_pylibcudf: output: pyproject pyproject_dir: python/pylibcudf extras: @@ -130,7 +134,7 @@ files: includes: - build_base - build_python_common - - build_python_cudf + - build_python_pylibcudf py_run_pylibcudf: output: pyproject pyproject_dir: python/pylibcudf @@ -363,11 +367,36 @@ dependencies: # Sync with conda build constraint & wheel run constraint. # TODO: Change to `2.0.*` for NumPy 2 - numpy==1.23.* - build_python_cudf: + build_python_pylibcudf: common: - output_types: conda packages: - &rmm_unsuffixed rmm==24.10.*,>=0.0.0a0 + - output_types: requirements + packages: + # pip recognizes the index as a global option for the requirements.txt file + # This index is needed for rmm-cu{11,12}. + - --extra-index-url=https://pypi.nvidia.com + - --extra-index-url=https://pypi.anaconda.org/rapidsai-wheels-nightly/simple + specific: + - output_types: [requirements, pyproject] + matrices: + - matrix: + cuda: "12.*" + cuda_suffixed: "true" + packages: + - rmm-cu12==24.10.*,>=0.0.0a0 + - matrix: + cuda: "11.*" + cuda_suffixed: "true" + packages: + - rmm-cu11==24.10.*,>=0.0.0a0 + - {matrix: null, packages: [*rmm_unsuffixed]} + build_python_cudf: + common: + - output_types: conda + packages: + - *rmm_unsuffixed - pip - pip: - git+https://github.com/python-streamz/streamz.git@master @@ -386,12 +415,33 @@ dependencies: cuda_suffixed: "true" packages: - rmm-cu12==24.10.*,>=0.0.0a0 + - pylibcudf-cu12==24.10.*,>=0.0.0a0 - matrix: cuda: "11.*" cuda_suffixed: "true" packages: - rmm-cu11==24.10.*,>=0.0.0a0 + - pylibcudf-cu11==24.10.*,>=0.0.0a0 - {matrix: null, packages: [*rmm_unsuffixed]} + pylibcudf_build_dep: + common: + - output_types: conda + packages: + - &pylibcudf_unsuffixed pylibcudf==24.10.*,>=0.0.0a0 + specific: + - output_types: [pyproject] + matrices: + - matrix: + cuda: "12.*" + cuda_suffixed: "true" + packages: + - pylibcudf-cu12==24.10.*,>=0.0.0a0 + - matrix: + cuda: "11.*" + cuda_suffixed: "true" + packages: + - pylibcudf-cu11==24.10.*,>=0.0.0a0 + - {matrix: null, packages: [*pylibcudf_unsuffixed]} libarrow_build: common: - output_types: conda @@ -814,7 +864,7 @@ dependencies: common: - output_types: conda packages: - - &pylibcudf_unsuffixed pylibcudf==24.10.*,>=0.0.0a0 + - *pylibcudf_unsuffixed - output_types: requirements packages: # pip recognizes the index as a global option for the requirements.txt file diff --git a/python/cudf/pyproject.toml b/python/cudf/pyproject.toml index 8fd1adb7d73..6afd5c6450e 100644 --- a/python/cudf/pyproject.toml +++ b/python/cudf/pyproject.toml @@ -128,6 +128,7 @@ requires = [ "ninja", "numpy==1.23.*", "pyarrow==16.1.0.*", + "pylibcudf==24.10.*,>=0.0.0a0", "rmm==24.10.*,>=0.0.0a0", ] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. From 07e91192dc964bf8414b9ea52973ec8c52cef211 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 21:32:00 +0000 Subject: [PATCH 25/43] move variant into pylibcudf as well --- python/pylibcudf/CMakeLists.txt | 2 +- python/pylibcudf/pylibcudf/libcudf/interop.pxd | 3 --- python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd | 3 +-- python/pylibcudf/pylibcudf/libcudf/replace.pxd | 3 --- python/pylibcudf/pylibcudf/libcudf/rolling.pxd | 3 --- python/pylibcudf/pylibcudf/libcudf/sorting.pxd | 5 +---- python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd | 3 --- python/{cudf/cudf/_lib => pylibcudf/pylibcudf}/variant.pxd | 0 8 files changed, 3 insertions(+), 19 deletions(-) rename python/{cudf/cudf/_lib => pylibcudf/pylibcudf}/variant.pxd (100%) diff --git a/python/pylibcudf/CMakeLists.txt b/python/pylibcudf/CMakeLists.txt index fa52bc0780a..424d8372280 100644 --- a/python/pylibcudf/CMakeLists.txt +++ b/python/pylibcudf/CMakeLists.txt @@ -75,7 +75,7 @@ if(NOT cudf_FOUND) # libcudf targets are excluded by default above via EXCLUDE_FROM_ALL to remove extraneous # components like headers from libcudacxx, but we do need the libraries. However, we want to - # control where they are installed to. Since there are multiple subpackages of cudf._lib that + # control where they are installed to. Since there are multiple subpackages of pylibcudf that # require access to libcudf, we place the library and all its dependent artifacts in the cudf # directory as a single source of truth and modify the other rpaths appropriately. set(cython_lib_dir pylibcudf) diff --git a/python/pylibcudf/pylibcudf/libcudf/interop.pxd b/python/pylibcudf/pylibcudf/libcudf/interop.pxd index f3fed7a18ec..227dbb024ff 100644 --- a/python/pylibcudf/pylibcudf/libcudf/interop.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/interop.pxd @@ -4,9 +4,6 @@ from libcpp.memory cimport shared_ptr, unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector from pyarrow.lib cimport CScalar, CTable - -from cudf._lib.types import cudf_to_np_types, np_to_cudf_types - from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.scalar.scalar cimport scalar from pylibcudf.libcudf.table.table cimport table diff --git a/python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd b/python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd index 6d3fd4fc742..db6cb0cdfa5 100644 --- a/python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/io/orc_metadata.pxd @@ -6,8 +6,7 @@ from libcpp cimport bool from libcpp.optional cimport optional from libcpp.string cimport string from libcpp.vector cimport vector - -from cudf._lib.variant cimport monostate, variant +from pylibcudf.variant cimport monostate, variant cdef extern from "cudf/io/orc_metadata.hpp" \ diff --git a/python/pylibcudf/pylibcudf/libcudf/replace.pxd b/python/pylibcudf/pylibcudf/libcudf/replace.pxd index 08edf3b824a..4ac44fc946e 100644 --- a/python/pylibcudf/pylibcudf/libcudf/replace.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/replace.pxd @@ -2,9 +2,6 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr - -from cudf._lib.types import cudf_to_np_types, np_to_cudf_types - from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport ( column_view, diff --git a/python/pylibcudf/pylibcudf/libcudf/rolling.pxd b/python/pylibcudf/pylibcudf/libcudf/rolling.pxd index cc468587a15..9e76faa0eba 100644 --- a/python/pylibcudf/pylibcudf/libcudf/rolling.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/rolling.pxd @@ -1,9 +1,6 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. from libcpp.memory cimport unique_ptr - -from cudf._lib.types import cudf_to_np_types, np_to_cudf_types - from pylibcudf.libcudf.aggregation cimport rolling_aggregation from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view diff --git a/python/pylibcudf/pylibcudf/libcudf/sorting.pxd b/python/pylibcudf/pylibcudf/libcudf/sorting.pxd index 4b1705d9bb8..9e899855486 100644 --- a/python/pylibcudf/pylibcudf/libcudf/sorting.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/sorting.pxd @@ -1,12 +1,9 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. +cimport pylibcudf.libcudf.types as libcudf_types from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.types import cudf_to_np_types, np_to_cudf_types - -cimport pylibcudf.libcudf.types as libcudf_types from pylibcudf.libcudf.aggregation cimport rank_method from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view diff --git a/python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd b/python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd index 2b476f69132..7830c9478c2 100644 --- a/python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd +++ b/python/pylibcudf/pylibcudf/libcudf/stream_compaction.pxd @@ -3,9 +3,6 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector - -from cudf._lib.types import cudf_to_np_types, np_to_cudf_types - from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.table.table cimport table diff --git a/python/cudf/cudf/_lib/variant.pxd b/python/pylibcudf/pylibcudf/variant.pxd similarity index 100% rename from python/cudf/cudf/_lib/variant.pxd rename to python/pylibcudf/pylibcudf/variant.pxd From 99c0215b2bc870a033af66c41af58effaad71df0 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 21:37:55 +0000 Subject: [PATCH 26/43] pyarrow.compute import adjustments --- python/pylibcudf/pylibcudf/tests/common/utils.py | 9 +++++---- python/pylibcudf/pylibcudf/tests/test_datetime.py | 3 ++- python/pylibcudf/pylibcudf/tests/test_lists.py | 3 ++- python/pylibcudf/pylibcudf/tests/test_round.py | 5 ++--- .../pylibcudf/pylibcudf/tests/test_string_capitalize.py | 7 ++++--- python/pylibcudf/pylibcudf/tests/test_string_case.py | 7 ++++--- python/pylibcudf/pylibcudf/tests/test_string_contains.py | 3 ++- python/pylibcudf/pylibcudf/tests/test_string_find.py | 5 +++-- python/pylibcudf/pylibcudf/tests/test_string_replace.py | 5 +++-- 9 files changed, 27 insertions(+), 20 deletions(-) diff --git a/python/pylibcudf/pylibcudf/tests/common/utils.py b/python/pylibcudf/pylibcudf/tests/common/utils.py index e92a5fc655f..65958d67e8c 100644 --- a/python/pylibcudf/pylibcudf/tests/common/utils.py +++ b/python/pylibcudf/pylibcudf/tests/common/utils.py @@ -6,6 +6,7 @@ import numpy as np import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from pyarrow.parquet import write_table as pq_write_table @@ -154,13 +155,13 @@ def _flatten_arrays(arr): for lh_arr, rh_arr in zip(lhs, rhs): # Check NaNs positions match # and then filter out nans - lhs_nans = pa.compute.is_nan(lh_arr) - rhs_nans = pa.compute.is_nan(rh_arr) + lhs_nans = pc.is_nan(lh_arr) + rhs_nans = pc.is_nan(rh_arr) assert lhs_nans.equals(rhs_nans) - if pa.compute.any(lhs_nans) or pa.compute.any(rhs_nans): + if pc.any(lhs_nans) or pc.any(rhs_nans): # masks must be equal at this point - mask = pa.compute.fill_null(pa.compute.invert(lhs_nans), True) + mask = pc.fill_null(pc.invert(lhs_nans), True) lh_arr = lh_arr.filter(mask) rh_arr = rh_arr.filter(mask) diff --git a/python/pylibcudf/pylibcudf/tests/test_datetime.py b/python/pylibcudf/pylibcudf/tests/test_datetime.py index 035a1fc8462..d3aa6101e2d 100644 --- a/python/pylibcudf/pylibcudf/tests/test_datetime.py +++ b/python/pylibcudf/pylibcudf/tests/test_datetime.py @@ -3,6 +3,7 @@ import datetime import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -24,6 +25,6 @@ def column(has_nulls): def test_extract_year(column): got = plc.datetime.extract_year(column) # libcudf produces an int16, arrow produces an int64 - expect = pa.compute.year(plc.interop.to_arrow(column)).cast(pa.int16()) + expect = pc.year(plc.interop.to_arrow(column)).cast(pa.int16()) assert_column_eq(expect, got) diff --git a/python/pylibcudf/pylibcudf/tests/test_lists.py b/python/pylibcudf/pylibcudf/tests/test_lists.py index 9176bb536ef..2353a6ff8f9 100644 --- a/python/pylibcudf/pylibcudf/tests/test_lists.py +++ b/python/pylibcudf/pylibcudf/tests/test_lists.py @@ -2,6 +2,7 @@ import numpy as np import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -183,7 +184,7 @@ def test_extract_list_element_scalar(list_column): plc_column = plc.interop.from_arrow(pa.array(list_column)) res = plc.lists.extract_list_element(plc_column, 0) - expect = pa.compute.list_element(list_column, 0) + expect = pc.list_element(list_column, 0) assert_column_eq(expect, res) diff --git a/python/pylibcudf/pylibcudf/tests/test_round.py b/python/pylibcudf/pylibcudf/tests/test_round.py index d6cd40669db..0b30316b9a0 100644 --- a/python/pylibcudf/pylibcudf/tests/test_round.py +++ b/python/pylibcudf/pylibcudf/tests/test_round.py @@ -1,6 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -25,8 +26,6 @@ def test_round(column, round_mode, decimals): "half_to_even": plc.round.RoundingMethod.HALF_EVEN, }[round_mode] got = plc.round.round(column, decimals, method) - expect = pa.compute.round( - plc.interop.to_arrow(column), decimals, round_mode - ) + expect = pc.round(plc.interop.to_arrow(column), decimals, round_mode) assert_column_eq(expect, got) diff --git a/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py b/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py index 143a9343c60..176ccc55b96 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_capitalize.py @@ -1,6 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -33,7 +34,7 @@ def str_data(): def test_capitalize(str_data): pa_data, plc_data = str_data got = plc.strings.capitalize.capitalize(plc_data) - expected = pa.compute.utf8_capitalize(pa_data) + expected = pc.utf8_capitalize(pa_data) assert_column_eq(expected, got) @@ -42,12 +43,12 @@ def test_title(str_data): got = plc.strings.capitalize.title( plc_data, plc.strings.char_types.StringCharacterTypes.CASE_TYPES ) - expected = pa.compute.utf8_title(pa_data) + expected = pc.utf8_title(pa_data) assert_column_eq(expected, got) def test_is_title(str_data): pa_data, plc_data = str_data got = plc.strings.capitalize.is_title(plc_data) - expected = pa.compute.utf8_is_title(pa_data) + expected = pc.utf8_is_title(pa_data) assert_column_eq(expected, got) diff --git a/python/pylibcudf/pylibcudf/tests/test_string_case.py b/python/pylibcudf/pylibcudf/tests/test_string_case.py index 2fd06ab940b..233cc253b14 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_case.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_case.py @@ -1,6 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -16,19 +17,19 @@ def string_col(): def test_to_upper(string_col): plc_col = plc.interop.from_arrow(string_col) got = plc.strings.case.to_upper(plc_col) - expected = pa.compute.utf8_upper(string_col) + expected = pc.utf8_upper(string_col) assert_column_eq(expected, got) def test_to_lower(string_col): plc_col = plc.interop.from_arrow(string_col) got = plc.strings.case.to_lower(plc_col) - expected = pa.compute.utf8_lower(string_col) + expected = pc.utf8_lower(string_col) assert_column_eq(expected, got) def test_swapcase(string_col): plc_col = plc.interop.from_arrow(string_col) got = plc.strings.case.swapcase(plc_col) - expected = pa.compute.utf8_swapcase(string_col) + expected = pc.utf8_swapcase(string_col) assert_column_eq(expected, got) diff --git a/python/pylibcudf/pylibcudf/tests/test_string_contains.py b/python/pylibcudf/pylibcudf/tests/test_string_contains.py index 9a0d9489d73..4f88e09183f 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_contains.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_contains.py @@ -1,6 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -43,7 +44,7 @@ def plc_target_pat(pa_target_scalar): def test_contains_re(target_col, pa_target_scalar, plc_target_pat): pa_target_col, plc_target_col = target_col got = plc.strings.contains.contains_re(plc_target_col, plc_target_pat) - expected = pa.compute.match_substring_regex( + expected = pc.match_substring_regex( pa_target_col, pa_target_scalar.as_py() ) assert_column_eq(got, expected) diff --git a/python/pylibcudf/pylibcudf/tests/test_string_find.py b/python/pylibcudf/pylibcudf/tests/test_string_find.py index f8769fd9ff2..db3b13a5aae 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_find.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_find.py @@ -1,6 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -222,7 +223,7 @@ def test_starts_with(data_col, target_scalar): pa_target_scalar, plc_target_scalar = target_scalar py_target = pa_target_scalar.as_py() got = plc.strings.find.starts_with(plc_data_col, plc_target_scalar) - expected = pa.compute.starts_with(pa_data_col, py_target) + expected = pc.starts_with(pa_data_col, py_target) assert_column_eq(expected, got) @@ -241,7 +242,7 @@ def test_ends_with(data_col, target_scalar): pa_target_scalar, plc_target_scalar = target_scalar py_target = pa_target_scalar.as_py() got = plc.strings.find.ends_with(plc_data_col, plc_target_scalar) - expected = pa.compute.ends_with(pa_data_col, py_target) + expected = pc.ends_with(pa_data_col, py_target) assert_column_eq(expected, got) diff --git a/python/pylibcudf/pylibcudf/tests/test_string_replace.py b/python/pylibcudf/pylibcudf/tests/test_string_replace.py index 71bd734a0cb..5a9c2007b73 100644 --- a/python/pylibcudf/pylibcudf/tests/test_string_replace.py +++ b/python/pylibcudf/pylibcudf/tests/test_string_replace.py @@ -1,6 +1,7 @@ # Copyright (c) 2024, NVIDIA CORPORATION. import pyarrow as pa +import pyarrow.compute as pc import pylibcudf as plc import pytest from utils import assert_column_eq @@ -63,7 +64,7 @@ def test_replace(data_col, scalar_repl_target, scalar_repl, maxrepl): plc_data_col, plc_target, plc_repl, maxrepl ) - expected = pa.compute.replace_substring( + expected = pc.replace_substring( pa_data_col, pattern=pa_target, replacement=pa_repl, @@ -89,7 +90,7 @@ def test_replace_slice(data_col, scalar_repl, startstop): # count_characters on the input, take the max and set stop to that stop = 1000 - expected = pa.compute.utf8_replace_slice(pa_data_col, start, stop, pa_repl) + expected = pc.utf8_replace_slice(pa_data_col, start, stop, pa_repl) assert_column_eq(expected, got) From 89e705f157ac95f655147d36392b4f005bfcdd35 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 22:06:33 +0000 Subject: [PATCH 27/43] go for green? --- python/cudf/cudf/_lib/orc.pyx | 2 +- python/pylibcudf/pylibcudf/__init__.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/python/cudf/cudf/_lib/orc.pyx b/python/cudf/cudf/_lib/orc.pyx index 67c8138a8aa..d506dcd4346 100644 --- a/python/cudf/cudf/_lib/orc.pyx +++ b/python/cudf/cudf/_lib/orc.pyx @@ -57,6 +57,7 @@ from pylibcudf.libcudf.io.types cimport ( ) from pylibcudf.libcudf.table.table_view cimport table_view from pylibcudf.libcudf.types cimport data_type, size_type, type_id +from pylibcudf.variant cimport get_if as std_get_if, holds_alternative from cudf._lib.column cimport Column from cudf._lib.io.utils cimport ( @@ -64,7 +65,6 @@ from cudf._lib.io.utils cimport ( make_source_info, update_column_struct_field_names, ) -from cudf._lib.variant cimport get_if as std_get_if, holds_alternative from cudf._lib.types import SUPPORTED_NUMPY_TO_LIBCUDF_TYPES diff --git a/python/pylibcudf/pylibcudf/__init__.py b/python/pylibcudf/pylibcudf/__init__.py index 9705eba84b1..677fdaf80d0 100644 --- a/python/pylibcudf/pylibcudf/__init__.py +++ b/python/pylibcudf/pylibcudf/__init__.py @@ -12,6 +12,7 @@ filling, groupby, interop, + io, join, lists, merge, From ae9a10158608f5231d86bc62e2dda8ebc9bb456a Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 2 Aug 2024 23:06:12 +0000 Subject: [PATCH 28/43] go for green take 2 --- build.sh | 15 ++++++++++++--- ci/cudf_pandas_scripts/pandas-tests/run.sh | 2 ++ python/cudf/cudf/core/indexed_frame.py | 3 ++- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/build.sh b/build.sh index 52bb1e64d16..957f41aedac 100755 --- a/build.sh +++ b/build.sh @@ -17,11 +17,12 @@ ARGS=$* # script, and that this script resides in the repo dir! REPODIR=$(cd $(dirname $0); pwd) -VALIDARGS="clean libcudf cudf cudfjar dask_cudf benchmarks tests libcudf_kafka cudf_kafka custreamz -v -g -n --pydevelop -l --allgpuarch --disable_nvtx --opensource_nvcomp --show_depr_warn --ptds -h --build_metrics --incl_cache_stats --disable_large_strings" -HELP="$0 [clean] [libcudf] [cudf] [cudfjar] [dask_cudf] [benchmarks] [tests] [libcudf_kafka] [cudf_kafka] [custreamz] [-v] [-g] [-n] [-h] [--cmake-args=\\\"\\\"] +VALIDARGS="clean libcudf pylibcudf cudf cudfjar dask_cudf benchmarks tests libcudf_kafka cudf_kafka custreamz -v -g -n --pydevelop -l --allgpuarch --disable_nvtx --opensource_nvcomp --show_depr_warn --ptds -h --build_metrics --incl_cache_stats --disable_large_strings" +HELP="$0 [clean] [libcudf] [pylibcudf] [cudf] [cudfjar] [dask_cudf] [benchmarks] [tests] [libcudf_kafka] [cudf_kafka] [custreamz] [-v] [-g] [-n] [-h] [--cmake-args=\\\"\\\"] clean - remove all existing build artifacts and configuration (start over) libcudf - build the cudf C++ code only + pylibcudf - build the pylibcudf Python package cudf - build the cudf Python package cudfjar - build cudf JAR with static libcudf using devtoolset toolchain dask_cudf - build the dask_cudf Python package @@ -268,7 +269,7 @@ fi ################################################################################ # Configure, build, and install libcudf -if buildAll || hasArg libcudf || hasArg cudf || hasArg cudfjar; then +if buildAll || hasArg libcudf || hasArg pylibcudf || hasArg cudf || hasArg cudfjar; then if (( ${BUILD_ALL_GPU_ARCH} == 0 )); then CUDF_CMAKE_CUDA_ARCHITECTURES="${CUDF_CMAKE_CUDA_ARCHITECTURES:-NATIVE}" if [[ "$CUDF_CMAKE_CUDA_ARCHITECTURES" == "NATIVE" ]]; then @@ -340,6 +341,14 @@ if buildAll || hasArg libcudf; then fi fi +# Build and install the pylibcudf Python package +if buildAll || hasArg pylibcudf; then + + cd ${REPODIR}/python/pylibcudf + SKBUILD_CMAKE_ARGS="-DCMAKE_PREFIX_PATH=${INSTALL_PREFIX};-DCMAKE_LIBRARY_PATH=${LIBCUDF_BUILD_DIR};-DCMAKE_CUDA_ARCHITECTURES=${CUDF_CMAKE_CUDA_ARCHITECTURES};${EXTRA_CMAKE_ARGS}" \ + python ${PYTHON_ARGS_FOR_INSTALL} . +fi + # Build and install the cudf Python package if buildAll || hasArg cudf; then diff --git a/ci/cudf_pandas_scripts/pandas-tests/run.sh b/ci/cudf_pandas_scripts/pandas-tests/run.sh index 48ee4a05628..8deaeab78a3 100755 --- a/ci/cudf_pandas_scripts/pandas-tests/run.sh +++ b/ci/cudf_pandas_scripts/pandas-tests/run.sh @@ -11,7 +11,9 @@ rapids-logger "Running Pandas tests using $PANDAS_TESTS_BRANCH branch and rapids rapids-logger "PR number: ${RAPIDS_REF_NAME:-"unknown"}" RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-cudf-dep +python -m pip install $(ls ./local-pylibcudf-dep/pylibcudf*.whl) python -m pip install $(ls ./local-cudf-dep/cudf*.whl)[test,pandas-tests] RESULTS_DIR=${RAPIDS_TESTS_DIR:-"$(mktemp -d)"} diff --git a/python/cudf/cudf/core/indexed_frame.py b/python/cudf/cudf/core/indexed_frame.py index 0678ebfdd81..4e745cd2a40 100644 --- a/python/cudf/cudf/core/indexed_frame.py +++ b/python/cudf/cudf/core/indexed_frame.py @@ -22,6 +22,7 @@ import cupy as cp import numpy as np import pandas as pd +import pylibcudf from typing_extensions import Self import cudf @@ -6276,7 +6277,7 @@ def rank( if method not in {"average", "min", "max", "first", "dense"}: raise KeyError(method) - method_enum = libcudf.pylibcudf.aggregation.RankMethod[method.upper()] + method_enum = pylibcudf.aggregation.RankMethod[method.upper()] if na_option not in {"keep", "top", "bottom"}: raise ValueError( "na_option must be one of 'keep', 'top', or 'bottom'" From 4c3391887416434f0e1007565cf07f3b0e902280 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Sat, 3 Aug 2024 00:25:48 +0000 Subject: [PATCH 29/43] install pylibcudf more places --- ci/cudf_pandas_scripts/run_tests.sh | 2 ++ ci/test_wheel_dask_cudf.sh | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ci/cudf_pandas_scripts/run_tests.sh b/ci/cudf_pandas_scripts/run_tests.sh index 1c3b99953fb..bfb655db3ca 100755 --- a/ci/cudf_pandas_scripts/run_tests.sh +++ b/ci/cudf_pandas_scripts/run_tests.sh @@ -36,7 +36,9 @@ if [ "$no_cudf" = true ]; then echo "Skipping cudf install" else RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" + RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-cudf-dep + python -m pip install $(ls ./local-pylibcudf-dep/pylibcudf*.whl) python -m pip install $(ls ./local-cudf-dep/cudf*.whl)[test,cudf-pandas-tests] fi diff --git a/ci/test_wheel_dask_cudf.sh b/ci/test_wheel_dask_cudf.sh index c3800d3cc25..2c36e4caca8 100755 --- a/ci/test_wheel_dask_cudf.sh +++ b/ci/test_wheel_dask_cudf.sh @@ -7,7 +7,9 @@ RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" RAPIDS_PY_WHEEL_NAME="dask_cudf_${RAPIDS_PY_CUDA_SUFFIX}" RAPIDS_PY_WHEEL_PURE="1" rapids-download-wheels-from-s3 ./dist # Download the cudf built in the previous step +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-cudf-dep +python -m pip install ./local-pylibcudf-dep/pylibcudf*.whl python -m pip install ./local-cudf-dep/cudf*.whl # echo to expand wildcard before adding `[extra]` requires for pip From 4de3f4471f61100c6cd4236a2127f17215f343b9 Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Wed, 7 Aug 2024 13:20:22 -0700 Subject: [PATCH 30/43] make conda packages for plc --- conda/recipes/pylibcudf/build.sh | 4 + .../recipes/pylibcudf/conda_build_config.yaml | 20 +++ conda/recipes/pylibcudf/meta.yaml | 125 ++++++++++++++++++ 3 files changed, 149 insertions(+) create mode 100644 conda/recipes/pylibcudf/build.sh create mode 100644 conda/recipes/pylibcudf/conda_build_config.yaml create mode 100644 conda/recipes/pylibcudf/meta.yaml diff --git a/conda/recipes/pylibcudf/build.sh b/conda/recipes/pylibcudf/build.sh new file mode 100644 index 00000000000..483346504db --- /dev/null +++ b/conda/recipes/pylibcudf/build.sh @@ -0,0 +1,4 @@ +# Copyright (c) 2018-2024, NVIDIA CORPORATION. + +# This assumes the script is executed from the root of the repo directory +./build.sh pylibcudf diff --git a/conda/recipes/pylibcudf/conda_build_config.yaml b/conda/recipes/pylibcudf/conda_build_config.yaml new file mode 100644 index 00000000000..af894cccda0 --- /dev/null +++ b/conda/recipes/pylibcudf/conda_build_config.yaml @@ -0,0 +1,20 @@ +c_compiler_version: + - 11 + +cxx_compiler_version: + - 11 + +c_stdlib: + - sysroot + +c_stdlib_version: + - "2.17" + +cmake_version: + - ">=3.26.4,!=3.30.0" + +cuda_compiler: + - cuda-nvcc + +cuda11_compiler: + - nvcc diff --git a/conda/recipes/pylibcudf/meta.yaml b/conda/recipes/pylibcudf/meta.yaml new file mode 100644 index 00000000000..45555c032ed --- /dev/null +++ b/conda/recipes/pylibcudf/meta.yaml @@ -0,0 +1,125 @@ +# Copyright (c) 2018-2024, NVIDIA CORPORATION. + +{% set version = environ['RAPIDS_PACKAGE_VERSION'].lstrip('v') %} +{% set minor_version = version.split('.')[0] + '.' + version.split('.')[1] %} +{% set py_version = environ['CONDA_PY'] %} +{% set cuda_version = '.'.join(environ['RAPIDS_CUDA_VERSION'].split('.')[:2]) %} +{% set cuda_major = cuda_version.split('.')[0] %} +{% set date_string = environ['RAPIDS_DATE_STRING'] %} + +package: + name: cudf + version: {{ version }} + +source: + path: ../../.. + +build: + number: {{ GIT_DESCRIBE_NUMBER }} + string: cuda{{ cuda_major }}_py{{ py_version }}_{{ date_string }}_{{ GIT_DESCRIBE_HASH }}_{{ GIT_DESCRIBE_NUMBER }} + script_env: + - AWS_ACCESS_KEY_ID + - AWS_SECRET_ACCESS_KEY + - AWS_SESSION_TOKEN + - CMAKE_C_COMPILER_LAUNCHER + - CMAKE_CUDA_COMPILER_LAUNCHER + - CMAKE_CXX_COMPILER_LAUNCHER + - CMAKE_GENERATOR + - PARALLEL_LEVEL + - SCCACHE_BUCKET + - SCCACHE_IDLE_TIMEOUT + - SCCACHE_REGION + - SCCACHE_S3_KEY_PREFIX=cudf-aarch64 # [aarch64] + - SCCACHE_S3_KEY_PREFIX=cudf-linux64 # [linux64] + - SCCACHE_S3_USE_SSL + - SCCACHE_S3_NO_CREDENTIALS + ignore_run_exports: + # libcudf's run_exports pinning is looser than we would like + - libcudf + ignore_run_exports_from: + {% if cuda_major == "11" %} + - {{ compiler('cuda11') }} + {% else %} + - {{ compiler('cuda') }} + - cuda-cudart-dev + - libcufile-dev # [linux64] + {% endif %} + +requirements: + build: + - cmake {{ cmake_version }} + - ninja + - {{ compiler('c') }} + - {{ compiler('cxx') }} + {% if cuda_major == "11" %} + - {{ compiler('cuda11') }} ={{ cuda_version }} + {% else %} + - {{ compiler('cuda') }} + {% endif %} + - cuda-version ={{ cuda_version }} + - {{ stdlib("c") }} + host: + - python + - cython >=3.0.3 + - rapids-build-backend >=0.3.0,<0.4.0.dev0 + - scikit-build-core >=0.7.0 + - dlpack >=0.8,<1.0 + # TODO: Change to `2.0` for NumPy 2 + - numpy 1.23 + - pyarrow ==16.1.0.* + - libcudf ={{ version }} + - rmm ={{ minor_version }} + {% if cuda_major == "11" %} + - cudatoolkit + {% else %} + - cuda-cudart-dev + - cuda-nvrtc + - libcufile-dev # [linux64] + {% endif %} + - cuda-version ={{ cuda_version }} + run: + - python + - typing_extensions >=4.0.0 + - pandas >=2.0,<2.2.3dev0 + - cupy >=12.0.0 + - numba >=0.57 + # TODO: Update `numpy` in `host` when dropping `<2.0a0` + - numpy >=1.23,<2.0a0 + - {{ pin_compatible('pyarrow', max_pin='x.x') }} + - libcudf ={{ version }} + - {{ pin_compatible('rmm', max_pin='x.x') }} + - fsspec >=0.6.0 + {% if cuda_major == "11" %} + - cudatoolkit + - ptxcompiler >=0.7.0 + - cubinlinker # CUDA enhanced compatibility. + - cuda-python >=11.7.1,<12.0a0 + {% else %} + - cuda-cudart + - libcufile # [linux64] + # Needed by Numba for CUDA support + - cuda-nvcc-impl + # TODO: Add nvjitlink here + # xref: https://github.com/rapidsai/cudf/issues/12822 + - cuda-nvrtc + - cuda-python >=12.0,<13.0a0 + - pynvjitlink + {% endif %} + - {{ pin_compatible('cuda-version', max_pin='x', min_pin='x') }} + - nvtx >=0.2.1 + - packaging + - cachetools + - rich + +test: + requires: + - cuda-version ={{ cuda_version }} + imports: + - pylibcudf + +about: + home: https://rapids.ai/ + license: Apache-2.0 + license_family: APACHE + license_file: LICENSE + summary: cuDF GPU DataFrame core library From 3be33da2d53828f34814f0626d233a6f225b21df Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Thu, 8 Aug 2024 06:40:54 -0700 Subject: [PATCH 31/43] change summary --- conda/recipes/pylibcudf/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conda/recipes/pylibcudf/meta.yaml b/conda/recipes/pylibcudf/meta.yaml index 45555c032ed..609770d43a1 100644 --- a/conda/recipes/pylibcudf/meta.yaml +++ b/conda/recipes/pylibcudf/meta.yaml @@ -122,4 +122,4 @@ about: license: Apache-2.0 license_family: APACHE license_file: LICENSE - summary: cuDF GPU DataFrame core library + summary: pylibcudf library From 83ca1c16195d2a0eee0bf8067855e07447f3374c Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Thu, 8 Aug 2024 15:03:53 -0700 Subject: [PATCH 32/43] pylibcudf conda build --- ci/build_python.sh | 9 ++++----- python/pylibcudf/pyproject.toml | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/ci/build_python.sh b/ci/build_python.sh index 3705786f8bc..71f37428e08 100755 --- a/ci/build_python.sh +++ b/ci/build_python.sh @@ -23,11 +23,10 @@ CPP_CHANNEL=$(rapids-download-conda-from-s3 cpp) # node works correctly # With boa installed conda build forwards to the boa builder -# TODO: enable once conda recipes written for pylibcudf -# RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ -# --no-test \ -# --channel "${CPP_CHANNEL}" \ -# conda/recipes/pylibcudf +RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ + --no-test \ + --channel "${CPP_CHANNEL}" \ + conda/recipes/pylibcudf RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ --no-test \ diff --git a/python/pylibcudf/pyproject.toml b/python/pylibcudf/pyproject.toml index d9f4ffc0759..7467a3cd64b 100644 --- a/python/pylibcudf/pyproject.toml +++ b/python/pylibcudf/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "rapids_build_backend.build" requires = [ "rapids-build-backend>=0.3.0,<0.4.0.dev0", - "scikit-build-core[pyproject]>=0.7.0", + "scikit-build-core[pyproject]>=0.10.0", ] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. [project] From 1d913f0ead1ed042c602c67421d3c58c742c7702 Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Mon, 12 Aug 2024 07:36:36 -0700 Subject: [PATCH 33/43] clean recipe; remove find_package command --- conda/recipes/pylibcudf/meta.yaml | 6 +++--- python/pylibcudf/CMakeLists.txt | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/conda/recipes/pylibcudf/meta.yaml b/conda/recipes/pylibcudf/meta.yaml index 609770d43a1..858b934d006 100644 --- a/conda/recipes/pylibcudf/meta.yaml +++ b/conda/recipes/pylibcudf/meta.yaml @@ -8,7 +8,7 @@ {% set date_string = environ['RAPIDS_DATE_STRING'] %} package: - name: cudf + name: pylibcudf version: {{ version }} source: @@ -29,8 +29,8 @@ build: - SCCACHE_BUCKET - SCCACHE_IDLE_TIMEOUT - SCCACHE_REGION - - SCCACHE_S3_KEY_PREFIX=cudf-aarch64 # [aarch64] - - SCCACHE_S3_KEY_PREFIX=cudf-linux64 # [linux64] + - SCCACHE_S3_KEY_PREFIX=pylibcudf-aarch64 # [aarch64] + - SCCACHE_S3_KEY_PREFIX=pylibcudf-linux64 # [linux64] - SCCACHE_S3_USE_SSL - SCCACHE_S3_NO_CREDENTIALS ignore_run_exports: diff --git a/python/pylibcudf/CMakeLists.txt b/python/pylibcudf/CMakeLists.txt index 424d8372280..3c9dfcf1ada 100644 --- a/python/pylibcudf/CMakeLists.txt +++ b/python/pylibcudf/CMakeLists.txt @@ -53,7 +53,7 @@ if(FIND_CUDF_CPP) include(../../cpp/cmake/thirdparty/get_arrow.cmake) endif() - find_package(cudf "${RAPIDS_VERSION}" REQUIRED) + # find_package(cudf "${RAPIDS_VERSION}" REQUIRED) # an installed version of libcudf doesn't provide the dlpack headers so we need to download dlpack # for the interop.pyx From a7b977a329836f68e953f149b888fcf9fd51735f Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Mon, 12 Aug 2024 11:08:40 -0700 Subject: [PATCH 34/43] add plc dep --- conda/environments/all_cuda-118_arch-x86_64.yaml | 1 + conda/environments/all_cuda-125_arch-x86_64.yaml | 1 + dependencies.yaml | 1 + 3 files changed, 3 insertions(+) diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index 0f9d9a7ca5b..bd44d376d7e 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -70,6 +70,7 @@ dependencies: - ptxcompiler - pyarrow==16.1.0.* - pydata-sphinx-theme!=0.14.2 +- pylibcudf==24.10.*,>=0.0.0a0 - pytest-benchmark - pytest-cases>=3.8.2 - pytest-cov diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index 71fed7db0e0..a9bfcad5d4e 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -67,6 +67,7 @@ dependencies: - pre-commit - pyarrow==16.1.0.* - pydata-sphinx-theme!=0.14.2 +- pylibcudf==24.10.*,>=0.0.0a0 - pynvjitlink>=0.0.0a0 - pytest-benchmark - pytest-cases>=3.8.2 diff --git a/dependencies.yaml b/dependencies.yaml index f678ee5edf8..7e1d490fad8 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -33,6 +33,7 @@ files: - test_python_cudf - test_python_dask_cudf - depends_on_cupy + - depends_on_pylibcudf test_static_build: output: none includes: From 234cd452a9cf558f4555c11f4e23e69d272852ae Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Mon, 12 Aug 2024 20:52:42 +0000 Subject: [PATCH 35/43] try changing find_package back --- python/pylibcudf/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/pylibcudf/CMakeLists.txt b/python/pylibcudf/CMakeLists.txt index 3c9dfcf1ada..424d8372280 100644 --- a/python/pylibcudf/CMakeLists.txt +++ b/python/pylibcudf/CMakeLists.txt @@ -53,7 +53,7 @@ if(FIND_CUDF_CPP) include(../../cpp/cmake/thirdparty/get_arrow.cmake) endif() - # find_package(cudf "${RAPIDS_VERSION}" REQUIRED) + find_package(cudf "${RAPIDS_VERSION}" REQUIRED) # an installed version of libcudf doesn't provide the dlpack headers so we need to download dlpack # for the interop.pyx From cb1b3f0b4c45062f92b8dfcde980c002e4458f4b Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Mon, 12 Aug 2024 22:01:00 +0000 Subject: [PATCH 36/43] tweak scripts/recipes --- ci/build_python.sh | 1 + conda/recipes/cudf/meta.yaml | 2 ++ conda/recipes/cudf_kafka/meta.yaml | 4 ++-- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ci/build_python.sh b/ci/build_python.sh index 71f37428e08..2e3f70ba767 100755 --- a/ci/build_python.sh +++ b/ci/build_python.sh @@ -31,6 +31,7 @@ RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ --no-test \ --channel "${CPP_CHANNEL}" \ + --channel "${RAPIDS_CONDA_BLD_OUTPUT_DIR}" \ conda/recipes/cudf RAPIDS_PACKAGE_VERSION=$(head -1 ./VERSION) rapids-conda-retry mambabuild \ diff --git a/conda/recipes/cudf/meta.yaml b/conda/recipes/cudf/meta.yaml index 8d7ef63715b..7e86147732e 100644 --- a/conda/recipes/cudf/meta.yaml +++ b/conda/recipes/cudf/meta.yaml @@ -68,6 +68,7 @@ requirements: - numpy 1.23 - pyarrow ==16.1.0.* - libcudf ={{ version }} + - pylibcudf ={{ version }} - rmm ={{ minor_version }} {% if cuda_major == "11" %} - cudatoolkit @@ -87,6 +88,7 @@ requirements: - numpy >=1.23,<2.0a0 - {{ pin_compatible('pyarrow', max_pin='x.x') }} - libcudf ={{ version }} + - pylibcudf ={{ version }} - {{ pin_compatible('rmm', max_pin='x.x') }} - fsspec >=0.6.0 {% if cuda_major == "11" %} diff --git a/conda/recipes/cudf_kafka/meta.yaml b/conda/recipes/cudf_kafka/meta.yaml index 748a32e5518..d04d9b21a46 100644 --- a/conda/recipes/cudf_kafka/meta.yaml +++ b/conda/recipes/cudf_kafka/meta.yaml @@ -58,7 +58,7 @@ requirements: - python - cython >=3.0.3 - cuda-version ={{ cuda_version }} - - cudf ={{ version }} + - pylibcudf ={{ version }} - libcudf_kafka ={{ version }} - rapids-build-backend >=0.3.0,<0.4.0.dev0 - scikit-build-core >=0.10.0 @@ -69,7 +69,7 @@ requirements: - python - {{ pin_compatible('cuda-version', max_pin='x', min_pin='x') }} - libcudf_kafka ={{ version }} - - cudf ={{ version }} + - pylibcudf ={{ version }} {% if cuda_major != "11" %} - cuda-cudart {% endif %} From 10e9f890489f7811eefc2e3521c000c0a0780a74 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Tue, 13 Aug 2024 00:31:06 +0000 Subject: [PATCH 37/43] fix docs and revert dependencies changes --- .../all_cuda-118_arch-x86_64.yaml | 1 - .../all_cuda-125_arch-x86_64.yaml | 1 - dependencies.yaml | 29 +++++++++++-------- .../api_docs/pylibcudf/strings/capitalize.rst | 2 +- .../api_docs/pylibcudf/strings/char_types.rst | 2 +- .../api_docs/pylibcudf/strings/find.rst | 2 +- .../pylibcudf/strings/regex_flags.rst | 2 +- .../pylibcudf/strings/regex_program.rst | 2 +- python/pylibcudf/pyproject.toml | 18 ++---------- 9 files changed, 24 insertions(+), 35 deletions(-) diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index bd44d376d7e..0f9d9a7ca5b 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -70,7 +70,6 @@ dependencies: - ptxcompiler - pyarrow==16.1.0.* - pydata-sphinx-theme!=0.14.2 -- pylibcudf==24.10.*,>=0.0.0a0 - pytest-benchmark - pytest-cases>=3.8.2 - pytest-cov diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index a9bfcad5d4e..71fed7db0e0 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -67,7 +67,6 @@ dependencies: - pre-commit - pyarrow==16.1.0.* - pydata-sphinx-theme!=0.14.2 -- pylibcudf==24.10.*,>=0.0.0a0 - pynvjitlink>=0.0.0a0 - pytest-benchmark - pytest-cases>=3.8.2 diff --git a/dependencies.yaml b/dependencies.yaml index 7e1d490fad8..7fbe5a64e06 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -5,7 +5,6 @@ files: matrix: cuda: ["11.8", "12.5"] arch: [x86_64] - # TODO: add pylibcudf here? includes: - build_base - build_all @@ -33,7 +32,6 @@ files: - test_python_cudf - test_python_dask_cudf - depends_on_cupy - - depends_on_pylibcudf test_static_build: output: none includes: @@ -144,16 +142,15 @@ files: includes: - run_pylibcudf - pyarrow_run - # TODO: finishme - # py_test_pylibcudf: - # output: pyproject - # pyproject_dir: python/pylibcudf - # extras: - # table: project.optional-dependencies - # key: test - # includes: - # - test_python_common - # - test_python_cudf + py_test_pylibcudf: + output: pyproject + pyproject_dir: python/pylibcudf + extras: + table: project.optional-dependencies + key: test + includes: + - test_python_common + - test_python_pylibcudf py_test_pandas_cudf: output: pyproject pyproject_dir: python/cudf @@ -817,6 +814,14 @@ dependencies: - pytest<8 - pytest-cov - pytest-xdist + test_python_pylibcudf: + common: + - output_types: [conda, requirements, pyproject] + packages: + - fastavro>=0.22.9 + - hypothesis + - numpy + - pandas test_python_cudf: common: - output_types: [conda, requirements, pyproject] diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/capitalize.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/capitalize.rst index 578b2b75e37..6b9ed8d47e7 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/capitalize.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/capitalize.rst @@ -2,5 +2,5 @@ capitalize ========== -.. automodule:: cudf._lib.pylibcudf.strings.capitalize +.. automodule:: pylibcudf.strings.capitalize :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/char_types.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/char_types.rst index 577ec34915b..896fa6086db 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/char_types.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/char_types.rst @@ -2,5 +2,5 @@ char_types ========== -.. automodule:: cudf._lib.pylibcudf.strings.char_types +.. automodule:: pylibcudf.strings.char_types :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/find.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/find.rst index 61d4079e9a3..7c540e99929 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/find.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/find.rst @@ -2,5 +2,5 @@ find ==== -.. automodule:: cudf._lib.pylibcudf.strings.find +.. automodule:: pylibcudf.strings.find :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_flags.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_flags.rst index 0126b6a3706..53fd712d864 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_flags.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_flags.rst @@ -2,5 +2,5 @@ regex_flags =========== -.. automodule:: cudf._lib.pylibcudf.strings.regex_flags +.. automodule:: pylibcudf.strings.regex_flags :members: diff --git a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_program.rst b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_program.rst index 2f398186d51..6f3d2f6681c 100644 --- a/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_program.rst +++ b/docs/cudf/source/user_guide/api_docs/pylibcudf/strings/regex_program.rst @@ -2,5 +2,5 @@ regex_program ============= -.. automodule:: cudf._lib.pylibcudf.strings.regex_program +.. automodule:: pylibcudf.strings.regex_program :members: diff --git a/python/pylibcudf/pyproject.toml b/python/pylibcudf/pyproject.toml index 7467a3cd64b..d6966f6e2ff 100644 --- a/python/pylibcudf/pyproject.toml +++ b/python/pylibcudf/pyproject.toml @@ -38,27 +38,13 @@ classifiers = [ [project.optional-dependencies] test = [ - "cramjam", "fastavro>=0.22.9", "hypothesis", - "msgpack", - "pytest-benchmark", - "pytest-cases>=3.8.2", + "numpy", + "pandas", "pytest-cov", "pytest-xdist", "pytest<8", - "scipy", - "tokenizers==0.15.2", - "transformers==4.39.3", - "tzdata", -] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. -pandas-tests = [ - "pandas[test, pyarrow, performance, computation, fss, excel, parquet, feather, hdf5, spss, html, xml, plot, output-formatting, clipboard, compression]", - "pytest-reportlog", -] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. -cudf-pandas-tests = [ - "ipython", - "openpyxl", ] # This list was generated by `rapids-dependency-file-generator`. To make changes, edit ../../dependencies.yaml and run `rapids-dependency-file-generator`. [project.urls] From 0d7d4a7503c2df03b368b8e453add281eded034b Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Tue, 13 Aug 2024 05:35:02 -0700 Subject: [PATCH 38/43] remove unecessary run dep --- conda/recipes/pylibcudf/meta.yaml | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/conda/recipes/pylibcudf/meta.yaml b/conda/recipes/pylibcudf/meta.yaml index 858b934d006..e298d50c4e6 100644 --- a/conda/recipes/pylibcudf/meta.yaml +++ b/conda/recipes/pylibcudf/meta.yaml @@ -81,35 +81,18 @@ requirements: - python - typing_extensions >=4.0.0 - pandas >=2.0,<2.2.3dev0 - - cupy >=12.0.0 - - numba >=0.57 # TODO: Update `numpy` in `host` when dropping `<2.0a0` - numpy >=1.23,<2.0a0 - {{ pin_compatible('pyarrow', max_pin='x.x') }} - - libcudf ={{ version }} - {{ pin_compatible('rmm', max_pin='x.x') }} - fsspec >=0.6.0 {% if cuda_major == "11" %} - - cudatoolkit - - ptxcompiler >=0.7.0 - - cubinlinker # CUDA enhanced compatibility. - cuda-python >=11.7.1,<12.0a0 {% else %} - - cuda-cudart - - libcufile # [linux64] - # Needed by Numba for CUDA support - - cuda-nvcc-impl - # TODO: Add nvjitlink here - # xref: https://github.com/rapidsai/cudf/issues/12822 - - cuda-nvrtc - cuda-python >=12.0,<13.0a0 - - pynvjitlink {% endif %} - - {{ pin_compatible('cuda-version', max_pin='x', min_pin='x') }} - nvtx >=0.2.1 - packaging - - cachetools - - rich test: requires: From 27b3711f86c857cd1f20b3e42bfa44aebf8fb228 Mon Sep 17 00:00:00 2001 From: Matthew Murray Date: Wed, 14 Aug 2024 15:48:32 -0700 Subject: [PATCH 39/43] Address reviews --- .devcontainer/cuda12.5-conda/devcontainer.json | 4 ++-- .devcontainer/cuda12.5-pip/devcontainer.json | 4 ++-- ci/test_wheel_cudf.sh | 10 ++++------ conda/recipes/pylibcudf/meta.yaml | 2 +- dependencies.yaml | 12 +----------- python/pylibcudf/pyproject.toml | 3 ++- 6 files changed, 12 insertions(+), 23 deletions(-) diff --git a/.devcontainer/cuda12.5-conda/devcontainer.json b/.devcontainer/cuda12.5-conda/devcontainer.json index 4d61427b2ce..c1924243506 100644 --- a/.devcontainer/cuda12.5-conda/devcontainer.json +++ b/.devcontainer/cuda12.5-conda/devcontainer.json @@ -15,10 +15,10 @@ ], "hostRequirements": {"gpu": "optional"}, "features": { - "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils:24.10": {} + "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils:24.10": {} }, "overrideFeatureInstallOrder": [ - "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils" + "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils" ], "initializeCommand": ["/bin/bash", "-c", "mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config,conda/pkgs,conda/${localWorkspaceFolderBasename}-cuda12.5-envs}"], "postAttachCommand": ["/bin/bash", "-c", "if [ ${CODESPACES:-false} = 'true' ]; then . devcontainer-utils-post-attach-command; . rapids-post-attach-command; fi"], diff --git a/.devcontainer/cuda12.5-pip/devcontainer.json b/.devcontainer/cuda12.5-pip/devcontainer.json index 2416960e0f9..beab2940176 100644 --- a/.devcontainer/cuda12.5-pip/devcontainer.json +++ b/.devcontainer/cuda12.5-pip/devcontainer.json @@ -15,10 +15,10 @@ ], "hostRequirements": {"gpu": "optional"}, "features": { - "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils:24.10": {} + "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils:24.10": {} }, "overrideFeatureInstallOrder": [ - "ghcr.io/lithomas1/devcontainers/features/rapids-build-utils" + "ghcr.io/rapidsai/devcontainers/features/rapids-build-utils" ], "initializeCommand": ["/bin/bash", "-c", "mkdir -m 0755 -p ${localWorkspaceFolder}/../.{aws,cache,config/pip,local/share/${localWorkspaceFolderBasename}-cuda12.5-venvs}"], "postAttachCommand": ["/bin/bash", "-c", "if [ ${CODESPACES:-false} = 'true' ]; then . devcontainer-utils-post-attach-command; . rapids-post-attach-command; fi"], diff --git a/ci/test_wheel_cudf.sh b/ci/test_wheel_cudf.sh index ec11bcba19b..7284a412bce 100755 --- a/ci/test_wheel_cudf.sh +++ b/ci/test_wheel_cudf.sh @@ -5,13 +5,11 @@ set -eou pipefail # Download the pylibcudf built in the previous step RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" -RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep -python -m pip install ./local-pylibcudf-dep/pylibcudf*.whl +rapids-download-wheels-from-s3 ./local-pylibcudf-dep "pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" +rapids-download-wheels-from-s3 ./dist "cudf_${RAPIDS_PY_CUDA_SUFFIX}" -# Install cudf -RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./dist -# echo to expand wildcard before adding `[extra]` requires for pip -python -m pip install $(echo ./dist/cudf*.whl)[test] +# Install both pylibcudf and cudf +python -m pip install ./local-pylibcudf-dep/pylibcudf*.whl $(echo ./dist/cudf*.whl)[test] RESULTS_DIR=${RAPIDS_TESTS_DIR:-"$(mktemp -d)"} RAPIDS_TESTS_DIR=${RAPIDS_TESTS_DIR:-"${RESULTS_DIR}/test-results"}/ diff --git a/conda/recipes/pylibcudf/meta.yaml b/conda/recipes/pylibcudf/meta.yaml index e298d50c4e6..f405fd10f5d 100644 --- a/conda/recipes/pylibcudf/meta.yaml +++ b/conda/recipes/pylibcudf/meta.yaml @@ -62,7 +62,7 @@ requirements: - python - cython >=3.0.3 - rapids-build-backend >=0.3.0,<0.4.0.dev0 - - scikit-build-core >=0.7.0 + - scikit-build-core >=0.10.0 - dlpack >=0.8,<1.0 # TODO: Change to `2.0` for NumPy 2 - numpy 1.23 diff --git a/dependencies.yaml b/dependencies.yaml index 7fbe5a64e06..c802a11bba9 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -678,22 +678,12 @@ dependencies: cuda_suffixed: "true" packages: - rmm-cu12==24.10.*,>=0.0.0a0 - - matrix: - cuda: "12.*" - cuda_suffixed: "false" - packages: - - *rmm_unsuffixed - matrix: cuda: "11.*" cuda_suffixed: "true" packages: - rmm-cu11==24.10.*,>=0.0.0a0 - - matrix: - cuda: "11.*" - cuda_suffixed: "false" - packages: &run_pylibcudf_cu11_unsuffixed - - *rmm_unsuffixed - - {matrix: null, packages: *run_pylibcudf_cu11_unsuffixed} + - {matrix: null, packages: [*rmm_unsuffixed]} run_cudf: common: - output_types: [conda, requirements, pyproject] diff --git a/python/pylibcudf/pyproject.toml b/python/pylibcudf/pyproject.toml index d6966f6e2ff..b037508d03f 100644 --- a/python/pylibcudf/pyproject.toml +++ b/python/pylibcudf/pyproject.toml @@ -110,7 +110,8 @@ requires = [ [tool.scikit-build] build-dir = "build/{wheel_tag}" cmake.build-type = "Release" -cmake.minimum-version = "3.26.4" +cmake.version = "CMakeLists.txt" +minimum-version = "build-system.requires" ninja.make-fallback = true sdist.exclude = ["*tests*"] sdist.reproducible = true From 75d8af1f7f54d18a22498e59bce169529b979ea2 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 16 Aug 2024 00:22:37 +0000 Subject: [PATCH 40/43] separate out cudf-polars change --- conda/environments/all_cuda-118_arch-x86_64.yaml | 1 - conda/environments/all_cuda-125_arch-x86_64.yaml | 1 - dependencies.yaml | 1 - 3 files changed, 3 deletions(-) diff --git a/conda/environments/all_cuda-118_arch-x86_64.yaml b/conda/environments/all_cuda-118_arch-x86_64.yaml index bcd3f05bd96..d0d18e57abc 100644 --- a/conda/environments/all_cuda-118_arch-x86_64.yaml +++ b/conda/environments/all_cuda-118_arch-x86_64.yaml @@ -67,7 +67,6 @@ dependencies: - pandas>=2.0,<2.2.3dev0 - pandoc - pip -- polars>=1.0,<1.3 - pre-commit - ptxcompiler - pyarrow==16.1.0.* diff --git a/conda/environments/all_cuda-125_arch-x86_64.yaml b/conda/environments/all_cuda-125_arch-x86_64.yaml index ada74fb74e1..caf39a32d79 100644 --- a/conda/environments/all_cuda-125_arch-x86_64.yaml +++ b/conda/environments/all_cuda-125_arch-x86_64.yaml @@ -65,7 +65,6 @@ dependencies: - pandas>=2.0,<2.2.3dev0 - pandoc - pip -- polars>=1.0,<1.3 - pre-commit - pyarrow==16.1.0.* - pydata-sphinx-theme!=0.14.2 diff --git a/dependencies.yaml b/dependencies.yaml index 99e0cd11444..ca615905a15 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -23,7 +23,6 @@ files: - rapids_build_setuptools - run_common - run_cudf - - run_cudf_polars - run_pylibcudf - run_dask_cudf - run_custreamz From 74c45bb8f13d12ed9f1dafe42260639646eb19e1 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 16 Aug 2024 14:08:29 +0000 Subject: [PATCH 41/43] apply pre-commit --- python/cudf/cudf/_lib/aggregation.pyx | 3 ++- python/cudf/cudf/_lib/column.pxd | 2 +- python/cudf/cudf/_lib/copying.pyx | 3 ++- python/cudf/cudf/_lib/csv.pyx | 7 +++++-- python/cudf/cudf/_lib/datetime.pyx | 3 ++- python/cudf/cudf/_lib/hash.pyx | 3 ++- python/cudf/cudf/_lib/io/utils.pxd | 1 + python/cudf/cudf/_lib/io/utils.pyx | 1 + python/cudf/cudf/_lib/json.pyx | 3 ++- python/cudf/cudf/_lib/labeling.pyx | 1 + python/cudf/cudf/_lib/lists.pyx | 1 + python/cudf/cudf/_lib/null_mask.pyx | 1 + python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx | 1 + python/cudf/cudf/_lib/nvtext/edit_distance.pyx | 1 + python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx | 1 + python/cudf/cudf/_lib/nvtext/jaccard.pyx | 1 + python/cudf/cudf/_lib/nvtext/minhash.pyx | 1 + python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx | 1 + python/cudf/cudf/_lib/nvtext/normalize.pyx | 1 + python/cudf/cudf/_lib/nvtext/replace.pyx | 1 + python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx | 1 + python/cudf/cudf/_lib/nvtext/tokenize.pyx | 1 + python/cudf/cudf/_lib/partitioning.pyx | 1 + python/cudf/cudf/_lib/scalar.pxd | 2 +- python/cudf/cudf/_lib/sort.pyx | 1 + python/cudf/cudf/_lib/string_casting.pyx | 1 + python/cudf/cudf/_lib/strings/attributes.pyx | 1 + python/cudf/cudf/_lib/strings/combine.pyx | 1 + python/cudf/cudf/_lib/strings/contains.pyx | 1 + python/cudf/cudf/_lib/strings_udf.pyx | 2 +- python/cudf/cudf/_lib/text.pyx | 1 + python/cudf/cudf/_lib/timezone.pyx | 1 + python/cudf/cudf/_lib/transform.pyx | 4 ++-- python/cudf/cudf/_lib/transpose.pyx | 1 + python/cudf/cudf/_lib/types.pxd | 3 ++- python/cudf/cudf/_lib/types.pyx | 3 ++- python/cudf/cudf/_lib/unary.pyx | 1 + python/cudf/cudf/_lib/utils.pxd | 1 + python/cudf/cudf/core/_internals/expressions.py | 1 + python/cudf/cudf/core/buffer/buffer.py | 2 +- 40 files changed, 52 insertions(+), 15 deletions(-) diff --git a/python/cudf/cudf/_lib/aggregation.pyx b/python/cudf/cudf/_lib/aggregation.pyx index 5f0fa404740..7c91533cf93 100644 --- a/python/cudf/cudf/_lib/aggregation.pyx +++ b/python/cudf/cudf/_lib/aggregation.pyx @@ -1,9 +1,10 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. import pandas as pd -import pylibcudf from numba.np import numpy_support +import pylibcudf + import cudf from cudf._lib.types import SUPPORTED_NUMPY_TO_PYLIBCUDF_TYPES from cudf.utils import cudautils diff --git a/python/cudf/cudf/_lib/column.pxd b/python/cudf/cudf/_lib/column.pxd index ba812f3c38a..8ceea4920e2 100644 --- a/python/cudf/cudf/_lib/column.pxd +++ b/python/cudf/cudf/_lib/column.pxd @@ -4,13 +4,13 @@ from typing import Literal from libcpp cimport bool from libcpp.memory cimport unique_ptr + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport ( column_view, mutable_column_view, ) from pylibcudf.libcudf.types cimport size_type - from rmm._lib.device_buffer cimport device_buffer diff --git a/python/cudf/cudf/_lib/copying.pyx b/python/cudf/cudf/_lib/copying.pyx index 7d304264951..16182e31c08 100644 --- a/python/cudf/cudf/_lib/copying.pyx +++ b/python/cudf/cudf/_lib/copying.pyx @@ -25,8 +25,9 @@ from cudf._lib.utils cimport table_view_from_table from cudf._lib.reduce import minmax from cudf.core.abc import Serializable -cimport pylibcudf.libcudf.contiguous_split as cpp_contiguous_split from libcpp.memory cimport make_unique + +cimport pylibcudf.libcudf.contiguous_split as cpp_contiguous_split from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.lists.gather cimport ( diff --git a/python/cudf/cudf/_lib/csv.pyx b/python/cudf/cudf/_lib/csv.pyx index a72eefc72ba..e9aa97ecbc9 100644 --- a/python/cudf/cudf/_lib/csv.pyx +++ b/python/cudf/cudf/_lib/csv.pyx @@ -1,11 +1,12 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. -cimport pylibcudf.libcudf.types as libcudf_types from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move from libcpp.vector cimport vector + +cimport pylibcudf.libcudf.types as libcudf_types from pylibcudf.io.datasource cimport Datasource, NativeFileDatasource from cudf._lib.types cimport dtype_to_pylibcudf_type @@ -22,6 +23,7 @@ import cudf from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool + from pylibcudf.libcudf.io.csv cimport ( csv_writer_options, write_csv as cpp_write_csv, @@ -33,9 +35,10 @@ from pylibcudf.libcudf.table.table_view cimport table_view from cudf._lib.io.utils cimport make_sink_info from cudf._lib.utils cimport data_from_pylibcudf_io, table_view_from_table -import pylibcudf as plc from pyarrow.lib import NativeFile +import pylibcudf as plc + from cudf.api.types import is_hashable from pylibcudf.types cimport DataType diff --git a/python/cudf/cudf/_lib/datetime.pyx b/python/cudf/cudf/_lib/datetime.pyx index 40a9e3e9b87..483250dd36f 100644 --- a/python/cudf/cudf/_lib/datetime.pyx +++ b/python/cudf/cudf/_lib/datetime.pyx @@ -4,9 +4,10 @@ import warnings from cudf.core.buffer import acquire_spill_lock -cimport pylibcudf.libcudf.datetime as libcudf_datetime from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + +cimport pylibcudf.libcudf.datetime as libcudf_datetime from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.filling cimport calendrical_month_sequence diff --git a/python/cudf/cudf/_lib/hash.pyx b/python/cudf/cudf/_lib/hash.pyx index 41d78da1df1..48f75b12a73 100644 --- a/python/cudf/cudf/_lib/hash.pyx +++ b/python/cudf/cudf/_lib/hash.pyx @@ -2,11 +2,12 @@ from cudf.core.buffer import acquire_spill_lock -cimport pylibcudf.libcudf.types as libcudf_types from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move from libcpp.vector cimport vector + +cimport pylibcudf.libcudf.types as libcudf_types from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.hash cimport ( md5, diff --git a/python/cudf/cudf/_lib/io/utils.pxd b/python/cudf/cudf/_lib/io/utils.pxd index 605876af7a9..1938f00c179 100644 --- a/python/cudf/cudf/_lib/io/utils.pxd +++ b/python/cudf/cudf/_lib/io/utils.pxd @@ -2,6 +2,7 @@ from libcpp.memory cimport unique_ptr from libcpp.vector cimport vector + from pylibcudf.libcudf.io.data_sink cimport data_sink from pylibcudf.libcudf.io.types cimport ( column_name_info, diff --git a/python/cudf/cudf/_lib/io/utils.pyx b/python/cudf/cudf/_lib/io/utils.pyx index 163f3786f2e..b1900138d94 100644 --- a/python/cudf/cudf/_lib/io/utils.pyx +++ b/python/cudf/cudf/_lib/io/utils.pyx @@ -6,6 +6,7 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move from libcpp.vector cimport vector + from pylibcudf.io.datasource cimport Datasource from pylibcudf.libcudf.io.data_sink cimport data_sink from pylibcudf.libcudf.io.datasource cimport datasource diff --git a/python/cudf/cudf/_lib/json.pyx b/python/cudf/cudf/_lib/json.pyx index bab9d83dcdc..9bbbcf60dcf 100644 --- a/python/cudf/cudf/_lib/json.pyx +++ b/python/cudf/cudf/_lib/json.pyx @@ -7,8 +7,9 @@ from collections import abc import cudf from cudf.core.buffer import acquire_spill_lock -cimport pylibcudf.libcudf.io.types as cudf_io_types from libcpp cimport bool + +cimport pylibcudf.libcudf.io.types as cudf_io_types from pylibcudf.io.types cimport compression_type from pylibcudf.libcudf.io.json cimport json_recovery_mode_t from pylibcudf.libcudf.io.types cimport compression_type diff --git a/python/cudf/cudf/_lib/labeling.pyx b/python/cudf/cudf/_lib/labeling.pyx index 73d12fbb63f..2e1959a348d 100644 --- a/python/cudf/cudf/_lib/labeling.pyx +++ b/python/cudf/cudf/_lib/labeling.pyx @@ -5,6 +5,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool as cbool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.labeling cimport inclusive, label_bins as cpp_label_bins diff --git a/python/cudf/cudf/_lib/lists.pyx b/python/cudf/cudf/_lib/lists.pyx index 10254f20168..7e8710bedb6 100644 --- a/python/cudf/cudf/_lib/lists.pyx +++ b/python/cudf/cudf/_lib/lists.pyx @@ -3,6 +3,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool + from pylibcudf.libcudf.types cimport null_order, size_type from cudf._lib.column cimport Column diff --git a/python/cudf/cudf/_lib/null_mask.pyx b/python/cudf/cudf/_lib/null_mask.pyx index a1f55518a46..3a7b6a59bf3 100644 --- a/python/cudf/cudf/_lib/null_mask.pyx +++ b/python/cudf/cudf/_lib/null_mask.pyx @@ -9,6 +9,7 @@ from cudf.core.buffer import acquire_spill_lock, as_buffer from libcpp.memory cimport make_unique, unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move + from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.null_mask cimport ( bitmask_allocation_size_bytes as cpp_bitmask_allocation_size_bytes, diff --git a/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx b/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx index 3c0b39ded42..0d768e24f39 100644 --- a/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx +++ b/python/cudf/cudf/_lib/nvtext/byte_pair_encode.pyx @@ -5,6 +5,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.byte_pair_encode cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/edit_distance.pyx b/python/cudf/cudf/_lib/nvtext/edit_distance.pyx index 71e9844d594..e3c2273345a 100644 --- a/python/cudf/cudf/_lib/nvtext/edit_distance.pyx +++ b/python/cudf/cudf/_lib/nvtext/edit_distance.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.edit_distance cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx b/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx index 47cd7f60c98..6591b527eec 100644 --- a/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx +++ b/python/cudf/cudf/_lib/nvtext/generate_ngrams.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.generate_ngrams cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/jaccard.pyx b/python/cudf/cudf/_lib/nvtext/jaccard.pyx index 1e0d1dd41f4..0ebf7c281e3 100644 --- a/python/cudf/cudf/_lib/nvtext/jaccard.pyx +++ b/python/cudf/cudf/_lib/nvtext/jaccard.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.jaccard cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/minhash.pyx b/python/cudf/cudf/_lib/nvtext/minhash.pyx index 0c341a156ef..5ee15d0e409 100644 --- a/python/cudf/cudf/_lib/nvtext/minhash.pyx +++ b/python/cudf/cudf/_lib/nvtext/minhash.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.minhash cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx b/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx index 3d14e96d771..dec4f037d98 100644 --- a/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx +++ b/python/cudf/cudf/_lib/nvtext/ngrams_tokenize.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.ngrams_tokenize cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/normalize.pyx b/python/cudf/cudf/_lib/nvtext/normalize.pyx index 6f60c802161..5e86a9ce959 100644 --- a/python/cudf/cudf/_lib/nvtext/normalize.pyx +++ b/python/cudf/cudf/_lib/nvtext/normalize.pyx @@ -5,6 +5,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.normalize cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/replace.pyx b/python/cudf/cudf/_lib/nvtext/replace.pyx index a098622fe99..61ae3da5782 100644 --- a/python/cudf/cudf/_lib/nvtext/replace.pyx +++ b/python/cudf/cudf/_lib/nvtext/replace.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.replace cimport ( diff --git a/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx b/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx index cb596d208a1..ee442ece5c6 100644 --- a/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx +++ b/python/cudf/cudf/_lib/nvtext/subword_tokenize.pyx @@ -8,6 +8,7 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move + from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.subword_tokenize cimport ( hashed_vocabulary as cpp_hashed_vocabulary, diff --git a/python/cudf/cudf/_lib/nvtext/tokenize.pyx b/python/cudf/cudf/_lib/nvtext/tokenize.pyx index f74aa53ba21..a7e63f1e9ae 100644 --- a/python/cudf/cudf/_lib/nvtext/tokenize.pyx +++ b/python/cudf/cudf/_lib/nvtext/tokenize.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.nvtext.tokenize cimport ( diff --git a/python/cudf/cudf/_lib/partitioning.pyx b/python/cudf/cudf/_lib/partitioning.pyx index b3426b14cfc..d94f0e1b564 100644 --- a/python/cudf/cudf/_lib/partitioning.pyx +++ b/python/cudf/cudf/_lib/partitioning.pyx @@ -6,6 +6,7 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move from libcpp.vector cimport vector + from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.partitioning cimport partition as cpp_partition from pylibcudf.libcudf.table.table cimport table diff --git a/python/cudf/cudf/_lib/scalar.pxd b/python/cudf/cudf/_lib/scalar.pxd index 9008b6234cb..27095ca02d4 100644 --- a/python/cudf/cudf/_lib/scalar.pxd +++ b/python/cudf/cudf/_lib/scalar.pxd @@ -2,8 +2,8 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr -from pylibcudf.libcudf.scalar.scalar cimport scalar +from pylibcudf.libcudf.scalar.scalar cimport scalar from rmm._lib.memory_resource cimport DeviceMemoryResource diff --git a/python/cudf/cudf/_lib/sort.pyx b/python/cudf/cudf/_lib/sort.pyx index 5267bf0c508..185552ede82 100644 --- a/python/cudf/cudf/_lib/sort.pyx +++ b/python/cudf/cudf/_lib/sort.pyx @@ -8,6 +8,7 @@ from libcpp cimport bool from libcpp.memory cimport unique_ptr from libcpp.utility cimport move from libcpp.vector cimport vector + from pylibcudf.libcudf.aggregation cimport rank_method from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.search cimport lower_bound, upper_bound diff --git a/python/cudf/cudf/_lib/string_casting.pyx b/python/cudf/cudf/_lib/string_casting.pyx index bcace9de506..8d463829a19 100644 --- a/python/cudf/cudf/_lib/string_casting.pyx +++ b/python/cudf/cudf/_lib/string_casting.pyx @@ -11,6 +11,7 @@ from cudf._lib.types import SUPPORTED_NUMPY_TO_LIBCUDF_TYPES from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.scalar.scalar cimport string_scalar diff --git a/python/cudf/cudf/_lib/strings/attributes.pyx b/python/cudf/cudf/_lib/strings/attributes.pyx index e303efeec50..fe8c17c9e31 100644 --- a/python/cudf/cudf/_lib/strings/attributes.pyx +++ b/python/cudf/cudf/_lib/strings/attributes.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.strings.attributes cimport ( diff --git a/python/cudf/cudf/_lib/strings/combine.pyx b/python/cudf/cudf/_lib/strings/combine.pyx index 9d072f3c6e2..76cc13db0da 100644 --- a/python/cudf/cudf/_lib/strings/combine.pyx +++ b/python/cudf/cudf/_lib/strings/combine.pyx @@ -4,6 +4,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.scalar.scalar cimport string_scalar diff --git a/python/cudf/cudf/_lib/strings/contains.pyx b/python/cudf/cudf/_lib/strings/contains.pyx index 04a982ec7e2..82f5e06c547 100644 --- a/python/cudf/cudf/_lib/strings/contains.pyx +++ b/python/cudf/cudf/_lib/strings/contains.pyx @@ -8,6 +8,7 @@ from cudf.core.buffer import acquire_spill_lock from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.scalar.scalar cimport string_scalar diff --git a/python/cudf/cudf/_lib/strings_udf.pyx b/python/cudf/cudf/_lib/strings_udf.pyx index 0730d814ea9..78fc9f08bd8 100644 --- a/python/cudf/cudf/_lib/strings_udf.pyx +++ b/python/cudf/cudf/_lib/strings_udf.pyx @@ -1,6 +1,7 @@ # Copyright (c) 2022-2024, NVIDIA CORPORATION. from libc.stdint cimport uint8_t, uint16_t, uintptr_t + from pylibcudf.libcudf.strings_udf cimport ( get_character_cases_table as cpp_get_character_cases_table, get_character_flags_table as cpp_get_character_flags_table, @@ -22,7 +23,6 @@ from pylibcudf.libcudf.strings_udf cimport ( to_string_view_array as cpp_to_string_view_array, udf_string, ) - from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer from cudf._lib.column cimport Column diff --git a/python/cudf/cudf/_lib/text.pyx b/python/cudf/cudf/_lib/text.pyx index 19dc4349ac5..ece69b424bb 100644 --- a/python/cudf/cudf/_lib/text.pyx +++ b/python/cudf/cudf/_lib/text.pyx @@ -7,6 +7,7 @@ from libc.stdint cimport uint64_t from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.io.text cimport ( byte_range_info, diff --git a/python/cudf/cudf/_lib/timezone.pyx b/python/cudf/cudf/_lib/timezone.pyx index facf2168e6f..bff3b2c4ce4 100644 --- a/python/cudf/cudf/_lib/timezone.pyx +++ b/python/cudf/cudf/_lib/timezone.pyx @@ -4,6 +4,7 @@ from libcpp.memory cimport unique_ptr from libcpp.optional cimport make_optional from libcpp.string cimport string from libcpp.utility cimport move + from pylibcudf.libcudf.io.timezone cimport ( make_timezone_transition_table as cpp_make_timezone_transition_table, ) diff --git a/python/cudf/cudf/_lib/transform.pyx b/python/cudf/cudf/_lib/transform.pyx index 7b711279f5d..baa08a545ec 100644 --- a/python/cudf/cudf/_lib/transform.pyx +++ b/python/cudf/cudf/_lib/transform.pyx @@ -8,13 +8,14 @@ from cudf.core._internals.expressions import parse_expression from cudf.core.buffer import acquire_spill_lock, as_buffer from cudf.utils import cudautils -cimport pylibcudf.libcudf.transform as libcudf_transform from cython.operator cimport dereference from libc.stdint cimport uintptr_t from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.string cimport string from libcpp.utility cimport move + +cimport pylibcudf.libcudf.transform as libcudf_transform from pylibcudf cimport transform as plc_transform from pylibcudf.expressions cimport Expression from pylibcudf.libcudf.column.column cimport column @@ -28,7 +29,6 @@ from pylibcudf.libcudf.types cimport ( size_type, type_id, ) - from rmm._lib.device_buffer cimport DeviceBuffer, device_buffer from cudf._lib.column cimport Column diff --git a/python/cudf/cudf/_lib/transpose.pyx b/python/cudf/cudf/_lib/transpose.pyx index 742058173d7..f78fbd4c844 100644 --- a/python/cudf/cudf/_lib/transpose.pyx +++ b/python/cudf/cudf/_lib/transpose.pyx @@ -3,6 +3,7 @@ from libcpp.memory cimport unique_ptr from libcpp.pair cimport pair from libcpp.utility cimport move + from pylibcudf.libcudf.column.column cimport column from pylibcudf.libcudf.table.table_view cimport table_view from pylibcudf.libcudf.transpose cimport transpose as cpp_transpose diff --git a/python/cudf/cudf/_lib/types.pxd b/python/cudf/cudf/_lib/types.pxd index ec4d2c3629a..4fd3d31841e 100644 --- a/python/cudf/cudf/_lib/types.pxd +++ b/python/cudf/cudf/_lib/types.pxd @@ -1,8 +1,9 @@ # Copyright (c) 2020-2024, NVIDIA CORPORATION. -cimport pylibcudf.libcudf.types as libcudf_types from libc.stdint cimport int32_t from libcpp cimport bool + +cimport pylibcudf.libcudf.types as libcudf_types from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view diff --git a/python/cudf/cudf/_lib/types.pyx b/python/cudf/cudf/_lib/types.pyx index 79d9815ba71..861bb063707 100644 --- a/python/cudf/cudf/_lib/types.pyx +++ b/python/cudf/cudf/_lib/types.pyx @@ -5,8 +5,9 @@ from enum import IntEnum import numpy as np import pandas as pd -cimport pylibcudf.libcudf.types as libcudf_types from libcpp.memory cimport make_shared, shared_ptr + +cimport pylibcudf.libcudf.types as libcudf_types from pylibcudf.libcudf.column.column_view cimport column_view from pylibcudf.libcudf.lists.lists_column_view cimport lists_column_view diff --git a/python/cudf/cudf/_lib/unary.pyx b/python/cudf/cudf/_lib/unary.pyx index 968989f2e98..d5602fd5a1c 100644 --- a/python/cudf/cudf/_lib/unary.pyx +++ b/python/cudf/cudf/_lib/unary.pyx @@ -4,6 +4,7 @@ from cudf._lib.column cimport Column from cudf._lib.types cimport dtype_to_pylibcudf_type import numpy as np + import pylibcudf from cudf.api.types import is_decimal_dtype diff --git a/python/cudf/cudf/_lib/utils.pxd b/python/cudf/cudf/_lib/utils.pxd index 182ce65d77d..ff97fe80310 100644 --- a/python/cudf/cudf/_lib/utils.pxd +++ b/python/cudf/cudf/_lib/utils.pxd @@ -3,6 +3,7 @@ from libcpp.memory cimport unique_ptr from libcpp.string cimport string from libcpp.vector cimport vector + from pylibcudf.libcudf.column.column cimport column_view from pylibcudf.libcudf.table.table cimport table, table_view diff --git a/python/cudf/cudf/core/_internals/expressions.py b/python/cudf/cudf/core/_internals/expressions.py index a1d443afac9..67bde5a72b2 100644 --- a/python/cudf/cudf/core/_internals/expressions.py +++ b/python/cudf/cudf/core/_internals/expressions.py @@ -5,6 +5,7 @@ import functools import pyarrow as pa + import pylibcudf as plc from pylibcudf.expressions import ( ASTOperator, diff --git a/python/cudf/cudf/core/buffer/buffer.py b/python/cudf/cudf/core/buffer/buffer.py index 25bae3ff722..32ae8c5ee53 100644 --- a/python/cudf/cudf/core/buffer/buffer.py +++ b/python/cudf/cudf/core/buffer/buffer.py @@ -9,9 +9,9 @@ from typing import Any, Literal, Mapping import numpy -import pylibcudf from typing_extensions import Self +import pylibcudf import rmm import cudf From 61ec5d02571207370b2b890fb4f6a5e85c035638 Mon Sep 17 00:00:00 2001 From: Thomas Li Date: Fri, 16 Aug 2024 09:11:11 -0700 Subject: [PATCH 42/43] fix test cudf script --- ci/test_wheel_cudf.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ci/test_wheel_cudf.sh b/ci/test_wheel_cudf.sh index c91142e4e33..68943c93cba 100755 --- a/ci/test_wheel_cudf.sh +++ b/ci/test_wheel_cudf.sh @@ -5,8 +5,8 @@ set -eou pipefail # Download the pylibcudf built in the previous step RAPIDS_PY_CUDA_SUFFIX="$(rapids-wheel-ctk-name-gen ${RAPIDS_CUDA_VERSION})" -rapids-download-wheels-from-s3 ./local-pylibcudf-dep "pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" -rapids-download-wheels-from-s3 ./dist "cudf_${RAPIDS_PY_CUDA_SUFFIX}" +RAPIDS_PY_WHEEL_NAME="pylibcudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./local-pylibcudf-dep +RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from-s3 ./dist # Install both pylibcudf and cudf python -m pip install \ From eb8f70e6768f7f6366fbd1b5faa3e317ef06459d Mon Sep 17 00:00:00 2001 From: Vyas Ramasubramani Date: Fri, 16 Aug 2024 09:43:24 -0700 Subject: [PATCH 43/43] Update ci/test_wheel_cudf.sh --- ci/test_wheel_cudf.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/test_wheel_cudf.sh b/ci/test_wheel_cudf.sh index 68943c93cba..5a2c3ccac8f 100755 --- a/ci/test_wheel_cudf.sh +++ b/ci/test_wheel_cudf.sh @@ -10,7 +10,7 @@ RAPIDS_PY_WHEEL_NAME="cudf_${RAPIDS_PY_CUDA_SUFFIX}" rapids-download-wheels-from # Install both pylibcudf and cudf python -m pip install \ - "$(echo ./local-pylibcudf-dep/pylibcudf*.whl" \ + "$(echo ./local-pylibcudf-dep/pylibcudf*.whl)[test]" \ "$(echo ./dist/cudf*.whl)[test]" RESULTS_DIR=${RAPIDS_TESTS_DIR:-"$(mktemp -d)"}