Scripthook errors

[17:03:29] [DEBUG] Created script domain 'ScriptDomain_7BE1C460'.
[17:03:29] [DEBUG] Loading scripts from 'C:\Program Files (x86)\Steam\steamapps\common\Grand Theft Auto V\scripts' into script domain 'ScriptDomain_7BE1C460' ...
[17:03:31] [ERROR] Failed to compile 'Airlines.cs' with 45 error(s):
   at line 62: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 351: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 446: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 576: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 579: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 600: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 603: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 617: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 620: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 645: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 648: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 672: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 675: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 869: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
   at line 894: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
[17:03:33] [DEBUG] Successfully compiled 'Metric_Speedometer.cs'.
[17:03:33] [DEBUG] Found 0 script(s) in 'Metric_Speedometer.cs'.
[17:03:33] [DEBUG] Found 0 script(s) in 'MapEditor.dll'.
[17:03:33] [DEBUG] Found 0 script(s) in 'NativeUI.dll'.
[17:03:33] [DEBUG] Found 0 script(s) in 'ScriptHookVDotNet.dll'.
[17:04:04] [DEBUG] Unloading script domain 'ScriptDomain_7BE1C460' ...
[17:04:04] [DEBUG] Stopping 0 script(s) ...
[17:04:04] [DEBUG] Deleted script domain 'ScriptDomain_7BE1C460'.
[17:04:04] [DEBUG] Created script domain 'ScriptDomain_E722F49A'.
[17:04:04] [DEBUG] Loading scripts from 'C:\Program Files (x86)\Steam\steamapps\common\Grand Theft Auto V\scripts' into script domain 'ScriptDomain_E722F49A' ...
[17:04:05] [ERROR] Failed to compile 'Airlines.cs' with 45 error(s):
   at line 62: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 351: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 446: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 576: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 579: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 600: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 603: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 617: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 620: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 645: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 648: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 672: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 675: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 869: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
   at line 894: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
[17:04:05] [DEBUG] Successfully compiled 'Metric_Speedometer.cs'.
[17:04:06] [DEBUG] Found 0 script(s) in 'Metric_Speedometer.cs'.
[17:04:06] [DEBUG] Found 0 script(s) in 'MapEditor.dll'.
[17:04:06] [DEBUG] Found 0 script(s) in 'NativeUI.dll'.
[17:04:06] [DEBUG] Found 0 script(s) in 'ScriptHookVDotNet.dll'.
[20:11:08] [DEBUG] Created script domain 'ScriptDomain_635AC260'.
[20:11:08] [DEBUG] Loading scripts from 'C:\Program Files (x86)\Steam\steamapps\common\Grand Theft Auto V\scripts' into script domain 'ScriptDomain_635AC260' ...
[20:11:10] [ERROR] Failed to compile 'Airlines.cs' with 45 error(s):
   at line 62: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 351: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 446: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 576: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 579: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 600: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 603: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 617: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 620: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 645: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 648: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 672: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 675: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 869: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
   at line 894: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
[20:11:11] [DEBUG] Successfully compiled 'Metric_Speedometer.cs'.
[20:11:12] [DEBUG] Found 0 script(s) in 'Metric_Speedometer.cs'.
[20:11:12] [DEBUG] Found 0 script(s) in 'MapEditor.dll'.
[20:11:12] [DEBUG] Found 0 script(s) in 'NativeUI.dll'.
[20:11:12] [DEBUG] Found 0 script(s) in 'ScriptHookVDotNet.dll'.
[20:11:46] [DEBUG] Unloading script domain 'ScriptDomain_635AC260' ...
[20:11:46] [DEBUG] Stopping 0 script(s) ...
[20:11:46] [DEBUG] Deleted script domain 'ScriptDomain_635AC260'.
[20:11:46] [DEBUG] Created script domain 'ScriptDomain_4CF8D3A0'.
[20:11:46] [DEBUG] Loading scripts from 'C:\Program Files (x86)\Steam\steamapps\common\Grand Theft Auto V\scripts' into script domain 'ScriptDomain_4CF8D3A0' ...
[20:11:47] [ERROR] Failed to compile 'Airlines.cs' with 45 error(s):
   at line 62: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 351: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 446: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 576: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 579: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 600: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 603: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 617: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 620: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 645: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 648: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 672: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 675: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 869: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
   at line 894: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
[20:11:48] [DEBUG] Successfully compiled 'Metric_Speedometer.cs'.
[20:11:48] [DEBUG] Found 0 script(s) in 'Metric_Speedometer.cs'.
[20:11:48] [DEBUG] Found 0 script(s) in 'MapEditor.dll'.
[20:11:48] [DEBUG] Found 0 script(s) in 'NativeUI.dll'.
[20:11:48] [DEBUG] Found 0 script(s) in 'ScriptHookVDotNet.dll'.
[20:11:50] [DEBUG] Unloading script domain 'ScriptDomain_4CF8D3A0' ...
[20:11:50] [DEBUG] Stopping 0 script(s) ...
[20:11:50] [DEBUG] Deleted script domain 'ScriptDomain_4CF8D3A0'.
[20:11:50] [DEBUG] Created script domain 'ScriptDomain_CBFA9AA4'.
[20:11:50] [DEBUG] Loading scripts from 'C:\Program Files (x86)\Steam\steamapps\common\Grand Theft Auto V\scripts' into script domain 'ScriptDomain_CBFA9AA4' ...
[20:11:51] [ERROR] Failed to compile 'Airlines.cs' with 45 error(s):
   at line 62: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 339: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 351: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 360: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 361: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 362: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 363: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 364: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 383: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 384: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 385: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 386: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 387: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 388: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 435: 'GTA.Menu' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 446: 'GTA.Viewport' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 576: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 579: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 600: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 603: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 617: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 620: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 645: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 648: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 653: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 672: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 675: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 680: 'GTA.MenuButton' is obsolete: 'The built-in menu implementation is obsolete and will be removed soon. Please consider using external alternatives instead.'
   at line 869: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
   at line 894: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
[20:11:52] [DEBUG] Successfully compiled 'Metric_Speedometer.cs'.
[20:11:52] [DEBUG] Found 0 script(s) in 'Metric_Speedometer.cs'.
[20:11:52] [DEBUG] Found 0 script(s) in 'MapEditor.dll'.
[20:11:52] [DEBUG] Found 0 script(s) in 'NativeUI.dll'.
[20:11:52] [DEBUG] Found 0 script(s) in 'ScriptHookVDotNet.dll'.

Errors:
at line 869: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'
at line 894: 'GTA.Native.Hash' does not contain a definition for '_0xCFC8BE9A5E1FE575'

The hash got a name in https://github.com/crosire/scripthookvdotnet/commit/c28ad7bf9e373373f21d0312c1f5817f48d817da#diff-d190ca9b54bc33b2369606bc56482cecL1214
You need to use  _SET_VEHICLE_LANDING_GEAR

We should never have added the "_0x...." hashes ... it's more obvious to write "(Hash)0x..." and we wouldn't have to deal with compatibility issues now.

Added all the "_0x..." members to the hash enum in 98f9ecffdc8370a2c648a9e0ec524b43c911d761. That should solve those issues with old scripts. As for the other warning, the message should be pretty clear. If you want to use the script anyway, compile it to a DLL, because when using plain script files, warnings are handled as errors and compilation fails.


[UX]/ Reloading in case of search misspelling

Problem:  when user searches for a specific product, if he/she misspells even one letter, the user has to wait for reloading of whole page while going back.
https://github.com/Anandsg/Hungry-hero/assets/127688631/d2b1f2f7-2a35-4150-81eb-76ab0c201812

@Anandsg  please add hacktoberfest tag and assign this to me


ERROR: Routing_missing_exception - Parent-Child Relationship

Hi, I have been trying to set up a parent-child relationship in ES for a while now and have thoroughly searched through issues, and documentation to set-up this relationship. I have referred to the Integration Test, and this issue seems to be most similar Issue 685, and I have not been able to figure it out.
When I import my model I get this error:
{"index":{"_index":"_development","_type":"candidate","_id":"62","status":400,"error":{"type":"routing_missing_exception","reason":"routing is required for [_development]/[candidate]/[62]","index":"_development"}}}
Here is my code for my model.
`class Candidate < ActiveRecord::Base
include Elasticsearch::Model
include Elasticsearch::Model::Callbacks
index_name ["test", Rails.env].join('_')
mapping _parent: { type: 'company'}, _routing: { required: true } do
  indexes :id, type: 'integer'
  indexes :first_name, type: 'string'
  indexes :last_name, type: 'string'
  indexes :email, type: 'string'
  indexes :manually_created, type: 'boolean'
  indexes :full_name, type: "string"
  indexes :rating, type: "integer"
  indexes :created_at, type: "date"
end

after_commit lambda { __elasticsearch__.index_document(routing: company_id, parent: company_id) }, on: :create
after_commit lambda { __elasticsearch__.update_document(routing: company_id, parent: company_id) }, on: :update
after_commit lambda { __elasticsearch__.delete_document(routing: company_id, parent: company_id) }, on: :destroy
end`

Hi @loganh0522
Were you able to resolve this issue? We've updated the parent-child test here to work with Elasticsearch 6, for your reference.
Otherwise, I would suggest checking out: https://discuss.elastic.co/

Hi @loganh0522, I'm going to close this issue. Please open a new one if you have further questions. Thanks


investigate automation of "REST service submit-api"

Scope:

test the Rest API --> https://github.com/input-output-hk/cardano-node/tree/master/cardano-submit-api

related to:

https://github.com/input-output-hk/cardano-node/issues/3972


⚠ Mobitopup has degraded performance

In 3011db2, Mobitopup (https://napcard.voz.tech) experienced degraded performance:

HTTP code: 200
Response time: 4644 ms

Resolved: Mobitopup performance has improved in 51c56dc.


[ADD] styles for nft avatar

This commit adds nft avatar styles to the navbar

Replace the image url to use it
To switch between normal avatar and nft avatar set the pfpIsNFT variable true or false respectively

https://github.com/RocketChat/RC4Community/blob/13b5926cfb2029af283bf95bc6995f41fa1ffd73/app/components/auth/rocketchat/ui/RocketChatAuthMenuButton.js#L35-L41
By what, image URL needs to be replaced with?
@demonicirfan may I get help with that.

I want to work on this issue. Can you assign me this issue?

Hey @TusharMinche
Thanks for your interest. Sorry, but this is already done in #193. However, please feel free to try out the other open issues.

if this issue is solved please close this issue

Done in #193


Add iteration

Need some method of iterating over keys.
Some potential ideas here: https://github.com/facebook/rocksdb/wiki/RocksDB-Overview

An initial version could only allow this if the key is in L1+ of the tree. Otherwise we return a failure condition. This guarantees iteration across that level of the SST and would be friendly for applications such as time series data.

More ideas on how this could work:

Prevent merge while iterating and defer a restoration after iteration is complete. This allows the order of the records to remain stable.
Do not allow iteration from L0 since records are not in order. Return false or such if iteration is not currently allowed for a key.
Pass a first-order function to Iterate. If the function returns false or such, break out of loop.
Iterate to array? Perhaps not needed initially.
Async iteration? Also may not be needed in v1.
Need to have minimal locking while iterating. Since SST's are immutable locking is really only required when enabling/disabling a merge flag.


[smi] fix logic for calculating weights

https://github.com/deislabs/smi-adapter-istio/issues/12

there's a larger discussion that needs to be had first around weights at the spec level https://github.com/deislabs/smi-spec/issues/65

we decided to refactor weights so that they're ints instead of strings. PR merged on spec.
Fixed weight logic. PR in review.


preserve nil slices and maps

Hi,
Here is a fix to preserve nil slices and maps when deep copying instead of instantiating empty slices and maps.

Thanks, I appreciate your contribution!


fix: update welcome email

https://trello.com/c/AALNB6TU/1564-update-copy-on-the-invite-email-template-must

any way you could test it?

We need to deploy it to prod, I think.


build: Add update kube-vip manifests script and use kube-vip 0.8.0

Cherry-picked the commit from this PR into https://github.com/nutanix-cloud-native/cluster-api-runtime-extensions-nutanix/pull/558 since it needed a rebase.
Closing, but let feel free to force push to here and the other branch if you would like to reopen this PR.


chore(docs): update joinNetwork docs

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 80.66%. Comparing base (7eea22d) to head (db3bdec).
Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #66   +/-   ##
=======================================
  Coverage   80.66%   80.66%
=======================================
  Files          19       19
  Lines         450      450
  Branches       90       91    +1
=======================================
  Hits          363      363
+ Misses         87       86    -1
- Partials        0        1    +1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

:tada: This PR is included in version 1.0.5 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


NFTs no longer showing, using cloud, did not touch app in about a month

Our users can no longer see their nft's in the app. We have not updated the app in over a month, and we get this error from our users.
XoneOfficial2
v0.0.383
Android and iPhone
Get all logs in your terminal: Learn about Moralis CLI
2022-08-08T20:45:31.580Z - Error: chain should not be empty, chain must be a valid enum value,
at fetch (/moralis-server/lib/cloud-code/plugins/helpers/apiUtils.js:218:26)
at runMicrotasks ()
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at async Object.Moralis.Web3API.. [as getNFTsForContract] (/moralis-server/lib/cloud-code/plugins/convenience/web3Api.js:31:81)
at async eval (eval at customUserPlugin (/moralis-server/cloud/main.js:157:21), :1:576)
2022-08-08T20:45:31.577Z - Failed running cloud function getNFTsForContract for user qlv9xj9I8Zh2mHTICHgfRaRw with:
Input: {"arr1":{"address":"0x573e5840d103d79b0285f16af64e23bc78278e54","token_address":"0x9Ec46a3dd227Fd5977C7F1997C043122a703FF2A","chainList":"eth"}}
Error: {"message":"chain should not be empty, chain must be a valid enum value, ","code":141}
2022-08-08T20:23:58.119Z - Error: Invalid function: "pluginsReady"
at handleCloudFunction (/moralis-server/lib/Routers/FunctionsRouter.js:201:13)
at /moralis-server/lib/PromiseRouter.js:85:20
at processTicksAndRejections (node:internal/process/task_queues:96:5)

One of our developers noted this was the solution "Needed to change the name of the argument passed from "chainList" to "chain"."


Issues with Appearances

When importing the files into 3DCityDB, there is an error with finding the appearance files. This is an issue with all the models except 'DEBY_LOD3_4906970' and 'DEBY_LOD3_4906972'

i added the appearance files to each Building except for the ones that were working, let me know if that worked

actually, now i've added also the appearences folder for the buildings DEBY_LOD3_4906970 and DEBY_LOD3_4906972, could u please check if they are still working?????

sorry, i now corrected the names, so it should work :)

