Support scanning for iBeacons

Feature request to support scanning for iBeacons.
This will require the use of CoreLocation on iOS side.
Consider triggering beacon scanning automatically by performing a range-based scan:
scan(withinMeters: 100)

References:
https://stackoverflow.com/a/60903317 (corelocation vs corebluetooth)
https://ukbaz.github.io/howto/beacon_scan_cmd_line.html (beacon formats)
https://esf.eurotech.com/docs/how-to-user-bluetooth-le-beacons (hcitool)

My project also has a need for this, on iOS.
This would allow to re-spawn an app on iBeacon detection, and restart BLE scanning (if app was killed).

@pauldemarco any update on this?


TensorFlow Lite - CMake build installable package fail

Issue type
Build/Install
Have you reproduced the bug with TensorFlow Nightly?
Yes
Source
source
TensorFlow version
2.14
Custom code
No
OS platform and distribution
Mac Ventura
Mobile device
No response
Python version
No response
Bazel version
No response
GCC/compiler version
No response
CUDA/cuDNN version
No response
GPU model and memory
No response
Current behavior?
When following https://www.tensorflow.org/lite/guide/build_cmake#build_installable_package to build TensorFlow Lite with CMake, using the flag -DTFLITE_ENABLE_INSTALL=ON, a CMake error happens, saying that the Target ml_dtypes INTERFACE_INCLUDE_DIRECTORIES property contains path: which is prefixed in the build directory.
Standalone code to reproduce the issue
git clone https://github.com/tensorflow/tensorflow.git tensorflow_src
mkdir tflite_build
cd tflite_build
cmake ../tensorflow_src/tensorflow/lite -DTFLITE_ENABLE_INSTALL=ON

Relevant log output
CMake Error in tools/cmake/modules/ml_dtypes/CMakeLists.txt:
  Target "ml_dtypes" INTERFACE_INCLUDE_DIRECTORIES property contains path:

    "/Users/me/tf_build/ml_dtypes"

  which is prefixed in the build directory.

CMake Error in tools/cmake/modules/ml_dtypes/CMakeLists.txt:
  Target "ml_dtypes" INTERFACE_INCLUDE_DIRECTORIES property contains path:

    "/Users/me/tf_build/ml_dtypes/ml_dtypes"

  which is prefixed in the build directory.

@algat There could be the following reasons for this specific build failure such as;
a. The dependencies would be missing - the libraries such as Flatbuffers, and XNNPACK should be installed properly
b. Incompatible dependencies - the version would be mismatched sometimes which will cause this failure
c. CMake configuration-  The right version of CMake along  with configuration set up for this should be correct.
By seeing your error log we are assuming that the CMake build system is trying to include the header file and to fix this error, you need to set the INTERFACE_INCLUDE_DIRECTORIES property to an absolute path.
Hope it helps?
Thank you!

I confirm that compilation to an installable package on Ubuntu 23.10 is not possible.
$ cmake ../tensorflow/tensorflow/lite -DTFLITE_ENABLE_INSTALL=ON \
  -DCMAKE_FIND_PACKAGE_PREFER_CONFIG=ON \
  -DSYSTEM_FARMHASH=ON \
  -DSYSTEM_PTHREADPOOL=ON \
  -Dabsl_DIR=/usr/lib/x86_64-linux-gnu/cmake/absl \
  -DEigen3_DIR=/usr/share/eigen3/cmake \
  -DFlatBuffers_DIR=/usr/lib/x86_64-linux-gnu/cmake/flatbuffers \
  -Dgemmlowp_DIR=/usr/lib/x86_64-linux-gnu/cmake/gemmlowp \
  -DNEON_2_SSE_DIR=/usr/lib/cmake/NEON_2_SSE \
  -Dcpuinfo_DIR=/usr/lib/x86_64-linux-gnu/cmake/cpuinfo \
  -Druy_DIR=/usr/lib/x86_64-linux-gnu/cmake/ruy
-- Setting build type to Release, for debug builds use'-DCMAKE_BUILD_TYPE=Debug'.
-- The C compiler identification is GNU 13.2.0
-- The CXX compiler identification is GNU 13.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found farmhash: /usr/lib/x86_64-linux-gnu/libfarmhash.so
CMake Warning (dev) at /usr/share/cmake-3.27/Modules/FetchContent.cmake:1316 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  tools/cmake/modules/OverridableFetchContent.cmake:398 (FetchContent_Declare)
  tools/cmake/modules/fft2d.cmake:22 (OverridableFetchContent_Declare)
  tools/cmake/modules/Findfft2d.cmake:18 (include)
  CMakeLists.txt:150 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/cc
-- Downloading cpuinfo to /home/me/Documents/GitHub/tflite_build/cpuinfo-source (define CPUINFO_SOURCE_DIR to avoid it)
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /home/me/Documents/GitHub/tflite_build/cpuinfo-download
[ 11%] Creating directories for 'cpuinfo'
[ 22%] Performing download step (download, verify and extract) for 'cpuinfo'
-- Downloading...
   dst='/home/me/Documents/GitHub/tflite_build/cpuinfo-download/cpuinfo-prefix/src/959002f82d7962a473d8bf301845f2af720e0aa4.zip'
   timeout='none'
   inactivity timeout='none'
-- Using src='https://github.com/pytorch/cpuinfo/archive/959002f82d7962a473d8bf301845f2af720e0aa4.zip'
-- verifying file...
       file='/home/me/Documents/GitHub/tflite_build/cpuinfo-download/cpuinfo-prefix/src/959002f82d7962a473d8bf301845f2af720e0aa4.zip'
-- Downloading... done
-- extracting...
     src='/home/me/Documents/GitHub/tflite_build/cpuinfo-download/cpuinfo-prefix/src/959002f82d7962a473d8bf301845f2af720e0aa4.zip'
     dst='/home/me/Documents/GitHub/tflite_build/cpuinfo-source'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'cpuinfo'
[ 44%] No patch step for 'cpuinfo'
[ 55%] No configure step for 'cpuinfo'
[ 66%] No build step for 'cpuinfo'
[ 77%] No install step for 'cpuinfo'
[ 88%] No test step for 'cpuinfo'
[100%] Completed 'cpuinfo'
[100%] Built target cpuinfo
-- Downloading FP16 to /home/me/Documents/GitHub/tflite_build/FP16-source (define FP16_SOURCE_DIR to avoid it)
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /home/me/Documents/GitHub/tflite_build/FP16-download
[ 11%] Creating directories for 'fp16'
[ 22%] Performing download step (download, verify and extract) for 'fp16'
-- Downloading...
   dst='/home/me/Documents/GitHub/tflite_build/FP16-download/fp16-prefix/src/0a92994d729ff76a58f692d3028ca1b64b145d91.zip'
   timeout='none'
   inactivity timeout='none'
-- Using src='https://github.com/Maratyszcza/FP16/archive/0a92994d729ff76a58f692d3028ca1b64b145d91.zip'
-- [download 14% complete]
-- [download 28% complete]
-- [download 44% complete]
-- [download 57% complete]
-- [download 72% complete]
-- [download 81% complete]
-- [download 90% complete]
-- [download 100% complete]
-- verifying file...
       file='/home/me/Documents/GitHub/tflite_build/FP16-download/fp16-prefix/src/0a92994d729ff76a58f692d3028ca1b64b145d91.zip'
-- Downloading... done
-- extracting...
     src='/home/me/Documents/GitHub/tflite_build/FP16-download/fp16-prefix/src/0a92994d729ff76a58f692d3028ca1b64b145d91.zip'
     dst='/home/me/Documents/GitHub/tflite_build/FP16-source'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'fp16'
[ 44%] No patch step for 'fp16'
[ 55%] No configure step for 'fp16'
[ 66%] No build step for 'fp16'
[ 77%] No install step for 'fp16'
[ 88%] No test step for 'fp16'
[100%] Completed 'fp16'
[100%] Built target fp16
-- Downloading FXdiv to /home/me/Documents/GitHub/tflite_build/FXdiv-source (define FXDIV_SOURCE_DIR to avoid it)
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /home/me/Documents/GitHub/tflite_build/FXdiv-download
[ 11%] Creating directories for 'fxdiv'
[ 22%] Performing download step (download, verify and extract) for 'fxdiv'
-- Downloading...
   dst='/home/me/Documents/GitHub/tflite_build/FXdiv-download/fxdiv-prefix/src/b408327ac2a15ec3e43352421954f5b1967701d1.zip'
   timeout='none'
   inactivity timeout='none'
-- Using src='https://github.com/Maratyszcza/FXdiv/archive/b408327ac2a15ec3e43352421954f5b1967701d1.zip'
-- [download 79% complete]
-- [download 100% complete]
-- verifying file...
       file='/home/me/Documents/GitHub/tflite_build/FXdiv-download/fxdiv-prefix/src/b408327ac2a15ec3e43352421954f5b1967701d1.zip'
-- Downloading... done
-- extracting...
     src='/home/me/Documents/GitHub/tflite_build/FXdiv-download/fxdiv-prefix/src/b408327ac2a15ec3e43352421954f5b1967701d1.zip'
     dst='/home/me/Documents/GitHub/tflite_build/FXdiv-source'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'fxdiv'
[ 44%] No patch step for 'fxdiv'
[ 55%] No configure step for 'fxdiv'
[ 66%] No build step for 'fxdiv'
[ 77%] No install step for 'fxdiv'
[ 88%] No test step for 'fxdiv'
[100%] Completed 'fxdiv'
[100%] Built target fxdiv
-- Downloading pthreadpool to /home/me/Documents/GitHub/tflite_build/pthreadpool-source (define PTHREADPOOL_SOURCE_DIR to avoid it)
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /home/me/Documents/GitHub/tflite_build/pthreadpool-download
[ 11%] Creating directories for 'pthreadpool'
[ 22%] Performing download step (download, verify and extract) for 'pthreadpool'
-- Downloading...
   dst='/home/me/Documents/GitHub/tflite_build/pthreadpool-download/pthreadpool-prefix/src/4fe0e1e183925bf8cfa6aae24237e724a96479b8.zip'
   timeout='none'
   inactivity timeout='none'
