Changes between Version 123 and Version 124 of SummerOfCode


Ignore:
Timestamp:
Mar 9, 2010, 6:03:31 PM (15 years ago)
Author:
raimue (Rainer Müller)
Comment:

Remove depot-to-depot deps, as that has been obsoleted with the images-and-archive branch

Legend:

Unmodified
Added
Removed
Modified
  • SummerOfCode

    v123 v124  
    137137Potential mentor: raimue
    138138
    139 ==== Images (Pkgview, depot-to-depot dependencies) ==== #images
    140 
    141 MacPorts implements what we call the Image mode where software are stored in a depot (e.g. `/opt/local/var/db/dports/software/gawk/3.1.5_2/opt/local/bin/gawk`). For the moment, this functions like an archive and files are hardlinked to their active location (/opt/local/bin/gawk). If port A depends on dynamic library B.dylib from port B, it actually links to /opt/local/lib/B.dylib. The idea of this task is to figure out a way for port A to be linked to the library in the depot and to work even if port B is not active. That is to say that if port foo depends on version 1.2.3 of port bar, it should be compiled and linked in such a way that it's wired to the depot location of bar, not the "activated" location.  That will finally fix the fragility problem where deactivating port bar vers n-1 in order to install port bar vers n (because other things depend on n) won't also require breaking everything that relies on n-1. This mechanism also has additional advantages such as limiting the unavailability time to a minimum, especially when upgrading libraries every other package depends on (such as gettext).
    142 
    143 Classification: challenging to very challenging task[[BR]]
    144 Programming language: Tcl[[BR]]
    145 Potential mentor: TBD
    146 
    147139==== Portfiles ==== #Portfiles
    148140
     
    201193Potential mentor: blb
    202194}}}
     195
     196
     197{{{
     198#!comment
     199# Removed ideas which do not fit to our plans anymore
     200
     201# Will be obsolete and no longer be possible with the images-and-archives branch
     202==== Images (Pkgview, depot-to-depot dependencies) ==== #images
     203
     204MacPorts implements what we call the Image mode where software are stored in a depot (e.g. `/opt/local/var/db/dports/software/gawk/3.1.5_2/opt/local/bin/gawk`). For the moment, this functions like an archive and files are hardlinked to their active location (/opt/local/bin/gawk). If port A depends on dynamic library B.dylib from port B, it actually links to /opt/local/lib/B.dylib. The idea of this task is to figure out a way for port A to be linked to the library in the depot and to work even if port B is not active. That is to say that if port foo depends on version 1.2.3 of port bar, it should be compiled and linked in such a way that it's wired to the depot location of bar, not the "activated" location.  That will finally fix the fragility problem where deactivating port bar vers n-1 in order to install port bar vers n (because other things depend on n) won't also require breaking everything that relies on n-1. This mechanism also has additional advantages such as limiting the unavailability time to a minimum, especially when upgrading libraries every other package depends on (such as gettext).
     205
     206Classification: challenging to very challenging task[[BR]]
     207Programming language: Tcl[[BR]]
     208Potential mentor: TBD
     209}}}