Perfect, I just performed an import with the updated dataset and everything works. Great, thank you @juebarbosa !
@MedhiniH Can you confirm that your issue is resolved?

@beneschwab, @juebarbosa  - I will check and let you know! :)


publish<EMAIL_ADDRESS>

Requested by: @loewenheim
Merge target: (default)
Quick links:

View changes
View check runs

Assign the accepted label to this issue to approve the release.
Leave the #retract comment under this issue to retract the release (original issuer only).
Targets

[x] gcs
[x] npm
[x] brew
[x] github
[x] registry
[x] pypi
[x] sentry-pypi

Targets marked with a checkbox have already been executed.  Administrators can manually tick a checkbox to force craft to skip it.

Closed as discussed with Sebastian


Default JSONRespond StatusCode generic arg

What is the feature you are proposing?
Right now, if I want to specify the generic for context.json, I have to specify both types.
return c.json<GetBlogDTO[], StatusCode>(sorted);

Is it possible to default StatusCode so I can just specify the data type?
return c.json<GetBlogDTO[]>(sorted);

Would it be updating this to default U to StatusCode?

Thanks for the suggestion.
I think it is very good.
I will work on it.

nice 👍


[Question/Proposal] Adding tests for invalid JSON schemas

Currently, all test files contain valid schema and are within specification. For some validators, there are MUST constrains in the specification such as in minItems where the integer must be a non-negative integer.
Can there be tests for invalid schemas ensuring these constrains are met, for example: {"minItems": -1}, and ensuring that the implementation recognizes that this is invalid.
Proposed starting format for discussion: adding in valid_schema:
[
    {
        "description": "minItems validation",
        "schema": {"minItems": 1},
        "valid_schema": true,
        "tests": [
            {
                "description": "longer is valid",
                "data": [1, 2],
                "valid": true
            }
        ]
    },
    {
        "description": "minItems invalid schema",
        "schema": {"minItems": -1},
        "valid_schema": false,
        "tests": []
    }
]

Trying not to change the existing format too much to not break exiting test.

We do have some tests that use the meta-schema to validate the schema (e.g. 2020-12's $defs tests).
This is actually the preferred way to do this because some implementations can't deserialize invalid-schema JSON into their schema models (because they're invalid).
I think these would be a welcome addition to the test suite, but before you go about writing a bunch of tests, let some other core members chime in.

Thank you for the clarification. 🚀 I would be happy to help out on #354. Do you have a vision for breaking this up? Would it be a PR for each keyword? Could I suggest the meta-schema tests be added as a separate file and not part of the main keyword test files as I haven't implemented $ref yet. For example, adding a meta/ folder or meta-*.json files as discussed in the #354 PR.

Yeah I think we definitely need tests for "parsing JSON Schema documents" and not just "validating instances against a schema". There's at least a few that we can add right now, like the examples that you gave, and other recognized keyword names with undefined values/arguments.
In theory, an implementation that passes all of the validity tests would also pass schema valid/invalid tests, but in practice implementations often handle schemas and instances differently, and meta-schemas only cover special cases of validating schemas, they can't really test this generally.
Finally there are some schemas that authors MUST NOT write, but this doesn't always mean the validator must produce an error. And there are some schemas that ought to be invalid, but erroring isn't actually required. What qualifies as a valid or invalid schema is not completely defined, so I am paying a lot of attention to this and trying to figure out what is needed from the spec itself.

Do you have a vision for breaking this up? Would it be a PR for each keyword?

I think the only "major" issue we had in the PR was its size, so as long as you have some way of making them small, anything's fine with me. Per keyword is fine.

Could I suggest the meta-schema tests be added as a separate file and not part of the main keyword test files as I haven't implemented $ref yet.

