You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
My experience with pyasn1 is that it is great when it works out of the box, but when it doesn't - troubleshooting complex structures is a pain. I believe there are two key issues:
On top of that, there's also the complexity of ASN.1 itself - so when something doesn't work, I have doubts whether the root cause is in my misunderstanding of ASN.1, or in my misunderstanding of pyasn1 (or both:-)
I think that dealing with the two points above would be a major improvement for pyasn1 and make its future more sustainable, because it would codify the knowledge into text, rather than keep it in the heads of the few experts out there.
The troubleshooting guide could explain:
How to read and interpret the error message?
What rules of thumb can help narrow down the set of hypotheses and find the root cause?
The error message itself could benefit from:
Indentation
Indication of where in the structure we are at the moment of the error. For example, if named types are used, the problematic name could be listed in a prominent part of the error message.
The text was updated successfully, but these errors were encountered:
While this is a very good proposal, I wonder if it can be done in a single step.
The original author passed away and the current maintainers seem to have difficulty fully taking over (like the troublesome 0.5.0 release indicated).
I think more practically people might start to work on a few case studies (either new issues or old ones from the original repo) and share the thorough analysis reports publicly for others to review.
Readers can immediately learn from those reports as they show the common approaches needed. Once the reports are there, we might be able to compile a more general guide for the audience.
What would be an appropriate format for collecting this information? For example, I recently had an issue which I couldn't resolve; with some assistance from Russ Housley I got a working version - his code is somewhat different, though in essence it looks similar (e.g. using x['test'] instead of x.getComponentByName('test'), and other quirks of this kind). He can empirically find a working way, but an underlying explanation of why it is the way it is - is not available.
Perhaps we could open the discussion section of this repo and provide such pairs of examples, and give them a specific tag? Or create issues with a particular tag?
My experience with pyasn1 is that it is great when it works out of the box, but when it doesn't - troubleshooting complex structures is a pain. I believe there are two key issues:
On top of that, there's also the complexity of ASN.1 itself - so when something doesn't work, I have doubts whether the root cause is in my misunderstanding of ASN.1, or in my misunderstanding of pyasn1 (or both:-)
I think that dealing with the two points above would be a major improvement for pyasn1 and make its future more sustainable, because it would codify the knowledge into text, rather than keep it in the heads of the few experts out there.
The troubleshooting guide could explain:
The error message itself could benefit from:
The text was updated successfully, but these errors were encountered: