The 'clearance', which didn't appear in the original library, causes the rack to mismatch a spur gear with the same module / modul. Removing the 'clearance' fixes this issues. Animating the example rack and pinion will show this.
module rack(modul, length, height, width, pressure_angle = 20, helix_angle = 0) {
// Dimension Calculations
modul=modul*(1-clearance);
...
fix: //modul=modul*(1-clearance);
...
Image showing rack with modul=modul*(1-clearance) and black marks at correct pitch, rack mismatching pitch. Rack exactly matches spur gear pitch radius and should have the same number of teeth, it doesn't.

Image showing rack without clearance, black marks at correct pitch, in line with rack.

The 'clearance', which didn't appear in the original library, causes the rack to mismatch a spur gear with the same module / modul. Removing the 'clearance' fixes this issues. Animating the example rack and pinion will show this.
...
fix: //modul=modul*(1-clearance);
...
Image showing rack with

modul=modul*(1-clearance)and black marks at correct pitch, rack mismatching pitch. Rack exactly matches spur gear pitch radius and should have the same number of teeth, it doesn't.Image showing rack without
clearance, black marks at correct pitch, in line with rack.