To be clear, we already have tests of this type, and they're already not separated, they're mixed in with the keyword they're testing (just now they're testing the metaschema's treatment of the keyword).
Adding new subfolders like meta/ within the tests/ folder is a breaking change which involves all downstream implementations who use the suite "noticing" and figuring out how to modify their test runners to deal with the new folder, so I'm usually not very keen on that idea personally unless it's got a lot of justification -- my suspicions are always that this is a key reason implementations don't always keep up with the suite.
I'm personally more open to adding meta-*.json files, but since we already have a bunch of these and they're alongside existing tests, I don't think we should mix style there on how we write these -- we should either stick to what we have and decide whether to move every meta-schema related test afterward to a separate file, or else move all the ones we have first, merge that, and then proceed with adding to the tests we have.
Either way though I'm not sure I see how you're going to be able to run them (even the ones that already exist) if you haven't implemented $ref support? Probably you should skip the tests in your runner until you do I guess.

Going to close this as effectively duplicating #589 and/or #354 / #244 but if that's wrong and/or you have other thoughts (OP or anyone) obviously follow up!


ViewPagerAndroid: measure and layout after adding a view to the container

Currently, when adding views to ViewPagerAndroid after it was attached, those views would not show up as they had a size of 0. This fixes that by measuring and layouting after adding a view to the container.
Fixes #14296
Test Plan
See https://github.com/danilobuerger/react-native-viewpagerandroid-dynamic

yarn install
yarn run android
You will see two pages
Press "ADDPAGE"
Scroll to the third page, it will be empty
Use react-native master with this patch
yarn run android
You will see two pages
Press "ADDPAGE"
Scroll to the third page, it will show "3 page (Scroll Me)"

Related PRs
Relates to #14867 (ping @satya164 / @hramos)
Release Notes
[ANDROID] [BUGFIX] [ViewPagerAndroid] - Fixed rendering of dynamically added views

ping @satya164 @hramos

3 months later still waiting on a review @satya164 @hramos

@gaearon Maybe you can help? What must I do to get this reviewed?

cc @kmagiera as the todo mentioned here was filed by him ("Support detaching invisible children in ViewPager once we figure out a way to re-layout some views on request").

@hramos @kmagiera could we please get this reviewed?

@hramos @kmagiera @satya164 Its been 6 months now without a review.

@hramos recently you wrote:
Issues and pull requests get handled within a reasonable period of time.

So I assume 9 months is still not a reasonable period of time?

@danilobuerger I think it's best we extract this component out and publish separately so we can merge PRs independently without relying on FB. We're planning to extract out it soon, probably after the holidays.

@satya164 I have opened the PR here: https://github.com/react-native-community/react-native-viewpager/pull/2

Closing this as it got moved to the other repo.


Enable System timers with the NW backend

Problem
System timers will never fired at the moment with the NW backend since the code is behind CHIP_SYSTEM_CONFIG_USE_SOCKETS
Also the NW backend does not need the Inet select code.
This patch enable System timers for the NW backend.

@sagar-apple FWIW I would like to add back the lock/unlock mechanism directly into this code. I will likely add a new Darwin platform, which is something I need for the bluetooth part anyway. Let me know if that's fine for you.

@sagar-apple FWIW I would like to add back the lock/unlock mechanism directly into this code. I will likely add a new Darwin platform, which is something I need for the bluetooth part anyway. Let me know if that's fine for you.

A new Darwin platform? What do you mean by that exactly? And the locking behavior was specifically tied to how the Darwin framework(they're Darwin locks) was accessing the underlying cpp class. Because any thread might call the device controller Darwin apis we needed a lock. We had a separate queue for select so that we could avoid holding the lock for too long (so we don't block other Darwin threads from accessing the controller for too long).
Maybe you have a design in your mind. You can put it up and we'll see how it turns out.

I wonder if the long term goal of CHIP would be to always have some things enabled, specifically IPV6 and SOCKETS. Is that true (i.e. thread adds sockets even if no real wifi exists) or false (is there a BLE-only device that does not really use IP? CHIP seems to imply we are always IP)?
@gerickson - we ported over a lot of configuration options while adding the baseline CHIP. Are there some things we sould assume 'always true'?

Re sockets: That's one API implementation of IP - one that on Darwin platforms we don't recommend folks use (for power and performance reasons). I think having native and efficient implementations of CHIP is a goal we should shoot for on all platforms that CHIP deploys on.

I wonder if the long term goal of CHIP would be to always have some things enabled, specifically IPV6 and SOCKETS. Is that true (i.e. thread adds sockets even if no real wifi exists) or false (is there a BLE-only device that does not really use IP? CHIP seems to imply we are always IP)?
@gerickson - we ported over a lot of configuration options while adding the baseline CHIP. Are there some things we sould assume 'always true'?

IPv6 should definitely always be assumed for CHIP; however, BSD Sockets cannot and should not always be assumed for CHIP. As @woody-apple said, CHIP should be optimally efficient as possible for the underlying platform it is supporting while still being very portable. But, as an example, for LwIP networking, LwIP-native APIs are used because their BSD Sockets workalike API is 1) not fully workalike and 2) adds a 14-18 KiB tax that doesn't buy the implementer anything and can be better used for other device functionality. When CHIP is ported to Zephyr and/or MSFT / ExpressLogic ThreadX/NetX, it'll likely use the native networking APIs on those platforms, not BSD Sockets.


Added Speech to text reader

Developer Checklist

[ ] Followed guidelines mentioned in the readme file.
[ ] Followed directory structure. (e.g. ProjectName/{USERNAME}/...yourfiles)
[ ] Starred ⭐ the Repo (Optional)

Summary
I have added a Speech to text reader that basically read out any text that is entered by the user.
Screenshot

@PBJI there is a folder already with the same name.
Can you suggest a different name for the folder.

@PBJI there is already a folder name VoiceGenerator.
Could please suggest a different name so that I can make the necessary changes.
Thank you!

use VoiceGenerator folder name, don't worry about merge conflicts.


Add Exit state to drop to bootloader

Sister PR of https://github.com/fossasia/pslab-bootloader/pull/2.

Final method works another, and does not involve the application firmware.


No module named 'atomic_operator.execution.base' Error

