Subject: CVS commit: pkgsrc/devel/ruby-zeitwerk
From: Takahiro Kambe
Date: 2023-02-11 14:48:12
Message id: 20230211134812.B59DAFA90@cvs.NetBSD.org

Log Message:
devel/ruby-zeitwerk: update to 2.6.7

2.6.7 (2023-02-10)

* Reset module state on Zeitwerk::NameError.

  If an autoload is triggered, the file is loaded successfully, but the
  expected constant does not get defined, Ruby resets the state of the
  module.  In particular, autoload? returns nil for that constant name, and
  constants does not include the constant name (starting with Ruby 3.1).

  Zeitwerk is more strict, not defining the expected constant is an error
  condition and the loader raises Zeitwerk::NameError.  But this happens
  during the require call and the exception prevents Ruby from doing that
  cleanup.

  With this change, the parent module is left in a state that makes more
  sense and is consistent with what Ruby does.

* A message is logged if an autoload did not define the expected constant.

  When that happens, Zeitwerk::NameError is raised and you normally see the
  exception.  But if the error is shallowed, and you are inspecting the logs
  to investigate something, this new message may be helpful.

* By default, Zeitwerk::Loader#dirs filters ignored root directories
  out. Please, pass ignored: true if you want them included.

  It is very strange to configure a root directory and also ignore it, the
  edge case is supported only for completeness.  However, in that case,
  client code listing root directories rarely needs the ignored ones.

* Documentation improvements.

* Enforcement of private interfaces continues with another gradual patch.

Files:
RevisionActionfile
1.10modifypkgsrc/devel/ruby-zeitwerk/Makefile
1.12modifypkgsrc/devel/ruby-zeitwerk/distinfo