๐ข We have an error for publish action. Letโs fix it and rerun it.
๐ There are two errors. One is from forgetting sudo
when installing dependencies. The other is the wrong name for openssl library. It should be libssl-dev
instead of openssl-dev
. Maybe we can link the command list in the docs.
๐ข Oops, yes, we should at least keep that in mind.
๐ Iโm checking most popular crates. getrandom retrieves random number from the system. It looks much lighter than rand
crate.
๐ฆ We can use once_cell to initialize XvcEntityCounter
. We currently use Once
for this.
๐ I donโt think it will provide any better features.
๐ฆ For that case, yes, not better features. But the interface is something like:
impl<T> OnceCell<T> {
const fn new() -> OnceCell<T> { ... }
fn set(&self, value: T) -> Result<(), T> { ... }
fn get(&self) -> Option<&T> { ... }
}
and this makes, for example, working with XvcRoot much easier. We are passing Arc<RwLock<XvcRootInner>>>
everywhere. This is a heavy price when we only use it read only. We can prevent most of these, when we use read
lock, by using OnceCell
.
๐ XvcConfig
can benefit from this as well. We donโt update config during runs.
๐ข Why do we want to assign it though? We currently have a config
field in XvcRootInner
and we get a reference to it with config()
method.
๐ Ok. Letโs skip this for now. No need to worry before measuring performance impact.