Changes between Version 6 and Version 7 of SummerOfCode2014


Ignore:
Timestamp:
May 28, 2014, 7:43:46 PM (10 years ago)
Author:
shasha@…
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SummerOfCode2014

    v6 v7  
    2727Write an interactive command-line tool that can be used instead of the non-interactive port(1). (The existing "interactive mode" of port(1) is actually just batch mode reading from stdin, and is not really interactive.) Factor out code used by both tools into a shared module.
    2828
    29 An interactive tool would ask for user input to resolve many situations that cause port(1) to simply error out.
    30 
    31 All the suggested interactivity use cases are listed below-
    32 
    33 1. If you try to install a port and one of its dependencies conflict with something already installed, it could ask if you want to
    34    deactivate the installed one and its dependents and reactivate them after the build.
    35 2. When trying to install a port but one of the files installed by this port is already present, ask the user whether the file should be
    36    overwritten.
    37 3. When a user tries to install a port, display a list of ports that will be installed as dependencies and ask for confirmation (unless
    38    there aren't any dependencies to be installed), like apt-get does.
    39 4. Asking for permission in a situation where uninstalling a package will break another package that's still installed and depends on   
    40    the to-be-uninstalled package.
    41 5. When installing a port that requires a dependency to have a certain variant, but this variant is not set. Ask the user if it should 
    42    reinstall the dependency with that variant.
    43 6. When activate is ambiguous, present a list of installed ports for the user to choose from.
    44 7. Ask user before rebuilding in rev-upgrade.
    45 8. When a user uninstalls a port using --follow-dependencies, the list of dependencies will be displayed and the user will be asked for 
    46    confirmation.
     29An interactive tool would ask for user input to resolve many situations that cause port(1) to simply error out. For example - If you try to install a port and one of its dependencies conflict with something already installed, it could ask if you want to deactivate the installed one and its dependents and reactivate them after the build.
    4730
    4831* Difficulty: Medium
     
    5033* Potential mentors: TBD
    5134
     35More details about the project [wiki:SummerOfCode2014_interactive here].
     36
    5237==== Project Clean-up Stuff ==== #cleanup
    5338