It is not required for Fields to have constraints, so field.constraints can be null.
This leads to an NPE when calling field.checkConstraintViolations(...)
java.lang.NullPointerException: Cannot invoke "java.util.Map.containsKey(Object)" because "this.constraints" is null
at io.frictionlessdata.tableschema.field.Field.checkConstraintViolations(Field.java:285)
I am happy to work on a fix