[System information]
platform : Ubuntu 22.04-x64
python : 3.10.4
atomic-operator : 0.8.5
[Installation commands]
The first installation attempt was made, but an error occurred.
pip install atomic-operator
Installation completed using the command below
git clone https://github.com/swimlane/atomic-operator.git
cd atomic-operator
pip install -r requirements.txt
python setup.py install

[Problematic matter]
It is a normal user and is operated at the time.
However, if you execute with root authority, you will get an error
The cause has not been found and the solution has not been solved.

=======================================
[Add question]
↓ Should I apply it on my Victim PC? Or should I apply it to the Attacker PC?
And Do I have to run SSH client?
https://www.atomic-operator.com/0.8.5/windows-remote/

Issue exists on MacOS 12.6 on both regular user and sudo. Will try reinstalling.

Hello, I appear to have the same issue on an M1 Mac OS Version 12.6.1. I attempted to follow the instructions here but came up with issues from the python setup.py install command. There where packages I needed to install manually, and I had to run it with sudo. Unfortunately, I did not think to save the error logs from that step. I was finally able to successfully complete the installation, but when I run atomic-operator --help I see the following error:
# atomic-operator --help Traceback (most recent call last):   File "/usr/local/bin/atomic-operator", line 33, in <module>     sys.exit(load_entry_point('atomic-operator==0.8.5', 'console_scripts', 'atomic-operator')())   File "/usr/local/bin/atomic-operator", line 25, in importlib_load_entry_point     return next(matches).load()   File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/importlib/metadata.py", line 77, in load     module = import_module(match.group('module'))   File "/Applications/Xcode.app/Contents/Developer/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/importlib/__init__.py", line 127, in import_module     return _bootstrap._gcd_import(name[level:], package, level)   File "<frozen importlib._bootstrap>", line 1030, in _gcd_import   File "<frozen importlib._bootstrap>", line 1007, in _find_and_load   File "<frozen importlib._bootstrap>", line 972, in _find_and_load_unlocked   File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed   File "<frozen importlib._bootstrap>", line 1030, in _gcd_import   File "<frozen importlib._bootstrap>", line 1007, in _find_and_load   File "<frozen importlib._bootstrap>", line 986, in _find_and_load_unlocked   File "<frozen importlib._bootstrap>", line 664, in _load_unlocked   File "<frozen importlib._bootstrap>", line 627, in _load_backward_compatible   File "<frozen zipimport>", line 259, in load_module   File "/Library/Python/3.9/site-packages/atomic_operator-0.8.5-py3.9.egg/atomic_operator/__init__.py", line 1, in <module>   File "<frozen zipimport>", line 259, in load_module   File "/Library/Python/3.9/site-packages/atomic_operator-0.8.5-py3.9.egg/atomic_operator/atomic_operator.py", line 13, in <module>   File "<frozen zipimport>", line 259, in load_module   File "/Library/Python/3.9/site-packages/atomic_operator-0.8.5-py3.9.egg/atomic_operator/execution/__init__.py", line 1, in <module>   File "<frozen zipimport>", line 259, in load_module   File "/Library/Python/3.9/site-packages/atomic_operator-0.8.5-py3.9.egg/atomic_operator/execution/awsrunner.py", line 3, in <module> ModuleNotFoundError: No module named 'atomic_operator.execution.base'
I have tried uninstalling atomic-operator and reinstalling via pip and via the setup.py script without success.

@HackThePlanetKC @fxploit @melidosian @MechiH Hey all - Sorry for the long delay on this but I am looking at this now and this week.
I will need to setup a test environment but can someone verify this is still an issue ?
Also, @fxploit I would not run atomic-operator  with sudo and would only install it via -U or user scope if possible. The elevation of an Atomic Test is determined by the ATomic.yaml file and not any parameters or elevation of atomic-operator itself (but thinking about it, it may be necessary on some hosts). I will take a closer look but further feedback would be helpful!


user reassign script should print a summary once complete

For both the confirmed and dry run cases it should end with printing:
total tasks / opportunities
total tasks / opportunities that had errors

@congocongo

@anemitz I did first line. and second line, errors. I stopping now on first error. guess I need parameter like --continue-on-error in this case.


Using props causes reactions and computeds to trigger in undesirable ways

Hello,
We've been using mobx reactions/computeds/etc. in what I thought was an idiomatic way, but I'm now finding that we're triggering a lot of unexpected reactions (and probably computed executions as well) when referencing this.props.  Here's the issue:
@observable someObservable = 'test';

// this autorun will change every time *any* props change, causing lots
// of excessive calls
autorun(() => {
  this.props.onChange(this.someObservable);
})

// this autorun will only change when `this.someObservable` or `this.props.onChange`
// changes
autorun(() => {
  const onChange = expr(() => this.props.onChange);
  onChange(this.someObservable);
})

The only solution I see is to create a computed or use expr for every single prop usage.
I believe that this is behavior is by design in current mobx-react. If I'm understanding correctly, this is happening because this.props itself (as opposed to only the values on props) is observable, so every time props changes, it triggers reactions/computations.
This behavior is unexpected to me. One of the reasons I love mobx is that if you write idiomatic mobx, everything magically computes/reacts a minimal number of times. However, the first example, this feels like an idiomatic way to use reactions and props to me, yet it behaves unexpectedly. Is there a better solution here, or some way we can make props with autorun/computed/etc. behave in a less-unexpected way?

It's impossible to make individual props observable, see #347
However I think the main problem here is that onChange handler is passed as anonymous inline function, therefore the "pure render" check always fails and props are always considered modified, which in turn triggers autoruns (to avoid staleness, when props are actually updated).

We never use inline anonymous functions for onChange handlers - it’s actually that other props are changing. I agree with @adamabeshouse in that thread that the ideal behavior would be that individual props are treated as observable (even if there’s some intermediate hack to make them appear to behave that way). Is the proposal at the end of that thread not possible/is “impossible” the right term here?
In #347 the example was somewhat non-idiomatic mobx, but the example above is, so I think this is a symptom that the observable behavior of props isn’t quite right. Is the issue purely an implementation problem, and we agree on the ideal behavior of individual props being observable? I can’t tell from that issue. I’d be interested in finding solutions to it if so.

