Matt Cain wanted the no-hitter, and it looked for all the world that Cain could achieve anything he desired on Friday.

"I've never had one," Cain said with a shrug afterward.

Why not a no-hitter to celebrate his first home game since signing a new $112.5 million deal?

What a perfect way to open the Giants' 2012 home schedule. What a beautiful reminder of how this team can play when its pitching is that good.

It was set up. He was rolling -- Cain retired the first 17 Pirates in a row, making it look so easy that perfection seemed well within reach.

"He was going so good you felt like he had a shot at it," catcher Buster Posey said after the Giants' 5-0 victory. "He's always good, but he was really good today."

It's amazing to think that Cain had never thrown a no-hitter at any level. Not in the minors, not in Little League, not anywhere.

But Cain was heading to No-Hitter No. 1; everything pointed that way, especially after Brandon Crawford made a great acrobatic play to save a hit on a slow roller in the fourth.

Then Pirates starting pitcher James McDonald came to the plate with two outs in the sixth and whacked a high fastball into left field to break up the perfection.

No no-no.

There was no unraveling from there -- Cain took a deep breath and promptly retired the next 10 Pirates in a row, finishing off an 11-strikeout, one-hit, zero-walk classic.