WIP Fuse multiple Seq.map calls

this is highly experimental.
This PR enables the compiler to rewrite
[1; 2] |> Seq.map (fun x -> x + 2) |> (Seq.map (fun x -> x * 2)
["hello"; "world"; "!"]) |> Seq.map (fun (y:string) -> y.Length) |> (Seq.map (fun x -> x * 3)

into:
Seq.map (fun x -> (x + 2) * 2) [1; 2]
Seq.map (fun x -> x.Length * 3) ["hello"; "world"; "!"]

Hmmm... I must admit I'm not totally sure I want to do these kinds of optimizations in F#. For example, an alternative approach may be to use the existing sequence state machine compilation on a broader range of expressions.   Currently it only applies on the desugared form of seq { ... } expressions.  But there's no real reason it couldn't apply to Seq.map f (Seq.map g x) and so on.

I agree rewritting into choose from map and filter would feel weird. I person would only try to reduce stuff from two functions into one of the already existing. I think this would also ensure that we reach a fix point.
Rewriting into seq expressions is also interesting. We could do that in a separate step. Does this sound reasonable?

After rereading: do you suggest we should rewrite every Seq.map into seq expressions and just let the seq expression rewriter do it's thing?

@forki Another thing you could try is to do something similar to LINQ in which when you use map, you try to downcast the enumerator of the input sequence to a specialized MapEnumerator that keeps track of the previous function call. Then I think you can just compose the functions.
That seems like it would be safer.

You mean to rewrite Seq.map xs into List.map xs when xs is a list? That would change from lazy to eager evaluation. We can't do that

No, I mean like:
let map f (ie: seq<'T>) =
    match ie.GetEnumerator() with
    | :? MapEnumerator<'T> as mie -> Seq.map (f >> mie.mapFunction) mie
    | _ -> Seq.map f ie

I don't think this would change the lazy evaluation of map

And in a last rewriting step we would rewrite everything back to seq again?

@forki
Seq.map currently uses MapEnumerator<'T> defined here. It then upcasts  that to an IEnumerator before using that to generate the sequence. So it already does correct upcasting when needed. The only thing we need to do is that when we call GetEnumerator to check if the return value is a SpecialMapEnumerator so we can compose the map functions before just passing as before.

I think I don't really understand that suggestion yet.
Tomorrow I'll try to rewrite all Seq.map into seq expressions and see how far this gets optimized in the seq expression optimizer.
For lists I will try to do a similar optimization like the one I proposed here. The only difference I see is that we need to make sure that the inner lambda is side effect free. I think I saw helpers which test this. They are marked as being slow, but hey ;-)

A more general rewrite system, like described in
Playing by the Rules: Rewriting as a practical
optimisation technique in GHC
might be very useful.  This could allow optimizations such as these (see the commit messages) to be performed automatically.

So simply rewriting Seq.map f xs as seq { for x in xs do yield f x } doesn't work.
I just compiled
seq { for x in seq { for (y:string) in data do yield y.Length } do yield x * 42 }
and the result is a big state machine with two calls to GetEnumerator, but the (fun y -> y.Length) and (fun x -> x * 42) are far away and don't get optimized any further.

@polytypic ;-) I'm aiming for lower hanging fruits here.

@forki
The state machine creating logic I have found to be quite terrible (performance wise), so unless a complete rewrite of that code is on the cards then I think that path is not going to yield results (IMHO).

Maybe some inspiration could be gained from Nessos's LinqOptimizer (it does what you want, I think, but at runtime)

The state machine creating logic I have found to be quite terrible (performance wise)

@manofstick Please link a specific issue with repro - it's important not to leave this as hearsay, and to make sure we know what we're comparing with.  While surely imperfect, the perf gains from the state machine rewriting were often around 20x in many common cases. So it's all going to depend on what you're comparing with, and the specific examples.  I'd be especially interested in any cases where the introduction of state machines is a net negative over the combinator encoding of seq { ... } expressions.
@forki  Perhaps we first need to be clearer about the current approach to performance and optimizations in F#.  Some descriptions are in the F# compiler guide, but we need more.
My feeling is that rewriting of combinations of library functions (of the kind in this PR) doesn't fit into the kinds of optimizations we do in the compiler, nor do we want to go there at this stage, except perhaps in an experimental branch, unless we have a really comprehensive approach to the problem.  There are things the F# compiler does, there are things it doesn't do.
For example, if we did start doing rewrites of this kind, there are a very large number we'd like applied - there are probably 300 or more useful rewrites over FSharp.Core functions.  Ideally we would do these using a general rewriting approach (no doubt inspired by Haskell - see @polytypic link above - Coq, HOL, Isabelle and many other rewriting systems).  But that's also a big topic.
There are risks to every optimization, and we've previously shipped critical bugs in new optimizations. Correctness, completeness, predictability, robustness-under-change, "obviousness", "learnability" ("reducing what a reasonable user needs to know") are all reasons why I'm loathe to start adding new rewrites of combinations-of-library-functions into the compiler, especially in cases where the user can reasonably apply the optimization manually once a hotspot is identified.
So overall my feeling is that this is in the "things we don't do" category, unless we're iterating to a much more general solution to the topic, or to a particular sub-domain of optimization.
One exception is the introduction of state machines. However this is an algorithmically non-trivial operation that is extremely difficult to code by hand.  Ideally that would be generalized to other computational structures (notably Async), and potentially to further combinations of sequence functions.

@dsyme
I agree that a state machine implementation is the way to go (and much faster than a pure function fest), but the current implementation is overly cautious (in regards to Current) and sub-optimal with regards to looping constructs (uses helper functions). I have whipped up a trivial example for you. In 64-bit the example runs ~5x faster and in 32-bit it runs ~6x faster.
In my code base at work profiling often leads to seq{}s, which I end up ripping out...
Anyway, I must say that it is an area that I have been thinking of attacking for a long while (i.e. state machine generation). But I still want to get my equality/comparison stuff back up off the ground, as well as UseVirtualTag stuff finished... Hmmmm... Anyone got some cloning technology?

@forki given the tepid response to the concept from this PR and the progress of #1570, do you think this PR should be closed?

no I don't think it should be closed ;-)
Instead I think we should work really really hard to come up with a sound system that does fusion on many levels. Of course I know this PR is only the very first step on such a challenge.

Well maybe it should change it's name to some general fusing?
Anyway, if you run this gist which compares "fused" Seq calls via manual seq {} block vs the modified piping technique as described in #1570 (And this is just using the Seq module, not the proposed Seq.Composer module, which would include inling, and thus be even faster) you get the following results:

Bitage
Original
"Fused"
#1570

32-bit
17459
4590
3592

64-bit
5697
2186
1234

times in milliseconds.

Oh maybe I wasn't clear enough. I'm absolutely pro #1570 and related PRs. That is absolutely amazing work! I see this pull request a bit more as something that is research for future versions.
Anyways the benchmark is interesting. How van

What if you apply both?

Pretty sweet eh? (Because, as I mentioned before, the state machine implementation is less than ideal! But I got snapped at for mentioning it!)
And yes, you could fuse a seq implementation based off the composer. But lot less fat there than there was. And it adds considerable complexity.
And I want against the PR per se, I was just keen for it to change name, if it is research based. But if it's just going to sit here and rot, then i think it is better closed and worked on in a private repository. But that is just my personal preference of how to manage PRs/tasks. Ie once you get to a certain level of open ones then the whole management process collapses. Well that's my personal experience anyway.

@forki  @dsyme
Hey, is there anything to do with this PR, or should I close it?
Kevin

Ok closing for now. Let's discuss post RTM again


#1581, avoid duplicate routing result

#1581, avoid duplicate routing result

Pull Request Test Coverage Report for Build 6051

1 of 1 (100.0%)  changed or added relevant line in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 72.367%

Totals

Change from base Build 6050:
0.02%

Covered Lines:
9564

Relevant Lines:
13216

💛  - Coveralls


Can't restart the mina node by docker on mac

The log reported as below:
2021-05-12 02:09:05 UTC [Info] Setting current protocol version to "2.0.0" from compile-time config
2021-05-12 02:09:42 UTC [Fatal] Unhandled top-level exception: $exn
Generating crash report
exn: {
"commit_id": "a42bdeef6b0c15ee34616e4df76c882b0c5c7c2a",
"sexp": [
"monitor.ml.Error",
[
[
"rpc_error",
[ "Connection_closed", [ "EOF or connection closed" ] ]
],
[
"connection_description",
[ "Client connected via TCP", [ "localhost", "37213" ] ]
],
[ "rpc_tag", "worker_init_rpc_1" ],
[ "rpc_version", "0" ]
],
[
"Raised at file "src/error.ml" (inlined), line 9, characters 14-30",
"Called from file "src/or_error.ml", line 72, characters 17-32",
"Called from file "src/deferred1.ml", line 17, characters 40-45",
"Called from file "src/job_queue.ml" (inlined), line 131, characters 2-5",
"Called from file "src/job_queue.ml", line 171, characters 6-47"
]
],
"backtrace": [
"Raised at file "src/result.ml", line 158, characters 17-26",
"Called from file "src/deferred1.ml", line 17, characters 40-45",
"Called from file "src/job_queue.ml" (inlined), line 131, characters 2-5",
"Called from file "src/job_queue.ml", line 171, characters 6-47"
]
}

echo 'Mina process exited with status code 1'

sleep 10
Mina process exited with status code 1
2021-05-12 02:09:43 UTC [Warn] Shutdown before Coda instance was created, not saving a visualization
☠  Mina Daemon crashed.
The Mina Protocol developers would like to know why!
Please:
Open an issue:
https://github.com/MinaProtocol/mina/issues/new
Briefly describe what you were doing and attach the crash report /root/.mina-config/coda_crash_report_2021-05-12_02-09-42.831145.tar.gz

And the log in crash_summary.json
{"OS_type":"Unix","Release":"5.10.25-linuxkit","Machine":"x86_64","Sys_name":"Linux","Exception":{"commit_id":"a42bdeef6b0c15ee34616e4df76c882b0c5c7c2a","sexp":["monitor.ml.Error",[["rpc_error",["Connection_closed",["EOF or connection closed"]]],["connection_description",["Client connected via TCP",["localhost","40673"]]],["rpc_tag","worker_init_rpc_1"],["rpc_version","0"]],["Raised at file "src/error.ml" (inlined), line 9, characters 14-30","Called from file "src/or_error.ml", line 72, characters 17-32","Called from file "src/deferred1.ml", line 17, characters 40-45","Called from file "src/job_queue.ml" (inlined), line 131, characters 2-5","Called from file "src/job_queue.ml", line 171, characters 6-47"]],"backtrace":["Raised at file "src/result.ml", line 158, characters 17-26","Called from file "src/deferred1.ml", line 17, characters 40-45","Called from file "src/job_queue.ml" (inlined), line 131, characters 2-5","Called from file "src/job_queue.ml", line 171, characters 6-47"]},"Command":"Command: (mina daemon -config-file /var/lib/coda/config_a42bdee.json\n --block-producer-key /keys/my-wallet --insecure-rest-server --file-log-level\n Debug --log-level Info --peer-list-url\n https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt)","Coda_branch":"master","Coda_commit":"a42bdeef6b0c15ee34616e4df76c882b0c5c7c2a"}

