Generally patches are preferable if upstream are going to accept them and inreplace preferable if not.