)]}'
{
  "log": [
    {
      "commit": "0cee60e9c6489b8b9d784225f1a8c4d775357a76",
      "tree": "da3f46bc5b582877508811bd88bfac760024fc3e",
      "parents": [
        "b9b5d3636f1396627cea73af77f69e8e78d58cbf"
      ],
      "author": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Tue Jul 07 14:10:18 2026 -0400"
      },
      "committer": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Tue Jul 07 15:18:26 2026 -0400"
      },
      "message": "Prepare for 1.9.0 development\n"
    },
    {
      "commit": "b9b5d3636f1396627cea73af77f69e8e78d58cbf",
      "tree": "4d460bdde4829041626ddf81543c1d65d6fcf665",
      "parents": [
        "4f1dca9fde9e2146efb296c55d4981ad8c56e50a"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jun 30 07:22:14 2026 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jun 30 09:40:20 2026 -0400"
      },
      "message": "Bump daffodilVersion setting for release\n"
    },
    {
      "commit": "4f1dca9fde9e2146efb296c55d4981ad8c56e50a",
      "tree": "f27c0feb531046ba91d186001f8890293d74004e",
      "parents": [
        "cc71a8333bb56c0b9f3355376c4fc3ea89df917e"
      ],
      "author": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Mon Jun 22 16:14:54 2026 -0400"
      },
      "committer": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Tue Jun 23 15:52:40 2026 -0400"
      },
      "message": "Prepare for 1.8.0 release\n"
    },
    {
      "commit": "cc71a8333bb56c0b9f3355376c4fc3ea89df917e",
      "tree": "46c7d0dd91bc1fd538eb62eac8652b88173a6afa",
      "parents": [
        "4db800acb5e92e183040b9942fbaf73392f34d98"
      ],
      "author": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Tue Jun 23 09:24:19 2026 -0400"
      },
      "committer": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Tue Jun 23 13:34:35 2026 -0400"
      },
      "message": "Downgrade sbt version to 1.12.11\n\n- 1.12.12/13 is causing an acccess denied permissions error in the windows runner. Reverting back to 1.12.11 until it is fixed.\n"
    },
    {
      "commit": "4db800acb5e92e183040b9942fbaf73392f34d98",
      "tree": "7b52f76ab42c2db8c6d5a31b79bbe47ff7113bea",
      "parents": [
        "4e4578befcf350bfda65cba479b2b1757bce5f6e"
      ],
      "author": {
        "name": "The Apache Software Foundation",
        "email": "root-asf-gitbox-commits@apache.org",
        "time": "Fri May 15 15:24:44 2026 -0500"
      },
      "committer": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Thu Jun 18 15:37:47 2026 -0400"
      },
      "message": "Set up default protection ruleset for default and release branches"
    },
    {
      "commit": "4e4578befcf350bfda65cba479b2b1757bce5f6e",
      "tree": "e7ee7968eca43c4cb2f29c29eb60ea09f9a28968",
      "parents": [
        "3585ab282c266fcd6a75951e6fa8252c1ff856d0"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Thu Feb 12 16:06:39 2026 +0000"
      },
      "committer": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Thu Jun 18 15:30:53 2026 -0400"
      },
      "message": "Update scalafmt-core to 3.10.7\n"
    },
    {
      "commit": "3585ab282c266fcd6a75951e6fa8252c1ff856d0",
      "tree": "8c3b2e6a15d6ecb11f8d014f425b4fc802738420",
      "parents": [
        "2b8f779cdb85bda87e4d0e1d86f5d98d61f670c8"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Sun Jun 14 14:08:17 2026 +0000"
      },
      "committer": {
        "name": "olabusayoT",
        "email": "50379531+olabusayoT@users.noreply.github.com",
        "time": "Thu Jun 18 14:32:42 2026 -0400"
      },
      "message": "Update sbt, scripted-plugin to 1.12.12\n"
    },
    {
      "commit": "2b8f779cdb85bda87e4d0e1d86f5d98d61f670c8",
      "tree": "c8a0cf4b80c6640339d8683a42602a99f0c4a77e",
      "parents": [
        "0ed4c6bd07a9f026a25a0d55a7ae033179048dcc"
      ],
      "author": {
        "name": "Guichard Desrosiers",
        "email": "gdesrosiers@owlcyberdefense.com",
        "time": "Thu May 28 15:05:47 2026 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jun 17 13:13:32 2026 -0400"
      },
      "message": "Add -parameters to plugin build javac options\n\nMatches daffodil build setting; required by reflection-based layer wiring.\n"
    },
    {
      "commit": "0ed4c6bd07a9f026a25a0d55a7ae033179048dcc",
      "tree": "34b5c4d217d86929b1eeb4310ec2cd3f5d00a00d",
      "parents": [
        "20ef87eada59df2e05774edf0c0d0166e2070dc3"
      ],
      "author": {
        "name": "Josh Adams",
        "email": "jadams@owlcyberdefense.com",
        "time": "Wed Jun 17 12:25:56 2026 -0400"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Wed Jun 17 13:06:33 2026 -0400"
      },
      "message": "Disable schema flattening by default\n"
    },
    {
      "commit": "20ef87eada59df2e05774edf0c0d0166e2070dc3",
      "tree": "068fc6345d41fc70c2f0111bf5e00ca2716a156a",
      "parents": [
        "d7447dd2f3847f5f1f3ffff383967a2a90a4be11"
      ],
      "author": {
        "name": "Josh Adams",
        "email": "jadams@owlcyberdefense.com",
        "time": "Mon Apr 27 08:34:36 2026 -0400"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Tue May 26 10:32:33 2026 -0400"
      },
      "message": "Add flowerpress functionality to daffodil-sbt\n\nNotable improvements from the current released flowerpress:\n - Works on XSLT files as well\n - Only packages files that are referenced by the projects files\n"
    },
    {
      "commit": "d7447dd2f3847f5f1f3ffff383967a2a90a4be11",
      "tree": "9aa1a6c4ff00623cc4ed6447d906f30f33fd223d",
      "parents": [
        "6d2277a9b9fac55d0b75e0ecde9aad530927221e"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Mar 18 15:18:36 2026 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue May 26 08:44:22 2026 -0400"
      },
      "message": "Prepare for 1.8.0 development\n"
    },
    {
      "commit": "6d2277a9b9fac55d0b75e0ecde9aad530927221e",
      "tree": "8a0f7918fb9c294022401380b85f4ce2427cf6ce",
      "parents": [
        "db3b5b9904bd463422af1877ed94841c5bfc9f55"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Mar 10 09:57:24 2026 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Mar 10 10:12:54 2026 -0400"
      },
      "message": "Prepare for 1.7.0 release\n"
    },
    {
      "commit": "db3b5b9904bd463422af1877ed94841c5bfc9f55",
      "tree": "f8a76dbf34b2fe9b2f494e637b0e660797de38ab",
      "parents": [
        "16fb6c35688433eb81d6170f2225c69f1a022583"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Feb 27 14:24:04 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Mar 10 09:54:57 2026 -0400"
      },
      "message": "Update copyright year to 2026\n\nDAFFODIL-3076\n"
    },
    {
      "commit": "16fb6c35688433eb81d6170f2225c69f1a022583",
      "tree": "280b82eee1f5ad12b6b566e2397e9191e44b97c2",
      "parents": [
        "05f2e8cc6e6fa8bb84090d8f515fd5db3f666af9"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Feb 25 10:56:33 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Mar 05 10:31:32 2026 -0500"
      },
      "message": "Add daffodil-japi/sapi as test dependencies\n\nThis is useful for schema projects that implement custom test harnesses\nusing the Daffodil public API.\n\nAlso adds a test showing the beginning of a shim layer that implements a\nshim layer to support multiple versions of Daffodil, and shows that\njapi/sapi dependencies do not need to be manually added.\n\nCloses #168\n"
    },
    {
      "commit": "05f2e8cc6e6fa8bb84090d8f515fd5db3f666af9",
      "tree": "bb03c521b5e321dda9c0c73fdf821c4d6010232e",
      "parents": [
        "bca986a9cc6f66328032aafef4518cfa52b92d6f"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Feb 27 14:15:49 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Mar 05 10:30:06 2026 -0500"
      },
      "message": "Replace -target with --release in javacOptions\n\nCloses #161\n"
    },
    {
      "commit": "bca986a9cc6f66328032aafef4518cfa52b92d6f",
      "tree": "f346231d982626fdc906c6e7fb8a6a61d7ad2d16",
      "parents": [
        "d9a502559edcbee5439574d879d475e96f0e745f"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Feb 27 14:11:25 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Mar 05 10:29:36 2026 -0500"
      },
      "message": "Fix typo in README code snippet\n\nCloses #170\n"
    },
    {
      "commit": "d9a502559edcbee5439574d879d475e96f0e745f",
      "tree": "ec197aa64014ead0a636e2ca411a3fa65d1cc588",
      "parents": [
        "d9123b4804600ba164e8b5bce8b7d5108a59e25d"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 24 11:23:16 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 24 12:44:57 2026 -0500"
      },
      "message": "Add support for Test / packageDaffodilBin\n\nMove the packageDaffodilBin and related tasks that generate saved\nparsers into the Compile and Test configs. This allows use of\nconfiguration scoped tasks (e.g. fullClasspath) to build saved parsers\nusing resources that include Compile or Test resources.\n\nWith this change, projects that require test resources can define this\nin their build.sbt:\n\n    Test / daffodilPackageBinInfos :\u003d ...\n\nAnd then run this to create a saved parser using test resources:\n\n    Test / packageDaffodilBin\n\nNote that if Test resources aren\u0027t needed this works exactly the same as\nbefore.\n\nCloses #165\n"
    },
    {
      "commit": "d9123b4804600ba164e8b5bce8b7d5108a59e25d",
      "tree": "ae5625071c8e2be495ec3401cfb8ce97a7277168",
      "parents": [
        "6ceba1eb29a2b7bc84ce450d4ba9c90cbf0a4574"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Feb 20 11:25:11 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 24 12:29:48 2026 -0500"
      },
      "message": "Require Scala 2.13.16 when for Daffodil 3.11.0\n\nScala 2.13.17 breaks serialization compatablity. Daffodil 3.11.0\nrequires scala 2.13.16, but the plugin current sets scalaVersion to\n2.13.18. The causes packageDaffodilBin to create a saved parser that\ncannot be used with Daffodil 3.11.0.\n\nThis issue seems to only affect Daffodil 3.11.0--all other versions of\nScala/Daffodil seem to maintain saved parser compatability.\n\nThis modifies the scalaVersion to pin the scala version to 2.13.16 when\nDaffodil version is 3.11.0. This also modifies the sbt-daffodil-utils\nproject to not add a dependency to scala-library, instead assuming comes\nfrom Daffodil or scalaVersion, allowing control over which libary\nversion is used.\n\nUpdate the versions-01 test to include more complexity that is known to\ncause issues with reloading saved parsers if built with newer versions\nof scala-library.\n\nCloses #163\n"
    },
    {
      "commit": "6ceba1eb29a2b7bc84ce450d4ba9c90cbf0a4574",
      "tree": "c7ffa8a50f0806c0f7cc94c5aafa8af99dba4c4a",
      "parents": [
        "7145a94ed3cc6351e5b4dfd46beea8f05a857b2c"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Feb 18 10:41:57 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 24 12:29:11 2026 -0500"
      },
      "message": "Enable `src/{main,test}/scala-XYZ` crossPath directories\n\nThe plugin currently adds `src/{main,test}/scala-daffodil-X.Y.Z/`\ndirectories as source directories as a way to have daffodil version\nspecific code to support building and testing with multiple daffodil\nversions.\n\nHowever, most of the time Daffodil differences can be generalized into\nScala binary differences, so it would be more useful to use\n`src/{main,test}/scala-{2.12,2.13,3}/` directories. Though we currently\ndisable those by setting `crossPaths :\u003d false`.\n\nThe intention of setting `crossPaths` to false was to remove the scala\nbinary version compatibility versions from jars, since that information\nisn\u0027t needed and just adds extra complexity to jars and dependencies. To\nkeep this behavior, but to add support for cross paths added by SBT,\nthis instead sets `crossPaths :\u003d true` and set `crossVersions` to\ndisabled. This also removes the scala-XYZ cross path from target\ndirectories to maintain old behavior.\n\nCloses #161\n"
    },
    {
      "commit": "7145a94ed3cc6351e5b4dfd46beea8f05a857b2c",
      "tree": "4ae5e6b24f86951bbe4054db58a34f079ac6f112",
      "parents": [
        "eeb8aa42cc67ecb4da388804844993b17947c317"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 10 10:31:04 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 24 12:28:21 2026 -0500"
      },
      "message": "Assign GitHub labels to pull requests\n\nUses the official action/labeler github action. Currently the only\nconfiguration is to label PR from scala-steward (which have a `update/`\nprefix) to add the \"dependency\" label. This is copied from the daffodil\nrepo.\n\nDAFFODIL-2995\n"
    },
    {
      "commit": "eeb8aa42cc67ecb4da388804844993b17947c317",
      "tree": "9ad8eb4f0d0e56d1a6060e75faaeb458d4aa1e14",
      "parents": [
        "b18dee5aab159a0d14c704cb6a26e4c8e2fad785"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 03 15:29:14 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Feb 16 15:04:43 2026 -0500"
      },
      "message": "Set max-parallel for matrix GitHub action jobs\n\nIn accordance with ASF policy, set job.strategy.max-parallel to the\nrecommended 15 or less for jobs that specify a matrix. The value is set\nto the number of expected jobs for the matrix, with a maximum of 15.\n\nDAFFODIL-3069\n"
    },
    {
      "commit": "b18dee5aab159a0d14c704cb6a26e4c8e2fad785",
      "tree": "afb72cd274a4a8c058c5492684b95112d694fccb",
      "parents": [
        "a56852a2c4bb0a34cdc6a715c9c76e11c672f0a3"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Feb 05 08:57:22 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Feb 16 15:04:26 2026 -0500"
      },
      "message": "Prepare for 1.7.0 development\n"
    },
    {
      "commit": "a56852a2c4bb0a34cdc6a715c9c76e11c672f0a3",
      "tree": "33a14d14dc9675a68f8a0ce70ae4ed7a9d710343",
      "parents": [
        "1bbbe2cf90e137f3b5f98b67975375c19d1dfb2e"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Tue Feb 10 10:09:14 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 10 10:51:58 2026 -0500"
      },
      "message": "Update daffodil-core to 4.1.0\n\nAlso add test for 4.1.0\n"
    },
    {
      "commit": "1bbbe2cf90e137f3b5f98b67975375c19d1dfb2e",
      "tree": "29015a49eaa23fc6d79b7675b7bf043e257f04ed",
      "parents": [
        "08c83a68d429fb5fbe84372e61452d672629d283"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Sat Jan 31 17:37:04 2026 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Feb 10 10:22:00 2026 -0500"
      },
      "message": "Update scalafmt-core to 3.10.6\n"
    },
    {
      "commit": "08c83a68d429fb5fbe84372e61452d672629d283",
      "tree": "7c1123d5f1344ac4f7ad2ad104ef0642f12000c4",
      "parents": [
        "c8da09bcacc6be5f447ed113eb3893c3d699fb66"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 28 14:33:44 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 28 17:35:14 2026 -0500"
      },
      "message": "Ensure release builds are built on Java 17\n\nDaffodil 4.0.0 and newer requires a minimum of Java 17 to build, so we\nmust build on Java 17. Note that the plugin class files are built with\nJava 8 compatibility so the plugin still works on older versions of\nJava. It is only the Daffodil Saver components used when daffodilVersion\nis 4.0.0 or newer where the classes are built with Java 17.\n"
    },
    {
      "commit": "c8da09bcacc6be5f447ed113eb3893c3d699fb66",
      "tree": "dd24335a4a5409280c514b882e887fa782164daf",
      "parents": [
        "79e8c2b4a645c410f4d1fbf6848e66254ec24bcd"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 28 11:03:39 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 28 12:45:06 2026 -0500"
      },
      "message": "Prepare for 1.6.0 release\n\nBump default daffodilVersion to 4.1.0\n"
    },
    {
      "commit": "79e8c2b4a645c410f4d1fbf6848e66254ec24bcd",
      "tree": "9cc33c9d6df513ea36b8d2f554190197141fa814",
      "parents": [
        "bfbc7b9c8e30e9f7c48ac972364d51a2fa3ccfdb"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Wed Jan 28 12:12:15 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 28 12:27:16 2026 -0500"
      },
      "message": "Update scalafmt-core to 3.10.5\n\nReformat with scalafmt 3.10.5\n\nExecuted command: scalafmt --non-interactive\n\nUpdate README documentation to follow scalafmt\n"
    },
    {
      "commit": "bfbc7b9c8e30e9f7c48ac972364d51a2fa3ccfdb",
      "tree": "6384e301970adb4957203b482ea67e727bf5ee0c",
      "parents": [
        "77deff4df4c70a8ef2cd3425c3b3f9795594b2c8"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Wed Jan 28 16:02:07 2026 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 28 12:16:18 2026 -0500"
      },
      "message": "Update sbt, scripted-plugin to 1.12.1\n"
    },
    {
      "commit": "77deff4df4c70a8ef2cd3425c3b3f9795594b2c8",
      "tree": "8b4eca3a8269ed7fc3a23b71f15359e2b66dcdda",
      "parents": [
        "4925b3867c08ba40f1988c32e045ce6c921c63bc"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Wed Sep 17 13:45:06 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 27 12:02:27 2026 -0500"
      },
      "message": "Update scalafmt-core to 3.9.10\n"
    },
    {
      "commit": "4925b3867c08ba40f1988c32e045ce6c921c63bc",
      "tree": "46910c8c25021cca46fb5701925a2c74730ef591",
      "parents": [
        "1691d3d2d9ad03541e9edd49cff87e675c81c295"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Fri Nov 14 14:24:13 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 27 11:58:00 2026 -0500"
      },
      "message": "Update sbt-scalafmt to 2.5.6\n"
    },
    {
      "commit": "1691d3d2d9ad03541e9edd49cff87e675c81c295",
      "tree": "8e8bc147a558d0d2861773b4781553a3fcae9bcc",
      "parents": [
        "4caaa72a00ceb853dd11b8247194b196020a7af4"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Sun Oct 05 20:59:46 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 27 11:55:39 2026 -0500"
      },
      "message": "Update sbt, scripted-plugin to 1.11.7\n"
    },
    {
      "commit": "4caaa72a00ceb853dd11b8247194b196020a7af4",
      "tree": "8925c59d2b5c2774b38c9a6d1e9bf43a1dae0f53",
      "parents": [
        "ef87057d1cdc8d89f8c7419cedb0a162b0c5e7ec"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 06 15:33:17 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 06 15:51:59 2026 -0500"
      },
      "message": "Simplify setting scalaVersion\n\nThe way we currently set scalaVersion is complex--we try to use the\nversion of scala that was distributed with daffodilVersion, but will\npotentially upgrade to new scala versions depending on the JDK version.\n\nBut all this is pretty unnecessary. Scala patch updates guarantee binary\ncompatability, so we can just always use the latest scala patch version\nthat is compatable with daffodilVersion and things should always work.\nThis ensures that users of the plugin always use the latest Scala\nversion, including bug fixes and JDK compatability.\n\nThis means we no longer need to maintain JDK compatability versions or a\nfull mapping of all Daffodil version to Scala version.\n\nNote that this also uses ModuleId.version, which seems to help\nscala-steward recognize that these are scala versions and will auto\nupdate them when new versions are relased.\n\nAlso uses a more simplifed syntax for disabling scala-steward for the\ndaffodil dependencies.\n\nAlso updates all scala versions to their latest available patch\nversions.\n\nCloses #143\n"
    },
    {
      "commit": "ef87057d1cdc8d89f8c7419cedb0a162b0c5e7ec",
      "tree": "12bf28bcd8b7e0ca00146515316f6f3804fc1e2c",
      "parents": [
        "567e1cdbd4e021c54568df2e4376c2d578b6c805"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 06 15:35:37 2026 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 06 15:50:35 2026 -0500"
      },
      "message": "Add new daffodilPlugin and daffodilBin ModuleID implicit enrichments\n\nThis adds two new implicit enrichments to ModuleId, which allows\nprojects to more easily specify dependencies to Daffodil plugins or\nsaved parsers without needing to know the details of how to reference\nthem (e.g. Artifacts, classifiers, types, extensions).\n\nFor example, depending on a plugin and saved parser now looks like this:\n\n    libraryDependences ++\u003d Seq(\n      \"org.example\" % \"dfdl-plugin\" % \"1.0.0\" daffodilPlugin(daffodilVersion.value),\n      \"org.example\" % \"dfdl-fmt\" % \"1.0.0\"  daffodilBin(daffodilVersion.value)\n    )\n\nThis causes SBT to download the the specified plugin and saved parser,\nallowing for easy testing or creationg of relase bundles.\n\nNote that this also removes the daffodilPluginDependences setting--the\ndaffodilPlugin enrichment provides the same core functionality.\n\nAlso updates the cross-version-03 testto use the new enrichments. A new\n\"bundle\" project is added to the test to depend on saved parsers and\nshow how to copy the plugin and parsers to a directory. This mimicks one\npossible way to automate creating releases of pre-compiled artifacts.\n\nCloses #146\n"
    },
    {
      "commit": "567e1cdbd4e021c54568df2e4376c2d578b6c805",
      "tree": "f8fa2359c06cbd52dc275c07fb3509f65dddc4e6",
      "parents": [
        "26c626242a6b0fe4e0e9f103976d4cd5e6657615"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Nov 12 14:31:45 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jan 05 11:07:58 2026 -0500"
      },
      "message": "Update versions-01 test to include 4.0.0\n\n- Update test to use daffodil-tdml-junit, makes it easier to write tests\n  to that the work on most versiosn of Daffodil\n- Remove 3.0.0 and 3.1.0 from the test, those are very old and do not\n  work with daffodil-tdml-junit\n\nCloses #137\n"
    },
    {
      "commit": "26c626242a6b0fe4e0e9f103976d4cd5e6657615",
      "tree": "151794a4548854d8233dedf44f66d93e943ffa1f",
      "parents": [
        "6d5f013eae6348c365209780599acca168e5c69b"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Nov 12 10:15:29 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Nov 12 11:33:53 2025 -0500"
      },
      "message": "Remove reflection from DaffodilSaver\n\nThe reflection code is messy and hard to maintain. This also is no\nlonger the recommended way to create tools that support multiple\nversions of Daffodil--instead we should use sbt-projectmatrix to create\nseparate jars with thin shim layers to deal with differences in Daffodil\nAPIs.\n\nThis commit does just that. We change our build.sbt to add a new \"utils\"\nsubproject that contains code that needs cross Daffodil support. This\nsubproject uses sbt-projectmatrix to build three jars, one for Scala\n2.12, 2.13, and 3, which are mapped to the various Daffodil versions.\nThis appropriate jar is added as a libraryDependency along with the\nDaffodil version.\n\nDaffodilSaver is moved into this util subproject and rewritten in Scala.\nScala type inference and similarites in the API in different versions of\nDaffodil allow this code to mostly not need to know anything about the\nDaffodil version being used. In cases where that is needed, we use a new\nDaffodilAPI shim class that provides type alases or helper functions\nthat are Scala/Daffodil version speciic.\n\nCloses #135\n"
    },
    {
      "commit": "6d5f013eae6348c365209780599acca168e5c69b",
      "tree": "102b14e0fe5511938f18170be30d34d5ade90add",
      "parents": [
        "642756421a793f957da606eaaf7b174bf0385903"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Oct 03 14:34:27 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Oct 03 14:53:23 2025 -0400"
      },
      "message": "Ensure plugins are build with correct JDK compatability\n\nWhen building plugins, we want class files to have compatability for the\nminimum JDK version supported by the target daffodilVersion. This means\nplugins compiled with daffodilVersion 4.0.0+ will have class versions\ncompatible with JDK 17+. All other daffodilVersions will target JDK 8.\n\nCloses #129\n"
    },
    {
      "commit": "642756421a793f957da606eaaf7b174bf0385903",
      "tree": "a408998ef3397128e079dba33e6b7962fdcf0147",
      "parents": [
        "bd96b41c7a9dc46da8019114ea2483390f637db6"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Oct 01 13:10:35 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Oct 01 13:56:47 2025 -0400"
      },
      "message": "Add support for creating cross daffodil version projects\n\nAdds a new implicitly callable .daffodilProject() function to convert a\nnormal SBT project to one that enables the daffodil plugin and changes a\nnumber of settings to make building/test/etc. easier, including support\nbuilding with multiple Daffodil versions.\n\nDeprecation/Backwards Compatability:\n\nWe now recommend the use of the more modern SBT project definition\nsyntax and the `.daffodilProject()` function. This adds a number of\nenhancements that follow best practices, and includes imporoved support\nfor building/testing/etc. with multiple Daffodil versions. When using\nthis function, existing settings can be used except for\n`daffodilProjectVersionInfos`, which is ignored if specified.\n\nTests are all updated to the recommended syntax, though the changes are\nbackwards compatible so any projects using the old syntax should work\nexactly the same as before.\n\nCloses #125\n"
    },
    {
      "commit": "bd96b41c7a9dc46da8019114ea2483390f637db6",
      "tree": "c7e4d5994df0d10f027f51378c36f076ca8b625b",
      "parents": [
        "d4b92c5e805a67d6095224dc23d8116a632a1e77"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 22 13:13:27 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Oct 01 13:08:47 2025 -0400"
      },
      "message": "Bump version to 1.6.0-SNAPSHOT for development\n"
    },
    {
      "commit": "d4b92c5e805a67d6095224dc23d8116a632a1e77",
      "tree": "c447be256bba03dafd7f00e548792254967b2314",
      "parents": [
        "60281d7173c345932860636525ebcf83ab7d305c"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 08 07:17:41 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Sep 09 07:54:29 2025 -0400"
      },
      "message": "Prepare for 1.5.0 release\n\n- Remove SNAPSHOT from version\n- Change default daffodilVersion to 4.0.0\n\nDAFFODIL-3038\n"
    },
    {
      "commit": "60281d7173c345932860636525ebcf83ab7d305c",
      "tree": "40f1d90ec20664aedefe4db8e7e0849a526acbdb",
      "parents": [
        "df0f09bef645a0e0174e719e9e11d78ba145ece5"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Sun Sep 07 13:57:18 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Sep 09 07:49:18 2025 -0400"
      },
      "message": "Update sbt, scripted-plugin to 1.11.6\n"
    },
    {
      "commit": "df0f09bef645a0e0174e719e9e11d78ba145ece5",
      "tree": "4ca876b556459540dbc33fa7843a5136216b87b7",
      "parents": [
        "3e96a30925c7889383f497f1908e7a84827a87d9"
      ],
      "author": {
        "name": "Josh Adams",
        "email": "jadams@owlcyberdefense.com",
        "time": "Tue Aug 12 14:29:44 2025 -0400"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Wed Aug 13 09:18:21 2025 -0400"
      },
      "message": "UDF has moved into daffodil-core\n"
    },
    {
      "commit": "3e96a30925c7889383f497f1908e7a84827a87d9",
      "tree": "7532e433e860a68d93a8061d7164952c3819c340",
      "parents": [
        "58a0728478bad850451b3ae2576428f5d00f7747"
      ],
      "author": {
        "name": "Josh Adams",
        "email": "jadams@owlcyberdefense.com",
        "time": "Thu Jul 31 17:24:39 2025 -0400"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Tue Aug 12 16:32:24 2025 -0400"
      },
      "message": "Fix layers/charset plugins to work with 4.0.0\n"
    },
    {
      "commit": "58a0728478bad850451b3ae2576428f5d00f7747",
      "tree": "080ac3a33c17b1c635d3a7dc7781613782a06bef",
      "parents": [
        "4a82d2131345393691ab68e4e8978a1b433887ad"
      ],
      "author": {
        "name": "Josh Adams",
        "email": "jadams@owlcyberdefense.com",
        "time": "Thu Jul 31 10:00:42 2025 -0400"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Thu Jul 31 14:05:40 2025 -0400"
      },
      "message": "Handle upcoming changes to the DFDL API\n\nDaffodil 4.0.0 will make significant changes to the API and will no\nlonger contain a separate Java API. Changes to the SBT plugin were\nneeded to be able to use the new API while maintaining compatibility\nwith older versions of DFDL.\n"
    },
    {
      "commit": "4a82d2131345393691ab68e4e8978a1b433887ad",
      "tree": "b85686a71e3e67024615ffbb5fcd284a4a1902bb",
      "parents": [
        "9e7427317a6beaafdc1a771e31c96bff1b83cf8c"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jun 23 07:53:56 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jul 01 11:55:47 2025 -0400"
      },
      "message": "Prepare for 1.5.0 development\n\nWe are done testing the release process. Add -SNAPSHOT to the version\nfor development.\n"
    },
    {
      "commit": "9e7427317a6beaafdc1a771e31c96bff1b83cf8c",
      "tree": "38d025a895781a13a27fa9f8ee0454100c12cbc4",
      "parents": [
        "64e2ad9e484a7d08adb861d35c5c981b293b427a"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jun 30 20:35:32 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jul 01 09:18:40 2025 -0400"
      },
      "message": "Support version specific configuration files\n\nDifferent versions of Daffodil support different tunables and tunable\nvalues. This can make it difficult in some cases to have a single\nconfiguration file when multiple versions of Daffodil are specified in\npackageDaffodilBinVersions.\n\nTo make this easier, if the config option is specified and a file exists\nat the same path but with a Daffodil version as the secondary extension,\nthen that config file will be used when building saved parsers for that\nDaffodil version. If version specific path does not exist, the original\nconfig option is used.\n\nFixes #112\n"
    },
    {
      "commit": "64e2ad9e484a7d08adb861d35c5c981b293b427a",
      "tree": "60ae9f4e5b15c6e6b17acf5142b21e5183831970",
      "parents": [
        "870ae69d03f3bd80c7f7db93aa2d5cdd523a6ee2"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jun 30 09:03:46 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jun 30 20:14:16 2025 -0400"
      },
      "message": "Support namespaces and whitespace in Daffodil config files\n\nCommit dfe5e05259 rewrote DaffodilSaver in java, but the switch from\nScala XML to Java DOM was not done correctly. The Java logic is not\nnamespace aware and does not properly ignore whitespace, so config files\nusing namespace prefixes or have extra whitespace can lead to ignored\ntunables or thrown exceptions.\n\nTo fix this, this changes the Java config parsing to be namespace-aware,\nspecify the namespace when querying for the \"tunables\" element,\nignore whitespace nodes, and trim tuanble values to strip\nleading/trailing whitespace.\n\nFixes #109\n"
    },
    {
      "commit": "870ae69d03f3bd80c7f7db93aa2d5cdd523a6ee2",
      "tree": "077325f4bfe10249a304acd844430a1fc3c86b02",
      "parents": [
        "5dd12457cdfef930c91e2bccfcc6ffac04cdea41"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jun 17 13:24:06 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jun 18 07:15:21 2025 -0400"
      },
      "message": "Temporarily bump version to 1.5.0 to test release process\n\nASF Infra has fixed the credentials to stage releases. This temporarily\nbumps the version to 1.5.0 to allow us to test the credentials. Once\nthat is test is finished, all artifacts will be deleted and the version\nwill be changed to 1.5.0-SNAPSHOT for development of the next version.\n\nDAFFODIL-2971\n"
    },
    {
      "commit": "5dd12457cdfef930c91e2bccfcc6ffac04cdea41",
      "tree": "44cbff390ffbfdc3452910a997bc9bf2306bbb3d",
      "parents": [
        "cb2d82d854560ad43369ca3f3206ebba0ef64385"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Thu Jun 05 16:47:07 2025 +0000"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Mon Jun 09 08:40:54 2025 -0400"
      },
      "message": "Update sbt, scripted-plugin to 1.11.1\n"
    },
    {
      "commit": "cb2d82d854560ad43369ca3f3206ebba0ef64385",
      "tree": "9552c04243f02f4ab4021f48daa3d23d85d9555d",
      "parents": [
        "54688fc73eebeb160d23c6ca24c6d9baf706e6f1"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Thu Jun 05 16:47:15 2025 +0000"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Mon Jun 09 08:38:11 2025 -0400"
      },
      "message": "Update scalafmt-core to 3.9.7\n"
    },
    {
      "commit": "54688fc73eebeb160d23c6ca24c6d9baf706e6f1",
      "tree": "e2a36035e4bfcf96d9e59e909878c656e1a3c119",
      "parents": [
        "49db3cede80343f5d78623ffbf996f317db3ef75"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Mon Mar 17 14:15:51 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Jun 05 08:05:35 2025 -0400"
      },
      "message": "Update sbt, scripted-plugin to 1.10.11\n"
    },
    {
      "commit": "49db3cede80343f5d78623ffbf996f317db3ef75",
      "tree": "f42d515ba9617d0185c0e1019a736ec689b28c2c",
      "parents": [
        "76dce05e6ced42040d201337a2c1570817e311a1"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Fri Jan 24 15:06:16 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Jun 05 08:03:57 2025 -0400"
      },
      "message": "Update scalafmt-core to 3.8.6\n"
    },
    {
      "commit": "76dce05e6ced42040d201337a2c1570817e311a1",
      "tree": "714a2cbdf49280e98afddc1918337b930d2af41f",
      "parents": [
        "02112e7a25dc986d5eeb3b7fb6f1cbb7cb8574ed"
      ],
      "author": {
        "name": "Josh Adams",
        "email": "jadams@owlcyberdefense.com",
        "time": "Tue Jun 03 13:55:47 2025 -0400"
      },
      "committer": {
        "name": "jadams-tresys",
        "email": "30659277+jadams-tresys@users.noreply.github.com",
        "time": "Wed Jun 04 10:32:46 2025 -0400"
      },
      "message": "Change default version of Daffodil to 3.11.0\n"
    },
    {
      "commit": "02112e7a25dc986d5eeb3b7fb6f1cbb7cb8574ed",
      "tree": "c0bb94dd0d6bdc929a4c3017d9d63973e669f4fe",
      "parents": [
        "dfe5e0525900844bf14c5f36d021e786ca91d55b"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue May 27 09:50:52 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue May 27 10:21:57 2025 -0400"
      },
      "message": "Update release nexus user/pasword\n\nThe NEXUS_USER/PW credentials are only for publishing snapshots. ASF\nInfra has granted access to NEXUS_STAGE_DEPLOYER_USER/PW which allows\nstaging releases, so this switches to those.\n\nThis also updates the version number to 1.4.0 so that we can test the\nrelease using the updated credentials. We\u0027ll likely do a new release of\nthis plugin in the coming weeks to update to Daffodil 3.11.0, so this\nwill be needed soon anyways.\n"
    },
    {
      "commit": "dfe5e0525900844bf14c5f36d021e786ca91d55b",
      "tree": "70d28daf9e2e9e6e781dc0c7db50fab733ebdbdd",
      "parents": [
        "c019ee0681d7c7ea3a76e1b35c99d19c52263640"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Apr 28 10:39:52 2025 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu May 08 11:58:07 2025 -0400"
      },
      "message": "Add support for Scala 2.13 and Scala 3\n\n- Daffodil 3.11.0 uses Scala 2.13 and Daffodil 4.0.0 is expected to use\n  Scala 3. To support this, this modifies the plugin to set the\n  scalaVersion setting depending on the Daffodil version, taking into\n  account the version of Scala the version of Daffodil depends on and\n  the mimimum supported scala version based on the JDK version.\n- Add support for packgeDaffodilBinVersions for newer versions of\n  Daffodil. Instead of using double %% for packageDaffodilBinVersions\n  libraryDependencies, we now use a single % and manullay add the 2.12,\n  2.13, or 3 crossVersion depending on the Daffodil packageBinVersions.\n  This ensures packageDaffodilBin uses the right version of Scala for\n  the right version of Daffodil.\n- Rewrite DaffodilSaver in Java. When the DaffodilSaver is forked, it is\n  bootstrapped with the version of scala based on the scalaVersion\n  setting. But DaffodilSaver is always compiled with 2.12 (as are all\n  SBT plugins), which means bootstrapping could fail if there is a scala\n  mismatch. To fix this, this rewrites DaffodilSaver in Java. This\n  completely removes the Scala dependency from bootstrapping and avoids\n  issus with DaffodilSaver and Scala compatibility.\n- Add an implicit def to normalize all versions when doing semantic\n  version comparisons. This causes semantic version comparisons to treat\n  snapshot versions equivalent to non-snapshots (i.e. 4.0.0 \u003d\u003d\n  4.0.0-SNAPSHOT), which is always the behavior we expect when we do\n  comparisons.\n- Make versions mappings more clear. Instead of using \u003e\u003d and \u003c, just use\n  \u003d and specify more versions. It\u0027s a bit more verbose, but is much\n  easier to read which versions do what.\n- Update JDK scala compatibilty Scala versions for Java 24 and 25 (ea)\n- Use filterVersions in more places, renaming variables to make things\n  more clear, removes most uses of SemanticSelector\n\nCloses #95\n"
    },
    {
      "commit": "c019ee0681d7c7ea3a76e1b35c99d19c52263640",
      "tree": "816d57bf97a4d22fcca2129d7ed8f7dbacbf4d64",
      "parents": [
        "d5b196f0d490f1df7f76c62962661c4a4034e573"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Feb 27 08:30:15 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Apr 07 15:07:58 2025 -0400"
      },
      "message": "Add GitHub action to create release candidates\n\nAdds a new \"Release Candidate\" workflow that uses the new GitHub action\nand is triggered when a release candidate tag is created. This\nsimplifies the release candidate process to just pushing a single signed\ntag. Workflow dispatch is allowed for testing, but it will not publish\nanything.\n\nDAFFODIL-2971\n"
    },
    {
      "commit": "d5b196f0d490f1df7f76c62962661c4a4034e573",
      "tree": "918b914e2a7deb4e3d1cc5f01333b7ebd6e95f90",
      "parents": [
        "b7b1bb0436922147c6060c8daf539edd25e47b0a"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Jan 23 07:58:16 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 24 12:59:31 2025 -0500"
      },
      "message": "Prepare for 1.3.0 release\n"
    },
    {
      "commit": "b7b1bb0436922147c6060c8daf539edd25e47b0a",
      "tree": "4e1821aacf6d913451d85d4f0a01cfde03f9f210",
      "parents": [
        "81015dacebc22596acb055d474fe26cab95197cc"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 17 11:48:41 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 22 17:38:58 2025 -0500"
      },
      "message": "Bump default daffodilVersion to 3.10.0\n\nCloses #87\n"
    },
    {
      "commit": "81015dacebc22596acb055d474fe26cab95197cc",
      "tree": "9c6d6101a30637d9e4a6272e30a2e61785ef8355",
      "parents": [
        "1eebcfcb884c98d414e7f2a7a5d5f278f6652d06"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 03 08:04:01 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 22 11:51:47 2025 -0500"
      },
      "message": "Support exporting the packageDaffodilBin task\n\nIt is currently difficult to debug the packageDaffodilBin task because\nit is forked by SBT as a separate process. To make it easier to debug,\nthis writes the command that packageDaffodilBin fork/execs to the\nexport stream. Users can then run \u0027sbt \"export packageDaffodilBin\"\u0027 to\nview that command, which can then be manullay run, copied into a shell\nscript, added to an IDE for debugging, etc.\n\nCloses #80\n"
    },
    {
      "commit": "1eebcfcb884c98d414e7f2a7a5d5f278f6652d06",
      "tree": "30e4ec4dacea669a1606c00cd326c06712c4d0c2",
      "parents": [
        "93cad1035c55d137955e2930bfc57bb907542577"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 17 12:09:53 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 22 11:26:25 2025 -0500"
      },
      "message": "Add support for daffodil-tdml-junit library\n\nThis adds a dependency to daffodil-tdml-junit so that DFDL schema\nprojects can now make use of the much more compact TDML Runner API when\nusing JUnit for testing.\n\nNote that this adds the dependency for all Daffodil versions 3.2.0 or\nnewer, so that even older DFDL schema projects can use the more compact\nsyntax. This is done by making it an intranstive dependency for older\nversions.\n\nCloses #84\n"
    },
    {
      "commit": "93cad1035c55d137955e2930bfc57bb907542577",
      "tree": "bffce5dd3a093548d22cbb25c34f161c6fbaee5c",
      "parents": [
        "86fdfad1b5b76bec9d2b8912bddcb8d97db25807"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Mon Dec 23 13:58:07 2024 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 22 09:45:45 2025 -0500"
      },
      "message": "Update sbt, scripted-plugin to 1.10.7\n"
    },
    {
      "commit": "86fdfad1b5b76bec9d2b8912bddcb8d97db25807",
      "tree": "6170c57bf3b99f17d771c2ff72e6044a56a3230c",
      "parents": [
        "ad13b641ecb6bb6a2eae42a04291af425166f3bb"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Dec 20 15:22:06 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 22 09:45:28 2025 -0500"
      },
      "message": "Bump version to snapshot for development\n"
    },
    {
      "commit": "ad13b641ecb6bb6a2eae42a04291af425166f3bb",
      "tree": "27dca51e2fb5be891724ed2fae9cce6df8f5cebe",
      "parents": [
        "ccd9aa4d29a8769a638a53fe6665f604c2c7b633"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Sat Jan 18 14:33:05 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 22 08:02:30 2025 -0500"
      },
      "message": "Update scalafmt-core to 3.8.5\n\nReformat with scalafmt 3.8.5\n"
    },
    {
      "commit": "ccd9aa4d29a8769a638a53fe6665f604c2c7b633",
      "tree": "fa2dcda99ec4ca3f8859da6652962ef4efdddc96",
      "parents": [
        "fa20f961b859f3ad40d0419a491533f1d71af1b0"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Sat Jan 18 14:33:01 2025 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 22 08:02:17 2025 -0500"
      },
      "message": "Update sbt-scalafmt to 2.5.4\n"
    },
    {
      "commit": "fa20f961b859f3ad40d0419a491533f1d71af1b0",
      "tree": "0de3d0d7804ff1f16e799e177d1c3a08321a551d",
      "parents": [
        "c1e9ce78d1e3b5be32fb71fc1a5e491aa836a98e"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 03 08:35:02 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 03 09:55:21 2025 -0500"
      },
      "message": "Display Daffodil logs in packageDaffodilBin task\n\nWe currently add slf4j-nop to the packageDaffodilBin classpath which\nsilently drops all log messages from Daffodil. Sometimes these log\nmessages could be very helpful.\n\nTo enable this, this replaces slf4j-nop with slf4j-simple which just\noutputs to the console. This also defines a number of system properites\nso that packageDaffodilBin/logLevel is used to control the log level\nsl4fj and log4j loggers. This also make log messages go to stdout\ninstead of the default stderr, since SBT makes strderr messages look\nlike errors, when in reality these are just information messages about\nschema compilation.\n\nFixes #75\n"
    },
    {
      "commit": "c1e9ce78d1e3b5be32fb71fc1a5e491aa836a98e",
      "tree": "f64e6da8f1315fd73e823e57a0b1f7d51eeaa045",
      "parents": [
        "188cda08de5bf8dd76b1bed2bc24bb74e3fba319"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 03 07:44:17 2025 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Jan 03 08:09:00 2025 -0500"
      },
      "message": "Update CI Java and MacOS versions\n\n- Add build matrix for Java 21\n- Update MacOS to 14 since 12 is no longer supported by GitHub\n- Install SBT for MacOS 14, GitHub does not include SBT by default in\n  MacOS 14\n\nCloses #81\n"
    },
    {
      "commit": "188cda08de5bf8dd76b1bed2bc24bb74e3fba319",
      "tree": "68fec2dff8f9692a106a573ec47899ab41fd62ab",
      "parents": [
        "4037e7ebe92ce542aa7c91719c35f0bf9bc1508b"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Nov 05 09:25:17 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Nov 05 10:56:31 2024 -0500"
      },
      "message": "Update version to 1.2.0 for release\n"
    },
    {
      "commit": "4037e7ebe92ce542aa7c91719c35f0bf9bc1508b",
      "tree": "fead8e268379fa4bdbf57eb6fafb9c31773ee5a8",
      "parents": [
        "06c4658eb4bdf7634bb6f6c614e621efc024298a"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Mon Nov 04 08:05:56 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Nov 04 08:24:24 2024 -0500"
      },
      "message": "Update scalafmt-core to 3.8.3\n\nAlso update the config to match Daffodil\u0027s config, and rerun scalafmt\n"
    },
    {
      "commit": "06c4658eb4bdf7634bb6f6c614e621efc024298a",
      "tree": "1daae62ce59c5ef4fa60be70745048778efa0728",
      "parents": [
        "504da5627d1ec9554ca69584e5ae05a7081b7b23"
      ],
      "author": {
        "name": "Scala Steward",
        "email": "scala_steward@virtuslab.com",
        "time": "Mon Oct 28 14:24:06 2024 +0000"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Nov 04 07:29:21 2024 -0500"
      },
      "message": "Update sbt, scripted-plugin to 1.10.4\n"
    },
    {
      "commit": "504da5627d1ec9554ca69584e5ae05a7081b7b23",
      "tree": "b6f9331fd2061b4b750c0e3366af8b0a08e46236",
      "parents": [
        "c6ff4a0d815e3142a1e664ff5c77cb2b59941b5a"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Oct 31 14:45:50 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Nov 04 07:29:00 2024 -0500"
      },
      "message": "Warn whe daffodilFlatLayout is true, but the layout does not look flat\n\nSetting `daffodilFlatLayout :\u003d true` in a project where the layout is\nnot flat will cause weird behavior and things will fail in unintuitive\nways, making it hard to figure out the problem.\n\nIf the setting is true, we now try to detect non-flat layouts and output\nwarnings, helping to avoid these difficult to track down errors.\n\nCloses #70\n"
    },
    {
      "commit": "c6ff4a0d815e3142a1e664ff5c77cb2b59941b5a",
      "tree": "e60ed2704f4575437b7544041425c9437e959501",
      "parents": [
        "a456c8f418f2a8b724eb3a0fdbce2468a8c6887f"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Oct 29 18:11:24 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Oct 31 09:27:12 2024 -0400"
      },
      "message": "Add support for publishArtifact setting\n\nSBT already defines a `publishArtifact` setting, but it is only used for\npackageBin, packageDoc, and packageSrc artifacts. By default it is not\naffect custom package tasks like packageDaffodilBin. This makes the\nplugin aware of this setting for packageDaffodilBin.\n\nNowk if packageDaffodilBin/publishArtifact is set to false then we do\nnot modify the `artifacts` or `packagedArtifacts` settings so SBT does\nnot know about the saved parser artifacts and will not publish them.\n\nCloses #68\n"
    },
    {
      "commit": "a456c8f418f2a8b724eb3a0fdbce2468a8c6887f",
      "tree": "babc6f53b0710d237212a7d1f24283be38fa555c",
      "parents": [
        "6f035056fcf7d07ead46232c076e87ee128a420c"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Oct 25 08:40:43 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri Oct 25 13:59:13 2024 -0400"
      },
      "message": "Improve DaffodilBinInfo parameter documentation\n\nFor each of the parameters of a DaffodilBinInfo, this adds more detailed\ndescriptions and examples, making it more clear what is expected of each\nparameter and what it affects.\n\nThis also moves it out of a table. Although the table was succinct, it\nreally does not give enough space for detailed descriptions and examples\nthat we need.\n\nCloses #65\n"
    },
    {
      "commit": "6f035056fcf7d07ead46232c076e87ee128a420c",
      "tree": "0cca1fea1fd7fce552604105972b2c8b6ffaf72c",
      "parents": [
        "7758e7aa57938fd7507440dae5245ee135ab7c5b"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Oct 24 09:46:12 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Oct 24 13:28:48 2024 -0400"
      },
      "message": "Use \"provided\" scope for layer/charset/udf dependencies\n\nIf a project implements a Daffodil layer, character set, or user defined\nfunction plugin, and enables the associated setting, then we add the\nappropriate Daffodil library as a dependency. This is necessary to\ncompile the plugin. However, this means that any schema projects that\ndepend on the layer/charset/udf plugin will now transitively pull in\nDaffodil as a dependency.\n\nIn most cases, this doesn\u0027t really matter because the transitive\ndependencies will be overridden by `daffodilVersion`, or if you use `sbt\n\"export fullClasspath\"` to set DAFFODIL_CLASSPATH, the CLI will override\nany Daffodil dependencies.\n\nBut, even though this transitive dependency is never really used it\nstill clutters up the dependency listings and can make it difficult to\nsee what the real dependencies are. Since Daffodil jars will almost\nalways be provided by what ever actually uses these plugins and schemas,\nthis sets those dependencies to the \"provided\" scope. This allows the\nplugins to be compiled, but will not cause Daffodil jars to be\ntransitively pulled it.\n\nNote that as a rule of thumb, all dependencies to a daffodil jar\nprobably want to either be in the \"test\" or \"provided\" scopes. All\ndependencies this plug adds now follow that rule.\n\nCloses #63\n"
    },
    {
      "commit": "7758e7aa57938fd7507440dae5245ee135ab7c5b",
      "tree": "b6ad93d3ca6aff57cec4bd9d6260772a3d4270c8",
      "parents": [
        "fd2d76346f2253dab42665484d61ea76e46c7003"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 30 13:40:55 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Oct 21 08:34:08 2024 -0400"
      },
      "message": "Use the new compileResource API when using Daffodil 3.9.0+\n\nThe compileResource API is useful to create depersonalized diagnostics\nand saved-parsers.\n\nThis modifies the DaffodilPlugin to use compileResource instead of\ncompileSource when creating a saved parser for newer versions of\nDaffodil. DaffodilSaver must still support older versions of Daffodil\nthat do not have this new API, so the plugin passes in a number to the\nsaver to signify which version of the API to use.\n\nCloses #47\n"
    },
    {
      "commit": "fd2d76346f2253dab42665484d61ea76e46c7003",
      "tree": "d08205f9f0353fbf421f9715c378581786fcbbcf",
      "parents": [
        "15e1f7a456982a2744494620e9a40c3f67757269"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Aug 28 08:06:42 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Oct 21 07:55:00 2024 -0400"
      },
      "message": "Bump version for 1.2.0 development\n"
    },
    {
      "commit": "15e1f7a456982a2744494620e9a40c3f67757269",
      "tree": "7af23b29d41eb3fb4d31f691bdb78f62b6db8c22",
      "parents": [
        "a74400aba33fbe252b6ccae54b568265c8420165"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 30 11:44:56 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Oct 21 07:41:59 2024 -0400"
      },
      "message": "Improve error/warning messages\n\nIf either daffodilPackageBinInfos or daffodilPackageBinVersions are\nempty then the packageDaffodilBin task will silently not create any\nartifacts. This can be confusing for users if they forget to set one of\nthe mentioned settings.\n\nThis modifies the plugin so that if a user explicitly runs\npackageDaffodilBin and no saved parsers are created then we output a\nwarning and mention the settings to check for correctness.\n\nNote that this moves the core logic of packageDaffodilBin into the\n\"products\" subtask which does not create a warning. All tasks that need\nthe saved parsers (e.g. publishing artifacts, tests) now use this\nsubtask and will not output a warning. Only the packageDaffodilBin task\nexplicitly run by a user outputs a warning. This avoids potentially\nconfusing warnings, for example when publishing a schema or running\ntests that you know do not use saved parsers.\n\nAlso adds an error if a schema path does not start with \u0027/\u0027 and improve\nthe duplicate classifiers error message.\n\nCloses #56\n"
    },
    {
      "commit": "a74400aba33fbe252b6ccae54b568265c8420165",
      "tree": "352acbd26bed6ac6ae2c3ebcd35205a36f62c6d5",
      "parents": [
        "5f2b5a2c0886a94c41f60c620dc6202fb7331094"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 30 12:03:20 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 30 13:14:10 2024 -0400"
      },
      "message": "Updates for Daffodil 3.9.0\n\n- Default daffodilVersion setting to 3.9.0\n- Add test to make sure daffodilVersion :\u003d 3.9.0 works\n\nCloses #57\n"
    },
    {
      "commit": "5f2b5a2c0886a94c41f60c620dc6202fb7331094",
      "tree": "574120eb0970d815e17ffd17341bc786f60f4df3",
      "parents": [
        "2a3b14036f96ea0a1bd7a960d8b97a2d4ea3de6b"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 09 10:32:07 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Sep 09 11:16:33 2024 -0400"
      },
      "message": "Get JVM options from packageDaffodilBin/javaOptions instead of environment variables\n\nSome schema are so large and complex that they need to specify\nadditional JVM options to increase memory/stack size when forking the\nDaffodilSaver to compile and save processors using packageDaffodilBin\ntask. The plugin already supports this by incorporating options from\nDAFFODIL_JAVA_OPTS or JAVA_OPTS, but that causes projects to rely on\noften undocumented memory requirements or environment settings. This can\nmake it difficult to compile schemas if you don\u0027t know what settings are\nneeded, or could lead to unexpected errors if invalid values are added\nto environment variables. This is fragile and probably not something we\nshould support.\n\nTo fix this, this removes support for DAFFODIL_JAVA_OPTS and JAVA_OPTS,\nand instead gets additional JVM options from the `packageDaffodilBin/javaOptions`\nSBT setting. This way any additional JVM options must be specified and\ndocumented in build.sbt and should work anywhere without the need to\nconfigure the environment.\n\nCloses #51\n"
    },
    {
      "commit": "2a3b14036f96ea0a1bd7a960d8b97a2d4ea3de6b",
      "tree": "7e3e81c228cff47347c5b3a7b1530b1f490e9695",
      "parents": [
        "1d9d6bc957a34fc331baf1d31d1d6ac204ff6d9a"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jul 15 07:54:28 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jul 15 08:08:07 2024 -0400"
      },
      "message": "Prepare for 1.1.0 release\n\nCloses #45\n"
    },
    {
      "commit": "1d9d6bc957a34fc331baf1d31d1d6ac204ff6d9a",
      "tree": "03f6a00b21cdb7fe780ae17affdeff3d5d52713e",
      "parents": [
        "4d2ed18c577d44d188fd321178dc2ea0d9b59ed8"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Jul 11 16:23:22 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Jul 11 16:39:59 2024 -0400"
      },
      "message": "Improve error detection and diagnostics\n\n- Change the \"failed to save daffodil parser\" message to include the\n  full target file name instead of just the classifier--this makes it\n  more clear which parser is failing to compile\n- Do not include \u0027[error]\u0027 in error messages created by the parser\n  saver. SBT automatically captures stderr and prepends \u0027[error]\u0027\n- Make sure to exit(1) if the correct number of arguments aren\u0027t\n  provided to the saver.\n\nClose #4\n"
    },
    {
      "commit": "4d2ed18c577d44d188fd321178dc2ea0d9b59ed8",
      "tree": "1103616a9740e9a1bed726a3a91f9ff7749fd49c",
      "parents": [
        "9ef64c41e1150402db127acd69d7e917eba5fb56"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jul 09 15:16:45 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Jul 11 16:16:16 2024 -0400"
      },
      "message": "Support compiling main schemas found in a jar\n\nIt is possible for a schema resource path in daffodilPackageBinInfos to\nresolve to a path inside jar, such as when the main schema is in a\ndependency jar or when the exportJars setting is true. If we try to\nconvert the resolved resource to a File for the compileFile API, the jar\nURIs fail with a confusing exception.\n\nTo fix this, this switches to the compileSource API, which supports\ncompiling schemas with either file:// or jar:// URIs.\n\nCloses #3\n"
    },
    {
      "commit": "9ef64c41e1150402db127acd69d7e917eba5fb56",
      "tree": "51785e391e66299e97fc7ec9ebd17f3ce6bcde24",
      "parents": [
        "1b907ac4a9ca7727454715bfa04f87fcf6b83ceb"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jul 08 09:03:24 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Jul 11 16:04:47 2024 -0400"
      },
      "message": "Add daffodilBuildsCharset setting\n\nCloses #32\n"
    },
    {
      "commit": "1b907ac4a9ca7727454715bfa04f87fcf6b83ceb",
      "tree": "f1aafe0fe474034b8452448fa85c49d7de5a5582",
      "parents": [
        "814bd7bc6594e700bf930faa2a6c1a8a18775b7c"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jul 08 15:45:06 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jul 09 09:27:08 2024 -0400"
      },
      "message": "Add packageDaffodilBin to use config files\n\nThe daffodilPackageBinInfos setting is changed from a tuple to a new\nDaffodilBinInfo class that is specific to Daffodil. This makes it easier\nto allow for optional fields or extend in the future. For backwards\ncompatibilty, an implicit def is added to automatically convert existing\n3-tuples to the new type.\n\nA new optional field is added to DaffodilBinInfo to specify a config\nfile which is used during compilation of saved parsers. This currently\nonly supports tunables since config files can only contain tunables and\nvariable bindings, and variable bindings are excluded when saving a\nparser.\n\nCloses #6\n"
    },
    {
      "commit": "814bd7bc6594e700bf930faa2a6c1a8a18775b7c",
      "tree": "8173d0bcb2c5b219259063ab921e13418f7da127",
      "parents": [
        "184150d4ff8564ec84124378cfa0684718c89082"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jun 18 12:25:56 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jul 08 08:43:38 2024 -0400"
      },
      "message": "Set a scalaVersion default based on the daffodilVersion\n\nSchema projects shouldn\u0027t need to set scalaVersion, instead we should\nget use the version of Scala a specific version of Daffodil shipped\nwith, raised to the minimum version of Scala supported by the current\nJDK.\n\nThis also refactors semantic version selectors so that we can reuse\nsimilar logic in a number of places. Note that SemanticSelector already\nsupports multiple space separated selectors, so the custom logic we had\nfor that is removed.\n\nCloses #34\n"
    },
    {
      "commit": "184150d4ff8564ec84124378cfa0684718c89082",
      "tree": "b77c209cb2ab3638930578230ad4633b9a5ff33f",
      "parents": [
        "a482c6916b86139eeacf05ec65c67a42e954b505"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jun 18 10:45:14 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jul 08 08:25:31 2024 -0400"
      },
      "message": "Bump Daffodil/Scala/Sbt versions\n\nCloses #35\n"
    },
    {
      "commit": "a482c6916b86139eeacf05ec65c67a42e954b505",
      "tree": "08f4ac07f45c357bda741bbbd7cfa06fd0464694",
      "parents": [
        "90c76fbf53c675883f57c3f343d38571c23cb88b"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri May 17 11:33:07 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Fri May 17 12:19:22 2024 -0400"
      },
      "message": "Use a resource generator to create saved parsers for daffodilTdmlUsesPackageBin\n\nA resource generator is probably the \"more correct\" way to make saved\nparsers available to tests, since we are really just generating a\nresource to be made available on the classpath. This also allows SBT to\nmanage the classpath how it expects, instead of us tacking on our file\nthe dependencyClasspath. However, we don\u0027t want this generated saved\nparser resource to be included in -test jars, so we also exclude it from\nthe `Test/packageBin` mapping.\n\nThis has the added benefit that IntelliJ knows about generated resources\nso this solves the issue of tests run from IntelliJ not being able to\nfind the parsers. The one drawback is IntelliJ doesn\u0027t know how to\nactually run the resource generator, so you need to either manually run\nit with `sbt Test/compile` or enable \"use sbt shell for builds\".\n\nCloses #29\n"
    },
    {
      "commit": "90c76fbf53c675883f57c3f343d38571c23cb88b",
      "tree": "e45af8f11341eb0a14eef27c9aa972a4e9f3f37d",
      "parents": [
        "75c0550e046efc0240e6637e6d7ac1e930bd31db"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed May 15 13:00:47 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed May 15 14:59:36 2024 -0400"
      },
      "message": "Bump version for development\n"
    },
    {
      "commit": "75c0550e046efc0240e6637e6d7ac1e930bd31db",
      "tree": "5de697fdb9393cd6330b43b8565e2562cc628ad6",
      "parents": [
        "b310bbf9908b00468118465a2439cc5780257d05"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Apr 25 07:06:56 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Apr 25 10:04:30 2024 -0400"
      },
      "message": "Prepare for 1.0.0 release\n"
    },
    {
      "commit": "b310bbf9908b00468118465a2439cc5780257d05",
      "tree": "9e68a5ec7d913a18dfd720f111b113e823189a76",
      "parents": [
        "ae53bb381d684240a6068e7c6d579008cb1d9285"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Apr 23 11:24:31 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Thu Apr 25 07:05:09 2024 -0400"
      },
      "message": "Require plugin to be explicitly enabled\n\nCurrently, if this plugin is added to a project with \"addSbtPlugin\" in\nplugins.sbt, then it is automatically enabled for all subprojects as\nwell. For projects that are made up of multiple subprojects, some of\nwhich might not be DFDL schema projects, this might not be desired\nsince it automatically adds things like test dependencies.\n\nThis removes the allRequirements trigger so that it must explicitly\nenabled by adding enablePlugins(DaffodilPlugin) to the build.sbt file.\n\nThis has the added benefit that you can more easily tell a project is a\nDFDL project by looking at the build.sbt, since often the defaults\nprovided by the plugin are good enough that all that is needed is the\n\"enablePlugins\" line.\n\nAdditionally, we may want to create plugins in the future that are\nseparate from this one but depend on it and are enabled only if this\nplugin is enabled (e.g. IBM cross tester, XSAT). SBT provides that\ncapability, but it means this plugin must not be automatically enabled.\n\nCloses #25\n"
    },
    {
      "commit": "ae53bb381d684240a6068e7c6d579008cb1d9285",
      "tree": "0246b2f3ce2551ce14b36214917e314cd7040976",
      "parents": [
        "15e66f17d1d56283b676daf57abe7c44860a5822"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Apr 10 09:44:14 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Apr 22 12:36:22 2024 -0400"
      },
      "message": "Improve ease of testing\n\n- Modify the SBT test task so that it also evalutes the scripted task to\n  run all scripted tests. New users don\u0027t need to know about the\n  scripted command to know how to run tests.\n- Add documentation to provide more information and a link about the\n  scripted framework since it is not commonly used outside of plugins\n- Modify CI to run `sbt test`. This will trigger scripted tests as well\n  as other tests if we ever add them.\n- Also fix indentation level of headers\n\nClosed #20\n"
    },
    {
      "commit": "15e66f17d1d56283b676daf57abe7c44860a5822",
      "tree": "31148a0cfbbe2eb7f22da3899922d864a3b59242",
      "parents": [
        "6dfb88548842e44eecdb8441304f1121f8c7906d"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Apr 09 09:35:36 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Apr 22 12:18:52 2024 -0400"
      },
      "message": "Support using saved parsers in TDML tests\n\nAdds a new setting called daffodilTdmlUsesPackageBin, which if set to\ntrue causes the test task to trigger packageDaffodilBin to create saved\nparsers and put them on the test classpath. This allows TDML tests to\nreference and use saved parsers instead of re-compiling everytime tests\nare run.\n\nCloses #18\n"
    },
    {
      "commit": "6dfb88548842e44eecdb8441304f1121f8c7906d",
      "tree": "b1b521143360abb31a77cb35b0cb15142f463a30",
      "parents": [
        "b087a1d6777b28514777333d2bbad1f2374584ab"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Apr 22 09:08:51 2024 -0400"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Apr 22 11:45:07 2024 -0400"
      },
      "message": "Bump default daffodilVersion to 3.7.0\n\n- Update readme to make it more clear daffodiLVersion is not required,\n  but can be used to pin to a specific version\n- Aadd test to ensure the plugin works with all Daffodil versions 3.0.0\n  and newer\n\nCloses #22\n"
    },
    {
      "commit": "b087a1d6777b28514777333d2bbad1f2374584ab",
      "tree": "059b00c8553bc8915561724b2e6fd0fab0519a45",
      "parents": [
        "fe432c66f0ba3df79761a2371c491a62dcfc965c"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 24 12:02:15 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 24 14:53:45 2024 -0500"
      },
      "message": "Support schema projects that build layers and UDFs\n\n- Add daffodilBuildsLayer and daffodilBuildsUDF settings, which if set\n  to true adds dependencies and modifies crossPaths for projects that\n  builds layers and UDFs, respectively. Defaults to false since most\n  projects will not use these.\n\nCloses #11\n"
    },
    {
      "commit": "fe432c66f0ba3df79761a2371c491a62dcfc965c",
      "tree": "efa0ef0c9bb40c91558bf0d089aabebfd3aa0dd4",
      "parents": [
        "80a06bd01da0de356b1148c986b7bbd68d913ea0"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 24 12:06:52 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 24 12:34:54 2024 -0500"
      },
      "message": "Add license/repo information to sbt-daffodil jars/poms\n\nThe sbt-daffodil plugin is published to maven, so we should provide\nlicense and other meta information so it can be correctly displayed on\nthe maven repo sites.\n\n- Add LICENSE/NOTICE to META-INF directory so they are includd in the\n  published sbt-daffodil jars\n- Add meta information about homepage, scm, etc to build.sbt so it is\n  included in the sbt-daffodil pom\n\nCloses #14\n"
    },
    {
      "commit": "80a06bd01da0de356b1148c986b7bbd68d913ea0",
      "tree": "16a452da70d5a08108d083d377c7c411af35b669",
      "parents": [
        "45cd845caf6a3ef948498787f46fef7e9f9fa976"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 24 11:19:36 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Wed Jan 24 11:31:43 2024 -0500"
      },
      "message": "Add setting to enable flattened directory layout\n\n- Add new \"daffodilFlatLayout\" setting--if true the plugin configures\n  SBT so project files are in root \"src/\" or \"test/\" directories, and\n  sources vs. resources is determined by file extension.\n- Scripted uses a file called \"test\" for scripted commands, but this\n  conflicts with the \"test/\" directory if daffodilFlatLayout is true.\n  Fortunately, scripted supports \"test.script\" as an alternative, so\n  scripted \"test\" files are renamed to this.\n\nCloses #8\n"
    },
    {
      "commit": "45cd845caf6a3ef948498787f46fef7e9f9fa976",
      "tree": "70d9a416a5fe98f5674930f3c97cb83b173bcb01",
      "parents": [
        "7d7b21763bbb6955e08693d964a7d6945149888f"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 23 11:17:28 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 23 12:41:51 2024 -0500"
      },
      "message": "Configure common settings for DFDL schema project\n\n- Add new \"daffodilVersion\" setting, used to specify which version of\n  Daffodil \"sbt test\" should build and run against. This is used to add\n  dependencies like daffodil-tdml-processor, junit, and loggers if\n  needed\n- Set crossPaths to false--schema projects jars do not depend on\n  specific versions of Scala since they just contain resources. This\n  makes it so the _2.12 is not included in jar file names.\n- Set testOptions for verbose logging with SBT JUnit interface\n- Change daffodilPackageBinVersion from a Set to a Seq. This makes it so\n  order is deterministic and schema projects can do things like:\n\n      daffodilVersion :\u003d daffodilPackageBinVersions.head\n\n- Remove sbtPlugin :\u003d true setting--that is already set by enabling the\n  SbtPlugin plugin\n- Update scripted test to use new settings and remove settings the\n  plugin now provides.\n- Ignore project/build.properties in scripted tests--when running\n  scripted tests manually sbt creates these files and we don\u0027t want them\n\nCloses #9\n"
    },
    {
      "commit": "7d7b21763bbb6955e08693d964a7d6945149888f",
      "tree": "e9616704bfd1f8ae0d10eed1095fa94ee440c801",
      "parents": [
        "2d035ef1b688a2ab1b07b4cd920850bbe16c0f91"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 23 07:19:25 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Tue Jan 23 07:44:36 2024 -0500"
      },
      "message": "Add sbt-daffodil plugin\n\n- Functionality includes the ability to create saved parsres using the\n  packageDaffodilBin task and related settings\n- Adds a single \"scripted\" test to ensure the task works and publishes\n  artifacts correctly\n- Configured GitHub actions to compile and run scripted tests, and\n  lint/rat checks copied from Daffodil\n"
    },
    {
      "commit": "2d035ef1b688a2ab1b07b4cd920850bbe16c0f91",
      "tree": "fbac9e251eeac14a6b9622fd06d802c63daae19b",
      "parents": [
        "9c6b8633824b9323acb2377e40430f209292fd83"
      ],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jan 22 09:48:08 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jan 22 12:51:48 2024 -0500"
      },
      "message": "Add .asf.yml\n\n- Update description from default\n- Only allow rebase, no squash/merge\n- Use GitHub issues and wiki instead of Jira/Confluense\n"
    },
    {
      "commit": "9c6b8633824b9323acb2377e40430f209292fd83",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [],
      "author": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jan 22 09:35:10 2024 -0500"
      },
      "committer": {
        "name": "Steve Lawrence",
        "email": "slawrence@apache.org",
        "time": "Mon Jan 22 09:35:10 2024 -0500"
      },
      "message": "Initialize repository\n"
    }
  ]
}
