[#98645] [Ruby master Misc#16933] DevelopersMeeting20200618Japan — mame@...

Issue #16933 has been reported by mame (Yusuke Endoh).

14 messages 2020/06/04

[#98663] [Ruby master Bug#16936] `make check TESTS="-n !/Foo#method/"` not skipping the test case — jaruga@...

Issue #16936 has been reported by jaruga (Jun Aruga).

13 messages 2020/06/05

[#98772] [Ruby master Bug#16959] Weakmap has specs and third-party usage despite being a private API — headius@...

Issue #16959 has been reported by headius (Charles Nutter).

13 messages 2020/06/12

[#98826] [Ruby master Feature#16963] Remove English.rb from Ruby 2.8/3.0 — hsbt@...

Issue #16963 has been reported by hsbt (Hiroshi SHIBATA).

9 messages 2020/06/16

[#98920] [Ruby master Bug#16978] Ruby should not use realpath for __FILE__ — v.ondruch@...

Issue #16978 has been reported by vo.x (Vit Ondruch).

24 messages 2020/06/23

[#98947] [Ruby master Feature#16986] Anonymous Struct literal — ko1@...

Issue #16986 has been reported by ko1 (Koichi Sasada).

66 messages 2020/06/26

[#98964] [Ruby master Feature#16989] Sets: need ♥️ — marcandre-ruby-core@...

SXNzdWUgIzE2OTg5IGhhcyBiZWVuIHJlcG9ydGVkIGJ5IG1hcmNhbmRyZSAoTWFyYy1BbmRyZSBM

33 messages 2020/06/26

[#98965] [Ruby master Feature#16990] Sets: operators compatibility with Array — marcandre-ruby-core@...

Issue #16990 has been reported by marcandre (Marc-Andre Lafortune).

11 messages 2020/06/26

[#98968] [Ruby master Feature#16993] Sets: from hash keys using Hash#key_set — marcandre-ruby-core@...

Issue #16993 has been reported by marcandre (Marc-Andre Lafortune).

10 messages 2020/06/26

[#98997] [Ruby master Feature#17000] 2.7.2 turns off deprecation warnings by deafult — mame@...

Issue #17000 has been reported by mame (Yusuke Endoh).

16 messages 2020/06/30

[ruby-core:98926] [Ruby master Bug#16979] FileUtils#cp_r with preserve, lchmod fails with ENOTSUPP

From: shyouhei@...
Date: 2020-06-24 00:53:09 UTC
List: ruby-core #98926
Issue #16979 has been updated by shyouhei (Shyouhei Urabe).


I guess this is already fixed in changeset commit:a19228f878d955eaf2cce086bcf53f46fdf894b9

----------------------------------------
Bug #16979: FileUtils#cp_r with preserve, lchmod fails with ENOTSUPP
https://bugs.ruby-lang.org/issues/16979#change-86303

* Author: vihai (Daniele Orlandi)
* Status: Open
* Priority: Normal
* ruby -v: ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [armv7-linux-musleabihf]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN, 2.7: UNKNOWN
----------------------------------------

Hello,

I encountered an issue copying a directory tree with symlinks with FileUtils#cp_r with preserve flag.

Apparently FileUtils considers the possibility that lchmod raises NotImplementedError, however it apparently does not but still fails with ENOTSUPP.
Note that I am using musl libc (it is an Alpine 3.12 distribution) thus it may be related to how libc exposes unsupported lchmod.

I was unable to reproduce it with a minimal tree, thus here is the output with the actual tree (it is a bundled application):

```
cp -rp /root/kamaji/assets /root/kamaji/bin /root/kamaji/config /root/kamaji/lib /root/kamaji/vendor /root/kamaji/apk/build/data
Traceback (most recent call last):
        42: from apk/build.rb:28:in `<main>'
        41: from /usr/lib/ruby/2.7.0/fileutils.rb:467:in `cp_r'
        40: from /usr/lib/ruby/2.7.0/fileutils.rb:1586:in `fu_each_src_dest'
        39: from /usr/lib/ruby/2.7.0/fileutils.rb:1595:in `fu_each_src_dest0'
        38: from /usr/lib/ruby/2.7.0/fileutils.rb:1595:in `each'
        37: from /usr/lib/ruby/2.7.0/fileutils.rb:1597:in `block in fu_each_src_dest0'
        36: from /usr/lib/ruby/2.7.0/fileutils.rb:1588:in `block in fu_each_src_dest'
        35: from /usr/lib/ruby/2.7.0/fileutils.rb:468:in `block in cp_r'
        34: from /usr/lib/ruby/2.7.0/fileutils.rb:494:in `copy_entry'
        33: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        32: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        31: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
        30: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        29: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        28: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
        27: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        26: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        25: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
        24: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        23: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        22: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
        21: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        20: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        19: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
        18: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        17: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        16: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
        15: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        14: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        13: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
        12: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
        11: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
        10: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
         9: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
         8: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
         7: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
         6: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `wrap_traverse'
         5: from /usr/lib/ruby/2.7.0/fileutils.rb:1514:in `each'
         4: from /usr/lib/ruby/2.7.0/fileutils.rb:1515:in `block in wrap_traverse'
         3: from /usr/lib/ruby/2.7.0/fileutils.rb:1518:in `wrap_traverse'
         2: from /usr/lib/ruby/2.7.0/fileutils.rb:500:in `block in copy_entry'
         1: from /usr/lib/ruby/2.7.0/fileutils.rb:1441:in `copy_metadata'
/usr/lib/ruby/2.7.0/fileutils.rb:1441:in `lchmod': Not supported @ apply2files - /root/kamaji/apk/build/data/vendor/bundle/ruby/2.7.0/gems/ffi-1.13.1/ext/ffi_c/libffi-armv7-linux-musleabihf/.libs/libffi.la (Errno::ENOTSUP)
```
```
# ll /root/kamaji/apk/build/data/vendor/bundle/ruby/2.7.0/gems/ffi-1.13.1/ext/ffi_c/libffi-armv7-linux-musleabihf/.libs/
total 8
drwxr-xr-x 2 root root 4096 Jun 23 15:28 .
drwxr-xr-x 8 root root 4096 Jun 23 15:28 ..
lrwxrwxrwx 1 root root   12 Jun 23 15:28 libffi.la -> ../libffi.la

# ll /root/kamaji/apk/build/data/vendor/bundle/ruby/2.7.0/gems/ffi-1.13.1/ext/ffi_c/libffi-armv7-linux-musleabihf/
total 612
[...]
-rw-r--r-- 1 root root    915 Jun 23 13:48 libffi.la
[...]

# ruby -v
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [armv7-linux-musleabihf]

# uname -a
Linux arm-builder 4.19.118-v7l+ #1311 SMP Mon Apr 27 14:26:42 BST 2020 armv7l GNU/Linux
```

LIBC is musl-1.1.24-r9




-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread