)]}'
{
  "log": [
    {
      "commit": "9a2d5863eb21957767dbc826b481080c08736590",
      "tree": "eab484cd6ec08835e1627294456bb1b388f56ab4",
      "parents": [
        "de4306bfdaf6990ed31c41157d9d6fdc066a03d4",
        "893ca6bdb09fe0483164f8d55ce2258a43e479e1"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Jul 21 10:05:19 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Jul 21 10:05:19 2026"
      },
      "message": "Merge request !1455 from \u0027fix/inject-assistance-typo\u0027\n\nmm-shared-qmi: fix error message for xtra data injection timeout\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1455"
    },
    {
      "commit": "893ca6bdb09fe0483164f8d55ce2258a43e479e1",
      "tree": "eab484cd6ec08835e1627294456bb1b388f56ab4",
      "parents": [
        "de4306bfdaf6990ed31c41157d9d6fdc066a03d4"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Wed Jun 17 14:24:24 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Jul 21 10:02:41 2026"
      },
      "message": "mm-shared-qmi: fix error message for xtra data injection timeout\n\nMost likely it was copied from set supl server code.\n\nSigned-off-by: Andrey Skortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "de4306bfdaf6990ed31c41157d9d6fdc066a03d4",
      "tree": "f10a19070c5bb8424ad0f482e002f43f8d7fc4db",
      "parents": [
        "3568fb91a856d5e8de15dc7b2c2b80eecb46eb8e",
        "07146dfdfd4876da12fe3fb9a1ec20c77b5fcf34"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 20 18:19:15 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 20 18:19:15 2026"
      },
      "message": "Merge request !1471 from \u0027aleksander/small-fixes\u0027\n\nlibqcdm: minor fix in comment formatting\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1471"
    },
    {
      "commit": "07146dfdfd4876da12fe3fb9a1ec20c77b5fcf34",
      "tree": "f10a19070c5bb8424ad0f482e002f43f8d7fc4db",
      "parents": [
        "3568fb91a856d5e8de15dc7b2c2b80eecb46eb8e"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jul 20 18:07:05 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jul 20 18:07:20 2026"
      },
      "message": "libqcdm: minor fix in comment formatting\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "3568fb91a856d5e8de15dc7b2c2b80eecb46eb8e",
      "tree": "94da74de99428d38c0358f97bd16607cdd188d2f",
      "parents": [
        "8b77e712989cb62c1ce99d8663942a7b1f070c2c",
        "5bb7ece8b4cdeffc253520b817b1970f66573311"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 13 11:33:37 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 13 11:33:37 2026"
      },
      "message": "Merge request !1468 from \u0027aleksander/vreports3\u0027\n\ncinterion: fix heap double-free during GPS location disablement\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1468"
    },
    {
      "commit": "5bb7ece8b4cdeffc253520b817b1970f66573311",
      "tree": "94da74de99428d38c0358f97bd16607cdd188d2f",
      "parents": [
        "8b77e712989cb62c1ce99d8663942a7b1f070c2c"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jul 13 11:14:56 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jul 13 11:22:25 2026"
      },
      "message": "cinterion: fix heap double-free during GPS location disablement\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1077\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "8b77e712989cb62c1ce99d8663942a7b1f070c2c",
      "tree": "d6158bf7a3a4ca2fe238c99fbba496df0e7f583f",
      "parents": [
        "76ca77a8976c3904d4a839c3b340e11a77cb8167",
        "96cb590724db398505bd585b4fc88738676188a2"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 13 09:25:58 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 13 09:25:58 2026"
      },
      "message": "Merge request !1466 from \u0027aleksander/qcdm-vreports\u0027\n\nQCDM OOB read fixes\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1466"
    },
    {
      "commit": "96cb590724db398505bd585b4fc88738676188a2",
      "tree": "d6158bf7a3a4ca2fe238c99fbba496df0e7f583f",
      "parents": [
        "e9932bde9d39b3441f836560d9cbab87280590d9"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 21:02:46 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 13 08:59:28 2026"
      },
      "message": "libqcdm: fix heap out-of-bounds read in qcdm_log_item_evdo_pilot_sets_v2_new\n\nValidate the active, candidate, and remaining count fields in\nqcdm_log_item_evdo_pilot_sets_v2_new() before parsing the sets.\nEnsure the received buffer is large enough to contain the number of\nsets claimed by the counts.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1070\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "e9932bde9d39b3441f836560d9cbab87280590d9",
      "tree": "6da4b2b4a05e75bdade02582d8b7eeb3b507be40",
      "parents": [
        "76ca77a8976c3904d4a839c3b340e11a77cb8167"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 21:02:31 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Mon Jul 13 08:59:28 2026"
      },
      "message": "libqcdm: fix heap out-of-bounds read in qcdm_cmd_pilot_sets_result\n\nValidate the active, candidate, and neighbor count fields in\nqcdm_cmd_pilot_sets_result() before parsing the sets.\n\nEnsure that the sum of counts does not exceed the size of the static\nsets array in the response structure, and that the calculated size\nbased on the counts fits within the received buffer len.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1069\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "76ca77a8976c3904d4a839c3b340e11a77cb8167",
      "tree": "f2f5e714b9af3cbb8b5d2d171dc2fe63ea6f64ac",
      "parents": [
        "691bb4286dd21e37a4d68c6278fad9878f67c09a",
        "9642ed9ab5c8f60228b5ce96958b775eb1ecd3fc"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:02:49 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:02:49 2026"
      },
      "message": "Merge request !1465 from \u0027aleksander/vreports2\u0027\n\nVarious use-after-free fixes\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1465"
    },
    {
      "commit": "9642ed9ab5c8f60228b5ce96958b775eb1ecd3fc",
      "tree": "f2f5e714b9af3cbb8b5d2d171dc2fe63ea6f64ac",
      "parents": [
        "db72a182c108c91796ee10d323559309b1a06ef5"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 17:53:47 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:00:07 2026"
      },
      "message": "ublox: fix UAF in custom init ready URC handler\n\nClear the unsolicited message handler in ready_received() before\ncompleting the task. Otherwise, if the modem sends subsequent READY\nURCs, the handler would fire again using the freed GTask pointer.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1074\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "db72a182c108c91796ee10d323559309b1a06ef5",
      "tree": "b792ff99791c488befce3ea4f7c715f47c81d152",
      "parents": [
        "c3e7ffaae04ae6ff9e810093ca1c102a5572e6be"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 17:53:40 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:00:07 2026"
      },
      "message": "port-serial-at: fix crash if URC handler is cleared mid-dispatch\n\nUpdate parse_unsolicited() to re-check handler-\u003ecallback on each\niteration of the match dispatch loop. If a URC handler callback clears\nitself during dispatch (e.g. to stop listening), subsequent matches in\nthe same buffer would attempt to call the NULL pointer, causing a crash.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1074\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "c3e7ffaae04ae6ff9e810093ca1c102a5572e6be",
      "tree": "89f7b65aa5e13696351bcb758783cf32082b6c01",
      "parents": [
        "166d6c5bc8da3cc822bebb0e9bb6f24ea0a77aed"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 17:39:30 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:00:07 2026"
      },
      "message": "plugins: fix GError double-frees when returning errors from tasks\n\nUse g_steal_pointer() when passing g_autoptr(GError) to\ng_task_return_error() to prevent double-free by the automatic cleanup.\n\nGTask takes ownership of the passed GError. If we use g_autoptr(GError)\nlocally, it will also call g_error_free() when the function returns,\ncausing a double-free / heap corruption. Stealing the pointer clears the\nlocal variable and prevents the automatic cleanup.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1073\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "166d6c5bc8da3cc822bebb0e9bb6f24ea0a77aed",
      "tree": "9bb68863ffcd40f4cea3d21e62256fcd402e859d",
      "parents": [
        "46a91399ca18e27b26e6ffc35f0b4bdf5cb14802"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 17:08:11 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:00:07 2026"
      },
      "message": "quectel: fix UAF in RDY URC handler\n\nDefer the validity change (which triggers modem reprobe/removal) to an\nidle callback in rdy_handler().\n\nCalling mm_base_modem_set_valid(FALSE) synchronously from the URC\nhandler triggers the immediate destruction of the modem object while the\nserial port is still iterating the unsolicited message handlers. Deferring\nthe operation to an idle callback and taking a reference to the modem\nensures the modem object is kept alive until parse_unsolicited() has\nreturned.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1072\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "46a91399ca18e27b26e6ffc35f0b4bdf5cb14802",
      "tree": "1d7837e9e322a7815bdfca625bfed925fc160194",
      "parents": [
        "2b1aaca4a0f729f8a54f162ff9dc299c82162bed"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 17:00:13 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:00:07 2026"
      },
      "message": "shared-qmi: fix UAF on duplicate list-configs indications\n\nDisconnect the \u0027list-configs\u0027 indication handler immediately inside the\ncallback. If the modem sends a duplicate indication before the whole\nconfig load sequence completes, it could overwrite the stored\n\u0027get-config-info\u0027 signal handler ID, orphaning the old handler and\nleading to a Use-After-Free when the GTask is completed and the\norphaned handler eventually fires.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1071\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "2b1aaca4a0f729f8a54f162ff9dc299c82162bed",
      "tree": "d8d6979a18cbfcde5d121a1daf40132c3e46c72e",
      "parents": [
        "0280bbae3b37b36419a4894134c1c78127e049ab"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 16:49:37 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:00:07 2026"
      },
      "message": "ifaces: fix UAFs in signal handlers when hot-unplugging\n\nUse g_signal_connect_object() to connect to child list/object signals\nin the 3GPP, Messaging, Voice, and Cell Broadcast interfaces.\n\nPassing the raw D-Bus skeleton pointer as user_data to these signals\ncan lead to a Use-After-Free if the skeleton is disposed of (e.g. on\nhot-unplug) while the parent object or child list survives. By using\ng_signal_connect_object(), the signal handlers are automatically\ndisconnected when the D-Bus skeleton is destroyed.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1068\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "0280bbae3b37b36419a4894134c1c78127e049ab",
      "tree": "8187d71e88d4d5ed1a1488dff6103b91ccaecc26",
      "parents": [
        "691bb4286dd21e37a4d68c6278fad9878f67c09a"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Thu Jul 02 16:41:05 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 13:00:07 2026"
      },
      "message": "time: fix GSource leak and UAF in timezone poll\n\nIntroduce a timezone poll session ID to validate timezone load\nresults. This ensures that when a pending timezone load completes, we\ndiscard the result if a new poll session has been started (e.g. due to\nregistration state changes) or if polling has been stopped.\n\nThis prevents leaking GSource timeout sources and a subsequent\nUse-After-Free if the modem is hot-unplugged while a poll is pending.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1067\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "691bb4286dd21e37a4d68c6278fad9878f67c09a",
      "tree": "01f5144974243692eabd7bb66c78a3c00e00ee80",
      "parents": [
        "7088f5eaab2876689af9d758a443f99b76d9518e",
        "6b3682ed65244c6c23ca54ccca6d12b3dd2a8f77"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 12:35:08 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 12:35:08 2026"
      },
      "message": "Merge request !1464 from \u0027aleksander/vreports\u0027\n\nSanitize user inputs\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1464"
    },
    {
      "commit": "6b3682ed65244c6c23ca54ccca6d12b3dd2a8f77",
      "tree": "01f5144974243692eabd7bb66c78a3c00e00ee80",
      "parents": [
        "3291e7dd1c444065fb1bf9b6393c3451cd7d5370"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jun 29 17:01:28 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 11:43:48 2026"
      },
      "message": "voice: validate outgoing and deflect call numbers\n\nValidate the number parameter in Voice.CreateCall and Call.Deflect\nD-Bus methods to ensure they do not contain control characters or\nsemicolons. This prevents AT command injection when the number is\nlater spliced into ATD or +CTFR commands.\n\nIntroduce a common helper mm_utils_is_valid_dial_number() to validate\ndial numbers, and add unit tests for it.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1067\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "3291e7dd1c444065fb1bf9b6393c3451cd7d5370",
      "tree": "047320c64bb1d9e8a7bfda48669a230dbfbc57fa",
      "parents": [
        "50202ad76a3fbc150236552da610d77b9f47aa0c"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jun 29 17:21:11 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 11:43:48 2026"
      },
      "message": "sim: validate preferred networks operator codes\n\nValidate preferred network operator codes in the SIM D-Bus interface\nhandler to ensure they are numeric. This prevents injecting AT\ncommand delimiters (like CR) into this field, which is later spliced\ninto AT commands (+CPOL).\n\nThis change also plugs the network list leak, that was a problem on\nits own.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1065\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "50202ad76a3fbc150236552da610d77b9f47aa0c",
      "tree": "7182ba32eafe34a68c19f7cdc1f7bc5e0c7a4c58",
      "parents": [
        "dd54145d71d7b8d1092afc1821ca6a91764a0dff"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jun 29 17:21:10 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 11:43:48 2026"
      },
      "message": "sim: validate PIN and PUK codes\n\nValidate PIN and PUK codes in the SIM D-Bus interface handlers to\nensure they are numeric. This prevents injecting AT command\ndelimiters (like CR) into these fields, which are later spliced\ninto AT commands (+CPWD, +CLCK, +CPIN).\n\nIntroduce a common helper mm_utils_is_numeric() to check if a string\ncontains only digits, and add unit tests for it.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1065\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "dd54145d71d7b8d1092afc1821ca6a91764a0dff",
      "tree": "7c90756032f538cfeea5d1c9ed2dc24da70fa36b",
      "parents": [
        "a39d46c63737ae26e531df0e47b687b4f62a4379"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jun 29 16:54:46 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 11:43:48 2026"
      },
      "message": "ussd: quote USSD command to prevent AT injection\n\nWhen sending an unencoded USSD command, the user-supplied string was\nspliced directly into the +CUSD AT command. If the string contained\nCR or semicolons, it could lead to AT command injection.\n\nUse mm_at_quote_string() to properly quote and escape the USSD\ncommand before sending it.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1064\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "a39d46c63737ae26e531df0e47b687b4f62a4379",
      "tree": "c41b88131ff28ec7cf0aa005602c4b75d3eb37a4",
      "parents": [
        "1ee3a443b12703fd69d7ff5e93d4f330231303b0"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jun 29 16:54:27 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 11:43:48 2026"
      },
      "message": "location: validate SUPL host as FQDN or IP\n\nWhen parsing a SUPL address, if the host is not a valid IPv4 address,\nvalidate it as a FQDN (allowing only alphanumeric characters, dots,\nand hyphens). This prevents injecting AT command delimiters (like CR\nor semicolon) into the host string, which is later spliced into\nmodem-specific AT commands (+XLCSSLP).\n\nIntroduce a common helper mm_utils_is_valid_fqdn() to validate FQDNs,\nand add unit tests for it.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1063\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "1ee3a443b12703fd69d7ff5e93d4f330231303b0",
      "tree": "1b3ceb2a256ba3f52d678362b469db68af58a35c",
      "parents": [
        "7088f5eaab2876689af9d758a443f99b76d9518e"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Mon Jun 29 16:49:48 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Fri Jul 10 11:43:48 2026"
      },
      "message": "sms: sanitize decoded alphanumeric SMS addresses\n\nAlphanumeric SMS addresses decoded from GSM-7 could contain control\ncharacters (like CR/LF), which could lead to AT command injection\nif the address is later spliced into an AT+CMGS command during\nstored SMS send fallback.\n\nSanitize the decoded address by removing all control characters.\n\nIntroduce a common helper mm_utils_remove_control_characters() to\nremove control characters from a string in-place, and add unit\ntests for it.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/work_items/1062\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "7088f5eaab2876689af9d758a443f99b76d9518e",
      "tree": "8d260acfd24195f33624e98266c7ae9893b49ae7",
      "parents": [
        "d776ea38d29ca472a12323c1d45002ee19a66f57",
        "30b76ac3e2c0313aec887bfe0ea4b84f1ff592aa"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 21:11:14 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 21:11:14 2026"
      },
      "message": "Merge request !1457 from \u0027feat/update-man-mmcli\u0027\n\nman,mmcli: add information about \u0027any\u0027 modem index  and --location-monitor\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1457"
    },
    {
      "commit": "30b76ac3e2c0313aec887bfe0ea4b84f1ff592aa",
      "tree": "8d260acfd24195f33624e98266c7ae9893b49ae7",
      "parents": [
        "6bdee3cc68e13724a4ebc05a4259196493a0b901"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Sun Jun 21 15:47:06 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 04:09:23 2026"
      },
      "message": "man,mmcli: add description for --location-monitor\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "6bdee3cc68e13724a4ebc05a4259196493a0b901",
      "tree": "944e6bc7715a447dc88ddd03789f88266bbf6a3d",
      "parents": [
        "d776ea38d29ca472a12323c1d45002ee19a66f57"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Sun Jun 21 15:15:01 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 04:09:23 2026"
      },
      "message": "man,mmcli: add information about \u0027any\u0027 modem index for mmcli\n\nIt\u0027s possible to use special name \u0027any\u0027 as a modem index. It\u0027s\nespecially useful if system has only single modem.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "d776ea38d29ca472a12323c1d45002ee19a66f57",
      "tree": "516d319230736bbbdb041ce07a1185c2f33ca323",
      "parents": [
        "cc69ce8aafe1aee9bfa7fef2e923fbcf21510ddf",
        "913f05e0b419ddae31bcdf14b13ef6997565ac90"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:24:34 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:24:34 2026"
      },
      "message": "Merge request !1458 from \u0027feat/use-any-in-man-mmcli\u0027\n\nman,mmcli: use \u0027-m any\u0027 instead of \u0027-m 0\u0027 in examples\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1458"
    },
    {
      "commit": "913f05e0b419ddae31bcdf14b13ef6997565ac90",
      "tree": "516d319230736bbbdb041ce07a1185c2f33ca323",
      "parents": [
        "cc69ce8aafe1aee9bfa7fef2e923fbcf21510ddf"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Sun Jun 21 15:53:12 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:22:18 2026"
      },
      "message": "man,mmcli: use \u0027-m any\u0027 instead of \u0027-m 0\u0027 in examples\n\nMost users have only single modem. Commands with \u0027-m any\u0027 will work\neven if modem gets new index, because it\u0027s restarted or is replugged.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "cc69ce8aafe1aee9bfa7fef2e923fbcf21510ddf",
      "tree": "1316a825439c30b290c3009210fa7c4fe0c671e8",
      "parents": [
        "2b2560c567a222f63c1b16653c601d3301c12ed7",
        "2c3e8aeee0cc174aff7c1da38f5f99719e351175"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:11:44 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:11:44 2026"
      },
      "message": "Merge request !1444 from \u0027main\u0027\n\npo: add Serbian and Serbian Latin translations\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1444"
    },
    {
      "commit": "2c3e8aeee0cc174aff7c1da38f5f99719e351175",
      "tree": "1316a825439c30b290c3009210fa7c4fe0c671e8",
      "parents": [
        "2b2560c567a222f63c1b16653c601d3301c12ed7"
      ],
      "author": {
        "name": "Марко М. Костић (Marko M. Kostić)",
        "email": "marko.m.kostic@gmail.com",
        "time": "Sat Apr 11 12:58:14 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:04:01 2026"
      },
      "message": "po: add Serbian and Serbian Latin translations\n\nSigned-off-by: Marko Kostic \u003cmarko.m.kostic@gmail.com\u003e\n"
    },
    {
      "commit": "2b2560c567a222f63c1b16653c601d3301c12ed7",
      "tree": "be754763d2005609a00b17feeddd0fb321c6e959",
      "parents": [
        "98777e693fcda3ea89151f76f3b2033532a8ef7f",
        "0fbb9d05d21e6c10caff17f14401e4c96d2317be"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:01:25 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 03:01:25 2026"
      },
      "message": "Merge request !1462 from \u0027upd-pt_BR\u0027\n\npo: update Brazilian Portuguese translation\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1462"
    },
    {
      "commit": "0fbb9d05d21e6c10caff17f14401e4c96d2317be",
      "tree": "be754763d2005609a00b17feeddd0fb321c6e959",
      "parents": [
        "98777e693fcda3ea89151f76f3b2033532a8ef7f"
      ],
      "author": {
        "name": "Rafael Fontenelle",
        "email": "rafaelff@gnome.org",
        "time": "Sat Jun 27 01:40:18 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jul 09 02:59:02 2026"
      },
      "message": "po: update Brazilian Portuguese translation\n\nSigned-off-by: Rafael Fontenelle \u003crafaelff@gnome.org\u003e\n"
    },
    {
      "commit": "98777e693fcda3ea89151f76f3b2033532a8ef7f",
      "tree": "c56441c1d896e67faa8d5889adc3a6d455333907",
      "parents": [
        "545b1839348ccdac448bc5515aef8587d6d6b9cb",
        "97c24d68e2c9543b1f6a73f3e3c87a4ed4ec9463"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 16:11:51 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 16:11:51 2026"
      },
      "message": "Merge request !1461 from \u0027dp/fix-me310g1-bnd\u0027\n\nME910G1 and ME310M1 bands support and fixes\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1461"
    },
    {
      "commit": "97c24d68e2c9543b1f6a73f3e3c87a4ed4ec9463",
      "tree": "c56441c1d896e67faa8d5889adc3a6d455333907",
      "parents": [
        "3ca0cba220476db201e3a1ae3c6626857dbf0671"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Wed Jun 24 09:09:38 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 15:55:13 2026"
      },
      "message": "telit: add support for ME310M1\n\nME310M1 supports band format as ME910G1.\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "3ca0cba220476db201e3a1ae3c6626857dbf0671",
      "tree": "9c2ee9463b8022b07c46a5bd767c9febcf1ab30b",
      "parents": [
        "846048caa521ec353aeb3f05569945aa9731b53d"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Wed Jun 24 09:10:33 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 15:55:13 2026"
      },
      "message": "telit: add ME910G1 to models\n\nME910G1 supports decimal format for 4G bands and has also an empty\ntdscdma slot between 4G and 4G extended bands commands/responses.\n\nChange shared code and helpers to deal with these differences.\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "846048caa521ec353aeb3f05569945aa9731b53d",
      "tree": "1c4e12d7391defb790b56fdbece69bc9082bc549",
      "parents": [
        "069212e43e662aa3f20a8a6c99abdb88049b0ceb"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Wed Jun 24 09:10:26 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 15:55:13 2026"
      },
      "message": "telit: fix band setting function to properly support multi-tech modems\n\nThe assumption that if a modem supports a given access tech, the band\nsettings for that specific tech should be always given is wrong for\n4g, since the 4g bands can be disabled setting the value to 0 in\nmulti-tech modems like ME310M1.\n\nFor example, a 3g + 4g modem could have a setting in which all\nthe 4g bands are unset and only 3g bands are there: this scenario is\nnot supported by the current code, but it\u0027s legitimate.\n\nRemove this limitation and adapt the code to support bands setting\nfor multi-tech modems.\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "069212e43e662aa3f20a8a6c99abdb88049b0ceb",
      "tree": "3ca55b6815969b3773d6a2cde567e7843c1199f2",
      "parents": [
        "e292401beb7b04a053f88ac68a66ec660d9fe468"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Wed Jun 24 09:10:21 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 15:55:13 2026"
      },
      "message": "telit: add suffix HEX to 4G extended bands regex macro name\n\nIn preparation to support regex for 4G extended bands decimal values.\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "e292401beb7b04a053f88ac68a66ec660d9fe468",
      "tree": "c28b7753a526208998efb13c3f085c7912f369be",
      "parents": [
        "545b1839348ccdac448bc5515aef8587d6d6b9cb"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Wed Jun 24 09:10:15 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 15:55:13 2026"
      },
      "message": "telit: tests: fix LN920 current bands configuration\n\nFix LN920 current bands test configuration by setting\nmodem_has_hex_format_4g_bands to TRUE.\n\nThe current wrong setting does not cause the test failure since the modem\nsupports also extended settings and function telit_get_ext_4g_mm_bands\nconsiders both standard and extended bands as hex without checking\nthe flag, since decimal format for extended bands is not supported.\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "545b1839348ccdac448bc5515aef8587d6d6b9cb",
      "tree": "52a6be598d3ead4228f81948e0e27ee94cfa5c20",
      "parents": [
        "fcc9d19f5ed63eb6ca63e0f9af6d36d755c59a27",
        "3dbdc0704dc6207f5f092e7a0e555be6f2b096d6"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 15:50:42 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jul 07 15:50:42 2026"
      },
      "message": "Merge request !1467 from \u0027rm520-sahara-firehose\u0027\n\nquectel: add RM520N Sahara/Firehose support\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1467"
    },
    {
      "commit": "3dbdc0704dc6207f5f092e7a0e555be6f2b096d6",
      "tree": "52a6be598d3ead4228f81948e0e27ee94cfa5c20",
      "parents": [
        "fcc9d19f5ed63eb6ca63e0f9af6d36d755c59a27"
      ],
      "author": {
        "name": "Lukas Voegl",
        "email": "lvoegl@tdt.de",
        "time": "Fri Jul 03 12:12:48 2026"
      },
      "committer": {
        "name": "Lukas Voegl",
        "email": "lvoegl@tdt.de",
        "time": "Fri Jul 03 12:12:48 2026"
      },
      "message": "quectel: add RM520N Sahara/Firehose support\n\nSigned-off-by: Lukas Voegl \u003clvoegl@tdt.de\u003e\n"
    },
    {
      "commit": "fcc9d19f5ed63eb6ca63e0f9af6d36d755c59a27",
      "tree": "54a2f84e3a0b78bb34dfef5f269996d803383e74",
      "parents": [
        "42ca47472aad3cbe89c028ddf3e3362d7b4d51c0",
        "13a3ee81a3f0deb1d2a46845cfa278c9e4bdf67a"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Wed May 27 00:16:43 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Wed May 27 00:16:43 2026"
      },
      "message": "Merge request !1424 from \u0027fix/multiline-gsv\u0027\n\nlocation-gps-nmea: add complete sequence to traces at once\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1424"
    },
    {
      "commit": "13a3ee81a3f0deb1d2a46845cfa278c9e4bdf67a",
      "tree": "54a2f84e3a0b78bb34dfef5f269996d803383e74",
      "parents": [
        "c0d94970669f3855438b7db11551b563034f197a"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Tue May 26 20:53:24 2026"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Tue May 26 20:56:53 2026"
      },
      "message": "libmm-glib: add more tests for MMLocationGpsNmea\n\nExtra tests cover various corner cases.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "c0d94970669f3855438b7db11551b563034f197a",
      "tree": "81c38bc748bbfb1ca5064baa29bdf09bc3d9e4a4",
      "parents": [
        "f7da97989bcd85ec2c00d3621c47671deed17272"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 15:35:01 2026"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Tue May 26 20:56:53 2026"
      },
      "message": "libmm-glib: add tests for MMLocationGpsNmea\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "f7da97989bcd85ec2c00d3621c47671deed17272",
      "tree": "f071f8328fe52c55ad55bab5a730adba919c892a",
      "parents": [
        "38548fedd3e2e6509acf699845a91edb9d0d5935"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Sat Jan 10 21:17:53 2026"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Tue May 26 20:56:53 2026"
      },
      "message": "location-gps-nmea: add complete sequence to traces at once\n\nCurrently sequence messages are added to traces as they are\nreceived. Therefore content of traces depends at the time, when\nrequest is issued and data is reported. Sometimes not all sequence\ntraces are reported, because only first record was received yet and it\noverwrote previous full sequence trace.\n\nFor example,\n\n```\n$GPGSV,3,1,12,01,35,282,,02,68,264,,03,02,243,,08,35,206,,1*68\n$GPGSV,3,2,12,10,46,074,,14,16,312,,17,,,,22,16,327,,1*53\n$GPGSV,3,3,12,23,07,068,,24,15,030,,27,14,181,,32,51,120,,1*60\n\n$GLGSV,2,1,08,82,25,135,,76,11,029,,75,21,334,,69,11,201,,1*7A\n```\n\none GSV sentence is missing and second later full sequence is\nreported\n\n```\n$GPGSV,3,1,12,01,35,282,,02,68,264,,03,02,243,,08,35,206,,1*68\n$GPGSV,3,2,12,10,46,074,,14,16,312,,17,,,,22,16,327,,1*53\n$GPGSV,3,3,12,23,07,068,,24,15,030,,27,14,181,,32,51,120,,1*60\n\n$GLGSV,2,1,08,82,25,135,,76,11,029,,75,21,334,,69,11,201,,1*7A\n$GLGSV,2,2,08,84,40,306,,83,79,161,,67,56,056,,68,58,177,,1*7D\n```\n\nTherefore client software reports different number of visible\nsatellites.\n\nUsually sequence sentences are reported consequently in NMEA\nstream. Let\u0027s cache and join sequence sentences until new trace type\nis received. In that case full sequence always overrides\nprevious full sequence.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "38548fedd3e2e6509acf699845a91edb9d0d5935",
      "tree": "96e5019c05fed13159e1663e290901668c12818a",
      "parents": [
        "42ca47472aad3cbe89c028ddf3e3362d7b4d51c0"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Sat Jan 10 20:44:43 2026"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Tue May 26 20:56:53 2026"
      },
      "message": "location-gps-nmea: use g_autofree in location_gps_nmea_take_trace to track ownership\n\nIt allows simplify error handling.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "42ca47472aad3cbe89c028ddf3e3362d7b4d51c0",
      "tree": "78b95ca5dc06ead681c52bd1ea9efea7e49e401b",
      "parents": [
        "62a967131d453449ec829a7bdc8d10e9c61ebdff",
        "027c8c068cbd1aaa37a885864ee5ec03485f66a9"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Mon May 25 15:10:36 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Mon May 25 15:10:36 2026"
      },
      "message": "Merge request !1431 from \u0027add-kk-l10n\u0027\n\ni18n: Add Kazakh translation\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1431"
    },
    {
      "commit": "027c8c068cbd1aaa37a885864ee5ec03485f66a9",
      "tree": "78b95ca5dc06ead681c52bd1ea9efea7e49e401b",
      "parents": [
        "62a967131d453449ec829a7bdc8d10e9c61ebdff"
      ],
      "author": {
        "name": "Baurzhan Muftakhidinov",
        "email": "baurthefirst@gmail.com",
        "time": "Sun Mar 01 08:56:54 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Mon May 25 15:09:47 2026"
      },
      "message": "po: add Kazakh translation\n\nSigned-off-by: Baurzhan Muftakhidinov \u003cbaurthefirst@gmail.com\u003e\n"
    },
    {
      "commit": "62a967131d453449ec829a7bdc8d10e9c61ebdff",
      "tree": "925e7c48355547ff72b2e53071c07e65f53dda80",
      "parents": [
        "de5058c2837c56185ece9effe59facad960c7e40",
        "07704018dddc1b3d84aa9db69c3eba3f5cd9813b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 15:59:27 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 15:59:27 2026"
      },
      "message": "Merge request !1427 from \u0027bulgarian\u0027\n\npo: add Bulgarian translation\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1427"
    },
    {
      "commit": "07704018dddc1b3d84aa9db69c3eba3f5cd9813b",
      "tree": "925e7c48355547ff72b2e53071c07e65f53dda80",
      "parents": [
        "de5058c2837c56185ece9effe59facad960c7e40"
      ],
      "author": {
        "name": "twlvnn",
        "email": "kraft_werk@tutanota.com",
        "time": "Sat Feb 07 10:42:17 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 15:57:44 2026"
      },
      "message": "po: add Bulgarian translation\n\nSigned-off-by: twlvnn \u003ckraft_werk@tutanota.com\u003e\n"
    },
    {
      "commit": "de5058c2837c56185ece9effe59facad960c7e40",
      "tree": "fc69208030999f2ad8ccd095bcb86f9cf6cc2a6e",
      "parents": [
        "87c88dc237904aa6b6050236eb6b0e2072c6bbc3",
        "fc1b1e9b1e95c34256ac5116e06042000f0cec41"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:47:15 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:47:15 2026"
      },
      "message": "Merge request !1429 from \u0027l10n-sv\u0027\n\npo: Update Swedish translation\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1429"
    },
    {
      "commit": "fc1b1e9b1e95c34256ac5116e06042000f0cec41",
      "tree": "fc69208030999f2ad8ccd095bcb86f9cf6cc2a6e",
      "parents": [
        "87c88dc237904aa6b6050236eb6b0e2072c6bbc3"
      ],
      "author": {
        "name": "Anders Jonsson",
        "email": "anders.jonsson@norsjovallen.se",
        "time": "Sun Feb 22 20:23:28 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:43:49 2026"
      },
      "message": "po: Update Swedish translation\n\nSigned-off-by: Anders Jonsson \u003canders.jonsson@norsjovallen.se\u003e\n"
    },
    {
      "commit": "87c88dc237904aa6b6050236eb6b0e2072c6bbc3",
      "tree": "0d6f109c073969b4b16e81282f9ad30be691bbcd",
      "parents": [
        "174f17f6eabd433e2df1cacb166d360c3995457e",
        "a94dd40a2a849046510206480964a06b99118530"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:36:57 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:36:57 2026"
      },
      "message": "Merge request !1421 from \u0027xmm7360-assert-cleanup\u0027\n\nintel: XMM7360: convert message parsing g_assert()s to GErrors and split out protocol functions\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1421\n\nCloses #1034"
    },
    {
      "commit": "a94dd40a2a849046510206480964a06b99118530",
      "tree": "0d6f109c073969b4b16e81282f9ad30be691bbcd",
      "parents": [
        "fd98a809afa00cd6fc044fab852d8252c53997db"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 12:47:38 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: convert remaining asserts to error checks\n\nReturn useful errors rather than asserting on unexpected responses.\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "fd98a809afa00cd6fc044fab852d8252c53997db",
      "tree": "9cf969c9306c84a32691dabdc88cd4f99f3618b1",
      "parents": [
        "a486776a445bf39a51cb9f93d4c73601329c0c7b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Fri Jan 09 17:56:28 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "sierra: enable XMM7160-based devices like Comneon HL7588\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "a486776a445bf39a51cb9f93d4c73601329c0c7b",
      "tree": "79f35bae3201823b0e3d090a84c5430a6fe3dddc",
      "parents": [
        "d6fe0722c9b37f7adbca8f1b4155ebada23a287b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Fri Jan 09 14:45:19 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: better handle negative ASN integers from modem\n\nThe original code for xmm7360_byte_array_read_asn_int() returned\nsigned integers both from the function and from the returned\nXmm7360RpcMsgArg, but didn\u0027t handle sign extension on the\nvalue returned from the function. That would lead to different\nvalues between the function return and the Xmm7360RpcMsgArg\nvalue, which seems wrong.\n\nMake those two correspond and add checks in various places that\nshouldn\u0027t ever see negative ints.\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "d6fe0722c9b37f7adbca8f1b4155ebada23a287b",
      "tree": "a3d33e7584800527250e6a7199a29268d41e85b4",
      "parents": [
        "64d8053413b8e7583a6176e9f3397aaa4135372f"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jan 08 03:55:12 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: add xmmrpc protocol test infrastructure\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "64d8053413b8e7583a6176e9f3397aaa4135372f",
      "tree": "5ab655882ebd82d7aa4384160b33cbe8936acd2e",
      "parents": [
        "4fead86d247f0a5c61d57d3155e0580f8c01d9b0"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jan 08 04:55:03 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: move Xmm7360RpcMsgArgType UNKNOWN value first in enum\n\nThat way UNKNOWN is the zero\u0027d value instead of BYTE; it\u0027s easier\nto test for and less error-prone if not explicitly set to the right\nvalue.\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "4fead86d247f0a5c61d57d3155e0580f8c01d9b0",
      "tree": "cb02d83518ffcc678e62a01599f860107109bda6",
      "parents": [
        "3f7b39075c379f31b009af7665890ef32f1591c8"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Thu Jan 08 04:57:25 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: better handling of silly ASN int sizes\n\nxmm7360_byte_array_read_asn_int() would keep bit-shifting a gint into\noblivion if the int\u0027s size was \u003e 32-bit. It also didn\u0027t handle size 0\nints at all, and while size 24 ints would get stuffed into a 32-bit\nvariable those probably aren\u0027t a thing and if they actually are they\nshould get specifically handled.\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "3f7b39075c379f31b009af7665890ef32f1591c8",
      "tree": "e92329faefb1851bb5460b32621f0aafc6dfaeda",
      "parents": [
        "07dc7e7304d81c3127d5259c309e89f819ff4ef4"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jan 06 04:14:56 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: move standalone protocol functions to their own file\n\nSo we can unit-test all the parsing and building code more easily\nwithout having to link to a bunch of serial port stuff.\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "07dc7e7304d81c3127d5259c309e89f819ff4ef4",
      "tree": "28ac88e2c42da8a7dd87ad1a411bc04bc79f2d5a",
      "parents": [
        "1565e3ada74ecac6e0493a25acff3f828ff03f93"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jan 06 03:50:48 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: return a GError from parse_response_xmm7360()\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "1565e3ada74ecac6e0493a25acff3f828ff03f93",
      "tree": "d884f7ca0ad5b6369b60f2caa7622c74ed512f45",
      "parents": [
        "174f17f6eabd433e2df1cacb166d360c3995457e"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jan 06 03:39:04 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:33:48 2026"
      },
      "message": "intel: XMM7360: convert message parsing g_assert()s to GErrors (#1034)\n\nWe shouldn\u0027t be g_asserting (and thus crashing) on untrusted input code;\nshould instead check validity and return an error that upper layers\ncan reasonbly log and handle.\n\nFixes: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/1034\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "174f17f6eabd433e2df1cacb166d360c3995457e",
      "tree": "34a7ef5b5f48820477f169fd5c57ec5f7ece4b15",
      "parents": [
        "a02355c5ce3d07976d3fcb784589be5e24a7c37a",
        "62cc4de68ee27769407350e58ed9a6aeba45f73b"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:15:06 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:15:06 2026"
      },
      "message": "Merge request !1438 from \u0027mtk_legacy_fix_err_memleak\u0027\n\nbroadband-modem-mtk-legacy: fix `GError` memory leak\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1438"
    },
    {
      "commit": "62cc4de68ee27769407350e58ed9a6aeba45f73b",
      "tree": "34a7ef5b5f48820477f169fd5c57ec5f7ece4b15",
      "parents": [
        "a02355c5ce3d07976d3fcb784589be5e24a7c37a"
      ],
      "author": {
        "name": "Barnabás Pőcze",
        "email": "pobrn@protonmail.com",
        "time": "Fri Mar 27 23:15:17 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun May 24 13:12:41 2026"
      },
      "message": "broadband-modem-mtk-legacy: fix `GError` memory leak\n\nIf the error matches, then a `+CIMI` command is sent to the device and\nprocessing continues. However, the current error (for the `+CPIN?` command)\nis not freed or propagated, fix that.\n\nFixes: 5c1fcbfe4a6e (\"mtk-legacy: read IMSI if CPIN response is an error\")\nSigned-off-by: Barnabás Pőcze \u003cpobrn@protonmail.com\u003e\n"
    },
    {
      "commit": "a02355c5ce3d07976d3fcb784589be5e24a7c37a",
      "tree": "97d924ec4c46ebe742bd75bc6283ec4a9d3ed0c8",
      "parents": [
        "56f3ba761a101def6f4ff26229ca398e2489fdfa",
        "31cbf9c1bef06fb1b5377c034b09c74bc3d9d0e0"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 17:48:51 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 17:48:51 2026"
      },
      "message": "Merge request !1448 from \u0027qmi/handle-shuttingdown\u0027\n\nModemManager: handle QMI_DMS_OPERATING_MODE_SHUTTING_DOWN similar as OFFLINE\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1448"
    },
    {
      "commit": "31cbf9c1bef06fb1b5377c034b09c74bc3d9d0e0",
      "tree": "97d924ec4c46ebe742bd75bc6283ec4a9d3ed0c8",
      "parents": [
        "56f3ba761a101def6f4ff26229ca398e2489fdfa"
      ],
      "author": {
        "name": "Alexander Couzens",
        "email": "lynxis@fe80.eu",
        "time": "Wed Apr 15 19:23:16 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 17:44:49 2026"
      },
      "message": "ModemManager: handle QMI_DMS_OPERATING_MODE_SHUTTING_DOWN similar as OFFLINE\n\nFound and tested on Oneplus 6T with postmarketOS.\n\nSigned-off-by: Alexander Couzens \u003clynxis@fe80.eu\u003e\n"
    },
    {
      "commit": "56f3ba761a101def6f4ff26229ca398e2489fdfa",
      "tree": "e6cce373bf210fa6049a172845c658ae29890aa7",
      "parents": [
        "50759a2e52ea228fd4542555812c44a0a02b3e71",
        "f6676cc5f32a17bb2f4ab55c96f00887034e7458"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 17:35:26 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 17:35:26 2026"
      },
      "message": "Merge request !1449 from \u0027RW135\u0027\n\nplugin,rolling: Add udev rules for RW135R modules.\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1449"
    },
    {
      "commit": "f6676cc5f32a17bb2f4ab55c96f00887034e7458",
      "tree": "e6cce373bf210fa6049a172845c658ae29890aa7",
      "parents": [
        "50759a2e52ea228fd4542555812c44a0a02b3e71"
      ],
      "author": {
        "name": "Wenbin",
        "email": "ywbjob@163.com",
        "time": "Thu Apr 30 02:18:33 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 17:30:53 2026"
      },
      "message": "plugin,rolling: Add udev rules for RW135R modules.\n\nThe Rolling needs to add the udev rules for supporting RW135R modules.\n\nSigned-off-by: Wenbin \u003cywbjob@163.com\u003e\n"
    },
    {
      "commit": "50759a2e52ea228fd4542555812c44a0a02b3e71",
      "tree": "696d9304c65967005a93bacb87bb72dfb69f37a3",
      "parents": [
        "74159e05e23a03cce5f551f7dbba0de6dfb975ce",
        "4a33e408e396a8537214970d330c6ac50d49f6e7"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 16:50:20 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 16:50:20 2026"
      },
      "message": "Merge request !1440 from \u0027dco\u0027\n\nci: Add build_container as a dependency of verify_dco job\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1440"
    },
    {
      "commit": "4a33e408e396a8537214970d330c6ac50d49f6e7",
      "tree": "696d9304c65967005a93bacb87bb72dfb69f37a3",
      "parents": [
        "74159e05e23a03cce5f551f7dbba0de6dfb975ce"
      ],
      "author": {
        "name": "Sebastian Krzyszkowiak",
        "email": "sebastian.krzyszkowiak@puri.sm",
        "time": "Sat Mar 28 07:37:52 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue May 12 16:47:32 2026"
      },
      "message": "ci: Add build_container as a dependency of verify_dco job\n\nOtherwise it fails for first contributions.\n\nSigned-off-by: Sebastian Krzyszkowiak \u003csebastian.krzyszkowiak@puri.sm\u003e\n"
    },
    {
      "commit": "74159e05e23a03cce5f551f7dbba0de6dfb975ce",
      "tree": "5e3e7002e8ee04e00013794b8f54f260f4d34d2d",
      "parents": [
        "d111c242c99007b985a27216e16dedccc70cf3d3",
        "44330936c6cd875034390c48f1a347d5d68974a9"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Wed Apr 22 14:40:36 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Wed Apr 22 14:40:36 2026"
      },
      "message": "Merge request !1447 from \u0027fix-rolling-single-plugin-build\u0027\n\nrolling: fix single plugin build\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1447"
    },
    {
      "commit": "44330936c6cd875034390c48f1a347d5d68974a9",
      "tree": "5e3e7002e8ee04e00013794b8f54f260f4d34d2d",
      "parents": [
        "d111c242c99007b985a27216e16dedccc70cf3d3"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Wed Apr 22 14:26:52 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Wed Apr 22 14:27:38 2026"
      },
      "message": "rolling: fix single plugin build\n\nThe MTK specific modem object should be included in the \u0027mtk\u0027 shared\nutils, so that they\u0027re available to other plugins.\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "d111c242c99007b985a27216e16dedccc70cf3d3",
      "tree": "34f12aefc89b5eb20c3c363a54b243d480ff3f75",
      "parents": [
        "fa32b5e1e9b3fd24181f93ca7d17817b6a9b2e3d",
        "b10139f96bc634a672f2850e870d860e5bbb7049"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Wed Apr 22 10:34:56 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Wed Apr 22 10:34:56 2026"
      },
      "message": "Merge request !1436 from \u0027mtk_support\u0027\n\nRolling: Add modifications related to the rw350-usb project\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1436"
    },
    {
      "commit": "b10139f96bc634a672f2850e870d860e5bbb7049",
      "tree": "34f12aefc89b5eb20c3c363a54b243d480ff3f75",
      "parents": [
        "fa32b5e1e9b3fd24181f93ca7d17817b6a9b2e3d"
      ],
      "author": {
        "name": "xuhongxing",
        "email": "James.Xu@fibocom.com",
        "time": "Tue Mar 24 09:08:51 2026"
      },
      "committer": {
        "name": "Wenbin",
        "email": "ywbjob@163.com",
        "time": "Wed Apr 22 10:26:57 2026"
      },
      "message": "Rolling: Add modifications related to the rw350-usb project\n1.Modify rule files for the 33f8/0802 MI interface\n2.Modify the rolling plugin code to share and reuse code from the mtk plugin\n\nT: Bus\u003d02 Lev\u003d01 Prnt\u003d01 Port\u003d02 Cnt\u003d01 Dev#\u003d 5 Spd\u003d5000 MxCh\u003d 0\nD: Ver\u003d 3.00 Cls\u003def(misc ) Sub\u003d02 Prot\u003d01 MxPS\u003d 9 #Cfgs\u003d 1\nP: Vendor\u003d33f8 ProdID\u003d0802 Rev\u003d00.01\nS: Manufacturer\u003dRolling Wireless S.a.r.l.\nS: Product\u003dUSB DATA CARD\nC: #Ifs\u003d10 Cfg#\u003d 1 Atr\u003da0 MxPwr\u003d896mA\nI: If#\u003d 0 Alt\u003d 0 #EPs\u003d 1 Cls\u003d02(commc) Sub\u003d0e Prot\u003d00 Driver\u003dcdc_mbim\nE: Ad\u003d82(I) Atr\u003d03(Int.) MxPS\u003d 64 Ivl\u003d32ms\nI: If#\u003d 1 Alt\u003d 1 #EPs\u003d 2 Cls\u003d0a(data ) Sub\u003d00 Prot\u003d02 Driver\u003dcdc_mbim\nE: Ad\u003d01(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d81(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 2 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d00 Prot\u003d00 Driver\u003doption\nE: Ad\u003d02(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d83(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 3 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d00 Prot\u003d00 Driver\u003doption\nE: Ad\u003d03(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d84(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 4 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d00 Prot\u003d00 Driver\u003doption\nE: Ad\u003d04(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d85(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 5 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d42 Prot\u003d01 Driver\u003dusbfs\nE: Ad\u003d05(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d86(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 6 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d00 Prot\u003d00 Driver\u003doption\nE: Ad\u003d06(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d87(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 7 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d00 Prot\u003d00 Driver\u003doption\nE: Ad\u003d07(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d88(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 8 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d00 Prot\u003d00 Driver\u003doption\nE: Ad\u003d08(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d89(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nI: If#\u003d 9 Alt\u003d 0 #EPs\u003d 2 Cls\u003dff(vend.) Sub\u003d00 Prot\u003d00 Driver\u003doption\nE: Ad\u003d09(O) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\nE: Ad\u003d8a(I) Atr\u003d02(Bulk) MxPS\u003d1024 Ivl\u003d0ms\n\nSigned-off-by: xuhongxing \u003cJames.Xu@fibocom.com\u003e\n"
    },
    {
      "commit": "fa32b5e1e9b3fd24181f93ca7d17817b6a9b2e3d",
      "tree": "3c517d876a20249705216a8fd14e6a04b7812202",
      "parents": [
        "e5ce79878348453fb59ded530089b34bc3eed78b",
        "b6d53915a6f5cc6fadf8974f8b981148684b7766"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Wed Apr 15 13:01:23 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Wed Apr 15 13:01:23 2026"
      },
      "message": "Merge request !1445 from \u0027fix-qmi-wds-enum-missing\u0027\n\nmodem-helpers-qmi: add missing QMI_WDS_PDP_TYPE_NON_IP check\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1445"
    },
    {
      "commit": "b6d53915a6f5cc6fadf8974f8b981148684b7766",
      "tree": "3c517d876a20249705216a8fd14e6a04b7812202",
      "parents": [
        "c34b326709610d965c8ae78b8cec335c1ef3f48b"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Wed Apr 15 12:53:43 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Wed Apr 15 12:54:09 2026"
      },
      "message": "port-qmi: add missing QMI_DATA_ENDPOINT_TYPE_ETHERNET\n\nFixes build with latest libqmi.\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "c34b326709610d965c8ae78b8cec335c1ef3f48b",
      "tree": "77d5f72cea39ae4b2a2ae9d401d602011f9a1764",
      "parents": [
        "e5ce79878348453fb59ded530089b34bc3eed78b"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Wed Apr 15 12:45:34 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Wed Apr 15 12:46:28 2026"
      },
      "message": "modem-helpers-qmi: add missing QMI_WDS_PDP_TYPE_NON_IP check\n\nFixes build with latest libqmi.\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "e5ce79878348453fb59ded530089b34bc3eed78b",
      "tree": "17f65c8d0afac94718940fea5af0f6f4061a2ada",
      "parents": [
        "eae9ed5485e4cc5547ab010c033fafac19e671f3",
        "b59e0acb08d62d0efe33e2b41457ebcfd297ebb4"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Wed Mar 25 02:01:05 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Wed Mar 25 02:01:05 2026"
      },
      "message": "Merge request !1432 from \u0027cbm-pad\u0027\n\nmm-cbm-part: Try harder to convert message text\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1432\n\nCloses #1042"
    },
    {
      "commit": "b59e0acb08d62d0efe33e2b41457ebcfd297ebb4",
      "tree": "17f65c8d0afac94718940fea5af0f6f4061a2ada",
      "parents": [
        "eae9ed5485e4cc5547ab010c033fafac19e671f3"
      ],
      "author": {
        "name": "Guido Günther",
        "email": "agx@sigxcpu.org",
        "time": "Wed Mar 04 09:29:38 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Wed Mar 25 01:53:23 2026"
      },
      "message": "mm-cbm-part: Try harder to convert message text\n\nCurrent cell broadcast messages from missile warnings in Israel\nhave an addition `00` at the end to pad for an even byte number.\n\nThis breaks conversion making the whole message fail conversion. As this\nis a 15 part message in 3 languages the whole notification is lost in\nthis case.\n\nTry harder to convert the message and recover even partial bits.\n\nCloses: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/1042\nSigned-off-by: Guido Günther \u003cagx@sigxcpu.org\u003e\n"
    },
    {
      "commit": "eae9ed5485e4cc5547ab010c033fafac19e671f3",
      "tree": "77d09c62b7910d71f88888de2e122a61ed851e36",
      "parents": [
        "8053db6cc0f1cd080068d0962829b0dfb5283b41",
        "49fb75cd945643c3d1f7bededb5e2cc854bc3146"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Mar 24 17:59:08 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Mar 24 17:59:08 2026"
      },
      "message": "Merge request !1435 from \u0027upstream-TX62-W-C-support\u0027\n\nplugins: cinterion: add new USB interface number for TX62-W-C modem\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1435"
    },
    {
      "commit": "49fb75cd945643c3d1f7bededb5e2cc854bc3146",
      "tree": "77d09c62b7910d71f88888de2e122a61ed851e36",
      "parents": [
        "8053db6cc0f1cd080068d0962829b0dfb5283b41"
      ],
      "author": {
        "name": "Lorenzo Medici",
        "email": "lorenzo.medici@canonical.com",
        "time": "Fri Mar 20 14:24:04 2026"
      },
      "committer": {
        "name": "Lorenzo Medici",
        "email": "lorenzo.medici@canonical.com",
        "time": "Fri Mar 20 14:24:04 2026"
      },
      "message": "cinterion: add USB interface number 0x05 for TX62 modem\n\nSigned-off-by: Lorenzo Medici \u003clorenzo.medici@canonical.com\u003e\n"
    },
    {
      "commit": "8053db6cc0f1cd080068d0962829b0dfb5283b41",
      "tree": "006177b2ce8269ebd7bd4a7f27acec10c73e44ae",
      "parents": [
        "66e72979a189ae61584b8c1acf06d5a97b561e07",
        "d8a01479ede28e39886c198ef20d2531b7c644b2"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 11:01:53 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 11:01:53 2026"
      },
      "message": "Merge request !1426 from \u0027id-mm-typos\u0027\n\napi,doc: fix a typo in \u0027Modem.Device\u0027 documentation\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1426"
    },
    {
      "commit": "d8a01479ede28e39886c198ef20d2531b7c644b2",
      "tree": "006177b2ce8269ebd7bd4a7f27acec10c73e44ae",
      "parents": [
        "66e72979a189ae61584b8c1acf06d5a97b561e07"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksandermj@google.com",
        "time": "Tue Feb 03 10:54:15 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 10:59:32 2026"
      },
      "message": "api,doc: fix a typo in \u0027Modem.Device\u0027 documentation\n\nOriginally reported by Lubomir Rintel.\n\nSigned-off-by: Aleksander Morgado \u003caleksandermj@google.com\u003e\n"
    },
    {
      "commit": "66e72979a189ae61584b8c1acf06d5a97b561e07",
      "tree": "902a38fdbe01f07c8a12db2a4f590060fb7ad5ad",
      "parents": [
        "1fc9059407b26bf4087a7a6678e5879b3bf79030",
        "387c41cb040999b48e861e181f0de63a4c5358af"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 10:53:53 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 10:53:53 2026"
      },
      "message": "Merge request !1423 from \u0027local1\u0027\n\nrolling: update RW101 port type hints\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1423"
    },
    {
      "commit": "387c41cb040999b48e861e181f0de63a4c5358af",
      "tree": "902a38fdbe01f07c8a12db2a4f590060fb7ad5ad",
      "parents": [
        "1fc9059407b26bf4087a7a6678e5879b3bf79030"
      ],
      "author": {
        "name": "Wenbin",
        "email": "ywbjob@163.com",
        "time": "Thu Jan 08 08:34:00 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 10:49:42 2026"
      },
      "message": "rolling: update RW101 port type hints\n\nThe port type hints for the RW101-cat6 and RW101-cat12 have been\nupdated, with USB interface #2 now designated as both the AT primary\nport and fastboot port.\n\nSigned-off-by: Wenbin \u003cywbjob@163.com\u003e\n"
    },
    {
      "commit": "1fc9059407b26bf4087a7a6678e5879b3bf79030",
      "tree": "1308d3d75dc48a944a6923e13128f3a9b1c5f811",
      "parents": [
        "089d0e3353e3b62af7f13b86aec0bb26fb5cb02a",
        "aa2aa547483284252da6d4a5d5c3884c8dbe3343"
      ],
      "author": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 09:58:52 2026"
      },
      "committer": {
        "name": "Aleksander Morgado",
        "email": "aleksander@aleksander.es",
        "time": "Tue Feb 03 09:58:52 2026"
      },
      "message": "Merge request !1425 from \u0027dp/port-hints\u0027\n\nPort hints for various Telit modems\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1425"
    },
    {
      "commit": "aa2aa547483284252da6d4a5d5c3884c8dbe3343",
      "tree": "1308d3d75dc48a944a6923e13128f3a9b1c5f811",
      "parents": [
        "6131303fb22d06ed312f5a910f0294e3fdf0e259"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Fri Jan 30 11:36:23 2026"
      },
      "committer": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Fri Jan 30 15:09:01 2026"
      },
      "message": "telit: add port hints for FN990B40 rmnet and MBIM compositions\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "6131303fb22d06ed312f5a910f0294e3fdf0e259",
      "tree": "8fc526518184c51d310e69830584c1136cdfb6e6",
      "parents": [
        "c1386905f3eb0776db843aec941960c6e80a34dd"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Thu Jan 29 15:31:33 2026"
      },
      "committer": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Fri Jan 30 15:08:37 2026"
      },
      "message": "telit: add port hints for FE910C04 rmnet and MBIM compositions\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "c1386905f3eb0776db843aec941960c6e80a34dd",
      "tree": "9360d25849838190334ea5cd5a0f33745326946e",
      "parents": [
        "8f4e8bd24c3b5925862e13d50d361d18ce3e2b65"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Thu Jan 29 14:38:01 2026"
      },
      "committer": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Fri Jan 30 15:08:12 2026"
      },
      "message": "telit: add port hints for FE990B40 rmnet and MBIM compositions\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "8f4e8bd24c3b5925862e13d50d361d18ce3e2b65",
      "tree": "2a8460c5e81d94fc34159fdc20b6ece97730fd40",
      "parents": [
        "089d0e3353e3b62af7f13b86aec0bb26fb5cb02a"
      ],
      "author": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Thu Jan 29 14:01:03 2026"
      },
      "committer": {
        "name": "Daniele Palmas",
        "email": "dnlplm@gmail.com",
        "time": "Fri Jan 30 15:07:52 2026"
      },
      "message": "telit: add port hints for FN920C04 rmnet and MBIM compositions\n\nSigned-off-by: Daniele Palmas \u003cdnlplm@gmail.com\u003e\n"
    },
    {
      "commit": "089d0e3353e3b62af7f13b86aec0bb26fb5cb02a",
      "tree": "66afe026fe972d240b4e09d14fc6864c2eda3e13",
      "parents": [
        "90e71e2817f2cbeded1fdf3d1408e763b9aa5602",
        "c0f0c02ac14dc565867163e92a16d44a40b7ea3f"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Fri Jan 09 23:20:44 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Fri Jan 09 23:20:44 2026"
      },
      "message": "Merge request !1418 from \u0027feat/inject-time-position\u0027\n\nshared-qmi: handle inject time and inject position requests from the modem\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1418"
    },
    {
      "commit": "c0f0c02ac14dc565867163e92a16d44a40b7ea3f",
      "tree": "66afe026fe972d240b4e09d14fc6864c2eda3e13",
      "parents": [
        "8b6116fe6ce3bcbac6dafa3cdf8144c7d51ed5c0"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Mon Jan 05 21:32:59 2026"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Fri Jan 09 23:04:10 2026"
      },
      "message": "tests: add tests for location-cache\n\nonly GGA NMEA sentences are supported by current implementation of\nMMLocationGpsRaw. RMC and GLL messages are added, but currently test\nare negative.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "8b6116fe6ce3bcbac6dafa3cdf8144c7d51ed5c0",
      "tree": "bda7a9d249b8584eebc44133a5be155c82b37d03",
      "parents": [
        "a108a0fe7cf8315a414a313e15f47f9404380b69"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Wed Nov 05 20:24:20 2025"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Fri Jan 09 23:04:10 2026"
      },
      "message": "shared-qmi: handle inject position requests from the modem\n\nTo be able to have quick position fix GNSS engine needs to know\n - predicted orbits data,\n - current time,\n - approximate position.\nModem sends indications with requests, when it needs corresponding\ninformation. Predicted orbits can be injected using\n\u0027mmcli -m any --location-inject-assistance-data\u003d\u003cfile\u003e\u0027. But to\naccelerate time to first fix after cold start extra information is\nneeded like time and coarse position.\n\nInject position requests are received, when GPS session is initiated\nusing QMI_LOC_START. In inject position request modem sends\ninformation about its last known position. If last known position is\nzero, when this is a cold start and inject position is needed to\nimprove TTFF.\nLast position from the modem is cached in ModemManager and is injected\nnext time, when modem requests it. For example, if modem is restarted.\n\nWhen timestamp on injected position is too old, than position is\nignored and location engine does cold start. Therefore current time is\nused for injected position.\n\nWhen injected position is far away the actual one (for example, after\nflight), after some time location engine falls back to cold start.\n\nTested on Quectel EG25-G.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "a108a0fe7cf8315a414a313e15f47f9404380b69",
      "tree": "2a6d0ba2ae1ebb01a5c4921c75adf27e282fdc73",
      "parents": [
        "8ac3dfb9557d01e5a60b61081ec9da7b3b7911fd"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Fri Nov 14 11:43:41 2025"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Fri Jan 09 23:04:10 2026"
      },
      "message": "build: Fix meson deprecation warnings\n\nfollowing warnings are fixed:\nDependency udev found: YES 258 (cached)\n../meson.build:202: WARNING: Project targets \u0027\u003e\u003d 0.60.0\u0027 but uses\n   feature deprecated since \u00270.56.0\u0027:\n   dependency.get_pkgconfig_variable. use\n   dependency.get_variable(pkgconfig : ...) instead\nDependency systemd found: YES 258 (cached)\n../meson.build:212: WARNING: Project targets \u0027\u003e\u003d 0.60.0\u0027 but uses\n   feature deprecated since \u00270.56.0\u0027:\n   dependency.get_pkgconfig_variable. use\n   dependency.get_variable(pkgconfig : ...) instead\nDependency libsystemd found: YES 258 (cached)\nDependency polkit-gobject-1 found: YES 126 (cached)\n../meson.build:245: WARNING: Project targets \u0027\u003e\u003d 0.60.0\u0027 but uses\n   feature deprecated since \u00270.56.0\u0027:\n   dependency.get_pkgconfig_variable. use\n   dependency.get_variable(pkgconfig : ...) instead\nDependency mbim-glib found: YES 1.32.0 (cached)\nDependency qmi-glib found: YES 1.37.1 (cached)\n../meson.build:302: WARNING: Project targets \u0027\u003e\u003d 0.60.0\u0027 but uses\n   feature deprecated since \u00270.56.0\u0027:\n   dependency.get_pkgconfig_variable. use\n   dependency.get_variable(pkgconfig : ...) instead\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "8ac3dfb9557d01e5a60b61081ec9da7b3b7911fd",
      "tree": "d90509d5b5c8f7ccbf5a1922a25a7cdf80f52b23",
      "parents": [
        "81101b014755e98029aeb37593365fb52e4cd46b"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Fri Jan 02 20:09:11 2026"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Fri Jan 09 23:04:10 2026"
      },
      "message": "location-cache: add class to store cached location\n\nThis class allows to preserve cached position across ModemManager restarts.\nCached location can be used to improve time to first fix after device\nstart by injecting coarse position into location engine. Since there\nwasn\u0027t any fix yet, position in ModemManager is unknown. To fix this\ncached location is saved on disk (/var/lib/ModemManager/location.ini)\nwhen location session is stopped or ModemManager is stopped and loaded\non the next start from the file.\n\ninstall_emptydir is introduced in meson 0.60.\n\nDistributions has to create directory to store cached location in\npackaging, because ModemManager runs under systemd isolation with\nlimited rights and it can\u0027t create this directory by itself.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "81101b014755e98029aeb37593365fb52e4cd46b",
      "tree": "f862a825152957aae90dcd0db553388cd95dde13",
      "parents": [
        "90e71e2817f2cbeded1fdf3d1408e763b9aa5602"
      ],
      "author": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Mon Oct 06 22:18:49 2025"
      },
      "committer": {
        "name": "Andrey Skvortsov",
        "email": "andrej.skvortzov@gmail.com",
        "time": "Fri Jan 09 23:04:10 2026"
      },
      "message": "shared-qmi: handle inject time requests from the modem\n\nTo be able to have quick position fix GNSS engine needs to know\n - predicted orbits data,\n - current time,\n - approximate position.\nModem sends indications with requests, when it needs corresponding\ninformation. Predicted orbits can be injected using\n\u0027mmcli -m any --location-inject-assistance-data\u003d\u003cfile\u003e\u0027. But to\naccelerate time to first fix after cold start extra information is\nneeded like time and coarse position. This commit injects UTC time.\n\nUTC time inject requests are received, when GPS session is initiated\nusing QMI_LOC_START.\n\nTested on Quectel EG25-G.\n\nSigned-off-by: Andrey Skvortsov \u003candrej.skvortzov@gmail.com\u003e\n"
    },
    {
      "commit": "90e71e2817f2cbeded1fdf3d1408e763b9aa5602",
      "tree": "068c7d9369a8fc6b2d3f0c0ca9da8c6506d51416",
      "parents": [
        "314b6e77619f287af9fb394a39f468588a53e6bf",
        "061a9956d0a4b46959b0eb79c36879bada0a3217"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Fri Jan 09 12:04:21 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Fri Jan 09 12:04:21 2026"
      },
      "message": "Merge request !1420 from \u0027uml290-network-time-broken\u0027\n\nbroadband-modem,pantech: network time broken on UML290\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1420"
    },
    {
      "commit": "061a9956d0a4b46959b0eb79c36879bada0a3217",
      "tree": "068c7d9369a8fc6b2d3f0c0ca9da8c6506d51416",
      "parents": [
        "314b6e77619f287af9fb394a39f468588a53e6bf"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Sun Dec 28 04:46:24 2025"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Fri Jan 09 11:59:17 2026"
      },
      "message": "broadband-modem,pantech: network time broken on UML290\n\nUML290 with firmware L0290VWBB12F.248 doesn\u0027t support QMI network\ntime and crashes when asked for AT network time too quickly after\nbeing plugged in.\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    },
    {
      "commit": "314b6e77619f287af9fb394a39f468588a53e6bf",
      "tree": "762c0cdbb5ec8e7a00325758cf532e8acd6da5c3",
      "parents": [
        "61e2f69d489eceb51c0ac21c2989c18c3f00f734",
        "0636260a3924ac4f867a408380e3cbd049862b13"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jan 06 04:39:00 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jan 06 04:39:00 2026"
      },
      "message": "Merge request !1422 from \u0027ci-ubuntu-2204\u0027\n\nci: bump Ubuntu version in CI image for meson \u003e\u003d 0.56 for libqmi\n\nhttps://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/1422"
    },
    {
      "commit": "0636260a3924ac4f867a408380e3cbd049862b13",
      "tree": "762c0cdbb5ec8e7a00325758cf532e8acd6da5c3",
      "parents": [
        "61e2f69d489eceb51c0ac21c2989c18c3f00f734"
      ],
      "author": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jan 06 04:28:51 2026"
      },
      "committer": {
        "name": "Dan Williams",
        "email": "dan@ioncontrol.co",
        "time": "Tue Jan 06 04:36:47 2026"
      },
      "message": "ci: bump Ubuntu version in CI image for meson \u003e\u003d 0.56 for libqmi\n\nLatest libqmi requires meson 0.56 or later, which 22.04 has.\n\nSigned-off-by: Dan Williams \u003cdan@ioncontrol.co\u003e\n"
    }
  ],
  "next": "61e2f69d489eceb51c0ac21c2989c18c3f00f734"
}