This is usually a lack of resources allocated to Docker on the Mac. Check Docker toolbox and increase the number of resources allocated as the defaults are very low.

Closing this one because of no activity for a long time and I hope resources issue was solved for you.
Please feel free to report new issues should you face any.
Thank you.


fix(file-upload-item): fixed error display by default

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

10 of 10 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.004%) to 81.69%

Totals

Change from base Build<PHONE_NUMBER>:
-0.004%

Covered Lines:
5862

Relevant Lines:
6597

💛  - Coveralls


USMON-824: USM Kafka support for produce record batching

What does this PR do?
This PR enhances the USM Kafka parsing logic to recognize the count of Kafka records in a produce request.
The relevant section in the Kafka protocol specification can be found here.

Motivation
During testing in our staging environment, we observed that our Kafka producers utilize the Kafka batching mechanism, sending more than one Kafka produce record within a single request. This resulted in an accuracy discrepancy between us and DSM. As a resolution, we aim to incorporate support for this behavior.

Additional Notes
This modification provides an opportunity to incorporate additional Kernel metrics, such as:

Distribution of the number of records in a produce request
Count of produce requests targeting more than a single partition

Possible Drawbacks / Trade-offs

In order to handle multiple records for a fetch request, it's necessary to parse Kafka produce responses. Currently, we lack the capability to parse Kafka responses, so this issue will need to be resolved in a separate PR.
Reduced KAFKA_BATCH_SIZE from 30 to 28 due to an increase in the size of the kafka_transaction_t struct. This adjustment may potentially impact the occurrences of Kafka failed flushes in a negative manner.
To begin with, for simplicity, we are focusing on scenarios where we produce to a single partition. This decision is based on our observations in the Datadog environment, where we haven't encountered instances of producers producing to multiple partitions within the same request.

Describe how to test/QA your changes

/merge


com.facebook.jni.UnknownCppException on Huawei devices and Android 9

React Native version: 0.59.10
We recently distributed our react native app using bugsnag as crash reporting system. We are experiencing a lot of the following exception:
com.facebook.jni.UnknownCppException · Unknown
NativeRunnable.java:-2 com.facebook.react.bridge.queue.NativeRunnable.run
Handler.java:907 android.os.Handler.handleCallback
Handler.java:105 android.os.Handler.dispatchMessage
MessageQueueThreadHandler.java:29 com.facebook.react.bridge.queue.MessageQueueThreadHandler.dispatchMessage
Looper.java:216 android.os.Looper.loop
MessageQueueThreadImpl.java:232 com.facebook.react.bridge.queue.MessageQueueThreadImpl$4.run
Thread.java:784 java.lang.Thread.run

The bug is only reported on Huawei (and Honor) devices running android 9 and EMUI 9.1. Here is a list of the devices experiencing the crash:
VTR-L09
CLT-L09
ANE-LX1
EML-L09
MHA-L29
SNE-LX1
BLA-L29
CLT-L29
MAR-LX1A
POT-LX1
STF-L09
VKY-L09
BND-L21
COR-L29
DUK-L09
HMA-L09
LYA-L09
STK-LX1
VOG-L29

Oddly enough, we are unable to reproduce the bug on our Huawei P20 Lite (ANE-LX1) running android 9.

Some additional info

the error is reported from the mqt_js thread, not from the main thread
The error happens at startup, just after the MainActivity onResume() lifecycle event


‘NULL’ not declared when compiling on CentOS

Describe the bug
On a V100 GPU computing node of a cluster running CentOS, running USE_CUDA=1 bash install_terrain.sh got error: ‘NULL’ was not declared in this scope
Steps to Reproduce
What version of the code were you using?
commit a8ba86a394f8757586b4fb15252a3282e56a91de
What are your FULL output logs?
$ USE_CUDA=1 bash install_terrain.sh
compiled lib/cuda/utils/FastNoiseLite.so
compiled lib/cuda/elements/voronoi_rocks.so
compiled lib/cuda/elements/upsidedown_mountains.so
compiled lib/cuda/elements/ground.so
compiled lib/cuda/elements/warped_rocks.so
compiled lib/cuda/elements/mountains.so
compiled lib/cuda/elements/landtiles.so
compiled lib/cuda/elements/atmosphere.so
compiled lib/cuda/elements/waterbody.so
compiled lib/cuda/surfaces/chunkyrock.so
compiled lib/cuda/surfaces/cobble_stone.so
compiled lib/cuda/surfaces/cracked_ground.so
compiled lib/cuda/surfaces/dirt.so
compiled lib/cuda/surfaces/ice.so
compiled lib/cuda/surfaces/mountain.so
compiled lib/cuda/surfaces/mud.so
compiled lib/cuda/surfaces/sand.so
compiled lib/cuda/surfaces/sandstone.so
compiled lib/cuda/surfaces/snow.so
compiled lib/cuda/surfaces/soil.so
compiled lib/cuda/surfaces/stone.so
In file included from source/cpu/utils/FastNoiseLite.cpp:12:0:
source/cpu/utils/../../common/utils/FastNoiseLite.h:279:25: error: ‘NULL’ was not declared in this scope
     int *is_center_tile=NULL,
                         ^~~~
source/cpu/utils/../../common/utils/FastNoiseLite.h:280:25: error: ‘NULL’ was not declared in this scope
     int *is_center_band=NULL
                         ^~~~
In file included from source/cpu/utils/FastNoiseLite.cpp:7:0:
source/cpu/utils/../../common/utils/FastNoiseLite.h: In function ‘void Voronoi2D(float, float, int, float, float, int, float*, float*, int*, int, int*, int*)’:
source/cpu/utils/../../common/utils/FastNoiseLite.h:289:25: error: ‘NULL’ was not declared in this scope
     assert(distances != NULL);
                         ^
In file included from source/cpu/utils/FastNoiseLite.cpp:12:0:
source/cpu/utils/../../common/utils/FastNoiseLite.h: At global scope:
source/cpu/utils/../../common/utils/FastNoiseLite.h:436:25: error: ‘NULL’ was not declared in this scope
     int *is_center_tile=NULL
                         ^~~~
In file included from source/cpu/utils/FastNoiseLite.cpp:7:0:
source/cpu/utils/../../common/utils/FastNoiseLite.h: In function ‘void Voronoi(float, float, float, int, float, float, int, float*, float*, int*, int*)’:
source/cpu/utils/../../common/utils/FastNoiseLite.h:447:25: error: ‘NULL’ was not declared in this scope
     assert(distances != NULL);

Platform

OS & OS Version: CentOS Linux release 7.9.2009 (Core)
GPU (?) : V100
GPU Driver Version (?) : NVIDIA-SMI 515.43.04    Driver Version: 515.43.04    CUDA Version: 11.7
RAM (GB): 754G
CUDA: 11.2.2
GCC: GNU 6.4.0
CMake: 3.24.2

Additional context
Thanks!

I believe NULL should be defined in #include <cstddef> but I have not checked if FastNoise properly imports it. FastNoise was not written by us so I do not understand it well. @RodenLuo you could try adding the import and I would happily accept it as a PR if it improves portability. For now the only officially tested distros are ubuntu / redhat / springdale.

Hi Alex, I had then run it on a Ubuntu workstation and it was all fine, just no slurm jobs. Will have to be back on this a bit later. The CentOS cluster is under maintenance now. Feel free to close it.


Select the cli at startup

Description of the new feature/enhancement
If terminal is pinned to the task bar, you right click to get a list of cli to run

Proposed technical implementation details (optional)

Could you possibly mean #576?

yes, that's what I'm talking about

Perfect - I'll close this one as a duplicate than. Thanks for following up!
/dup #576


Remove the select background

Remove the background on selected items, is this possible without editing the .css file?

@PresidentCamacho ,
Unfortunately I don't think that's possible.. You'll need to modify the css file..


Customize button

Hello,
I am looking for a way to override default css bootstrap classes and button content, without modifying the source of the plugin.
Per example, I am looking for a way to override the class btn-default with btn-link in the settings of TableExport. I saw that the following method is described in the documentation, but I made some tests and it seems it does not hava any effect, wherever I put it in my script (befaire initializing TableExport or after):
$.fn.tableExport.bootstrap = ["btn", "btn-link", "btn-toolbar"];
Same for this method, where I just replaced the buttonContent text for localization reason:
$.fn.tableExport.xlsx = {
    defaultClass: "xlsx",
    buttonContent: "Excel",
    mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
    fileExtension: ".xlsx"
};

Could you please let me know how to use these 2 methods?
Thanks!

