app stale at Unlock Account with PIN

It happens regularly on my Android 6 test phones that unlocking the account spins forever until the app finally crashes completely. Couldn't record logs of this yet

Same problem. my log:
Installing build\app\outputs\flutter-apk\app.apk...
Debug service listening on ws://<IP_ADDRESS>:55210/u_hDF7PWCig=/ws
Syncing files to device AOSP on IA Emulator...
D/EGL_emulation( 6567): eglMakeCurrent: 0xef55f7a0: ver 2 0 (tinfo 0xeb22af50)
D/eglCodecCommon( 6567): setVertexArrayObject: set vao to 0 (0) 1 0
I/flutter ( 6567): notification_plugin initialised: true
I/flutter ( 6567): initializing app state
I/flutter ( 6567): sys locale: en
I/flutter ( 6567): No observables detected in the build method of Observer
I/flutter ( 6567): #3      _WalletAppState.build. (package:encointer_wallet/app.dart:143:47)
I/flutter ( 6567): first launch of webview
I/flutter ( 6567): second launch of webview
I/WebViewFactory( 6567): Loading com.android.chrome version 69.0.3497.100 (code 349710017)
I/ncointer.walle( 6567): The ClassLoaderContext is a special shared library.
I/cr_LibraryLoader( 6567): Time to load native libraries: 216 ms (timestamps 7570-7786)
E/cr_VariationsUtils( 6567): Failed reading seed file "/data/user/0/org.encointer.wallet/app_webview/variations_seed": /data/user/0/org.encointer.wallet/app_webview/variations_seed (No such file or directory)
I/chromium( 6567): [INFO:library_loader_hooks.cc(36)] Chromium logging enabled: level = 0, default verbosity = 0
I/cr_LibraryLoader( 6567): Expected native library version number "69.0.3497.100", actual native library version number "69.0.3497.100"
W/cr_ChildProcLH( 6567): Create a new ChildConnectionAllocator with package name = com.android.chrome, sandboxed = true
I/cr_BrowserStartup( 6567): Initializing chromium process, singleProcess=false
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker;->(Landroid/content/Context;I)V (light greylist, reflection)
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker;->logEvent(Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;)V (light greylist, reflection)
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionStarted(I)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent; (light greylist, reflection)
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionModified(II)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent; (light greylist, reflection)
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionModified(IILandroid/view/textclassifier/TextClassification;)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent; (light greylist, reflection)
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionModified(IILandroid/view/textclassifier/TextSelection;)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent; (light greylist, reflection)
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionAction(III)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent; (light greylist, reflection)
W/ncointer.walle( 6567): Accessing hidden method Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent;->selectionAction(IIILandroid/view/textclassifier/TextClassification;)Landroid/view/textclassifier/logging/SmartSelectionEventTracker$SelectionEvent; (light greylist, reflection)
W/cr_media( 6567): Requires BLUETOOTH permission
D/HostConnection( 6567): HostConnection::get() New Host Connection established 0xe9123e00, tid 6703
D/HostConnection( 6567): HostComposition ext ANDROID_EMU_CHECKSUM_HELPER_v1 ANDROID_EMU_dma_v1 ANDROID_EMU_YUV420_888_to_NV21 ANDROID_EMU_YUV_Cache ANDROID_EMU_async_unmap_buffer ANDROID_EMU_sync_buffer_data GL_OES_vertex_array_object GL_KHR_texture_compression_astc_ldr ANDROID_EMU_host_side_tracing ANDROID_EMU_async_frame_commands ANDROID_EMU_gles_max_version_2
E/chromium( 6567): [ERROR:gl_surface_egl.cc(335)] eglChooseConfig failed with error EGL_SUCCESS
D/eglCodecCommon( 6567): setVertexArrayObject: set vao to 0 (0) 0 0
D/EGL_emulation( 6567): eglCreateContext: 0xe91053c0: maj 2 min 0 rcv 2
D/EGL_emulation( 6567): eglMakeCurrent: 0xe91053c0: ver 2 0 (tinfo 0xcf318fc0)
W/cr_CrashFileManager( 6567): /data/user/0/org.encointer.wallet/cache/WebView/Crash Reports does not exist or is not a directory
W/VideoCapabilities( 6567): Unrecognized profile 4 for video/hevc
I/VideoCapabilities( 6567): Unsupported profile 4 for video/mp4v-es
W/cr_MediaCodecUtil( 6567): HW encoder for video/avc is not available on this device.
E/chromium( 6567): [ERROR:gl_surface_egl.cc(335)] eglChooseConfig failed with error EGL_SUCCESS
D/eglCodecCommon( 6567): setVertexArrayObject: set vao to 0 (0) 0 0
D/EGL_emulation( 6567): eglCreateContext: 0xe9107a60: maj 2 min 0 rcv 2
D/EGL_emulation( 6567): eglMakeCurrent: 0xe9107a60: ver 2 0 (tinfo 0xcf318fc0)
D/eglCodecCommon( 6567): setVertexArrayObject: set vao to 1 (1) 0 0
D/eglCodecCommon( 6567): setVertexArrayObject: set vao to 2 (2) 0 0
D/eglCodecCommon( 6567): setVertexArrayObject: set vao to 1 (1) 0 0
I/flutter ( 6567): webview loaded for network encointer
I/flutter ( 6567): webview loaded for network encointer
I/flutter ( 6567): found cached participants' claims. will recover them: {}
I/flutter ( 6567): js_service_encointer loaded in webview
I/flutter ( 6567): configs: [{"types":{},"pallets":{}}]
I/flutter ( 6567): js_service_encointer loaded in webview
I/flutter ( 6567): configs: [{"types":{},"pallets":{}}]
I/ncointer.walle( 6567): Background concurrent copying GC freed 158(77KB) AllocSpace objects, 10(21MB) LOS objects, 49% free, 1678KB/3MB, paused 5.358ms total 70.896ms
I/flutter ( 6567): checkpass: 0x8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48, 1234
I/chromium( 6567): [INFO:CONSOLE(2)] "Initialized Window", source:  (2)
I/chromium( 6567): [INFO:CONSOLE(2)] "Config override for node ws://<IP_ADDRESS>:9944: {"types":{},"pallets":{}}", source:  (2)
I/chromium( 6567): [INFO:CONSOLE(2)] "Initialized Window", source:  (2)
I/chromium( 6567): [INFO:CONSOLE(2)] "Config override for node ws://<IP_ADDRESS>:9944: {"types":{},"pallets":{}}", source:  (2)
I/flutter ( 6567): received msg: {"path":"log","data":"Unable to retrieve keypair '0x8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48'"}
I/flutter ( 6567): received msg: {"path":"uid=2;account.initKeys","data":{"42":{"0x98ce8df268efb2fc76d4e792a5c6c2dd031c784b4f71e19d22718bbfb1967946":"5FX4VfszQJtqbPSqnTHp6JssdK6NUexwzGLUgsvjAH5jxrVP","0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d":"5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY","0x8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48":"5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty"}}}
I/flutter ( 6567): received msg: {"path":"log","data":"overwritten pallet config: {"encointerCommunities":{"name":"encointerCommunities","calls":{"communityIdentifiers":"communityIdentifiers","communityMetadata":"communityMetadata"}}}"}
I/flutter ( 6567): received msg: {"path":"log","data":"ws://<IP_ADDRESS>:9944 wss connected success"}
I/flutter ( 6567): received msg: {"path":"uid=3;settings.connectAll","data":"ws://<IP_ADDRESS>:9944"}
I/flutter ( 6567): received msg: {"path":"uid=0;account.initKeys","data":{"42":{"0x98ce8df268efb2fc76d4e792a5c6c2dd031c784b4f71e19d22718bbfb1967946":"5FX4VfszQJtqbPSqnTHp6JssdK6NUexwzGLUgsvjAH5jxrVP","0xd43593c715fdd31c61141abd04a99fd6822c8558854ccde39a5684e7a56da27d":"5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY","0x8eaf04151687736326c9fea17e25fc5287613693c912909cb226aa4794f26a48":"5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty"}}}
I/flutter ( 6567): received msg: {"path":"log","data":"overwritten pallet config: {"encointerCommunities":{"name":"encointerCommunities","calls":{"communityIdentifiers":"communityIdentifiers","communityMetadata":"communityMetadata"}}}"}
I/flutter ( 6567): received msg: {"path":"log","data":"ws://<IP_ADDRESS>:9944 wss connected and ignored"}
I/flutter ( 6567): received msg: {"path":"uid=5;account.genPubKeyIcons","data":[["0x98ce8df268efb2fc76d4e792a5c6c2dd031c784b4f71e19d22718bbfb1967946","<circle cx='42.392304845413264' cy='50'
I/flutter ( 6567): received msg: {"path":"uid=6;settings.getNetworkConst","data":{"system":{"blockWeights":{"baseBlock":5000000000,"maxBlock":2000000000000,"perClass":{"normal":{"baseExtrinsic":125000000,"maxExtrinsic":332768000000001,"maxTotal":null,"reserved":1500000000000},"operational":{"baseExtrinsic":1,"maxExtrinsic":32000000000,"maxTotal":null,"reserved":1799875000000},"mandatory":{"baseExtrinsic":512000000000001,"maxExtrinsic":"0x00746a5288000100","maxTotal":null,"reserved":null}}},"blockLength":{"max":{"normal":3932160,"operational":5242880,"mandatory":5242880}},"blockHashCount":"0x00000960","dbWeight":{"read":25000000,"write":100000000},"version":{"specName":"encointer-node-notee","implName":"encointer-node-notee","authoringVersion":0,"specVersion":9,"implVersion":0,"apis":[["0xdf6acb689907609b",3],["0x37e397fc7c91f5e4",1],["0x40fe3ad401f8959a",5],["0xd2bc9897eed08f15",2],["0xf78b278be53f454c",2],["0xdd718d5cc53262d4",1],["0xab3c0572291feb8b",1],["0xed99c5acb25eedf5",2],["0xbc9d89904f5b923f",1],["0x37c8bb1350a9a2a8",
I/flutter ( 6567): received msg: {"path":"uid=7;api.rpc.system.properties","data":{"ss58Format":42,"tokenDecimals":[12],"tokenSymbol":["ERT"]}}
I/flutter ( 6567): received msg: {"path":"uid=8;api.rpc.system.chain","data":"Development"}
I/flutter ( 6567): received msg: {"path":"uid=9;account.genPubKeyIcons","data":[["0x98ce8df268efb2fc76d4e792a5c6c2dd031c784b4f71e19d22718bbfb1967946","<circle cx='42.392304845413264' cy='50'
I/flutter ( 6567): api: starting encointer subscriptions
I/flutter ( 6567): Subscribe encointer balance
I/flutter ( 6567): api: starting encointer subscriptions
I/flutter ( 6567): api: starting assets subscriptions
I/flutter ( 6567): received msg: {"path":"uid=10;encointer.getPhaseDurations","data":{"Registering":"0x00000000036ee800","Attesting":"0x000000000a4cb800","Assigning":"0x0000000001b77400"}}
I/flutter ( 6567): received msg: {"path":"uid=11;encointer.subscribeCurrentPhase","data":{}}
I/flutter ( 6567): received msg: {"path":"uid=12;encointer.subscribeCommunityIdentifiers","data":{}}
I/flutter ( 6567): received msg: {"path":"uid=13;chain.subscribeNewHeads"}
I/flutter ( 6567): received msg: {"path":"uid=14;account.subscribeBalance","data":{}}
I/flutter ( 6567): received msg: {"path":"currentPhase","data":"Registering"}
I/flutter ( 6567): received msg: {"path":"communityIdentifiers","data":["0x2cbd65a5f087b3d60aec997e6369ef694f125582f5f7cffd7bbddc56a71858fc"]}
I/flutter ( 6567): received msg: {"path":"latestHeader","data":{"parentHash":"0xa3ef041cf606c53227c15524b9a6f1abff42f69ac2675da5e21713fb43d3c1a5","number":907,"stateRoot":"0x81467be28f52698821550a530103c7e58f6a9254a2c4f6da2b4ded0eb444067d","extrinsicsRoot":"0xd8ed71020d81435faf34b6f61a040c9ba79c479f9315c165bc13f94409c0f620","digest":{"logs":[{"preRuntime":["0x61757261","0x54d5441000000000"]},{"seal":["0x61757261","0x3ec44a4e214447e8467a4ce15a9fbc7dfb1accc9cbd4da2f2a55dad1804bb77f629012186982bf8b65152d7f2eee41dd374cad335416b766b18a68585a69c080"]}]}}}
I/flutter ( 6567): received msg: {"path":"gas token balance","data":{"accountId":"5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty","accountNonce":"0x00000002","additional":[],"freeBalance":"0x00000000000000000ffffffff1194b16","frozenFee":"0x00000000000000000000000000000000","frozenMisc":"0x00000000000000000000000000000000","reservedBalance":"0x00000000000000000000000000000000","votingBalance":"0x00000000000000000ffffffff1194b16","availableBalance":"0x00000000000000000ffffffff1194b16","lockedBalance":"0x00000000000000000000000000000000","lockedBreakdown":[],"vestingLocked":"0x00000000000000000000000000000000","isVesting":false,"vestedBalance":"0x00000000000000000000000000000000","vestedClaimable":"0x00000000000000000000000000000000","vestingEndBlock":"0x00000000","vestingPerBlock":"0x00000000000000000000000000000000","vestingTotal":"0x00000000000000000000000000000000"}}
I/flutter ( 6567): received msg: {"path":"latestHeader","data":{"parentHash":"0x5854749b1ac3fcab2cdfcef5d6b530210594ea37498c63c7ebc58b995efa8fbc","number":908,"stateRoot":"0x55a5f19446dc6b4a37c35ae1fd414c4cb621072c5a59b207c00be86da9959a84","extrinsicsRoot":"0x4239647a741651a29b17e4a1fe47f45629ee2a14328975d6a9d5598268e6f730","digest":{"logs":[{"preRuntime":["0x61757261","0x55d5441000000000"]},{"seal":["0x61757261","0xa6e553600f57843add33108554150e4ed560e2dd1daaa2bf8c8c874ae14e3545a566d502a5a9c30ca1f8c24c88ac2d06bf7ce6479456aeb58556dc00fe9df88b"]}]}}}
I/flutter ( 6567): Phase durations: {CeremonyPhase.REGISTERING: 57600000, CeremonyPhase.ATTESTING: 172800000, CeremonyPhase.ASSIGNING: 28800000}
I/flutter ( 6567): received msg: {"path":"latestHeader","data":{"parentHash":"0x208f6426f44741452dc10083e72db37eee65658e17ddff48610d858bc3431f8c","number":909,"stateRoot":"0xfda191ffcb91386ce73ecb7baf76acb924391b801948e3ef5d9a6d481de5bc0b","extrinsicsRoot":"0x0e905bbc4527d5a651243d31731cd6643985a95628cffd8ee4362631d6432c7a","digest":{"logs":[{"preRuntime":["0x61757261","0x56d5441000000000"]},{"seal":["0x61757261","0x42fc067a0bdb5cbbb215fda2ec7c8304bb95aa187d8f9383b2f7b3786d4c9f4fa847ca339d669cf713100e3b0d56fc211ce22c5442880c68698902c5eb5b2d8b"]}]}}}
I/flutter ( 6567): store: set currentPhase to CeremonyPhase.REGISTERING
I/flutter ( 6567): api: getCurrentCeremonyIndex
I/flutter ( 6567): received msg: {"path":"uid=15;encointer.getCurrentCeremonyIndex","data":"0x00000002"}
I/flutter ( 6567): received msg: {"path":"uid=16;encointer.communitiesGetAll","data":[{"cid":"0x2cbd65a5f087b3d60aec997e6369ef694f125582f5f7cffd7bbddc56a71858fc","name":"Mediterranea"}]}
I/ncointer.walle( 6567): Background concurrent copying GC freed 26534(1235KB) AllocSpace objects, 0(0B) LOS objects, 50% free, 1638KB/3MB, paused 1.018ms total 327.720ms
I/flutter ( 6567): api: Current Ceremony index: 2
I/flutter ( 6567): store: set currentCeremonyIndex to 2
I/flutter ( 6567): received msg: {"path":"latestHeader","data":{"parentHash":"0x452079baa5ef91c5cdd8903d1fa11c7ccefbc5ed5ec36da5209a77c178f811bc","number":910,"stateRoot":"0xa7029eb9c49a6d2d02ef248691dba4a3406a7bcdff16d4ed81cae5302b78ca3d","extrinsicsRoot":"0x124fd10a569d965b30cea9980e1a2fd1fa078ca3f180f2eaa9dfcb7d549cdebe","digest":{"logs":[{"preRuntime":["0x61757261","0x57d5441000000000"]},{"seal":["0x61757261","0x22bf8deb3271f7214b3b8f48395eefb4a8ebfabcdb7b390f537d55adba04494b5289a37a6a019eeffb607ac101a928527f454e8cc440e046836c223ecfb24b85"]}]}}}
I/flutter ( 6567): api: CidNames: [{"cid":"0x2cbd65a5f087b3d60aec997e6369ef694f125582f5f7cffd7bbddc56a71858fc","name":"Mediterranea"}]
I/flutter ( 6567): received msg: {"path":"latestHeader","data":{"parentHash":"0xbea7852b44619cd38df81e6fd077993714aa232ccff5da86893e4a1c6affea36","number":911,"stateRoot":"0x4ec4d8574f3fdd523f7bb26dd806e4418082306cebdf72d992610f3a8bba7c55","extrinsicsRoot":"0x8b435d913647b74e9f9602a80287d5ff3a4bb1fffb443746f70127b511cc39c4","digest":{"logs":[{"preRuntime":["0x61757261","0x58d5441000000000"]},{"seal":["0x61757261","0x121ec0344a890228f0195dab53bb4094f03ac59463ea8de26596918e3135b012d2d2284d77ffcaf552f89ff402567a9958210b536b66fb75a6461b73382f848d"]}]}}}

workaround: while süpinning, tap "switch account" and select same account. enter PIN again. may work

Haha, good to know ;)


update egui to 0.24.1, remove optlevel=2

Updates egui to 0.24.1
Removes optlevel=2 in Cargo.toml, since this should be decided by the user of the library

Thanks!


Confusion using the plug-and-play data

Hi,
I've cloned the repo and grabbed your trained models in an attempt to quickly see the demo running on my computer, but I'm getting an error and I'm not 100% sure I've understood how to place the data correctly:
get_train_batch c.TRAIN_DIR_CLIPS ../Data/.Clips/ c.NUM_CLIPS 0
Traceback (most recent call last):
  File "avg_runner.py", line 186, in <module>
    main()
  File "avg_runner.py", line 182, in main
    runner.train()
  File "avg_runner.py", line 68, in train
    batch = get_train_batch()
  File "~/Adversarial_Video_Generation/Code/utils.py", line 127, in get_train_batch
    path = c.TRAIN_DIR_CLIPS + str(np.random.choice(c.NUM_CLIPS)) + '.npz'
  File "mtrand.pyx", line 1391, in mtrand.RandomState.choice (numpy/random/mtrand/mtrand.c:15381)
ValueError: a must be greater than 0

I'm running the script by first cding into Code then running python avg_runner.py -l ../Models/Adversarial/model.ckpt-500000. I've added a print statement before the error line to see what the variables hold and it looks like the .Clips folder is empty:
get_train_batch c.TRAIN_DIR_CLIPS ../Data/.Clips/ c.NUM_CLIPS 0
I've double checked and that seems to be the case:
> file ../Data/.Clips/
../Data/.Clips/: directory
> ls ../Data/.Clips/ | wc -w
0

I feel I'm missing something: should I have downloaded the contents of the .Clips folder (if so from where ?) or should the .Clips contents be generated ?
How can I double check and make sure I'm using the examples correctly ?
I am using tensorflow version '0.12.0' with gpu support in a virtual environment on OSX 10.11.5 with an nVidia GeForce GT 750M (2GB VRAM), CUDA 8.0 and CuDNN 5.1 installed.
The first 3 levels of the repo look like this:
├── Code
│   ├── avg_runner.py
│   ├── constants.py
│   ├── constants.pyc
│   ├── d_model.py
│   ├── d_model.pyc
│   ├── d_scale_model.py
│   ├── d_scale_model.pyc
│   ├── g_model.py
│   ├── g_model.pyc
│   ├── loss_functions.py
│   ├── loss_functions.pyc
│   ├── loss_functions_test.py
│   ├── process_data.py
│   ├── tfutils.py
│   ├── tfutils.pyc
│   ├── tfutils_test.py
│   ├── utils.py
│   └── utils.pyc
├── Data
│   └── Ms_Pacman
│       ├── Test
│       └── Train
├── DataOld
│   └── Ms_Pacman
│       ├── Test
│       └── Train
├── LICENSE
├── Models
│   ├── Adversarial
│   │   ├── checkpoint
│   │   ├── model.ckpt-500000
│   │   └── model.ckpt-500000.meta
│   └── NonAdversarial
│       ├── checkpoint
│       ├── model.ckpt-1020000
│       └── model.ckpt-1020000.meta
├── Models.zip
├── Ms_Pacman.zip
├── README.md
├── Results
│   ├── Gifs
│   │   ├── 4_Comparison.gif
│   │   ├── 5_Comparison.gif
│   │   └── rainbow_NonAdv.gif
│   └── Summaries
│       ├── Adv-1
│       └── NonAdv-1
├── Save
│   ├── Images
│   │   └── Default
│   ├── Models
│   │   └── Default
│   └── Summaries
│       └── Default
└── deep_multi-scale_video_prediction_beyond_mean_square_error.pdf

Full output:
python avg_runner.py -l ../Models/Adversarial/model.ckpt-500000
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcublas.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcudnn.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcufft.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcuda.1.dylib locally
I tensorflow/stream_executor/dso_loader.cc:128] successfully opened CUDA library libcurand.dylib locally
c.TEST_DIR ../Data/Ms_Pacman/Test/
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:901] OS X does not support NUMA - returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:885] Found device 0 with properties:
name: GeForce GT 750M
major: 3 minor: 0 memoryClockRate (GHz) 0.9255
pciBusID 0000:01:00.0
Total memory: 2.00GiB
Free memory: 1.21GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:906] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_device.cc:916] 0:   Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:975] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GT 750M, pci bus id: 0000:01:00.0)
WARNING:tensorflow:From avg_runner.py:30 in __init__.: __init__ (from tensorflow.python.training.summary_io) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.FileWriter. The interface and behavior is the same; this is just a rename.
Init discriminator...
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/d_model.py:92 in define_graph.: scalar_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.scalar. Note that tf.summary.scalar uses the node name instead of the tag. This means that TensorFlow will automatically de-duplicate summary names based on the scope they are created in. Also, passing a tensor or list of tags to a scalar summary op is no longer supported.
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/d_model.py:93 in define_graph.: merge_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.merge.
Init generator...
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/g_model.py:199 in define_graph.: scalar_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.scalar. Note that tf.summary.scalar uses the node name instead of the tag. This means that TensorFlow will automatically de-duplicate summary names based on the scope they are created in. Also, passing a tensor or list of tags to a scalar summary op is no longer supported.
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/g_model.py:219 in define_graph.: scalar_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.scalar. Note that tf.summary.scalar uses the node name instead of the tag. This means that TensorFlow will automatically de-duplicate summary names based on the scope they are created in. Also, passing a tensor or list of tags to a scalar summary op is no longer supported.
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/g_model.py:221 in define_graph.: scalar_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.scalar. Note that tf.summary.scalar uses the node name instead of the tag. This means that TensorFlow will automatically de-duplicate summary names based on the scope they are created in. Also, passing a tensor or list of tags to a scalar summary op is no longer supported.
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/g_model.py:226 in define_graph.: scalar_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.scalar. Note that tf.summary.scalar uses the node name instead of the tag. This means that TensorFlow will automatically de-duplicate summary names based on the scope they are created in. Also, passing a tensor or list of tags to a scalar summary op is no longer supported.
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/g_model.py:228 in define_graph.: scalar_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.scalar. Note that tf.summary.scalar uses the node name instead of the tag. This means that TensorFlow will automatically de-duplicate summary names based on the scope they are created in. Also, passing a tensor or list of tags to a scalar summary op is no longer supported.
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/g_model.py:232 in define_graph.: merge_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.merge.
WARNING:tensorflow:From ~/Adversarial_Video_Generation/Code/g_model.py:233 in define_graph.: merge_summary (from tensorflow.python.ops.logging_ops) is deprecated and will be removed after 2016-11-30.
Instructions for updating:
Please switch to tf.summary.merge.
Init variables...
Model restored from ../Models/Adversarial/model.ckpt-500000
get_train_batch c.TRAIN_DIR_CLIPS ../Data/.Clips/ c.NUM_CLIPS 0
Traceback (most recent call last):
  File "avg_runner.py", line 186, in <module>
    main()
  File "avg_runner.py", line 182, in main
    runner.train()
  File "avg_runner.py", line 68, in train
    batch = get_train_batch()
  File "~/Adversarial_Video_Generation/Code/utils.py", line 127, in get_train_batch
    path = c.TRAIN_DIR_CLIPS + str(np.random.choice(c.NUM_CLIPS)) + '.npz'
  File "mtrand.pyx", line 1391, in mtrand.RandomState.choice (numpy/random/mtrand/mtrand.c:15381)
ValueError: a must be greater than 0

I appreciate any tips or advice you can share.
Thank you,
George

Hey @orgicus – Thanks for the detailed info. Did you follow along with the usage instructions? (specifically step 3 about processing the data)

Hi Matt, Thank you so much for getting in touch and sorry to take your time with this.
It might be a case of RFTM on my side 😊
Thank you for pointing me in the right direction.
I've started  this yesterday:
python process_data.py -t ../Data/Ms_Pacman/Train/ ../Data/.Clips/

Currently it's Processed 2799700 clips. I haven't passed --num-clips so now I'm eagerly awaiting for the 5000000 counter :))

Eventually training completed and I started the avg_runner.py script, but after a full night of number crunching my 2GB GPU ran out of RAM:
I tensorflow/core/common_runtime/bfc_allocator.cc:693]      Summary of in-use Chunks by size:
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 56 Chunks of size 256 totalling 14.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 31 Chunks of size 512 totalling 15.5KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 25 Chunks of size 1024 totalling 25.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 1280 totalling 1.2KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 15 Chunks of size 2048 totalling 30.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 3072 totalling 3.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 4 Chunks of size 4096 totalling 16.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 6912 totalling 6.8KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 11776 totalling 11.5KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 4 Chunks of size 13824 totalling 54.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 7 Chunks of size 38400 totalling 262.5KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 3 Chunks of size 55296 totalling 162.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 61440 totalling 60.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 5 Chunks of size 75264 totalling 367.5KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 2 Chunks of size 131072 totalling 256.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 5 Chunks of size 192000 totalling 937.5KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 245248 totalling 239.5KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 322560 totalling 315.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 360448 totalling 352.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 3 Chunks of size 376320 totalling 1.08MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 2 Chunks of size 524288 totalling 1.00MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 589824 totalling 576.0KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 662272 totalling 646.8KiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 19 Chunks of size 1179648 totalling 21.38MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 1409024 totalling 1.34MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 2686976 totalling 2.56MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 3225600 totalling 3.08MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 9 Chunks of size 3276800 totalling 28.12MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 3538944 totalling 3.38MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 4194304 totalling 4.00MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 8 Chunks of size 4718592 totalling 36.00MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 5111808 totalling 4.88MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 3 Chunks of size 6553600 totalling 18.75MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 12320768 totalling 11.75MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 8 Chunks of size 13107200 totalling 100.00MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 19660800 totalling 18.75MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 29360128 totalling 28.00MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 429004800 totalling 409.13MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:696] 1 Chunks of size 827952128 totalling 789.60MiB
I tensorflow/core/common_runtime/bfc_allocator.cc:700] Sum Total of in-use chunks: 1.45GiB
I tensorflow/core/common_runtime/bfc_allocator.cc:702] Stats:
Limit:<PHONE_NUMBER>
InUse:<PHONE_NUMBER>
MaxInUse:<PHONE_NUMBER>
NumAllocs:                 9986112
MaxAllocSize:<PHONE_NUMBER>

