Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Test suite fails on ppc64le

Đang mở
#40 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
25/100
Loại issue
Lỗi
Độ rõ ràng
Cần làm rõ
Mức độ hoạt động
Đình trệ
Công nghệ
cpp, electron, javascript, node.js
Lĩnh vực
backend, testing-qa

Hướng nghiên cứu

Tái hiện lỗi trên ppc64le bằng npm install và ELECTRON_RUN_AS_NODE=1 /usr/lib64/electron-26/electron ./node_modules/.bin/mocha. Bắt đầu bằng việc kiểm tra src/main.cc và src/logger.cc cùng với backtrace được báo cáo trong build/Release/spdlog.node; hoàn thành khi các bài kiểm thử API chạy xong mà không xảy ra segmentation fault trên nền tảng đó.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

niko@talos2 ~/devel/node-spdlog $ git submodule update --init --recursive
Submodule 'deps/spdlog' (https://github.com/gabime/spdlog.git) registered for path 'deps/spdlog'
Cloning into '/home/niko/devel/node-spdlog/deps/spdlog'...
Submodule path 'deps/spdlog': checked out 'ad0e89cbfb4d0c1ce4d097e134eb7be67baebb36'
niko@talos2 ~/devel/node-spdlog $ npm_config_nodedir=/usr/include/electron-26/node npm install

> @vscode/spdlog@0.13.11 install
> node-gyp rebuild

gyp info it worked if it ends with ok
gyp info using node-gyp@9.3.1
gyp info using node@18.17.1 | linux | ppc64
gyp info find Python using Python version 3.11.5 found at "/usr/lib/python-exec/python3.11/python3"
gyp info spawn /usr/lib/python-exec/python3.11/python3
gyp info spawn args [
gyp info spawn args   '/home/niko/.local/share/fnm/node-versions/v18.17.1/installation/lib/node_modules/npm/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args   'binding.gyp',
gyp info spawn args   '-f',
gyp info spawn args   'make',
gyp info spawn args   '-I',
gyp info spawn args   '/home/niko/devel/node-spdlog/build/config.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/home/niko/.local/share/fnm/node-versions/v18.17.1/installation/lib/node_modules/npm/node_modules/node-gyp/addon.gypi',
gyp info spawn args   '-I',
gyp info spawn args   '/usr/include/electron-26/node/include/node/common.gypi',
gyp info spawn args   '-Dlibrary=shared_library',
gyp info spawn args   '-Dvisibility=default',
gyp info spawn args   '-Dnode_root_dir=/usr/include/electron-26/node',
gyp info spawn args   '-Dnode_gyp_dir=/home/niko/.local/share/fnm/node-versions/v18.17.1/installation/lib/node_modules/npm/node_modules/node-gyp',
gyp info spawn args   '-Dnode_lib_file=/usr/include/electron-26/node/$(Configuration)/node.lib',
gyp info spawn args   '-Dmodule_root_dir=/home/niko/devel/node-spdlog',
gyp info spawn args   '-Dnode_engine=v8',
gyp info spawn args   '--depth=.',
gyp info spawn args   '--no-parallel',
gyp info spawn args   '--generator-output',
gyp info spawn args   'build',
gyp info spawn args   '-Goutput_dir=.'
gyp info spawn args ]
gyp info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
make: Entering directory '/home/niko/devel/node-spdlog/build'
  CXX(target) Release/obj.target/spdlog/src/main.o
In file included from /usr/include/electron-26/node/include/node/v8-object.h:10,
                 from /usr/include/electron-26/node/include/node/v8-array-buffer.h:13,
                 from /usr/include/electron-26/node/include/node/v8.h:24,
                 from /usr/include/electron-26/node/include/node/node.h:79,
                 from ../node_modules/nan/nan.h:60,
                 from ../src/main.cc:7:
/usr/include/electron-26/node/include/node/v8-persistent-handle.h:245:44: warning: ‘template<class T> struct v8::CopyablePersistentTraits’ is deprecated: Use v8::Global instead [-Wdeprecated-declarations]
  245 |   using CopyablePersistent = Persistent<T, CopyablePersistentTraits<T>>;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/electron-26/node/include/node/v8-persistent-handle.h:244:48: note: declared here
  244 | struct V8_DEPRECATED("Use v8::Global instead") CopyablePersistentTraits {
      |                                                ^~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:206:16: warning: ‘template<class T> struct v8::CopyablePersistentTraits’ is deprecated: Use v8::Global instead [-Wdeprecated-declarations]
  206 |     public v8::CopyablePersistentTraits<T> {};
      |                ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/electron-26/node/include/node/v8-persistent-handle.h:244:48: note: declared here
  244 | struct V8_DEPRECATED("Use v8::Global instead") CopyablePersistentTraits {
      |                                                ^~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h: In function ‘bool Nan::IdleNotification(int)’:
../node_modules/nan/nan.h:686:63: warning: ‘bool v8::Isolate::IdleNotificationDeadline(double)’ is deprecated: Use MemoryPressureNotification() to influence the GC schedule. [-Wdeprecated-declarations]
  686 |     return v8::Isolate::GetCurrent()->IdleNotificationDeadline(
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
  687 |         idle_time_in_ms * 0.001);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~                               
In file included from /usr/include/electron-26/node/include/node/v8-initialization.h:13,
                 from /usr/include/electron-26/node/include/node/v8.h:34:
/usr/include/electron-26/node/include/node/v8-isolate.h:1297:8: note: declared here
 1297 |   bool IdleNotificationDeadline(double deadline_in_seconds);
      |        ^~~~~~~~~~~~~~~~~~~~~~~~
../src/main.cc: At global scope:
/usr/include/electron-26/node/include/node/node.h:1010:7: warning: cast between incompatible function types from ‘void (*)(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE)’ {aka ‘void (*)(v8::Local<v8::Object>)’} to ‘node::addon_register_func’ {aka ‘void (*)(v8::Local<v8::Object>, v8::Local<v8::Value>, void*)’} [-Wcast-function-type]
 1010 |       (node::addon_register_func) (regfunc),                          \
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/electron-26/node/include/node/node.h:1044:3: note: in expansion of macro ‘NODE_MODULE_X’
 1044 |   NODE_MODULE_X(modname, regfunc, NULL, 0)  // NOLINT (readability/null_usage)
      |   ^~~~~~~~~~~~~
../src/main.cc:18:1: note: in expansion of macro ‘NODE_MODULE’
   18 | NODE_MODULE(spdlog, Init)
      | ^~~~~~~~~~~
  CXX(target) Release/obj.target/spdlog/src/logger.o
In file included from /usr/include/electron-26/node/include/node/v8-object.h:10,
                 from /usr/include/electron-26/node/include/node/v8-array-buffer.h:13,
                 from /usr/include/electron-26/node/include/node/v8.h:24,
                 from /usr/include/electron-26/node/include/node/node.h:79,
                 from ../node_modules/nan/nan.h:60,
                 from ../src/logger.h:10,
                 from ../src/logger.cc:12:
/usr/include/electron-26/node/include/node/v8-persistent-handle.h:245:44: warning: ‘template<class T> struct v8::CopyablePersistentTraits’ is deprecated: Use v8::Global instead [-Wdeprecated-declarations]
  245 |   using CopyablePersistent = Persistent<T, CopyablePersistentTraits<T>>;
      |                                            ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/electron-26/node/include/node/v8-persistent-handle.h:244:48: note: declared here
  244 | struct V8_DEPRECATED("Use v8::Global instead") CopyablePersistentTraits {
      |                                                ^~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h:206:16: warning: ‘template<class T> struct v8::CopyablePersistentTraits’ is deprecated: Use v8::Global instead [-Wdeprecated-declarations]
  206 |     public v8::CopyablePersistentTraits<T> {};
      |                ^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/electron-26/node/include/node/v8-persistent-handle.h:244:48: note: declared here
  244 | struct V8_DEPRECATED("Use v8::Global instead") CopyablePersistentTraits {
      |                                                ^~~~~~~~~~~~~~~~~~~~~~~~
../node_modules/nan/nan.h: In function ‘bool Nan::IdleNotification(int)’:
../node_modules/nan/nan.h:686:63: warning: ‘bool v8::Isolate::IdleNotificationDeadline(double)’ is deprecated: Use MemoryPressureNotification() to influence the GC schedule. [-Wdeprecated-declarations]
  686 |     return v8::Isolate::GetCurrent()->IdleNotificationDeadline(
      |            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
  687 |         idle_time_in_ms * 0.001);
      |         ~~~~~~~~~~~~~~~~~~~~~~~~                               
In file included from /usr/include/electron-26/node/include/node/v8-initialization.h:13,
                 from /usr/include/electron-26/node/include/node/v8.h:34:
/usr/include/electron-26/node/include/node/v8-isolate.h:1297:8: note: declared here
 1297 |   bool IdleNotificationDeadline(double deadline_in_seconds);
      |        ^~~~~~~~~~~~~~~~~~~~~~~~
  SOLINK_MODULE(target) Release/obj.target/spdlog.node
  COPY Release/spdlog.node
make: Leaving directory '/home/niko/devel/node-spdlog/build'
gyp info ok 

added 83 packages, and audited 84 packages in 35s

20 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities
niko@talos2 ~/devel/node-spdlog $ ELECTRON_RUN_AS_NODE=1 /usr/lib64/electron-26/electron ./node_modules/.bin/mocha


  API
    ✔ Version
    ✔ Logger is present
Segmentation fault (core dumped)
talos2 ~ # coredumpctl list
TIME                             PID  UID  GID SIG     COREFILE EXE                                                                                  SIZE
Wed 2023-09-06 10:19:13 CEST   17392 1000 1000 SIGSEGV present  /usr/lib64/electron-26/electron                                                      7.0M
talos2 ~ # coredumpctl gdb 17392
           PID: 17392 (electron)
           UID: 1000 (niko)
           GID: 1000 (niko)
        Signal: 11 (SEGV)
     Timestamp: Wed 2023-09-06 10:19:12 CEST (26s ago)
  Command Line: /usr/lib64/electron-26/electron ./node_modules/.bin/mocha
    Executable: /usr/lib64/electron-26/electron
 Control Group: /user.slice/user-1000.slice/user@1000.service/session.slice/vte-spawn-bc9c63ba-b11d-4ae2-a027-0dcdc029825a.scope
          Unit: user@1000.service
     User Unit: vte-spawn-bc9c63ba-b11d-4ae2-a027-0dcdc029825a.scope
         Slice: user-1000.slice
     Owner UID: 1000 (niko)
       Boot ID: a573b4c3072b46e6abcf694bbc2c58d5
    Machine ID: b3e834569b8ff461391f5ac061feb773
      Hostname: talos2
       Storage: /var/lib/systemd/coredump/core.electron.1000.a573b4c3072b46e6abcf694bbc2c58d5.17392.1693988352000000.zst (present)
  Size on Disk: 7.0M
       Message: Process 17392 (electron) of user 1000 dumped core.

GNU gdb (Gentoo 13.2 vanilla) 13.2
Copyright (C) 2023 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "powerpc64le-unknown-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://bugs.gentoo.org/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/lib64/electron-26/electron...
[New LWP 17392]
[New LWP 17394]
[New LWP 17395]
[New LWP 17397]
[New LWP 17396]
[New LWP 17393]
[New LWP 17399]
[New LWP 17401]
[New LWP 17398]
[New LWP 17402]
[New LWP 17403]
[New LWP 17400]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib64/libthread_db.so.1".
Core was generated by `/usr/lib64/electron-26/electron ./node_modules/.bin/mocha '.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00003fff74e224d4 in Nan::imp::FunctionCallbackWrapper(v8::FunctionCallbackInfo<v8::Value> const&) () from /home/niko/devel/node-spdlog/build/Release/spdlog.node
[Current thread is 1 (Thread 0x3fff8127b040 (LWP 17392))]
(gdb) backtrace
#0  0x00003fff74e224d4 in Nan::imp::FunctionCallbackWrapper(v8::FunctionCallbackInfo<v8::Value> const&) () at /home/niko/devel/node-spdlog/build/Release/spdlog.node
#1  0x0000000132818c34 in v8::internal::FunctionCallbackArguments::Call(v8::internal::CallHandlerInfo) (this=0x3fffffa68018, handler=...) at ../../v8/src/api/api-arguments-inl.h:99
#2  v8::internal::(anonymous namespace)::HandleApiCallHelper<true>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::Handle<v8::internal::FunctionTemplateInfo>, v8::internal::Handle<v8::internal::Object>, unsigned long*, int)
    (isolate=0x17d401140000, new_target=..., fun_data=..., receiver=..., argv=<optimized out>, argc=<optimized out>) at ../../v8/src/builtins/builtins-api.cc:113
#3  0x00000001328181c4 in v8::internal::Builtin_Impl_HandleApiConstruct(v8::internal::BuiltinArguments, v8::internal::Isolate*) (args=..., isolate=<optimized out>) at ../../v8/src/builtins/builtins-api.cc:144
#4  v8::internal::Builtin_HandleApiConstruct(int, unsigned long*, v8::internal::Isolate*) (args_length=10, args_object=<optimized out>, isolate=0x17d401140000) at ../../v8/src/builtins/builtins-api.cc:135
#5  0x000000013392b880 in Builtins_CEntry_Return1_ArgvOnStack_BuiltinExit ()
(gdb)

See also https://github.com/microsoft/vscode/issues/182743

@madscientist159

Ngôn ngữ chính
JavaScript
Star
58
Fork
30
Merge trung bình
3 ngày 23 giờ
Pull request đã merge (30 ngày)
3

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của microsoft/node-spdlog

Tất cả issue của microsoft/node-spdlog

Issue tương tự

Thêm issue về JavaScript

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.