@Alplob – I am working on a complete API refactor for customizing the buttons (please check out #40 for more info on the status of this update).
I have been lagging a bit in updating the documentation (I will get this fixed soon!). The proper way to change a setting is not via the TableExport prototype:
e.g.
<script src="path/to/tableexport.js"></script>

...
...
/* change the `bootstrap` setting */
TableExport.prototype.bootstrap = ["btn", "btn-link", "btn-toolbar"];

/* initialize TableExport */
$('table').tableExport();

Perfect, thanks a lot for your feedback!


Reduce file sizes

Current the production filesizes are pretty big. I think I might be including too many  things such as sentry in the background.js file as well as the index.js

This is represented in #50


Error/warning message style consolidation

@hanbyul-here made this for step 3: operators. Use same styling for all errors/warnings
For step 3: operators, change the message from warning to error (aka red)

@meghanhade working on functionality here https://github.com/transitland/feed-registry/issues/211

you are talking about step 2?

mostly. but making the same styles across the whole flow, so step 1 and 2


mape loss if the lable is 0

Please make sure that the boxes below are checked before you submit your issue. Thank you!

[ ] Check that you are up-to-date with the master branch of Keras. You can update with:
pip install git+git://github.com/fchollet/keras.git --upgrade --no-deps

[ ] If running on Theano, check that you are up-to-date with the master branch of Theano. You can update with:
pip install git+git://github.com/Theano/Theano.git --upgrade --no-deps

[ ] Provide a link to a GitHub Gist of a Python script that can reproduce your issue (or just copy the script here if it is short).

in my project the mean absolute percentage error is used, but when the lable is 0, I think the error is not  important and i dont count it. so i try to write another mape loss function based on the existing mape. however it doesnt work ,i dont know how to form an index and how to set the value of a tensorvariable using an index.
def error_tsq_mape(y_true, y_pred):
diff = K.abs((y_true - y_pred) / K.clip(K.abs(y_true), K.epsilon(), np.inf))
ind=K.zeros_like(y_true)
print 'a'
if K.not_equal(K.ndim(ind),0):
diff[ind]=0
return 100. * K.mean(diff, axis=-1)


Error compiling & unable to get webusb to run

For context, this is my platformio file:
[env:esp32s2doit-devkit-v1]
platform = espressif32
platform_packages = framework-arduinoespressif32 @ https://github.com/espressif/arduino-esp32.git#idf-release/v4.2
board = esp32doit-devkit-v1
framework = arduino
lib_deps =
  https://github.com/chegewara/EspTinyUSB
  ...
monitor_speed = 115200
board_build.mcu = esp32s2
build_flags =
  -D ESP32S2

The project does however not compile as I get this error:
Compiling .pio/build/esp32s2doit-devkit-v1/liba3b/ESP32TinyUSB/classes/msc/sdcard.cpp.o
In file included from .pio/libdeps/esp32s2doit-devkit-v1/ESP32TinyUSB/src/classes/msc/sdcard.cpp:1:
.pio/libdeps/esp32s2doit-devkit-v1/ESP32TinyUSB/src/sdusb.h:3:10: fatal error: FS.h: No such file or directory

Do I need to include something else to get it to compile out of the box?
After removing sdusb.h and sdcard.cpp, the project compiles.
Next problem that I have is the inability to get webusb to work.
This is my sketch:

#include <Arduino.h>
#include <Wire.h>
#include <SPI.h>
#include <webusb.h>
#include <cdcusb.h>

WebUSB WebUSBSerial;
CDCusb USBSerial;

class MyWebUSBCallbacks : public WebUSBCallbacks{
    void onConnect(bool state) {
      USBSerial.printf("webusb is %s\n", state ? "connected":"disconnected");
    }
};

void setup() {
  while (!Serial);

  WebUSBSerial.landingPageURI("localhost:3001", false); // even if set to default URL, does not show up
  WebUSBSerial.deviceID(0xcafe, 0x0002);
  WebUSBSerial.setCallbacks(new MyWebUSBCallbacks());

  if(!WebUSBSerial.begin()) {
    USBSerial.println("Failed to start webUSB stack"); // does not fail - checked
  }

  if(!USBSerial.begin()) {
    USBSerial.println("Failed to start USB stack"); // does not fail - checked
  }
}

void echo_all(char c)
{
    Serial.write(c);
    WebUSBSerial.write(c);
    USBSerial.write(c);
}

void loop() {

  while (WebUSBSerial.available()) {
      echo_all(WebUSBSerial.read());
  }

  while (Serial.available()) {
      echo_all(Serial.read());
  }

  while (USBSerial.available()) {
      echo_all(USBSerial.read());
  }
}

The CDC class device works and the messages are echoed to my serial monitor console successfully via my computer terminal with
xtrinch@elizabeta:~$ echo -e "test" > /dev/ttyACM0.
I can even flash the device via this tty and do not have to enter bootloader mode.
The problem however is the web usb, as the device does not show up in chrome under available devices. Note that I've tried without any vendor filters and the device is just not here. Neither does it have a designator in /dev/tty* (Not sure if the web usb devices should have that though?). If I boot the board in bootloader mode, it shows up in chrome as an espressif device, so it's definitely a software thing.
I've tried also with the default www.tinyusb.org/examples/webusb-serial by omitting the custom URL specifications but it does not show up there either.
I am using latest chrome on ubuntu 20.04.
Please help.

I've been able to resolve the first issue by adding:
...
build_flags =
  -D ESP32S2
monitor_filters = esp32_exception_decoder
lib_ldf_mode = deep <----- this pulls in the FS.h

To my platformio.ini file. Just in case it ever helps anyone else :)
Although now it shows this:
Compiling .pio/build/esp32s2doit-devkit-v1/lib238/Adafruit NeoPixel/kendyte_k210.c.o
.pio/libdeps/esp32s2doit-devkit-v1/ESP32TinyUSB/src/classes/msc/sdcard.cpp: In member function 'virtual int32_t SDCallbacks::onRead(uint8_t, uint32_t, uint32_t, void*, uint32_t)':
.pio/libdeps/esp32s2doit-devkit-v1/ESP32TinyUSB/src/classes/msc/sdcard.cpp:66:12: error: 'class fs::SDFS' has no member named 'readRAW'
         SD.readRAW((uint8_t*)buffer, lba);
            ^~~~~~~
.pio/libdeps/esp32s2doit-devkit-v1/ESP32TinyUSB/src/classes/msc/sdcard.cpp: In member function 'virtual int32_t SDCallbacks::onWrite(uint8_t, uint32_t, uint32_t, void*, uint32_t)':
.pio/libdeps/esp32s2doit-devkit-v1/ESP32TinyUSB/src/classes/msc/sdcard.cpp:74:12: error: 'class fs::SDFS' has no member named 'writeRAW'
         SD.writeRAW((uint8_t*)buffer, lba);
            ^~~~~~~~
Compiling .pio/build/esp32s2doit-devkit-v1/lib212/WiFi/ETH.cpp.o
*** [.pio/build/esp32s2doit-devkit-v1/liba3b/ESP32TinyUSB/classes/msc/sdcard.cpp.o] Error 1

Which I see is already mentioned in another issue.

Figured the second issue out too - If I don't use the vendor id 0x2341 which is arduino's, the device doesnt work - I see permission denied in chrome://device-log/ for the device. Not sure why, but using the arduino vendor ID fixed the issue.

Figured the second issue out too - If I don't use the vendor id 0x2341 which is arduino's, the device doesnt work - I see permission denied in chrome://device-log/ for the device. Not sure why, but using the arduino vendor ID fixed the issue.

It is because webusb website you are using is filtering devices by VID/PID. You can also use 0xcafe VID.
You may also need to add udev on linux.

Which I see is already mentioned in another issue.

yes, this is the PR which is not merged yet and is required by SD class and example:
https://github.com/espressif/arduino-esp32/pull/4777/files
If not used, then you can delete from library.

It's my website and I control the filters, doesnt work with 0xcafe, I would probably have to add custom udev rules for that yeah

@xtrinch Did you find solution or do you still have issues with it?

I didnt dig deeper as using the arduino VID is sufficient for me. I'll close the issue. Thanks for your help.


Can I contribute a better Rust CI?

Sure. Contributions are always welcome.

Fantastic!
Also, thanks a lot for this (again!) saved my project with executing commands like twice.


Allow users to bypass J2CL's default Kotlin repositories

This enables users to specify newer (or older) Kotlin versions without changes in J2CL.

Actually I'm going to close this because I realized this only really helps if we can also bump rules_kotlin to a more recent version. But when I try to do that in this repository I get a stream of WORKSPACE errors (need rules_jvm_external, then need io_bazel_stardoc, then need build_bazel_rules_android...) that I have very low confidence in successfully solving without breaking someone and perhaps seem better resolved with the upcoming MODULE stuff.


PKB to support Cloud Spanner.

Added a new benchmark cloud_spanner_ycsb, and a new provider gcp/gcp_spanner.py

Friendly ping.
Just want to understand what's the status of this pull request. Is there still comment I need to address?

There are still unaddressed comments. Please clarify your responses so we can go ahead

Friendly ping. Is there anything else I missed?

To recapture a few key DOs & DON'Ts that benchmark contributors need to understand.
On a single machine, there might be multiple benchmarks running. They may run against the same storage products under different configurations. Each of the benchmark is running from a process. One process runs only one benchmark at a time. Thus

DON'T change the environment shared by all the processes. It will affect other benchmarks.
DO isolate the backends. There might be two processes both running cloud spanner banchmarks at the same time. If they pointing to the same project / instance / database / table, they will interfere with one another. Use FLAGS.run_uri to differentiate them.

It would be nice to include this in the CONTRIBUTING.md

3768166 contains following major changes:

Remove the logic to override end points from the code. This contradicts "DON'T change the share denvironment". If needed, user should manually set end point before invoking pkb. Also, added a flag to run custom vm install commands. User can override end points or doing other uncommon setups on VM.

Instance name is ycsb-<run_uri>. This should distinguish all ycsb-benchmarks. Since we separate at the instance layer, everything else (database, table) can be a constant.

Although I still think it's an awkward design, moving flags into gcp_spanner.py might make the code easier to maintain. User may need to always pass in flags, which can be mitigated by user side scripts.

Thank you for making changes as per the recommendations.
Based on our conversation, as you understand, there are still a few issues which don't fit the pkb paradigm, however since current usage of the spanner resource in pkb is isolated, we can defer any further modifications till a different benchmark needs to use the resource.

merging

Thanks.


Narrowed type not "carried" iteratively

🔎 Search Terms
narrow, generic
🕗 Version & Regression Information

This changed between versions 5.3.3 and 5.4.2

⏯ Playground Link
https://www.typescriptlang.org/play?#code/PTAEF5NB1B5AlA0gZQpdH0CgsBMCmAxgDYCGATvqAGYCuAdoQC4CWA9vaCwM4AKZLerABGAKyJMAjAAosoULlJNSALlAMA1vTYB3egBosASjWLlXbqHhE25XAB5e5NgAd85JgE9E+T-vX0Wrr0AHwA3DgEJBRUhBzcTKAAtp4iopJqmtp6ESzUoNI8-KSCaRIyKWmSRkagAN5y8jS2BXH0CaAavqBs+QDaAESkA-4DwiOgA4QDALq1DU1NbR0E+G7kEMmpYpJ9XZ4zEYvyIIsAegD8jYvLiavrPp6W4BbFpWLl0vfutRegZcwAHT7bhffBrH6gNR9Q7XUAAXywiKwp3QoAAIrAAKLIAByABUYAhEGhMGTsKdYPRiJ4FHlqO58IwqMJ8EwdODOEwABZUABMXCSLmIlh4oB5VAA5kz3CxCKBCYJxbzxZ43P58AA3JmgHS8zgsRI8egAckStG4+FwgJtkSIZEoNAYzHYBr4AiEH2YfPs+JCsnkZlUASCekMJgUSlIFisNjsjmc6y8j38WWC4Tt0Udty2aT5mUC2XouXyhXdJU94m90kqYj5NXqcOoLWkOf2PX6QwmY270zmjeOoBz3w2L1roj5e18sMHpyalzh8mH4Ievmerw9AKYfLBEPIv3+XqYwLXu-WtWhM6aiMRQA
💻 Code
// === WORKS =============

declare function isPlainObject1(
  data: unknown,
): data is Record<PropertyKey, unknown>;

declare const myObj1: unknown;
if (isPlainObject1(myObj1)) {
    for (const key of ["a", "b", "c"]) {
      const deeper = myObj1[key];
      //    ^?
      const deeperKeys = isPlainObject1(deeper) ? Object.keys(deeper) : [];
    }
}