W tensorflow/core/common_runtime/bfc_allocator.cc:274] ***************************************xxxxxxxx************************************xxxxxxxxxxxxxxxxx
W tensorflow/core/common_runtime/bfc_allocator.cc:275] Ran out of memory trying to allocate 262.50MiB.  See logs for memory state.
W tensorflow/core/framework/op_kernel.cc:975] Resource exhausted: OOM when allocating tensor with shape[8,256,210,160]
Traceback (most recent call last):
  File "avg_runner.py", line 186, in <module>
    main()
  File "avg_runner.py", line 182, in main
    runner.train()
  File "avg_runner.py", line 90, in train
    self.test()
  File "avg_runner.py", line 98, in test
    batch, self.global_step, num_rec_out=self.num_test_rec)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/Adversarial_Video_Generation/Code/g_model.py", line 389, in test_batch
    feed_dict=feed_dict)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 766, in run
    run_metadata_ptr)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 964, in _run
    feed_dict_string, options, run_metadata)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1014, in _do_run
    target_list, options, run_metadata)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/client/session.py", line 1034, in _do_call
    raise type(e)(node_def, op, message)
tensorflow.python.framework.errors_impl.ResourceExhaustedError: OOM when allocating tensor with shape[8,256,210,160]
	 [[Node: generator/scale_3/calculation/convolutions_1/Conv2D_2 = Conv2D[T=DT_FLOAT, data_format="NHWC", padding="SAME", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true, _device="/job:localhost/replica:0/task:0/gpu:0"](generator/scale_3/calculation/convolutions_1/Relu_1, generator/scale_3/setup/Variable_4/read)]]

