1 2 Things to be done 3 ================= 4 5 Big things to tackle, anyone interested is welcome to fork pyasn1, work on 6 it and come up with a PR! 7 8 New codecs 9 ---------- 10 11 * PER 12 * OER 13 * XER 14 * LWER 15 * JSON (alinged with existing experimental schemas) 16 17 Lazy codecs 18 ----------- 19 20 Implement a thin layer over base types to cache pieces 21 of substrate being decoded till the very moment of ASN.1 22 object access in the parse tree. 23 24 Codecs generator interface 25 -------------------------- 26 27 For indefinite length or chunked encoding mode, make codecs 28 iterable producing/consuming substrate/objects. 29 30 ASN.1 schema compiler 31 --------------------- 32 33 Ideally, the compiler should parse modern schema files and be 34 designed to emit code for arbitrary languages (including SQL). 35 36 Base types 37 ---------- 38 39 Implement X.680 constructs, including information schema. 40 41 Examples 42 -------- 43 44 Add examples, including advanced/obscure use cases. 45 46 Documentation 47 ------------- 48 49 Document more API, add notes and example snippets. 50 51 More fresh modules 52 ------------------ 53 54 Compile and ship more Pythonized ASN.1 modules for 55 various ASN.1-based protocols (e.g. Kerberos etc). 56 Refresh outdated modules in pyasn1-packages. 57 58 Minor, housekeeping things 59 -------------------------- 60 61 * more PEP8'ing at places 62 * consider simplifying repr(), otherwise it tend to be too hard to grasp 63 * Specialize ASN.1 character and useful types 64 65 * ber.decoder: 66 67 * suspend codec on underrun error ? 68 * present subtypes ? 69 * component presence check wont work at innertypeconst 70 * type vs value, defaultValue 71 72 * ber.encoder: 73 74 * Asn1Item.clone() / shallowcopy issue 75 * large length encoder? 76 * lookup type by tag first to allow custom codecs for non-base types 77 78 * type.useful: 79 80 * may need to implement prettyIn/Out 81 82 * type.char: 83 84 * may need to implement constraints 85 86 * type.namedtypes 87 88 * type vs tagset name convention 89 90 * how untagged TagSet should be initialized? 91 92 * type and codecs for Real needs refactoring 93