h2oai / datatable

A Python package for manipulating 2-dimensional tabular data structures
https://datatable.readthedocs.io
Mozilla Public License 2.0
1.81k stars 155 forks source link

Missing wheels for Python 3.11 on Windows #3479

Open LindhorstWAG opened 1 year ago

LindhorstWAG commented 1 year ago

Hi,

as I was forced to migrate to Python 3.11 on Windows 10, I need a pip wheel for the installation of the latest version as 1.0.0 is not working.

When looking at AppVeyor for a suitable artifact, I could not find any. I presume they are deleted after a certain time?

Can someone create a new artifact? Who can I contact?

Thanks

HassanMasoomi commented 1 year ago

@LindhorstWAG Try this, it worked for me for python 3.11: pip install git+https://github.com/h2oai/datatable

LindhorstWAG commented 1 year ago

Thanks for the answer. Unfortunatly this does not work. Here ist the console output: (venv) PS C:\Users\lindhorsthe\Projects\bottle_logistics> pip install git+https://github.com/h2oai/datatable Collecting git+https://github.com/h2oai/datatable Cloning https://github.com/h2oai/datatable to c:\users\lindhorsthe\appdata\local\temp\pip-req-build-27kfhpx8 Running command git clone --filter=blob:none --quiet https://github.com/h2oai/datatable 'C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8' Resolved https://github.com/h2oai/datatable to commit cb07f6d3569b4646130dbc69041cc0fde95e40fa Getting requirements to build wheel ... done Preparing metadata (pyproject.toml) ... error
error: subprocess-exited-with-error