Caused by op u'generator/scale_3/calculation/convolutions_1/Conv2D_2', defined at:
  File "avg_runner.py", line 186, in <module>
    main()
  File "avg_runner.py", line 178, in main
    runner = AVGRunner(num_steps, load_path, num_test_rec)
  File "avg_runner.py", line 50, in __init__
    c.SCALE_KERNEL_SIZES_G)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/Adversarial_Video_Generation/Code/g_model.py", line 48, in __init__
    self.define_graph()
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/Adversarial_Video_Generation/Code/g_model.py", line 179, in define_graph
    last_scale_pred_test)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/Adversarial_Video_Generation/Code/g_model.py", line 127, in calculate
    preds, ws[i], [1, 1, 1, 1], padding=c.PADDING_G)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/ops/gen_nn_ops.py", line 396, in conv2d
    data_format=data_format, name=name)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/framework/op_def_library.py", line 759, in apply_op
    op_def=op_def)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 2240, in create_op
    original_op=self._default_original_op, op_def=op_def)
  File "/Users/George/Downloads/Grouped/Projects/Resonate2017/workshops/ml4a/workshop/tf-venv/lib/python2.7/site-packages/tensorflow/python/framework/ops.py", line 1128, in __init__
    self._traceback = _extract_stack()

ResourceExhaustedError (see above for traceback): OOM when allocating tensor with shape[8,256,210,160]
	 [[Node: generator/scale_3/calculation/convolutions_1/Conv2D_2 = Conv2D[T=DT_FLOAT, data_format="NHWC", padding="SAME", strides=[1, 1, 1, 1], use_cudnn_on_gpu=true, _device="/job:localhost/replica:0/task:0/gpu:0"](generator/scale_3/calculation/convolutions_1/Relu_1, generator/scale_3/setup/Variable_4/read)]]

Is there a way to "resume" the process from just before it crashed ? :D

Hmm yeah, I trained this on 6GB GPUs, so you might need to change the batch size or some other hyperparams to get it to work on 2GB. You can load the last-saved version of your model by passing in its .ckpt file with the -l flag

Thank you very much for the explanations, worked like a charm! ❤


Add the anatomy of a figure tutorial

Create the notebook and add it to the TOC. Start with creating a figure
and adding coast line elements to it.

To add a title with multiple words, you must use single quotes '' on the outer string and double quotes "" around the title

FYI, as of PyGMT v0.6.0 (https://github.com/GenericMappingTools/pygmt/pull/1487), spaces are allowed in the titles, i.e. "+tCoastlines around Japan" would work. So you can remove this important note :wink:

Hi all, this is ready for a review. The content is probably a bit too much for 20 minutes but I think it will fit. I'll do a trial recording now to see how it goes. Any feedback would be appreciated. I can make a final recording later after feedback.

Looks pretty good! Just a couple of suggestions:

Bring some of the headings up a level. I.e. make h2->h1 and h3->h2. E.g. instead of ### Adding minor ticks, do ## Adding minor ticks so that they show up on the right sidebar. Or if you know of a jupyter-book setting to show h3 headings, I'm all ears!
I kinda feel like you could decrease the region's xmin a bit, maybe something like region = [125, 155, 30, 55] to make Japan a bit more centred in the middle of the map?

Alright, made the changes suggested by @weiji14 (thanks!) and made a recording: https://www.dropbox.com/s/fsalumnpgzz4ix6/egu22-pygmt-first-figure.mp4?dl=0
It's at a little over 21 min. I can try to do some cuts to get it down to 20 min if needed. Any feedback would be great!

Alright, made the changes suggested by @weiji14 (thanks!) and made a recording: https://www.dropbox.com/s/fsalumnpgzz4ix6/egu22-pygmt-first-figure.mp4?dl=0
It's at a little over 21 min. I can try to do some cuts to get it down to 20 min if needed. Any feedback would be great!

The recording looks great, honestly couldn't find anything major to nitpick on, and I think you've explained the basic PyGMT/GMT concepts really well :smile: 21min should be ok for now, let's see how long the other presentations are and we can trim it to <= 20min if needed.

If you clear the notebook cells and push another commit, I can approve and get this merged into the main branch.

Hi Leo. Congrats, very nice tutorial indeed. I was surprised though with one part of it. When you painted the land in lightgreen with the single command fig.coast(land="lightgreen") the figure came out with both painted land and ocean. How is that possible?

@weiji14 done 👍🏾
@joa-quim thanks! The figure is built dynamically so that call is adding to a pre-existing figure that already had the water. No magic there 🙂


updateRelationshipGroup

https://github.com/turms-im/turms/blob/ff69c24ccf7b3ddd02e30907870d6320c89cce19/turms-service/src/main/java/im/turms/service/domain/user/access/servicerequest/controller/UserRelationshipServiceController.java#L576
updateRelationshipGroup is not effect on this branch

Thanks for reporting this bug! The latest docker images and code of turms servers contain the bugfix, and you can pull them currently.


[🐛 Bug]: Server actions don't work with wrangler pages dev

@cloudflare/next-on-pages: 1.8.2
Description
Server actions do work fine when using next dev (with or without next-dev) and also in production, they do however not work locally when previewing the application with wrangler pages dev since there seem to be a discrepancy between the request's origin header which uses localhost and the x-forwarded-host header which uses <IP_ADDRESS>.
Reproduction
https://github.com/dario-piotrowicz/next-on-pages-server-actions-test/tree/main/next-app
To reproduce the issue:

run npm i
run npm run pages:build
run npm run pages:dev
navigate to http://localhost:8788/server-actions/simple-kv-forms
try to set a new value using the button

This should be the result:

Additional Information
One solution could be to set, during local development a proper value to allowedOrigins, the issue is that the config doesn't accept wildcards, and the port which is part of x-forwarded-host changes each time, so I think this is not really a feasible solution
Another idea would be to apply some logic in the build process itself so that for server actions we try to convert all potentially localhost urls to a well defined format (as for example localhost without a port), I am not a big fan of dev changes that effect the production build output, but this would likely be such a small one that it might be acceptable

Seems like allowedOrigins is getting wildcards supports soon: https://github.com/vercel/next.js/pull/59428

I've labeled this issue as "blocked by external" as we need to check with the wrangler team if the x-forwarded-host can be applied on their side

PR up in Wrangler to resolve this problem. See https://github.com/cloudflare/workers-sdk/pull/4630


Add groundcam support

Adds a groundcam class to Mambo.py and an example.
take_picture deletes everything after 35 pictures since it seems like the maximum capacity is 40.

Looks good!


IDEA: Batch/offline Pilot

This idea comes from a conversation between myself and @elevran as well as a comment from @nmittler https://github.com/istio/istio/issues/9504#issuecomment-473342916
The idea is to create an "offline Pilot".
We could feed the output of dump_kubernetes.sh to the tool and it would generate Envoy configuration for debugging problems that needed a dump.
You could also feed it the current system state and it could produce an Envoy configuration that could be mounted into a sidecar.  This might be good for very short-lived pods, and let them run without a control plane.
It could also help developers troubleshoot their Deployment descriptors without a live K8s cluster.
This could be an extension to pilot-discovery or a new CLI.

This is interesting idea. when troubleshooting pilot issues, I had to run it in k8s today and takes a lot of time and sometimes requires step through the code.

Thanks @linsun .  I have been talking with @mbanikazemi about this idea.  There is a lot of checking in pilot-discovery that could be leveraged for testing.  We also hope to write further checking in Pilot so that Pilot stops generating configuration that Envoy rejects and eliminating STALE sidecars.
Once such validation is in place in pilot-discovery it would be easy to run pilot discovery on a set of resources, then again with the existing resources merged with additional resources.  If supplying additional resources leads to invalid Envoy configuration being generated we could flag the new configuration as leading to an invalid Istio system state.


[W-8828011 Latest DoD; git ignores jsconfig.json

Updated PULL_REQUEST_TEMPLATE with latest Definition of Done.
Removed + git ignores lwc/jsconfig.json.

Critical Changes
Changes
Issues Closed
New Metadata
Deleted Metadata
Definition of Done
Refer to Definition of Done to see any additional details for the items below:

~Any net new LWC work has JEST test coverage 50% or above~
~Default Sa11y tests pass for all LWC components~
~🔒 Secure both Front-end (LWC) & back-end (Apex) as necessary~
~🔑 Grant users access in Permission Sets (Object, Field, Apex Class) as necessary~
[ ] Link the pull request and work item by PR comment and Chatter post respectively, e.g. GUS: W-0000000: Work Name
[ ] Make sure that ACs are updated (if any gaps)
[ ] All acceptance criteria have been met

[ ] Developer
[ ] Code Reviewer

~Pull Request contains draft release notes~
~Labels, help text, and customer facing messages are reviewed by Docs~
~QE story level testing completed~

W-8828011


list the servers that are running

Entity: user-server, Description: HTTP server (Model), Command Server (Workspace) or Code Runner (Job), Action: ls (lists the servers that are running)
ARGS:
[-a] --all
--limit, --offset
#53

Done


[5.4] "Npm run" commands don't work on windows.

Laravel Version: 5.4.1
PHP Version: 7.0.4
node v6.9.4
npm  v3.10.5

Description:
npm commands are completely broken on windows (windows 7 in this case), whenever I run npm run dev I get the following error:
'node_modules' is not recognized as an internal or external command,
operable program or batch file.

node-debug.log
I tried
  "scripts": {
    "dev": "node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "hot": "node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "production": "node node_modules/cross-env/bin/cross-env.js NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },

It ran but without success:
> @ dev c:\wamp\www\web
> node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.co
nfig.js

path.js:7
    throw new TypeError('Path must be a string. Received ' + inspect(path));
    ^

TypeError: Path must be a string. Received undefined
    at assertPath (path.js:7:11)
    at Object.parse (path.js:950:5)
    at new File (c:\wamp\www\web\node_modules\laravel-mix\src\File.js:14:30)
    at Object.module.exports.preprocess (c:\wamp\www\web\node_modules\laravel-mix\src\index.js:108:14)
    at Object.module.exports.sass (c:\wamp\www\web\node_modules\laravel-mix\src\index.js:84:27)
    at Object.<anonymous> (c:\wamp\www\web\webpack.mix.js:17:5)
    at Module._compile (module.js:570:32)
    at Object.Module._extensions..js (module.js:579:10)
    at Module.load (module.js:487:32)
    at tryModuleLoad (module.js:446:12)
    at Function.Module._load (module.js:438:3)
    at Module.require (module.js:497:17)
    at require (internal/module.js:20:19)
    at Mix.initialize (c:\wamp\www\flores\node_modules\laravel-mix\src\Mix.js:38:9)
    at Object.<anonymous> (c:\wamp\www\flores\node_modules\laravel-mix\setup\webpack.config.js:18:5)
    at Module._compile (module.js:570:32)

Steps To Reproduce:
Run npm run dev command on windows.

These are the scripts as they are meant to be:
  "scripts": {
    "dev": "cross-env NODE_ENV=development webpack --progress --hide-modules",
    "watch": "cross-env NODE_ENV=development webpack --watch --progress --hide-modules",
    "hmr": "cross-env NODE_ENV=development webpack-dev-server --inline --hot",
    "production": "cross-env NODE_ENV=production webpack --progress --hide-modules"
  }

@PascaleBeier No.
Just installed the latest version. I'm pretty sure that's the package.json installed for Mac users.
Also, this is the master branch: https://github.com/laravel/laravel/blob/master/package.json

@Frondor Did you try these? Taken from laravel-mix.

I have tried @PascaleBeier 's suggestion, but same issue.
Fresh installed Laravel 5.4.2 with npm 4.12, then npm install.
npm run production
npm-debug.txt

Looks like I may have to get my PC out of the closet :) ... can anyone confirm a working resolution that works on both mac and Windows?

@Frondor Please paste in your webpack.mix.js file.

change from this:
"dev": "node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
to this:
"dev": "cross-env NODE_ENV=development webpack --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
for other commands same

I dont know is this work for Mac but for me on Windows work

@bajro17 - But then it doesn't work if you're using Yarn. :/

I don't know  than we need to find universal solution 😢

Just installed Laravel 5.4.3 on my windows machine and then ran
npm install
and then tried
npm run dev, npm run watch and it works perfectly fine for me.

Changes like cross-env NODE_ENV=development webpack --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js don't work because it assumes you have cross-env added you your PATH environment variable.
Appending the node command to the string should do the trick, but the error I shared before is still there. Debug logs are pointing to c:\wamp\www\web\node_modules\laravel-mix\src\File.js:14:30.
I didn't try any other version than L5.4.1, I'll check the 5.4.3 once I get back in home.

That's why we need to see what your webpack.mix.js file looks like. I'm wondering if there's an method argument there that isn't correct.

@JeffreyWay everything is default, I didn't touch a single.
const { mix } = require('laravel-mix');

/*
 |--------------------------------------------------------------------------
 | Mix Asset Management
 |--------------------------------------------------------------------------
 |
 | Mix provides a clean, fluent API for defining some Webpack build steps
 | for your Laravel application. By default, we are compiling the Sass
 | file for the application as well as bundling up all the JS files.
 |
 */

mix.js('resources/assets/js/app.js', 'public/js')
   .sass('resources/assets/sass/app.scss', 'public/css');

Win 8, node 7.4.0, npm 4.0.5 Laravel 5.4.3 everything works perfectly. Thanks for all the work put into this.

I updated Node from 5.x.x to 7.4.0 and then it works on Windows (same error before).
sudo npm cache clean -f
sudo npm install -g n
sudo n stable

@Frondor - At this point, your question is specifically related to Laravel Mix. It doesn't have anything to do with the framework code. I'm going to port this question over there.
https://github.com/JeffreyWay/laravel-mix/issues/185

Same problem
win 10 64bits
wampserver php7
Solution:
Update windows npm with installer
https://nodejs.org/en/download/

Same problem
MacOs Sierra
Laravel Framework 5.4.10
Valet - PHP 7.1.1
NPM 4.0.5
//Terminal
$ npm run dev

@ dev /Users/gabrielap/Sites/projectX
node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js

module.js:472
throw err;
^
Error: Cannot find module '/Users/gabrielap/Sites/projectX/node_modules/cross-env/bin/cross-env.js'
at Function.Module._resolveFilename (module.js:470:15)
at Function.Module._load (module.js:418:25)
at Module.runMain (module.js:605:10)
at run (bootstrap_node.js:420:7)
at startup (bootstrap_node.js:139:9)
at bootstrap_node.js:535:3
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "dev"
npm ERR! node v7.4.0
npm ERR! npm  v4.0.5
npm ERR! code ELIFECYCLE
npm ERR! @ dev: node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @ dev script 'node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the  package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls
npm ERR! There is likely additional logging output above.
npm WARN Local package.json exists, but node_modules missing, did you mean to install?
npm ERR! Please include the following file with any support request:
npm ERR!     /Users/gabrielap/Sites/changingmybooking/npm-debug.log

I have same problem
I only upgrade my node
its fixed

You can solve this problem 100%
https://github.com/AttaUrRehman24/laravel-mix

Same problem when I run below
$ npm run dev

node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js

'node_modules' is not recognized as an internal or external command,
operable program or batch file.
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ dev: node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the @ dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
Tried cross-env and  node but nothing is working for me.
I use integrated terminal MINGW64
My versions:
NPM - 5.6.0
Node - v8.11.2
Laravel - 5.4.36
Windows 8.1, 64-bit
My package.json:
{
"private": true,
"scripts": {
"dev": "node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"watch": "node_modules/cross-env/bin/cross-env.js NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"hot": "node_modules/cross-env/bin/cross-env.js NODE_ENV=development webpack-dev-server --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
"production": "node_modules/cross-env/bin/cross-env.js NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
},
"devDependencies": {
"axios": "^0.15.2",
"bootstrap-sass": "^3.3.7",
"jquery": "^3.1.0",
"laravel-mix": "^0.5.0",
"lodash": "^4.16.2",
"vue": "^2.0.1"
}
}
Please somebody help me with this. Thanks

Any updates here?
Scripts that work in mac and windows???

Maybe best to ask on the mix repo. I have a dev environment on Mac, Ubuntu and Windows and all work as expected.

Here is what worked for me on Win 10.
  "scripts": {
    "dev": "npm run env NODE_ENV=development&&webpack --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "npm run env NODE_ENV=developmen&&webpack --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
    "hot": "npm run env NODE_ENV=development&&webpack-dev-server --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "production": "npm run env NODE_ENV=production&&webpack --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
  },


Start separating layers and refactor results

The phpDocumentor 3 renderer needs to benefit from the concept of an
improving insight into the architecture of phpDocumentor 3.
For this purpose we formalize what information is passed to Actions in the
form of a rendering context and we abstract file system interactions into a
Domain concept of Artefacts and Assets.

Code looks ok over all, but I found it very hard to understand what is going on in the renderen.
At a number of points you are breaking with the concept of the separated layers. I consider this as work in progress? Especially file system interactions are everywhere. In some cases with php-functions, which should be removed if we want to support other locations than just local file system. Beside those functions there are many interactions with flysystem in the code. But we already discussed that earlier that we should wrap that so flysystem is not every where in our code.
This is already a big step forward to a cleaner design.

@jaapio all references to FlySystem should be moved mainly to the Infrastructure layer; the work is indeed still in progress but I didn't want to create an immense PR :) (better to PR often than PR large)
The Assets and Artefacts services are the first step in abstracting FlySystem out of the Domain Model; these services will provide a layer of abstraction above these concepts so that we could exchange FlySystem for something else if needed.
During the upcoming refactorings I will take another deep loop where FlySystem is used within the system, or worse: where we directly interact with the filesystem

Sorry for all the alignment messages ;-)
Nice work!

Given that none of these comments indicate a bug or blocking issue I will merge this and fix the comments in a subsequent PR


Question: multiple response for multiple parameters

I have the following spec test:
require 'swagger_helper'

describe 'Devices API' do

  path '/api/v1/devices' do

    get 'Retrieves devices, optionally mating criteria' do
      security [ Token: [] ]
      produces 'application/json'

      let(:api_key) { FactoryGirl.create(:api_key) }
      let(:Authorization) { "Token token=\"#{api_key.access_token}\"" }

      before do |example|
        loc = FactoryGirl.create(:location, name: 'Earth')
        FactoryGirl.create(:device, location: loc)
        FactoryGirl.create(:device, location: loc)
        FactoryGirl.create(:device, location: loc)
        submit_request(example.metadata)
      end

      response '200', 'Returns all Earth devices' do
        parameter name: :location, :in => :query, :type => :string
        let(:location) { 'Earth' }

        it 'returns a valid 201 response' do |example|
          assert_response_matches_metadata(example.metadata)
        end

        it 'returns an array with 3 entries' do |example|
          data = JSON.parse(response.body)
          p data
          expect(data.class).to be(Array)
          expect(data.size).to eq(3)
        end
      end

      response '200', 'no devices found' do
        parameter name: :role, :in => :query, :type => :string
        let(:role) { 'DoesNotExist' }

        before do |example|
          submit_request(example.metadata)
        end

        examples 'application/json' => {}

        it 'returns an array with 0 entries' do |example|
          data = JSON.parse(response.body)
          expect(data.class).to be(Array)
          expect(data.size).to eq(0)
        end

      end
    end
  end

end

I'm failing to understand how parameters work in this case.  My api method call takes three optional parameters that I would like to test independently, but in each response block, if I add a parameter to it, that parameter seems to be required in all other response blocks.  So if a parameter shows up in any response block, its appended to the call for every response block., which is not what I want.
I'm looking for a way that I can independently test a parameter in isolation, but have all parameters noted in the API docs (and not duplicated).  If anyone has advice on the subject, I would appreciate it.

You need to describe the operation fully, including optional parameters, before the response blocks. Unlike the declarations that come before it, a response block is a specific test case where you provide an expected result (e.g. status code) and then assign parameter values (via let) to yield that result. There should be only 1 response block per status code but you can use contexts within them to create sub test cases for a given status code. For example:
get 'Retrieves devices, optionally mating criteria' do
  produces 'application/json'
  parameter name: :location, in: :query, type: 'string', required: false
  parameter role: :location, in: :query, type: 'string', required: false

  response '200', 'success' do

    context 'location provided' do
      let(:location) { 'Earth' }
      before do
        submit_request(example.metadata)
      end

      it 'returns devices matching the provided location' do
        data = JSON.parse(response.body)
        expect(data.size).to eq(3)
      end
    end

    context 'role provided' do
      let(:role) { 'DoesNotExist' }
      before do
        submit_request(example.metadata)
      end

      it 'returns devices matching the provided role' do
        data = JSON.parse(response.body)
        expect(data.size).to eq(0)
      end
    end
  end
end

Thanks for the response.  I'd initially thought that's how it worked, but I keep running into an issue.  Here is an updated spec and the failure I see.  Note the commented let items are those throwing the rspec errors below.  I've also removed bits from the test you likely don't care about.
    get 'Retrieves devices, optionally mating criteria' do
      produces 'application/json'

      parameter name: :location, in: :query, type: 'string', required: false
      parameter name: :model, in: :query, type: 'string', required: false
      parameter name: :role, in: :query, type: 'string', required: false

      response '200', 'Returns all Earth devices' do

        before do |example|
          submit_request(example.metadata)
        end

        context 'location provided' do
          let(:location) { 'Earth' }
        # let(:model) { 'Human' }
        # let(:role) { 'Think' }

          it 'returns an array with 3 entries' do |example|
            data = JSON.parse(response.body)
            expect(data.class).to be(Array)
            expect(data.size).to eq(3)
          end
        end

      end
    end

The failure for this test is as follows.
  1) Devices API /devices get Returns all Earth devices location provided returns an array with 3 entries
     Failure/Error: submit_request(example.metadata)

     NoMethodError:
       undefined method `model' for #<RSpec::ExampleGroups::DevicesAPI::Devices::Get::ReturnsAllEarthDevices::LocationProvided:0x007f88c44469a8>
     # ./spec/integration/devices_spec.rb:28:in `block (5 levels) in <top (required)>'
     # ./spec/spec_helper.rb:80:in `block (3 levels) in <top (required)>'
     # ./spec/spec_helper.rb:79:in `block (2 levels) in <top (required)>'