the ideal behavior of individual props being observable

Not entirely. Props are designed as immutable object in react, it doesn't make sense making immutable object observable, since only mutations can be observed.
You can't subscribe for an individual prop, because individual prop can't change.
This is why you can't simply use this.props.something in render, but you have to use this.props.observable.something. The same limitation apply to any other reaction/autorun.
The thing is that if you use this.props.something the component is still updated, not because of MobX, but because component recieved new props. The same couldn't be said about custom reaction/autorun even if this.props was used inside. So this.props property was made observable to align the behavior of custom autorun/reaction/computed with the behavior of render.
In other words, using this.props in autorun is a way to propagate component update caused by different means than MobX (an update caused by shallow prop change) to custom autorun/reaction/computed depending on such component update (depending on this.props).

Thanks for the explanation.

Props are designed as immutable object in react, it doesn't make sense making immutable object observable, since only mutations can be observed.

This doesn't prohibit us from having a facade props object with observable properties that are updated whenever the immutable props object changes, does it?

this.props property was made observable to align the behavior of custom autorun/reaction/computed with the behavior of render.

Note that if you align the behavior of autorun/computed with the behavior of render, then the user has to solve the problem mobx already solves for render, again: how to prevent extraneous renders when props change, except this time the user needs to solve it for autorun/computed, which are not beneficiaries of PureComponent/shouldComponentUpdate.
Current behavior aside, from a purely "how do we want this library to behave" perspective, do you think that:
autorun(() => {
  this.props.onChange(this.someObservable);
})

should result in this.props.onChange being called repeatedly with the same value even when neither onChange or someObservable changes? Or do we think that idiomatic mobx should look like this?:
autorun(() => {
  const onChange = expr(() => this.props.onChange);
  this.props.onChange(this.someObservable);
})

I doubt most mobx users (especially non-expert ones) would expect the first to behave the way it does, and it also seems like it would be a bad thing if idiomatic mobx required you to add expr or computed statements to every prop access like in the second example.
The current behavior of props results in either a) confusing and inefficient behavior or b) lots of expr/computeds being littered around. This seems problematic to me. I'd be happy to help think of/contribute to solutions if it's agreed that this is currently a problem.

which are not beneficiaries of PureComponent/shouldComponentUpdate

But they are, the autorun/reaction/computed is called only if props are shallowly modified, exactly like render.
Thats why I initially suggested that the extra calls are caused by inline function, which would always break the pure-render check.

Or do we think that idiomatic mobx should look like this?:

The idiomatic way is not to rely on props in reactive functions, but on observables.
Again this is the very same as with render - even if you don't use some prop inside render and the prop is shallowly modified, the render still triggers.
From MobX perspective this can be considered inefficient behavior, that's why docs suggest to dereference values lately etc... the need for these suggestions also implies that the behavior can be consfusing...

But they are, the autorun/reaction/computed is called only if props are shallowly modified, exactly like render.

Yes, but in vanilla react, render was the only thing that updated when props changed - so shallowCompare was effective at causing render only to render when something used by render actually changes. Now that (in mobx land) we have a bunch of things that also update based on props (autorun, computed, etc.) and are currently updating whenever any prop changes, we're now once again in a situation where we want to make those functions recompute only when something used changed.

Thats why I initially suggested that the extra calls are caused by inline function, which would always break the pure-render check

Understood, but lots of things break the pure render check, like rendering children, so we can't point to props changing inefficiently as a cause.

The idiomatic way is not to rely on props in reactive functions, but on observables.

This necessitates that simple onChange handlers - which are not things that are typically placed into stores and late-dereferenced, because they're component-level handlers and not data - are placed into stores or observables, which is unfortunate (imo). People aren't going to wrap every onChange handler in a store, so in practice this will mean that either people will have inefficient reactions or they'll discover this and add exprs all over.
Would just like to add this viewpoint/preference then, we can close this if it isn't something you're planning on changing.

@iEchoic I think your example can be solved more elegantly by using reaction to specify what you want to be reacting to specifically. The following wouldn't be reacting to new props
reaction(() => this.someObservable, value => this.props.onChange(value))

We thought about updating individual fields instead of the entire props, however this deviates further from the react component model, where individual properties don't really change, rather you get a complete fresh set of properties. (an entire new props object). Of course we could perform diffing here and update the existing props based on the new props. The problem with that is that it doesn't really play nice with the lifecycle hooks of react components, that work with previous props, next props etc.
Ideally, .props should not be observable at all (there are several open issues related to that). (But the problem then that is that @computed fields will keep using old properties)

@mweststrate thanks, that is definitely a better solution than expr for reactions.
FWIW, making props observable mostly solved the biggest mobx-react pain point for us, so I think that was a really great change.
To make a quick pitch for why I think individual field observability is the next big improvement over that: the only consistent pain point with mobx-react for us has been that components have to know too much about the observability of props being passed to them, making it difficult to create modular component interfaces while still encapsulating internal component logic. We want components to operate on data, not on observability. This was fixed with the observable props change, but now we can have inefficient computation based on our parent's behavior (unless we use expr very liberally, which is essentially re-creating individual field observability).
Pre-observable props:
@computed get checkedItems() {
  // this doesn't work when `items` changes if items is not an observable. We have to
  // know if callers are using an observable to know if we can use this internal implementation,
  // and potentially completely refactor this component based on that knowledge. This makes
  // `observable` a leaky abstraction

  return this.props.items.filter(items => item.isValid);
}

Current mobx-react:
@computed get checkedItems() {
  // Logically, this works now, and our component will behave correctly. We no longer have to
  // care about observability, only data. Great!
  //
  // Except one parent is changing props a lot (perhaps changing children a lot)
  // so this is getting re-computed all the time and our perf mysteriously gets bad.
  // Now we have to add `expr` for efficient computation, and once again we know and care
  // too much about our parent behavior

  const items = expr(() => this.props.items);
  return items.filter(items => item.isValid);
}

If mobx-react had individually observable props:
@computed get checkedItems() {
  // mobx nirvana; we can treat `props` as data and everything works logically correctly and
  // efficiently. Our component can implement its internal logic however it wants, and
  // we can create this component modularly, without knowledge about the behavior of its parent
  return this.props.items.filter(items => item.isValid);
}