// === DOESNT WORK ================
// Only difference between the 2 impls is the generic T in the type, even when it isn't used...

declare function isPlainObject2<T>(
  data: unknown,
): data is Record<PropertyKey, unknown>;

declare const myObj2: unknown;
if (isPlainObject2(myObj2)) {
    for (const key of ["a", "b", "c"]) {
      const deeper = myObj2[key];
      //    ^?
      const deeperKeys = isPlainObject2(deeper) ? Object.keys(deeper) : [];
    }
}

🙁 Actual behavior
The deeper variable, which is nested deeper from the narrowed type is inferred as any.
🙂 Expected behavior
It is the result of accessing a prop on a Record<PropertyKey, unknown> so is expected to be unknown.
Additional information about the issue
I maintain the Remeda utility functions library, I just got this reported here: https://github.com/remeda/remeda/issues/559 and there are additional anecdotal reports that upgrading to typescript 5.4 breaks several of our types.
I couldn't find a reasoning to this issue, including any new changes to Typescript in 5.4 which might explain it.
I'm not sure my title makes sense for this bug, as I don't fully understand what's going on here, or even how to build a truly minimal example.

Bisects to #57358

Looks like Playwright is also affected by this.
Minimal Reproduction on the Playwright
Bisect: https://github.com/microsoft/typescript/compare/2a0edf7949ad8427e3ef233a4c549ecbe32953e1...db3d54ffbc0a805fbdd5104c5a5137d7ca84420a
5.4.0-dev.20240214 bad
5.4.0-dev.20240213 good


[Bug] (<IP_ADDRESS>) Crash When Connecting Surface Output to Gradient Data Node's Sample Input

Connecting a surface output to the Gradient data node's Sample input connector throws the error below and causes a crash. I've also included an example file and a screenshot of the affected nodes.
___________________________________________
############################################################################################
ERROR in
action number 1
of  Step Event1
for object o_main:

Illegal array use############################################################################################
gml_Script_gradient_eval (line 49)
gml_Script_anon_Node_Gradient_Out_gml_GlobalScript_node_gradient_output_666496_Node_Gradient_Out_gml_GlobalScript_node_gradient_output (line 28)
gml_Script_anon_Node_gml_GlobalScript_node_data_3360314_Node_gml_GlobalScript_node_data (line 159)
gml_Script_Render (line 79)
gml_Object_o_main_Step_1 (line 40)

Nodes Involved:

ProceduralTest.txt

You shouldn't be able to do that... sample property is use to get a single color from a position in gradient [0-1]. Connecting surface to it shouldn't do anything.
The crash is probably caused by surface-number conversion. I will make it so the sample property reject surface datatype.

Makes sense. I was experimenting with different ways to apply color gradients and was expecting the connection to be rejected like you said. I believe a similar crash occurred when attempting to connect a surface output to a Vector split node.

Both crashes are fixed in 1.11.0


Seed Restore: Add ability to insert missed words (add/remove extra row)

Problem:  When restoring wallet from seed, if user accidentally skips, say, word #6, and doesn't realize it until after they entered the last word, there is no way to go back and insert the missed word. You have to delete most of the list and start over.
Add ability to Insert Row:  Allow user to move cursor to end of word #5, then press return key to push the list down and create a blank word #6 row.

Conditions:

Maintain max of 33 row limit; If all rows below already contain words, do not insert new row.
If the next row down is already blank, do not insert new row, but move cursor down.

Add ability to Delete Row: If cursor is active on a blank row, and the delete key is pressed, delete row and move cursor up to end of previous row.

One thing we could do is mark red any words that don't match the correct order. I'm told that the seed words alternate between even and odd from the word list.

fixed in #527


Compile Error when setting Window Title in MainWindow.xaml in a Winui3 App (Packaged Desktop)

Describe the bug
Setting Window Title inthe  MainWindow.xaml in a Winui3 App (Packaged Desktop) causes the following error when compiling:
The XAML Binary Format (XBF) generator reported syntax error '0x09C4' : Property Not Found

Steps to reproduce the bug

Create a new Blank App, Packaged (WinUI in Desktop) with the WinUI Vsix (Preview 3)
Set the Title property on the MainWindow.xaml to "App1"
Build the app

Expected behavior
App should compile and show App1 as title
Version Info
NuGet package version:
Microsoft.WinUI 3.0.0-preview3.201113.0

Windows app type:

UWP
Win32

Yes

Windows 10 version
Saw the problem?

Insider Build (xxxxx)

May 2020 Update (19041)
Yes

November 2019 Update (18363)

May 2019 Update (18362)

October 2018 Update (17763)

April 2018 Update (17134)

Fall Creators Update (16299)

Creators Update (15063)

Device form factor
Saw the problem?

Desktop
Yes

Xbox

Surface Hub

IoT

Additional context
Repro App: App1.zip
Setting the title on the MainWindow.xaml.cs works as a workaround.

Dupe of https://github.com/microsoft/microsoft-ui-xaml/issues/3689 ??

Oh, yes, exact same issue.
Didn't see that one, sorry.


Streamline and automate the versioning and publishing of romcal

As described in my comments on #79, this PR aims to make life easier for contributors of romcal by handling:

semantic versioning
distribution tagging
publishing to npm

Once enacted, we should be able to rely on the automated infrastructure to handle all the above for us.
The machine user saves contributors from:

needed to have access to Travis and NPM for build and publishing
having to manually keep track of semantic versioning numbers and formats
having to set up their machines to publish new versions of the module
suffer setbacks from a non responding human party with all the needed administrative rights to publish the module (i.e. me)

Great! I'll try to do a review tonight or tomorrow on it.
Also you mention some remaining todos in this comment, do you plan to add them here or we can already merge this PR before theses future additions?

Great! I'll try to do a review tonight or tomorrow on it.
Also you mention some remaining todos in this comment, do you plan to add them here or we can already merge this PR before theses future additions?

Hey @emagnier,
I just added an enhancement to the script where we can use the identifier [USE_CUSTOM_SEMVER] in a commit message to skip the auto incrementing mechanism to prefer whatever value the user supplied in the version field of package.json. As with all other human operations, human error is non avoidable and the build will fail if an incompatible version was supplied (i.e. lower version that what is already published). As such, it will be the user's responsibility to check the latest version published on the given tag(s) and supply a higher (and valid semantic) version.
I think what we have now is enough to put into general use.
The other "todo's" for git tagging and auto change log can be merged in at some later point when I have them ready.

You may have noticed that CI checks for this PR have been failing. That is so because I had previously set up a travis-ci.com (pro) account that triggered builds for this repository. The builds fail on the deploy step because the new travis.yml and corresponding bash scripts require environment variables that are now only available via the machine user travis-ci.org instance. This mechanism ensures that only 1 user is ever only responsible for build and publishing related activities for romcal. I have deactivated the old travis-ci.com instance on romcal. Future CI reports should now only come from the machine user travis instance.

[@pejulian] As with all other human operations, human error is non avoidable and the build will fail if an incompatible version was supplied (i.e. lower version that what is already published). As such, it will be the user's responsibility to check the latest version published on the given tag(s) and supply a higher (and valid semantic) version.

I think that the custom version can (and should) be checked against the latest released version of the particular ‘release type’ (i.e. stable, beta, canary). Even more: I think that the user could just specify that they want to release the next major release and the semver should auto-calculate the next major version number (curretly that would be 2.0.0). This could apply to minor and patch numbers, as well as beta/canary numbers.

[@pejulian] As with all other human operations, human error is non avoidable and the build will fail if an incompatible version was supplied (i.e. lower version that what is already published). As such, it will be the user's responsibility to check the latest version published on the given tag(s) and supply a higher (and valid semantic) version.

I think that the custom version can (and should) be checked against the latest released version of the particular ‘release type’ (i.e. stable, beta, canary). Even more: I think that the user could just specify that they want to release the next major release and the semver should auto-calculate the next major version number (curretly that would be 2.0.0). This could apply to minor and patch numbers, as well as beta/canary numbers.
Update: However, my suggestion above should not be taken as merge blocker, i.e. the script might be improved at a later stage (in that case, this should be moved into the backlog).

These are great suggestions @tukusejssirs
It should be possible to expand the regex that matches the [USE_CUSTOM_SEMVER] substring to include a custom semver value itself (i,e. [USE_CUSTOM_SEMVER:major|minor|patch|...]) which will then be checked to ensure that it is a valid semver value before being applied to the package.
I'll look into this when I get some time.


8muses ripper doesn't work since site update

8muses.com got updated recently and the ripper doesn't work on the new version of the site

Yup. Pls update the script.

@Korons @kay9 Could you please provide the version of ripme you are using, an example URL to rip, and describe exactly what you're seeing?

@rephormat The latest update to ripme (1.3.0) has fixed the issue


x/build: timeout on LUCI netbsd-arm64 builder

#!watchflakes
post <- builder ~ `(gotip|go1\.\d\d)-netbsd-arm64` && (`test timed out` || `SIGQUIT` || `context deadline exceeded` || status == "ABORT")

It mostly times out on the tools repo.

Duplicate of #65845


Check if total_transform_processing_times exist for compare reports

When race didn't have total_transform_processing_times to report, esrally compare fails
Relates to https://github.com/elastic/rally/pull/1022

@dliappis Thank you for the review!


Database without Primary Key not supported?

I'm trying out lessql but every time I try to use it on a table without Primary Key (I work with some MSSQL databases, and even information_schema.tables in MYSQL does not have a Primary Key, it gives me an error:
PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'id' in 'where clause' in xxxxxx
There's no Primary Key in the table, and I can't add one to it, period. I've tried to assign some of the other columns using $db->setPrimary but it still doesn't work. Does this mean lessql is useless for all tables without a Primary Key?

May I see your code? LessQL should not require the primary key unless you're querying by primary key or trying to find referenced rows. In any case, setPrimary should work as expected.

Code is as below:
The pdo equivalent of the code runs fine, the LessQL version bombs with an error (screenshot attached).

<?
$autoloader = require __DIR__ . '/vendor/autoload.php';

$pdo = new PDO('mysql:host=<IP_ADDRESS>;dbname=test','root','root');
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);

$query = 'SELECT TABLE_NAME FROM information_schema.TABLES WHERE TABLE_SCHEMA = "test"';
$data = $pdo->query($query)->fetchAll();
var_dump($data);

$pdo = new PDO('mysql:host=<IP_ADDRESS>;dbname=information_schema','root','root');
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
$conn = new LessQL\Database($pdo);

$data2 = $conn->table('TABLES')->select('TABLE_NAME')->where('TABLE_SCHEMA', 'test')->fetchAll();
var_dump($data2);

Oops clicked on the wrong button..