-- Using src='https://github.com/Maratyszcza/pthreadpool/archive/4fe0e1e183925bf8cfa6aae24237e724a96479b8.zip'
-- [download 13% complete]
-- [download 17% complete]
-- [download 55% complete]
-- [download 100% complete]
-- verifying file...
       file='/home/me/Documents/GitHub/tflite_build/pthreadpool-download/pthreadpool-prefix/src/4fe0e1e183925bf8cfa6aae24237e724a96479b8.zip'
-- Downloading... done
-- extracting...
     src='/home/me/Documents/GitHub/tflite_build/pthreadpool-download/pthreadpool-prefix/src/4fe0e1e183925bf8cfa6aae24237e724a96479b8.zip'
     dst='/home/me/Documents/GitHub/tflite_build/pthreadpool-source'
-- extracting... [tar xfz]
-- extracting... [analysis]
-- extracting... [rename]
-- extracting... [clean up]
-- extracting... done
[ 33%] No update step for 'pthreadpool'
[ 44%] No patch step for 'pthreadpool'
[ 55%] No configure step for 'pthreadpool'
[ 66%] No build step for 'pthreadpool'
[ 77%] No install step for 'pthreadpool'
[ 88%] No test step for 'pthreadpool'
[100%] Completed 'pthreadpool'
[100%] Built target pthreadpool
CMake Deprecation Warning at /home/me/Documents/GitHub/tflite_build/FP16-source/CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- Downloading PSimd to /home/me/Documents/GitHub/tflite_build/psimd-source (define PSIMD_SOURCE_DIR to avoid it)
CMake Deprecation Warning at CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /home/me/Documents/GitHub/tflite_build/psimd-download
[ 11%] Creating directories for 'psimd'
[ 22%] Performing download step (git clone) for 'psimd'
Klone nach 'psimd-source' …
Ihr Branch ist auf demselben Stand wie 'origin/master'.
Bereits auf 'master'
[ 33%] Performing update step for 'psimd'
[ 44%] No patch step for 'psimd'
[ 55%] No configure step for 'psimd'
[ 66%] No build step for 'psimd'
[ 77%] No install step for 'psimd'
[ 88%] No test step for 'psimd'
[100%] Completed 'psimd'
[100%] Built target psimd
CMake Deprecation Warning at /home/me/Documents/GitHub/tflite_build/psimd-source/CMakeLists.txt:1 (CMAKE_MINIMUM_REQUIRED):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- Configuring done (43.6s)
CMake Error in tools/cmake/modules/ml_dtypes/CMakeLists.txt:
  Target "ml_dtypes" INTERFACE_INCLUDE_DIRECTORIES property contains path:

    "/home/me/Documents/GitHub/tflite_build/ml_dtypes"

  which is prefixed in the build directory.

CMake Error in tools/cmake/modules/ml_dtypes/CMakeLists.txt:
  Target "ml_dtypes" INTERFACE_INCLUDE_DIRECTORIES property contains path:

    "/home/me/Documents/GitHub/tflite_build/ml_dtypes/ml_dtypes"

  which is prefixed in the build directory.

CMake Error: install(EXPORT "tensorflow-liteTargets" ...) includes target "tensorflow-lite" which requires target "pthreadpool" that is not in any export set.
CMake Error: install(EXPORT "tensorflow-liteTargets" ...) includes target "tensorflow-lite" which requires target "XNNPACK" that is not in any export set.
-- Generating done (0.4s)
CMake Generate step failed.  Build files cannot be regenerated correctly.
build.sh: Zeile 9: -Dabsl_DIR=/usr/lib/x86_64-linux-gnu/cmake/absl: Datei oder Verzeichnis nicht gefunden

@algat
This issue is effectively a duplicate of  #62381 .
Can we close this issue here as it is already being tracked there?
Thank You


Rustup

@bors r+

:pushpin: Commit c754d70d07a5804d29675522a87268b912fcd5f5 has been approved by RalfJung
It is now in the queue for this repository.

:hourglass: Testing commit c754d70d07a5804d29675522a87268b912fcd5f5 with merge 78e6286a1c8e02e37c1a083266564b87bc040c39...

:sunny: Test successful - checks-actions
Approved by: RalfJung
Pushing 78e6286a1c8e02e37c1a083266564b87bc040c39 to master...


Deprecate displayed extents

Fixes #4960.

ImageTests shows 60 differences, all of which look like expected changes in z-fighting due to slightly different frustum.


So how do you train segmentation task. Is there need to do segmentation manually by  a tool then need to train?

#184


Build executables to bin directory

Build the test executables to tests/src//bin/
.gitignore /bin directory

kinda sucks there's so much duplication across every test directory. makes updates like this kinda tedious. but, it allows each test to be completely independent (outside of requiring make all and make clean).

looks good to me


Added new permission to see the history.

Maybe someone can add an extra migration file to add the new permission to existing group staff.

Added the adjustments for the client and rebased on master


Create any necessary design artifacts (e.g., does it require an extern DB, network access, etc.)

Description

[ ] Create any necessary design artifacts (e.g., does it require an extern DB, network access, etc.)

[ ]

[ ]

References #44

Closing as we are using Log Analytics


Cell Components

This PR incorporates an interim JS component structure for Cells.
Motivation and Context

To date, all UI-specific code has lived on the Python side inside of Cell definitions. This includes properties like styling and layouts as well as the structure of HTML that should be sent to the browser in order to properly render the Cell visually.
As a part of refactoring, we've decided that we should push as much UI functionality into the actual UI (ie the browser) as possible, while having Cell objects on the Python side track state changes and communicate them to front-end components as needed.
This PR represents an interim transition towards more front-end responsibility in the form of basic JS "Components" that encapsulate the visual display of Cell objects.
To see how this fits with the wider roadmap, see "Future Work" below.

Approach

Dual Function
The most important thing to know for now is that we have kept the current Cell functionality intact so that we can "switch" on and off whether or not a given Cell type uses the old-style rendering (ie the older WS protocol and element handling on the front end) or the new-style JS Components.
Whether or not a given Cell is rendered as a "Component" or old-style element is determined by the presence of the Cell name in the availableCells dictionary in web/content/page.html. In order to switch back to old-style rendering (which should work just as it had in the past), simply comment out the Cell from that dictionary.
Component Structure and Lifecycle
All Cell components inherit from the Component class, which is quite minimal for the moment. We have done this intentionally -- with the current pattern it should be relatively easy to switch to any other widely-supported component framework (React, etc). DOM interaction is handled by the maquette library and is built on top of the work in this PR. It also makes the code more comprehensible and reduces overall complexity.
For now there are two main lifecycle methods to any Cell Component:

render -- This is called just before a component is rendered to the maquette v-dom. The contract is that this method should always return some hyperscript (which is an object-based description of an eventual virtual dom element) structure, sort of like the equivalent of setting self.recalculate on the Python side of things.
componentDidLoad -- This is called at the end of any message handling session that has added or updated components in the browser, and tell us that the given component was, in fact, rendered to the virtual dom. We use this to do things like setup extra event listeners, check for the presence of other components, etc

Python Cell Modifications and exportData
In order to facilitate comprehensible components, we added several pieces of information to the object that is sent over the WS when a Cell is to be rendered in the browser. This happens here.
The main piece of information is a new dictionary called exportData that is now initialized for every Cell subclass as an empty dictionary. We use this to add pieces of information that are updated in each self.recalculate call, but would not otherwise have made it to the front end before -- data that is required (currently) for the HTML structure to be properly rendered to the DOM. We have updated all Cell definitions on the Python side to use this exportData dictionary as needed.
On the JS side, this dictionary is made available to all Components as this.props.extraData. You will see this throughout Component class definitions wherever it is needed.
The goal is to eventually obviate the need for things like this extra data once we have a more standardized state management / socket update pattern in place.
Replacements
Because we have left the dual-function intact for this transition phase, we have not modified the process of string replacements that occurs throughout the system. This is a complex issue and requires careful modification and refactoring that is best handled in future work.
For now, Component classes still make use of replacements, which are now brought over the wire in their raw form. We've created a specific class called ReplacementsHandler that deals with a lot of the complexity of dealing with replacements in Component definitions. I will not go into too much detail here, but the important things to know are that all components have access to an internal ReplacementsHandler instance at this.replacements and that we have convenience methods for looking up replacements for a given Component type.
Note also that there are two types of replacements:

regular -- Single keyed replacements, like ____header__
enumerated -- Two or more dimensional replacements like ____child_2__ or ____row_2_5__

Of course, we also anticipate removing all of this replacement handling in future work since it should become unnecessary. For now it supports the interim transition and seems to work without issue.
Which Cells Are Actually Used, Anyway?
In going through all Cells and creating Component versions, we realized that we aren't sure which Cells are actually used in the "real" production system. Obviously we cannot completely know. With this in mind, we have added a little micro-testing class to the client that will allow you guys to "turn on" and monitor which Cell components are actually rendered into a page.
This class is called CellTracker and you can interact with it from the browser console.
Here's how it works. To start "tracking" which Cells are used, simply call CellTracker.start(); from the browser console. It will track across pages and even sessions until you tell it to stop (data is stored in localStorage and reloaded any time you reload the page). To stop tracking you can enter CellTracker.stop() into the console, and likewise to clear the stored tracking data you can enter CellTracker.clear().
The CellTracker object will have two sets, used and unused that will contain the names of different Cells. Note that this only tracks Cell types that have been turned into components.
How Has This Been Tested?
Testing has happened almost exclusively via the provided frontends in the open source repositories, in particular the test frontend in object_database/frontends.
Because this is an interim/transition phase, we have opted to skip the rather large overhead of adding front-end testing (via headless/selenium or similar) and unit testing components, given that all of this will likely be subject to change sooner rather than later.
The exception to this is the ReplacementsHandler class, which does some fairly complex things and had to be developed using TDD. Those tests are available here. The tests were written in mocha and chai and require a node environment with correct dependencies (which we've kept out of the repository for now). I can provide separate instructions for running these tests by request if you wish.

Merging
The initial work here starts from the head of the daniel-aws-clean branch and subsequent PR, as the breakup of ActiveWebService and related cleanup allows for easier debugging. Although technically the same in the end, it might make sense to consider merging that first, to keep the review and discussion logically separated.
Regardless of which way we proceed it will be important to thoroughly test both stacks of changes in the true production environment.
Future Work
Bundling
In the immediate future, and once this PR is accepted/merged, we will incorporate a Webpack bundling flow to the front-end. This will allow us to have sane imports and dependencies across module files for the client side, and will make writing tests and future changes much easier. We anticipate this process should only take an afternoon at most.
Cells and Websocket
Once this PR has been tested in the live environment, tested, and merged, we will move as quickly as possible to dropping "dual functionality" and use pure components. This will also go hand-in-hand with slimming down what Cell objects to on the Python side, how we communicate over the websocket, and how state changes are managed, monitored, and updated.
The end goal is to have Python Cell objects almost exclusively hold and broadcast state changes to matching components that are alive on the browser side.
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)

