)]}'
{
  "commit": "cceb922d0670c2f93a0cd0ae79c64b376c7351b2",
  "tree": "240c77c25d7e5d96f8dd0175eae762998473f7bb",
  "parents": [
    "c2a2811a8b81dac7b090dcd6f584742fed6dd085"
  ],
  "author": {
    "name": "Gary V. Vaughan",
    "email": "gary@gnu.org",
    "time": "Tue May 06 14:34:08 2008 -0400"
  },
  "committer": {
    "name": "Gary V. Vaughan",
    "email": "gary@gnu.org",
    "time": "Tue May 06 15:44:20 2008 -0400"
  },
  "message": "Factor load functionality into include builtin.\n\n* m4/module.c (m4__module_open): Instead of calling lt_dlopenext\nright away, use the preload hint first incase path searching has\nbeen disabled by POSIXLY_CORRECT.  Otherwise fallback to a\nmanual path search to override libltdl\u0027s algorithm.\n* m4/m4module.h: Adjust.\n* m4/path.c (FILE_SUFFIXES): Order to try suffixes in our path\nsearch algorithm.\n(NO_SUFFIXES): Alternatively, how to to search a path without\nadding file suffixes.\n(m4_path_search): Add a new suffixes parameter defaulting to\nNO_SUFFIXES.  Adjust all callers.\n(m4_load_filename): New generic load function that tries to\nopen a matched file first as a module, and if that fails fall\nback to as (possibly frozen) m4 input.\n(m4_fopen): New function with close on exec functionality.\n* modules/m4.c (include, sinclude): Use m4_load_filename to\noverload these builtins to work with modules too.\n* modules/load.c (load): Removed this builtin.\n* src/main.c: Remove Dynamic loading features section, and\nM4MODPATH support.\n(long_options): Remove \"load-module\", \"unload-module\" and\n\"module-directory\" options.\n(OPTSTRING): Remove \u0027M\u0027 and \u0027m\u0027 options.\n(process_file): Use m4_load_filename to support module names\non the command line.\n* Makefile.am (TESTS_ENVIRONMENT): No need for abs_top_builddir\nany more.\n* doc/m4.texinfo: Update examples.\n(Dynamic loading features, Load): Removed.\n(Command line files): Describe how non-option arguments are\ntreated to try to find a matching macro file or dso.\n(Include): Describe additional dso loading features if a\nsuitable text file cannot be found.\n(Modules): Updated.\n* tests/builtins.at, tests/m4.in, tests/modules.at,\ntests/options.at: Adjust test cases and calling conventions\nto new semantics.\n* NEWS: Updated.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "3470af11f6ae96f260050ca52946cc494be5bdeb",
      "old_mode": 33188,
      "old_path": "ChangeLog",
      "new_id": "536b3d6dd100d546492f41cc3c787bf70b2bd70a",
      "new_mode": 33188,
      "new_path": "ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "7606802194323d8971cb780b0dea13d039bfdb0d",
      "old_mode": 33188,
      "old_path": "Makefile.am",
      "new_id": "e47bdd19f6ba695e0a425770ef439f20e69c4456",
      "new_mode": 33188,
      "new_path": "Makefile.am"
    },
    {
      "type": "modify",
      "old_id": "35440ee0e3ae3e2ddccb37d0e1e989129e36afb7",
      "old_mode": 33188,
      "old_path": "NEWS",
      "new_id": "ce30bbdcf0deb1cce9625b5ad72c52190d04d99b",
      "new_mode": 33188,
      "new_path": "NEWS"
    },
    {
      "type": "modify",
      "old_id": "e44676595547fc6f23e1e34a503146341cd91f85",
      "old_mode": 33188,
      "old_path": "doc/m4.texinfo",
      "new_id": "d651c247bdf3eca42dec16de8a4c97fe6118c73a",
      "new_mode": 33188,
      "new_path": "doc/m4.texinfo"
    },
    {
      "type": "modify",
      "old_id": "21a83399fd1eff432a3f689f6bc72654cbdb17b7",
      "old_mode": 33188,
      "old_path": "m4/m4module.h",
      "new_id": "e086041f87d8cddda5ef8237370c5e7e3e35ebec",
      "new_mode": 33188,
      "new_path": "m4/m4module.h"
    },
    {
      "type": "modify",
      "old_id": "2bda5f61982a8aca7ba65d2abddbe81007eae26b",
      "old_mode": 33188,
      "old_path": "m4/module.c",
      "new_id": "f1556f2527d9cea31f1583c5bdd1295f51e01d7f",
      "new_mode": 33188,
      "new_path": "m4/module.c"
    },
    {
      "type": "modify",
      "old_id": "91991e007e00ed1cabc57dfc9f8f42969891cdde",
      "old_mode": 33188,
      "old_path": "m4/path.c",
      "new_id": "50d7d6eab0550a941ada6dd1bbd7f307c1db96e8",
      "new_mode": 33188,
      "new_path": "m4/path.c"
    },
    {
      "type": "modify",
      "old_id": "e169796ab2e56aa9ec1a66401193ffc6dc11b10f",
      "old_mode": 33188,
      "old_path": "modules/load.c",
      "new_id": "d92f3ded2ffe03da464ea88707588869e5c28291",
      "new_mode": 33188,
      "new_path": "modules/load.c"
    },
    {
      "type": "modify",
      "old_id": "5cb6d114e65aa075bfe644c7f26ecdfc9fb23ba4",
      "old_mode": 33188,
      "old_path": "modules/m4.c",
      "new_id": "f1dbb6c2154223674f0610c73c12e884c37c5889",
      "new_mode": 33188,
      "new_path": "modules/m4.c"
    },
    {
      "type": "modify",
      "old_id": "8df64ce542cdf624a8e104c60f86fdf474602f91",
      "old_mode": 33188,
      "old_path": "src/freeze.c",
      "new_id": "29b3729e74023a47faa78ff59d8749e30e620f9c",
      "new_mode": 33188,
      "new_path": "src/freeze.c"
    },
    {
      "type": "modify",
      "old_id": "7c3b9ccdca9787bbb9578a3389ec5dc088ab0522",
      "old_mode": 33188,
      "old_path": "src/main.c",
      "new_id": "48add6b7faac1490e8f74b7029eb29eb95667f0e",
      "new_mode": 33188,
      "new_path": "src/main.c"
    },
    {
      "type": "modify",
      "old_id": "3f67c2cc012f1eb414b17a02e8e8d2b9d61ddbf3",
      "old_mode": 33188,
      "old_path": "tests/builtins.at",
      "new_id": "00aa393e5b1102a2b42189332f89561bab3f36c8",
      "new_mode": 33188,
      "new_path": "tests/builtins.at"
    },
    {
      "type": "modify",
      "old_id": "34b96046d9b35611509c21645851d8078b4eefa7",
      "old_mode": 33188,
      "old_path": "tests/m4.in",
      "new_id": "3efcc73870c09586a95757dfe5758cf84f18cf93",
      "new_mode": 33188,
      "new_path": "tests/m4.in"
    },
    {
      "type": "modify",
      "old_id": "0d81848187c8a5cf659f4c3fcf1d4c16cf940e65",
      "old_mode": 33188,
      "old_path": "tests/modules.at",
      "new_id": "a2a24e20278b467cb9c0199ff3ebc0d4c72ef32a",
      "new_mode": 33188,
      "new_path": "tests/modules.at"
    },
    {
      "type": "modify",
      "old_id": "19b8874e3b34e38643a19ba5e473a238e62e0724",
      "old_mode": 33188,
      "old_path": "tests/options.at",
      "new_id": "bfee70b03d3e46924f65c019666f46e64bdb7fb4",
      "new_mode": 33188,
      "new_path": "tests/options.at"
    }
  ]
}