If I instead comment out the let for location, I get a different error.
  1) Devices API /devices get Returns all Earth devices location provided returns an array with 3 entries
     Failure/Error: submit_request(example.metadata)
       `location` is not available from within an example (e.g. an `it` block) or from constructs that run in the scope of an example (e.g. `before`, `let`, etc). It is only available on an example group (e.g. a `describe` or `context` block).
     # ./spec/integration/devices_spec.rb:28:in `block (5 levels) in <top (required)>'
     # ./spec/spec_helper.rb:80:in `block (3 levels) in <top (required)>'
     # ./spec/spec_helper.rb:79:in `block (2 levels) in <top (required)>'

Which version of rswag? You'll need latest - 1.5.0

Ah, much better.  Updating to 1.5.0 has corrected both rspec errors above.  Thank you.


VSCode Fix All command doesn't trigger ESLint: Fix all auto-fixable Problems

VSCode: 1.65.0-insider
OS: MacOS12.2.2
eslint: pre-rleasev2.2.3

editor.codeActionsOnSave is not related with my use case. I use autoSave after delay.

Here is what I am seeing. Is this not working for you?

My use case is call:

@mjbvz do you know where the Fix All comes from (e.g. TypeScript)?

@mjbvz thanks!
@tjx666 the Fix All label is TS specific. I will close the issue since from an ESLint perspective things work as expected.

You can see there is a command Fix All:

I's for editor, not only js/ts:

In follwing situation, there is an eslint error and a stylelint error:

When I call Fix All, only stylelint auto fix is triggered:
https://user-images.githubusercontent.com/41773861/176236153-6f37e513-29b8-427a-9caf-4046034d2d70.mov

@dbaeumer I'm sorry that my origin issue is not about the Fix All label in following:

I am not sure I fully understand this. When I trigger Fix All I get the same submenu poping up. In the latest version it now shows that the Fix All entry is for TS.

Hmm, strange since this works for me.

Could you provide me with a GitHub repository that has your setup. May be it is a setting / configuration issue

@dbaeumer
You need to enable autoSave and disable codeActionsOnSave:
{
    "files.autoSave": "afterDelay",
    // not work when enable autoSave
    // "editor.codeActionsOnSave": {
    //     "source.fixAll": false,
    //     "source.addMissingImports": true,
    //     "source.fixAll.eslint": true,
    //     "source.fixAll.stylelint": true
    // },
}

