Canada is a bit tricky on CO.
All Canadian flights originating in the USA require you to check in at the International counter. You cannot check in online, or using a e-service machine (although other airlines allow this, CO prefers to restrict its international pax). If you are flying from Portland to EWR, and then on to YHZ, this means that you cannot check in online because your flight is not wholly domestic. This might mess up your chances to get on a waitlist early on if your EUA doesn't clear. But I digress...
You will not have any problems making a connection to the YHZ flight. The flights to YHZ originate in Terminal C, which is almost certainly where your flight from Portland will land. It's considered a regular domestic connection.
All Canadian flights are elligible for regular domestic upgrades, should you be lucky enough not to fly on a Jungle Jet.
Be careful, however, because many CO check-in staff on the international desk do not know that EUA upgrades are permitted on this flight, and will scold you if you ask to be put on a waitlist. If you didn't get EUA'd, and the check-in agent will not upgrade you or put you on a list, go to the P-Club and have them do it.
Also, the lines for international check-in at EWR and other CO served airports are notoriously long. Go early.
You will clear customs in YHZ, and then again on your return in EWR. Major Canadian airports like YUL and YYZ have US INS/Customs pre-clearing facilities, enabling you to avoid this upon deplaning.
With respect to documentation, if you are a US citizen, you do not need a passport to travel to Canada, but it is advisable. Proof of citizenship is required, as well as government issued photo id. Make sure you have a pen on you, because you need to fill out a Canadian customs card en route, and the Canadian airports are notorious for not having any pens available when you need them most.
I hope this helps, and I hope you enjoy your time in halifax (I will be going there this weekend, actually--it's quite a nice city).
(Edited to add information because I just noticed you are making a connection in EWR to YHZ)
[This message has been edited by kpalle (edited 07-31-2003).]