unison/unison-src/transcripts/update-ignores-lib-namespace.output.md
2024-07-31 16:41:00 -07:00

1.3 KiB

update / patch (anything that a patch) ignores the namespace named "lib" at the location it's applied. This follows the project organization convention that dependencies are put in "lib"; it's much easier to apply a patch to all of one's own code if the "lib" namespace is simply ignored.

foo = 100
lib.foo = 100

  Loading changes detected in scratch.u.

  I found and typechecked these definitions in scratch.u. If you
  do an `add` or `update`, here's how your codebase would
  change:
  
    ⍟ These new definitions are ok to `add`:
    
      foo     : Nat
      lib.foo : Nat

scratch/main> add

  ⍟ I've added these definitions:
  
    foo     : Nat
    lib.foo : Nat

foo = 200

  Loading changes detected in scratch.u.

  I found and typechecked these definitions in scratch.u. If you
  do an `add` or `update`, here's how your codebase would
  change:
  
    ⍟ These names already exist. You can `update` them to your
      new definition:
    
      foo : Nat
        (The old definition is also named lib.foo.)

scratch/main> update

  Okay, I'm searching the branch for code that needs to be
  updated...

  Done.

scratch/main> names foo

  Term
  Hash:   #9ntnotdp87
  Names:  foo