Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

comment on

( [id://3333]=superdoc: print w/replies, xml ) Need Help??

Because it's a centralized repository, and having it in the registry allows much easier management when upgrading.

It's also a lot less taxing (code and process time) doing quick registry reads than it is opening, reading, parsing, converting from and closing a JSON file on each run in C#.

It also ensures the configuration is always in a single, specific location, so it can be read and modified without having to figure out where the installation is located (by parsing and then searching each PATH for the berrybrew.exe binary, then loading the file from the data directory).

Makes testing a whole lot easier as well.

You can still utilize the config file if you please:

  • Modify a configuration file variable
  • Run berrybrew options-update-force hidden command to reload all options from the file

It still utilizes the registry though, but the process without using the hidden command to force reload the options, the config file is read only once... upon first run of the software.

The main reason that made me change my mind from file to registry is that in this version, registry work was required for other features... UI at startup, installer/uninstaller data storage, and the modification of the .pl file association work. Once the registry became involved, migrating the config over was a natural progression.

The next version is dedicated 100% to drastically increase test coverage. No new features will be added, unless they are a side-effect of finding something while adding these new tests. I plan on adding a minimum 10x the number of tests I have now. This will allow me to find a lot of areas where I can make the code a whole lot better and more efficient, and provide better scoping for error handling. Getting the registry stuff implemented in this most recent version allows all of the new testing to be future proof.


In reply to Re^2: berrybrew, the Perlbrew for Windows v1.30 released! by stevieb
in thread berrybrew, the Perlbrew for Windows v1.30 released! by stevieb

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":



  • Are you posting in the right place? Check out Where do I post X? to know for sure.
  • Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
    <code> <a> <b> <big> <blockquote> <br /> <dd> <dl> <dt> <em> <font> <h1> <h2> <h3> <h4> <h5> <h6> <hr /> <i> <li> <nbsp> <ol> <p> <small> <strike> <strong> <sub> <sup> <table> <td> <th> <tr> <tt> <u> <ul>
  • Snippets of code should be wrapped in <code> tags not <pre> tags. In fact, <pre> tags should generally be avoided. If they must be used, extreme care should be taken to ensure that their contents do not have long lines (<70 chars), in order to prevent horizontal scrolling (and possible janitor intervention).
  • Want more info? How to link or How to display code and escape characters are good places to start.
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chilling in the Monastery: (12)
As of 2024-04-23 14:59 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found