clj-python / clj-python/libpython-clj
Extend CI coverage to all the mainstream architectures
Chưa có ai nhận issue này.
- Ngôn ngữ chính
- Clojure
- Star
- 1.2k
- Fork
- 74
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Hi,
there is no extended CI coverage to non-linux archs to indicate the lib can run on any of the non-linux architectures. It is currently broken on MS-Windows (see #246) and most probably has always been?
Moreover, the the build indicator on the front page although it indicates that the build is passing, it point to a 404 on the travis website.
In addition to this, the test suit fails to run on python greater than 3.10, due to the removal of a deprecated package path in python from collections.Mappings to collections.abc.Mappings. This is another indication that the travis suite (which I assume picks up the latest python version) is not working?
To reproduce on Linux run
[~/src/libpython-clj]$ python --version
Python 3.10.11
(venv)
[~/src/libpython-clj]$ clj -M:jdk-17:test
WARNING: Using incubator modules: jdk.incubator.foreign
Running tests in #{"test"}
21:15:09.121 [main] INFO libpython-clj2.python.info - Detecting startup info
21:15:09.316 [main] INFO libpython-clj2.python - Startup info {:lib-version "3.10", :java-library-path-addendum "/nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11/lib", :exec-prefix "~/src/libpython-clj/venv", :executable "/home/chaos/src/libpython-clj/venv/bin/python3", :libnames ("python3.10m" "python3.10"), :prefix "~/src/libpython-clj/venv", :base-prefix "/nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11", :libname "python3.10m", :base-exec-prefix "/nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11", :python-home "/nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11", :version [3 10 11], :platform "linux"}
21:15:09.316 [main] INFO libpython-clj2.python - Prefixing java library path: /nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11/lib
21:15:09.433 [main] INFO libpython-clj2.python - Loading python library: /nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11/lib/libpython3.10.so
21:15:10.140 [main] DEBUG libpython-clj2.python.ffi - Initializing Python C Layer
21:15:10.146 [tech.resource.gc ref thread] INFO tech.v3.resource.gc - Reference thread starting
21:15:10.149 [main] DEBUG libpython-clj2.python.ffi - Python Home: /nix/store/lwzzgbnj41d657lpxczk6l5f7d5zcnj1-python3-3.10.11
21:15:10.193 [main] INFO tech.v3.datatype.nio-buffer - Unable to find direct buffer constructor -
falling back to jdk16 memory model.
Testing libpython-clj2.classes-test
Testing libpython-clj2.ffi-test
Testing libpython-clj2.fncall-test
Testing libpython-clj2.iter-gen-seq-test
.# ..
ERROR in (instance-abc-classes) (ffi.clj:708)
Uncaught exception, not in assertion.
expected: nil
actual: java.lang.Exception: AttributeError: module 'collections' has no attribute 'Mapping'
at libpython_clj2.python.ffi$check_error_throw.invokeStatic (ffi.clj:708)
libpython_clj2.python.ffi$check_error_throw.invoke (ffi.clj:706)
libpython_clj2.python.ffi$simplify_or_track.invokeStatic (ffi.clj:973)
libpython_clj2.python.ffi$simplify_or_track.invoke (ffi.clj:954)
libpython_clj2.python.base$eval12483$fn__12492.invoke (base.clj:138)
#...
clojure.main.main (main.java:40)
As such, I'd like to make a suggestion to fix the above issue and extend the CI coverage across all mainstream architectures and python versions, PR to follow.
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- 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.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Hướng nghiên cứu
Issue nêu bộ Travis CI và clj -M:jdk-17:test là điểm bắt đầu để tái hiện; trước tiên hãy kiểm tra cấu hình CI và chạy lệnh đó trên các phiên bản Python được báo cáo. Kiểm tra lỗi instance-abc-classes và chỉ báo build trên trang đầu. Hoàn tất khi CI bao phủ các kiến trúc và phiên bản Python được yêu cầu, bộ kiểm thử chạy thành công và liên kết build không còn trả về 404.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- clojure, python
- Lĩnh vực
- build-system, ci-cd, operating-systems
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100