Lines 1899-1905
Link Here
|
1899 |
# this block. |
1899 |
# this block. |
1900 |
upgrade_node = \ |
1900 |
upgrade_node = \ |
1901 |
self.pkg_node_map[proot][upgrade_matches[0]] |
1901 |
self.pkg_node_map[proot][upgrade_matches[0]] |
1902 |
depends_on_order.add(upgrade_node) |
1902 |
depends_on_order.add((upgrade_node, parent)) |
1903 |
continue |
1903 |
continue |
1904 |
# None of the above blocker resolutions techniques apply, |
1904 |
# None of the above blocker resolutions techniques apply, |
1905 |
# so apparently this one is unresolvable. |
1905 |
# so apparently this one is unresolvable. |
Lines 1915-1927
Link Here
|
1915 |
# This blocker will be handled the next time that a |
1915 |
# This blocker will be handled the next time that a |
1916 |
# merge of either package is triggered. |
1916 |
# merge of either package is triggered. |
1917 |
continue |
1917 |
continue |
|
|
1918 |
if not parent_static and pstatus == "nomerge" and \ |
1919 |
slot_atom in modified_slots[myroot]: |
1920 |
replacement = final_db.match(pslot_atom) |
1921 |
if replacement: |
1922 |
replacement_node = \ |
1923 |
self.pkg_node_map[proot][replacement[0]] |
1924 |
if replacement_node not in \ |
1925 |
self.blocker_parents[blocker]: |
1926 |
# Apparently a replacement may be able to |
1927 |
# invalidate this block. |
1928 |
blocked_node = self.pkg_node_map[proot][cpv] |
1929 |
depends_on_order.add( |
1930 |
(replacement_node, blocked_node)) |
1931 |
continue |
1918 |
# None of the above blocker resolutions techniques apply, |
1932 |
# None of the above blocker resolutions techniques apply, |
1919 |
# so apparently this one is unresolvable. |
1933 |
# so apparently this one is unresolvable. |
1920 |
unresolved_blocks = True |
1934 |
unresolved_blocks = True |
1921 |
if not unresolved_blocks and depends_on_order: |
1935 |
if not unresolved_blocks and depends_on_order: |
1922 |
for node in depends_on_order: |
1936 |
for node, pnode in depends_on_order: |
1923 |
# Enforce correct merge order with a hard dep. |
1937 |
# Enforce correct merge order with a hard dep. |
1924 |
self.digraph.addnode(node, parent, |
1938 |
self.digraph.addnode(node, pnode, |
1925 |
priority=DepPriority(buildtime=True)) |
1939 |
priority=DepPriority(buildtime=True)) |
1926 |
# Count references to this blocker so that it can be |
1940 |
# Count references to this blocker so that it can be |
1927 |
# invalidated after nodes referencing it have been |
1941 |
# invalidated after nodes referencing it have been |