The above code doesn't work even when I change it to:
$data2 = $conn->table('TABLES')->setPrimary('TABLE_NAME')->select('TABLE_NAME')->where('TABLE_SCHEMA', 'test')->fetchAll(); var_dump($data2);
Or:
$data2 = $conn->setPrimary('TABLE_NAME')->table('TABLES')->select('TABLE_NAME')->where('TABLE_SCHEMA', 'test')->fetchAll(); var_dump($data2);

I see - the setPrimary call should look like "$db->setPrimary( 'TABLES', 'TABLE_NAME' );". The setting is permanent and will be used for subsequent queries. Unfortunately there's probably no error that your usage of setPrimary is invalid.

Umm, whether setPrimary or not, I'm still unable to pull out the list of tables in a table without an "id" field. This also means that I would not be able to use lessql on MsSQL and SyBase databases although I can pull them in using PDO.. Is there a workaround?

Here's what i just did:
CREATE TABLE TABLES (
    TABLE_NAME varchar(30) NOT NULL,
    TABLE_SCHEMA varchar(30) NOT NULL
)

and then
$data = $db->setPrimary( 'TABLES', 'TABLE_NAME' )
  ->table( 'TABLES' )
  ->select( 'TABLE_NAME' )
  ->where( 'TABLE_SCHEMA', 'test' )
  ->fetchAll();

$this->assertEquals( $data[ 0 ][ 'TABLE_NAME' ], 'testname' );

which works. You have to use setPrimary( $table, $column ).

Hi Morris,
Actually you DO have the table in question to play around with. It comes with your stock MYSQL database, and it doesn't have indexes.. Maybe you could try running it on your MYSQL and see if it works on yours? It didn't work (although the PDO version works) on mine..

LessQL does not care where that table is, really. You only have to configure the primary key. This works:
$pdo = new \PDO( 'mysql:host=localhost;dbname=information_schema', 'root' );
$db = new \LessQL\Database( $pdo );

$db->setPrimary( 'TABLES', 'TABLE_NAME' );

$data = $db->table( 'TABLES' )
	->select( 'TABLE_NAME' )
	->where( 'TABLE_SCHEMA', 'test' )
	->fetchAll();

You must have some mistake in your code.


break the established connections when the host was removed

As the title described, I wish the connections can be broken when the host is removed from xDS configuration. I found the configuration filed drain_connections_on_host_removal  and set its value with true, but it doesn't work for me.

I can't remember where we landed with this. cc @nezdolik who did the original feature around this. Also cc @snowp. I think this is a a reasonable feature to add (if not already supported) but it would need some additional work.

I think currently we just mark the connections for draining, no attempt to aggressively tear them down.
I imagine most use cases could use a combination of timeouts to ensure that connections are closed in a timely manner, but for cases where users want long lived streams I can see the usefulness of wanting to close those streams when the host is removed.
The implementation shouldn't be too hard if we're just trying to reset the connections, though it would get more complicated if we want to give it some time to gracefully shut down before doing the reset.

I do agree that the existing feature coupled with both stream/connection idle timeouts might be good enough?

The idle timeouts don't work for me, because the connections are long connection so I must break the connection by force.


Added Language helper

Currently the only way to change the android apps language is in the phone settings, this is problematic for two reasons.

The website has a language switcher that shows what the user wants their language to be, once they use this switch is makes more sense to change the language on the app accordingly.

Not all languages that the website supports are supported by Android so it is frustrating if a user who only speaks an unusual language has set their website to said language but cannot use their app in the same language.

The way the app works with the language helper, is when the user changes the language on the website and the user changes screens the user will get an alert letting them know that the language has changed and that the app will reset, the app will go back to the starting screen and then the language will have changed.
If the app is closed when the language is changed then the language will be correct when the user opens the app.
LEARNER-XXXX

Thanks for the pull request, @adamsythe! I've created OSPR-2263 to keep track of it in JIRA. JIRA is a place for product owners to prioritize feature reviews by the engineering development teams.
Feel free to add as much of the following information to the ticket:

supporting documentation
edx-code email threads
timeline information ("this must be merged by XX date", and why that is)
partner information ("this is a course on edx.org")
any other information that can help Product understand the context for the PR

All technical communication about the code itself will still be done via the GitHub pull request interface. As a reminder, our process documentation is here.
If you like, you can add yourself to the AUTHORS      file for this repo, though that isn't required.     Please see the CONTRIBUTING     file for more information.

@edx/android-devs Please take a look

@edx/mobile-product Does this need a product look or not?