× Preparing metadata (pyproject.toml) did not run successfully. │ exit code: 1 ╰─> [34 lines of output] Building extension _datatable Build directory = 'build\build' Created directory 'build\build' Destination directory = 'src\datatable\lib' Added 326 source files from pattern src/core/*/.cc: ['src\core\api.cc', 'src\core\buffer.cc', 'src\core\call_logger.cc', 'src\core\column.cc', 'src\core\column_from_arrow.cc', 'src\core\column_from_python.cc' , 'src\core\cstring.cc', 'src\core\datatable.cc', 'src\core\datatablemodule.cc', 'src\core\encodings.cc', 'src\core\groupby.cc', 'src\core\ltype.cc', 'src\core\mmm.cc', 'src\core\options.cc', 'src\core\py_buffe rs.cc', 'src\core\py_encodings.cc', 'src\core\rowindex.cc', 'src\core\rowindex_array.cc', 'src\core\rowindex_slice.cc', 'src\core\set_funcs.cc', 'src\core\sort.cc', 'src\core\sort_groups.cc', 'src\core\sort_inser t.cc', 'src\core\stats.cc', 'src\core\stype.cc', 'src\core\writebuf.cc', 'src\core\wstringcol.cc', 'src\core\column\arrow_array.cc', 'src\core\column\arrow_bool.cc', 'src\core\column\arrow_fw.cc', 'src\core\co lumn\arrow_str.cc', 'src\core\column\arrow_void.cc', 'src\core\column\cast.cc', 'src\core\column\cast_bool.cc', 'src\core\column\cast_date32.cc', 'src\core\column\cast_numeric.cc', 'src\core\column\cast_object .cc', 'src\core\column\cast_string.cc', 'src\core\column\cast_to_array.cc', 'src\core\column\cast_to_bool.cc', 'src\core\column\cast_to_date32.cc', 'src\core\column\cast_to_obj.cc', 'src\core\column\cast_to_str ing.cc', 'src\core\column\cast_to_time64.cc', 'src\core\column\categorical.cc', 'src\core\column\column_impl.cc', 'src\core\column\const.cc', 'src\core\column\const_na.cc', 'src\core\column\date_from_months.cc' , 'src\core\column\date_from_weeks.cc', 'src\core\column\date_from_years.cc', 'src\core\column\ifelse.cc', 'src\core\column\ifelsen.cc', 'src\core\column\latent.cc', 'src\core\column\nafilled.cc', 'src\core\c olumn\npmasked.cc', 'src\core\column\pysources.cc', 'src\core\column\range.cc', 'src\core\column\rbound.cc', 'src\core\column\repeated.cc', 'src\core\column\re_match.cc', 'src\core\column\sentinel.cc', 'src\c ore\column\sentinel_fw.cc', 'src\core\column\sentinel_str.cc', 'src\core\column\string_plus.cc', 'src\core\column\string_slice.cc', 'src\core\column\time_scaled.cc', 'src\core\column\truncated.cc', 'src\core\c olumn\view.cc', 'src\core\column\virtual.cc', 'src\core\csv\fread.cc', 'src\core\csv\reader.cc', 'src\core\csv\reader_arff.cc', 'src\core\csv\reader_fread.cc', 'src\core\csv\toa.cc', 'src\core\expr\args_reg istry.cc', 'src\core\expr\eval_context.cc', 'src\core\expr\expr.cc', 'src\core\expr\fexpr.cc', 'src\core\expr\fexpr_alias.cc', 'src\core\expr\fexpr_astype.cc', 'src\core\expr\fexpr_categories.cc', 'src\core\e xpr\fexpr_codes.cc', 'src\core\expr\fexpr_column_asarg.cc', 'src\core\expr\fexpr_column_asattr.cc', 'src\core\expr\fexpr_count.cc', 'src\core\expr\fexpr_cumcountngroup.cc', 'src\core\expr\fexpr_cumminmax.cc', 'sr c\core\expr\fexpr_cumsumprod.cc', 'src\core\expr\fexpr_cut.cc', 'src\core\expr\fexpr_dict.cc', 'src\core\expr\fexpr_extend_remove.cc', 'src\core\expr\fexpr_fillna.cc', 'src\core\expr\fexpr_frame.cc', 'src\core \expr\fexpr_func.cc', 'src\core\expr\fexpr_func_unary.cc', 'src\core\expr\fexpr_ifelse.cc', 'src\core\expr\fexpr_list.cc', 'src\core\expr\fexpr_literal.cc', 'src\core\expr\fexpr_literal_bool.cc', 'src\core\exp r\fexpr_literal_float.cc', 'src\core\expr\fexpr_literal_int.cc', 'src\core\expr\fexpr_literal_none.cc', 'src\core\expr\fexpr_literal_range.cc', 'src\core\expr\fexpr_literal_sliceall.cc', 'src\core\expr\fexpr_lite ral_sliceint.cc', 'src\core\expr\fexpr_literal_slicestr.cc', 'src\core\expr\fexpr_literal_string.cc', 'src\core\expr\fexpr_literal_type.cc', 'src\core\expr\fexpr_mean.cc', 'src\core\expr\fexpr_minmax.cc', 'src\co re\expr\fexpr_qcut.cc', 'src\core\expr\fexpr_reduce_unary.cc', 'src\core\expr\fexpr_round.cc', 'src\core\expr\fexpr_slice.cc', 'src\core\expr\fexpr_sumprod.cc', 'src\core\expr\head.cc', 'src\core\expr\head_fu nc.cc', 'src\core\expr\head_func_binary.cc', 'src\core\expr\head_func_colset.cc', 'src\core\expr\head_func_isclose.cc', 'src\core\expr\head_func_shift.cc', 'src\core\expr\head_func_unary.cc', 'src\core\expr\hea d_reduce.cc', 'src\core\expr\head_reduce_binary.cc', 'src\core\expr\head_reduce_unary.cc', 'src\core\expr\namespace.cc', 'src\core\expr\py_by.cc', 'src\core\expr\py_join.cc', 'src\core\expr\py_sort.cc', 'src\c ore\expr\py_update.cc', 'src\core\expr\workframe.cc', 'src\core\expr\fbinary\bimaker.cc', 'src\core\expr\fbinary\bitwise.cc', 'src\core\expr\fbinary\fexpr_binaryop.cc', 'src\core\expr\fbinary\fexpradd.cc ', 'src\core\expr\fbinary\fexprcompare.cc', 'src\core\expr\fbinary\fexpreq.cc', 'src\core\expr\fbinary\fexprfloordiv.cc', 'src\core\expr\fbinary\fexprge.cc', 'src\core\expr\fbinary\fexprgt .cc', 'src\core\expr\fbinary\fexprle.cc', 'src\core\expr\fbinary\fexprlt.cc', 'src\core\expr\fbinary\fexprmod.cc', 'src\core\expr\fbinary\fexprmul.cc', 'src\core\expr\fbinary\fexprne.cc', 'src\core\expr\fbinary\fexprpow.cc', 'src\core\expr\fbinary\fexprsub.cc', 'src\core\expr\fbinary\fexprtruediv.cc', 'src\core\expr\fbinary\math.cc', 'src\core\expr\fbinary\pyfn.cc', 'src\core\exp r\fnary\fnary.cc', 'src\core\expr\fnary\rowall.cc', 'src\core\expr\fnary\rowany.cc', 'src\core\expr\fnary\rowcount.cc', 'src\core\expr\fnary\rowfirstlast.cc', 'src\core\expr\fnary\rowmean.cc', 'src\core\e xpr\fnary\rowminmax.cc', 'src\core\expr\fnary\rowsd.cc', 'src\core\expr\fnary\rowsum.cc', 'src\core\expr\funary\basic.cc', 'src\core\expr\funary\exponential.cc', 'src\core\expr\funary\floating.cc', 'src\co re\expr\funary\hyperbolic.cc', 'src\core\expr\funary\pyfn.cc', 'src\core\expr\funary\special.cc', 'src\core\expr\funary\trigonometric.cc', 'src\core\expr\funary\umaker.cc', 'src\core\expr\re\fexpr_match.cc ', 'src\core\expr\str\fexpr_len.cc', 'src\core\expr\time\fexpr_day_of_week.cc', 'src\core\expr\time\fexpr_hour_min_sec.cc', 'src\core\expr\time\fexpr_year_month_day.cc', 'src\core\expr\time\fexpr_ymd.cc', 'sr c\core\expr\time\fexpr_ymdt.cc', 'src\core\frame\cbind.cc', 'src\core\frame\integrity_check.cc', 'src\core\frame\join.cc', 'src\core\frame\key.cc', 'src\core\frame\names.cc', 'src\core\frame\py_frame.cc', ' src\core\frame\rbind.cc', 'src\core\frame\repeat.cc', 'src\core\frame\replace.cc', 'src\core\frame\stats.cc', 'src\core\frame\to_arrow.cc', 'src\core\frame\to_csv.cc', 'src\core\frame\to_numpy.cc', 'src\cor e\frame\to_pandas.cc', 'src\core\frame\to_python.cc', 'src\core\frame\getbuffer.cc', 'src\core\frame\getitem.cc', 'src\core\frame\init.cc', 'src\core\frame\iter.cc', 'src\core\frame\repr.c c', 'src\core\frame\sizeof.cc', 'src\core\frame\repr\html_styles.cc', 'src\core\frame\repr\repr_options.cc', 'src\core\frame\repr\terminal_widget.cc', 'src\core\frame\repr\text_column.cc', 'src\core\fram e\repr\widget.cc', 'src\core\jay\open_jay.cc', 'src\core\jay\save_jay.cc', 'src\core\lib\hh\date.cc', 'src\core\lib\mman\mman.cc', 'src\core\lib\zlib\adler32.cc', 'src\core\lib\zlib\crc32.cc', 'src\core\ \lib\zlib\deflate.cc', 'src\core\lib\zlib\trees.cc', 'src\core\lib\zlib\zutil.cc', 'src\core\models\aggregate.cc', 'src\core\models\column_caster.cc', 'src\core\models\column_hasher.cc', 'src\core\models\dt _ftrl.cc', 'src\core\models\dt_ftrl_base.cc', 'src\core\models\dt_linearmodel.cc', 'src\core\models\dt_linearmodel_base.cc', 'src\core\models\kfold.cc', 'src\core\models\label_encode.cc', 'src\core\models\murmu rhash.cc', 'src\core\models\py_ftrl.cc', 'src\core\models\py_linearmodel.cc', 'src\core\models\py_validator.cc', 'src\core\models\utils.cc', 'src\core\parallel\api_primitives.cc', 'src\core\parallel\job_idle.cc ', 'src\core\parallel\job_shutdown.cc', 'src\core\parallel\parallel_for_dynamic.cc', 'src\core\parallel\parallel_for_ordered.cc', 'src\core\parallel\parallel_region.cc', 'src\core\parallel\python_lock.cc', 'src\c ore\parallel\thread_job.cc', 'src\core\parallel\thread_pool.cc', 'src\core\parallel\thread_team.cc', 'src\core\parallel\thread_worker.cc', 'src\core\progress\progress_bar.cc', 'src\core\progress\progressmanager .cc', 'src\core\progress\work.cc', 'src\core\progress\_options.cc', 'src\core\python\arg.cc', 'src\core\python\args.cc', 'src\core\python\bool.cc', 'src\core\python\date.cc', 'src\core\python\dict.cc', 'src\ \core\python\float.cc', 'src\core\python\int.cc', 'src\core\python\iter.cc', 'src\core\python\list.cc', 'src\core\python\namedtuple.cc', 'src\core\python\obj.cc', 'src\core\python\pybuffer.cc', 'src\core\py thon\range.cc', 'src\core\python\set.cc', 'src\core\python\slice.cc', 'src\core\python\string.cc', 'src\core\python\tuple.cc', 'src\core\python\xargs.cc', 'src\core\python\xobject.cc', 'src\core\read\chunk coordinates.cc', 'src\core\read\constants.cc', 'src\core\read\input_column.cc', 'src\core\read\multisource.cc', 'src\core\read\output_column.cc', 'src\core\read\parallel_reader.cc', 'src\core\read\parse_context .cc', 'src\core\read\preframe.cc', 'src\core\read\py_fread.cc', 'src\core\read\py_read_iterator.cc', 'src\core\read\source.cc', 'src\core\read\thread_context.cc', 'src\core\read\fread\fread_parallel_reader.cc' , 'src\core\read\fread\fread_thread_context.cc', 'src\core\read\parsers\info.cc', 'src\core\read\parsers\parse_bool.cc', 'src\core\read\parsers\parse_date.cc', 'src\core\read\parsers\parse_float.cc', 'src\co re\read\parsers\parse_int.cc', 'src\core\read\parsers\parse_string.cc', 'src\core\read\parsers\parse_time.cc', 'src\core\read\parsers\parse_void.cc', 'src\core\read\parsers\ptype_iterator.cc', 'src\core\sort \sorter.cc', 'src\core\str\split_into_nhot.cc', 'src\core\str\utils.cc', 'src\core\tests\test_atomic.cc', 'src\core\tests\test_barrier.cc', 'src\core\tests\test_parallel_for.cc', 'src\core\tests\testparallel for_ordered.cc', 'src\core\tests\test_progress.cc', 'src\core\tests\test_shared_mutex.cc', 'src\core\types\py_type.cc', 'src\core\types\type.cc', 'src\core\types\typeimpl.cc', 'src\core\types\typeimpl_numeric.c c', 'src\core\types\type_array.cc', 'src\core\types\type_bool.cc', 'src\core\types\type_categorical.cc', 'src\core\types\type_date.cc', 'src\core\types\type_float.cc', 'src\core\types\type_int.cc', 'src\core\ types\type_invalid.cc', 'src\core\types\type_object.cc', 'src\core\types\type_string.cc', 'src\core\types\type_time.cc', 'src\core\types\type_void.cc', 'src\core\utils\alloc.cc', 'src\core\utils\exceptions.cc' , 'src\core\utils\file.cc', 'src\core\utils\fuzzy_match.cc', 'src\core\utils\logger.cc', 'src\core\utils\misc.cc', 'src\core\utils\temporary_file.cc', 'src\core\utils\tests.cc', 'src\core\utils\wcwidth.cc', 'src\core\utils\terminal\terminal.cc', 'src\core\utils\terminal\terminal_stream.cc', 'src\core\utils\terminal\tstring.cc', 'src\core\utils\terminal\tstring_impl.cc', 'src\core\utils\terminal\tstring_mixed.cc' , 'src\core\utils\terminal\tstring_plain.cc', 'src\core\utils\terminal\tstring_styled.cc', 'src\core\write\csv_writer.cc', 'src\core\write\value_writer.cc', 'src\core\write\write_chronicler.cc', 'src\core\writ e\write_manager.cc', 'src\core\write\writing_context.cc'] Using compiler of class xbuild.compiler.Compiler Traceback (most recent call last): File "C:\Users\lindhorsthe\Projects\bottle_logistics\venv\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py", line 353, in main() File "C:\Users\lindhorsthe\Projects\bottle_logistics\venv\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py", line 335, in main json_out['return_val'] = hook(**hook_input['kwargs']) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\lindhorsthe\Projects\bottle_logistics\venv\Lib\site-packages\pip_vendor\pyproject_hooks_in_process_in_process.py", line 152, in prepare_metadata_for_build_wheel whl_basename = backend.build_wheel(metadata_directory, config_settings) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8\ci\ext.py", line 595, in build_wheel so_file = build_extension(cmd=("debug" if debug_wheel else "build"), ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8\ci\ext.py", line 227, in build_extension ext.compiler.enable_colors() File "C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8\ci\xbuild\compiler.py", line 274, in enable_colors if not self.is_msvc(): ^^^^^^^^^^^^^^ File "C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8\ci\xbuild\compiler.py", line 91, in is_msvc return self.flavor == "msvc" ^^^^^^^^^^^ File "C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8\ci\xbuild\compiler.py", line 78, in flavor self._detect_compiler_executable() File "C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8\ci\xbuild\compiler.py", line 146, in _detect_compiler_executable self._detect_winsdk() File "C:\Users\lindhorsthe\AppData\Local\Temp\pip-req-build-27kfhpx8\ci\xbuild\compiler.py", line 207, in _detect_winsdk % msvc_path) ^^^^^^^^^ NameError: name 'msvc_path' is not defined [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip. error: metadata-generation-failed

× Encountered error while generating package metadata. ╰─> See above for output.

note: This is an issue with the package mentioned above, not pip. hint: See above for details.

Research on this error leads to the hint to use a AppVeyor Artifact

manuelfmerino commented 10 months ago

Hi, I'm facing the same issue here, no wheels available on AppVeyor and can't install using pip install git+https://github.com/h2oai/datatable (I get a similar error output as above).

Justinjay282 commented 10 months ago

I also encountered a similar error in Python 3.10 and 3.11. But installing it in Python 3.9 works for me, I just typed pip install datatable