unisonweb / unison

A friendly programming language from the future
https://unison-lang.org
Other
5.75k stars 269 forks source link

In UCM `pull ... .project` doesn't add the entities to the project #4762

Open piotrga opened 6 months ago

piotrga commented 6 months ago
test1/main> project.create-empty wordle
  🎉 I've created the project wordle.
...

wordle/main> pull unison.public.website.learn.labs.wordle.solutions.stubs .wordle

  Downloaded 0 entities.

  Merging...

  😶

  .wordle was already up-to-date with unison.public.website.learn.labs.wordle.solutions.stubs.

wordle/main> ls

  nothing to show
piotrga commented 6 months ago

However if I do pull ... without the project name it works inside of the current project.

wordle/main> pull unison.public.website.learn.labs.wordle.solutions.stubs

  Downloaded 0 entities.

  ✅

  Successfully pulled into wordle/main, which was empty.

wordle/main> ls

  1.  Guess           (type)
  2.  Guess/          (4 terms)
  3.  Result          (type)
  4.  Result/         (4 terms)
  5.  TODO            (type)
  6.  TODO/           (1 term)
  7.  Target          (type)
  8.  Target/         (3 terms)
  9.  characterResult ((Char, Nat) -> Target -> Result)
  10. exists          ((Char, Nat) -> Target -> Boolean)
  11. gameLoop        (Nat -> Target -> [[Result]] ->{IO, Exception, Ask (Set Text)} ())
  12. getUserInput    ('{IO, Exception, Ask (Set Text)} Guess)
  13. guesser         (Set Text -> Guess)
  14. inLocation      ((Char, Nat) -> Target -> Boolean)
  15. isVictory       ([Result] -> Boolean)
  16. lib/            (4033 terms, 190 types)
  17. loadDict        (FilePath -> '{IO, Exception} Set Text)
  18. loadDictBuiltin ('{IO, Exception} Optional (Set Text))
  19. main            ('{IO, Exception} ())
  20. overrideLookup  (Text -> '{IO, Exception} Boolean)
  21. readFile        (FilePath -> '{IO, Exception} Text)
  22. refine          (Set Text -> Guess -> Target -> Set Text)
  23. renderChar      (Result -> Text)
  24. renderGuesses   ([[Result]] -> Text)
  25. renderRow       ([Result] -> Text)
  26. renderTest      ('{IO, Exception} ())
  27. solve           (Set Text -> Target -> [Guess])
  28. yesNo           ('{IO, Exception} Boolean)

wordle/main>
aryairani commented 5 months ago

@piotrga Here you want pull unison.public.website.learn.labs.wordle.solutions.stubs wordle not pull unison.public.website.learn.labs.wordle.solutions.stubs .wordle .wordle is a destination outside of your project, which is why you didn't see any change in your project. However, we do plan to make the original syntax you tried work in the future.

aryairani commented 5 months ago

@piotrga Sorry I think I misunderstood what you were trying to do. What I now suspect you wanted is:

wordle/main> pull unison.public.website.learn.labs.wordle.solutions.stubs wordle/main