[ruby-core:104689] [Ruby master Feature#18047] TracePoint: Add event type for constant access
From:
ksuzuki180@...
Date:
2021-07-27 01:46:01 UTC
List:
ruby-core #104689
Issue #18047 has been reported by suusan2go (Kenta Suzuki). ---------------------------------------- Feature #18047: TracePoint: Add event type for constant access https://bugs.ruby-lang.org/issues/18047 * Author: suusan2go (Kenta Suzuki) * Status: Open * Priority: Normal ---------------------------------------- Hi there We've made a PR to add new :constant_access TracePoint event. https://github.com/ruby/ruby/pull/4683 Burke Libbey made some first steps on this idea a few years ago #13133 and we improved his patch based on the comment by ko1. As mentioned in the issue above, this patch allows us to enable boundaries between packages/components. Burke's [proof-of-concept gem](https://github.com/burke/packages) might help you understand more concrete usage of this patch. The proof-of-concept gem works like the below and this will help us manage large codebases with lots of dependencies. ```ruby package 'product' class Book < ApplicationRecord belongs_to :user end package 'user' class User < ApplicationRecord has_many :books end user = User.first user.books # => VisibilityError (can't access Book from User) ``` -- 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>