Someone here, I think it was Robert Proffitt, once stated that you should buy a couple of notches below the top-end state of the art machine for the best return on your investment. It's kind of like waiting till you can afford it to start a family-you will never start one.
and regardless of when you buy, something better will come along within a few months. That's the way computer technology goes (and it's actually slowed somewhat in the past several years).
There's always something new on the horizon...something coming along in the next 2-6 months.
As the smart folks have said here, buy when you want to buy. If you need a new computer now, buy it.
I promise you that no matter what comes out in the next year or so, you'll get several years of enjoyment out of the computer you get.
If you spend the money for a higher-end box, you can often upgrade as needed later on and extend the life even more (new hard drives, more RAM, Video Card, TV card etc...).
On the other hand if your needs are pretty basic (i.e. you're not a gamer or pro/high-end graphics/video work) you can get a mid-to low end box and then just replace the whole thing in a few years.
I tend to go (close to) high-end and keep my computers for 4-5 years before replacing them. When I say "high end" I mean something like the top-of-the-line boxes from Dell, Gateway, HP or what have you. I actually got a "gaming box" (even though I'm not a gamer) from ABS Computers which cost roughly the same as the top-of-the-line models from the other guys.
But don't wait. Just get it now. As I said you'll always miss out on something no matter when you buy.
Me, I missed out on PCI Express by about 8 weeks..