Hi Alex, Hi *, if you do not yet have FOP developer access, and you are working on a larger set of problems, please do not submit one large patch - current committers will not have the time to go through every single change. Instead, it is much nicer to have a series of small patches.
One option is to use git. There is a current git clone of the FOP source tree available [1][2]. It also provides help to untangle tangled working copies [3]. Git lets you produce patches between different individual changesets [4], and detects if the patches where applied by someone else. References: [1] http://wiki.apache.org/general/GitAtApache [2] git://git.apache.org/fop.git [3] http://tomayko.com/writings/the-thing-about-git [4] http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#sharing-your-changes hth Max Alexander Kiel schrieb: > Hi, > > a issued a patch for MinOptMax: > https://issues.apache.org/bugzilla/show_bug.cgi?id=48071 > > Please read my first comment there and consider my patch :-) > > Best Regards > Alex > > On Sun, 2009-10-25 at 23:45 +0100, Alexander Kiel wrote: >> Hi, >> >> the class MinOptMax has some 800 usages in FOP. It holds a triple of >> values (min, opt, max) of length quantities. >> >> It's heavily used during local computations and passing around. It's >> fields are public (whereas the class comment says they are only package >> visible). The public fields (and many methods) make MinOptMax mutable. >> This mutability is used in the computations for sheer performance >> reasons. But this mutability is a big bug attractor in passing around >> situations. >> >> I don't think that anyone would wonder that an immutable MinOptMax would >> help FOP. >> >> This refactoring wouldn't be rocket science if all usages of MinOptMax >> would be covered by tests. I just started and found many such uncovered >> sections. I'm very new here and so I simply can't write such tests. So I >> ask you to possible write such tests or remove uncovered code sections. >> >> As for performance. I would opt for just refactoring all stuff to >> immutable MinOptMax and only introduce an MinOptMaxBuffer if really >> needed. >> >> With an immutable MinOptMax we can easily remove all TODO's inside >> MinOptMax. The integrity tests (min <= opt <= max) and we can remove the >> clone method, because it wouldn't be needed anymore. >> >> I just started the refactoring. All what I need are unit tests. >> >> Best Regards >> Alex >> > -- http://max.berger.name/ OpenPGP ID: C93C5700 Fpr: AB6638CE472A499B3959 ADA2F989A2E5C93C5700
signature.asc
Description: OpenPGP digital signature