Checklist:

[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

These changes were rebased and manually merged in https://github.com/APrioriInvestments/nativepython/commit/ad238ce37e9482c8a34f571254115678e7745fcf


TS Error

Hello.
First of all, I just wanted to say this is a nice library. But sadly, it has "wrong" typings.
I was testing out this library (with TS) and it produces the following error:
Argument of type '[string, string, string]' is not assignable to parameter of type 'readonly string[] & { 0: string; length: 1; }'.
  Type '[string, string, string]' is not assignable to type '{ 0: string; length: 1; }'.
    Types of property 'length' are incompatible.
      Type '3' is not assignable to type '1'

Code:
const hook = new SyncBailHook(['arg1', 'arg2', 'arg3']);

https://github.com/webpack/tapable/blob/a0a7b26224557bd8bb09b97e0126b7dbda9f8e6a/tapable.d.ts#L59
Maybe adding a string[] should help here?
I'm not sure how it works internally but according to the example, it should work.

All Hook constructors take one optional argument, which is a list of argument names as strings.

- constructor(args?: ArgumentNames<AsArray<T>>, name?: string);
+ constructor(args?: ArgumentNames<AsArray<T>> | string[], name?: string);

Actually, I think in this context (and some other context), ArgumentNames<AsArray<T>> is not needed. Instead, use string[]. I'll submit a PR when I have time.


Use integer coordinates when drawing images (bug 1264608, issue #3351)

it aims to fix https://bugzilla.mozilla.org/show_bug.cgi?id=1264608;
it's only a partial fix for #3351;
some tiled images have some spurious white lines between the tiles.
When the current transform is applied the corners of an image can have
some non-integer coordinates leading to some extra transparency added
to handle that. So with this patch the current transform is applied on the
point and on the dimensions in order to have at the end only integer values.

This looks like the sort of thing that we have to do regardless, but does it affect performance in any noticeable way?

Do you have in mind a pdf with a lot of images ?
I profiled Doc2.pdf in beta with local server and there are small variations around 1/10 ms so as far as I can tell it's only noise.
MDN docs claim that it should be faster with integer coordinates so I guess the small overhead added because of rounding is almost offset by the improvement from the render. And it probably depends on the backend too, the graphic card, the machine itself...
My feeling is that in general there are not enough images on a page to see a noticeable difference (from user pov or from profiling pov).

/botio test

Given the huge number of changes it's possible that I've missed many issues, however the following test-cases stand out:

bug946506-page1
issue9462-page3
issue9462-page3
issue7303-page1
issue11230-page100
bug956965-page33, since it looks worse in some spots (e.g. the big "text" on the door)
issue8380-page1
issue8330-page1
issue2139-page1
issue12752-page1
issue2642-page1
issue1015
S2-eq-page1
Maybe images_1bit_grayscale-page1, since compared to Adobe Reader there appears to be a mix of improvements and regressions
issue5747-page1
issue12294-print-page1
issue13971-page1
issue2006-page1
High-Pressure-Measurement-WP-001287-page3
bug887152-page1
bug1077808-page1
Maybe decodeACSuccessive-page1

Please go through all of the test results carefully yourself, since there's a few too many clear regressions.

Looking at the logs there's now a number of errors like render : Error: Invalid canvas size[1], which suggest that the canvas.js-code is now somehow attempting to creating empty canvases

[1] Those errors originate in https://github.com/mozilla/pdf.js/blob/24d5d5d761157120297334b3ff56ce43660a3fd4/src/display/base_factory.js#L18-L57

/botio test

We obviously need to carefully go through all test-results again, however I've updated the list in https://github.com/mozilla/pdf.js/pull/14853#issuecomment-1112661899 since a couple of things remain.

I went through all the list and there is nothing obviously wrong.
In few of them there very small differences obviously visible when I keep the "t" pressed, but when I compare the output with acrobat at 100% (and with my eyes) I don't see anything obviously wrong (e.g. in images_1bit_grayscale-page1 or bug956965-page33).

I went through all the list and there is nothing obviously wrong.

Do you mean that you've gone through all of https://github.com/mozilla/pdf.js/pull/14853#issuecomment-1113426393 and https://github.com/mozilla/pdf.js/pull/14853#issuecomment-1113429952, since we need to do that before moving forward with (and landing) this PR?

bug956965-page33

So that one looks OK in the viewer, when comparing with Adobe Reader? Because it looks like a pretty obvious regression in the reftest-analyzer.

It's what I see:

And on an other screen with a lower resolution:

And yes I went through all the 490 tests, it's a bit long... and I did it this morning with the tests from yesterday and thx to that I fixed all the bugs I guess.

/botio makeref


BetterNether messes up BOP/RU nether biomes

Describe the bug
BOP/RU nether's biomes dont have the ground block they are supposed to have and sometimes some extra blocks added.
Steps to reproduce
1.Create a world with BetterNether, BCLib, Biomes O' Plenty (or Regions Unexplored)
2.Travel to the Nether
3.Find/Locate a BOP/RU biome and you will see what I mean by the fact it looks extremely weird and messy.
...
Logs
No response
Additional context
No response

Duplicate of https://github.com/quiqueck/BCLib/issues/75


Revert "Avoid setting the operator if the lock event is a replay (#56)"

This reverts commit 47a9d04a2097b5ad16bf163f758be942b890c38f.
This should no longer be needed after https://github.com/bdraco/yalexs/pull/57

looks like it is still needed


Update autoconsent to v10.15.0

Task/Issue URL:
Autoconsent Release: https://github.com/duckduckgo/autoconsent/releases/tag/v10.15.0
Description
Updates Autoconsent to version v10.15.0.
Autoconsent v10.15.0 release notes
See release notes here
Steps to test
This release has been tested during Autoconsent development. You can check the release notes for more information.

Make sure that there's no unexpected failures in CI checks
(optional) smoke test some of the sites mentioned in the release notes
If there are problems, reach out to a CPM DRI

closing due to CI error


OpenAPI validation fails on Multiple methods defined on the same path

In OpenAPI, we can declare multiple methods under an endpoint path like this.
/users:
    get:
        ...
    post:
        ...

However, runn gives error like the following;

Failure/Error: http request failed on "***: openapi3 validation error: Error: POST operation request content type 'POST' does not exist, Reason: The path was found, but there was no 'POST' method found in the spec, Line: ***, Column: ***

ref.) https://swagger.io/docs/specification/describing-responses/
(I have not confirmed yet, but it seems pb33f/libopenapi does not support the syntax.)

@h6ah4i Thank you for yor report!
Are you talking about the same structure as this one? ( get and put methods )
https://github.com/k1LoW/runn/blob/583c63ae55f0592e9da91f8c3af6a0d49692bde4/http_validator_test.go#L47-L74

Are you talking about the same structure as this one? ( get and put methods )

It might be something different from the current test code. I'll create a sample code to reproduce the issue.

I'll create a sample code to reproduce the issue.

@h6ah4i 🙏 Thank you!!

@k1LoW
I have managed to create a minimal test code to reproduce this issue. It seems reusing the same OpenAPI validator object and nullable are related to the issue, and declaring multiple methods on the same path is not required. Could you take a look at the following code? Thank you.
https://github.com/k1LoW/runn/commit/c0c7714a3cc2ed683bd05ef9b9c5828a30dfcc4d

@h6ah4i Thank you!!

Fixed to have a validator for each HTTP runner (v0.105.2) and added the following tests.
https://github.com/k1LoW/runn/blob/0f97e31a40c46d8977ce07d58f733996a7965f7b/http_validator_test.go#L762-L801

@k1LoW Thank you so much! I have confirmed that v0.105.2 resolved all OpenAPI validation errors in my setup :tada:


Revert "StatusInfo 0.3.10"

Reverts Roll20/roll20-api-scripts#715
The sheet.json caused an error in the server. It needs to be check to ensure it is valid.

@RobinKuiper
Fyi, Robin that I had to revert this API script due to an issue with the json not validating.


Dataset Download Issue: No train.json.gz and val.json.gz files

Habitat-Sim version: 0.3.1
I am trying to reproduce the results of a research paper, and trying to download the dataset required, using the following line:
python -m habitat_sim.utils.datasets_download --username <api-token-id> --password <api-token-secret> --uids hm3d
After downloading, the data is not in the required directory format. Specifically, the train/ and val/ folders are like this:
scene-dataset/hm3d/
  val/
    ....
    00847-bCPU9suPUw9/
    00898-8CRYizAb6yd/
    hm3d_annotated_val_basis.scene_dataset_config.json

same for train/
According to the description and what I've read so far, I was expecting something like this:
val/
    content/
        ...
        00847-bCPU9suPUw9/
        00898-8CRYizAb6yd/

    val.json.gz (This is missing completely! Likewise for train.json.gz)

Is there something wrong, or am I downloading the wrong thing?
Apologies if this is trivial, I'm new to habitat.
Thanks in advance!

Found the answer!
The train/val/minival datasets only contain the glbs and semantic information, and aren't supposed to have anything else.
For the expected files, I had to ** download the Objectnav dataset** from this link
This contains files like val.json.gz and the required directories which were needed for the paper I was trying to reproduce.
Seems like a trivial case, but the paper didn't specify the required downloads :(


⚠ Bofrost.es has degraded performance

In 1725cbd, Bofrost.es (https://www.bofrost.es) experienced degraded performance:

HTTP code: 200
Response time: 1605 ms

Resolved: Bofrost.es performance has improved in 831faf4 after 6 minutes.


Fix crash when no body is passed to Client#req

Well, I noticed that a nil pointer panic is caused under some circumstances when Client#req is called with body as nil.
This PR should fix that problem.
Also, in order of the changes I've removed the nil check from the request inside the non-auth retry condition, because retryBuf is always nil when body was nil initially.
Additionally, I've added the .vscode/ directory to the gitignore, just for convenience when working with VSC.

thanks.


Add an ability to modify pydantic schema configuration

We should probably use the following syntax:
schema(MySchema).had(arbitrary_types_allowed=True)

Along with configurations, we should probably add an ability to edit docstrings

Hey, @zmievsa, I took the task in work


Support sending multiple images for new issues.

Update IssueApiClient to send multiple screenshots for new issues.
Update report bug page to allow user to add multiple images.
Develop a way to show all the selected images efficiently.

/assign


Select-combobox prevents listbox from receiving focus

Current behavior
When pressing the Tab key is not possible to focus on the Listbox following the DOM tree when there are multiple focusable elements.
Steps to reproduce the bug

Open sandbox: https://codesandbox.io/s/dawn-water-p09f2u?file=/src/select-combobox.tsx
Open the Select-combobox.
Press Tab and the Foo button should be focused.
Press Tab again and the Bar button should be focused.
Pressing Tab again and the Apply button is getting the focus instead of the Listbox.

See the video for the example
Expected behavior
I should be able to focus on the Listbox following the DOM tree.
Workaround
https://github.com/ariakit/ariakit/issues/1817#issuecomment-1232391781
Possible solutions
No response

That's expected since the listbox element is not tabbable. And focusing on any item would immediately move focus to the combobox input, preventing users from reaching the Apply button.
I noticed you added tabIndex={0} to the listbox. That's part of the solution I'd propose. The other thing is adding an onKeyDown handler:
<ComboboxList
  state={combobox}
  tabIndex={0}
  onKeyDown={(event) => {
    if (event.currentTarget !== event.target) return;
    if (event.key === "ArrowDown") {
      select.move(select.next());
    } else if (event.key === "ArrowUp") {
      select.move(select.previous());
    }
  }}
/>

I'll add the feature label here as we can probably implement that onKeyDown on the library.

Yup, that worked, thanks again 😄.
Another thing, could we make the last selected item focused when the list gets focused?
Currently, I'm using the following snippet to achieve this result:
onFocus={(): void => {
    // Ensures whenever the list is focused, the last selected item is set as
    // the active item. This is necessary because the active item is reset
    // when the list lost focus.
    if (select.activeId === undefined || select.activeId === null) {
        const lastSelected = select.items.find(
            item => item.value === (select.value as string[]).slice(-1)[0],
        );

        select.setActiveId(lastSelected?.id);
        select.move(lastSelected?.id);
    }
}}

It would be nice if this logic was dealt with by the ariakit/select itself. I noticed that with this workaround solves both problems – I don't even need the keydown listener.
Am I missing something here?


Archive client staging

Description of Change
I've updated ArchiveClient and ArchiveModule with functions to obtain archive information from query values accepted by the Archive API (https://www.crashplan.com/apidocviewer/#Archive)
User-facing functions are;

sdk.archive.get_by_archive_guid
sdk.archive.get_by_device_guid
sdk.archive.get_by_user_uid
sdk.archive.get_by_store_point_id
sdk.archive.get_by_destination_guid
sdk.archive.get_by_plan_uid
sdk.archive.get_by_user_uid_list

For updates to ArchiveClient, there were some considerations;

Can't specify an archiveGuid value through parameters
Query values are numbers except the list of userUid values, which are strings.

Because of the above, the following methods have been added;

archive_client.get_single_archive

Queries a single archiveGuid

archive_client.get_archives_from_value

Handles the vast majority of query values, and sets params dynamically from id_type.

archive_client.get_archives_from_user_uid_list

Handles the comma-separated list of userUid strings

Testing Procedure
Test have been written against the 3 new methods in ArchiveClient. Each test provide it's own parameters.

I didn't do 99% of this work, so I approve this PR (but can't actually approve it)

@DiscoRiver would you mind changing your tests to all use assert_called_once_with (vs assert_called_with)?
Otherwise this looks good to me.

LGTM


Security?

I had considered doing something like this as well -- but stopped when I realized that the RethinkDB is entirely exposed when creating an app like this.  I couldn't think of a good way to lock down access to the database from people who wanted to insert / update information to their hearts content.
What are your thoughts on security?

I think this is where @mikemintz other library rethinkdb-websocket-server comes in place, you should maybe look at the example app. As far as I understood, the websocket server forwards requests to RethinkDB, being able to validate posted data (check if userId of document corresponds to the auth tokens userId) and filter get data (filter by userId of documents).
Look at queryWhitelist within rethinkdb-websocket-server. I've found the syntax to be a bit confusing, but the idea of the whole system is fantastic!
options.queryWhitelist = [
  // r.table('turtles').filter({herdId: curHerdId})
  RQ(
    RQ.FILTER(
      RQ.TABLE("turtles"),
      {"herdId": RQ.ref('herdId')}
    )
  ).opt("db", RQ.DB("test"))
  .validate(function(refs, session) {
    return session.curHerdId === refs.herdId;
  }),

  // r.table('turtles').insert({herdId: 'alpha-squadron', name: 'Speedy'})
  RQ(
    RQ.INSERT(
      RQ.TABLE("turtles"),
      {
        "herdId": RQ.ref('herdId'),
        "name": function(actual, refs, session) {
          return typeof actual === 'string' && actual.trim();
        },
      }
    )
  ).opt("db", RQ.DB("test"))
  .validate(function(refs) {
    var herdId = refs.herdId;
    if (typeof herdId !== 'string') return false;
    var validHerdQuery = r.table('herds').get(herdId).ne(null);
    return runQuery(validHerdQuery);
  }),
];

@bkniffler is exactly right. In production, all incoming queries will validated for security.
From https://github.com/mikemintz/rethinkdb-websocket-server

As you are developing, incoming queries that don't validate against the
whitelist will be logged to console in a format that you can copy and paste
directly into your JavaScript source file. For dynamic queries, you'll likely
want to generalize the pattern using function(actual, refs, session) terms,
RQ.ref() terms, and the .validate() method.

There may be other approaches to securing queries we can look into, as proposed in https://github.com/mikemintz/rethinkdb-websocket-server/issues/1


fix: added missing comma

@tjdevries @pbnj

close in favour of #386 which came in shortly earlier


Transaction record has been changed by other transactions

Bug Report
Briefly describe the bug
Hey, l have version 0.4.0 installed and servers print this error during merge:
2024.06.05 07:30:07.301218 [ 1462 ] {} <Error> virtual void DB::CnchMergeMutateThread::runImpl(): Code: 11003, e.displayText() = DB::Exception: Transaction<PHONE_NUMBER>62915843 commit failed because txn record has been changed by other transactions SQLSTATE: HY000, Stack trace (when copying this message, always include the lines below):

0. Poco::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x2747d4b2 in /opt/byconity/bin/clickhouse
1. DB::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, bool) @ 0x10959fe0 in /opt/byconity/bin/clickhouse
2. DB::CnchServerTransaction::commit() @ 0x2001829c in /opt/byconity/bin/clickhouse
3. DB::CnchServerTransaction::commitV2() @ 0x20014ecb in /opt/byconity/bin/clickhouse
4. DB::CnchMergeMutateThread::removeLockedPartition(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) @ 0x201af22b in /opt/byconity/bin/clickhouse
5. DB::CnchMergeMutateThread::trySelectPartsToMerge(std::__1::shared_ptr<DB::IStorage>&, DB::StorageCnchMergeTree&, DB::MergeSelectionMetrics&) @ 0x201aaa45 in /opt/byconity/bin/clickhouse
6. DB::CnchMergeMutateThread::tryMergeParts(std::__1::shared_ptr<DB::IStorage>&, DB::StorageCnchMergeTree&) @ 0x201a9ed8 in /opt/byconity/bin/clickhouse
7. DB::CnchMergeMutateThread::runImpl() @ 0x201a6c74 in /opt/byconity/bin/clickhouse
2024.06.05 07:30:07.301821 [ 575 ] {} <Error> virtual void DB::CnchMergeMutateThread::runImpl(): Code: 11003, e.displayText() = DB::Exception: Transaction<PHONE_NUMBER>52676229 commit failed because txn record has been changed by other transactions SQLSTATE: HY000, Stack trace (when copying this message, always include the lines below):
8. DB::ICnchBGThread::run() @ 0x2029b2b1 in /opt/byconity/bin/clickhouse

