)]}'
{
  "log": [
    {
      "commit": "01d7eb52654c411d17dd4611c8f869fd8e3488a3",
      "tree": "0d1b146906708f6d684737a43409c313c3a3f0b2",
      "parents": [
        "ed455584c82e6cf76d990cf269f1269301278ef5"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Nov 05 20:34:33 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 05 20:34:33 2025"
      },
      "message": "Bump the github-actions group across 1 directory with 2 updates (#760)\n\nBumps the github-actions group with 2 updates in the / directory: [actions/checkout](https://github.com/actions/checkout) and [actions/stale](https://github.com/actions/stale).\n\n\nUpdates `actions/checkout` from 4.2.2 to 5.0.0\n- [Release notes](https://github.com/actions/checkout/releases)\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/checkout/compare/11bd71901bbe5b1630ceea73d27597364c9af683...08c6903cd8c0fde910a37f88322edcfb5dd907a8)\n\nUpdates `actions/stale` from 9.1.0 to 10.0.0\n- [Release notes](https://github.com/actions/stale/releases)\n- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/actions/stale/compare/5bef64f19d7facfb25b37b414482c7164d639639...3a9db7e6a41a89f618792c92c0e97cc736e1b13f)\n\n---\nupdated-dependencies:\n- dependency-name: actions/checkout\n  dependency-version: 5.0.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n  dependency-group: github-actions\n- dependency-name: actions/stale\n  dependency-version: 10.0.0\n  dependency-type: direct:production\n  update-type: version-update:semver-major\n  dependency-group: github-actions\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "ed455584c82e6cf76d990cf269f1269301278ef5",
      "tree": "e5cd514c23cf1f17f94c83b447a606379c4b7e00",
      "parents": [
        "003ef5104dad2df59fec68189acf01f75a6062d8"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Sun Mar 02 20:17:16 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Mar 02 20:17:16 2025"
      },
      "message": "Bump dart-lang/setup-dart in the github-actions group (#758)\n\nBumps the github-actions group with 1 update: [dart-lang/setup-dart](https://github.com/dart-lang/setup-dart).\n\n\nUpdates `dart-lang/setup-dart` from 1.7.0 to 1.7.1\n- [Release notes](https://github.com/dart-lang/setup-dart/releases)\n- [Changelog](https://github.com/dart-lang/setup-dart/blob/main/CHANGELOG.md)\n- [Commits](https://github.com/dart-lang/setup-dart/compare/e630b99d28a3b71860378cafdc2a067c71107f94...e51d8e571e22473a2ddebf0ef8a2123f0ab2c02c)\n\n---\nupdated-dependencies:\n- dependency-name: dart-lang/setup-dart\n  dependency-type: direct:production\n  update-type: version-update:semver-patch\n  dependency-group: github-actions\n...\n\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "003ef5104dad2df59fec68189acf01f75a6062d8",
      "tree": "fcc200c84206dc416a898c978deb8b36aa2600a8",
      "parents": [
        "ec4ed8ee08aee0ab20085090bb7f9251a085620d"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Tue Feb 04 20:24:17 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 04 20:24:17 2025"
      },
      "message": "Deprecate hash functions (#757)\n\nFolks should use Object.hash bits instead\r\nReplaced impl w/ Object.hash bits"
    },
    {
      "commit": "ec4ed8ee08aee0ab20085090bb7f9251a085620d",
      "tree": "e9933f493251b588056655c5430b56af5909c956",
      "parents": [
        "58909bdea7ea6bc071e55029c59a89f098c95001"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Tue Feb 04 04:52:46 2025"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 04 04:52:46 2025"
      },
      "message": "Bump the github-actions group across 1 directory with 2 updates (#756)\n\nBumps the github-actions group with 2 updates in the / directory: [dart-lang/setup-dart](https://github.com/dart-lang/setup-dart) and [actions/stale](https://github.com/actions/stale).\r\n\r\n\r\nUpdates `dart-lang/setup-dart` from 1.6.5 to 1.7.0\r\n- [Release notes](https://github.com/dart-lang/setup-dart/releases)\r\n- [Changelog](https://github.com/dart-lang/setup-dart/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/dart-lang/setup-dart/compare/0a8a0fc875eb934c15d08629302413c671d3f672...e630b99d28a3b71860378cafdc2a067c71107f94)\r\n\r\nUpdates `actions/stale` from 9.0.0 to 9.1.0\r\n- [Release notes](https://github.com/actions/stale/releases)\r\n- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/stale/compare/28ca1036281a5e5922ead5184a1bbf96e5fc984e...5bef64f19d7facfb25b37b414482c7164d639639)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: dart-lang/setup-dart\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n  dependency-group: github-actions\r\n- dependency-name: actions/stale\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n  dependency-group: github-actions\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "58909bdea7ea6bc071e55029c59a89f098c95001",
      "tree": "40768eef0d68430cc5807c06b7b9ae2d21017a01",
      "parents": [
        "db1820aad53e961bf74621c2cf59e330195d3105"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Nov 04 21:18:24 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Nov 04 21:18:24 2024"
      },
      "message": "Bump actions/checkout in the github-actions group across 1 directory (#754)\n\nBumps the github-actions group with 1 update in the / directory: [actions/checkout](https://github.com/actions/checkout).\r\n\r\n\r\nUpdates `actions/checkout` from 4.1.7 to 4.2.2\r\n- [Release notes](https://github.com/actions/checkout/releases)\r\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/checkout/compare/692973e3d937129bcbf40652eb9f2f61becf3332...11bd71901bbe5b1630ceea73d27597364c9af683)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/checkout\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n  dependency-group: github-actions\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "db1820aad53e961bf74621c2cf59e330195d3105",
      "tree": "12376aef65eda25f06b2ce8ad2602babbdcbedce",
      "parents": [
        "6ec3568dee63ae02e8676e28a6df0157f4d20e84"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Wed Oct 30 20:37:09 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 30 20:37:09 2024"
      },
      "message": "blast_repo fixes (#753)\n\ndrop-lint"
    },
    {
      "commit": "6ec3568dee63ae02e8676e28a6df0157f4d20e84",
      "tree": "73e9083af8a0dd3b5bebdea1513bcb1f2a88f45b",
      "parents": [
        "9736fda946fb7a123bbf7cf8a0390c5b5323f10c"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Aug 28 18:18:42 2024"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Aug 28 18:18:42 2024"
      },
      "message": "Update SDK constraint to \u003c 4.0.0\n"
    },
    {
      "commit": "9736fda946fb7a123bbf7cf8a0390c5b5323f10c",
      "tree": "335fe96d33472379c133cae91e3daea254665fd2",
      "parents": [
        "5e3eff0730b65f0331083174230a48b2a4205ebc"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Aug 28 18:14:58 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 28 18:14:58 2024"
      },
      "message": "Version 3.2.2 (#751)\n\n"
    },
    {
      "commit": "5e3eff0730b65f0331083174230a48b2a4205ebc",
      "tree": "590e79787943d441cffc925e8d3f56994c0568ec",
      "parents": [
        "38bbd8fe875edb467ea8d61622a7543d167532ed"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Wed Aug 28 18:09:46 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Aug 28 18:09:46 2024"
      },
      "message": "Fix some doc comments (#750)\n\nThese were triggering a stack overflow in dartdoc, and regardless, should probably have been in backticks."
    },
    {
      "commit": "38bbd8fe875edb467ea8d61622a7543d167532ed",
      "tree": "2b31226eb16498306248132f2b0c75a78030594b",
      "parents": [
        "c9284ddc7ccb5f202f6b1e3d852758f71e0ad846"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Mon Jul 01 18:04:21 2024"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 01 18:04:21 2024"
      },
      "message": "blast_repo fixes (#748)\n\nauto-publish, dependabot, github-actions, no-response"
    },
    {
      "commit": "c9284ddc7ccb5f202f6b1e3d852758f71e0ad846",
      "tree": "571fac4fb8e0d6e4972480f1f05c1624602204ab",
      "parents": [
        "f0959573685cdecc549094929f56a359301f153c"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Dec 14 21:09:57 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 14 21:09:57 2023"
      },
      "message": "Bump actions/checkout from 3.6.0 to 4.1.1 (#741)\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 3.6.0 to 4.1.1.\r\n- [Release notes](https://github.com/actions/checkout/releases)\r\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/checkout/compare/f43a0e5ff2bd294095638e18286ca9a3d1956744...b4ffde65f46336ab88eb53be808477a3936bae11)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/checkout\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-major\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "f0959573685cdecc549094929f56a359301f153c",
      "tree": "f7deacc66e279ab2aaed003f3db599d64c17302a",
      "parents": [
        "efc83c31e563b3304989f8e6dea8bd49d2bb10d6"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Dec 14 21:01:34 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 14 21:01:34 2023"
      },
      "message": "Bump dart-lang/setup-dart from 1.5.0 to 1.6.0 (#740)\n\nBumps [dart-lang/setup-dart](https://github.com/dart-lang/setup-dart) from 1.5.0 to 1.6.0.\r\n- [Release notes](https://github.com/dart-lang/setup-dart/releases)\r\n- [Changelog](https://github.com/dart-lang/setup-dart/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/dart-lang/setup-dart/compare/d6a63dab3335f427404425de0fbfed4686d93c4f...b64355ae6ca0b5d484f0106a033dd1388965d06d)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: dart-lang/setup-dart\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "efc83c31e563b3304989f8e6dea8bd49d2bb10d6",
      "tree": "9603eb15ddb8bb6d9388c9c959767e9e73edb0c2",
      "parents": [
        "129d8b662093fddc0e269d0ea02a3216f482f350"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Sep 04 01:33:57 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Sep 04 01:33:57 2023"
      },
      "message": "Bump actions/checkout from 3.5.2 to 3.6.0 (#737)\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 3.5.2 to 3.6.0.\r\n- [Release notes](https://github.com/actions/checkout/releases)\r\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/checkout/compare/8e5e7e5ab8b370d6c329ec480221332ada57f0ab...f43a0e5ff2bd294095638e18286ca9a3d1956744)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/checkout\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "129d8b662093fddc0e269d0ea02a3216f482f350",
      "tree": "cc21a11200f5b3fd3b05ff5ae89a6b5f6997a364",
      "parents": [
        "67ea710e59d4766de18312a7b10bdaa166ea52dd"
      ],
      "author": {
        "name": "David Morgan",
        "email": "davidmorgan@google.com",
        "time": "Thu Jun 08 16:20:23 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jun 08 16:20:23 2023"
      },
      "message": "Add more detailed guidance to Optional dartdoc. (#732)\n\n"
    },
    {
      "commit": "67ea710e59d4766de18312a7b10bdaa166ea52dd",
      "tree": "3fce3fe166b7e7b0c6af2c93c28bda2559d1d133",
      "parents": [
        "ea1955e21424b6a5d577b563cb69064b2ec26440"
      ],
      "author": {
        "name": "Gary Roumanis",
        "email": "groumanis@gmail.com",
        "time": "Tue Jun 06 20:42:44 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 06 20:42:44 2023"
      },
      "message": "Deprecate Optional (#731)\n\nWe do not intend on fully removing this type given the large amount of internal code that depends on it. Also this abstraction is useful in rare instances for the null-safety migration. To discourage adoption however, we will deprecate it and update the documentation."
    },
    {
      "commit": "ea1955e21424b6a5d577b563cb69064b2ec26440",
      "tree": "a8a2e75f9feaa0f8146ee2e785f1a931411f8cb7",
      "parents": [
        "ab778f6e1469bad3ea2d0ff896418b7b6ed5f8a2"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon May 01 22:56:25 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon May 01 22:56:25 2023"
      },
      "message": "Bump actions/checkout from 3.5.0 to 3.5.2 (#728)\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 3.5.0 to 3.5.2.\r\n- [Release notes](https://github.com/actions/checkout/releases)\r\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/checkout/compare/8f4b7f84864484a7bf31766abe9204da3cbe65b3...8e5e7e5ab8b370d6c329ec480221332ada57f0ab)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/checkout\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-patch\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "ab778f6e1469bad3ea2d0ff896418b7b6ed5f8a2",
      "tree": "ea614f80c4166e4bb8902d15a3e3b09cfe7ed0eb",
      "parents": [
        "767a404012c3aafab1b8b3382f067bdbeaf57b71"
      ],
      "author": {
        "name": "Patrik Badanjak",
        "email": "48242978+patrikbadanjak@users.noreply.github.com",
        "time": "Thu Apr 27 19:15:59 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Apr 27 19:15:59 2023"
      },
      "message": "Add factory constructor Multimap.fromMultimap (#727)\n\nA little convenience method for easier copying. Closes #705."
    },
    {
      "commit": "767a404012c3aafab1b8b3382f067bdbeaf57b71",
      "tree": "e608cbcebc541961caa26c0adb8c89ba392f74f5",
      "parents": [
        "fa2e8bbad26298a00638a5687cd27fab1cf3ca9d"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Apr 03 17:16:02 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 03 17:16:02 2023"
      },
      "message": "Bump actions/checkout from 3.3.0 to 3.5.0 (#726)\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 3.3.0 to 3.5.0.\r\n- [Release notes](https://github.com/actions/checkout/releases)\r\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/checkout/compare/ac593985615ec2ede58e132d2e21d2b1cbd6127c...8f4b7f84864484a7bf31766abe9204da3cbe65b3)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/checkout\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "fa2e8bbad26298a00638a5687cd27fab1cf3ca9d",
      "tree": "5515b0044e7ff68194a5694851f0ea7f176ed391",
      "parents": [
        "c6c5f0da484c932ea6f999d70229a70af943bd6a"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Mon Apr 03 16:59:09 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Apr 03 16:59:09 2023"
      },
      "message": "Bump dart-lang/setup-dart from 1.4.0 to 1.5.0 (#725)\n\nBumps [dart-lang/setup-dart](https://github.com/dart-lang/setup-dart) from 1.4.0 to 1.5.0.\r\n- [Release notes](https://github.com/dart-lang/setup-dart/releases)\r\n- [Changelog](https://github.com/dart-lang/setup-dart/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/dart-lang/setup-dart/compare/a57a6c04cf7d4840e88432aad6281d1e125f0d46...d6a63dab3335f427404425de0fbfed4686d93c4f)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: dart-lang/setup-dart\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "c6c5f0da484c932ea6f999d70229a70af943bd6a",
      "tree": "315f116515c32e486a6791ce5b5bddab814e8c42",
      "parents": [
        "ffab1ae61e27c0d952f666873f829590ad900c7d"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Feb 01 22:52:18 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 01 22:52:18 2023"
      },
      "message": "Bump dart-lang/setup-dart from 1.3 to 1.4 (#722)\n\nBumps [dart-lang/setup-dart](https://github.com/dart-lang/setup-dart) from 1.3 to 1.4.\r\n- [Release notes](https://github.com/dart-lang/setup-dart/releases)\r\n- [Changelog](https://github.com/dart-lang/setup-dart/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/dart-lang/setup-dart/compare/6a218f2413a3e78e9087f638a238f6b40893203d...a57a6c04cf7d4840e88432aad6281d1e125f0d46)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: dart-lang/setup-dart\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "ffab1ae61e27c0d952f666873f829590ad900c7d",
      "tree": "81b8fba9930a7973427a72f85b53e7502abd9d43",
      "parents": [
        "fbb3578e5f4e9402acbca2fb95431c63920817c4"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Wed Feb 01 22:43:42 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 01 22:43:42 2023"
      },
      "message": "Bump actions/checkout from 3.2.0 to 3.3.0 (#721)\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 3.2.0 to 3.3.0.\r\n- [Release notes](https://github.com/actions/checkout/releases)\r\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/checkout/compare/755da8c3cf115ac066823e79a1e1788f8940201b...ac593985615ec2ede58e132d2e21d2b1cbd6127c)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/checkout\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "fbb3578e5f4e9402acbca2fb95431c63920817c4",
      "tree": "38056128f5b76f3e3b0544284c306695519ca4b6",
      "parents": [
        "61db7f5bfaabd1df50bf14ed488a8b9b38919780"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Thu Jan 12 19:30:18 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 12 19:30:18 2023"
      },
      "message": "Eliminate most dartdoc warnings (#718)\n\nAlso cleaned up readme and changelog using a tool"
    },
    {
      "commit": "61db7f5bfaabd1df50bf14ed488a8b9b38919780",
      "tree": "d20a6debab90d13036727ce7fa4ef89a3f35e965",
      "parents": [
        "90b92bee895e507d435012356a8b5c5f17eafa52"
      ],
      "author": {
        "name": "dependabot[bot]",
        "email": "49699333+dependabot[bot]@users.noreply.github.com",
        "time": "Thu Jan 12 19:12:09 2023"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 12 19:12:09 2023"
      },
      "message": "Bump actions/checkout from 3.1.0 to 3.2.0 (#719)\n\nBumps [actions/checkout](https://github.com/actions/checkout) from 3.1.0 to 3.2.0.\r\n- [Release notes](https://github.com/actions/checkout/releases)\r\n- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)\r\n- [Commits](https://github.com/actions/checkout/compare/93ea575cb5d8a053eaa0ac8fa3b40d7e05a33cc8...755da8c3cf115ac066823e79a1e1788f8940201b)\r\n\r\n---\r\nupdated-dependencies:\r\n- dependency-name: actions/checkout\r\n  dependency-type: direct:production\r\n  update-type: version-update:semver-minor\r\n...\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\n\r\nSigned-off-by: dependabot[bot] \u003csupport@github.com\u003e\r\nCo-authored-by: dependabot[bot] \u003c49699333+dependabot[bot]@users.noreply.github.com\u003e"
    },
    {
      "commit": "90b92bee895e507d435012356a8b5c5f17eafa52",
      "tree": "fc7cca87c620e68a48b6f21f897f257d014b5a40",
      "parents": [
        "63296a00e2edce274df9bc34514c610c99060301"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Tue Dec 20 19:14:52 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 20 19:14:52 2022"
      },
      "message": "Un-deprecate Optional to fix Flutter things (#717)\n\nRelease v3.2.1"
    },
    {
      "commit": "63296a00e2edce274df9bc34514c610c99060301",
      "tree": "d3d7d24058440866c6ef0b857ecf51c3c48f1737",
      "parents": [
        "f68896fbed58fb621704458061f36d89f0eb1453"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Tue Dec 20 16:46:27 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Dec 20 16:46:27 2022"
      },
      "message": "Prepare to release v3.2.0 (#716)\n\n"
    },
    {
      "commit": "f68896fbed58fb621704458061f36d89f0eb1453",
      "tree": "67ea5392e9ea2537dc87e17daf68722bb3559c0b",
      "parents": [
        "83c1717d2bee2f23f55cccd015b9a481d6e6ee40"
      ],
      "author": {
        "name": "Lasse R.H. Nielsen",
        "email": "lrn@google.com",
        "time": "Fri Dec 09 17:16:24 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 09 17:16:24 2022"
      },
      "message": "Stop implementing deprecated `BidirectionalIterator`. (#714)\n\n"
    },
    {
      "commit": "83c1717d2bee2f23f55cccd015b9a481d6e6ee40",
      "tree": "516e034348d80b7bfeed6543be1388925894dab0",
      "parents": [
        "d0fe5a21e31db759c2bf3a5928c0d1f1d201315f"
      ],
      "author": {
        "name": "Maciej Korzeniewski",
        "email": "mck.korzeniewski@gmail.com",
        "time": "Thu Nov 17 18:43:03 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 17 18:43:03 2022"
      },
      "message": "docs: rename IsochronousStream to Metronome (#706)\n\n"
    },
    {
      "commit": "d0fe5a21e31db759c2bf3a5928c0d1f1d201315f",
      "tree": "e376932d426c7c6ca72561a9ef6076cfe1dbca4c",
      "parents": [
        "1fb9dfd47feff1872b5e6b657a6703aaba25080a"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Nov 16 21:55:50 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 16 21:55:50 2022"
      },
      "message": "Deprecate Optional (#672)\n\nWith the introduction of non-null by default in Dart SDK 2.12, existing\r\nusers should migrate to non-nullable types. This type will be removed in\r\nQuiver 4.0.0."
    },
    {
      "commit": "1fb9dfd47feff1872b5e6b657a6703aaba25080a",
      "tree": "4221be75b91bdac65264bf32b303d050b884b3ec",
      "parents": [
        "2f342a8c5ca34dd94dd07fea0417d104756d0f3b"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Wed Nov 16 17:17:40 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 16 17:17:40 2022"
      },
      "message": "Revert change to Optional (#712)\n\nBreaks too many things"
    },
    {
      "commit": "2f342a8c5ca34dd94dd07fea0417d104756d0f3b",
      "tree": "fca1ae6bfb6cb222bc30f32693bd9ac09102363d",
      "parents": [
        "79619bf4ef65977d744b85457eeab1bff6564944"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Wed Nov 16 03:38:22 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 16 03:38:22 2022"
      },
      "message": "wip (#711)\n\n"
    },
    {
      "commit": "79619bf4ef65977d744b85457eeab1bff6564944",
      "tree": "29a0706b7df7188d319f46af2f1f70ada80d93dc",
      "parents": [
        "85dbe1d48848877ef860975e446cc0eb1f2f0408"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Wed Nov 16 03:21:28 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 16 03:21:28 2022"
      },
      "message": "blast_repo fixes (#707)\n\nDependabot\r\nGitHub Action"
    },
    {
      "commit": "85dbe1d48848877ef860975e446cc0eb1f2f0408",
      "tree": "5707c7a4ce2fab879bd176441e8222f2fd3eb3ab",
      "parents": [
        "5dfa014ee69e97e6c030fac050f663a8b41b4506"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Wed Nov 16 03:21:08 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 16 03:21:08 2022"
      },
      "message": "chore: drop everything related to travis-CI (#709)\n\n"
    },
    {
      "commit": "5dfa014ee69e97e6c030fac050f663a8b41b4506",
      "tree": "7c65a1e86779a9381c401f8fe0f15aa19f2745a2",
      "parents": [
        "d9bf68e2e6d9c6b5d1bbbfb2e89e691833e6789f"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Tue Nov 15 00:27:51 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Nov 15 00:27:51 2022"
      },
      "message": "Update to latest lints, require Dart 2.17, fix deprecation (#708)\n\n* Update to latest lints, require Dart 2.17, fix deprecation\r\n* Drop private typedefs"
    },
    {
      "commit": "d9bf68e2e6d9c6b5d1bbbfb2e89e691833e6789f",
      "tree": "4526ca3c9b59401a8515e1e1a09f5c1695fbf860",
      "parents": [
        "a04512313efb34d2ae6a40b747f8bc34a475dec5"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Sep 07 21:58:57 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 07 21:58:57 2022"
      },
      "message": "Update all copyright header dates for consistency (#703)\n\nAs done with the Dart SDK and Flutter, this updates Quiver to set all\r\ncopyright headers to the earliest value for consistency. Any future\r\nfiles should also set their dates to 2013.\r\n\r\nThis also adds a NOTICE file for anyone who wants a single consistent\r\nplace to look up the copyright notice.\r\n\r\nIssue: https://github.com/google/quiver-dart/issues/702"
    },
    {
      "commit": "a04512313efb34d2ae6a40b747f8bc34a475dec5",
      "tree": "bb5a0514e0ad4d0260928b71ae7b4569e61eec9e",
      "parents": [
        "c1eba108a6f92f94a958bfe563dca677dc99051a"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Mon Jul 25 21:24:37 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jul 25 21:24:37 2022"
      },
      "message": "Remove deprecated experimental invariant_booleans lint rule (#701)\n\n"
    },
    {
      "commit": "c1eba108a6f92f94a958bfe563dca677dc99051a",
      "tree": "8a413780bdb6ed1fc93ba94a94389358bf17bb41",
      "parents": [
        "524f33ddaa416af6e616a2f86edac44a5647ceed"
      ],
      "author": {
        "name": "Lasse R.H. Nielsen",
        "email": "lrn@google.com",
        "time": "Sun Jun 26 04:52:22 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Jun 26 04:52:22 2022"
      },
      "message": "Stop exposing `BidirectionalIterator`. (#700)\n\nI\u0027m planning to deprecate `BidirectionalIterator`,\r\nhopefully to remove it in Dart 3.0.\r\n\r\nThe `TreeSet` exposes a bidirectional iterator.\r\nBy changing it to making the `_AvlTreeIterator`\r\npublic as `TreeIterator`, the API no longer depends\r\non `BidirectionalIterator`.\r\n\r\nThe `_AvlTreeIterator` exposed some of its state\r\nas public getters. I have made some of them private,\r\nand kept others as public.\r\nIf they weren\u0027t intended to be public,\r\nwe can make them all private.\r\n\r\nCode which uses `.iterator` with inference will now\r\ninfer `TreeIterator` instead, with (at least) the same API.\r\nCode which uses `BidirectionalIterator` will still work,\r\nbecause the `TreeIterator` still implements the interface,\r\nbut will get their own deprecation warnings so they can\r\nchange it to `TreeIterator`."
    },
    {
      "commit": "524f33ddaa416af6e616a2f86edac44a5647ceed",
      "tree": "9544ed23869d2e94a9df8e3227aaf6cba9088065",
      "parents": [
        "c855b10d18d1aa6cb568657b065d49226882c9e1"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue May 03 23:01:56 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 03 23:01:56 2022"
      },
      "message": "Update build, pub badges in README.md (#698)\n\nUpdates the Build Status badge to point to GitHub Actions, and adds a\r\npub package badge."
    },
    {
      "commit": "c855b10d18d1aa6cb568657b065d49226882c9e1",
      "tree": "157b65432721bd7d8eac058bffe978466fc16671",
      "parents": [
        "c65181d8e00e0c296cd99cd878417a1278a07346"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue May 03 20:28:01 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 03 20:28:01 2022"
      },
      "message": "Version 3.1.0 (#697)\n\n"
    },
    {
      "commit": "c65181d8e00e0c296cd99cd878417a1278a07346",
      "tree": "2071d6481f05e0a97505ac6334fd41466f1ab7d6",
      "parents": [
        "623b47b5f8f4115c6abb48dea71313e914ffb7b7"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue May 03 20:14:39 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 03 20:14:39 2022"
      },
      "message": "Make Cache.get ifAbsent param nullable (#696)\n\nDuring non-null by default migration, Cache.get\u0027s ifAbsent parameter was\r\nincorrectly marked non-nullable. The parameter is optional and the doc\r\ncomment clearly states that ifAbsent is not required.\r\n\r\nReported internally at Google by Yutong Jin.\r\n\r\nIssue: https://github.com/google/quiver-dart/issues/693"
    },
    {
      "commit": "623b47b5f8f4115c6abb48dea71313e914ffb7b7",
      "tree": "f78ffc27f9c9fa7492fb7f3c2fd191896b5cc850",
      "parents": [
        "10e10b4b22982c136b83b529fd2d8d08fe0331f6"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue May 03 19:06:41 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 03 19:06:41 2022"
      },
      "message": "Re-enable CI using GitHub Actions (#694)\n\nTravis CI was disabled for all Google projects due to permissioning\r\nrequirement changes in the move from travis-ci.org to travis-ci.com.\r\nThis re-enables VM-based testing for Quiver.\r\n\r\nWe\u0027ll still want to re-enable web testing under both dart2js and\r\ndartdevc in the future, but this is a good start.\r\n\r\nIssue: https://github.com/google/quiver-dart/issues/613"
    },
    {
      "commit": "10e10b4b22982c136b83b529fd2d8d08fe0331f6",
      "tree": "4b4f05ed46b476759082041417f9c9b04e64a990",
      "parents": [
        "057084e16983bb4a73732e287401d24352876fa9"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue May 03 18:53:12 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue May 03 18:53:12 2022"
      },
      "message": "Remove deprecated non-nullable analysis option (#695)\n\nThis is now the default and no longer required."
    },
    {
      "commit": "057084e16983bb4a73732e287401d24352876fa9",
      "tree": "de97671df58875e1e498f05d43f5868c7c3acf82",
      "parents": [
        "eb643e6b59be8e82057a3c0c566157a93d8a6931"
      ],
      "author": {
        "name": "James D. Lin",
        "email": "jamesderlin@users.noreply.github.com",
        "time": "Wed Mar 09 17:40:13 2022"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Mar 09 17:40:13 2022"
      },
      "message": "Remove broken references to the defunct mirrors library (#692)\n\n"
    },
    {
      "commit": "eb643e6b59be8e82057a3c0c566157a93d8a6931",
      "tree": "df0c4bc5ad2ab0e946136017b34bb382bf9a97ee",
      "parents": [
        "93a5ef75b926d9e7a2cb9a03914f1eba1cb6d0ac"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Oct 15 04:59:56 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Oct 15 04:59:56 2021"
      },
      "message": "Version 3.0.1+1 (#689)\n\nThis version adds a minor documentation change.\r\n\r\nWith non-null by default implemented as of Dart 2.12, developers should\r\navoid adding more uses of the Optional type in there code, and ideally\r\nstart migrating existing uses to nullable types.\r\n\r\nNot marking this as deprecated yet, since not all users have migrated\r\ntheir codebases to NNBD, and migration off this type has some tricky\r\nedge-cases."
    },
    {
      "commit": "93a5ef75b926d9e7a2cb9a03914f1eba1cb6d0ac",
      "tree": "2652c0a59771fee7363a45252208c6e9b05a9ab8",
      "parents": [
        "f1c1044744da3a307d08e7b18dda36b5dd6b1276"
      ],
      "author": {
        "name": "Konstantin Scheglov",
        "email": "scheglov@google.com",
        "time": "Wed Sep 01 20:22:35 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 01 20:22:35 2021"
      },
      "message": "Fix pre-existing HintCode.UNNECESSARY_TYPE_CHECK_TRUE (#686)\n\n"
    },
    {
      "commit": "f1c1044744da3a307d08e7b18dda36b5dd6b1276",
      "tree": "280bc82c7460c5286d64023cdae99a0df1202d67",
      "parents": [
        "ef6b9da3ef0aac26a92dcc1f971d9fe77ee51960"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Jul 20 07:07:12 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jul 20 07:07:12 2021"
      },
      "message": "Migrate from dartfmt to dart format (#685)\n\nIn Dart SDK 2.10, the `dart format` command was added as the\r\nrecommended way to run Dart source code formatting.\r\n\r\nAlso reformats files with diffs under the latest version of the\r\nformatter."
    },
    {
      "commit": "ef6b9da3ef0aac26a92dcc1f971d9fe77ee51960",
      "tree": "8afcf704ed16191eb8736317a3b85a27935f10d1",
      "parents": [
        "fb182ee8d79b0c1ba205a450ecdbb31a3e109b5b"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Jun 15 21:55:10 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Jun 15 21:55:10 2021"
      },
      "message": "Migrate from dartanalyzer to dart analyze (#684)\n\nIn Dart SDK 2.10, the `dart analyze` command was added as the\r\nrecommended way to run Dart source code analysis."
    },
    {
      "commit": "fb182ee8d79b0c1ba205a450ecdbb31a3e109b5b",
      "tree": "e029c5376b2df347db6438061aa7f9746b7e8457",
      "parents": [
        "d5e5ddc5d4476cc35f3de9afc49925a7140b88a2"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Jun 14 19:03:36 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Jun 14 19:03:36 2021"
      },
      "message": "Update Iterable.forEach parameter name (#683)\n\nIn Dart SDK 2.14, the parameter name for Iterable.forEach changed from\r\n`f` to `action`. This updates Quiver to match."
    },
    {
      "commit": "d5e5ddc5d4476cc35f3de9afc49925a7140b88a2",
      "tree": "c6f9ef90f758358819a8411b801d2aaaf1606201",
      "parents": [
        "c7f8499a6319cf3168b38cb6b3477d0406169669"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Apr 06 16:29:24 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 06 16:29:24 2021"
      },
      "message": "Version 3.0.1 (#681)\n\n"
    },
    {
      "commit": "c7f8499a6319cf3168b38cb6b3477d0406169669",
      "tree": "e1d99f35f3f309a9a794c7464115abc2a78545f4",
      "parents": [
        "370a495e37dc10b4c6514a9822574ff5041d389b"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Apr 06 15:33:10 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Apr 06 15:33:10 2021"
      },
      "message": "Eliminate unnecessary null check in partition (#680)\n\nNow that NNDB migration is complete, these checks are no longer\r\nnecessary. Users who explicitly opt out of null safety will get null if\r\nthey call `current` prior to `moveNext`."
    },
    {
      "commit": "370a495e37dc10b4c6514a9822574ff5041d389b",
      "tree": "37c262f5c34c89a93e53c5fd8896a099d5472b28",
      "parents": [
        "a837ed13026cdeec95d4d935f3fe95fd55556183"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Feb 23 00:19:22 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Tue Feb 23 00:19:22 2021"
      },
      "message": "Fix error when AVLTree root element is removed (#678)\n\nWhen removing the root element of an AVLTree, the parent is null. The\r\ngetter applies the ! operator to node._parent. Instead we reference the\r\nmember directly."
    },
    {
      "commit": "a837ed13026cdeec95d4d935f3fe95fd55556183",
      "tree": "2ac01a024359a85add775e6f77a77c125f6687cb",
      "parents": [
        "6bb9409719ed6ed2583be2f8c19bb4b8805f146e"
      ],
      "author": {
        "name": "Kevin Moore",
        "email": "kevmoo@users.noreply.github.com",
        "time": "Wed Feb 17 17:58:41 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Feb 17 17:58:41 2021"
      },
      "message": "Prepare for a stable, null-safe v3 release (#677)\n\n* Merged prerelease entries in CHANGELOG\r\n* Bumped dependencies to stable versions\r\n* LOTS of misc spelling fixes"
    },
    {
      "commit": "6bb9409719ed6ed2583be2f8c19bb4b8805f146e",
      "tree": "5553069f09f962c509626dafe2ec56244d98f489",
      "parents": [
        "778805a95e9c2e595f7d9fb973d2bb177f354e7b"
      ],
      "author": {
        "name": "Sam Rawlins",
        "email": "srawlins@google.com",
        "time": "Thu Jan 21 17:13:16 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Jan 21 17:13:16 2021"
      },
      "message": "Remove unused dart:async imports (#676)\n\n"
    },
    {
      "commit": "778805a95e9c2e595f7d9fb973d2bb177f354e7b",
      "tree": "4f51bf8f5dc00098442692301e62cec5a239cedf",
      "parents": [
        "0f151c889b59a134b7f9e6e607c48b2c208eae14"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "cbracken@google.com",
        "time": "Fri Jan 15 19:08:05 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Jan 15 19:08:05 2021"
      },
      "message": "Version 3.0.0-nullsafety.3 (#675)\n\n"
    },
    {
      "commit": "0f151c889b59a134b7f9e6e607c48b2c208eae14",
      "tree": "0be4f08d33c8468d169da9a315b5b9fb56f46205",
      "parents": [
        "169d026011fbcac079f89a0a536981d5d9dc252f"
      ],
      "author": {
        "name": "John McDole",
        "email": "codefu@google.com",
        "time": "Wed Jan 13 17:10:22 2021"
      },
      "committer": {
        "name": "John McDole",
        "email": "codefu@google.com",
        "time": "Wed Jan 13 17:10:22 2021"
      },
      "message": "Fix #674 - Treeset.first/last failing\n\nLooks like a simple typo while converting.\n"
    },
    {
      "commit": "169d026011fbcac079f89a0a536981d5d9dc252f",
      "tree": "a4b354f20cbaaa04ee7ba45f9506635683388441",
      "parents": [
        "742831a625e1b42aaf687089fcebc7f3aac9fdb2"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 19:57:18 2020"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Nov 06 19:57:18 2020"
      },
      "message": "Eliminate dependency on package:meta (#671)\n\nThis eliminates the dependency on package:meta, which was previously\r\nonly used for @required and @visibleForTesting. The use of @required was\r\neliminated with the transition to non-null by default.\r\n@visibleForTesting was eliminated by replacing AvlTree.getNode with\r\ndebugGetNode(AvlTree, object) and hiding it and AvlNode in the top-level\r\nre-export in the collection library."
    },
    {
      "commit": "742831a625e1b42aaf687089fcebc7f3aac9fdb2",
      "tree": "60228fc80085c8d334526926a9ff581ae47db52c",
      "parents": [
        "d6000e20c731ad6e149b741b91a9effe01873941"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 01:38:12 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 02:25:37 2020"
      },
      "message": "Version 3.0.0-nullsafety.2\n\nBump minimum SDK constraint to 2.12.0-0 and dependencies to versions\nthat have also had their minimum SDK constraint bumped to 2.12.0-0. This\nprevents pub\u0027s analysis/scoring from emitting errors about null-safety.\n"
    },
    {
      "commit": "d6000e20c731ad6e149b741b91a9effe01873941",
      "tree": "a6f87e3df27a01eb6140229df5a153e22e231be6",
      "parents": [
        "3540557a62b431e66b9e269994ac980f6f14f979"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 01:38:12 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 02:07:48 2020"
      },
      "message": "Version 3.0.0-nullsafety.2\n\nBump minimum SDK constraint to 2.12.0-0 and dependencies to versions\nthat have also had their minimum SDK constraint bumped to 2.12.0-0. This\nprevents pub\u0027s analysis/scoring from emitting errors about null-safety.\n"
    },
    {
      "commit": "3540557a62b431e66b9e269994ac980f6f14f979",
      "tree": "645722c9e094e0d68623a246c7bd124706dd0b6b",
      "parents": [
        "137009e73f61133a07c5f8f0243d931840472828"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 01:29:49 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 01:32:20 2020"
      },
      "message": "Version 3.0.0-nullsafety.1\n"
    },
    {
      "commit": "137009e73f61133a07c5f8f0243d931840472828",
      "tree": "c8aafbb8549c371ce8a4999872775ba40c7cdef6",
      "parents": [
        "1b45d3b0f527598aef6d1a332bc97729e9ecec6b"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:59:31 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:59:31 2020"
      },
      "message": "Version 3.0.0-nullsafety\n"
    },
    {
      "commit": "1b45d3b0f527598aef6d1a332bc97729e9ecec6b",
      "tree": "6d3e4b18eb2501ad41070cb28df1c682c1124de6",
      "parents": [
        "32a920b4fbd2ae89b7c8e1c0cace4bc71a7eba7d"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Nov 05 20:07:09 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:08 2020"
      },
      "message": "Allow null args to lists/maps/setsEqual (#668)\n\nThis updates the parameters to listsEqual, mapsEqual and setsEqual in\r\nthe collection utils library to nullable types.\r\n\r\nThis avoids forcing callers to manually check for null, is a bit more in\r\nline with Object.equals() which handles the null check in the runtime,\r\nand avoids a breaking change to users who have not yet transitioned to\r\nnon-null by default."
    },
    {
      "commit": "32a920b4fbd2ae89b7c8e1c0cace4bc71a7eba7d",
      "tree": "0f4954e50079abc4fb3bc2ddae1a60f4682c82dd",
      "parents": [
        "23e3f3ecc3e409fee2eb1052e0c407f091dea428"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Nov 05 19:20:40 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:08 2020"
      },
      "message": "Revert Optional\u003cT extends Object\u003e to Optional\u003cT\u003e (#667)\n\nOptional is intended as a substitute for non-nullable values. Ideally,\r\nit should have a generic type of `T extends Object` in order to prevent\r\nnon-sensical declarations like `Optional\u003cFoo?\u003e`. Such declarations are\r\nunlikely to happen intentionally, but one could imagine the case of an\r\nOptional\u003cT\u003e used in another generic class, where T is a nullable type.\r\n\r\nIn #652, we prevented such uses by declaring Optional as\r\nOptional\u003cT extends Object\u003e.\r\n\r\nThis turns out to be a significant breaking change, since previously, T\r\nimplicitly extended `dynamic` and therefore checks like the following\r\ndidn\u0027t produce any analysis errors:\r\n\r\n    if (obj is Optional) {\r\n      return obj.value.someMethod();\r\n    }\r\n\r\nwhere `someMethod` is a method defined on `T`.\r\n\r\nA survey of the Google codebase suggests this would be a fairly\r\nextensive breaking change. Given that Optional makes little sense once\r\nnull-safety is enabled in the language by default, the simpler change\r\nmay simply be to leave as-is and deprecate the class once null-safety\r\nlands in the language.\r\n\r\nIt appears that there are no checks on the return type of `transform`,\r\nand this seems significantly unlikely, therefore we leave that change in\r\nplace.\r\n\r\nThis partially reverts 28301f9551e87bd3fbc3c17820fdb4dba12619b8.\r\n\r\nRelated: https://github.com/google/quiver-dart/issues/666"
    },
    {
      "commit": "23e3f3ecc3e409fee2eb1052e0c407f091dea428",
      "tree": "e1bb8392feae9d24febbf0b148e1fc83e9d917c4",
      "parents": [
        "0c381a7f4f1c7c82ade89ce2f04fc7c01f31a4fa"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 18:31:07 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:08 2020"
      },
      "message": "Re-enable dartfmt post null-safety migration (#664)\n\nThis had been disabled to reduce churn while we added migration hint\r\ncomments prior to applying them."
    },
    {
      "commit": "0c381a7f4f1c7c82ade89ce2f04fc7c01f31a4fa",
      "tree": "3709b7f2bfcbf41c9892df31754912cf4a1ade9b",
      "parents": [
        "63a6adc47af54127b0dbb0c29b747a93cd2413f4"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 18:29:42 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:08 2020"
      },
      "message": "Remove remaining null-safety opt-out comments (#663)\n\n"
    },
    {
      "commit": "63a6adc47af54127b0dbb0c29b747a93cd2413f4",
      "tree": "2f41882b10931dde779cdc9990e0f34af5a97910",
      "parents": [
        "89125a5ac8112f3803307dd11eacd8f64b862131"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 18:09:16 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:08 2020"
      },
      "message": "Migrate collection/multimap to non-null by default (#655)\n\n"
    },
    {
      "commit": "89125a5ac8112f3803307dd11eacd8f64b862131",
      "tree": "4bb6742122245b261adc9766ee713488a4d9ee7f",
      "parents": [
        "b84b674312a09ab50c6b657dd6c51fba50200f68"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 18:09:06 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate collection/treeset to non-null by default (#662)\n\n"
    },
    {
      "commit": "b84b674312a09ab50c6b657dd6c51fba50200f68",
      "tree": "bbc05a99e2a191ef13de6aa8a22b716eecaa274f",
      "parents": [
        "84c19726df657324070e65bc2538bfdfa99a0248"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 02:09:20 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate async/stream_buffer to non-null by default (#659)\n\n"
    },
    {
      "commit": "84c19726df657324070e65bc2538bfdfa99a0248",
      "tree": "f09d892cfd8324e93aa10523fcec506d8a553fd6",
      "parents": [
        "dd883f3e1baab70ebaac3cbe8b6a23be4bebd124"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 02:08:40 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate cache library to non-null by default (#654)\n\n"
    },
    {
      "commit": "dd883f3e1baab70ebaac3cbe8b6a23be4bebd124",
      "tree": "a8e5cc2b49d7dd6836eaf8dd3a7f21470b7329fc",
      "parents": [
        "a1db0d13d200955d6d12adc308f46de3bd64afa8"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 02:08:22 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate collection/lru_map to non-null by default (#651)\n\n"
    },
    {
      "commit": "a1db0d13d200955d6d12adc308f46de3bd64afa8",
      "tree": "f2d068df74abfae72b94b23e4d70b0b97a476578",
      "parents": [
        "2ce4b102a94ddbb421c4bc442dbcd45da39c6c0d"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 01:57:25 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate collection/bimap to non-null by default (#650)\n\n"
    },
    {
      "commit": "2ce4b102a94ddbb421c4bc442dbcd45da39c6c0d",
      "tree": "ef4dc483ca581205c94badf1767b8185faca9b7d",
      "parents": [
        "3a93518a407928ef320eee253b22c33279d8d052"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Tue Nov 03 01:21:57 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate async/stream_router to non-null by default (#660)\n\n"
    },
    {
      "commit": "3a93518a407928ef320eee253b22c33279d8d052",
      "tree": "7797d9d12d5d403d415fed3d7cf0b352e18031f9",
      "parents": [
        "a161718ce08507047a226af8db16b8a2969d06f5"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Nov 02 20:09:43 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate async/metronome to non-null by default (#661)\n\n"
    },
    {
      "commit": "a161718ce08507047a226af8db16b8a2969d06f5",
      "tree": "b9c84a30506b32080f5b0ce336c13426013b57ac",
      "parents": [
        "c0a53d2d58ed4cd5c76ae26856fe0177e6d5a670"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Nov 02 20:09:19 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migreate async/iteration to non-null by default (#658)\n"
    },
    {
      "commit": "c0a53d2d58ed4cd5c76ae26856fe0177e6d5a670",
      "tree": "79ecbdc2a1c23553688e613569cf23706c025c15",
      "parents": [
        "0aac815b33393d36f55a4e018effb7d4c37918d7"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Nov 02 20:08:02 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Disallow nullable T in Optional\u003cT\u003e (#652)\n\nThe entire point of Optional is to write null-safe code. This disallows\r\ncreation of Optionals of nullable types."
    },
    {
      "commit": "0aac815b33393d36f55a4e018effb7d4c37918d7",
      "tree": "5f19fdc89302ae457f7c3e1a419cff3da16623be",
      "parents": [
        "c8827f2852f30046ae4704d829bda0e6e3bc3e7e"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Nov 02 17:38:34 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate async/future_stream to non-null by default (#657)\n"
    },
    {
      "commit": "c8827f2852f30046ae4704d829bda0e6e3bc3e7e",
      "tree": "974bb405252d80bfed9c34517cc958aa263e87ae",
      "parents": [
        "339321abc49c76adb9ed3c531d032b13cd1f1db1"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Nov 02 16:58:41 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Loosen max SDK constraint to 2.12.0\n"
    },
    {
      "commit": "339321abc49c76adb9ed3c531d032b13cd1f1db1",
      "tree": "170ba8b3c4d9d7f95ce3d0b5773bba1c70f7579b",
      "parents": [
        "82d5e81ff0db8931d2535b56b3b93315e0e51511"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Nov 02 16:52:01 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate countdown_timer to non-null by default (#656)\n\n"
    },
    {
      "commit": "82d5e81ff0db8931d2535b56b3b93315e0e51511",
      "tree": "6ff7f34c3b35a480bba8ab4c87d9bc54634064f9",
      "parents": [
        "73507b7ccd233f34437ebd3ff0279c6861e35665"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Oct 30 21:59:36 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Migrate collections/utils to non-null by default (#649)\n\n"
    },
    {
      "commit": "73507b7ccd233f34437ebd3ff0279c6861e35665",
      "tree": "cb55a5f581e8153997b0ac8310240094bff6e638",
      "parents": [
        "fb46de28fe38190d548550253ec9ad210b11656c"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Oct 30 21:27:12 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Extract utils libraries for core, collection (#648)\n\nThis avoids mixing implementation into umbrella libraries."
    },
    {
      "commit": "fb46de28fe38190d548550253ec9ad210b11656c",
      "tree": "a29965f612da91db4d42de6a2facbdac95af7adb",
      "parents": [
        "d65711322ec5dcb60bb599fee13a5d8239abbadc"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Oct 30 21:02:21 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Apply non-null migration for hinted files (#647)\n\nThis applies non-null by default (NNBD) migration for files with hints.\r\nAll remaining non-migrated files are marked // @dart \u003d 2.9."
    },
    {
      "commit": "d65711322ec5dcb60bb599fee13a5d8239abbadc",
      "tree": "b0423dfc513f433090187905103449f316e7b131",
      "parents": [
        "2f0c64763abdbe14438ceaf290fd7ba721db3c62"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Oct 30 18:56:38 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:07 2020"
      },
      "message": "Add @dart\u003d2.9 tags to net-yet-migrated files (#646)\n\nApplies // @dart \u003d 2.9 comments to any files that have not yet had\nnon-null by default migration hints added.\n"
    },
    {
      "commit": "2f0c64763abdbe14438ceaf290fd7ba721db3c62",
      "tree": "caaad0f770ab998560616951f5270610ee76f07f",
      "parents": [
        "1b19699289253faf78159195c331dc056cfd6f04"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Oct 30 18:56:32 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Import only what\u0027s necessary in tests (#645)\n\nDuring migrations that affect the type system, piecewise migration is\ncurrently made difficult by importing umbrella imports such as\nquiver/async.dart. Instead, tests now import only the exact\nsub-libraries they depend on.\n"
    },
    {
      "commit": "1b19699289253faf78159195c331dc056cfd6f04",
      "tree": "df81d1ef2b69b121bd97fce5d68232622ee1686d",
      "parents": [
        "0c7d4e44ff6514d5b158c0b2186c733be0f5675b"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Oct 30 18:25:55 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add Nullability hints to async/concat (#644)\n\nApplies nullability hits for NNBD migration to async/concat."
    },
    {
      "commit": "0c7d4e44ff6514d5b158c0b2186c733be0f5675b",
      "tree": "4810dd6a90fc2dbd45ad982fa8812187d472eb0c",
      "parents": [
        "271132a0a5992bc4af59b1d98e8fcb3e78e7ec3d"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Oct 29 23:34:41 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add nullability hints to iterables (#643)\n\nThis applies nullability hints for NNBD migration to the iterables\r\nlibrary."
    },
    {
      "commit": "271132a0a5992bc4af59b1d98e8fcb3e78e7ec3d",
      "tree": "f072e81b2c172c9c5869bb33e09c851e48c930aa",
      "parents": [
        "53a70f5218e29a1a9ff013d40b771c4ef05809f9"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Oct 29 20:15:53 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add nullability hints to testing library (#642)\n\nThis applies nullability hints for NNBD migration to the testing async,\r\nequality, and time libraries."
    },
    {
      "commit": "53a70f5218e29a1a9ff013d40b771c4ef05809f9",
      "tree": "bcae9ae9bf8a890dda791347fda0da743aa95856",
      "parents": [
        "082b5eae96fed1a9e426ac7da013c339684efd30"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Oct 29 18:44:23 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add nullability hints to collection/delegates (#641)\n\nThis applies nullability hints for NNBD migration to the delegates\r\nlibraries under the broader collection library."
    },
    {
      "commit": "082b5eae96fed1a9e426ac7da013c339684efd30",
      "tree": "35649fbab96ed0703259c3183cea988650eb0a14",
      "parents": [
        "9fd1d32b42c029fe95f1d5c9b04067681e73fd45"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Oct 29 00:50:15 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add nullability hints to check library (#638)\n\nApplies nullability hits for NNBD migration to the check library."
    },
    {
      "commit": "9fd1d32b42c029fe95f1d5c9b04067681e73fd45",
      "tree": "60e59855e70f61e3df40f29a3ca51d1588664153",
      "parents": [
        "a96144ed808fbd4aed03225aff6ac8b3f9e9c4b7"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Oct 29 00:28:53 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add nullability hints to strings library (#640)\n\nThis applies nullability hints for NNBD migration to the strings\r\nlibrary."
    },
    {
      "commit": "a96144ed808fbd4aed03225aff6ac8b3f9e9c4b7",
      "tree": "267860ec053498d550dc9b7f4d0a97356f2b6f3f",
      "parents": [
        "376a13704df0551f3e351600fff322bad8598cc8"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Oct 29 00:24:57 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add nullability hints to pattern library (#639)\n\nThis applies nullability hints for NNBD migration to the pattern\r\nlibrary."
    },
    {
      "commit": "376a13704df0551f3e351600fff322bad8598cc8",
      "tree": "c40fc1162d6620123495aff512adc36fff159982",
      "parents": [
        "4008e53c3d12edb33df2b38a8796b042371a16e8"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Oct 28 21:58:17 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Add nullability hints to core library (#633)\n\nThis applies nullability hints for NNBD migration to the core library."
    },
    {
      "commit": "4008e53c3d12edb33df2b38a8796b042371a16e8",
      "tree": "df48dfef51101805d20d7c46634e85563f4ef41b",
      "parents": [
        "3095c257054e7b1f585f0766dde09217d62dce48"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Oct 28 18:42:07 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Disable dartfmt checks during NNBD migration (#635)\n\nDartfmt really wants to format dart migrate nullability hint comments.\r\nDisable the format check until we apply the migration hints."
    },
    {
      "commit": "3095c257054e7b1f585f0766dde09217d62dce48",
      "tree": "a60cebed1041d7b4987c817887ccbad0825575a5",
      "parents": [
        "e1449826f9f4eed9c145590cdedbb1fb7c343f0e"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Oct 26 22:45:18 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Enable strict linting during analysis (#632)\n\nAlso eliminates deprecation warnings for checkNotNull and firstNonNull\r\nin tests."
    },
    {
      "commit": "e1449826f9f4eed9c145590cdedbb1fb7c343f0e",
      "tree": "f0095badb65042403444f2951753a3ece509a857",
      "parents": [
        "aa192f54ec5f61c5136e719b1e384492aab0dbe4"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Oct 26 22:21:39 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:58:06 2020"
      },
      "message": "Delete deprecated IO, mirrors libraries (#631)\n\nThese were deprecated in 2.1.4 and slated for removal in 3.0.0.\n"
    },
    {
      "commit": "aa192f54ec5f61c5136e719b1e384492aab0dbe4",
      "tree": "329615687e36c96b8982c9500007359b00b039d7",
      "parents": [
        "9e7db044748706088abefac9dad87d04aee81390"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Sat Oct 24 20:09:02 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:57:56 2020"
      },
      "message": "Remove assertCheckedMode (#617)\n\nassertCheckedMode was deprecated in 2.1.2. Checked mode no longer exists\nin Dart 2.0 since the vast majority of what checked mode did is now done\nin the type system itself.\n"
    },
    {
      "commit": "9e7db044748706088abefac9dad87d04aee81390",
      "tree": "8d46cf100cc00640f8cf8c726b8433830848015e",
      "parents": [
        "19bb829a067ac5044f8635b012c561a10777dcd5"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Nov 05 23:58:28 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:57:14 2020"
      },
      "message": "Delete deprecated async/iteration library\n\ndoWhileAsync was deprecated in 2.1.1. forEachAsync, reduceAsync were\ndeprecated in 2.15.0. These functions were slated for removal in 3.0.0.\n"
    },
    {
      "commit": "19bb829a067ac5044f8635b012c561a10777dcd5",
      "tree": "d93c7d4c6e4e716d4ac6cb06d91bb36f6c733e6b",
      "parents": [
        "4fc696b5d33a69525471a6fe66fe7eb72a6c93fe"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Sat Oct 24 17:57:40 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:42:35 2020"
      },
      "message": "Deprecate checkNotNull and firstNonNull (#616)\n\nThis deprecates checkNotNull and firstNonNull and extracts null checks\nto ArgumentError.checkNotNull calls that we\u0027ll be able to remove after\nnon-null by default migration.\n"
    },
    {
      "commit": "4fc696b5d33a69525471a6fe66fe7eb72a6c93fe",
      "tree": "71d6f814f293c783608d2085b929977a8fc27c24",
      "parents": [
        "66f473cca1332496e34a783ba4527b04388fd561"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Sat Oct 24 17:54:19 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:42:23 2020"
      },
      "message": "Create 3.0.0-nullsafety branch\n\nThis bumps the minimum SDK constraint to 2.10.\n"
    },
    {
      "commit": "66f473cca1332496e34a783ba4527b04388fd561",
      "tree": "85b3a076a2a391f4b20d0c24b7f6ebd5f8234c3e",
      "parents": [
        "139d02e61aca39d16627292187ca69755f0864e7"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:36:13 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Fri Nov 06 00:36:13 2020"
      },
      "message": "Version 2.1.5\n"
    },
    {
      "commit": "139d02e61aca39d16627292187ca69755f0864e7",
      "tree": "442fa4c61f1c689b585a6e98d3adf3efc9fb89c3",
      "parents": [
        "6d9643fc3228280befd949a25cd049332be5974f"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Thu Nov 05 23:56:32 2020"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Nov 05 23:56:32 2020"
      },
      "message": "Deprecate forEachAsync, reduceAsync (#669)\n\nAlong with doWhile, these methods can be directly replaced with\r\nFuture.forEach or Future.doWhile from the Dart core libraries. Added\r\nmigration code samples to all three functions."
    },
    {
      "commit": "6d9643fc3228280befd949a25cd049332be5974f",
      "tree": "4066fe346d1d6dbcbb0652058d26e1ecd3c8e36f",
      "parents": [
        "ac5764fc18a894756160b5acbffd26b57e81132e"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Wed Oct 28 22:26:33 2020"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Oct 28 22:26:33 2020"
      },
      "message": "Ignore vim swap files (#637)\n\n"
    },
    {
      "commit": "ac5764fc18a894756160b5acbffd26b57e81132e",
      "tree": "360f3a93af9be15ce459838d442d3f039c15a2f6",
      "parents": [
        "68a05ff9ffe86c9ee71d7a7d836765469d9211f3"
      ],
      "author": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Oct 26 21:46:10 2020"
      },
      "committer": {
        "name": "Chris Bracken",
        "email": "chris@bracken.jp",
        "time": "Mon Oct 26 21:47:59 2020"
      },
      "message": "Version 2.1.4+1\n"
    }
  ],
  "next": "68a05ff9ffe86c9ee71d7a7d836765469d9211f3"
}
