{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":17739045,"defaultBranch":"master","name":"localsettings","ownerLogin":"victronenergy","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2014-03-14T07:50:33.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/6464617?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718008547.0","currentOid":""},"activityList":{"items":[{"before":"73cc296374bd1c03ee173ad439144dfd143493de","after":"e938ec921e080a6181e731bce9156608d790d1fc","ref":"refs/heads/security-settings","pushedAt":"2024-06-12T09:32:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"restore the password file / update the Security Profile default value\n\nRestore to default will erase (almost) all files from /data including settings and\npasswords. For newer devices the default password must be restored. For older devices\nwith no screen attached the Security Profile is set to Unsecured and an empty password\nfile is created.","shortMessageHtmlLink":"restore the password file / update the Security Profile default value"}},{"before":"a9b5d7428391929820e543231e3b556959e87703","after":"73cc296374bd1c03ee173ad439144dfd143493de","ref":"refs/heads/security-settings","pushedAt":"2024-06-11T19:35:45.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"restore the password file / update the Security Profile default value\n\nRestore to default will erase (almost) all files from /data including settings and\npasswords. For newer devices the default password must be restored. For older devices\nwith no screen attached the Security Profile is set to Unsecured and an empty password\nfile is created.","shortMessageHtmlLink":"restore the password file / update the Security Profile default value"}},{"before":"c96eb335af8a716163a24ffcefb6c0d816f2f9a8","after":"a9b5d7428391929820e543231e3b556959e87703","ref":"refs/heads/security-settings","pushedAt":"2024-06-11T13:46:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"if no password is set, change the Secure Profile to Indeterminate","shortMessageHtmlLink":"if no password is set, change the Secure Profile to Indeterminate"}},{"before":"d48498b06f620bcc2f6d1bd6e3ae5982fab567e6","after":"c96eb335af8a716163a24ffcefb6c0d816f2f9a8","ref":"refs/heads/security-settings","pushedAt":"2024-06-11T13:33:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"if no password is set, change the Secure Profile to Indeterminate","shortMessageHtmlLink":"if no password is set, change the Secure Profile to Indeterminate"}},{"before":"b4ad61b5b8becc40509935d706f537f4b5b4364b","after":"d48498b06f620bcc2f6d1bd6e3ae5982fab567e6","ref":"refs/heads/security-settings","pushedAt":"2024-06-11T07:30:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"make sure there is no password file when LAN services should be unavailable","shortMessageHtmlLink":"make sure there is no password file when LAN services should be unava…"}},{"before":"13a8e37fd07c953998e073f4a5bd270f92a7c979","after":"b4ad61b5b8becc40509935d706f537f4b5b4364b","ref":"refs/heads/security-settings","pushedAt":"2024-06-10T14:53:31.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"restore the password file / Security Profile if it is missing\n\nRestore to default will erase (almost) all files from /data including settings and\npasswords. For newer devices the default password must be restored. For older devices\nwith no screen attached the Security Profile is set to Unsecured and an empty password\nfile is created.","shortMessageHtmlLink":"restore the password file / Security Profile if it is missing"}},{"before":"639c9580c2d77b4d8a3d5158d6b8d3b44f435e4a","after":"13a8e37fd07c953998e073f4a5bd270f92a7c979","ref":"refs/heads/security-settings","pushedAt":"2024-06-10T10:13:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"bump the settings version number","shortMessageHtmlLink":"bump the settings version number"}},{"before":null,"after":"639c9580c2d77b4d8a3d5158d6b8d3b44f435e4a","ref":"refs/heads/security-settings","pushedAt":"2024-06-10T08:35:47.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"bump the settings version number","shortMessageHtmlLink":"bump the settings version number"}},{"before":"827056ae74047ad53a148feac017268f02ab2dfb","after":"ccbedcf6274924a0c677ca9a2c0c1d0755036460","ref":"refs/heads/thiemo/ForceValue","pushedAt":"2023-10-25T11:58:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ThiemoVanEngelen","name":"Thiemo van Engelen","path":"/ThiemoVanEngelen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8441712?s=80&v=4"},"commit":{"message":"Add tests for the forceValue parameter","shortMessageHtmlLink":"Add tests for the forceValue parameter"}},{"before":"35584d2ec3cc5bba25ad89a9e81953d8665f72c9","after":"b33b2f00b23a014626ee8dc22d8347a5e5558fea","ref":"refs/heads/master","pushedAt":"2023-10-23T13:17:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"drop support for replaces\n\nAddSettings could replace an old device, but it was never used and even\nbroken until recently. So drop it for now, it becomes weird if you can\nreplace and change class (which will be added soon) at the same time.\nEspecially if there are now actual users of it.","shortMessageHtmlLink":"drop support for replaces"}},{"before":"4c0db1840cca9c60dfd136c3edc53b8d3ce1002f","after":"827056ae74047ad53a148feac017268f02ab2dfb","ref":"refs/heads/thiemo/ForceValue","pushedAt":"2023-10-23T13:03:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ThiemoVanEngelen","name":"Thiemo van Engelen","path":"/ThiemoVanEngelen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8441712?s=80&v=4"},"commit":{"message":"Add tests for the forceValue parameter","shortMessageHtmlLink":"Add tests for the forceValue parameter"}},{"before":"203119db8992dcf8388092853867785be589376a","after":"4c0db1840cca9c60dfd136c3edc53b8d3ce1002f","ref":"refs/heads/thiemo/ForceValue","pushedAt":"2023-10-23T08:56:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ThiemoVanEngelen","name":"Thiemo van Engelen","path":"/ThiemoVanEngelen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8441712?s=80&v=4"},"commit":{"message":"support forceValue argument on AddSettings\n\nWhen this is true'ish, it forces the value to become the same as\ndefault, even when a value has already been set. For ClassAndVrmInstance\nsettings, the instance will be adjusted such that it returns a free\ninstance.","shortMessageHtmlLink":"support forceValue argument on AddSettings"}},{"before":null,"after":"203119db8992dcf8388092853867785be589376a","ref":"refs/heads/thiemo/ForceValue","pushedAt":"2023-10-23T08:53:38.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ThiemoVanEngelen","name":"Thiemo van Engelen","path":"/ThiemoVanEngelen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8441712?s=80&v=4"},"commit":{"message":"support forceValue argument on AddSettings\n\nWhen this is true'ish, it forces the value to become the same as\ndefault, even when a value has already been set. For ClassAndVrmInstance\nsettings, the instance will be adjusted such that it returns a free\ninstance.","shortMessageHtmlLink":"support forceValue argument on AddSettings"}},{"before":"1523c69549c3a8d5ee992e8ded3f758e260d0d0a","after":"35584d2ec3cc5bba25ad89a9e81953d8665f72c9","ref":"refs/heads/master","pushedAt":"2023-10-19T09:49:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"localsettings v1.58","shortMessageHtmlLink":"localsettings v1.58"}},{"before":"4dc23a98c0c7785fe7ecc566e182bfe43e1bda33","after":"1523c69549c3a8d5ee992e8ded3f758e260d0d0a","ref":"refs/heads/master","pushedAt":"2023-10-13T09:39:42.000Z","pushType":"push","commitsCount":10,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"v1.57","shortMessageHtmlLink":"v1.57"}},{"before":"3a26a73d04451d1af9b07e03129b1f3d9c3934b2","after":"4dc23a98c0c7785fe7ecc566e182bfe43e1bda33","ref":"refs/heads/master","pushedAt":"2023-09-28T14:36:11.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"test: enable float-no-min-max test","shortMessageHtmlLink":"test: enable float-no-min-max test"}},{"before":"5bb76fd311ca02e57bd5c73af0ccf0e60f0a780e","after":"3a26a73d04451d1af9b07e03129b1f3d9c3934b2","ref":"refs/heads/master","pushedAt":"2023-06-30T15:17:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"v1.56","shortMessageHtmlLink":"v1.56"}},{"before":"b8886d4176c3592a864559cd79d40580ee2b8b42","after":"5bb76fd311ca02e57bd5c73af0ccf0e60f0a780e","ref":"refs/heads/master","pushedAt":"2023-06-30T13:45:20.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"fix the warning when a class cannot be determined\n\nThe code to determine the class was changed, but the error path was not\nupdated along. This fixes that.","shortMessageHtmlLink":"fix the warning when a class cannot be determined"}},{"before":"3d88581c430403ecd049e9adba68f2fb2723462b","after":null,"ref":"refs/heads/jeroen/vrm-instances","pushedAt":"2023-06-29T11:24:47.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"}},{"before":"3da3fc77925327986bfdcf3a8ff92c3ebfca809e","after":"b8886d4176c3592a864559cd79d40580ee2b8b42","ref":"refs/heads/master","pushedAt":"2023-06-29T11:24:28.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"v1.55","shortMessageHtmlLink":"v1.55"}},{"before":"890cc2fde3493809bd00f8168a8ad761279d6b8a","after":"3d88581c430403ecd049e9adba68f2fb2723462b","ref":"refs/heads/jeroen/vrm-instances","pushedAt":"2023-06-28T19:55:25.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"bump settingsVersion","shortMessageHtmlLink":"bump settingsVersion"}},{"before":"5d2376011a8c491722c627fd4424f94c040b74af","after":"890cc2fde3493809bd00f8168a8ad761279d6b8a","ref":"refs/heads/jeroen/vrm-instances","pushedAt":"2023-06-28T19:50:58.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"bump settingsVersion","shortMessageHtmlLink":"bump settingsVersion"}},{"before":null,"after":"5d2376011a8c491722c627fd4424f94c040b74af","ref":"refs/heads/jeroen/vrm-instances","pushedAt":"2023-06-28T19:47:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"},"commit":{"message":"bump settingsVersion","shortMessageHtmlLink":"bump settingsVersion"}},{"before":"c1fd2d8eb2b9b194b12795fd4b14df3bf67c5b3c","after":"3da3fc77925327986bfdcf3a8ff92c3ebfca809e","ref":"refs/heads/master","pushedAt":"2023-06-27T10:36:22.281Z","pushType":"push","commitsCount":1,"pusher":{"login":"izak","name":"Izak Burger","path":"/izak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/851549?s=80&v=4"},"commit":{"message":"v1.54","shortMessageHtmlLink":"v1.54"}},{"before":"36c75b2021ed6f7f2cfc0adf38e7fee62921d6a3","after":"c1fd2d8eb2b9b194b12795fd4b14df3bf67c5b3c","ref":"refs/heads/master","pushedAt":"2023-06-27T10:35:33.375Z","pushType":"push","commitsCount":1,"pusher":{"login":"izak","name":"Izak Burger","path":"/izak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/851549?s=80&v=4"},"commit":{"message":"improve fischerpanda migration\n\nWhen migrating FischerPanda settings to Generator1, there is a\npossibility that the setting might not exist, and crashing and\nstarting with default settings is not a good result in that case.","shortMessageHtmlLink":"improve fischerpanda migration"}},{"before":"4173dd76bf52baaff597f3203f2024856c46acd8","after":null,"ref":"refs/heads/p3","pushedAt":"2023-06-08T13:21:18.571Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"jhofstee","name":null,"path":"/jhofstee","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1315205?s=80&v=4"}},{"before":"865e2744e7b4b583ae7b2b65d07269d0f5a24447","after":"36c75b2021ed6f7f2cfc0adf38e7fee62921d6a3","ref":"refs/heads/master","pushedAt":"2023-06-01T13:46:06.516Z","pushType":"push","commitsCount":2,"pusher":{"login":"izak","name":"Izak Burger","path":"/izak","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/851549?s=80&v=4"},"commit":{"message":"v1.53","shortMessageHtmlLink":"v1.53"}},{"before":"111aa8205220e15c89d03fb548e043e371bd74ae","after":"11eb46d6fa0e9019dbf75acf364a7659dd9f721f","ref":"refs/heads/thiemo/ClassAndVrmInstanceFixes","pushedAt":"2023-05-26T10:03:29.190Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"ThiemoVanEngelen","name":"Thiemo van Engelen","path":"/ThiemoVanEngelen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8441712?s=80&v=4"},"commit":{"message":"support class changes in the default value of a ClassAndVrmInstance\n\nvelib offers a function to fetch the device instance from localsettings.\nThis always uses AddSettings and the default contains the requested\nclass and instance. It was however never properly supported that this\nwould change, for example when the monitor mode of a SmartShunt is\nchanged. Localsettings would only update the default, but return the\nexisting value, which would contain the wrong class. As the velib code\nonly checked the instance and not the class that was returned, this\ncould cause multiple services to use the same instance.\n\nWith this commit, localsettings checks whether the class of the provided\ndefault is different from the current value and if so, changes the value\nto the new class and provides a proper unique instance for the new\nclass.","shortMessageHtmlLink":"support class changes in the default value of a ClassAndVrmInstance"}},{"before":null,"after":"111aa8205220e15c89d03fb548e043e371bd74ae","ref":"refs/heads/thiemo/ClassAndVrmInstanceFixes","pushedAt":"2023-05-17T15:18:21.531Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ThiemoVanEngelen","name":"Thiemo van Engelen","path":"/ThiemoVanEngelen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8441712?s=80&v=4"},"commit":{"message":"support class changes in the default value of a ClassAndVrmInstance\n\nvelib offers a function to fetch the device instance from localsettings.\nThis always uses AddSettings and the default contains the requested\nclass and instance. It was however never properly supported that this\nwould change, for example when the monitor mode of a SmartShunt is\nchanged. Localsettings would only update the default, but return the\nexisting value, which would contain the wrong class. As the velib code\nonly checked the instance and not the class that was returned, this\ncould cause multiple services to use the same instance.\n\nWith this commit, localsettings checks whether the class of the provided\ndefault is different from the current value and if so, changes the value\nto the new class and provides a proper unique instance for the new\nclass.","shortMessageHtmlLink":"support class changes in the default value of a ClassAndVrmInstance"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEYx5sRAA","startCursor":null,"endCursor":null}},"title":"Activity · victronenergy/localsettings"}