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

all: Rework Opt value handling #767

Merged
merged 3 commits into from
Jun 19, 2023
Merged

all: Rework Opt value handling #767

merged 3 commits into from
Jun 19, 2023

Commits on Jun 19, 2023

  1. all: Rework Opt value handling

    This is a complete rewrite of the logic underlying `Opt`, with the
    following notable changes:
    * All options are now evaluated lazily, with safeguards ensuring that
      there can be no attempts to modify their defaults after they have been
      read once. This reduces the risk of accidentally locking in `Opt`
      and then reading stale values due to its previous reliance on static
      initializers.
    * There are now clear precedence rules for all options and every option
      can be set from all possible sources: manifest entries, env variables,
      system properties, configuration parameters, command-line arguments.
    
    In follow-up PRs, the new capabilities of `OptItem` (e.g. accumulating
    settings and JUnit configuration parameters as sources) will be used in
    Jazzer.
    
    Co-authored-by: Brian Lewis <brian.lewis@code-intelligence.com>
    2 people authored and bertschneider committed Jun 19, 2023
    Configuration menu
    Copy the full SHA
    1700688 View commit details
    Browse the repository at this point in the history
  2. Fix typo in docs

    br-lewis authored Jun 19, 2023
    Configuration menu
    Copy the full SHA
    3a8d7cd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0888d6e View commit details
    Browse the repository at this point in the history