Was able to reproduce this.

Fix is in 2.2.5 pre-release


doc overhaul step 1: simplify index and group deprecated files

This is the first step on #2093 . Quite a few links might be broken for the time being but I would like to make sure I'm on the right track before moving forward
Summary of changes

simplified top index into three entires: user guide, development guide, and deprecated (depth is now 1, before I can clean up the entries for sub index)
renamed doc for python eggs (formats.txt --> python_egg.txt)
move python_eggs, easy_intall, python2to3 docs into dedicated folder (deprecated)
create index inside "deprecated" folder and reference it in the top index

Pull Request Checklist

[ ] Changes have tests
[x] News fragment added in changelog.d.

If possible, I would like to have this PR merged into a separate branch rather than master because it is an ongoing process and might (and already) break some links until it's completed:)


Update JSC target revision to latest commit

For some odd reason the commit ref wasn't found in the latest clone (of git://git.webkit.org/WebKit.git)
git checkout ec7c3f75f3f3d7e5db6e92cf575563143c998a5f
fatal: reference is not a tree: ec7c3f75f3f3d7e5db6e92cf575563143c998a5f

Since the patch still applies cleanly, I just updated it to the latest commit :)

Hmm odd, it seems there are two git mirrors for WebKit: https://git.webkit.org/ and somehow they have different commits:
https://git.webkit.org/?p=WebKit-https.git;a=commit;h=ec7c3f75f3f3d7e5db6e92cf575563143c998a5f exists, but
https://git.webkit.org/?p=WebKit.git;a=commit;h=ec7c3f75f3f3d7e5db6e92cf575563143c998a5f doesn't. I've used the WebKit-https one, mainly just because it's recommended here: https://webkit.org/getting-the-code/

Huh, this is weird - I don't understand why that mirror exists.
Grepping through a fresh clone of both...
#!/bin/bash
WK_GIT_URI="git://git.webkit.org"
declare -a WK_REPOS=(
    "WebKit"
    "WebKit-https"
)

# (very) shallow clone
for WK_REPO in "${WK_REPOS[@]}"; do
  git clone -j`nproc` --depth 1 --single-branch --branch master ${WK_GIT_URI}/${WK_REPO}.git
done

# grep -iR  'webkit.org/webkit..' "${WK_REPOS[@]}"
rg -i 'webkit.org/webkit..' "${WK_REPOS[@]}"

read -r -p "[+] Delete repos? <y/N> " del
[[ "${del}" =~ "[yY][eE][sS]|[yY])" ]] && rm -rf "${WK_REPOS[@]}"

 ➜ ./hmm.sh
      [  ... ]