Just want to add that perspective. Thanks!

only to render when something used by render actually changes.

But thats not true, it doesn't matter if some prop is used or not, the render will re-run if ANY prop is shallowly modified.
The "re-runs only when used" behavior applies only to observables, but not to props itself.
The behavior of render and autorun/computed/reaction/ is really the same. The only difference is that render depends on this.props implicitly, while autorun/reaction/computed depends on this.props explicitely (only when this.props is used), but both are updated under the same circumstances.

if I'm making a checkbox that calls onChange, am I going to make a CheckboxStore?

If onChange represents state (changes over time), it must be stored as observable somewhere.
If you want to use MobX to update the component based on this state, you have to pass it as observable.
Otherwise the component is not updated via MobX and can't benefit from MobX tracking behavior.
You have to decide how you want to manage state. If you use a combination, the result will be efficient as the least efficient part (new props with shallow comparator in this case).
Some people suggest to have two kinds of components:
"dumb" - relies entirely on props, knows nothing about stores or observables, universally usable...
"smart" - connected to stores (observables), contains logic, domain specific...
(it seems unecessary to me)

that is definitely a better solution than expr

Unlike the expr workaround, the proposed solution causes staleness when onChange is updated, but this.someObservable isn't. Functionally it's equivalent to:
autorun(() => {
  const onChange = untracked(() => this.props.onChange);
  onChange(this.someObservable);
})

So it's not really a solution if you expect the same behavior.

the proposed solution causes staleness when onChange is updated

Good catch @urugator! Changes are indeed that calling the component with new props will also give it a new onChange handler (that really depends on how the component is called from it's parent).
In general I do not put reactions and such in components, but in stores which in general avoids these kind of issue at all. (I really try to keep my components dumb). If your component is simple, calling this.props.onChange directly from your event handlers rather then setting up a reaction for it is generally more easily to read. If it is complex, a view model is usually very powerful, and in that view model you can internally organize the reaction and just expose an api to attach / remove change handlers.

Using mobx in the ways most commonly demonstrated involves creating some store object with an observable property or properties and then passing that object to observer components so that they can react to changes in the observable properties of the object (or possibly mutate the properties so that other reactions occur).
This can create a bit of a challenge for building reusable observer components because the component needs to know the shape (property name(s)) of the store object to use its observable properties.  This creates a very explicit dependency on that particular store object (or one shaped exactly like it, with the same property names).  This dependency can be quite extreme if the object passed to the observer components is the root store itself and the property of interest is several "dots" in from the root (a newbie mistake, which I myself made when starting out with mobx).  Of course, @inject can help to limit the depth of the "dots" by passing in specific store objects instead of the entire store.
As @urugator  says in #404:

In other words you should always use this.props.somethingObservable.something instead of just this.props.something.

In that example, a component when passed somethingObservable as a prop would need to know that the name of the property to reference is something.  Let's say that later you want to reuse the same component against a property someProperty on some other store object (let's say both "something" and "someProperty" are booleans).   Now your component won't work out of the box because it was hard-coded to look for a property called "something" rather than "someProperty."
Something (pun) I've been experimenting with at work is to formalize the interface for observable props in reusable observer components.  We use typescript, so the reusable component declares the property as type IRefProp and then in JSX it becomes very clear via intellisense when passing props to a component that an IRefProp is needed, and so we use either the ref() or rref() function shown in the code excerpt at the bottom of this post when passing the prop.  All IRefProps have a single property named "value", so the component does not need to know the shape of the observable in the actual store or model.  ref() and rref() are factory functions that return a RefProp or RefPropReadOnly.
Here's what a reusable observer component might look like:
@observer2
class ChildComponent extends React.Component<{
someProp: IRefProp<boolean>;
anotherProp: string;
}> {
render() {
  const { anotherProp, someProp } = this.props
  {anotherProp}
  {someProp.value
    ? Something rendered if someProp is true
    : Something rendered if someProp is false
  }
}

This should re-render if anotherProp changes or if someProp.value changes.  I'm not showing it here, but there could be computeds or other reactions in the component based only on someProp.value, and if someProp.value is not used in the render, then no re-render would occur but the computeds should recalculate appropriately (I think).
And here's how we would pass the ref prop to the component:
// store.checks is an object that contains an observable property someProp that is boolean
<ParentComponent>
  <ChildComponent someProp={ref(store.checks, "someProp")} />
</ParentComponent>

This is almost great, except for two things:  1) it creates a new RefProp in every render of the parent because the ref() function returns new RefProp, and thus 2) it suppose it causes unnecessary renders in the child because of the shallow compare of all props.  I've mitigated the latter by tweaking the observer code (calling it observer2 at this point) to check for instanceof RefProp and then for the RefProps do the shallow compare on the obj property instead of the RefProp itself.
I'm also looking into making the ref function a static factory method on RefProp and then memoize its result using a WeakMap to cache instances so that a new RefProp is not created if one already exists for the same obj+propName.  This might also work nicely if the same store object+propName is passed to multiple components so that they share the same RefProp as well as the same store object.
Basically though, I think this is a fairly clean method of separating out the "observable" props from the rest of the props while making it slightly more straightforward to create reusable observer components.  If done properly, we should get the desired reactions to the observable props without extra renders (I think) and without losing renders due to non-observable props changing.
Wondering what others think about all of this.
Here's my current implementation of RefProp:
import { observable } from "mobx";

export interface IRefProp<T> {
    value: T;
}

export interface IRefPropReadOnly<T> {
    readonly value: T;
}

export class RefProp<T> implements IRefProp<T> {
    @observable public obj: object;
    public propName: string | number;

    constructor(obj: object, propName: string | number) {
        this.obj = obj;
        this.propName = propName;
    }

    get value() {
        return this.obj[this.propName] as T;
    }

    set value (newValue: T) {
        this.obj[this.propName] = newValue;
    }
}

// tslint:disable-next-line:max-classes-per-file
export class RefPropReadOnly<T> implements IRefPropReadOnly<T> {
    @observable public obj: object;
    public propName: string | number;

    constructor(obj: any, propName: string | number) {
        this.obj = obj;
        this.propName = propName;
    }

    get value() {
        return this.obj[this.propName] as T;
    }

