{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":557355626,"defaultBranch":"master","name":"mcan","ownerLogin":"GrepitAB","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-10-25T14:37:39.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/86724045?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1709566938.0","currentOid":""},"activityList":{"items":[{"before":"472068e780656cc10590850e9ccb4939eeb3c0f7","after":"5eadb2a4e9a893a82229049060aaf88cb09ab59b","ref":"refs/heads/master","pushedAt":"2024-03-04T15:37:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Ironedde","name":"Edvin Åkerfeldt","path":"/Ironedde","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5745914?s=80&v=4"},"commit":{"message":"Release mcan/0.5.0 (#48)\n\n### Added\r\n- Add safe way to shutdown the bus when actively transmitting/receiving\r\n(#45)\r\n- Add method to finalize configuration into initialization mode (#47)\r\n\r\n### Changed\r\n- *Breaking* Update the register mappings with svd2rust 0.30.2 and form\r\n0.10.0 (#46)","shortMessageHtmlLink":"Release mcan/0.5.0 (#48)"}},{"before":"a4c8e75ad4eed8168741f2e7bd5f54436ead492c","after":"472068e780656cc10590850e9ccb4939eeb3c0f7","ref":"refs/heads/master","pushedAt":"2024-03-04T14:41:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"epontan","name":"Pontus Andersson","path":"/epontan","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1058198?s=80&v=4"},"commit":{"message":"Add method to finalize config into initialization mode (#47)\n\nIt is useful for applications to be able to decide when to bring MCAN\r\ninto operational mode. Therefore, add the option for user to finalize\r\nthe configuration into initialization mode rather than operational mode\r\ndirectly.","shortMessageHtmlLink":"Add method to finalize config into initialization mode (#47)"}},{"before":"af11f875f66e004f627bd08458cf254ca4d08d72","after":"a4c8e75ad4eed8168741f2e7bd5f54436ead492c","ref":"refs/heads/master","pushedAt":"2024-03-04T13:29:25.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"epontan","name":"Pontus Andersson","path":"/epontan","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1058198?s=80&v=4"},"commit":{"message":"Implement MCAN shutdown by writing to CSR (#45)\n\nMCAN can safely be shut down by writing to the `CCCR.CSR` register\r\n(Clock Stop Request) and then waiting for `CCCR.CSA` (Clock Stop\r\nAcknowledge) to become high.\r\n\r\nThis will not interrupt any ongoing transmissions/receptions and is\r\ntherefore deemed the safe way to shut down the bus.\r\n\r\nNote: It is not stated directly, but testing has shown that issuing a\r\nstop request will only wait for the currently ongoing transmissions\r\nand not what is queued. These messages will be sent once we enter\r\noperational mode again.","shortMessageHtmlLink":"Implement MCAN shutdown by writing to CSR (#45)"}},{"before":"b39083370f88e84500b2b0d92f0579edf67cf2c7","after":"af11f875f66e004f627bd08458cf254ca4d08d72","ref":"refs/heads/master","pushedAt":"2024-03-04T08:25:12.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"epontan","name":"Pontus Andersson","path":"/epontan","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1058198?s=80&v=4"},"commit":{"message":"Merge pull request #46 from Ironedde/atempt2-update-svd2rust-and-form\n\nRe-generate register mappings with svd2rust 0.30.2","shortMessageHtmlLink":"Merge pull request #46 from Ironedde/atempt2-update-svd2rust-and-form"}},{"before":"39c072675ba2ea558aee594eead1d1506ec8df92","after":"b39083370f88e84500b2b0d92f0579edf67cf2c7","ref":"refs/heads/master","pushedAt":"2023-10-24T15:47:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Ironedde","name":"Edvin Åkerfeldt","path":"/Ironedde","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5745914?s=80&v=4"},"commit":{"message":"Release mcan/0.4.0 (#44)\n\n### Added\r\n - Add `Can::aux::initialization_mode` (#41)\r\n\r\n### Changed\r\n- Fix some issues with watermark sizes for Rx FIFOs and Tx Event FIFO\r\n(#43)\r\n - Adhere to `filter_map_bool_then` clippy lint (#42)","shortMessageHtmlLink":"Release mcan/0.4.0 (#44)"}},{"before":"60bd3645a379dd2ce3f18a90a55ee48b445a1b28","after":"39c072675ba2ea558aee594eead1d1506ec8df92","ref":"refs/heads/master","pushedAt":"2023-10-24T10:04:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Ironedde","name":"Edvin Åkerfeldt","path":"/Ironedde","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5745914?s=80&v=4"},"commit":{"message":"Fix gte errors (#43)\n\nThis change fixes some issues where watermark sizes were interpreted the\r\nwrong way. Before this commit, watermarks for Rx FIFOs and Tx Event FIFO\r\nwere clamped to the maximum permissible watermark. But the behavior\r\naccording to the users manual is that watermark sizes over the\r\nmaximum permissible will disable the corresponding interrupt.\r\n\r\nP.31 and p.34 of the M_CAN users manual v330 states that Rx FIFO\r\nWatermarks, FnWM, can take values 1-64 inclusive. Any value greater than\r\n64 is interpreted as \"Watermark interrupt disabled\".\r\n\r\nP.44 of the M_CAN users manual v330 states that the Tx Event FIFO\r\nWatermark, EFWM, can take values 1-32 inclusive, Any value greater than\r\n32 is interpreted as \"Watermark interrupt disabled\".\r\n\r\nThis change makes the implementation consistent with the users manual on\r\nthose specifics.\r\n\r\nA value greater than the maximum will be changed to zero for\r\nconsistency. The bit ranges are 6 bits wide for the Tx Event and\r\n7 bits wide for the Rx configs but the u8 datatype is used in the\r\nsoftware interface. That u8 will be masked and shifted so that f.ex.\r\nwriting 129 to either bit range will actually set the value to 1, not\r\nconsistent with the user manual.\r\nClamping to any value over the maximum seems arbitrary, and for that\r\nreason values larger than the maximum permissible are set to zero, which\r\nalso disables the interrupt.","shortMessageHtmlLink":"Fix gte errors (#43)"}},{"before":"7de90dc5924535b1f0ef99781e391ca34c7f1c86","after":"60bd3645a379dd2ce3f18a90a55ee48b445a1b28","ref":"refs/heads/master","pushedAt":"2023-10-24T07:40:41.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Ironedde","name":"Edvin Åkerfeldt","path":"/Ironedde","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5745914?s=80&v=4"},"commit":{"message":"Expose initialization mode (#41)\n\nAdded initialization_mode method to DynAux trait, to enable software\r\nsupport for disabling of the CAN bus.","shortMessageHtmlLink":"Expose initialization mode (#41)"}},{"before":"992ca06c4013510083cc2486b1e482ed5c249b4b","after":"7de90dc5924535b1f0ef99781e391ca34c7f1c86","ref":"refs/heads/master","pushedAt":"2023-10-23T14:52:51.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Ironedde","name":"Edvin Åkerfeldt","path":"/Ironedde","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5745914?s=80&v=4"},"commit":{"message":"Fix warnings as of rust 1.73.0 (#42)\n\nAll workspace members are already edition 2021 (implying resolver 2). \r\nSetting it on workspace to silence warnings.\r\n\r\nFixed clippy recommendation regarding `filter_map`, see clippy lint\r\n`filter_map_bool_then` for details.","shortMessageHtmlLink":"Fix warnings as of rust 1.73.0 (#42)"}},{"before":"059f8eab76f0da5090439bad89ce9dccbe0b58ab","after":"992ca06c4013510083cc2486b1e482ed5c249b4b","ref":"refs/heads/master","pushedAt":"2023-04-24T16:27:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Release mcan/0.3.0 (#40)\n\n### Added\r\n- Add `Default` implementation for `OwnedInterruptSet` (#37)\r\n- Add InterruptSet::is_empty (#36)\r\n- Expand interrupt API (#34)\r\n\r\n### Changed\r\n- *Breaking:* Refine the interrupt system (#39)\r\n- Make `OwnedInterruptSet` `must_use` (#33)","shortMessageHtmlLink":"Release mcan/0.3.0 (#40)"}},{"before":"21989d178d1a8d389a15283bf89fb792346650f8","after":"059f8eab76f0da5090439bad89ce9dccbe0b58ab","ref":"refs/heads/master","pushedAt":"2023-04-24T15:34:24.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Release mcan/0.3.0 (#40)\n\n### Added\r\n- Add `Default` implementation for `OwnedInterruptSet` (#37)\r\n- Add InterruptSet::is_empty (#36)\r\n- Expand interrupt API (#34)\r\n\r\n### Changed\r\n- *Breaking:* Refine the interrupt system (#39)\r\n- Make `OwnedInterruptSet` `must_use` (#33)","shortMessageHtmlLink":"Release mcan/0.3.0 (#40)"}},{"before":null,"after":"cbcf16b31ddef8f1445d9bc56f8720de7c3e0db3","ref":"refs/heads/release","pushedAt":"2023-04-24T15:30:13.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Release mcan/0.3.0\n\n- Added\n - Add `Default` implementation for `OwnedInterruptSet` (#37)\n - Add InterruptSet::is_empty (#36)\n - Expand interrupt API (#34)\n\n- Changed\n - *Breaking:* Refine the interrupt system (#39)\n - Make `OwnedInterruptSet` `must_use` (#33)","shortMessageHtmlLink":"Release mcan/0.3.0"}},{"before":"650fce6f2fb3726eb64d8aee7c91b5ef52eab547","after":"9fdc459aa4babf23fb772bfd1fa928562b142e52","ref":"refs/heads/changelog","pushedAt":"2023-04-20T23:11:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"First attempt at the mcan's changelog","shortMessageHtmlLink":"First attempt at the mcan's changelog"}},{"before":null,"after":"650fce6f2fb3726eb64d8aee7c91b5ef52eab547","ref":"refs/heads/changelog","pushedAt":"2023-04-20T16:19:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"WiP: Adding changelogs","shortMessageHtmlLink":"WiP: Adding changelogs"}},{"before":"0c93c4faf02c615c4467cd7e870c3efa441db0f2","after":null,"ref":"refs/heads/split-enable","pushedAt":"2023-04-20T16:13:51.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"}},{"before":"ed2804ed7510b6092893541c0d69f0eca3924e25","after":null,"ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-20T16:13:51.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"}},{"before":"66ee08472e36e7adfcc948f43c51d51146139af5","after":null,"ref":"refs/heads/interrupt","pushedAt":"2023-04-20T16:13:51.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"}},{"before":"950a3b2f95b04a74bf2d1cf823a6d36d1dcb5c43","after":"21989d178d1a8d389a15283bf89fb792346650f8","ref":"refs/heads/master","pushedAt":"2023-04-20T15:45:07.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"nilfit","name":"Nils Fitinghoff","path":"/nilfit","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/108275985?s=80&v=4"},"commit":{"message":"Refine the interrupt system (#39)\n\nInstead of storing disabled interrupts in an `OwnedInterruptSet` (OIS)\r\nembedded in an `InterruptConfiguration`, OIS instance is provided as\r\npart of the initial, deconstructible `Can` struct. It could be split\r\ninto multiple OISes which therefore can be used as tokens that one can\r\npass to `InterruptConfiguration::{enable*, disable}` methods and get a\r\nnew OIS instance back.\r\n\r\nOIS anticipates an operation in typed-stated fashion, as well as in the\r\ndynamic way where type level details are erased.\r\n\r\n`OIS::split_flagged` is a new helper method that splits out new OIS\r\ncontaining flagged interrupts.\r\n\r\n`DynInterruptConfiguration` and `DynOwnedInterruptSet` were removed in\r\norder to simplify the change.\r\n\r\nThis PR is a breaking change.","shortMessageHtmlLink":"Refine the interrupt system (#39)"}},{"before":"8f9fb3b3c9a15f5ba2aef542c84e4b04dc547d31","after":"ed2804ed7510b6092893541c0d69f0eca3924e25","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-20T15:38:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Change interrupt module docs","shortMessageHtmlLink":"Change interrupt module docs"}},{"before":"8f274c688561760d2cd470e09d6f167e94bf3759","after":"8f9fb3b3c9a15f5ba2aef542c84e4b04dc547d31","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-20T15:31:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Apply fixes according to the comments","shortMessageHtmlLink":"Apply fixes according to the comments"}},{"before":"62608f06ee6253c5142d90355543820d3b42607d","after":"8f274c688561760d2cd470e09d6f167e94bf3759","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-19T19:13:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Add missing `CanConfigurable::interrupt_set` + fix doc-tests\n\n`CanConfigurable::interrupt_set` is necessary to enable reconfiguration\nof interrupts in \"configuration\" stage.","shortMessageHtmlLink":"Add missing CanConfigurable::interrupt_set + fix doc-tests"}},{"before":"be2ce351f406b85ff7545ba57a5197830e1f26e9","after":"62608f06ee6253c5142d90355543820d3b42607d","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-18T20:04:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Refine the interrupt system\n\nInstead of storing disabled interrupts in an `OwnedInterruptSet` (OIS)\nembedded in an `InterruptConfiguration`, OIS instance is provided as\npart of the initial, deconstructible `Can` struct. It could be split\ninto multiple OISes which therefore can be used as tokens that one\ncan pass to `InterruptConfiguration::{enable*, disable}` methods and\nget a new OIS instance back.\n\nOIS anticipates an operation in typed-stated fashion, as well as in the\ndynamic way where type level details are erased.\n\n`OIS::split_flagged` is a new helper method that splits out new OIS\ncontaining flagged interrupts.\n\n`DynInterruptConfiguration` and `DynOwnedInterruptSet` were removed\nin order to simplify the change.\n\nThis PR is a breaking change.","shortMessageHtmlLink":"Refine the interrupt system"}},{"before":"b6ed4f0da152d85b6a432fc6a7d2c04fd4833a96","after":"be2ce351f406b85ff7545ba57a5197830e1f26e9","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-18T20:03:27.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Refine the interrupt system\n\nInstead of storing disabled interrupts in an `OwnedInterruptSet` (OIS)\nembedded in an `InterruptConfiguration`, OIS instance is provided as\npart of the initial, deconstructible `Can` struct. It could be split\ninto multiple OISes which therefore can be used as tokens that one\ncan pass to `InterruptConfiguration::{enable*, disable}` methods and\nget a new OIS instance back.\n\nOIS anticipates an operation in typed-stated fashion, as well as in the\ndynamic way where type level details are erased.\n\n`OIS::split_flagged` is a new helper method that splits out new OIS\ncontaining flagged interrupts.\n\n`DynInterruptConfiguration` and `DynOwnedInterruptSet` were removed\nin order to simplify the change.\n\nThis PR is a breaking change.","shortMessageHtmlLink":"Refine the interrupt system"}},{"before":"1afad559c61a045e262338f7f610c4391da68cc5","after":"b6ed4f0da152d85b6a432fc6a7d2c04fd4833a96","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-18T20:00:49.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Refine the interrupt system\n\nInstead of storing disabled interrupts in an `OwnedInterruptSet` (OIS)\nembedded in an `InterruptConfiguration`, OIS instance is provided as\npart of the initial, deconstructible `Can` struct. It could be split\ninto multiple OISes which therefore can be used as tokens that one\ncan pass to `InterruptConfiguration::{enable*, disable}` methods and\nget a new OIS instance back.\n\nOIS anticipates an operation in typed-stated fashion, as well as in the\ndynamic way where type level details are erased.\n\n`OIS::split_flagged` is a new helper method that splits out new OIS\ncontaining flagged interrupts.\n\n`DynInterruptConfiguration` and `DynOwnedInterruptSet` were removed\nin order to simplify the change.\n\nThis PR is a breaking change.","shortMessageHtmlLink":"Refine the interrupt system"}},{"before":"d80f258a79d101f58569f17bfe287822676b1c04","after":"1afad559c61a045e262338f7f610c4391da68cc5","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-18T19:37:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"WiP","shortMessageHtmlLink":"WiP"}},{"before":"ba952dc4e9ec3a7a2935387b2c477eae2bfb78be","after":"d80f258a79d101f58569f17bfe287822676b1c04","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-18T18:56:42.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"WiP","shortMessageHtmlLink":"WiP"}},{"before":null,"after":"ba952dc4e9ec3a7a2935387b2c477eae2bfb78be","ref":"refs/heads/interrupt-rework","pushedAt":"2023-04-18T18:33:14.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"WiP","shortMessageHtmlLink":"WiP"}},{"before":"fce22d5c720033dcfa8c980a35966159885ab81b","after":"614ef76694a7d141e854d557532b628dfabc879f","ref":"refs/heads/undynification","pushedAt":"2023-04-18T13:55:25.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Remove `Dyn*` traits","shortMessageHtmlLink":"Remove Dyn* traits"}},{"before":"5bb4a5d858251fbaf20ab9ec1f452442165ac91f","after":"0c93c4faf02c615c4467cd7e870c3efa441db0f2","ref":"refs/heads/split-enable","pushedAt":"2023-04-18T13:53:48.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Refactor OIS::split and IC::enable APIs\n\nFallible `split` and `enable` API is inconvenient to use. It seems\nmore practical to ignore a request of unowned interrupts.\n\n`OIS::split_flagged` is a new helper method that splits out new OIS\ncontaining flagged interrupts.\n\nAll these changes should make dynamic enabling and disabling of\ninterrupts more convenient when only a mutable reference to the\noriginal OIS is held.\n\nThis PR is a major breaking change.","shortMessageHtmlLink":"Refactor OIS::split and IC::enable APIs"}},{"before":"55bcef11594bb41346415993e7b559afa9c001b8","after":null,"ref":"refs/heads/is-empty","pushedAt":"2023-04-18T13:53:19.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"}},{"before":null,"after":"5bb4a5d858251fbaf20ab9ec1f452442165ac91f","ref":"refs/heads/split-enable","pushedAt":"2023-04-18T13:52:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"glaeqen","name":"Gabriel Górski","path":"/glaeqen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/80407822?s=80&v=4"},"commit":{"message":"Refactor OIS::split and IC::enable APIs\n\nFallible `split` and `enable` API is inconvenient to use. It seems\nmore practical to ignore a request of unowned interrupts.\n\n`OIS::split_flagged` is a new helper method that splits out new OIS\ncontaining flagged interrupts.\n\nAll these changes should make dynamic enabling and disabling of\ninterrupts more convenient when only a mutable reference to the\noriginal OIS is held.\n\nThis PR is a major breaking change.","shortMessageHtmlLink":"Refactor OIS::split and IC::enable APIs"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEC-bw_gA","startCursor":null,"endCursor":null}},"title":"Activity · GrepitAB/mcan"}