enthought / enaml

Default Repo description from terraform module
Other
3 stars 0 forks source link

Gracefully degrade handling of unsatisfiable 'required' constraints #269

Closed nmichaud closed 3 years ago

nmichaud commented 11 years ago

Requires this pull request on casuarius:

https://github.com/enthought/casuarius/pull/3

jwiggins commented 11 years ago

This seems like a neat idea. Do the log messages make it easier to figure out why the constraint was unsatisfiable? I've found that to be one of the most difficult issues to grapple with when using constraints.

nmichaud commented 11 years ago

This will log all the combined constraints that are unsatisfiable. Unfortunately, the constraints are tied to the underlying toolkit widgets, which makes it difficult to map back to enaml widgets. I'm currently trying to see if I can get a nicer printing of a constraint to make it easier to figure out which ones are causing problems. I also want to handle underspecified constraints, which often lead to random 'popping' effects when the parent is laid out again

sccolbert commented 11 years ago

I'm not sure degrading is the right thing to do. An over-constrained system is a programming error and IMHO should be treated as such. I'm all for more verbose explanations of errors, so that the developer can more easily correct their code. But, I don't think we should randomly change constraints to try to fix it for them.

rahulporuri commented 3 years ago

closing this PR as a precursor to archiving this GitHub repository.