Mailinglist Archive: yast-devel (87 mails)

< Previous Next >
Re: [yast-devel] Feedback needed! Hack Week project to re-define storage-ng API
  • From: Josef Reidinger <jreidinger@xxxxxxx>
  • Date: Fri, 24 Feb 2017 10:37:24 +0100
  • Message-id: <20170224103724.0164c658@linux-vvcf.privatesite>
On Thu, 23 Feb 2017 17:45:48 +0100
Ancor Gonzalez Sosa <ancor@xxxxxxx> wrote:

My Hack Week project is in that state in which all the important parts
work and now it's time to decide if it's worth investing a couple of
extra days to finish it all the way down.

Since the ultimate goal is to change how YaST interacts with
storage-ng, I would need the opinion of as many YaST developers as

So please, please, please, take a look to this and give your opinion.

The most important question is - do you prefer the proposed approach
and API* or do you prefer to continue accessing directly to
libstorage-ng from YaST?


* In general, minor details in the API can be ironed out in the short

let me comment it point by point:

Arrays instead of strictly-typed vectors

I think it make sense to have a bit specialized arrays, but it do not
make sense to not act as array, so for me the best way would be to have
something like `class MountPoints < Array` which have special filters
like mountpoints.snapshots which return again MountPoints, but only
btrfs snapshots. This allow easy extending in future and still it act
like array.

No more downcasting

good improvement

Nil instead of exceptions

make sense for me, another option that make sense for me is NullObject,
that allows some introspection and e.g. better writting to log.

Classes instead of constants and enums

nice improvement

All sizes as DiskSize objects

makes sense as it is not only integer, but have its own logic

Adding methods needed by YaST

makes sense

Less surprising API (for Rubyists)

nice just one more idea. I really hate to type everywhere staging
graph. So why not have `def all(graph = Storage.staging)` as I think
majority of other Yast modules are interested mainly in staging graph.

Overall I like it.

To unsubscribe, e-mail: yast-devel+unsubscribe@xxxxxxxxxxxx
To contact the owner, e-mail: yast-devel+owner@xxxxxxxxxxxx

< Previous Next >