X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Changes;h=6d076aadfff5b012629e700578e9225f5fac94c4;hb=36a3c10611b1429d4e837f711616bd0dc147191d;hp=594bf20d9781e729948a2b1db6da654c9bdac1d3;hpb=003ac39454443d373661470385ab69d05160b112;p=p5sagit%2FDevel-Declare.git diff --git a/Changes b/Changes index 594bf20..6d076aa 100644 --- a/Changes +++ b/Changes @@ -1,5 +1,111 @@ Changes for Devel-Declare +0.005001 + - Implement skip_declarator in terms of scan_word in Context::Simple. + This avoids relying on PL_tokenbuf to skip past the declarator, as + PL_tokenbuf might be overwritten by compiling other code between calling + the linestr callback and skip_declarator. + +0.005000 + - Port the documentation from %^H and Scope::Guard to B::Hooks::EndOfScope. + - Fix extracting multi-line strings using scan_str. + - Remove the nasty workaround for the above from Context::Simple. + +0.004000 + - Much improved documentation (osfameron). + - Make sure the linestr callback isn't invoked when a declarator is used as + part of some quoting construct like qq//, m//, s///, qr//, tr///, qx//, ``, + etc (Florian Ragwitz). + - Tests for this (osfameron, Florian Ragwitz). + +0.003005 + - Depend on a recent B::Hooks::EndOfScope to make semicolon injection more + robust (Florian Ragwitz). + - Add a couple of TODO tests for better error reporting (Marcus Ramberg). + - Context::Simple::inject_if_block now returns true if start of block was + found (Ash Berlin). + +0.003004 + - Make magic work within string evals on 5.10 if the hints hash is used. + - Bind S_scan_ident to perl. It allows scanning for simple identifiers. + - Add strip_ident to Context::Simple. + +0.003003 + - Devel::Declare::MethodInstaller::Simple now has code_for() which the + subclass can override to monkey with the magic shadowed subroutine. + This is handy if you want to employ Devel::BeginLift. + +0.003002 + - Depend on Sub::Name and B::Hooks::EndOfScope. MethodInstaller::Simple and + Context::Simple use them. + +0.003001 + - Don't use :lvalue in Context::Simple and MethodInstaller::Simple to keep + the debugger happy. + +0.003000 + - Add Devel::Declare::Context::Simple and + Devel::Declare::MethodInstaller::Simple as an experimental way to make + creating block- and sub-like keywords easier (Rhesa Rozendaal). + +0.002999_01 + - Use B::Hooks::OP::Check to register PL_check callbacks. + - Use B::Hooks::EndOfScope instead of %^H and Scope::Guard. + - Don't segfault if HvNAME(PL_curstash) == NULL. + - Don't segfault on 5.9.5+, where PL_parser is a symbol, not a define. + - Don't delete the previous symbol table entry when shadowing subs. This + makes us work within the debugger. + - Don't mix declarations and code. + +0.002002 + - switch done_declare call from call_argv to call_pv. + - Make get_linestr{,_offset} return sensible values when called while the + parser isn't running. + - Remove several compile time warnings. + - Allow enabling of debug mode using $ENV{DD_DEBUG}. + +0.002001 + - clean up checks for whether we're lexing and whether lex_stuff exists + to handle the PL_parser factor-out in 5.10 + - check if reallocation of PL_linestr is necessary before doing it. this way + we can bail out properly instead of corrupting memory in some cases + - don't call strlen twice on the same sting + - try to be more portable + - stop using Nullsv + - don't use Perl_* functions directly. + - don't define PERL_CORE + - use NEWSV from handy.h instead of defining our own + - don't define PERL_NO_GET_CONTEXT + - don't support preprocessors (perl -P) + +0.002000 + - rewrite guts into perl, add tests for new declaration style + +0.001011 + - add support for 'method main' and other package names + +0.001010 + - fix traits code, again, so it compiles on 5.10. + +0.001009 + - only mangle evals if o->op_ppaddr is actually PL_ppaddr[OP_ENTERVAL] + - don't set OPf_SPECIAL on entereval ops, mistaken cargo cult from autobox + - fix traits code to work on older 5.8.x perls + +0.001008 + - turns out 0.1.7 in Makefile.PL results in that version going into + the .xs file as well as the dist name. Then everything breaks. + +0.001007 + - bail on SvGROW during declare process since that can't work + - use a source filter on files and an op wrap on evals to pre-grow + PL_linestr so we don't get to the point of needing to bail + +0.001006 + - nasty goto &$func hack to avoid :lvalue+list context weirdness + - correct SvGROW invocation + +0.001005 - stop using & prototypes at all 0.001004