Is this something to be concerned about or just a race condition?
The result you expected
No errors
How to Reproduce
We have CnchMergeTree tables and just letting the server run
Version
0.4.0

Hi, can you provide more details about the reproduce step? And does this exception keep popping up?

hi just want to confirm the version, is it 0.4.0 or 0.4.1?

Hi @zeromem, I also tested with v0.4.1 to make sure and it gives me the same error.
@wuwenw I do nothing special to replicate, just create around 3K CnchMergeTree tables. They dont even have data in them. And then I observe after a while these errors start to occur.

Looking through fdb metrics, I see the errors coincides with transaction conflict spikes:

Started observing this as well:
2024.06.10 09:35:49.713856 [ 107 ] {} <Error> bool DB::CnchServerManager::renewLease(): Code: 1031, e.displayText() = DB::Exception: FDB error : Operation aborted because the transaction timed out SQLSTATE: HY000, Stack trace (when copying this message, always include the lines below):

0. Poco::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x2721e252 in /opt/byconity/bin/clickhouse
1. DB::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, bool) @ 0x10776780 in /opt/byconity/bin/clickhouse
2. DB::Catalog::MetastoreFDBImpl::check_fdb_op(int const&) @ 0x200b5aad in /opt/byconity/bin/clickhouse
3. DB::Catalog::MetastoreFDBImpl::batchWrite(DB::Catalog::BatchCommitRequest const&, DB::Catalog::BatchCommitResponse&) @ 0x200b6f7d in /opt/byconity/bin/clickhouse
4. DB::Catalog::MetastoreProxy::updateTopologyMeta(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) @ 0x200dc9c2 in /opt/byconity/bin/clickhouse
5. void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<DB::Catalog::Catalog::updateTopologies(std::__1::list<DB::CnchServerTopology, std::__1::allocator<DB::CnchServerTopology> > const&)::$_142, void ()> >(std::__1::__function::__policy_storage const*) @ 0x2008897f in /opt/byconity/bin/clickhouse
6. DB::Catalog::Catalog::updateTopologies(std::__1::list<DB::CnchServerTopology, std::__1::allocator<DB::CnchServerTopology> > const&) @ 0x2003e9aa in /opt/byconity/bin/clickhouse
7. DB::CnchServerManager::renewLease() @ 0x20bd0e93 in /opt/byconity/bin/clickhouse
8. DB::CnchServerManager::CnchServerManager(std::__1::shared_ptr<DB::Context const>, Poco::Util::AbstractConfiguration const&)::$_2::operator()(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<bool ()>, unsigned long, std::__1::atomic<unsigned long>&, DB::BackgroundSchedulePoolTaskHolder&) const @ 0x20bd24f6 in /opt/byconity/bin/clickhouse
9. void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<DB::CnchServerManager::CnchServerManager(std::__1::shared_ptr<DB::Context const>, Poco::Util::AbstractConfiguration const&)::$_4, void ()> >(std::__1::__function::__policy_storage const*) @ 0x20bd2b16 in /opt/byconity/bin/clickhouse
10. DB::BackgroundSchedulePoolTaskInfo::execute() @ 0x2053e8be in /opt/byconity/bin/clickhouse
11. DB::BackgroundSchedulePool::threadFunction() @ 0x20540c67 in /opt/byconity/bin/clickhouse
12. void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::BackgroundSchedulePool::BackgroundSchedulePool(unsigned long, unsigned long, char const*, std::__1::shared_ptr<DB::CpuSet>)::$_1>(DB::BackgroundSchedulePool::BackgroundSchedulePool(unsigned long, unsigned long, char const*, std::__1::shared_ptr<DB::CpuSet>)::$_1&&)::'lambda'(), void ()> >(std::__1::__function::__policy_storage const*) @ 0x20541477 in /opt/byconity/bin/clickhouse
13. ThreadPoolImpl<std::__1::thread>::worker(std::__1::__list_iterator<std::__1::thread, void*>) @ 0x107b2cc0 in /opt/byconity/bin/clickhouse
14. void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()> >(void*) @ 0x107b713a in /opt/byconity/bin/clickhouse
15. start_thread @ 0x7ea7 in /lib/x86_64-linux-gnu/libpthread-2.31.so
16. clone @ 0xfba6f in /lib/x86_64-linux-gnu/libc-2.31.so
 (version **<IP_ADDRESS>)**