A few notes here to get thoughts and comments on included below. Thanks for the contribution @adamsythe !
This change should be behind a feature flag, allowing us to retain the following two paths:
A - (A1 current) Default to having the OS determine your language. While the OS language determines your language to start, and we could (A2 future / next) have a field in settings called "Mobile App Language" that defaults to using the OS language but allows learners to override this and select any of the other available app languages. This list might actually align 1:1 with the platform language setting but it should depend on mobile app languages that are available not the full list of web enabled languages. Ideally this mobile app language field would be set / known at the learner profile level (even though it wouldn't be shown in Account Settings), but it could also for v1 be simply an app level setting.
(FWIW - This enables the partial rollout of languages so that web / mobile aren't necessarily in sync.)
B - Flag could be set to link your account settings language setting to the mobile app language, whether or not that field is shown in account settings. This requires that the platform / app language files both be available, but this may be the path that some instances of the platform opt for, especially when the language isn't available on Android at all.
Within option B (and option A2 future / next) - Is there a way for us to support the language messaging / using a "reload / refresh" action instead of a "restart app" interaction?

Hello!
Apologies for the delay here, but upon reconsideration I have a suggestion here on what we would consider merging.
We can add a language setting to Android to allow the app to be forced into a language other than the OS level language. The app configuration would have a list of supported languages shown in this dropdown. The app default would continue to be the OS and would not have any dependency on the user's LMS account settings value.
Thanks!

@adamsythe Have you had a chance to review Marco's response?

@adamsythe As we have not heard from you in a while, I am closing this request. However, should you be interested in continuing working on this, please feel free to re-open this PR.

@adamsythe Even though your pull request wasn’t merged, please take a moment to answer a two question survey so we can improve your experience in the future.


Triggering search for a selected text in detached editor not working properly

Triggering Search: Find in files, for a selected text in detached editor, using both command palette as well as the keyboard shortcut (Ctrl + Shift + F), works only the first time.

Does this issue occur when all extensions are disabled?: Did not check

VS Code Version: 1.85.0
OS Version: Ubuntu 20.04.6 LTS

Steps to Reproduce:

Detach an editor to a new window
Select text
Trigger Search: Find in files
Select some other text
Trigger Search: Find in files again

Thanks for creating this issue! It looks like you may be using an old version of VS Code, the latest stable release is 1.85.1. Please try upgrading to the latest version and checking whether this issue remains.
Happy Coding!

The issue remains in v1.85.1 (I did not bother to upgrade to the patch version earlier as there was no mention of any fixes for this particular issue in the patch notes)

I can prove as well, that the issue is in v1.85.1.
State 1
When working in detached window and using (Ctrl + Shift + F) the first time, the command bar opens the search dialog. If I have selected a string this is displayed as the search string.
Issue: Contrary when doing this in the default window, the input focus is not set to the search box but stays in the detached window.
State 2
The second time using (Ctrl + Shift + F), without closing the search dialog, no selected text get's pupulated in the search box.
State 3
When I close the search dialog after State 1 (by unfold the command bar) then the behaviour is back to 'State 1'

This should be a /duplicate of https://github.com/microsoft/vscode/issues/193267

Thanks for creating this issue! We figured it's covering the same as another one we already have. Thus, we closed this one as a duplicate. You can search for similar existing issues. See also our issue reporting guidelines.
Happy Coding!

This should be a /duplicate of https://github.com/microsoft/vscode/issues/193267

@andreamah could you please quote the mention of this bug in #193267? I'm unable to spot it.

On second thought, since this is more specific within enabling the search panel in a floating window, I'll leave it open for now.

I think this no longer reproduces?
Can you try to reproduce with our nightly insider builds? You can give our preview releases a try from: https://code.visualstudio.com/insiders/

I checked it with tonights insider. It works fine now.
Thanks.


docs: Update OpenShift (OKD) GSG to use OLM operator

Just realised that this needed for 1.10, so added the appropriate label.

FYI I took note of the ready-to-merge, but I wanted to give @aanm a chance to see your answer and (possibly) reply before I merge the PR.

@errordeveloper We should discuss the UX around this installation overall as running bash commands instead of using cilium-cli or helm seems a little bit laborious.

@aanm yes, but there are several BUTs 😉
What is needed here is manifests, there is no API access at this point. cilium-cli assumes API access. Helm was used previously, but now we are not installing Cilium components, just the installer operator. Previous version used helm, and it was not less complex.
Additionally, there are many more UX hindrances that OpenShift installation has, this is honestly not one of them.
I am happy to discuss some improvements for 1.11, but we need to get this into 1.10 docs to start using the certified operator.


server(ticdc):  remove unused cdc-v2 configuration

What problem does this PR solve?

Issue Number: close #11354
What is changed and how it works?
The below cdc-v2 configuration is not used anymore, and ticdc will implement the new architecture in another way, so remove it to reduce the codebase.
furthermore, it's a debug configuration, so we can remove it without breaking the compatibility
[debug.cdc-v2]
enable=false

Check List
Tests

Unit test
Integration test
Manual test (add detailed scripts or steps below)
No code

Questions
Will it cause performance regression or break compatibility?
Do you need to update user documentation, design documentation or monitoring documentation?
Release note
Please refer to [Release Notes Language Style Guide](https://pingcap.github.io/tidb-dev-guide/contribute-to-tidb/release-notes-style-guide.html) to write a quality release note.

If you don't think this PR needs a release note then fill it with `None`.

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required

/retest-required


write benchmarks and performance tests

Things that would be very interesting to see:

memory usage
heap usage
latency?? Maybe??

@Miaxos no problem!
We thought about this a bunch, and don't necessarily want to make this a competition with other parsers in the ecosystem (thus the title change of this issue). We'll definitely write benchmarks, but they won't be "apollo-rs performs better/worse than x". Criterion is definitely the standard choice for something like this :)


Introduce an issue template chooser to direct to issues, discussion, chat

Motivation & Context
In our community meeting on 2023-02-23 @sschuberth mentioned that activating the discussion feature to enable more open discussions that more of support and less of bug/feature discussion character could make sense.
@lenucksi pointed out that using the GitHub YAML based issue template selection feature to ensure all places are appropriately advertised to people looking at the issue tab and creating new issues would be use. Community agreed.
It was also discussed to use the discussion feature to provide a dynamic/interactive FAQ.
Action
Hence: We need to craft the matching YAML file to configure a proper issue chooser
Features / Directions

[ ] Small issue template for actual bug/feature request. Have there been discussions around this already?
[ ] The feature supports simple links. Have one for the discussion system. Maybe to a discussion / page with some expectations how to use the discussion feature?
[ ] Make a discussion topic that can serve as interactive/dynamic FAQ (maybe split out to an issue?)
[ ] Make a discussion info thing pointing back to issues / making clear what goes into issues and what into discussions
[ ] Add a link to our Slack channel with the highlight that it is for interactive/more-sync-than-async chatter. (i.e. use the issue switcher as advertisement for the slack
[ ] Likely add some small words on the READMEregarding the switcher and discussion system.

Make a discussion topic that can serve as interactive/dynamic FAQ (maybe split out to an issue?)

I believe that's resolved via the default "Q&A" category.


[CHORE] Use sccache for caching on build-artifact-s3 workflow

Doesn't seem to do what I am intending


Multiple Base URLs

This is related to the question: https://github.com/google/ExoPlayer/issues/771
We are in a scenario with where we'd like to have availability zone redundancy on our publish to CDN. The way we want to do this is to publish to primary from AZ 1 and backup from AZ 2. Both manifests will have two BaseURL tags which point to primary and backup playback on CDN.
The main issue we have faced is a synchronization problem between the two ingests. If primary is playing segment 1000 when it fails, it will get a 404 on 1001 and try the backup BaseURL for segment 1001. The problem is that the backup push might have started a few seconds earlier and only be at segment 999 or 1000. We can overcome this by starting them in sync, but it's not desirable.
Another issue is if say the primary encoder machine reboots. The encoder will then restart at segment 0. So, if there is ever a need to fail from the backup BaseURL back to the primary BaseURL, we will be looking for some very large segment numbers, but none will be available since it has started from segment 0 (zero) again and will never catch up to the backup segment number.
Have you any experience on this in Exoplayer? Wondering if exo player would request the MPD from the new BaseURL that it switches to. Then it would know the exact segment template and not have to rely on the next BaseURL to be in line with the one it switched away from. Because on web currently, dash.js doesn't send request to the backup manifest at all

I don't think this works according to the DASH spec and guidelines. The MPD location is not meant to be affected by BaseURL values and the DASH interop guidelines point this out very clearly: "Any present BaseURL element SHALL NOT affect MPD location resolution."
The only official ways to change the MPD location is via a Location element or HTTP redirects (see linked section).

Thank you for the reply @tonihei.
But, my understanding is that Location tag is only used during manifest refresh. If the primary fails, it will not be available to write a new mpd on Location tag. In your experience, how is this kind of fail over usually implemented?

Unfortunately, we are no experts in how to serve media reliably because we only focus on the player implementation. I think you probably need to ask your question elsewhere to get more informative answers. If you think there is something the player should do (while following the specs provided by DASH), please let us know. I'll close this issue for now given there seems to be nothing to do for us.


Viewports are a mess

Change ALL the heights and widths etc. to pixels! Do NOT use viewports or percents! This is a huge change as EVERYTHING is in vh and vw and %! Viewports are buggy on mobile browsers when the address bar disappears. Viewports calculate ALL the numbers again. Use media queries for mobile devices please!
link to media queries:
https://responsivedesign.is/develop/browser-feature-support/media-queries-for-common-device-breakpoints

Theme changed partly because of this issue


contact and appearance page enhancements

Description
This PR enhances contact and appearance page
Related Issues

Testing

Checklist

[ ] I have performed a thorough self-review of my code.
[ ] I have added or updated relevant tests for my changes.
[ ] My code follows the project's style guidelines and best practices.
[ ] I have updated the documentation if necessary.
[ ] I have added or updated relevant comments in my code.
[ ] I have resolved any merge conflicts of my branch.

Screenshots (if applicable)

Additional Notes

Reviewers

Maintainer Notes

[ ] Has this change been tested in a staging environment?
[ ] Does this change introduce any breaking changes or deprecations?

Merge reverted from main.


Migration to null safety

Codecov Report

Merging #2 (0d72fe0) into master (a39aef5) will increase coverage by 0.15%.
The diff coverage is 98.91%.

@@            Coverage Diff             @@
##           master       #2      +/-   ##
==========================================
+ Coverage   96.84%   97.00%   +0.15%
==========================================
  Files          17       17
  Lines         603      600       -3
==========================================
- Hits          584      582       -2
+ Misses         19       18       -1

Impacted Files
Coverage Δ

lib/src/utils/form_formatters.dart
100.00% <ø> (ø)

lib/src/form_field.dart
88.37% <85.71%> (ø)

lib/src/checkbox/checkbox.dart
100.00% <100.00%> (ø)

lib/src/date_time/calendar.dart
100.00% <100.00%> (ø)

lib/src/date_time/date_picker.dart
100.00% <100.00%> (ø)

lib/src/date_time/date_range_picker.dart
97.72% <100.00%> (ø)

lib/src/date_time/time_picker.dart
100.00% <100.00%> (ø)

lib/src/dropdown/dropdown.dart
100.00% <100.00%> (ø)

lib/src/form.dart
100.00% <100.00%> (ø)

lib/src/form_scope.dart
80.00% <100.00%> (+13.33%)
:arrow_up:

... and 7 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a39aef5...0d72fe0. Read the comment docs.


Support other auth options besides Auth file

In Spring Cloud Stream Binder for Event Hub, only Auth file is supported as the auth option.
We should enable other auth options for users, since Auth file is not a GA feature in management SDK (https://github.com/Azure/azure-libraries-for-java/blob/master/AUTH.md#using-an-authentication-file).

We support both auth file and connection string. Please refer https://github.com/Microsoft/spring-cloud-azure/tree/release/1.1.0.RC5/spring-cloud-azure-samples/eventhubs-binder-sample#connection-string-based-usage


Add support for menus dividers

See https://github.com/orgs/hbstack/discussions/72.

See https://hbstack.dev/modules/header/menus/#dividers.

Thank you for the effort!


Fix android splashscreen

When building a release apk and installing it the splashscreen on android does not show any image - it's just white.
Should fix that for better UX

Android is not in focus for now. It's still an issue but not important in the near future.


Ninja enchantment buggy

Hiya,
Cutting this right to the point: Ninja seems to be extremely buggy. I'm not sure if this is something that was raised before (a quick browse of the open issues leads me to believe that it isn't). That said, I'd like to report my issues.

Equipping an item with Ninja causes it to potentially never apply the effects until a relog.
When equipped, if the affects DO apply, they do NOT get removed. This persists THROUGH a relog, and requires milk to be drank or an /effect clear.

What version of CE are you using?(Version numbers from /version crazyenchantments)
Also what version of MC is your server?

CE Version: 1.8-Dev-Build-v6.1
Server Version: 1.14.4 running build Paper#156 (latest).


TLS Rotation for QUICServer and QUICClient

Specification
TLS certs may be changed while the server is running, or while we are using the client. We need to be able to swap out the TLS certs without impacting old connections.
QUICServer
The QUICServer manages multiple QUICConnection connections. Each QUICConnection is created with a QUICConfig POJO.
This mean when we swap out the TLS, we don't change the existing QUICConnection. We only change how new QUICConnection will get created.
So our QUICServer needs to new methods such as:
QUICServer.setTLSConfig(keyPrivatePem: PrivateKeyPEM, certChainPem: CertificatePEMChain);

This function would "update" the config POJO object. New connections would be initiated with the new TLS configuration. Existing connections would continue to use the old QuicheConfig object and would not be affected by the updated config POJO.
Tests should test starting with 1 cert, and creating connections, and while they are running, create a new cert, rotate the cert, and then create new connections using the new cert, while the old connections are still valid.
QUICClient
The QUICClient is one to one to a single QUICConnection. This means, a client cannot have its TLS config rotated live. Instead it's simply a matter of creating new QUIC clients with the new TLS config.
During testing of the QUICServer.setTLSConfig, tests should start new QUIC clients with the new TLS configuration too.
Remember, when updating the TLS configuration... we are really doing 2 things:

Updating how the server/client presents themselves.
Updating what the server/client accepts as acceptable certificates.

In our PK P2P situation, we won't just use the OS default certificate store. We will actually want to verify that the other certs is one that we trust.
This means when PK is using it, it actually has to disable the peer verification and put in its own custom verification: https://github.com/cloudflare/quiche/issues/326#issuecomment-577281881.
This technically means we don't really care about the certificate store.

These 2 functions in the config are not relevant to us.
Additional context

#2
https://github.com/cloudflare/quiche/issues/326#issuecomment-577281881

Tasks

Add in setTLSConfig to QUICServer.
Test rotation of certificates
Explore if we want to also be able to rotate the trusted certificate authorities too.

Tasks 1 and 2 are done. I'm skipping task 3 for now unless we really need it.

What's difference between rotating certs and rotating CA certs?

This has been updated. We can now modify the whole QUICConfig using QUICServer.updateConfig(config: Partial<QUICConfig>)
We can use this to update the TLS certs and the CA cert. Setting the CA cert can't be set using a cert from memory for now. I still need to add that.


Module convention: only set inferModulePath once

Reviewer checklist

[ ] Ensure relevant issues are linked (description should include text like "Fixes #")
[ ] Ensure any appropriate documentation has been added or amended

Coverage remained the same at 96.097% when pulling a224708578fbc6db84a1ed749894af6033c7d15f on module_convention into 6a4e1137cf418bbddf9c57d4d092537f2771e775 on main.


HTTP_X_FORWARDED_PROTO not handling at all

I 'm currently using AWS and my hosts SSL handling done by AWS. So when I use forced_ssl, ForcedSslListener simply does redirect loop to same domain which is not expected. Can you add a proper handling for that?

You need to configure the Request headers that symfony trusts.
I use this for AWS application load balancer, which does SSL termination, in app.php:
Request::setTrustedProxies([$_SERVER['REMOTE_ADDR']]);
Request::setTrustedHeaderName(Request::HEADER_FORWARDED, '');
Request::setTrustedHeaderName(Request::HEADER_CLIENT_IP, 'X_FORWARDED_FOR');
Request::setTrustedHeaderName(Request::HEADER_CLIENT_HOST, '');
Request::setTrustedHeaderName(Request::HEADER_CLIENT_PROTO, 'X_FORWARDED_PROTO');
Request::setTrustedHeaderName(Request::HEADER_CLIENT_PORT, 'X_FORWARDED_PORT');

Thank you so much. It worked :) I didn't know this can be solved with symfony.


[Feature Request] World query improvement

In some scenarios i need to use Raycast / Shapecast to do the world query instead of the discrete simulation,
so some improvements on the query & intersection test is necessary:
1, collider has a flag to indicate it will be involved in the world querying or not:
    // when false, the world search will ignore it from the list to test intersection
    collider.setQueryable(true / false);

~2, Raycast / Shapecast (and other APIs for intersection test) will have an extra parameter to filter what type of objects will be tested:~
    // the last parameter will be a bytes combination to indicate what type of colliders will be tested, or maybe merge these two parameter into the existing `InteractionGroup`?
    const ret = world.intersectionWithShape(pos, orientation, this._testShape, 0xffffffff, RigidBodyType.Dynamic | RigidBodyType.Fixed);

Thanks.

3, all query API should have preFilter to filter out which can be avoid to do the test or not, for example for rayIntersection aabbIntersection such querys, how do they work in current Rapier is, they report to the code about the test result, and ask if it needs to be going on or not, if i actually don't need this object, the cost of this testing is wasted, thus, preFilter will tell it, you should do aabb / ray intersect on the current shape or not. and, maybe a postFilter too, but currently can't figure out where to use it...

4, for now if i call setCollisionGroups(0) on a body to skip the broad-phase test, this will cause the world.castRay, world.intersectionsWithRay etc call always fail, if there is a way we can ignore the broad-phase test and also it won't affect the world query, it would be good and more efficient.


Dictation (speech to text) on Bookstack through OpenAI Whisper

Describe the feature you'd like
Dictation would be a much loved feature on Bookstack. What if there would be a mic button pressing which the dictation module is activated. Many folks must be using Bookstack for mind dumps and hence such a feature would be pretty interesting. OpenAI Whisper is open-source and with community development like whisper.cpp, I feel self-hosting Whisper isn't that big of a deal. Connecting Bookstack to the self-hosted Whisper API can help us achieve the feature.
Bonus: If the dictation service is able to take into account meta things like - "insert a joy emoji", "start a newline with Large Header", "quote ... unquote" etc, that would be pretty awesome. If our custom server which processes these meta instructions, that improves QoL much more.
Describe the benefits this would bring to existing BookStack users

A lot of folks must be using Bookstack for diary-writing or even for mind dumps. It might be very helpful in such situations.
Often tools like Otter are used to take meeting notes and transcriptions. Imagine where we just turn on the mic button on Bookstack and the entire meeting transcription gets recorded there itself on a page.

Can the goal of this request already be achieved via other means?
The base feature doesn't exist as of today. Whether or not we decide to use OpenAI Whisper is a thing to discuss.
Have you searched for an existing open/closed issue?

[X] I have searched for existing issues and none cover my fundemental request

How long have you been using BookStack?
1 to 5 years
Additional context
No response

Thanks for the request @rounakdatta.
To be honest, this is not something I'd be particularly keen on including myself. While you say it would be a much loved feature, this is the first request I've had for such a feature. Therefore I don't think there'd be enough benefit to warrant the build, maintenance, support and reliance on external libraries/technologies (Whisper or otherwise).
I think this would be something better served at an operating system or browser extension level, like many existing speech-to-text systems.

Yup, on re-thinking, this might better be implemented as a browser extension to allow more applications to benefit from it. I'm hence closing this issue.


Implement diplomat functions

Bribing units and perform city actions

All diplomat functions have been implemented, thanks to @cdonges

I haven't done inspect city or establish embassy yet :)

Sorry, I've just finished those...

Ok, np


In some case properties and function shouldn't be accessible but they are

Hello,
It look like an issue :)
`class NewClass
{
public static var list:Array<NewClass> = new Array<NewClass>();

private var myPrivateVar:Float = 3;

public function new()
{
	list[0].myPrivateFunction; 	// shouldn't be accessible
	list[0].myPrivateVar; 		// here neather
}

private function myPrivateFunction (): Void {

}

}`

"shouldn't be accessible"
why?

because the property is private. list[0] is not necessary the same than this. no ?

NewClass has access to their private properties and methods
for example http://try.haxe.org/#70624

alright I didn't know that. I thought the access was depending of instances and not classes. Thank you

please close this issue)


Relax mime-types dependency

Allow mime-types 3 to be used, which addresses many performance issues.
Originally the dependency was pinned to 2.x, since we didn't know what changes
would be made in 3.x, but so far there haven't been any affecting gcloud.
[closes #765]

Great, merging!


Feat/upgrade to v3

The purpose of this PR is to bring v3 to this repo.
This PR has been created by rebasing develop with the original repo v3
https://ankorstore.atlassian.net/browse/BCN-138

This fork is not needed anymore


Error attempt to insert nil object from objects

I'm using iphone 4s with code:
RNImageToBase64.getBase64String('file:///var/mobile/Containers/Data/Application/CFC50BF5-19D0-4C40-B362-1CFC25888F86/Documents/5276B443-6112-4837-A053-67F020A0BD67.jpg', (err, base64) => {
     console.log(base64);
});

After running the error is displayed:

2016-09-26 19:18:25.857 AppBico[258:26030] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '* -[__NSPlaceholderArray initWithObjects:count:]: attempt to insert nil object from objects[1]'
*** First throw call stack:
(0x2464f91b 0x23deae17 0x24564871 0x2456ea21 0x2adf5b 0x2d2b90d5 0x6c2b7f 0x6ceecf 0x6ce7cf 0x24381b29 0x24381718)
libc++abi.dylib: terminating with uncaught exception of type NSException

I found the problem. The path was nothing of the library. After change this works fine for me! Thanks!

Hi,
Can you tell me how did you solve this..

@swaroopa94 look here https://github.com/emirdeliz/react-native-app-bico/blob/fab80a1d43a03627ce94f9448b348437d1d735d8/src/client/screens/account-edit/component/index.js

Hi,
Thanks for the response ,
Her I am not uploading or capturing the image I am just getting an url from api, I have to convert that and and store that base64 image

You can save and then pass the file as my example
On Tue, Mar 14, 2017 at 9:34 AM, swaroopa94<EMAIL_ADDRESS>wrote:

Hi,
Thanks for the response ,
Her I am not uploading or capturing the image I am just getting an url
from api, I have to convert that and and store that base64 image
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/xfumihiro/react-native-image-to-base64/issues/1#issuecomment-286407496,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AF-uH6O5QAu3sQ1aL-K9Tk_7mTn9NVnSks5rlolOgaJpZM4KHD3s
.

ya when I was saving the uri then its throwing an error


Impossible to change server URL on firetv stick

Bug description
To set up the android client you are required to click multiple times on the burger icon until it’s possible to add the head scale server URL instead of the Tailscale one.  If you click again you still are at the same place. If you close the app and redo the burger button it only counts as one.
Environment
Latest version of Tailscale from f droid 1.58.2
FireTV OS <IP_ADDRESS>

[ ] Headscale is behind a (reverse) proxy
[ ] Headscale runs in a container

headscale works with other devices. Android client just can’t show the server URL

@ndx1905-github This is not an issue with headscale, but with the tailscale client. I would recommend creating a bug report in their repository https://github.com/tailscale/tailscale/issues

@kradalby please close


docs: cleanup README, prep 0.8 release notes

@decherneyge FYI updating docs/changelog/releasenotes with your updates!


add debug logging

Thanks. Released in 0.2.3. Feel free to add more logging too if you feel that it's useful.

@joliss will do. I suspect in some future iteration we may want to explore more structured logging techniques. Right now the logging is basically miles of data, but immensely useful for me.

Yeah, saw the Ember CLI logging and was much impressed. :) And +1 to turning it into something more structured some time - maybe we can have some API in Broccoli and/or Ember CLI to do per-node logging or so (e.g. this.{debug,info,warn}).


Display issue: Drop-downs with lots of whitespace

Using the new Teams client with this solution, I'm getting lots of whitespace around the items in the drop-down fields. This seemed to start when we transitioned from classic Teams to new Teams. Would you have any solution to this? I know it's just a display issue, but it's annoying for users.

@glblinck , thank you for reporting this issue.
We will address this scenario in upcoming release.

Hi @glblinck,
We have fixed this issue in the new v3.2 release. Once you upgrade the issue will be gone. We are closing this ticket for now. Please let us know if you see any issues.
Thanks.

[celebrate]     Glenn Blinckmann reacted to your message:

From: v-saikirang @.>
Sent: Monday, September 23, 2024 11:17:51 AM
To: OfficeDev/microsoft-teams-emergency-operations-center @.>
Cc: Glenn Blinckmann @.>; Mention @.>
Subject: Re: [OfficeDev/microsoft-teams-emergency-operations-center] Display issue: Drop-downs with lots of whitespace (Issue #220)
Hi @glblinckhttps://github.com/glblinck,
We have fixed this issue in the new v3.2 release. Once you upgrade the issue will be gone. We are closing this ticket for now. Please let us know if you see any issues.
Thanks.
—
Reply to this email directly, view it on GitHubhttps://github.com/OfficeDev/microsoft-teams-emergency-operations-center/issues/220#issuecomment-2367915899, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AOU5VLASA6TNRA4VDQAZ3VTZX72F7AVCNFSM6AAAAABKH5L6VWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNRXHEYTKOBZHE.
You are receiving this because you were mentioned.Message ID: @.***>


Cannot go to current project view in an environment view

Steps to reproduce

Go to the default environment view
Open project dropdown and choose the default project

Result
It does not switch to the project view
Environment

Walrus version: v0.5.0-rc4

Environment

Walrus version: main e92cde6256262c9671c9d51475f0bee8669f6628
UI version: dev-78d87e4

Test Result: pass
https://github.com/seal-io/walrus/assets/26084756/53f43d8b-a7f3-4aca-a3e8-1fc0a4ffb158


Add further details on properties returning Packed*Array

Limited it to properties with setters and existing documentation, might be excessive but without some central point to point to explaining this I feel this is a relevant point to clarify generally (also easier to access the information from the built-in documentation)
Left the documentation for Gradient as is as it has more specific details, could possibly add specific details to some of these if they have specific setters for details, but left it simple for now

Closes: https://github.com/godotengine/godot/issues/85198

I don't know how to feel about this. The note of this PR talks about "returned values" and "methods", but the subject is always a property. The meaning of the note can only be inferred if you know what setters and getters are, and is otherwise still a bit puzzling.
Also consider that both GDScript and C# discourage using setters/getters for built-in classes whenever possible, in favour of properties.

This is an existing note applied to more places, I didn't write this just updated one and copied it around, this was done in:

https://github.com/godotengine/godot/pull/26043

I'm aware it does exist elsewhere, I am just a fan of the way it is worded when applied to an Object's properties.

Can work on the verbosity, or add a note to the packed arrays themselves and link to it instead, but this thing has caused a lot of confusion and I think just putting it in the manual isn't enough (and it isn't there yet either)

Could have an automatic addition, can look into that, but I think important to have self contained in the built in docs

Thinking an addition to all the Packed*Array classes on the lines of:
Note: When a Packed*Array is returned from a property or method from built-in methods it is not shared like an Array is, and modifying the returned array will not modify the property, instead make your modifications to the returned array and then assign it to the property again.
Or something, and then maybe an automatic addition on properties returning a packed array type, that might be intrusive but will see, for translation it should be in the file id say

Added notes to Packed*Array and will look at adding automatic details to properties next

Added an automatic note in the built-in documentation, will see how to implement the same for the rst generation etc., if this is the way to go
Any suggestions on either wording is welcome

Not extremely familiar with the doc generation system but attempted to add the same feature to the rst side, any hints would be very welcome

Someone well versed in the rst generation and style would be appreciated to take a look at that side, it looked like it works correctly but I haven't worked with that side properly

Commits need to be squashed, besides that and the small note above this LGTM.

Good, had separate commits for specific things, will fixup and squash

Needs rebase.

Thanks!

Thank you! Great to get this merged, learned entirely new areas of the system


Add lxml as dependency

Sorry if I'm being stupid, but what needs lxml?

@davidread sorry, my bad, this was not intended for this repo. Closing this.


Added parentheses to lines 277, 280, 285, 288, 290 for print function…

… to work.

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

So we would love to be able to merge your changes but it looks like there is an error with the Travis CI build. ⚠
You have changed Python 2 syntax to Python 3 syntax which is great, but it would be better to have both.  See the previous sections of the same article for how that was done.
Please resolve this issue and resubmit on a new PR.
Thank you.

Feel free to reference the Style guide for writing articles for this repo on formatting an article correctly so your Travis CI build passes. ✅


Hyperlink error in README.md

Selecting the Portable Format for Analytics (PFA) hyperlink (in Chrome) results in an error -
"""
This site can’t be reached
scoringengine.org’s server DNS address could not be found.
"""

That's a broken link because scoringengine.org has been disbanded in favor of dmg.org/pfa. Where is that link?

Found it, thanks.

I changed it using the GitHub editor, so it was a direct commit to master. I'm assuming that's okay for a small fix to non-code like this.


es: bugfix for man page install

Installing es results in an error if the man/man1 directory does not exist. This patch explicitly creates that directory.
See Issue #8487.
I've tested it with nix-build.
cc @sjmackenzie

Hey great job!

Personally, i'd quite like to see es replace bash in NixOS.

The patch works for me, thanks!


Enable full testing on Travis

This change still doesn't solve the issue on some machines, closing.


Does not bring Fb data from facebook page

I've configured my facebook plugin and embedded my fb app id and secret. but the plugin does not pulling up the data from that page. Instead I am getting this text on my page
{{ facebook_posts() }}
Please guide me if I am doing anyting wrong.
Best

Hi,
I have the same issue as mustafakhalidcs. I simply created a page and than added the shortcode to the content.
Where exactly do we have to put the shortcode?
Regards,
Gilles Thoma

It seems that you have correct code in the page
{{ facebook_posts() }}
Can you check that your configuration contains...

Post settings - Posts page ID at least
Application ID and Application secret
Make sure that Plugin is enabled
Check if logs/grav.log file contains any errors or info related Facebook

I will try to reproduce your problem.

I checked all the settings and they should be correct. Nothing in the log file.
It seems that the code is not rendered as code but as simple text.
I have the basic core + admin installed. I added the facebook plugin via the integrated plugin manager.
Am I missing something?
Thanks for your help,
Gilles Thoma

I think I found the reason your problem, maybe. You need to make sure that you have checked "Process Twig" in the Settings page or in the Advanced section of the Page where you have the shortcode.

Did you get the issue fixed ?

Hey Mika,
it's working now! You were right. I had to check "Process Twig" in the configuration.
Thanks alot!
Cheers

Excellent! I will close this issue.


Dynamic specialdates dates from database is not working in Android device.

    This Calendar is working properly with static specialdates list in Android device and emulator. On dynamic specialdates dates from database is working in emulator but Application crashing on Android device.

issuecalendar.txt

Could you send me on what kind of Exception the Calendar is crashing on the Android device?

Error Exception has been thrown by the target of an invocation.
This exception is getting.

I think so datetime format 12/24hrs is the issue.

Hi,
I got the Solution.
Datetime format is different in emulator  and Android device.  Now i changed the (mm/dd/yyyy) to (dd/mm/yyyy) now its working in android device but showing exception on Emulator.
with regards,
Sudharsan K


Water Calibration overhaul

Pull Request instructions:

Please follow the update protocol
Answer the questions below in detail. Your responses will be emailed to experimenters.
If the experimenters must do anything new, provide detailed step by step instructions on the wiki
If computer maintainers need to manually update anything, provide detailed step by step instructions
Use markdown syntax in order for your comments to be rendered reliably in the email: "1." instead of "1)", use four spaces for indents.
If you use the keyword "skip email" in the title, it will skip the email updates
Merges from "develop" into "production_testing" should use the keyword "production merge" in the title for reliable indexing of updates
Merges from "production_testing" into "main" should use the keyword "update main"

Describe changes:

Resizes the water calibration dialog to fit on a half screen
Allows spot checks to be saved without interfering with full calibrations
Changes default calibration settings to a narrower range of values
Increases the calibration speed by reducing the interval time
Streamlines logic for calibration, by removing fields and removing notion of saving calibration parameters
Makes it easier to repeat a measurement
Emergency stop closes the valve and cancels the current measurement

What issues or discussions does this update address?

partially addresses #474
resolves #456, by only using QInputDialog for inputs
resolves #297
resolves https://github.com/AllenNeuralDynamics/aind-behavior-blog/issues/347
resolves https://github.com/AllenNeuralDynamics/aind-behavior-blog/issues/337

Describe the expected change in behavior from the perspective of the experimenter

calibration should be significantly faster and easier
Users should never need to manually delete data

When you open the water calibration dialog, it will look like this:

After pressing Calibrate Left, you will be prompted to enter the before weight:

The calibration will run and provide progress reports in purple text. When its finished, you will be prompted to enter the after weight.

You can then press "Continue" to perform the next measurement. "Repeat" to repeat the measurement of the valve open time currently selected. Or "Finish" to stop measurements. You can perform repeats immediately, or do all measurements and then repeat any measurements you like.

Describe any manual update steps for task computers

Copy the WaterCalibrationPar_#.json to ForagingSettings for each rig
[ ] 446/447
[ ] 428
[ ] Ephys1
[ ] Ephys3

Was this update tested in 446/447?

[ ] tested in 447
I tested in 447, but got significantly different calibration results than the saved calibration, so I'm not sure what is happening
[ ] Determine if 0.1s interval is ok or not

In order to test the new calibration system. I calibrated 1A several times, the results are plotted here. The labels are confusing:

2024-06-06_left valve, using the new system, with 0.01s intervals
2024-06-07_left valve, using the new system, with 0.10s intervals
2024-06-08_left valve, using the new system, with 0.25s intervals
2024-06-09_left valve, using the new system, with 0.5s intervals
2024-06-10_left valve, using the OLD system, with 0.5s intervals
All other labels reflect previous calibrations

We observe a difference in slope between the calibrations (all done today, in a row), and previous calibrations. But all of today's calibrations on old and new system are in agreement. I conclude the new system works, and 0.1s intervals are fine

To assess what threshold we should use for valve drift, I performed 8 spot checks in a row targetting 2uL volumes. I got back: 2.1 +/- 0.0299 mg (mean +/- std). None of the samples would have been flagged by my proposed tolerance of 10% error ( < 1.8, or > 2.2 mg).
If we had used the old calibration settings to target the 2uL volumes, then the results would have been flagged.
I conclude the spot checks are valuable, and the tolerance I used is ok.
I attach to this comment the results of the water calibration test
calibration_notes.txt
Test_1_WaterCalibration_1.json

@XX-Yin @hanhou This is ready for review. See two validation test results in the comments

@alexpiet Overall it looks good. I don't have time to review it this week. I will review it next week so we can merge it next week.

@alexpiet It's better the GUI can be open without the WaterCalibrationPar_#.json. We can set some default parameters.

@alexpiet It's better the GUI can be open without the WaterCalibrationPar_#.json. We can set some default parameters.

Good call. I updated the code to:

set default fields for WaterCalibrationPar_#.json
No longer log an error if WaterCalibrationPar_#.json is not provided, or cannot load
Only add additional calibration types from WaterCalibrationPar_#.json if they have the required fields.


no README

Could you add a README that documents how to use the module?

Sounds like this issue can be closed?

looks like https://github.com/c9/node-http-error/commit/8fbcf5740303fcee183cd04242edddd4e09306cf fixed it. thanks!


Change FileManager to take a trait instead of using features

Since barebone wasm does not know how to read files, we currently have a feature flag that is patches the readfile functionality for wasm.
This however means that the filemanager has javascript code and wams-bindgen code.
Instead, we can have the fileManager take a trait with the read file method and implement a type StdFileManager = FileManager<StandardReadMethods> that can be used when compiling natively.
Link to comment in relevant PR: https://github.com/noir-lang/noir/pull/302#discussion_r951422650

Closing as we have moved on from this


Include project name in logs

At Airbnb, we are running Happo on a bunch of different projects in
parallel. Since the logs end up getting all mixed together, it is hard
to tell what is actually happening. I'm hoping we can make this better
by including the project name in the log lines if it exists.
I'm not totally in love with this approach, but anything cleaner would
require a deeper refactor of the way logging works in this project, and
I'm not really interested in doing that right now.

@trotzig I think this is ready for a proper review now

Not sure what's going on with Travis, but it looks like most specs are passing: https://travis-ci.org/github/happo/happo.io/builds/744199826


Navigation Mesh Generation - Simple geometry method added

Implemented a method of generating simple geometry. It will use the mesh like it was created.

@TypeOverride2  Is this still desired? If so, it needs to be rebased and tested on the latest master branch. While there are no conflicts, rebasing is important so that reviewers can easily test the PR.

I see this method not went into Godot4...
So how i can now use static nav meshes i created in blender. With the ability fo merging multiple of them with a simple method like i created here?
I dont see a way in Godot 4. Sometimes game developers creating nav meshes in Blender, for example. And than they only want to use those nav meshes without any algo change, except its a merge.

Since this is an older pr it might have made more sense at that time cause the described functionality below did not exists or was different.
@akien-mga
Today I see no reason for this pr to add a baking option to the NavigationMesh when the intentions are to prevent the baking step. What is the point of doing all the parsing work and then cancel the baking step that converts the mesh data to a proper navmesh? Just do not bake the mesh and use NavigationMesh.create_from_mesh() function to convert a mesh to a proper navmesh resource without the baking step. If the intention was to use the geometry parse function to merge child mesh nodes into a mesh the newer godot version have a merge mesh function for this but just merging meshes alone is not a enough for a working navmesh.

but it needs to be baked. Because when i have multiply nav meshes created? Or do i not understand here something?
So he creates a nav mesh out of multiple geometry. Merging them. Let me try if something works out. But they need to be merged. Would a baking too.