Our guesses for Ancient Greek are that it was /u/ in most ancient dialects of Greek, and /y/ (German ü) in Attic.
Upsilon was the last letter to change pronunciation in Modern Greek, to /i/. <oi> had also come to be pronounced as /y/ in late Antiquity (they are routinely confused, only with each other, in the proto-Bulgarian inscriptions); it too went to /i/.
- We have a poem from 1030 AD making fun of the new pronunciation (Michael the Grammarian’s irony about hypsilon: a step towards reconstructing byzantine pronunciation): a rustic priest is ridiculed for pronouncing <xylon> the modern way.
- We have evidence from placenames indicating the old pronunciation was around in the 1100s and 1200s (Koryfoi > Old French Corfu, Oinoe > Turkish Ünye).
- We have archaic dialects of Greek—Old Athenian, Tsakonian—in which the reflex of upsilon is [ju], just as French /y/ went to English [ju] (pure).
- And most sensationally, Nikos Pantelidis has recently published a paper unearthing evidence he finds persuasive, that the /y/ pronunciation survived in Old Athenian (the original dialect of Athens, before it was overwhelmed by Peloponnesian settlers in the new Greek state) until the 1840s: https://www.researchgate.net/pub…
, speech-language pathologist