Started observing this as well:
2024.06.10 09:35:49.713856 [ 107 ] {} <Error> bool DB::CnchServerManager::renewLease(): Code: 1031, e.displayText() = DB::Exception: FDB error : Operation aborted because the transaction timed out SQLSTATE: HY000, Stack trace (when copying this message, always include the lines below):

0. Poco::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x2721e252 in /opt/byconity/bin/clickhouse
1. DB::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, bool) @ 0x10776780 in /opt/byconity/bin/clickhouse
2. DB::Catalog::MetastoreFDBImpl::check_fdb_op(int const&) @ 0x200b5aad in /opt/byconity/bin/clickhouse
3. DB::Catalog::MetastoreFDBImpl::batchWrite(DB::Catalog::BatchCommitRequest const&, DB::Catalog::BatchCommitResponse&) @ 0x200b6f7d in /opt/byconity/bin/clickhouse
4. DB::Catalog::MetastoreProxy::updateTopologyMeta(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) @ 0x200dc9c2 in /opt/byconity/bin/clickhouse
5. void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<DB::Catalog::Catalog::updateTopologies(std::__1::list<DB::CnchServerTopology, std::__1::allocator<DB::CnchServerTopology> > const&)::$_142, void ()> >(std::__1::__function::__policy_storage const*) @ 0x2008897f in /opt/byconity/bin/clickhouse
6. DB::Catalog::Catalog::updateTopologies(std::__1::list<DB::CnchServerTopology, std::__1::allocator<DB::CnchServerTopology> > const&) @ 0x2003e9aa in /opt/byconity/bin/clickhouse
7. DB::CnchServerManager::renewLease() @ 0x20bd0e93 in /opt/byconity/bin/clickhouse
8. DB::CnchServerManager::CnchServerManager(std::__1::shared_ptr<DB::Context const>, Poco::Util::AbstractConfiguration const&)::$_2::operator()(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::function<bool ()>, unsigned long, std::__1::atomic<unsigned long>&, DB::BackgroundSchedulePoolTaskHolder&) const @ 0x20bd24f6 in /opt/byconity/bin/clickhouse
9. void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<DB::CnchServerManager::CnchServerManager(std::__1::shared_ptr<DB::Context const>, Poco::Util::AbstractConfiguration const&)::$_4, void ()> >(std::__1::__function::__policy_storage const*) @ 0x20bd2b16 in /opt/byconity/bin/clickhouse
10. DB::BackgroundSchedulePoolTaskInfo::execute() @ 0x2053e8be in /opt/byconity/bin/clickhouse
11. DB::BackgroundSchedulePool::threadFunction() @ 0x20540c67 in /opt/byconity/bin/clickhouse
12. void std::__1::__function::__policy_invoker<void ()>::__call_impl<std::__1::__function::__default_alloc_func<ThreadFromGlobalPool::ThreadFromGlobalPool<DB::BackgroundSchedulePool::BackgroundSchedulePool(unsigned long, unsigned long, char const*, std::__1::shared_ptr<DB::CpuSet>)::$_1>(DB::BackgroundSchedulePool::BackgroundSchedulePool(unsigned long, unsigned long, char const*, std::__1::shared_ptr<DB::CpuSet>)::$_1&&)::'lambda'(), void ()> >(std::__1::__function::__policy_storage const*) @ 0x20541477 in /opt/byconity/bin/clickhouse
13. ThreadPoolImpl<std::__1::thread>::worker(std::__1::__list_iterator<std::__1::thread, void*>) @ 0x107b2cc0 in /opt/byconity/bin/clickhouse
14. void* std::__1::__thread_proxy<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct> >, void ThreadPoolImpl<std::__1::thread>::scheduleImpl<void>(std::__1::function<void ()>, int, std::__1::optional<unsigned long>)::'lambda0'()> >(void*) @ 0x107b713a in /opt/byconity/bin/clickhouse
15. start_thread @ 0x7ea7 in /lib/x86_64-linux-gnu/libpthread-2.31.so
16. clone @ 0xfba6f in /lib/x86_64-linux-gnu/libc-2.31.so
 (version **<IP_ADDRESS>)**

hi @ozcelgozde. It seems like the status of fdb is abnormal. Could you please check the log of fdb and find what happened in fdb?

It looks healthy, which logs do you want me to check?
One thing I notice KV size keeps climbing, started with 80MB. Now its constantly climbing:

@ozcelgozde The log of fdb itself, at the time ByConity issues exceptions of "FDB error : Operation aborted because the transaction timed out".
For kv size climbing, is ByConity keeping writing data?

Theres currently no ingestion enabled, so just metadata operations like background gc firing or merge mutate. Let me try to get the logs

I see trace logs in the format of
/var/log/fdb-trace-logs/trace.<IP_ADDRESS>.4501.1717850974.XLIQLR.1.58.xml

and they dont report anything out of ordinary. /var/fdb/logs directory is empty.
Can you help with enabling more human readable logs if theres a method you use?

/var/log/fdb-trace-logs/trace.<IP_ADDRESS>.4501.1717850974.XLIQLR.1.58.xml

The xml files under /var/log/fdb-trace-logs are just logs of fdb. They are in specific format so you have to refer to fdb document to understand them: https://github.com/apple/foundationdb/wiki/Understanding-FoundationDB-Log-Files.
BTW, are exceptions "FDB error : Operation aborted because the transaction timed out" still issued by ByConity right now?

Its really rare compared to first error I reported.
2024.06.05 07:30:07.301218 [ 1462 ] {} <Error> virtual void DB::CnchMergeMutateThread::runImpl(): Code: 11003, e.displayText() = DB::Exception: Transaction<PHONE_NUMBER>62915843 commit failed because txn record has been changed by other transactions SQLSTATE: HY000, Stack trace (when copying this message, always include the lines below):

0. Poco::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int) @ 0x2747d4b2 in /opt/byconity/bin/clickhouse
1. DB::Exception::Exception(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&, int, bool) @ 0x10959fe0 in /opt/byconity/bin/clickhouse
2. DB::CnchServerTransaction::commit() @ 0x2001829c in /opt/byconity/bin/clickhouse
3. DB::CnchServerTransaction::commitV2() @ 0x20014ecb in /opt/byconity/bin/clickhouse
4. DB::CnchMergeMutateThread::removeLockedPartition(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > > const&) @ 0x201af22b in /opt/byconity/bin/clickhouse
5. DB::CnchMergeMutateThread::trySelectPartsToMerge(std::__1::shared_ptr<DB::IStorage>&, DB::StorageCnchMergeTree&, DB::MergeSelectionMetrics&) @ 0x201aaa45 in /opt/byconity/bin/clickhouse
6. DB::CnchMergeMutateThread::tryMergeParts(std::__1::shared_ptr<DB::IStorage>&, DB::StorageCnchMergeTree&) @ 0x201a9ed8 in /opt/byconity/bin/clickhouse
7. DB::CnchMergeMutateThread::runImpl() @ 0x201a6c74 in /opt/byconity/bin/clickhouse
2024.06.05 07:30:07.301821 [ 575 ] {} <Error> virtual void DB::CnchMergeMutateThread::runImpl(): Code: 11003, e.displayText() = DB::Exception: Transaction<PHONE_NUMBER>52676229 commit failed because txn record has been changed by other transactions SQLSTATE: HY000, Stack trace (when copying this message, always include the lines below):
8. DB::ICnchBGThread::run() @ 0x2029b2b1 in /opt/byconity/bin/clickhouse

Also no ingestion is enabled to cluster but FDB KV usage keeps climbing unreasonably. Started with 70MB now its:

@ozcelgozde hi, Transaction<PHONE_NUMBER>62915843 commit failed because txn record has been changed by other transactions could you try to search the txn id<PHONE_NUMBER>62915843 in all servers and workers? the txn is created by mergemutate thread and so it should be committed by mergemutate thread. but now seems some other thread break this, or  the stat of kv entry is broken (that's why we want to check fdb state)

2024.06.05 07:30:07

so does the exception only occur at the time of 2024.06.05 07:30:07? Does it appear again in recent days?

2024.06.05 07:30:07

so does the exception only occur at the time of 2024.06.05 07:30:07? Does it appear again in recent days?

No it happens all the time

2024.06.05 07:30:07

so does the exception only occur at the time of 2024.06.05 07:30:07? Does it appear again in recent days?

No it happens all the time, every hour or so thousands of them

@ozcelgozde does the same exception still occur for now? If so, could you do as what @zeromem has presented?

hi, I am operation from ByConity team. I noticed that you have asked some questions about ByConity. I would like to ask about the progress of Edge Delta. Has it put into production on ByConity? Thank you.

@ozcelgozde Do you still have this issue?

yeah @kevinthfang it was due to garbage collector not catching up to transition count, increasing frequency solved it thanks

yeah @kevinthfang it was due to garbage collector not catching up to transition count, increasing frequency solved it thanks

hi @ozcelgozde, would you like to share the frequency parameter you adjusted?

@smmsmm1988
I modified  TXN_GC interval: 600000 -> 60000 from below config and also we implemented a more aggressive txn gc mechanism like in this PR
daemon_jobs:
    job:
      - name: PART_GC
        interval: 10000
      - name: PART_MERGE
        interval: 10000
      - name: CONSUMER
        interval: 10000
      - name: GLOBAL_GC
        interval: 5000
      - name: TXN_GC
        interval: 600000


Nuget package status

Are there any plans to update the public Nuget package available here?
https://www.nuget.org/packages/ExcelDataReader
It was last released in May 2014, and there's been some great work in this repo that isn't available in the public package.

There are new official prerelease packages on Nuget now:
https://www.nuget.org/packages/ExcelDataReader/3.0.0-develop00019
https://www.nuget.org/packages/ExcelDataReader.DataSet/3.0.0-develop00019
Also available to download from here:
https://github.com/ExcelDataReader/ExcelDataReader/releases/tag/v3.0.0-develop00019
Not sure when there'll be a stable release, but hopefully soon. Still reviewing open issues if there's a need to make further breaking changes while we have the chance.


Images are added succesfully.

Issue no. #544
@mdazfar2 sir, All the possible changes are done.
Changes done are
Before:

After:

All the images are changing on hover
https://github.com/user-attachments/assets/5012340e-5fe6-4b02-bab1-4a93ae61f322
A small bug corrected where the text was misspelled
Before:

After:

Kindly review once, and let me know if any changes are required?
Can you please mark it under level 3?

hey @NIKITABARANWAL890 please resolve your conflict and update sync fork

hey @NIKITABARANWAL890 please resolve your conflict and update sync fork

Done


Proxy doesn't accept new connections

Hey, two or three minutes after running the last version of proxy on Windows Server 2008 R2, I keep getting these errors in a period of 30 secs:
Fatal read error on pipe transport protocol: <asyncio.streams.StreamReaderProtocol object at 0x0000000008A5FC50> transport: <_ProactorSocketTransport fd=1528> Traceback (most recent call last):   File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\asynci o\proactor_events.py", line 255, in _loop_reading     data = fut.result()   File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\asynci o\windows_events.py", line 732, in _poll     value = callback(transferred, key, ov)   File "C:\Users\Administrator\AppData\Local\Programs\Python\Python37\lib\asynci o\windows_events.py", line 428, in finish_recv     return ov.getresult() OSError: [WinError 121] The semaphore timeout period has expired Stats for 06.12.2018 06:56:09 tg: 4092 connects (112 current), 1082.81 MB, 139604 msgs
Then, new clients can't connect to the proxy, but the old ones will remain connected. However there is a chance for them to disconnect after minutes. Thanks for the stuff and support.

Have you tried python3.6? I think there was a problem with python 3.7 in windows.


added androidX support

added androidX support
this might be a breaking change.

Thanks @charafau ! all good !


svt-av1 -enc-mode is deprecated

Will fail, assuming awcy actually manages to compile it.

Now we have robust set of SVT-AV1,
https://github.com/xiph/rd_tool/commit/55d1812b4cd466711533f6aae5335872a392b95e
And they are also tested on a nightly basis.


Ensure array items are returned in the correct order

This pull request fixes #36 by using the DataSnapshot.forEach method to build up an array before passing it to React. This ensures that arrays are sent to React in the order which the query specified.

Also, quick note: it's unclear how to package up a forked npm distribution for use in our package.json files.
I ended up having to commit the dist directory (f8b47c6b1d3d33dfe337c9b2eb700526cd6b642c) but I assume there's a better way.

Hey @morgante - I don't think this actually fixes the problem. In your code, data will be equivalent to dataSnapshot.val() since they are both un-ordered JavaScript objects with the same exact keys. So the ordering for push IDs will still not be correct due to the way object iteration works in JavaScript. In the array case, we actually need to pass through the snapshot and assign indices for each item in the DataSnapshot.forEach() loop.
As for the the npm issue, this is intentional. We don't really want people working off of a non-released branch as that leads to a huge support headache for us. We only support official releases. I wouldn't even suggest using the master branch as it has not been vetted for production.

@jwngr I'm not sure I follow. We build data iteratively using the keys within the DataSnapshot.forEach loop, which ensures that the object is built in the correct order (and then converted to an array with the correct order). We have tested this with our data and it functions as expected (ie. the array is built with the correct order on this branch, but not on master).
It's unfortunate that you don't support people working on a non-released branch. I definitely understand why you would not want everyone doing so, but as of now this is blocking a release for us.

Sorry that you are blocked on this. In your fork, you can add the dist/ files in a commit and then just do npm install <githubname>/<reponame> on your repo. You should be able to use that until we get a new official release out. See how our automated bot does this in the commits from November 6th.
What does your data look like that is working? If we have an object like this:
{
  "-Ja923adg90": "foo",
  "-Ja92820df0": "bar",
  ...
}

Then converting that to an object via dataSnapshot.val() will result in the same exact thing as data in your code. The problem is that adding items to a JavaScript object in order does not actually order them. Take this for example;
var obj = {};
obj.b = 1;
obj.a = 2

Object.keys(obj).forEach(function(item){
  console.log(item);
});

While this might print out b and then a on your browser, that ordering is not guaranteed. That is the whole point of DataSnapshot.forEach(). It handles looping through things in the proper order for you. Converting that back into an unordered object loses that ordering. See this Stack Overflow post for more details.

Interesting. I can see how we could use DataSnapshot.forEach for arrays (that would just be a slight tweak to my code), but what is your plan for using it with objects?

Everything in Firebase is technically an object. Arrays are just objects with keys like 0, 1, etc. But people want lists of items which were added via push() (and thus have these long push IDs as noted in my last comment) to show up as actual JavaScript arrays on the client. That is the point of the bindAsArray() method. We need to handle coercing those push IDs into an actual array with numeric indices. The push ID will be stored somewhere else, as noted in #37.

So, to answer your question, the forEach() is not needed for bindAsObject(), but it is needed for object-like values which users call bindAsArray() on.

Okay, that clarifies things further—I thought we had to support ordering for both bindings, but we only have to do it for bindAsArray, right?
If that's true, I'd be happy to rewrite this PR quickly to actually build up an array from within the forEach.

Yup, just for bindAsArray(). Would love it if you could take another crack at it.

This was superseded by #43. I went with a more complex and complete fix for this issue. Thanks again for taking a crack at this.

This is not working correctly when using orderByChild(). I can see that you only have tests for orderByValue.

I just added tests for orderByChild() and orderByKey() with PR #59. Everything seems to be passing and I can't think of anything else to test. Would you be able to provide a failing test case that I can debug?
It's odd that previousChildKey is undefined. How are you seeing that? it should only every be a string or null, as noted in the Firebase API docs for on() (look at the "Child Added" section). If you are seeing undefined, then there is probably a bug in the Firebase client, which would be good to track down.
What versions of ReactFire and Firebase are you using? Does upgrading them to the latest fix the problem at all?


Usage without committing react_bundle.js to git

Is it possible to use this gem without committing react_bundle.js and react_bundle.css to git?

Yes:) We have react_bundle.js and react_bundle.css in .gitignore in all projects. This require additional setup on production - need to execute npm run build before precompiling assets. We are doing it using capistrano since it's our default but there are different solutions
Take a look here: https://github.com/netguru/react_webpack_rails/blob/master/docs/deployment.md for heroku example and more.

But won't that fail locally since react_bundle.js and react_bundle.css don't exist locally since developers are only running the webpack dev server?
Actually they work just fine in development with an empty file.

Would it be okay to suggest that approach in the README? That way developers won't need to run the webpack command locally.

You mean creating empty files and adding them to .gitignore?
I think generator is now creating empty react_bundle.js. So the only problem you can have is when you share project and the empty files won't be there. We can try to figure out a way so that npm run start-hot-dev will create them if missing. For now you can use .sample files and add step to bin/setup that will create them.


fix the git index.lock file conflict error for concurrent jgit add / rm operations

This fix NOS-730 AND NCL-2736, which reports the git working tree needing a locked index can't run concurrently, so adding the synchronized block will be resolved, I suppose the race should not be very intense, so synchronized should be enough.

@yma88 I think we do not need  to format all code in GitManager here, which makes it hard to see what is the real change in github review page.
And please also give another PR for this in "indy-1.1.x" branch.


Please provide a valid game server ID.

I write a correct game server id , but get error : Please provide a valid game server ID.
it's game server that i write on Game server id field :<PHONE_NUMBER>0413187

if (!string.IsNullOrEmpty(txtBoxGameServerID.Text) &&
!int.TryParse(txtBoxGameServerID.Text, out var gameServerID))
I think it should be int.TryParse() (not ! ) , right?


agents: Fix agents package API

A few improvements to the agents package include:

