From: "naruse (Yui NARUSE)" Date: 2022-01-30T10:07:06+00:00 Subject: [ruby-core:107359] [Ruby master Bug#18436] Fix Pathname dot directory globbing Issue #18436 has been updated by naruse (Yui NARUSE). Backport changed from 2.6: DONTNEED, 2.7: DONTNEED, 3.0: DONTNEED, 3.1: REQUIRED to 2.6: DONTNEED, 2.7: DONTNEED, 3.0: DONTNEED, 3.1: DONE ruby_3_1 e75246c287436621658bc2b8a5f999d8991e7d1d merged revision(s) 5917f49ad03cd3b2c13d3eea85c969a113b83bf8. ---------------------------------------- Bug #18436: Fix Pathname dot directory globbing https://bugs.ruby-lang.org/issues/18436#change-96260 * Author: bkuhlmann (Brooke Kuhlmann) * Status: Closed * Priority: Normal * ruby -v: ruby 3.1.0p0 (2021-12-25 revision fb4df44d16) [arm64-darwin21.2.0] * Backport: 2.6: DONTNEED, 2.7: DONTNEED, 3.0: DONTNEED, 3.1: DONE ---------------------------------------- ## Overview With 3.1.0, I'm seeing different behavior when trying to obtain directories which have a dot (.) prefix. With 3.0.x, `..` would be answered but with 3.1.0, `..` is missing. Is this to be expected because the [documentation](https://rubyapi.org/3.1/o/dir#method-c-glob) states that `Dir.glob` should include `..` since `Pathname.glob` wraps `Dir.glob`. If this is desired behavior feel free to close this issue but it caught me by surprise so wanted to ask in case it's a concern. Thanks! ## Screenshots/Screencasts (see attached screenshot where I demonstration behavior between 3.0.3 and 3.1.0.) ## Steps to Recreate 1. Create a new project directory called "demo" and then change directory to "demo". 2. Create a sub-directory call `.config`. 3. Using Ruby 3.0.3, launch IRB. 4. Run: `require "pathname"` 5. Run: `Pathname.glob("*", File::FNM_DOTMATCH).select(&:directory?).sort` 6. Repeat Steps #4 - #5 using 3.1.0 this time and notice the difference in behavior. ## Environment Ruby 3.0.3 and 3.1.0. ---Files-------------------------------- screenshot.png (48.2 KB) -- https://bugs.ruby-lang.org/ Unsubscribe: