Project homepage Mailing List  Warmcat.com  API Docs  Github Mirror 
{"schema":"libjg2-1", "vpath":"/git/", "avatar":"/git/avatar/", "alang":"", "gen_ut":1752658930, "reponame":"openssl", "desc":"OpenSSL", "owner": { "name": "Andy Green", "email": "andy@warmcat.com", "md5": "c50933ca2aa61e0fe2c43d46bb6b59cb" },"url":"https://warmcat.com/repo/openssl", "f":3, "items": [ {"schema":"libjg2-1", "cid":"59ac6fcff1d8cf559b670fb0f07352b5", "oid":{ "oid": "076fc55527a1499391fa6de109c8387895199ee9", "alias": []},"blobname": "external/perl/Text-Template-1.46/README", "blob": "\nText::Template v1.46\n\nThis is a library for generating form letters, building HTML pages, or\nfilling in templates generally. A `template' is a piece of text that\nhas little Perl programs embedded in it here and there. When you\n`fill in' a template, you evaluate the little programs and replace\nthem with their values. \n\nHere's an example of a template:\n\n\tDear {$title} {$lastname},\n\n\tIt has come to our attention that you are delinquent in your\n\t{$monthname[$last_paid_month]} payment. Please remit\n\t${sprintf(\u0022%.2f\u0022, $amount)} immediately, or your patellae may\n\tbe needlessly endangered.\n\n\t\t\tLove,\n\n\t\t\tMark \u0022{nickname(rand 20)}\u0022 Dominus\n\n\nThe result of filling in this template is a string, which might look\nsomething like this:\n\n\tDear Mr. Gates,\n\n\tIt has come to our attention that you are delinquent in your\n\tFebruary payment. Please remit\n\t$392.12 immediately, or your patellae may\n\tbe needlessly endangered.\n\n\n\t\t\tLove,\n\n\t\t\tMark \u0022Vizopteryx\u0022 Dominus\n\nYou can store a template in a file outside your program. People can\nmodify the template without modifying the program. You can separate\nthe formatting details from the main code, and put the formatting\nparts of the program into the template. That prevents code bloat and\nencourages functional separation.\n\nYou can fill in the template in a `Safe' compartment. This means that\nif you don't trust the person who wrote the code in the template, you\nwon't have to worry that they are tampering with your program when you\nexecute it. \n\n----------------------------------------------------------------\n\nText::Template was originally released some time in late 1995 or early\n1996. After three years of study and investigation, I rewrote it from\nscratch in January 1999. The new version, 1.0, was much faster,\ndelivered better functionality and was almost 100% backward-compatible\nwith the previous beta versions.\n\nI have added a number of useful features and conveniences since the\n1.0 release, while still retaining backward compatibility. With one\nmerely cosmetic change, the current version of Text::Template passes\nthe test suite that the old beta versions passed.\n\nQuestions or comments should be addressed to\nmjd-perl-template+@plover.com. This address goes directly to me, and\nnot to anyone else; it is not a mailing list address.\n\nTo receive occasional announcements of new versions of T::T, send an\nempty note to mjd-perl-template-request@plover.com. This mailing list\nis not for discussion; it is for announcements only. Therefore, there\nis no address for sending messages to the list.\n\nYou can get the most recent version of Text::Template, news, comments,\nand other collateral information from\n\u003cURL:http://www.plover.com/~mjd/perl/Template/\u003e.\n\n----------------------------------------------------------------\n\nWhat's new in v1.46 since v1.44:\n\n Thanks to Rik Signes, there is a new\n Text::Template-\u003eappend_text_to_output method, which\n Text::Template always uses whenever it wants to emit output.\n You can subclass this to get control over the output, for\n example for postprocessing.\n\n A spurious warning is no longer emitted when the TYPE\n parameter to -\u003enew is omitted.\n\n----------------------------------------------------------------\nWhat's new in v1.44 since v1.43: \n\nThis is a maintentance release. There are no feature changes.\n\n _scrubpkg, which was responsible for eptying out temporary\n packages after the module had done with them, wasn't always\n working; the result was memory-leaks in long-running\n applications. This should be fixed now, and there is a test\n in the test suite for it.\n\n Minor changes to the test suite to prevent spurious errors.\n\n Minor documentation changes.\n\n----------------------------------------------------------------\nWhat's new in v1.43 since v1.42:\n\n The -\u003enew method now fails immediately and sets\n $Text::Template::ERROR if the file that is named by a filename\n argument does not exist or cannot be opened for some other\n reason. Formerly, the constructor would succeed and the\n -\u003efill_in call would fail.\n\n----------------------------------------------------------------\n\nWhat's new in v1.42 since v1.41:\n\nThis is a maintentance release. There are no feature changes.\n\n Fixed a bug relating to use of UNTAINT under perl 5.005_03 and\n possibly other versions.\n\n Taint-related tests are now more comprehensive.\n----------------------------------------------------------------\n\nWhat's new in v1.41 since v1.40:\n\nThis is a maintentance release. There are no feature changes.\n\n Tests now work correctly on Windows systems and possibly on\n other non-unix systems.\n\n----------------------------------------------------------------\n\nWhat's new in v1.40 since v1.31:\n\n New UNTAINT option tells the module that it is safe to 'eval'\n code even though it has come from a file or filehandle.\n\n Code added to prevent memory leaks when filling many\n templates. Thanks to Itamar Almeida de Carvalho.\n\n Bug fix: $OUT was not correctly initialized when used in\n conjunction with SAFE.\n\n You may now use a glob ref when passing a filehandle to the\n -\u003enew funcion. Formerly, a glob was reuqired.\n\n New subclass: Text::Template::Preprocess. Just like\n Text::Template, but you may supply a PREPROCESS option in the\n constructor or the fill_in call; this is a function which\n receives each code fragment prior to evaluation, and which may\n modify and return the fragment; the modified fragment is what\n is evaluated.\n\n Error messages passed to BROKEN subroutines will now report\n the correct line number of the template at which the error\n occurred:\n\n Illegal division by zero at template line 37.\n\n If the template comes from a file, the filename will be\n reported as well:\n\n Illegal division by zero at catalog.tmpl line 37.\n\n\n INCOMPATIBLE CHANGE:\n\n The format of the default error message has changed. It used\n to look like:\n\n Program fragment at line 30 delivered error ``Illegal division by zero''\n\n It now looks like:\n\n Program fragment delivered error ``Illegal division by zero at catalog.tmpl line 37''\n\n Note that the default message used to report the line number\n at which the program fragment began; it now reports the line\n number at which the error actually occurred.\n\n----------------------------------------------------------------\nWhat's new in v1.31 since v1.23:\n\n\tJust bug fixes---fill_in_string was failing. Thanks to \n Donald L. Greer Jr. for the test case.\n\n----------------------------------------------------------------\nWhat's new in v1.23 since v1.22:\n\n\tSmall bug fix: DELIMITER and other arguments were being\n\tignored in calls to fill_in_file and fill_this_in. (Thanks to\n\tJonathan Roy for reporting this.)\n\n----------------------------------------------------------------\nWhat's new in v1.22 since v1.20:\n\n\tYou can now specify that certain Perl statements be prepended\n\tto the beginning of every program fragment in a template,\n\teither per template, or for all templates, or for the duration\n\tof only one call to fill_in. This is useful, for example, if\n\tyou want to enable `strict' checks in your templates but you\n\tdon't want to manually add `use strict' to the front of every\n\tprogram fragment everywhere.\n\n----------------------------------------------------------------\nWhat's new in v1.20 since v1.12:\n\n\tYou can now specify that the program fragment delimiters are\n\tstrings other than { and }. This has three interesting\n\teffects: First, it changes the delimiter strings. Second, it\n\tdisables the special meaning of \u005c, so you have to be really,\n\treally sure that the delimiters will not appear in your\n\ttemplates. And third, because of the simplifications\n\tintroduced by the elimination of \u005c processing, template\n\tparsing is 20-25% faster.\n\n\tSee the manual section on `Alternative Delimiters'.\n\n\tFixed bug having to do with undefined values in HASH options.\n\tIn particular, Text::Template no longer generates a warning if\n\tyou try to give a variable an undefined value.\n\n----------------------------------------------------------------\n\nWhat's new in v1.12 since v1.11:\n\n\tI forgot to say that Text::Template ISA Exporter, so the\n\texported functions never got exported. Duhhh!\n\n\tTemplate TYPEs are now case-insensitive. The `new' method now\n\tdiagnoses attempts to use an invalid TYPE.\n\n\tMore tests for these things.\n\n----------------------------------------------------------------\n\nWhat's new in v1.11 since v1.10:\n\n\tFixed a bug in the way backslashes were processed. The 1.10\n\tbehavior was incompatible with the beta versions and was also\n\tinconvenient. (`\u005cn' in templates was replaced with `n' before\n\tit was given to Perl for evaluation.) The new behavior is\n\talso incompatible with the beta versions, but it is only a\n\tlittle bit incompatible, and it is probbaly better.\n\n\tDocumentation for the new behavior, and tests for the bug.\n\n----------------------------------------------------------------\n\nWhat's new in v1.10 since v1.03:\n\n\tNew OUTPUT option delivers template results directly to a\n\tfilehandle instead of making them into a string. Saves space\n\tand time. \n\n\tPACKAGE and HASH now work intelligently with SAFE.\n\n\tFragments may now output data directly to the template, rather\n\tthan having to arrange to return it as a return value at the\n\tend. This means that where you used to have to write this:\n\n\t\t\t{ my $blist \u003d '';\n\t\t foreach $i (@items) {\n\t\t $blist .\u003d qq{ * $i\u005cn};\n\t\t } \n\t\t $blist;\n\t\t } \n\n\tYou can now write this instead, because $OUT is special.\n\n\t\t\t{ foreach $i (@items) {\n\t\t $OUT.\u003d \u0022 * $i\u005cn\u0022;\n\t\t } \n\t\t } \n\n\t(`A spoonful of sugar makes the medicine go down.')\n\n\tFixed some small bugs. Worked around a bug in Perl that does\n\tthe wrong thing with $x \u003d \u003cY\u003e when $x contains a glob.\n\n\tMore documentation. Errors fixed.\n\n\tLots more tests. \n\n----------------------------------------------------------------\n\nWhat's new in v1.03 since v1.0:\n\n\tCode added to support HASH option to fill_in.\n\t(Incl. `_gensym' function.)\n\t\n\tDocumentation for HASH.\n\t\n\tNew test file for HASH.\n\t\n\tNote about failure of lexical variables to propagate into\n \ttemplates. Why does this surprise people?\n\t\n\tBug fix: program fragments are evaluated in an environment with\n \t`no strict' by default. Otherwise, you get a lot of `Global\n \tsymbol \u0022$v\u0022 requires explicit package name' failures. Why didn't\n \tthe test program pick this up? Because the only variable the test\n \tprogram ever used was `$a', which is exempt. Duhhhhh.\n\t\n\tFixed the test program.\n\t\n\tVarious minor documentation fixes.\n\n\n\n----------------------------------------------------------------\n\nImprovements of 1.0 over the old 0.1beta:\n\nNew features:\n\n At least twice as fast \n\n Better support for filling out the same template more than once \n\n Now supports evaluation of program fragments in Safe\n compartments. (Thanks, Jonathan!) \n\n Better argument syntax \n\n More convenience functions \n\n The parser is much better and simpler. \n\n Once a template is parsed, the parsed version is stored so that\n it needn't be parsed again. \n\n BROKEN function behavior is rationalized. You can now pass an\n arbitrary argument to your BROKEN function, or return a value\n from it to the main program. \n\n Documentation overhauled. \n\n","s":{"c":1752658930,"u": 453}} ],"g": 4311,"chitpc": 0,"ehitpc": 0,"indexed":0 , "ab": 1, "si": 0, "db":0, "di":0, "sat":0, "lfc": "0000"}