tldr: It's safe but mildly annoying. Please feel free to send a pull-request to update these files.
Longer: DAO files are auto-generated when civibuild
calls the script xml/GenCode.php
with the data in xml/schema
. However, running GenCode
is traditionally pretty slow -- even on a fast workstation, it can add 30 seconds to the build-time.
Starting somewhere in 4.7.x, we did an optimization: if the checksum looks right, then GenCode
keeps the DAO. (Hooray, faster!) If the checksum looks wrong, then it regenerates the DAO.
In a typical scenario, you might edit a file in xml/schema
, then run GenCode
, then observe several changes to your local DAO. The GenCodeChecksum
would be one of several changes. You'd commit those changes and send them in with the PR.
Right now, I see something like what you describe -- the only difference between the upstream DAO and the local DAO is the checksum. This can happen occasionally (eg if there were contemporaneous PRs manipulating schema and the precise order-of-operations was unfavorable). The consequences are:
GenCode
spends an extra second regenerating 1-3 files.
- Your
git diff
shows something unexpected on 1-3 files.
That's mildly annoying - but you still wind up with the right code, so it's safe.
You can fix it by submitting a PR to update the DAO's with the latest GenCodeChecksum
.