{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":9909339,"defaultBranch":"main","name":"PyScada","ownerLogin":"pyscada","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2013-05-07T10:24:13.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/79193322?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1684839989.927212","currentOid":""},"activityList":{"items":[{"before":"4bc3b7305512519a32a5722117ab03244bd1fbcc","after":"5182dd33a77cf3cb52c832c3d061be096de2de7c","ref":"refs/heads/main","pushedAt":"2024-02-26T15:52:16.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"fix updating control item, pie, gauge, plot using timeline\n\nremove unused UPDATE_X_AXES_TIME_LINE_STATUS\n\nShow \"No data\" in chart and pie legend, control item and gauge if no\ndata for a variable in the selected time range","shortMessageHtmlLink":"fix updating control item, pie, gauge, plot using timeline"}},{"before":"7d6f53febe38b9245942fd81ba69788abc960f0f","after":"4bc3b7305512519a32a5722117ab03244bd1fbcc","ref":"refs/heads/main","pushedAt":"2024-02-22T14:54:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"clavay","name":null,"path":"/clavay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38041007?s=80&v=4"},"commit":{"message":"update theme validation and remove unused import","shortMessageHtmlLink":"update theme validation and remove unused import"}},{"before":"9c927accfdeeda9d0553c16b6639cbc6bce79b30","after":"7d6f53febe38b9245942fd81ba69788abc960f0f","ref":"refs/heads/main","pushedAt":"2024-02-22T13:44:27.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"processflowdiagram: execption when image not found","shortMessageHtmlLink":"processflowdiagram: execption when image not found"}},{"before":"352c11e0abf9062c8aea9bbef4bdeab292de5b26","after":"9c927accfdeeda9d0553c16b6639cbc6bce79b30","ref":"refs/heads/main","pushedAt":"2024-02-22T13:44:01.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"add migration file","shortMessageHtmlLink":"add migration file"}},{"before":"edc2e484e09b1d5dda0fe45b842335c34e08bb43","after":"352c11e0abf9062c8aea9bbef4bdeab292de5b26","ref":"refs/heads/main","pushedAt":"2024-02-16T18:21:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"admin: display variable color choosed in the select","shortMessageHtmlLink":"admin: display variable color choosed in the select"}},{"before":"ef9f132a02088954df1990910ce8d3b298278196","after":"edc2e484e09b1d5dda0fe45b842335c34e08bb43","ref":"refs/heads/main","pushedAt":"2024-02-16T18:20:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"default STATIC_URL with /\n\nif no STATIC_URL in settings, default should url be between /","shortMessageHtmlLink":"default STATIC_URL with /"}},{"before":"dafc0f4ec65c3313f64786c0735d7a55ab57b853","after":"ef9f132a02088954df1990910ce8d3b298278196","ref":"refs/heads/main","pushedAt":"2024-02-16T18:20:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"theme check using context to avoid TemplateSyntaxError","shortMessageHtmlLink":"theme check using context to avoid TemplateSyntaxError"}},{"before":"81b3e28baff3accb1a76bc8a415b59a1f025ed52","after":"dafc0f4ec65c3313f64786c0735d7a55ab57b853","ref":"refs/heads/main","pushedAt":"2024-02-16T18:19:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"add checks and exceptions to recorded data init","shortMessageHtmlLink":"add checks and exceptions to recorded data init"}},{"before":"a4026415a637aece641e02fec3d58666d0b1da05","after":"81b3e28baff3accb1a76bc8a415b59a1f025ed52","ref":"refs/heads/main","pushedAt":"2024-02-16T18:18:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"log while converting variable readed value to float if not None","shortMessageHtmlLink":"log while converting variable readed value to float if not None"}},{"before":"49ac0dde4b8036ea5a7a1fa007d45e757435264f","after":"a4026415a637aece641e02fec3d58666d0b1da05","ref":"refs/heads/main","pushedAt":"2024-02-13T16:01:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"clavay","name":null,"path":"/clavay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38041007?s=80&v=4"},"commit":{"message":"fix display value option transform data","shortMessageHtmlLink":"fix display value option transform data"}},{"before":"3c45c56d5a9c128fa249ff1e62771e7bc1ebf0c9","after":"49ac0dde4b8036ea5a7a1fa007d45e757435264f","ref":"refs/heads/main","pushedAt":"2024-02-13T10:21:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"fix high limit for UINT64","shortMessageHtmlLink":"fix high limit for UINT64"}},{"before":"f2866a5356a142e0826c0e0ececacf3d1e90111e","after":"3c45c56d5a9c128fa249ff1e62771e7bc1ebf0c9","ref":"refs/heads/main","pushedAt":"2024-02-13T07:03:46.000Z","pushType":"pr_merge","commitsCount":4,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"handler: add erase cache option in read data all\n\nin order to call various times read data all in a handler, allow to not\nerase the cached results","shortMessageHtmlLink":"handler: add erase cache option in read data all"}},{"before":"067f978b7fb1d8eceabf592310f3cb1cc95bc480","after":"f2866a5356a142e0826c0e0ececacf3d1e90111e","ref":"refs/heads/main","pushedAt":"2024-02-12T09:52:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"fix BP not exist while deleting a device","shortMessageHtmlLink":"fix BP not exist while deleting a device"}},{"before":"7d272b6ec6986e002969b25899ef56170ae61be2","after":"067f978b7fb1d8eceabf592310f3cb1cc95bc480","ref":"refs/heads/main","pushedAt":"2024-02-12T09:51:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"RecordedData: store uint64 as int64 shifted - unknown class as float\n\nuint64 are shifted by -9223372036854775808 = 2**63 to be stored as a\ndjango BigIntegerField","shortMessageHtmlLink":"RecordedData: store uint64 as int64 shifted - unknown class as float"}},{"before":"913337e043e5ed0462fca8e35897def8627a278d","after":"7d272b6ec6986e002969b25899ef56170ae61be2","ref":"refs/heads/main","pushedAt":"2024-02-06T14:17:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"generic function to populate inlines for device, variable, variablestate\n\nuse specified model form\nuse from the model : fk_name, FormSet, fieldsets, filter_horizontal,\nfilter_vertical, Form, formfield_for_foreignkey\n\nTodo : add other inline options (see\nhttps://docs.djangoproject.com/en/stable/ref/contrib/admin/#inlinemodeladmin-options)","shortMessageHtmlLink":"generic function to populate inlines for device, variable, variablestate"}},{"before":"fee7a10e34e93c800a9b0403e10109cec1da9504","after":"913337e043e5ed0462fca8e35897def8627a278d","ref":"refs/heads/main","pushedAt":"2024-02-06T14:16:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"remove unused function","shortMessageHtmlLink":"remove unused function"}},{"before":"e34e87dd4fd4cf041c21c1f0b6a1ef575fc58419","after":"fee7a10e34e93c800a9b0403e10109cec1da9504","ref":"refs/heads/main","pushedAt":"2024-02-06T14:15:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"fix pyscada home owner during install","shortMessageHtmlLink":"fix pyscada home owner during install"}},{"before":"215b55261bf381bb50088068b969c515575b0a9e","after":"e34e87dd4fd4cf041c21c1f0b6a1ef575fc58419","ref":"refs/heads/main","pushedAt":"2024-02-06T14:15:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"check if data before writing","shortMessageHtmlLink":"check if data before writing"}},{"before":"cd47101fc48af86ca9c0b4ee3a37f586599937d1","after":"215b55261bf381bb50088068b969c515575b0a9e","ref":"refs/heads/main","pushedAt":"2024-02-05T11:14:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"v0.8.2","shortMessageHtmlLink":"v0.8.2"}},{"before":"1d7653c82c10582f70e3fcd4d10e1ede120b11e0","after":"cd47101fc48af86ca9c0b4ee3a37f586599937d1","ref":"refs/heads/main","pushedAt":"2024-02-05T11:13:20.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"fix RecordedData bit length for int16 (#115)\n\n* fix RecordedData bit length for int16\r\n\r\nmust be <= 16\r\n\r\n* update RecordedData and RecordedDataOld value classes checks\r\n\r\nfrom django fields definition\r\nhttps://docs.djangoproject.com/en/stable/ref/models/fields/","shortMessageHtmlLink":"fix RecordedData bit length for int16 (#115)"}},{"before":"6efa7e7acfbef95d8abd8fffa32b4153429ed593","after":"1d7653c82c10582f70e3fcd4d10e1ede120b11e0","ref":"refs/heads/main","pushedAt":"2024-02-05T11:09:00.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"rewrite pyscada signals\n\npost_save or pre_delete for Variable, Scaling, DeviceHandler call the\npost_save signal for devices attached.\n\npost_save for device restart the background process of the device or if\nnot found, restart the background process of the protocol\n\npre_delete for device kill the background process of the device","shortMessageHtmlLink":"rewrite pyscada signals"}},{"before":"101a41db32a591bb50a1788e41c6696fe8b22212","after":"6efa7e7acfbef95d8abd8fffa32b4153429ed593","ref":"refs/heads/main","pushedAt":"2024-01-30T07:25:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"add log for exceptions","shortMessageHtmlLink":"add log for exceptions"}},{"before":"10ab5dc6e4f439a829a23357f0300777de423f8f","after":"101a41db32a591bb50a1788e41c6696fe8b22212","ref":"refs/heads/main","pushedAt":"2024-01-30T07:24:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"remove pass","shortMessageHtmlLink":"remove pass"}},{"before":"eab3f502dfc79c0bd2068a11d6362d1149d71e13","after":"10ab5dc6e4f439a829a23357f0300777de423f8f","ref":"refs/heads/main","pushedAt":"2024-01-30T07:23:49.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"remove unnecessary script\n\nmoved to the pyscada-operations plugin","shortMessageHtmlLink":"remove unnecessary script"}},{"before":"ff99126129811ad60545a64a97bb915e9cd99526","after":"eab3f502dfc79c0bd2068a11d6362d1149d71e13","ref":"refs/heads/main","pushedAt":"2024-01-30T07:23:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"fix variable property as variable bit for MultiDeviceDAQProces","shortMessageHtmlLink":"fix variable property as variable bit for MultiDeviceDAQProces"}},{"before":"514672f65d57885de16e269e5c11c6a8bf9f40ec","after":"ff99126129811ad60545a64a97bb915e9cd99526","ref":"refs/heads/main","pushedAt":"2024-01-29T14:17:21.000Z","pushType":"pr_merge","commitsCount":9,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"log ProgrammingError and OperationalError while populating models","shortMessageHtmlLink":"log ProgrammingError and OperationalError while populating models"}},{"before":"2968d9f6031d5eec47aa87b026aa6f0e5ef03627","after":"514672f65d57885de16e269e5c11c6a8bf9f40ec","ref":"refs/heads/main","pushedAt":"2024-01-12T10:26:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"clavay","name":null,"path":"/clavay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38041007?s=80&v=4"},"commit":{"message":"add class panel-title control panel","shortMessageHtmlLink":"add class panel-title control panel"}},{"before":"688242ca29fcd1029224219f5d2a8b32427d13a2","after":"2968d9f6031d5eec47aa87b026aa6f0e5ef03627","ref":"refs/heads/main","pushedAt":"2023-12-30T18:18:07.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"remove empty line","shortMessageHtmlLink":"remove empty line"}},{"before":"79b98d00107caa436181cb6638085743271beea4","after":"688242ca29fcd1029224219f5d2a8b32427d13a2","ref":"refs/heads/main","pushedAt":"2023-12-19T15:08:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"clavay","name":null,"path":"/clavay","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/38041007?s=80&v=4"},"commit":{"message":"add readthedocs config file\n\nfrom : https://docs.readthedocs.io/en/stable/config-file/","shortMessageHtmlLink":"add readthedocs config file"}},{"before":"8972f71dc1c6f7dc09b60d28d3ccbcbaa9aea009","after":"79b98d00107caa436181cb6638085743271beea4","ref":"refs/heads/main","pushedAt":"2023-12-02T08:10:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"trombastic","name":"Martin Schröder","path":"/trombastic","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1811998?s=80&v=4"},"commit":{"message":"fix difference percent period calculation","shortMessageHtmlLink":"fix difference percent period calculation"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEBZCgMwA","startCursor":null,"endCursor":null}},"title":"Activity · pyscada/PyScada"}