Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Private bindings #1968

Closed
pshirshov opened this issue Jun 23, 2023 · 3 comments
Closed

Private bindings #1968

pshirshov opened this issue Jun 23, 2023 · 3 comments

Comments

@pshirshov
Copy link
Member

pshirshov commented Jun 23, 2023

We might want to support "private" bindings which would never be exposed in Locators produced by the interpreter.

It might be useful to, for example, hide bootstrap context members from the rest of the application.

Alternatively we might hide everything apart from the graph roots and an optional list of "public" keys.

We should add a way to tell produce to respect private declarations and this should be on by default. There still may be situation when user might want to make everything public.

@neko-kai
Copy link
Member

We might want to declare 'privateness' on memoization level itself, not on the module. So e.g. we want docker memoization level to not pass on Clock instance further, but we don't want Clock to be non-singleton on every single level of memoization.

@lukoyanov
Copy link

Sounds like a great feature 👍

pshirshov added a commit that referenced this issue Aug 7, 2024
pshirshov added a commit that referenced this issue Aug 7, 2024
pshirshov added a commit that referenced this issue Aug 8, 2024
pshirshov added a commit that referenced this issue Aug 8, 2024
pshirshov added a commit that referenced this issue Aug 8, 2024
pshirshov added a commit that referenced this issue Aug 8, 2024
pshirshov added a commit that referenced this issue Aug 8, 2024
pshirshov added a commit that referenced this issue Aug 8, 2024
neko-kai pushed a commit that referenced this issue Aug 13, 2024
* #1968: private bindings PoC

* #1968: private bindings PoC

* #1968: locator-private bindings PoC

* #1968: public roots mode

* #1968: public roots mode for bootstrap injector

* docs

* bootstrap planning mode customization

* docs

* locator pretty-print

* locator pretty-print

* better formatting

* better formatting
@neko-kai
Copy link
Member

Fixed in #2162

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

No branches or pull requests

3 participants