./WebKit/ReadMe.md
23:On Windows, follow the [instructions on our website](https://webkit.org/webkit-on-windows/).
30:git clone git://git.webkit.org/WebKit.git WebKit
141:For building WebKit on Windows, see the [wiki page](https://webkit.org/webkit-on-windows/).

./WebKit-https/ReadMe.md
23:On Windows, follow the [instructions on our website](https://webkit.org/webkit-on-windows/).
30:git clone git://git.webkit.org/WebKit.git WebKit
141:For building WebKit on Windows, see the [wiki page](https://webkit.org/webkit-on-windows/).

./WebKit/Tools/ChangeLog-2018-09-11
8702:        <https://webkit.org/webkit-on-windows/#installing-developer-tools>.

./WebKit/Tools/EWSTools/setup-commit-queue.sh
43:git clone git://git.webkit.org/WebKit.git WebKit

./WebKit/Tools/EWSTools/build-repo.sh
41:git clone git://git.webkit.org/WebKit.git webkit-$1

./WebKit-https/Tools/ChangeLog-2018-09-11
8702:        <https://webkit.org/webkit-on-windows/#installing-developer-tools>.

./WebKit-https/Tools/EWSTools/setup-commit-queue.sh
43:git clone git://git.webkit.org/WebKit.git WebKit

./WebKit-https/Tools/EWSTools/build-repo.sh
41:git clone git://git.webkit.org/WebKit.git webkit-$1

Every occurrence uses git://git.webkit.org/WebKit.git (even in the WebKit-https repo) 🤔

README.md
WebKit on Windows

Even better! If you search the domain ( "webkit.org/webkit-https" site:webkit.org )... only 6 results, where 4 or 6 are related to the WebKit-https repo itself. The others are:

Getting the code (page you linked)
UsingGitWithWebKit

FWIW I also noticed:

BuildingGtK contradicts WebKitGTK/StartHacking in the GTK documentation, where the former links back to Getting the code
JSCOnly documents WebKit.git

So I dug around a bit in the WebKit Slack, and it seems like the -https one is the recommended one (the difference is apparently that it uses svn over https in the background, while the other uses plaintext svn, and since the svn url is part of the commit message, the two have different git hashes...). The Github mirror is also set to use the -https one: "mirrored from git://git.webkit.org/WebKit-https.git" (although the github mirror is currently broken). It also seems like they are planning to move to git completely in the near future. Anyway, for now I think we can stay on the -https clone but maybe note that explicitly in the README.md for the JavaScriptCore target. WDYT?

I thought that might be the case, I just couldn't find it documented, oh well haha - yeah that SGTM 👍🏽


Request failed with status code 404

Describe The Bug:
It is an UDR (Unifi Dream Router) not an UDM (Unifi Dream Machine)
At Starting from HomeBridge I get that Message.
With Port 8443
[UniFi AP Lights] Both authentication methods failed: AxiosError: Request failed with status code 404
[UniFi AP Lights] Device discovery failed: Request failed with status code 404
Without Port
[UniFi AP Lights] Device discovery failed: Request failed with status code 404
To Reproduce:
UDR (Unifi Dream Router) run on UniFi OS 3.2.12
UniFi Network run on Version 8.1.127
Install plugin with Homebridge and configure from Documentation
Expected behavior:

Logs:
With Port 8443
[UniFi AP Lights] Both authentication methods failed: AxiosError: Request failed with status code 404
[UniFi AP Lights] Device discovery failed: Request failed with status code 404

Without Port
[UniFi AP Lights] Device discovery failed: Request failed with status code 404

Plugin Config:
{
  "name": "UniFi AP Lights",
  "platform": "UnifiAPLight",
  "host": "192.1XX:X:X:8443",
  "username": "XXXXXX",
  "password": "XXXXXX"
}

or

{
  "name": "UniFi AP Lights",
  "platform": "UnifiAPLight",
  "host": "192.1XX:X:X",
  "username": "XXXXXX",
  "password": "XXXXXX"
}

Screenshots:

Environment:

Plugin Version: 1.2.1
Homebridge Version: 1.8.1
Node.js Version: 20.12.2
NPM Version:
Operating System: Docker in Portainer on an Raspberry Pi 4

Hello @daywalkeraut! I have made some minor changes, including support (I hope!) for UDM and UDR devices.
Before reinstalling please enable debug mode for homebridge in the homebridge settings.
After enabling debug mode please reinstall the plugin. Your issue will probably not be fixed, but hopefully we can now see in the logs exactly why it is failing.

Hello Pizzalorddex,
always when I write your name I want eat a Pizza :-)
Thank you so much for you Work.
You change so much on the Plugin from Yesterday to today. Amazing
I have some information for you from the debug mode.
With Port 8443
[5/16/2024, 3:47:03 PM] [UniFi AP Lights] Primary authentication method failed, attempting secondary.
(node:8537) [DEP0123] DeprecationWarning: Setting the TLS ServerName to an IP address is not permitted by RFC 6066. This will be ignored in a future version.
(Use node --trace-deprecation ... to show where the warning was created)
[5/16/2024, 3:47:04 PM] [UniFi AP Lights] Both authentication methods failed: AxiosError: Request failed with status code 404
Requesting URL: /s/default/stat/device
Endpoint not found: /s/default/stat/device, trying next endpoint
Requesting URL: /proxy/network/api/s/default/stat/device
[5/16/2024, 3:47:04 PM] [UniFi AP Lights] Device discovery failed: Request failed with status code 404
Without Port
[5/16/2024, 3:48:43 PM] [UniFi AP Lights] Authentication with secondary method successful.
Requesting URL: /s/default/stat/device
Endpoint not found: /s/default/stat/device, trying next endpoint
Requesting URL: /proxy/network/api/s/default/stat/device
[5/16/2024, 3:48:44 PM] [UniFi AP Lights] Device discovery failed: Request failed with status code 404
Have a Nice Day

Ok, thanks! Looks like you only need to test without the port number :)
Logging into the API is not a problem and uses the correct URL. That is very good!
It fails requesting devices from the API so I suspect it is a problem with how I am creating the URL for your usage.
I have updated the plugin (1.2.8), please test with this version to see if it is working.

Good Evening Pizzalorddex,
you really AMAZING.
Looks better.
The plugin start an load an find my two AP the UAP-AC-IW and the Unifi Dream Router and I also get two toggle in HomeKit.
The UAP-AC-IW toggle works can turn on and off the Blue LED from the UAP-AC-IW
The Unifi Dream Router toggle I can press on and off butt the Blue LED from the Unifi Dream Router do nothing.
But it is already a very good way both toggle appear good work nice 👍
Hier some logs.
[UniFi AP Lights] Finished loading, starting device discovery.
[UniFi AP Lights] Primary authentication method failed, attempting secondary.
[UniFi AP Lights] Authentication with secondary method successful.
Requesting URL: /api/s/default/stat/device
Endpoint not found: /api/s/default/stat/device, trying next endpoint
Requesting URL: /proxy/network/api/s/default/stat/device
[UniFi AP Lights] Adding new accessory: UAP-AC-IW (123456789abcd……..)
[UniFi AP Lights] Adding new accessory: Unifi Dream Router (987654321abc……..)
[UniFi AP Lights] Successfully set LED state for Unifi Dream Router to on.  (Nothing Happen)
[UniFi AP Lights] Successfully set LED state for Unifi Dream Router to off.  (Nothing Happen)
[UniFi AP Lights] Successfully set LED state for UAP-AC-IW to on.  (Blue LED turn ON)
[UniFi AP Lights] Successfully set LED state for UAP-AC-IW to off.  (Blue LED turn OFF)
Thanks Again for your Work an Time you a Genius

Thanks for the feedback. I was hoping it would be simple, but it looks like it isn't so simple. Let me research this a bit more to see if it is possible. I may ask you to run a few commands to gather information about the UDR. I guess it handles its light differently than WAPs.

Yes of course you can tell me what commands I should run where.
I will take some screenshots later and post it here for you I think I see what is different.

Here the Picture what I found what is different.
Better Picture because I can not explain maybe you would understand me wrong.

Thanks for the additional pictures! That makes it a little more clear for me. It also makes me worried because the app would need to use the API to control the light. If it is not supported in the app it is hard to say if the plugin can support it.
I am sorry, but this will be a long message. If you don't understand anything I will be happy to answer!
To check further there are some commands you can run from a linux machine, like your raspberry pi. Anything in the commands you need to replace with your own information I will put in < >
First we need to log into the API to copy a couple tokens using this command:
curl -k  -i -X POST "https://<YOUR-HOST>/api/auth/login" -H "Content-Type: application/json" -d '{"username": "<YOUR-USERNAME>", "password": "<YOUR-PASSWORD>"}'
You should see a message like this:
HTTP/1.1 200
vary: Origin
Set-Cookie: unifises=THE-FIRST-TOKEN; Path=/; HttpOnly
Set-Cookie: csrf_token=THE-SECOND-TOKEN; Path=/
X-Frame-Options: DENY
Content-Type: application/json;charset=UTF-8
Content-Length: 30
Date: SOME-DAY-AND-TIME GMT
From this message we need both of the sets of random numbers and letters for unifises and csrf_token. Using these we can actually talk to the API.
Next, we can run this command to see what capabilities the udr has:
curl -k -X GET "https://<YOUR-HOST>/proxy/network/api/s/default/stat/device"     -H "Content-Type: application/json"     -H "Cookie: unifises=<YOUR-UNIFISES-TOKEN>; csrf_token=<YOUR-CSRF_TOKEN>"     | jq '.data[] | select(.type == "udm") | {id: ._id, name: .name, type: .type, model: .model, capabilities: (. | with_entries(select(.key | contains("led"))))}'
You should see a message like this:
{
"id": "AN-ID-NUMBER",
"name": "NAME-OF-DEVICE",
"type": "udm",
"model": "UDR",
"capabilities": {
"mesh_sta_vap_enabled": false,
"led_override_color": "#0000FF",
"atf_enabled": false,
"dot1x_portctrl_enabled": false,
"led_override": "on",
"led_override_color_brightness": 100,
"vwireEnabled": false
 }
You can censor the id and name, those are not important.
This should be your UDR. For type: it should say udm and for model: it should say UDR.
In this list it is very important that there is something like led_override.
Please send this so I can see what is available on the UDR to play with :)

The initial bug has been solved. All messages regarding the new feature to support UDR LED control have been moved to #4 Add Support For UDR LED Control. We can continue the conversation there @daywalkeraut :)


h5py 3.0+ triggers TestHDF5BasicIO Error

It looks like clifford has recently been failing to build in nixpkgs because of the following test failure. I looked in the issues here, but didn't see this reported. Here's a link to the log in the nix build system: https://hydra.nixos.org/build/134004734.
I believe that this failure results from bumping h5py from 2.10.0 to the latest release, 3.1.0.
=================================== FAILURES ===================================
_____________________ TestHDF5BasicIO.test_write_and_read ______________________

self = <clifford.test.test_io.TestHDF5BasicIO object at 0x7fffa0dc5580>
tmp_path = PosixPath('/build/pytest-of-nixbld/pytest-0/test_write_and_read0')

    def test_write_and_read(self, tmp_path):
        file_name = str(tmp_path / "test.ga")

        basis_names = np.array(layout.basis_names, dtype=str)

        mv_array = ConformalMVArray([random_point_pair() for i in range(1000)]).value
        write_ga_file(file_name, mv_array, layout.metric, basis_names, compression=True,
                      transpose=False, sparse=False, support=False)

        data_array, metric_2, basis_names_2, support = read_ga_file(file_name)

        np.testing.assert_equal(data_array, mv_array)
        np.testing.assert_equal(layout.metric, metric_2)
>       np.testing.assert_equal(basis_names, basis_names_2)
E       AssertionError:
E       Arrays are not equal
E
E       Mismatched elements: 5 / 5 (100%)
E        x: array(['e1', 'e2', 'e3', 'e4', 'e5'], dtype='<U2')
E        y: array([b'e1', b'e2', b'e3', b'e4', b'e5'], dtype=object)

test_io.py:35: AssertionError

https://docs.h5py.org/en/latest/whatsnew/3.0.html

The interface for storing & reading strings has changed - see Strings in HDF5. The new rules are hopefully more consistent, but may well require some changes in coding using h5py.

Duplicate of #387

Ah sorry. Closing,


Another null error

The error is "Invalid get index "player_interaction_component""

Thanks for catching this!
This error happens when the player tries to use an item that is not in their inventory, but in a container like the chest.
I will add a conidition check to avoid this from happening in the next update, hopefully later today.

Should now be fixed in experimental/BETA 202401.8

Thanks


Fixed sharing on Pinterest

Fixes
Fixes #590  by @makkoncept
Description
I just changed the image url from image.foreign_landing_url to image.url with the help vue developer tool and it works fine now!

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

@brenoferreira I can, but I'm not able to fix as it says These conflicts are too complex to resolve in the editor

@brenoferreira I removed the merge conflicts, Could you once review now?

@brenoferreira Yea I have done now


Cannot find interface declaration

From #65,
/Users/samhith/project/featuremanager/FeatureManager.h:101:29: error: cannot find
      interface declaration for 'NSObject', superclass of 'FeatureManager'
@interface FeatureManager : NSObject
~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/samhith/project/featuremanager/FeatureManager.h:103:3: error: expected a type
+(BOOL)isAppTypeNew;
  ^
/Users/samhith/project/featuremanager/FeatureManager.h:104:3: error: expected a type
+(BOOL)loadFile;

Is there anything I can do to overcome these errors? Let me know if you need more info on this. Thanks!
Originally posted by @Samhithgb in https://github.com/uber/piranha/issues/65#issuecomment-651260577

This should not error out as only the syntax is being processed. See https://github.com/uber/piranha/blob/master/objc/piranha-objc.sh#L15.
@Samhithgb, is it possible to provide a simple reproducer?


[FEATURE] Select record from Lookup Record Dialog

Describe the feature

After clicking on "Add Existing Contact" within the Account form, it opens up a Lookup Records dialog:

Explain why this feature is needed

Need to be able to handle selecting a record from a subgrid
For Accounts, you cannot add a Primary Contact unless the Contact is added to the Contact subgrid.
Additional context

Sample code that will get you to the Lookup Record dialog
xrmApp.OnlineLogin.Login(_xrmUri, _username, _password, _mfaSecretKey);

xrmApp.Navigation.OpenApp(UCIAppName.Sales);

xrmApp.Navigation.OpenSubArea("Sales", "Accounts");

xrmApp.Grid.SwitchView("Active Accounts");

xrmApp.Grid.OpenRecord(0);
xrmApp.ThinkTime(500);

// In order to set the Primary Contact, that contact must be listed as an Account contact
xrmApp.RelatedGrid.ClickCommand("Add Existing Contact",null, true, "Contacts");

// Need to handle the Lookup Records window and select a record
// Feature Request #

// To work around the bug below, clearvalue first to initalize the field and then set it
xrmApp.Entity.ClearValue(new LookupItem { Name = "primarycontactid" });

// Bug - System.InvalidOperationException: No Results Matching Jim Were Found. #769
xrmApp.Entity.SetValue(new LookupItem { Name = "primarycontactid", Value = "Jim" });
xrmApp.ThinkTime(500);

any chance this can be fixed? literally, we can't automate "add existing" in any 1:N or N:N relationship

Is it fixed, please help

Hi team is there any chace this issue can be fixed? we are unable to add records. Much Appreciated if this is released soon.
Thanks


Select input for foreign key field

A common pattern in admin UIs is to let the user select a foreign key value from a list of options from the related table. For example, when creating or editing an Item, the user might like to pick a Category from a list instead of copy/pasting a Category id from another view.
I've confirmed that this feature does not currently exist in ash_admin.
I have cooked up a naive solution which I'm happy to share via PR, but as I'm new to Ash (as well as Elixir) I suspect I don't have the configuration part well solved, or the feature set for that matter. It feels like with Ash it's important to get this part right first.
An example
In ash_admin:

I've added a :select field type
AshAdmin.Components.Resource.Form builds the select options by calling read action named :select_options on the configured module

Then my Resources look like this:
MyProject.Catalog.Item
  admin do
    form do
      field :category_id,
        type: :select,
        options: %{
          module: MyProject.Catalog.Category
        }
    end
  end

MyProject.Catalog.Category
  actions do
    read :select_options do
      prepare build(select: [:id, :name])
    end
  end

Things I'm unsure about:

having to pass the module name to the AshAdmin.Resource.Field: there's probably a way it could be derived from the relationship, but would that suffice always?
requiring the developer to add a :select_options read action in the related resource: too heavy handed? Would this be better if it were derived from something?
adding "options" to the AshAdmin.Resource.Field struct in this way: does it unneccessarily clutter the AshAdmin.Resource.Field module? Is there a better abstraction?
I can imagine wanting to configure other things such as overriding the field label: In my example we have the "Category Id" field, but in the context of a select box, the user is really choosing a "Category"

I look forward to thoughts on this.

I think that this should likely be derived automatically based on configuration in the destination resource perhaps?
Something like:

if we are editing a field, and that field is a foreign key, we check if there is a config called like label_field on the destination resource, then we select with that label.
if we're editing a relationship, we know what the particular destination is, so if what we're modifying is the primary key of the destination resource and the destination has an label_field then we can do the same thing.
we also make sure to "load" the field that is the label_field, that way we can do this

This allows doing things on your users like
label_field :admin_label

....

calculate :admin_label, :string, expr("#{email} (#{id})")


Fix example as not all aliases are available outside ctx.issue

See also: RDOC-1485

@prplecake thank you for your suggestion. I've applied a slightly modified version of your code not to duplicate the string constant.


Login

#9 Login form component

Edited to merge to dev branch. Mistakenly originally created for main branch, please reject if there are any concerns.


Adding support for get/set_protocol

Needed to support NKRO keyboards
Includes additional logic to force report or boot protocol in case of
problemmatic host drivers (typically BIOSs and bootloaders)

It used to be very common that BIOSs did not send set_protocol to
boot mode when requiring the boot mode keyboard descriptor

Includes country code support
This changes the new() functions to include a new settings field
new(alloc, report_descriptor, poll_ms, HidClassSettings::default()) maintains the previous behavior

Addressed your comments, added a bunch more documentation.
Also cleaned up some cargo doc warnings.

Merge conflict :S

Np, I'll take care of it.

Should be good now.


New theme: Doks

Theme submission
Please make sure that you have read the theme submission guidelines before submitting a theme. The guidelines provide all relevant information and requirements that have to be fulfilled before the submission. We strongly suggest that you test your theme with the Hugo Themes Build Script before submitting the theme for review. If a submission does not meet the criteria mentioned in the README it will be closed. You may re-submit once you fix the problems with your submission. However, please note that we have limited resources and can not provide help for general web development issues. For Hugo support questions please refer to the dedicated support forum.
Please tick the relevant boxes for your theme in the checklist below:
Link to my theme repository: https://github.com/h-enk/doks
I made sure that...

[x] the repository contains a good README.md describing my theme
[x] an open source license has been added to LICENSE.md
[x] all metadata have been added to theme.toml
[x] screenshots have been added in the images/ folder with the required dimensions
[ ] in case I'm using a customized demo via the exampleSite folder that

[ ] https://example.com is set as base url in exampleSite/config.{toml, yaml, json} to avoid the abuse of unused domains
[ ] I tested that my theme's demo works with the content directory of gohugoio/HugoBasicExample

[ ] I tested my theme against the gohugoio/HugoBasicExample

[ ] I've checked the developer tools' console in my browser for error messages

[ ] in case my theme is using Hugo Pipes features like toCSS and PostCSS that I have committed the /resources directory with all generated assets, for my theme to work in the basic version of Hugo

N.B. By submitting a theme to the Hugo Themes Showcase you understand that you need to maintain your theme. If a theme demo breaks and remains broken then at some point it will be removed from the list without prior warning. If you no longer wish to maintain a theme please let us know.
New themes will usually be promoted on Hugo's official Twitter account. If you would like to be mentioned in the tweet please add your Twitter username to this submission.
Link to my Twitter account (optional): https://twitter.com/henkverlinde
Feel free to ask questions. We're glad to help.

Doks does not fit the default Hugo theme setup. It uses Node.js and npm (needed to install npm packages and run commands).
Could you please disable the default demo? I've provided an external demo link in the README.md: https://doks.netlify.app/
Thanks!

Hi Henk,
thank you for sharing this theme with the Hugo community. Please make sure that the thumbnail images/tn.png has the dimensions of 900x600 px as mentioned in the README.
Otherwise, we're ready to add your theme.

Hi @digitalcraftsman,
Forgot to resize the thumbnail. Fixed now.
Thanks!

Thanks for the fixing the screenshots, Henk.  Next, I'll promote your theme on Hugo's official Twitter account.


RuntimeError: launch_passive requires that the Python script be run under mjpython on macOS

Not exactly sure what this error is inferring. Do the scripts actually open the mujoco engine? Would love some help debugging
(mujoco) mehdikhfifi@Mehdis-MacBook-Pro examples % python quadruped_go1.py
Traceback (most recent call last):
File "/Users/mehdikhfifi/Downloads/mink-main/examples/quadruped_go1.py", line 48, in
with mujoco.viewer.launch_passive(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/Users/mehdikhfifi/miniforge3/envs/mujoco/lib/python3.12/site-packages/mujoco/viewer.py", line 481, in launch_passive
raise RuntimeError(
RuntimeError: launch_passive requires that the Python script be run under mjpython on macOS

nvm found a solution:
https://openprompt.co/conversations/4594

nvm found a solution:
https://openprompt.co/conversations/4594


Ops Page slow category load - db->get_Finding_Count_By_Status

The Ops page overall loads quickly, until it gets to a category with a lot of hosts (like the 20-30 Win 10 SCC targets).  The attached ste_index_php cachegrind files show that get_Finding_Count_By_Status is taking an inordinate amount of time.
cachegrind.out.zip

Here is my slow_log that may have some insights.
slow_log.zip

You think QCacheGrind is good...WinCacheGrind is better...
You can see the actually milliseconds and line number for the function call and know exactly which one is being problematic.  I've got a fix coming here shortly...

Looks like it's fixed.  Thanks!


pull-request without fork

Should be possible create a pull-request without a new fork

@mislav Hi. I read the #158 and commit message 06999d9, but didn't find answer to the question: is it possible to "pull-request without fork"?

@skywinder It's only possible to open a pull request without a fork if you have push access to the original repository. Then you can simply push to a new branch in that repo and use hub pull-request.
In other cases, you must create a fork with hub fork and push to the new remote git push -u skywinder HEAD and open a pull request hub pull-request.

@mislav  Thanks for explanation!

so as a one liner:
alias github-pull-request="hub fork;git push -u $GIT_USER HEAD;hub pull-request"


feat: updating proxy docs

Description

Adds docs around ephemeral and pre-configured proxies
Updates proxy concept page to better describe inbound/outbound use cases
Renames awkwardly worded guide "Collect Inbound Data to API" -> "Collect Inbound Sensitive Data"

Testing required outside of automated testing?

[x] Not Applicable

Screenshots (if appropriate):

[x] Not Applicable

Rollback / Rollforward Procedure

[x] Roll Forward
[ ] Roll Back

Reviewer Checklist

[ ] Description of Change
[ ] Description of outside testing if applicable.
[ ] Description of Roll Forward / Backward Procedure
[ ] Documentation updated for Change

:tada: This PR is included in version 1.27.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Return consistent table type

Closes #55
Alternative to #60
This circumvents #55 altogether by returning the same type of output for a given input.
Right now this is guaranteed for  AbstractArray but not for Tables. So to me it makes sense to actually support this rather than continuing to special-case tables and then special-casing what cols does (++complexity, ++inconsistency).
We were against this initially because we didn't want to come up with a naming scheme for the returned Table.
However, Tables.table allows for default headers which seem perfectly reasonable for us to extend as part of supporting Tables. We could even expose this kwarg to the user so they can pass in their own header names if they want.
Furthermore, we can reconstruct the original input type thanks to Tables.materializer (thanks @morris25 for bringing my attention to this!) which makes this much easier and is actually intended precisely for this purpose in applying transformations:
For a table input, return the "sink" function or "materializing" function that can take a Tables.jl-compatible table input
and make an instance of the table type. This enables "transform" workflows that take table inputs, apply transformations,
potentially converting the table to a different form, and end with producing a table of the same type as the original input.
The default materializer is Tables.columntable, which converts any table input into a NamedTuple of Vectors.

Benchmarking: note that it's less performant than main probably because we are constructing Tables, but at least it's type-stable.
julia> using DataFrames, FeatureTransforms
[ Info: Precompiling FeatureTransforms [8fd68953-04b8-4117-ac19-158bf6de9782]

julia> df = DataFrame(rand(100, 100));

julia> p = Power(3);

# main
julia> @time FeatureTransforms.apply(df, p, cols=[:x1]);
  0.153022 seconds (399.12 k allocations: 21.648 MiB)
  0.000019 seconds (8 allocations: 1.203 KiB)

julia> @time FeatureTransforms.apply(df, p, cols=:x1);
  0.006716 seconds (7.00 k allocations: 427.577 KiB)
  0.000011 seconds (5 allocations: 992 bytes)

# this branch
julia> @time FeatureTransforms.apply(df, p, cols=[:x1]);
  0.359888 seconds (1.29 M allocations: 68.051 MiB, 6.63% gc time)
  0.000036 seconds (35 allocations: 5.328 KiB)

julia> @time FeatureTransforms.apply(df, p, cols=:x1);
  0.008317 seconds (8.36 k allocations: 513.886 KiB)
  0.000039 seconds (34 allocations: 5.234 KiB)

julia> @code_warntype FeatureTransforms.apply(df, p, cols=:a)
Variables
  #unused#::Core.Compiler.Const(FeatureTransforms.var"#apply##kw"(), false)
  @_2::NamedTuple{(:cols,),Tuple{Symbol}}
  @_3::Core.Compiler.Const(FeatureTransforms.apply, false)
  table::DataFrame
  t::Power
  kwargs...::Base.Iterators.Pairs{Union{},Union{},Tuple{},NamedTuple{(),Tuple{}}}
  cols::Symbol
  @_8::Symbol

Body::DataFrame
1 ─       Core.NewvarNode(:(kwargs...))
│   %2  = Base.haskey(@_2, :cols)::Core.Compiler.Const(true, false)
│         %2
│         (@_8 = Base.getindex(@_2, :cols))
└──       goto #3
2 ─       Core.Compiler.Const(:(@_8 = FeatureTransforms.nothing), false)
3 ┄       (cols = @_8)
│   %8  = (:cols,)::Core.Compiler.Const((:cols,), false)
│   %9  = Core.apply_type(Core.NamedTuple, %8)::Core.Compiler.Const(NamedTuple{(:cols,),T} where T<:Tuple, false)
│   %10 = Base.structdiff(@_2, %9)::Core.Compiler.Const(NamedTuple(), false)
│         (kwargs... = Base.pairs(%10))
│   %12 = FeatureTransforms.:(var"#apply#4")(cols, kwargs..., @_3, table, t)::DataFrame
└──       return %12

I think this solution is preferable to #60 since we are only supporting DataFrames via the Tables interface.

Furthermore, we can reconstruct the original input type thanks to Tables.materializer

This is new info for me and changes my preference. In the past I've wished we had this, and the array return type stuff has just been the best we can do.
This also changes the question on the single-column syntax. Before, with #26 , it was just in the context of what kind of array to return. If everything's a Table, I don't mind there being no distinction in this syntax.
Overall I like this and it feels more like how it's meant to be than #60

one caveat is that I'm still not sure what users would want here. Can we glean this from the test session?

There was nothing explicitly said about it. But I think the option to specify the column header is enough, as long as we fall back to default Tables.table then at least we are not asserting out opinion on it.

Note I haven't updated the docs yet - nor have I tested passing through a header kwarg except for the doctest.


Enhance documentation for admissionChecksStrategy

What type of PR is this?
/kind documentation
What this PR does / why we need it:
This is a follow up to #1996 to make the new setting more discoverable.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/assign @tenzen-y


Improve rs_port

The Rust port isn't complete. Not enough type support, no documentation, no useful tests, etc...
Here are the things I'm implementing through this issue:

[x] Complete type support for returned types (multiple languages for full testing)
[x] Complete type support for argument types (multiple languages for full testing)
[x] Test for returned types
[ ] Test for argument types
[x] Automatically shutdown Metacall
[x] Extend Any types
[x] Add generic support for cleaner usage
[x] Switch back to stable Rust (unnecessary usage of nightly)
[x] Automatically generate bindings with Bindgen from Metacall headers instead of doing manually
[ ] Detect and resolve memory leaks in the rs_port
[ ] Add documentation to be published on docs.rs

In order to compile tests for debugging with valgrind you can do:
cargo test --no-run
It returns the location of generated binaries.
Then you can do something like:
valgrind --show-reachable=no --show-possibly-lost=no --leak-check=full <file_path_here>

There it goes my last commit. I completed my checklist. Dear reviewers, please state things you think should be changed in order to finalize this issue and publish a new version on crates.io.


Uniform all gadgets to use bpf2go

Hi.
In this PR, I modified all pkg/gadgets Makefiles to use go generate.
This way, it will be easier to modifiy the __TARGET_ARCH_x86 for all of them.
Best regards.

Could you check if the dns and snisnoop gadgets still work on a kernel without BTF support and without BTF files?

I tested them on a 5.10 kernel which was compiled with # CONFIG_DEBUG_INFO_BTF is not set and they still work.

I tested them on a 5.10 kernel which was compiled with # CONFIG_DEBUG_INFO_BTF is not set and they still work.

Thanks for testing!

Thank you for the review!


[dv] Clean up TODOs in csr_utils

See comments below
Signed-off-by: Weicai Yang<EMAIL_ADDRESS>

@sriyerg PTAL when you have a chance