This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
longstanding bug in parsing "require VERSION", could reallocate
[perl5.git] / Todo-5.6
1 Unicode support
2     finish byte <-> utf8 and localencoding <-> utf8 conversions 
3     make "$bytestr$charstr" do the right conversion
4     add Unicode::Map equivivalent to core
5     add support for I/O disciplines
6         - open(F, "<!crlf!utf16", $file)
7         - binmode(STDIN, "<!crlf!utf16")?
8         - a way to set the "system" discipline (binmode("!crlf!utf16") maybe?)
9         - nice IO::Filter module to push/pop disciplines
10     eliminate need for "use utf8;"
11     support C<print v1.2.3>
12     make C<v123> mean C<chr(123)> (if !exists(&v123))
13     autoload utf8_heavy.pl's swash routines in swash_init()
14
15 Multi-threading
16     support "use Thread;" under useithreads
17     add mechanism to:
18       - create new interpreter in a different thread
19       - exchange data between interpreters/threads
20       - share namespaces between interpreters/threads
21     work out consistent semantics for exit/die in threads
22     support for externally created threads?
23     Thread::Pool?
24
25 Compiler
26     auto-produce executable
27     typed lexicals should affect B::CC::load_pad
28     workarounds to help Win32
29     END blocks need saving in compiled output
30     _AUTOLOAD prodding
31     fix comppadlist (names in comppad_name can have fake SvCUR
32         from where newASSIGNOP steals the field)
33
34 Namespace cleanup
35     CPP-space:    restrict what we export from headers when !PERL_CORE
36     header-space: move into CORE/perl/?
37     API-space:    complete the list of things that constitute public api
38
39 Configure
40     make configuring+building away from source directory work (VPATH et al)
41     _r support
42     cross-compilation configuring
43     POSIX 1003.1 1996 Edition support
44
45 Locales
46     deprecate traditional/legacy locales?
47     figure out how to support Unicode locales
48     locales across packages?
49
50 Regexen
51    make RE engine thread-safe
52    POSIX [=bar=] and [.zap.] would nice too but there's no API for them
53    (=bar= could be done with Unicode, though)
54    approximate matching
55
56 Reliable Signals
57     custom opcodes
58     alternate runops() for signal despatch
59     figure out how to die() in delayed sighandler
60     make Thread::Signal work under useithreads
61
62 Win32 stuff
63     sort out the spawnvp() mess for system('a','b','c') compatibility
64     work out DLL versioning
65
66 Miscellaneous
67     magic_setisa should be made to update %FIELDS [???]
68     add new modules (Archive::Tar, Compress::Zlib, CPAN::FTP?)
69     replace pod2html with new PodtoHtml? (requires other modules from CPAN)
70     automate testing with large parts of CPAN
71
72 Ongoing
73     keep filenames 8.3 friendly, where feasible
74     upgrade to newer versions of all independently maintained modules
75     comprehensive perldelta.pod
76
77 Documentation
78     describe new age patterns
79     update perl{guts,call,embed,xs} with additions, changes to API
80     document Win32 choices
81     spot-check all new modules for completeness
82     better docs for pack()/unpack()
83     reorg tutorials vs. reference sections