    // tslint:disable-next-line:no-unused
    set value(newValue: T) {
        throw new Error(`Error: tried to mutate the read-only read prop ${this.propName}`);
    }
}

/**
 * Reference prop - takes an object and a property name and creates a wrapper that
 * allows the property to be observable.  In this version, as opposed to rref, the
 * property can be mutated by the receiver of the prop.
 * @param obj - object that has the property that we want to observe
 * @param propName - the string or number key of the property we want to observe
 */
export function ref<T>(obj: object, propName: string | number): IRefProp<T> {
    return new RefProp<T>(obj, propName);
}

/**
 * Read-only reference prop - takes an object and a property name and creates a wrapper that
 * allows the property to be observable.  This is the read-only version that forbids the receiver
 * of the ref prop from mutating it; though it can still observe it.
 * @param obj - object that has the property that we want to observe
 * @param propName - the string or number key of the property we want to observe
 */
export function rref<T>(obj: object, propName: string | number): IRefProp<T> {
    return new RefProp<T>(obj, propName);
}

@domehead100
You may also consider creating references in stores: @observable prop = observable.box(5) (would be smart to use some store factory to enforce this as a rule and save some typing).
It all comes down to the fact that values can't be observed. Therefore all observers/reactions/computed/autorun must depend on some abstraction instead of values directly.
The smallest abstraction possible is some "value reference" (a box in Mobx).
So if you wrap every value in this box, you will get a lot more flexibility when designing observers - their dependencies can stay focused on things they really need.
Btw it's also useful in stores/models, you don't need to pass the whole store as depedency, only the required parts.
Obviously there is a cost - increased complexity, verbosity, a.get().b.get().c.get() and redundancy (more "observable boxes" than actually required). Also default conversion to observables won't work.

it creates a new RefProp

I wouldn't bother, any caching could end up being more expensive than a creation of a few additional objects.
Btw it's possible to keep "the dereferencing part" inside the parent, while subscribing only the child:
<ParentComponent>
  <Observer>
    {_ => {
      <ChildComponent checked={store.checks.someProp}/>
    }}
  </Observer>
<ParentComponent>

I see that this issue is getting some real progress now, but let me chime in with the pattern that I know use to achieve the desired behavior:
class TestValue extends React.Component {
  @observable showValue = false;
  @observable value = 10;

  constructor(props, context) {
    super(props, context);
    this.assignObservableProps(props);
  }
  componentWillReceiveProps(props, context) {
    this.assignObservableProps(props);
  }

  @action
  assignObservableProps(props) {
    this.value = props.value;
    this.showValue = props.showValue;
  }

  shouldComponentUpdate(props, context) {
    return false; // to prevent updates from changes to props
  }

  render() {
    console.log("render"); // will not happen if value changes while showValue is false
    if (this.showValue) return
{this.value}
;
    else return "Nothing shown";
  }
};

Now if only I knew how to make a decorator that would automate this for me ...

so I tried to write the decorator for the above, and here goes:
function observerWithProps(oProps) {
  return function(Class) {
    return (props, context) => {
      const instance = observer(new Class(props, context));
      const keys = Object.keys(oProps);
      keys.forEach(key => {
        extendObservable(instance, {
          [key]: observable
        });
        instance[key] = key in props ? props[key] : oProps[key];
      });

      const componentWillReceiveProps = instance.componentWillReceiveProps;
      instance.componentWillReceiveProps = action(function(props, context) {
        componentWillReceiveProps &&
          componentWillReceiveProps.call(instance, props, context);
        keys.forEach(oProp => {
          instance[oProp] = props[oProp];
        });
      });

      instance.shouldComponentUpdate = function(props, context) {
        return false;
      };
      return instance;
    };
  };
}

So the above example turns into:
@observerWithProps({
  showValue: false,
  value: 10
})
class TestValue extends React.Component {
  render() {
    console.log("render"); // will not happen if value changes while showValue is false
    if (this.showValue) return
{this.value}
;
    else return "Nothing shown";
  }
};

Haven't read all comments, but given the age of this issue, I will close it. If there is still something unresolved, let me know.


arm64v8: prefer latest stable version of Rust

The underlying issue (#109) should be fixed with compiler-builtins
v0.1.55, available in Rust 1.59.0.

Thank you for all these PRs Kleis, I'll merge them in the order opened.


Laravel 5.2 support

Are you planning supporting 5.2 branch? because beforeFilter() has been removed in Laravel 5.2 so we have to use middlewares right now. I did a quick fork with 5.2 support, but I want to know if I should wait for the "official" update.

I use this library for several projects and I can't upgrade to Laravel 5.2 without breaking stuff. Any chance of supporting Laravel 5.2 in the near future?

You can test my pull request https://github.com/chrisbjr/api-guard/pull/85 in your dev environment and tell me if it works okay for you.


Enabled logging eats exception backtraces

When the default ApplicationRunner  enables logging via txaio.start_logging() backtraces raised in asyncio code are not printed anymore. Only the warning itself is visible.
Consider the following snippet:
import logging
from os import environ

from autobahn.asyncio.wamp import ApplicationSession, ApplicationRunner

class MyComponent(ApplicationSession):
    async def onJoin(self, details):
        logging.info('We want a backtrace!')

        raise RuntimeError('meh')

if __name__ == '__main__':
    runner = ApplicationRunner(
        environ.get("AUTOBAHN_DEMO_ROUTER", u"ws://<IP_ADDRESS>:8080/ws"),
        u"realm1",
    )
    runner.run(MyComponent)

Output with the unmodified ApplicationRunner looks like this:
2017-04-27T11:53:11 Task exception was never retrieved
future: <Task finished coro=<onJoin() done, defined at break_it.py:20> exception=RuntimeError('meh',)>

Is this expected? It makes debugging problems kind of impossible.
When I remove the call to txaio.start_logging() I get what I expect:
ERROR:asyncio:Task exception was never retrieved
future: <Task finished coro=<onJoin() done, defined at break_it.py:20> exception=RuntimeError('meh',)>
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/asyncio/tasks.py", line 239, in _step
    result = coro.send(None)
  File "break_it.py", line 23, in onJoin
    raise RuntimeError('meh')
RuntimeError: meh

moved to txaio repository