[ ] Executor -> *Executor
[ ] Deprecate Initialize
[ ] Rename CreationOption+CreationOptions to Option+Options
[ ] Move agent-specific types/implementations to subpackages

I would appreciate it if this PR could be assigned to me.

Hi, I would like to ask what does "Rename CreationOption+CreationOptions to Option+Options” mean?
Does it means changing CreationOption type into Option?
For example:
// Changing this
type CreationOption func(*CreationOptions)
// into this
type Option func(*Options)

Hi, I would like to ask what does "Rename CreationOption+CreationOptions to Option+Options” mean? Does it means changing CreationOption type into Option? For example:
// Changing this
type CreationOption func(*CreationOptions)
// into this
type Option func(*Options)

Yes that's what I meant.


build(releaserc.json and package.json): deprecated gulp release notification plugin in favour of semantic release notify plugin

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


fix syntax error in README.md

There is a missing comma in the Configuration section of the README.md
Description

-content_type = "quotes"
+content_type = "quotes",

Linked Issues
Additional context

thanks :)


Unable to run Demo

Hello!
I'm attempting to run the demo for this project locally but have been having trouble with the dependencies. I believe there are conflicting versions of react-dom and react in use. The specific error is:
react-dom.development.js:833 Uncaught TypeError: Cannot read property 'ReactCurrentOwner' of undefined

reproduction steps:
git clone git@github.com:LoicMahieu/react-styled-flexboxgrid.git
cd react-styled-flexboxgrid
npm install
npm install styled-components@2
npm install<EMAIL_ADDRESS>npm install<EMAIL_ADDRESS>npm start

Go to http://localhost:8080
I've taken the dependencies listed above from the README.md. If I should be using a different set of peer dependencies please let me know!

Should be fixed now. Re-open if you encounter the problem again.


fix statistics rest permission evaluator to allow only administrators when access is restricted to this role

References

Fixes #1426
Related to angular PR 1479

Description
UsageReportRestPermissionEvaluatorPlugin has been updated. If usage-statistics.authorization.admin.usage property is set to 'true', user can access statistics via REST only if has admin privileges.
Instructions for Reviewers
List of changes in this PR:

UsageReportRestPermissionEvaluatorPlugin updated to check usage-statistics.authorization.admin.usage value while evaluating permissions
Added test covering above change
Change type of exceptions thrown in StatisticsRestRepository when dso is not found
ViewViewUsageStatisticsFeature renamed to CanViewUsageStatisticsFeature

Include guidance for how to test or review your PR.
This is the rest part for angular PR 1479
Checklist

[X] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & integration tests). Exceptions may be made if previously agreed upon.
[X] My PR passes Checkstyle validation based on the Code Style Guide.
[X] My PR includes Javadoc for all new (or modified) public methods and classes. It also includes Javadoc for large or complex private methods.
[X] My PR passes all tests and includes new/updated Unit or Integration Tests based on the Code Testing Guide.
[X] If my PR includes new, third-party dependencies (in any pom.xml), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
[X] If my PR modifies the REST API, I've linked to the REST Contract page (or open PR) related to this change.

Hi @tdonohue, thank you for your feedback, i solved all request, could you please check again?


fix #924 #925

Coverage remained the same at 27.012% when pulling 92136e396583fee962f50c63f17a5201c11cb60a on yhua123:dev into 3085d24babd902665bc693c4d5b8e9bf7895581b on vmware:dev.

Coverage remained the same at 27.012% when pulling f31fe22d51c0dd1c781aec410ec94efff6430460 on yhua123:dev into 3085d24babd902665bc693c4d5b8e9bf7895581b on vmware:dev.

Coverage remained the same at 27.012% when pulling f31fe22d51c0dd1c781aec410ec94efff6430460 on yhua123:dev into 3085d24babd902665bc693c4d5b8e9bf7895581b on vmware:dev.

Coverage remained the same at 27.012% when pulling 271787dd94cf504fdd9bc624101ccd5a010c3d25 on yhua123:dev into 3085d24babd902665bc693c4d5b8e9bf7895581b on vmware:dev.

Coverage remained the same at 27.012% when pulling 271787dd94cf504fdd9bc624101ccd5a010c3d25 on yhua123:dev into 3085d24babd902665bc693c4d5b8e9bf7895581b on vmware:dev.


Feature/atom keys

Access map keys with indifferent access as seen in Rails' ActiveSupport.
Closes #9

This looks very elegant! Unfortunately it errors when assigning multiple times :)
iex(1)> ctx = Liquex.Context.new(%{})
%Liquex.Context{
  cycles: %{},
  errors: [],
  filter_module: Liquex.Filter,
  private: %{},
  render_module: nil,
  variables: %{}
}
iex(2)> ctx = Liquex.Context.assign(ctx, "test", "value")
%Liquex.Context{
  cycles: %{},
  errors: [],
  filter_module: Liquex.Filter,
  private: %{},
  render_module: nil,
  variables: %{"test" => "value"}
}
iex(3)> ctx = Liquex.Context.assign(ctx, "another", "value")
** (ArgumentError) argument error
    :erlang.binary_to_existing_atom("another", :utf8)
    (liquex 0.4.2) lib/liquex/indifferent.ex:63: Liquex.Indifferent.get_key/2
    (liquex 0.4.2) lib/liquex/indifferent.ex:76: Liquex.Indifferent.get_key!/3
    (liquex 0.4.2) lib/liquex/indifferent.ex:32: Liquex.Indifferent.put/3
    (liquex 0.4.2) lib/liquex/context.ex:48: Liquex.Context.assign/3
iex(3)>

Ah yes.  When I was cleaning up the code for release, I accidentally dropped the rescue block from get_key/2.  I will have that fixed.
Thank you for looking into it and finding the issue.


init database?

Hi just trying to refactor a project using sequelize-typescript. the project has model defined in ts already such as the following:
import { BelongsToMany, Column, CreatedAt, DataType, HasMany, Model, PrimaryKey, Scopes, Table, UpdatedAt } from "sequelize-typescript";
import { AbstractLookupTableModel } from "./abstractLookupTableModel";
import { company } from "./company";
import { company_reference } from './company_reference';
import { company_state_rel } from "./company_state_rel";

@Table
export class state_code extends AbstractLookupTableModel<state_code> {

  @PrimaryKey
  @Column(DataType.TEXT)
  public state_id!: string;

  @Column(DataType.TEXT)
  public state_name!: string;

  @Column(DataType.TEXT)
  public country_code!: string;

  @BelongsToMany(() => company, () => company_state_rel)
  public companys?: company[];

  @HasMany(() => company_reference)
  public companyReferences!: company_reference[];

}

and I've add model as the following:
...
export const databaseConnection: Sequelize = new Sequelize({
  database: config.database,
  username: config.username,
  password: config.password,
  dialect: config.dialect,
  host: config.host,
  port: config.port,
});

databaseConnection.addModels(
  [
    // base table
    company,
    // detail tables
    company_detail, company_asic_detail, company_asic_detail_businessname, company_office_holder, company_insurance,
    company_bank_detail, company_reference, company_contact, company_project_history, company_project_history_images,
    company_ratings,
    // M-to-N relationships
    company_state_rel, company_trade_skill_rel, company_trade_experience_rel,

    company_trade_context_rel, company_reference_trade_context_rel, user_shortlist_company_rel,
    // 1-to-M relationships
    company_asic_notifications,
    // lookup tables
    state_code, trade_skill_code, trade_experience_code, trade_context_code, insurance_code,
    // user management
    app_user, ca_user, company_access, user_shortlist_detail,
    // job management
    job_run_history]);

