Closed pwais closed 5 months ago
@brentyi
Thanks for the PR! Just to check: how did you end up fixing this? (what was causing the assert to fail?)
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 99.58%. Comparing base (
28082f8
) to head (8d03eef
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
i found out tryo
appears to not like attrs
any more. tyro
worked for me for a long time with attrs
but i switched to dataclass
and magically the error goes away. i even downgraded tyro but got this traceback so i have no idea why tyro broke when i upgraded nerfstudio 🤷 🤷 🤷 🤷 to be frank, while i appreciate the difficulty of what tyro does, i am not a fan of it being part of nerfstudio, which already has tons of API instability and crazy bugs on its own. i mean like imagine if yangqing jia decided to include a home-rolled protobuff instead of regular protobuf in caffe.
If you have a runnable example for attrs
failing that would be appreciated, the attrs
tests still pass but maybe some edge case is being missed?
to be frank, while i appreciate the difficulty of what tyro does, i am not a fan of it being part of nerfstudio, which already has tons of API instability and crazy bugs on its own. i mean like imagine if yangqing jia decided to include a home-rolled protobuff instead of regular protobuf in caffe.
Thanks for your feedback, I still like tyro
a lot but do recognize there are limitations 😛
Particular room for improvement in error messages + API clarity in terms of what's actually supported vs not supported.
Tracebacks like these are unhelpful, especially in nerfstudio where there are literally eleventeen brazilian fields that could be broken:
With this change, now you can figure out wat teh brizzoke really much faster!
➡️ Always leave breadcrumbs / messages in
assert
s. In python the user will almost never see the local var values unless they're using e.g.loguru
/better-exceptions
/pytest
.IMO tyro is sufficiently complexicationated that all the asserts should have useful messages. So why did I get this assert in the first place? I have no idea tyro is too complexicationated! EI_TOO_MUCH_MAGIC 🪄🪄