Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This removes the optional dependence on SQL::Abstract::Classic or a version of SQL::Abstract prior to 2.000000, and only uses version 2.000000 or newer of SQL::Abstract.
For this to work the capability of a field override needs to be removed. There doesn't seem to be a reliable way to do that with the newer versions of SQL::Abstract, although I didn't try very hard. I also don't see the need for having a field override. The only field that has an override is the
key_not_a_keyfield
orkey
field. Why was that ever done? Did someone think that MySQL would make a field a database key field if it had the name "key"? Did someone think it would be confusing to have a field named "key" that was not a database key field? It was probably the latter, but in my opinion the field override was even more confusing.The
key
field in thekey
table does not contain any permanent data, so upgrading courses does not require any special handling. The data from the oldkey_not_a_keyfield
field can be safely dropped, and the newkey
field used in its place. You can leave thekey_not_a_keyfield
field in the database if you want to switch back and forth between other pull requests that use thekey_not_a_keyfield
field.