databaseConnection.sync({);

however when running sequelize db:migrate I couldn't see the table get created in the database, is there anything wrong?
the package version is as following:
    "sequelize": "^3.17.3",
    "sequelize-cli": "^2.3.1",
    "sequelize-cli-typescript": "^3.2.0-c",
    "sequelize-typescript": "0.6.5",

after testing a couple of times the issue is sometimes happening. I run it again and it works, however after I drop all tables and re-run it again it didn't work...

Hey @iamzifei there are several discussions about migrations and sequelize-typescript https://github.com/RobinBuschmann/sequelize-typescript/issues?utf8=✓&q=migrations
Since I've never used the sequelize integrated implementation migration, for now I can only recommend using https://github.com/db-migrate/node-db-migrate

Closing this in favor of #328


Tests for ETag on /oic/res observation with batch interface

Codecov Report

Merging #380 (60e560b) into main (3b8305a) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #380   +/-   ##
=======================================
  Coverage   65.25%   65.25%
=======================================
  Files          78       78
  Lines        5454     5454
=======================================
  Hits         3559     3559
  Misses       1470     1470
  Partials      425      425


Override document on each request

This would need a change in can-wait:
wait(fn, {
  overrides: {
    document: document
  }
});

https://github.com/donejs/css/issues/30  Will be affected by this change.

Closed by #143


Chuo College of Technology

Institution/School Name
Chuo College of Technology
Instiution/School Website
https://chuoko.jp
Email Users
Please place an x between the square brackets if yes

[x] Students
[x] Academic/Teaching Staff
[x] Other/Support Staff
[ ] Alumni

Education Levels
Please place an x between the square brackets if yes

[ ] Post-graduate research
[ ] Graduate School
[ ] College (University) or Undergraduate School or equivalent
[ ] Community College or equivalent
[x] High School or equivalent
[x] Elementary School or equivalent

Looks like the URL is https://chuoko.ac.jp/ not https://chuoko.jp/


Use dom-input-range instead of internal implementation

We currently use an approach of cloning the textarea element into a hidden div with all of its styles and content, because the browser allows calculating the position of contents in a div but not in a textarea. This approach has been duplicated and adapted in many places:

here
https://github.com/primer/react/blob/a0db832302702b869aa22b0c4049ad9305ef631f/src/drafts/utils/character-coordinates.ts
https://github.com/component/textarea-caret-position/blob/b5db7a7e47dd149c2a66276183c69234e4dabe30/index.js
https://github.com/primer/react/blob/a0db832302702b869aa22b0c4049ad9305ef631f/src/drafts/utils/character-coordinates.ts
internally in github/github

The original implementation of this approach is nearly a decade old at this point and we have better options today. Notably, this approach can be pretty inefficient due to how we create and don't clean up the clones, and due to how often we have to copy the styling. This can be as often as every keystroke. In addition this implementation is missing some bugfixes implemented in the source materials after this was derived.
A few months ago I took this approach and rewrote it with a more modern DOM-like API (inspired by Range). I audited all the styles we are copying, included all the bug fixes / workarounds from the various diverging implementations, and optimized performance significantly. The clone element is now reused across calls, automatically cleaned up, and only updates when and if necessary (ie, when the user types we don't need to re-clone the styles, we only need to update the text content).
The result is https://github.com/iansan5653/dom-input-range, which exposes the InputRange API as well as the lower-level input-clone-element. I've been using this for several months in https://github.com/iansan5653/github-markdown-a11y-extension and I'm confident in its reliability and accuracy. Migration is easy and comes with significant performance & code quality improvements, so why not make the switch?
Additional changes
dom-input-range uses import type syntax, which the version of TypeScript we are on does not support. Upgrading TypeScript also required upgrading eslint-plugin-github (to update the parser) which required updating eslint.
The latest version of ESLint is not compatible with Node 16.x, so I also updated the devcontainer config to move us on to 20.x. This was an oversight previously anyway since our CI is on v20.
Updating ESLint plugin enabled some rules that are violated in test files. Rather than fix these errors and expand the PR footprint, I've disabled them for now since these are only test files.

I need some time to take a look at this, but I'm curious if dom-input-range supports alternate writing directions or bidi? I vaguely recall that text-expander does but a quick glance at the demos in dom-input-range seems to suggest it doesn't?

I need some time to take a look at this, but I'm curious if dom-input-range supports alternate writing directions or bidi? I vaguely recall that text-expander does but a quick glance at the demos in dom-input-range seems to suggest it doesn't?

Good question, I'm not sure about this. If it needs special handling it's probably something I need to implement that wasn't present in the sources I derived from. I glanced through the code here but I don't see any special handling here either. Maybe it just works automatically?

Do you have some example content I could try out?

In chrome you can right click an input to change the writing mode. Looks like it might need to simply copy over the writing-mode/unicode-bidi computed styles? There may be more to it. I don't recall if text-expander supports it or not but I do recall there being a lot of work around writing directions or maybe it was composition events...

Doesn't look like text-expander does support LTR actually:

I agree this is something we should add but probably a separate issue.

maybe it was composition events

This I do remember. That's a total headache and we've dealt with it several times. That shouldn't be affected by this change though.

Created an issue to track the text direction work upstream:

https://github.com/iansan5653/dom-input-range/issues/2

Couldn't get an integration test PR working but I was able to test this locally (in github/github):
cd /workspaces
git clone https://github.com/github/text-expander-element && cd text-expander-element
git checkout use-dom-input-range
npm run compile
cd ../github
npm link -w @npm-workspaces/primer ../text-expander-element


Não consigo instalar no Windows 11

Conforme a documentação, baixei o .exe do repositório https://github.com/kool-dev/kool/releases
Quando clico no executável para iniciar a instalação, aparece o seguinte erro

Já tentei excluir e baixar o arquivo novamente, já tentei executar como administrador, porém sem sucesso

Not working for me as well, even with Windows 10.
Seems only working using 2.0.0 installer, next versions are corrupted.

Hey @MannyDorelli and @Henriquex25 - sorry for the delay on this report.
Unfortunately we haven't been able to keep up with support for Windows natively - I don't think we currently have community using it - as anytime a problem surfaced around it we always suggested the WSL2 solution - and that is the same I would suggest you guys. With WSL2 folks get about the same Linux, which is how the tool was initially intended to work.
Is there a strong argument in your end on why you want or need to use containers on Windows?

master branch already got the documentation updates, and upcoming soon major release v3 is going to drop the native Windows build.
You can still use Docker for Desktop on Windows, but you have to install kool and run it from a WSL2 terminal - which will communicate with your Docker for Desktop seamlessly.


Cache.fetch never calls completion block when the URL is a file URL

When trying to see if I could get UIImage + Haneke to load an image from a local URL, the completion block never gets called.  It looks like neither the success or failure blocks ever get called from cache.fetch in hnk_getImageFromURL if the URL is a file URL.

I'm seeing the same thing, when creating a unit test and testing a local image file.


Nintendo Switch Pro Controller not working on MacOS

Hi there, I'm unsure if this is a problem with how I've done something, but I've paired my Switch Pro Controller to my iMac and upon attempting to use any button, even in the gamepad tester nothing is recognised, but using games aside from Minecraft and web games can recognise it just fine.

Use USB instead of Bluetooth

It is still not working. My device is listed as a controller and has the green checkmark.

Same here. Tried both USB and bluetooth. The controller connects, shows up on gamepad tester, but Controllable will not recognize it. On either macOS Monterey or Ventura.

I was able to get it working once but am having trouble retracing my steps. The closest I get is getting the right analog stick to move in the split second after it connects, but then it gets stuck in that position until the controller shuts off. All other apps work perfectly, as does the Gamepad Tester website.

I am also having this issue

Also having an issue.  Mac Pro M1 Max running Monterey.  Nintendo Switch Pro Controller connected via Bluetooth.  The mod sees the control in the options screen, but when I run the test interface, no buttons register.  Not sure what else to try.

Connect via USB if possible. Install Steam as it also provides drivers for controllers. Otherwise, if applicable try with another controller.

Update to macOS 13 Ventura. The new controller support in that update made it work for me.

This is good news! I wonder what other controllers may work now.

Update to macOS 13 Ventura. The new controller support in that update made it work for me.

I'm on Ventura 13.2 yet my pro controller is showing up in the menu with no input at all

@Sammy3968 What version of Controllable and Minecraft are you using?

Similar issue. Version 1.19.2 of Minecraft, version 0.17.0 of controllable. Mac Big Sur.
The pro controller shows up in the gamepads list correctly. If you go to layout, though, it doesn't respond to input at all. If you disconnect and reconnect your controller while on layout, you can see it responds to input for about a second and then stops again.
Occasionally we can get it to work for longer, and even get a little gameplay out of it. Once we got it to work, but only with a couple of buttons, which was strange. It always stops eventually though.
Happy to try and work with you on resolving this, even if I gotta pull down the codebase and run it from here. I'm not a Java guy, but between the two of us I'm sure we can get a workable repro. I would get huge brownie points from my wife if we fix this so lmk.

I'd first run through the Linux method of connecting a controller, since using Steam may allow you to use your Switch Pro controller. https://mrcrayfish.gitbook.io/controllable-documentation/guides/how-to-connect-a-gamepad/method-4-steam-virtual-gamepad

Following up! The linux / steam method did work for Mac. We had tried the steam route before, but didn't realize that launching it through steam was necessary to get those drivers to function. Tysm.
Can we remove the "If running on linux" line from that page to make it clearer that it works for more than just linux? Can open a separate ticket if you like.

It also says "Linux only" further down on the page.

Good to know. If anyone else can try the Linux method on macOS, I can confirm it's a solution.

Some people would not like to install Steam I think you need to add support, after all isn't that the point of the mod? If I'm going to have to install Steam I might as well just use it to run the game and not use this mod to begin with.

For anyone reading this thread and seeking an alternative, I found that the Controlify mod works well on macOS, the Switch Pro controller, and all the way up to Minecraft 1.21.1. I got it working in conjunction with the Fabulously Optimized mod pack.


General cleanup

Hey @ddssff!! Thanks for the pull request, I haven’t had a chance to work through the issues yet. This looks great, thanks!

I decided to push what I had lying around, would be good to continue with what we decided we needed to do, though I've sort of forgotten what that was...

Hey @ddssff, sorry for the radio silence.  I've had a priority shift recently, but am looking to work on this again soon.
I will use the issues you've created to guide me when working through the re-write.


Update upstream Helm chart to v9.8.1 (vpa v1.1.1).

Testing if vpa v1.1.1 actually solves the bug introduced with v1.1.0

it did not. :(


1.12 Can't start new server.

Getting insane console spam repeating this over and over.
[22:25:03] [Server thread/INFO]: [STDERR]: 	at prospector.traverse.world.TraverseWorldVersion.writeVersionFile(TraverseWorldVersion.java:56)
[22:25:03] [Server thread/INFO]: [STDERR]: 	at prospector.traverse.world.TraverseWorldVersion.reloadVersionFile(TraverseWorldVersion.java:33)

On 1.1.6? Huh it works fine for me in dev.

Fixed in 1.1.7


ensure_correct_attribute_type() does not preserve pointer-type qualifiers.

Found issue during review of: https://github.com/KhronosGroup/SPIRV-Cross/pull/852

In fact it does, if the passed-in type is a pointer. (See here and here.) The problem was that the change in #852 stopped passing the original pointer type to this function.

Oh. Maybe it was my bug then :disappointed: , either way, it's a bug.


The range function results in an error when step is a negative number

Describe the bug
In the range function, if step is a negative number, since the parameter is specified as usize, step=-1 is converted to<PHONE_NUMBER>3709551614, which leads to incorrect results.
https://github.com/apache/arrow-datafusion/blob/9619f02db79c794212437415b1e6a53b44eef4c9/datafusion/physical-expr/src/array_expressions.rs#L749C50-L749C51
Therefore, we need to specially handle the case where step is a negative number.
To Reproduce
run :
select range(1, 10, -2) result is [1]
As a comparison:
duckdb and clickhouse's result is []
Expected behavior
result is []
Additional context
No response

cc @alamb @Veeupup


MINOR: Add test to ensure log metrics are removed after deletion

cc @hachikuji let me know what you think


audio files are not playing. (MP3 File)

I am uploading the audio file with the format mp3. Unfortunately the player is not able to play the audio. I have followed all the instrucations as written in the document.
Always I am getting the error as " actual_path_of_file could not be decoded."

Actually the same file has been played with any other local players such as 'Rhytmbox' from Linux it is playing.
When accessing the same mp3 file over the web browser (Moziila Firefox 38.0)  then it saying  "Video can't be played because it is corrupt".

Can you please suggest a way to solve this in terms of any other configuration or changes in the installation process.

@alankarmore Can you provide a URL to test this, please? Is this still an issue?

Closing this issue since no answer has been posted in more than 2 weeks. If you'd like to reopen this, let us know. Thanks!