Skip to content

Conversation

ryanolson
Copy link

No description provided.

ryanolson and others added 2 commits June 10, 2025 16:37
- ComponentDescriptor -> Instance
- Make Typed Entity fields private, only way to construct is through
  instance
- remove validation from type entities, to exist they must be valid.
/// Represents a validated namespace hierarchy with runtime context
#[derive(Debug, Clone)]
pub struct Namespace {
hierarchy: String,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you explain a bit more about this new namespace hierarchy concept. Below we have

hierarchy: self.namespace.clone(),

Not sure what the purpose is

- introduce Identity trait which relies on Instance, allows every Typed Struct to give their Identity
- in addition to DiscoveryKV and DiscoveryPlane add EtcdIdentity and
  PathExtension traits.
- EtcdIdentity relies on Identity and provides a translation between
  Identity format and etcd format.
- PathExtension traits allows us to create Paths object from components
  that can then be used as keys to access etcd.
@grahamking
Copy link

grahamking commented Jul 9, 2025

Could we just say that things have a name? The name is a string. That's it. Remove namespace/component/endpoint, delete this PR. Things have a name.

I don't understand the point of this enhancement. It sounds clever and complicated and unnecessary. Maybe a couple of concrete examples would help?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants