OSX High Sierra: esy bootstrap failing, ../boot/ocamlrun: Permission denied

Trying to build oni2 / revery-ui / revery-quick-start
System:

Operating System: OSX High Sierra (10.13.6)
Revery Version: #3c23304 (what quick start is pinned to currently)
OCaml version: ocaml-4.8.1000-426898cd (looks like what esy is pulling)
Native, Bytecode, or JS build: native
libtool version: 2.4.6_1
cclang version: 10.0.0 (clang-1<IP_ADDRESS>), from xcode command line tools

Link to github repo:

https://github.com/revery-ui/revery-quick-start also oni2 and this repo same error.

Steps to reproduce:

Delete ~/.esy and _esy
esy install
esy bootstrap

Actual Result:
error: build failed with exit code: 1
  build log:
    # esy-build-package: building<EMAIL_ADDRESS>    # esy-build-package: pwd: /Users/wpaul/.esy/3/b/ocaml-4.8.1000-426898cd
    # esy-build-package: running: './esy-configure' '--disable-cfi' '--prefix' '/Users/wpaul/.esy/3___________________________________________________________________/s/ocaml-4.8.1000-426898cd'
    [esy-configure] Detected OSX / Linux environment
    configure: Configuring OCaml version 4.08.1
    checking build system type... x86_64-apple-darwin17.7.0
    checking host system type... x86_64-apple-darwin17.7.0
    checking target system type... x86_64-apple-darwin17.7.0
    checking for ld... ld
    checking how to print strings... printf
    checking for gcc... gcc
    checking whether the C compiler works... yes
    checking for C compiler default output file name... a.out
    checking for suffix of executables...
    checking whether we are cross compiling... no
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether gcc accepts -g... yes
    checking for gcc option to accept ISO C89... none needed
    checking for a sed that does not truncate output... /usr/local/bin/gsed
    checking for grep that handles long lines and -e... /usr/bin/grep
    checking for egrep... /usr/bin/grep -E
    checking for fgrep... /usr/bin/grep -F
    checking for ld used by gcc... ld
    checking if the linker (ld) is GNU ld... no
    checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
    checking the name lister (/usr/bin/nm -B) interface... BSD nm
    checking whether ln -s works... yes
    checking the maximum length of command line arguments... 196608
    checking how to convert x86_64-apple-darwin17.7.0 file names to x86_64-apple-darwin17.7.0 format... func_convert_file_noop
    checking how to convert x86_64-apple-darwin17.7.0 file names to toolchain format... func_convert_file_noop
    checking for ld option to reload object files... -r
    checking for objdump... objdump
    checking how to recognize dependent libraries... pass_all
    checking for dlltool... no
    checking how to associate runtime and link libraries... printf %s\n
    checking for ar... ar
    checking for archiver @FILE support... no
    checking for strip... strip
    checking for ranlib... ranlib
    checking for gawk... gawk
    checking command to parse /usr/bin/nm -B output from gcc object... ok
    checking for sysroot... no
    checking for a working dd... /bin/dd
    checking how to truncate binary pipes... /bin/dd bs=4096 count=1
    checking for mt... no
    checking if : is a manifest tool... no
    checking for dsymutil... dsymutil
    checking for nmedit... nmedit
    checking for lipo... lipo
    checking for otool... otool
    checking for otool64... no
    checking for -single_module linker flag... yes
    checking for -exported_symbols_list linker flag... yes
    checking for -force_load linker flag... yes
    checking how to run the C preprocessor... gcc -E
    checking for ANSI C header files... yes
    checking for sys/types.h... yes
    checking for sys/stat.h... yes
    checking for stdlib.h... yes
    checking for string.h... yes
    checking for memory.h... yes
    checking for strings.h... yes
    checking for inttypes.h... yes
    checking for stdint.h... yes
    checking for unistd.h... yes
    checking for dlfcn.h... yes
    checking for objdir... .libs
    checking if gcc supports -fno-rtti -fno-exceptions... yes
    checking for gcc option to produce PIC... -fno-common -DPIC
    checking if gcc PIC flag -fno-common -DPIC works... yes
    checking if gcc static flag -static works... no
    checking if gcc supports -c -o file.o... yes
    checking if gcc supports -c -o file.o... (cached) yes
    checking whether the gcc linker (ld) supports shared libraries... yes
    checking dynamic linker characteristics... darwin17.7.0 dyld
    checking how to hardcode library paths into programs... immediate
    checking whether stripping libraries is possible... yes
    checking if libtool supports shared libraries... yes
    checking whether to build shared libraries... yes
    checking whether to build static libraries... yes
    checking whether #! works in shell scripts... yes
    checking C compiler vendor... clang-10-0
    checking for a BSD-compatible install... /usr/local/bin/ginstall -c
    checking for cos in -lm... yes
    checking math.h usability... yes
    checking math.h presence... yes
    checking for math.h... yes
    checking for unistd.h... (cached) yes
    checking for stdint.h... (cached) yes
    checking sys/shm.h usability... yes
    checking sys/shm.h presence... yes
    checking for sys/shm.h... yes
    checking for dirent.h... yes
    checking for sys/select.h... yes
    checking for off_t... yes
    checking size of int... 4
    checking size of long... 8
    checking size of long *... 8
    checking size of short... 2
    checking size of long long... 8
    configure: Target is a 64 bits architecture
    checking whether byte ordering is bigendian... no
    checking alignment of double... 8
    checking alignment of long... 8
    checking whether the C compiler supports -fno-tree-vrp... no
    checking for ld... ld
    configure: checking semantics of signal handlers
    checking for sigaction... yes
    checking for sigprocmask... yes
    configure: POSIX signal handling found.
    checking for expm1... yes
    checking for log1p... yes
    checking for hypot... yes
    checking for fma... yes
    checking for copysign... yes
    checking for getrusage... yes
    checking for times... yes
    checking for secure_getenv... no
    checking for __secure_getenv... no
    checking for issetugid... yes
    checking for library containing clock_gettime... none required
    checking for socket... yes
    checking for socketpair... yes
    checking for bind... yes
    checking for listen... yes
    checking for accept... yes
    checking for connect... yes
    checking for socklen_t... yes
    checking for inet_aton... yes
    checking for struct sockaddr_in6... yes
    checking for getaddrinfo... yes
    checking for getnameinfo... yes
    checking for inet_pton... yes
    checking for inet_ntop... yes
    checking for rewinddir... yes
    checking for lockf... yes
    checking for mkfifo... yes
    checking for getcwd... yes
    checking for getpriority... yes
    checking for setpriority... yes
    checking for sys/types.h... (cached) yes
    checking utime.h usability... yes
    checking utime.h presence... yes
    checking for utime.h... yes
    checking for utime... yes
    checking for utimes... yes
    checking for dup2... yes
    checking for fchmod... yes
    checking for fchown... yes
    checking for truncate... yes
    checking for ftruncate... yes
    checking for select... yes
    checking for fd_set... yes
    checking for nanosleep... yes
    checking for symlink... yes
    checking for readlink... yes
    checking for lstat... yes
    checking for waitpid... yes
    checking for wait4... yes
    checking for getgroups... yes
    checking for setgroups... yes
    checking for initgroups... yes
    checking termios.h usability... yes
    checking termios.h presence... yes
    checking for termios.h... yes
    checking for tcgetattr... yes
    checking for tcsetattr... yes
    checking for tcsendbreak... yes
    checking for tcflush... yes
    checking for tcflow... yes
    checking for asynchronous I/O... yes
    checking for setitimer... yes
    checking for gethostname... yes
    checking sys/utsname.h usability... yes
    checking sys/utsname.h presence... yes
    checking for sys/utsname.h... yes
    checking for uname... yes
    checking for gettimeofday... yes
    checking for mktime... yes
    checking for setsid... yes
    checking for putenv... yes
    checking locale.h usability... yes
    checking locale.h presence... yes
    checking for locale.h... yes
    checking for newlocale... yes
    checking for freelocale... yes
    checking for uselocale... yes
    checking xlocale.h usability... yes
    checking xlocale.h presence... yes
    checking for xlocale.h... yes
    checking for newlocale... (cached) yes
    checking for freelocale... (cached) yes
    checking for uselocale... (cached) yes
    checking for strtod_l... yes
    checking for dlopen... yes
    configure: Dynamic loading of shared libraries is supported.
    checking sys/mman.h usability... yes
    checking sys/mman.h presence... yes
    checking for sys/mman.h... yes
    checking for mmap... yes
    checking for munmap... yes
    checking for pwrite... yes
    checking whether the C compiler supports -fdebug-prefix-map... yes
    checking for struct stat.st_atim.tv_nsec... no
    configure: stat supports nanosecond precision
    checking how many arguments gethostbyname_r() takes... cannot find function declaration in netdb.h
    checking how many arguments gethostbyaddr_r() takes... cannot find function declaration in netdb.h
    checking for mkstemp... yes
    checking for nice... yes
    checking for dup3... no
    checking for pipe2... no
    checking for accept4... no
    checking for getauxval... no
    checking for execvpe... no
    configure: replay debugger supported
    checking whether stack overflows can be detected... yes
    checking whether gcc is Clang... yes
    checking whether Clang needs flag to prevent "argument unused" warning when linking with -pthread... no
    checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
    checking whether more special flags are required for pthreads... no
    checking for PTHREAD_PRIO_INHERIT... yes
    configure: the POSIX threads library is supported
    checking for sigwait... yes
    configure: the bytecode threads library is supported
    checking for X... no
    configure: X has not been found
    configure: the graph library will not be built
    checking bfd.h usability... no
    checking bfd.h presence... no
    checking for bfd.h... no
    checking whether the assembler supports --debug-prefix-map... no
    checking whether the assembler supports CFI directives... disabled
    configure: not using frame pointers
    checking whether mmap supports huge pages... no
    checking whether to build spacetime... no
    configure: creating ./config.status
    config.status: creating Makefile.common
    config.status: creating Makefile.config
    config.status: creating runtime/caml/m.h
    config.status: creating runtime/caml/s.h
    config.status: executing libtool commands
    # esy-build-package: running: './esy-build'
    [esy-build] Detected OSX / Linux environment
    /Library/Developer/CommandLineTools/usr/bin/make -C runtime  all
....
a bunch more
....
    ../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats   -o stdlib__list.cmi -c list.mli
    make[1]: ../boot/ocamlrun: Permission denied
    make[1]: execvp: ./Compflags: Permission denied
    make[1]: *** [stdlib__list.cmi] Error 1
    make[1]: *** Waiting for unfinished jobs....
    make: *** [coldstart] Error 2
    error: command failed: './esy-build' (exited with 2)
    esy-build-package: exiting with errors above...

  building<EMAIL_ADDRESS>esy: exiting due to errors above

Expected Result:
No errors
Additional Information:
What I've tried so far:

Uninstall global node and switch to nvm to install/manage node, because I found this bucklescript issue that seemed similar
Reinstall esy
Was able to use ocamlrun as non-super user, based on logs from the makefile:
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats   -o stdlib__list.cmi -c list.mli
Was able to run the command one layer up in the stack as a non-super use:
/Library/Developer/CommandLineTools/usr/bin/make -C stdlib  \                                                                                ocaml-4.8.1000-426898cd         COMPILER="../boot/ocamlc -use-prims ../runtime/primitives" all
Was able to run the top-level command that's failing in esy bootstrap:
./esy-configure --disable-cfi --prefix /Users/wpaul/.esy/3___________________________________________________________________/s/ocaml-4.8.1000-426898cd

Really confused at this point, any ideas?
Would it be possible to use an esy docker container for local dev?
Search terms used:

permissions denied, osx, ocamlrun, clang, esy, revery, ocaml, execvp

Uhm it is really strange we are able to build on mac with github action and azures pipeline. Can you clone https://github.com/esy-ocaml/ocaml/tree/4.8.1000+esy and just run: esy

Yep, just tried it, basically the same output.
...
/Library/Developer/CommandLineTools/usr/bin/make -C stdlib  \
	  COMPILER="../boot/ocamlc -use-prims ../runtime/primitives" all
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats  -nopervasives -c camlinternalFormatBasics.mli
sed -e "s|%%VERSION%%|`sed -e 1q ../VERSION | tr -d '\r'`|" sys.mlp > sys.ml
for suff in '' d i; do \
	  echo '#!/Users/wpaul/Code/ocaml/_esy/default/store/s/ocaml-ad006b46/bin/ocamlrun'$suff > camlheader$suff && \
	  echo '#!/Users/wpaul/Code/ocaml/_esy/default/store/s/ocaml-ad006b46/bin/ocamlrun'$suff >target_camlheader$suff; \
	done && \
	echo '#!' | tr -d '\012' > camlheader_ur;
for suff in '' d i; do \
	  echo '#!/Users/wpaul/Code/ocaml/_esy/default/store/s/ocaml-ad006b46/bin/ocamlrun'$suff > camlheader$suff && \
	  echo '#!/Users/wpaul/Code/ocaml/_esy/default/store/s/ocaml-ad006b46/bin/ocamlrun'$suff >target_camlheader$suff; \
	done && \
	echo '#!' | tr -d '\012' > camlheader_ur;
for suff in '' d i; do \
	  echo '#!/Users/wpaul/Code/ocaml/_esy/default/store/s/ocaml-ad006b46/bin/ocamlrun'$suff > camlheader$suff && \
	  echo '#!/Users/wpaul/Code/ocaml/_esy/default/store/s/ocaml-ad006b46/bin/ocamlrun'$suff >target_camlheader$suff; \
	done && \
	echo '#!' | tr -d '\012' > camlheader_ur;
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats  -nopervasives -c camlinternalFormatBasics.ml
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats  -nopervasives -no-alias-deps -w -49  -pp "$AWK -f expand_module_aliases.awk" -c stdlib.mli
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats  -nopervasives -no-alias-deps -w -49  -pp "$AWK -f expand_module_aliases.awk" -c stdlib.ml
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats   -o stdlib__pervasives.cmo -c pervasives.ml
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats   -o stdlib__seq.cmi -c seq.mli
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats   -o stdlib__bool.cmi -c bool.mli
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats   -o stdlib__char.cmi -c char.mli
make[1]: ../boot/ocamlrun: Permission denied
make[1]: execvp: ./Compflags: Permission denied
make[1]: *** [stdlib__char.cmi] Error 1
make[1]: *** Waiting for unfinished jobs....
make: *** [coldstart] Error 2
error: command failed: './esy-build' (exited with 2)
esy-build-package: exiting with errors above...
error: build failed with exit code: 1

esy: exiting due to errors above

Manually tried these, in the ~/.esy/ dir for ocaml 4.8.100:
./esy-configure
./esy-build

Configure succeeded, but build failed with the same output.
Tried building just the stdlib, which seems to be what's failing if I'm understanding the script output (not to sure, don't know make/c very well):
/Library/Developer/CommandLineTools/usr/bin/make -C stdlib  \
	  COMPILER="../boot/ocamlc -use-prims ../runtime/primitives" all

And that succeeded, with this as the last output:
../boot/ocamlrun ../boot/ocamlc -use-prims ../runtime/primitives -strict-sequence -absname -w +a-4-9-41-42-44-45-48 -g -warn-error A -bin-annot -nostdlib -safe-string -strict-formats   -c std_exit.ml
for suff in '' d i; do \
	  echo '#!/usr/local/bin/ocamlrun'$suff > camlheader$suff && \
	  echo '#!/usr/local/bin/ocamlrun'$suff >target_camlheader$suff; \
	done && \
	echo '#!' | tr -d '\012' > camlheader_ur;

So maybe it's what follows that which is failing?

So it is not revery that fail but before. I have showed the ocaml version with some patch for windows. Can you try to build this of upstream ocaml https://github.com/ocaml/ocaml/tree/4.08: ./configure; make world.opt if it doesn't then you have a very strange config.

Yep, seems like it is definitely not a Revery issue, thanks for the help though!
Both esy-ocaml and ocaml org ocamls work with ./configure; make world.opt. I then ran make tests and those passed.
Looking at ./esy-build it also runs make install, I tried that and got permission denied. Looking at INSTALL.adoc it says to run make install as super user, which esy-build is not doing.
Running sudo make install I got a working ocaml repl in my path, but maybe that's not what esy is trying to do...

For anyone from Google, I did figure this out.
Basically, for whatever reason parallel builds were the problem on my system.
Figured it out by trying to install ocaml with opam, which gave the same errors as with esy, but also included the helpful:
=> A failure in the middle of the build may be caused by build parallelism
      (enabled by default).
      Please file a bug report at https://github.com/ocaml/ocaml/issues
=> You can try installing again including --jobs=1
      to force a sequential build instead.

Following that worked. So I went back to the esy errors, saw they originated from esy-build, so I edited that to pass -j=1 to make world. And that got ocaml installed with esy.


TechDebt - MessagingCenter is now obsolete

As per my conversation with the Rewards Team, we will close this ticket as we are now using WeakReferenceMessenger.


Infowindow bug

I think I've found a bug. The bug occurs when clicking a graphic to open an infowindow if another infowindow is already open but parts of that already open infowindow is outside the visible map extent.
You can see and reproduce the issue in windows example in the demo pages (http://esri.github.io/bootstrap-map-js/demo/dojo/windows.html) by following this procedure:

Click the show window button, and press the green go button in the modal.
Click one of the purple icons in the map that shows up, to open an infowindow for that graphic.
Pan the map so that parts of the infowindow goes above the visible area of the map.
Try to click one of the other purple icons.

The observed result from this is that clicking the graphic (in step 4) only updates the content of the already open infowindow. The anchor of the already opened infowindow is not changed, but stays attached to the first graphic that was clicked (step 2).
Are there any workarounds for this behavior?

Ya, this is a bug and I'm not sure when I'll get to it. In the meantime you could consider using Calcite Maps.


(HTTP code 404) no such image - no such image: homme/openstreetmap-tiles:latest: No such image: homme/openstreetmap-tiles:latest

Am trying to download openstream map tiles unfornately after sometimes i receive an error as follows
(HTTP code 404) no such image - no such image: homme/openstreetmap-tiles:latest: No such image: homme/openstreetmap-tiles:latest

Go to https://hub.docker.com/r/homme/openstreetmap-tiles/tags/
Observe no latest tags were created for that image
Select a different tag in Kitematic (if one exists)
🎉  enjoy container running.

Ideally you open an issue with the repo owner to let them know how frustrating it is that they don't have a latest image tagged

thanks i managed to overcome the issue
On Fri, Apr 6, 2018 at 3:06 AM, French Ben<EMAIL_ADDRESS>wrote:

Closed #3722 https://github.com/docker/kitematic/issues/3722.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/docker/kitematic/issues/3722#event-1559946937, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AVkBdoh7469l0N3EDZixoM-LjIRTYfv3ks5tlrGAgaJpZM4TIKQS
.


virt-manager-qt: 0.52.80 -> 0.57.86.

Use SHA for rev instead of tag name as upstream has recreated tags.
Motivation for this change
Things done

[ ] Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
Built on platform(s)

[ ] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Fits CONTRIBUTING.md.

Already bumped to 0.60.88 in 9131f2d005772db5e5daea1d5622dffee652e420, closing.


Add new Rails/ExistsById cop

This PR introduces a cop to enforces the use of exists?(id) over exists?(id: id).

Before submitting the PR make sure the following are checked:

[x] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[x] Feature branch is up-to-date with master (if not - rebase it).
[x] Squashed related commits together.
[x] Added tests.
[x] Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
[ ] If this is a new cop, consider making a corresponding update to the Rails Style Guide.
[x] The PR relates to only one subject with a clear title
and description in grammatically correct, complete sentences.
[x] Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

If this is a new cop, consider making a corresponding update to the Rails Style Guide.

I think it should be discussed at the Rails Style Guide first if it suits the style. Can you open the PR with why this style is good to the Rails Style Guide?

I'm going to close this PR due to no recent activity. Here's review note, I'm wondering if it could be a generic rule pointing out duplicate parameters of id: id to id.


cube.api.sound.stop() does not work

I cannot stop the sound with cube.api.sound.stop().
The sound will continue to play.

Fixed in 1.1.0


MotionControllerVisualizer.cs

Overview
I am getting an error everytime I try and build with the holotoolkit in my project. It keeps telling me Assets\HoloToolkit\Input\Scripts\Utilities\MotionControllerVisualizer.cs(339,44): error CS1729: 'DataReader' does not contain a constructor that takes 1 arguments
Expected Behavior
Build project successfully
Actual Behavior
Build fails
Steps to reproduce
(Links to sample github project preferred)
Just add the holotoolkit to a project. Don't even have to use any of its features.
Unity Editor Version
Unity 2018.1.4f1 Personal (64bit)
Mixed Reality Toolkit Release Version
I tried 2<IP_ADDRESS> and 2<IP_ADDRESS>

I'm unable to repro this. Which SDK are you using to build?

If you're still seeing this issue, please update with repro steps and reopen.


Added zoom limits and indicator. Also a center button.

Coverage remained the same at 98.899% when pulling 885643c93d6467450bcfb9d4267f2d22d693945c on thongsav-usgs:master into efde032dea73f76905a5480ab837595513dc3caa on USGS-R:master.


Fix slm requirement in Python API

The spec specifies the SLM of a stimulus site is not required: https://github.com/catalystneuro/ndx-patterned-ogen/blob/main/spec/ndx-patterned-ogen.extensions.yaml#L124
But I was unable to use the API without one specified
This should fix the issue

@rly Could things here
i) I get a build warning on file write
C:\Users\theac\anaconda3\envs\leifer_lab_to_nwb_created_5_13_2024\Lib\site-packages\hdmf\build\objectmapper.py:671: MissingRequiredBuildWarning: PatternedOptogeneticStimulusSite 'PatternedOptogeneticStimulusSite' is missing required value for attribute 'spatial_light_modulator'.
  warnings.warn(msg, MissingRequiredBuildWarning)

But file roundtrips just fine; also confused why it thinks it's required in the object mapper
Not too worried since the file reads fine, just curious / letting you know
ii) the testing suite for ndx-extension template seems to be failing due to numpy 2.0 issues; advice on how to resolve generally (besides hard pinning upper bound on all extensions?)

@rly Couple of things here
i) I get a build warning on file write
C:\Users\theac\anaconda3\envs\leifer_lab_to_nwb_created_5_13_2024\Lib\site-packages\hdmf\build\objectmapper.py:671: MissingRequiredBuildWarning: PatternedOptogeneticStimulusSite 'PatternedOptogeneticStimulusSite' is missing required value for attribute 'spatial_light_modulator'.
  warnings.warn(msg, MissingRequiredBuildWarning)

required: false is not valid on links. I'll raise an issue to catch that. It's a common mistake. Use quantity: "?" instead. Strange that it reads fine; the default is quantity: 1 meaning it's required.
I'll look into the template.

Though I guess, oddly, the PR on https://github.com/catalystneuro/ndx-microscopy/pull/14 doesn't have that issue with the tests so maybe it's just this extension

Yeah OK, pinning here fixed it but not sure about other extensions. Just wanted you to be aware

Yeah OK, pinning here fixed it but not sure about other extensions. Just wanted you to be aware

Thanks. It turns out that the "upgraded" workflow was not actually upgrading the packages. That one should have passed. The others should fail because older versions of pynwb and hdmf, which are pinned for testing, did not set an upper limit on numpy, so numpy 2 ends up being installed. I will update the pinned versions in the template.

How does this look @rly ?


Spawning 16 (or more) [Isolate]s with [sleep] freeze the application

Hi! I'm in a situation where I'm using Isolates to "poll" for events. But as soon as there are more than 16 isolates in Dart SDK or 8 in Flutter, whole application freezes. Please refer to code below.
Expected Behavior
"Alive!" is printed out to the console every second.
Actual Behavior
No output is ever printed out to the console as if application is frozen.
When using the following code in Dart SDK & Flutter:

Dart SDK: "Alive!" is printed as long as [kIsolateSpawnCount] is less than 16.
Flutter: "Alive!" is printed as long as [kIsolateSpawnCount] is less than 8.

Once kIsolateSpawnCount is set to 15 in Dart SDK or 7 in Flutter, "Alive!" is printed every second as expected.

Dart Example
import 'dart:io';
import 'dart:async';
import 'dart:isolate';

/// Expected Behavior
/// -----------------
/// "Alive!" is printed out to the console every second.
///
/// Actual Behavior
/// ---------------
/// No output is ever printed out to the console as if application is frozen.
/// When using the following code in Dart SDK & Flutter:
/// 1. Dart SDK: "Alive!" is printed as long as [kIsolateSpawnCount] is less than 16.
/// 2. Flutter: "Alive!" is printed as long as [kIsolateSpawnCount] is less than 8.
///
/// Once [kIsolateSpawnCount] is set to 15 in Dart SDK or 7 in Flutter, "Alive!" is printed every second as expected.
///

const kIsolateSpawnCount = 16;

void isolate(message) {
  // [sleep]ing one [Isolate] should not affect rest of the [Isolate]s, main [Isolate] or the event loop.
  // Note: [Future.delayed] works as intended.
  sleep(const Duration(days: 1));
}

Future<void> main() async {
  for (int i = 0; i < kIsolateSpawnCount; i++) {
    await Isolate.spawn(isolate, null);
  }
  Timer.periodic(
    const Duration(seconds: 1),
    (e) {
      print('Alive!');
    },
  );
}

Flutter Example
import 'dart:io';
import 'dart:async';
import 'dart:isolate';

import 'package:flutter/material.dart';

/// Expected Behavior
/// -----------------
/// "Alive!" is printed out to the console every second.
///
/// Actual Behavior
/// ---------------
/// No output is ever printed out to the console as if application is frozen.
/// When using the following code in Dart SDK & Flutter:
/// 1. Dart SDK: "Alive!" is printed as long as [kIsolateSpawnCount] is less than 16.
/// 2. Flutter: "Alive!" is printed as long as [kIsolateSpawnCount] is less than 8.
///
/// Once [kIsolateSpawnCount] is set to 15 in Dart SDK or 7 in Flutter, "Alive!" is printed every second as expected.
///

const kIsolateSpawnCount = 8;

void isolate(message) {
  // [sleep]ing one [Isolate] should not affect rest of the [Isolate]s, main [Isolate] or the event loop.
  // Note: [Future.delayed] works as intended.
  sleep(const Duration(days: 1));
}

void main() {
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance.addPostFrameCallback((_) async {
      for (int i = 0; i < kIsolateSpawnCount; i++) {
        await Isolate.spawn(isolate, null);
      }
      Timer.periodic(
        const Duration(seconds: 1),
        (e) {
          debugPrint('Alive!');
        },
      );
    });
  }

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: HomeScreen(),
    );
  }
}

class HomeScreen extends StatelessWidget {
  const HomeScreen({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: const Text('test'),
      ),
      body: Center(
        child: ElevatedButton(
          onPressed: () {
            Navigator.of(context).push(
              MaterialPageRoute(
                builder: (context) => const HomeScreen(),
              ),
            );
          },
          child: const Text('Go!'),
        ),
      ),
    );
  }
}

dart --version
Dart SDK version: 2.18.6 (stable) (Tue Dec 13 21:15:14 2022 +0000) on "windows_x64"

I assume Flutter spawns it's own isolates. I don't know however, I have limited knowledge of this.

I'm working on package:media_kit & one of the users recently reported that as soon as they create 8 Player instances, everything freezes up. I could reduce down problem to the code I shared above. Still, you can see these lines which run on another Isolate for every instance of Player, where I'm calling mpv_wait_event, passing negative duration means waiting until next event comes up.
Now I'm considering to create a separate shared library which will do the "polling" using C++'s std::thread, but it will be a pain & hacky approach to ship another shared library separately for each platform (while rest of the code is in 100% Dart).
On the other hand, using Isolate already present in Dart SDK was handy & worked correctly.
Any guidance or explanation will be really helpful.
Thanks!

/cc @aam @mkustermann

The issue is well known: We only allow a certain number of threads to be active in an isolate group to avoid issues with the memory subsystem (see https://github.com/dart-lang/sdk/issues/51261 for more context)
There's a workaround to this, which is basically telling the Dart VM that the isolate isn't actively needed, which can currently be done via custom C code:
auto isolate = Dart_CurrentIsolate();
Dart_ExitIsolate();
{
  <... run blocking C Code, e.g. sleep() or mpv_wait_event() ...>
}
Dart_EnterIsolate(isolate);

Filed https://github.com/dart-lang/sdk/issues/51261 for possibly letting the VM do that automatically based on boolean.

@alexmercerind Do you have the option to write custom C code for the few places where you know C code can block for longer time? If so, is your use case standalone dart or flutter (or both)?
(Flutter is hiding all Dart C API symbols - such as Dart_ExitIsolate() - so we may need to add those two functions to our NativeApi.initializeApiDLData & include/dart_api_dl.h)

Hi @mkustermann!
Thanks a lot for the detailed explanation & information. I'm really glad.
Sure! Flutter recently added a new project template for FFI plugins, where one can build custom C/C++ shared library targets before build. I think I can include these Dart API headers there & export the required C methods for access inside Dart SDK.
Alternatively, I think I can (I believe this will save you people a lot of work as-well since my case seems very specific):
I'm thinking to call mpv_wait_event within C/C++ using std::thread (avoiding to use Isolate) & send the raw address (int) of the mpv_event* using SendPort/ReceivePort mechanism to Dart (where I can interpret it using dart:ffi). This will avoid any block within Dart. I have used this once before when dealing with https://github.com/dart-lang/sdk/issues/37022.
Infact, libmpv also offers a non-wait API for handling events, but since those event callbacks are invoked from another thread, it caused Dart VM to crash due to https://github.com/dart-lang/sdk/issues/37022,. So, I went with mpv_wait_event + Isolate, but it seems this has it's own limitations too.
Thanks again!

Hi!
I exported Dart_CurrentIsolate, Dart_EnterIsolate & Dart_ExitIsolate inside dart_api_dl.h like you guided above.
However, the whole project seems to experience some memory access violation when calling Dart_CurrentIsolate_DL.
Am I missing something here?
Thanks!
https://github.com/alexmercerind/dart_api_test

For now I just created a new FFI plugin package which spawns a std::thread & forwards data to Dart VM through SendPort. Inside original root package, I just load the native library if found otherwise fallback to Isolate based solution.
https://github.com/alexmercerind/media_kit/blob/b5b980e29b2f88f226a58c1c5eda416dcb19b598/media_kit_native_event_loop/src/media_kit_native_event_loop.cc#L43-L46
https://github.com/alexmercerind/media_kit/blob/main/media_kit/lib/src/libmpv/core/initializer.dart

This is a huge implementation overhead to a seemingly simple feature.
@mkustermann Will you be willing to accept a PR exposing these functions?

@mkustermann Is there a possibility to actually use Dart_CurrentIsolate etc. in the native code of an Flutter application? Since, as you mentioned, these functions are not exported it seems that the workaround cannot be applied.
@mkustermann Will you be willing to accept a PR exposing these functions?

The 3 needed API functions are quite stable and I don't see a big reason not to expose them. Would be happy to accept a PR - though our ffi testing setup has some particularities, so maybe it's easier if we do it: made cl/292722. Will add relevant reviews to see if they have objections.
Will think a bit more about whether we can do it in an automatic way (see https://github.com/dart-lang/sdk/issues/51261) that works nicely.

@SynSzakala We could easily expose these functions, but before that I want to check with you regarding the timelines. If we land this change today it is going to reach master or dev Flutter channel relatively quickly, but it is going to take more than 6 months to reach a stable Flutter release.
Which Flutter channel do you use?

@mraleph I'm aware of that, it'll be completely fine for us to migrate to the master channel (or back-port the fix to a fork somehow, if that's possible). It's still less work than adding an additional asynchronous native layer (especially given large API surfaces).
Of course, designing and implementing solution as discussed in #51261 would be very desirable, since that completely removes the need for adding native code. But, from what I understand there's still some discussion on how to do that right.
So, from my perspective it would be reasonable to expose the Dart_*Isolate functions anyway, since the solution discussed in #51261 might not cover every use-case (e.g. some kind of conditional blocking in the native code).

I agree with @SynSzakala comment, that it is just way easier to write that kind of logic in Dart and TBH I'm into letting more advanced usecases for DL APIs. I currently don't have any issue that this change would resolve, but this change gives FFI users flexibility and it wouldn't already burden people that are currently using stuff like NativePorts.

This has landed now on main branch in the Dart SDK. Once it rolls up to flutter engine and flutter framework main branches, it will be available to use.
We'll continue the discussion on how to do this better / automatically in https://github.com/dart-lang/sdk/issues/51261 (to avoid the custom C code that exits + enters isolate).

I also experienced this, is there anything the same?
has it been fixed?

I also experienced this, is there anything the same?
has it been fixed?

@azkadev Generally if the isolate yield back to the event loop there should be no freezing of the application. This is mainly a problem if one e.g. calls out to C code in many isolates and that C code blocks. For this scenario one can use a new C API to exit the current isolate and re-enter when the blocking C call has finished. See https://github.com/dart-lang/sdk/commit/f9eb97fdff9517d7b7f0f1ddec936dd3920ce89c  (You can use dart:ffis NativeApi.initializeApiDLData pass it to C code, which can include dart_api_dl.h from the Dart SDK (can make a copy of it) initialize it and then call the 2 new API functions)


Update UAC prompts but no completion confirmation

Why does an update require FOUR UAC prompts, and why does an update provide no confirmation of completion?

I am having a lot of issues with the update as well. It kept locking up and crashing and needing multuple prompts

@BR77BE

Why does an update require FOUR UAC prompts

It doesn't, currently it shows two UAC, one to uninstall the previous version, one to install the new version.
#8828 already tracks the suggestion to reduce it to one if PT is running as user and to zero if PT is running as admin

why does an update provide no confirmation of completion?

This is the first time someone asks for it, we had for a while a toast notification, but most users complained so we remove it.
Closing the issue as duplicate for the UAC problem.
For the confirmation, feel free to open a new issue but it's likely that we will not add it.

@brimwats
this issue wasn't tracking any problem preventing the update to work, open a new issue providing detailed information. Thank you.


improvement Support * EXCEPT, * REPLACE and other expressions to appear in select statement at the same time

Follow #36777
Sometimes, users want to use * EXCEPT and other expressions in select clause.
For example:
SELECT * EXCEPT (value), sum(value) FROM tbl GROUP BY 1
Proposed changes
Issue Number: close #xxx

run buildall

Will add ut and rt later.

run buildall

add test for
SELECT * EXCEPT (value), sum(value) FROM tbl GROUP BY 1

run buildall

run buildall


[BEAM-2021] Add A CoderTranslator Interface

Be sure to do all of the following to help us incorporate your contribution
quickly and easily:

[ ] Make sure the PR title is formatted like:
[BEAM-<Jira issue #>] Description of pull request
[ ] Make sure tests pass via mvn clean verify. (Even better, enable
Travis-CI on your fork and ensure the whole test matrix passes).
[ ] Replace <Jira issue #> in the title with the actual Jira issue
number, if there is one.
[ ] If this contribution is large, please file an Apache
Individual Contributor License Agreement.

This will enable the removal of StandardCoder.getComponents

R: @kennknowles or @lukecwik

Coverage increased (+0.01%) to 69.584% when pulling 292277e42bd21a865fdbae5a788f6d741dc77dba on tgroh:coder_translators into b8c568f2950d333f44b72b57c24f59464a0c9836 on apache:master.

Coverage increased (+0.3%) to 69.9% when pulling 292277e42bd21a865fdbae5a788f6d741dc77dba on tgroh:coder_translators into b8c568f2950d333f44b72b57c24f59464a0c9836 on apache:master.

Coverage increased (+0.3%) to 69.831% when pulling 292277e42bd21a865fdbae5a788f6d741dc77dba on tgroh:coder_translators into b8c568f2950d333f44b72b57c24f59464a0c9836 on apache:master.

Coverage increased (+0.2%) to 69.821% when pulling 292277e42bd21a865fdbae5a788f6d741dc77dba on tgroh:coder_translators into b8c568f2950d333f44b72b57c24f59464a0c9836 on apache:master.

OK, since coders with payloads currently use a different code path, and this helps trim the SDK quickly, LGTM. We can solve the payload problem later and evolve this so that it is unified.

Changes Unknown when pulling ed55b09062d383d5cef29d3259f70055e2fd2177 on tgroh:coder_translators into ** on apache:master**.


which program will work?　（Program which can upload a text file to vector index of Azure AI search ）

I'm looking for a basic python program that will upload a text file to the vector index of Azure AI search, but
everything gives me an error, and I can't find the version number of the azure search documents package or a working ptyhon program anywhere.
Everything gives me an error.
I guess it's probably because the development is so hard that they haven't been able to check the operation of the developed program, but which program will work?
GitHub
Azure/azure-search-vector-samples
Azure/azure-sdk-for-python

Hi @TaisukeIto! Sorry to hear about your experience with the AI Search library - it's a rapidly growing service so sometimes the API changes on newer versions and samples become outdated fast.
One of our most popular samples uses the AI Search library and should have accurate behavior - here's what I found for a quick search of the SearchClient.upload_files() method: link. It looks like this sample is on 11.6.0b1.
The API reference is also here if you're curious about the details.
If you're still running into errors, please post the specific error you're running into.


Ender bookshelf causing significant FPS drop

Minecraft version & Mod Version:1.12.2, 1.15.3
Single player or Server: Server
Describe problem (what you were doing / what happened): placed ender library and a few ender bookshelves, put a few books in, fps dropped by ~30%
Crash log (if any):
(If this is a suggestion and not a bug report, delete all this and just write your suggestion!)

seems it only occurs during rain.

nevermind it's back again without rain

I'll see if there's something I can optimize
Also, I probably don't need to show on all 4 sides I should make them 1-way, what do you think about that?
If i cant fix it,  maybe i should have an option just like what they do with Storage Drawers where you can turn off the rendering of the items, i bet that is causing the heavy load.

showing on one side might help, could even look better if the other sides are given a frame texture.


[POC] Adding Orchestrate API and Search Response Processor Step

Description
Adds a new /_plugins/_flow_framework/<workflow_id>/_orchestrate API which accepts a map of string to string as the request body content.
Example payload looks like :
POST _plugins/_flow_framework/<workflow_id>/_orchestrate
{
    "model_id" : "uuihhqw0f9i90932r1h0a9w0f"
}

The transport action retrieves this along with the workflow ID to fetch a previously created search use case template from the global context index. The process nodes are then created, passing in the request body content map for substitution and then executes the graph.
Upon attempting to complete each plain action future, we track the final returned search response to return to the user
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Tests will fail since since the getters for the request and response processor factories are package private :
> Task :compileJava
/__w/flow-framework/flow-framework/src/main/java/org/opensearch/flowframework/workflow/SearchResponseProcessorStep.java:85: error: getResponseProcessorFactories() is not public in SearchPipelineService; cannot be accessed from outside package
                .getResponseProcessorFactories();
                ^

Modifying this line in the SearchPipelineService so that the getter is public and publishing to maven local will allow the tests to pass locally


Request for comments: SQL to Go code generator quite similar to sqlc

Hi! I'm working on sqld, a code generator that takes SQL queries and outputs type-safe Go code using pgx. I'm a big fan of sqlc (hence the name) and if you have some time, I'd love to get your thoughts on the RFC, specifically:

Is it possible or beneficial to merge the approaches used in sqlc and sqld? I created a new project because one of sqlc's value propositions is that it must work without running Postgres. For sqld, I wanted to avoid implementing parsing logic by leaning more heavily on Postgres. Additionally, I'd prefer to only support pgx instead of the sql package.

Are you okay with the name sqld? I thought it was mildly clever but I'm open to changing it.

Possible collaboration on a future ClientTrace API similar to the Go stdlib http tracing: https://blog.golang.org/http-tracing. There's a ton of useful metrics to surface (DNS resolution for host names, response parse time, pool queue time). I've created an initial pgx-focused ClientTrace.go that I use in the generated code.

Overall API design.

Is it worth supporting options when building a Querier?
How many inline parameters before switching to a struct: FindAuthors(ctx, "name") vs FindAuthors(ctx, FindAuthorsParams{Name: "name"}). Looks like sqlc switches after 1 parameter.

RFC: sqld: Go code generation for Postgres (Google doc)
To summarize the main differences between sqld and sqlc:

sqld requires a running Postgres instance to get type information by executing queries.
sqld only supports pgx.

I've started a similar discussion on the pgx repo: https://github.com/jackc/pgx/issues/915. Feel free to close this whenever.

Started a repo: https://github.com/jschaf/sqld.  Leaning toward changing the name to pggen.

Started a repo: https://github.com/jschaf/sqld.  Leaning toward changing the name to pggen.

@jschaf Thanks for reaching out about your new project. I've read through the RFC.

Is it possible or beneficial to merge the approaches used in sqlc and sqld?

It's most certainly possible, but I'm not sure it's a good idea. I've attempted to import a catalog from a running database a few times (https://github.com/kyleconroy/sqlc/issues/657, https://github.com/kyleconroy/sqlc/pull/550, https://github.com/kyleconroy/sqlc/pull/659), but haven't attempted to make it work across all supported databases. There's also an open issue for pgx support (https://github.com/kyleconroy/sqlc/issues/472).
The biggest blocker here is the decision to rely on the running PostgreSQL instance for determining input and output types. We'd have to make some pretty big internal changes to make that work, but it wouldn't be insurmountable.

Are you okay with the name sqld? I thought it was mildly clever but I'm open to changing it.

I'm personally not a huge fan of the name. I agree that it's clever, but I think it will just cause confusion. You're free to name your project whatever you like, but I'd prefer you use the name pggen.

Possible collaboration on a future ClientTrace API similar to the Go stdlib http tracing

Very interested in exploring what a shared interface could look like. I've pointed people to https://github.com/ngrok/sqlmw in the past if they're looking to instrument all database queries.

Overall API design

This one is a bit more challenging to change. I don't want to change the default generator, as it would cause significant breaking changes for the individuals and companies already using sqlc. What I'd really like to do is make it easy for people to write their own code generators so that can pick the API design they want to use.
Good luck with your project!

@jschaf Thanks for reaching out about your new project. I've read through the RFC.

Is it possible or beneficial to merge the approaches used in sqlc and sqld?

It's most certainly possible, but I'm not sure it's a good idea. I've attempted to import a catalog from a running database a few times (https://github.com/kyleconroy/sqlc/issues/657, https://github.com/kyleconroy/sqlc/pull/550, https://github.com/kyleconroy/sqlc/pull/659), but haven't attempted to make it work across all supported databases. There's also an open issue for pgx support (https://github.com/kyleconroy/sqlc/issues/472).
The biggest blocker here is the decision to rely on the running PostgreSQL instance for determining input and output types. We'd have to make some pretty big internal changes to make that work, but it wouldn't be insurmountable.

Are you okay with the name sqld? I thought it was mildly clever but I'm open to changing it.

I'm personally not a huge fan of the name. I agree that it's clever, but I think it will just cause confusion. You're free to name your project whatever you like, but I'd prefer you use the name pggen.

Possible collaboration on a future ClientTrace API similar to the Go stdlib http tracing

Very interested in exploring what a shared interface could look like. I've pointed people to https://github.com/ngrok/sqlmw in the past if they're looking to instrument all database queries.

Overall API design

This one is a bit more challenging to change. I don't want to change the default generator, as it would cause significant breaking changes for the individuals and companies already using sqlc. What I'd really like to do is make it easy for people to write their own code generators so that can pick the API design they want to use.
Good luck with your project!

The biggest blocker here is the decision to rely on the running PostgreSQL instance for determining input and output types.

Yes, this seems to be the biggest difference and it reflects different value props of both projects. I'm happy to keep the projects separate.

I'd prefer you use the name pggen.

No worries, done. https://github.com/jschaf/pggen

I've pointed people to https://github.com/ngrok/sqlmw

Oh, neat, I hadn't run across that before. I'll get codegen off the ground before taking a look at it. I'll loop you in once I get there.

I don't want to change the default generator.

Totally, no reason to break the world by changing sqlc. I was asking from the angle: if you could start afresh would you change the interface of the generated code?

Good luck with your project!

Thanks, and thank you for creating a sqlc. I can't emphasize how nice it is to have generated code with the full functionality of Postgres.

The biggest blocker here is the decision to rely on the running PostgreSQL instance for determining input and output types.

Yes, this seems to be the biggest difference and it reflects different value props of both projects. I'm happy to keep the projects separate.

I'd prefer you use the name pggen.

No worries, done. https://github.com/jschaf/pggen

I've pointed people to https://github.com/ngrok/sqlmw

Oh, neat, I hadn't run across that before. I'll get codegen off the ground before taking a look at it. I'll loop you in once I get there.

I don't want to change the default generator.

Totally, no reason to break the world by changing sqlc. I was asking from the angle: if you could start afresh would you change the interface of the generated code?

Good luck with your project!

Thanks, and thank you for creating a sqlc. I can't emphasize how nice it is to have generated code with the full functionality of Postgres.

As an interesting observation, I discovered a feature of sqlc that will prove hard to replicate: nullability tracking.  It's useful to know if an output can be null or if it's the value is always not null like SELECT coalesce(id, 'some_value') from author. It's useful because non-null values can be simpler: string vs sql.NullString.
As far as I'm aware, the only approach to determine if query output is null is to mimic sqlc and build up a type inference engine that tracks nullability.

As an interesting observation, I discovered a feature of sqlc that will prove hard to replicate: nullability tracking.  It's useful to know if an output can be null or if it's the value is always not null like SELECT coalesce(id, 'some_value') from author. It's useful because non-null values can be simpler: string vs sql.NullString.
As far as I'm aware, the only approach to determine if query output is null is to mimic sqlc and build up a type inference engine that tracks nullability.


Add dockerfile and update README

Please check the README update.  I added instruction regarding how to sign in RStudio from the local host. Please also check if the localhost link is working on your ends as well. Thank you!

Sorry I made a mistake in README file. Please check the newer version later. Thank you!


initial CRC support

I'm complete newcomer on microcontroller & stm32, so please feel free to comment.

Tested on stm32f103c8
I'm not sure how it interacts with other peripherals. For example it seems that SPI protocol requires CRC calculation. Does stm32 SPI uses CRC peripherals for CRC calculation of there's another CRC hardware dedicated to SPI CRC?
I'm not sure if I should use split or constrain.
small additional diff on prelude caused by rustfmt.

Looks good to me, thanks!

Actually, would you mind adding an entry to the Changelog.md before we merge?

@TheZoq2 I updated CHANGELOG.md :)

Lovely, thanks!


Add C++ examples to ccd-example-code.md

This C++ code shows how to use the CCD APIs with essentially the same sort of functionality demonstration as the pseudocode.

@Deadpikle,
Thanks for your contribution.
To ensure that the project team has proper rights to use your work, please complete the Contribution License Agreement at https://cla.microsoft.com.
It will cover your contributions to all Microsoft-managed open source projects.
Thanks,
Microsoft Pull Request Bot

Hi @Deadpikle thanks so much for your suggested contribution.  Please note that we can't consider it until you complete the CLA step at https://cla.microsoft.com.  We do appreciate that you took the time to make this submission, and look forward to evaluating it more closely.

@tedhudek I've signed the CLA and received the email verification from DocuSign. Is there another step I need to take?

To help diagnose this pull request will now be closed and reopened to see if the CLA is evaluated differently. Thanks.

@Deadpikle,
Thanks for having already signed the Contribution License Agreement. Your agreement has not been validated yet. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot

@Deadpikle,
We've reached out to the relevant team to review the C++ code you submitted. We expect to have this content approved at the start of the coming week. Thanks again for your contribution!

Sorry for the long delay on this.  We've decided to hold off for now, in the hopes of a future doc update that will address this issue and include the latest Windows 10 updates.


Make CCS use any kind of probes

Fix https://github.com/EleutherAI/elk/issues/7
Fix https://github.com/EleutherAI/elk/issues/18

I'll review this after #12 gets merged

Note: this change makes loading old pickled CCS fail. Maybe we should go away from pickle soon (in this PR?).

@FabienRoger I'm in favor of just turning this PR into the one that fixes #18, in which case we'd use torch.save on the module state dict


[Fastlane.swift] take into account .fastlaneDefault case when retrieving OptionalConfigValue as a ruby argument

Checklist

[x] I've run bundle exec rspec from the root directory to see all new and existing tests pass
[x] I've followed the fastlane code style and run bundle exec rubocop -a to ensure the code style is valid
[x] I've read the Contribution Guidelines
[x] I've updated the documentation if necessary.

Motivation and Context
When retrieving a OptionalConfigValue as a ruby argument, if the case is .fastlaneDefault (used for setting the values defined in configuration files such as Scanfile, MakeFile, Gymfile, Deliverfile, etc) the returned value is nil, instead of the default value.
Resolves #19196
Description
Added  .fastlaneDefault case to return the appropriate value as a RubyCommand.Argument instead of nil.
Testing Steps
Tested the use case described in the open issue. Executed scan function in swift. It works on CI and it doesn't ask to select a scheme anymore when not in CI, it takes the correct value specified on the Scanfile.

@googlebot I signed it!

@googlebot I fixed it.

@minuscorp Thanks for your comments! you mean in the declaration of scan function to have scheme: OptionalConfigValue<String?> = .userDefined(scanfile.scheme) instead of scheme: OptionalConfigValue<String?> = .fastlaneDefault(scanfile.scheme)? what would be the point of having .fastlaneDefault case then?
Sorry if I'm missing something, I'm not very familiar with the actual purpose of OptionalConfigValue 😇

Usually .fastlaneDefault aims to cover arguments where there are values coming from fastlane itself instead of configuration files. We cannot detect if the Scanfile.scheme value has a default or a user defined one at runtime nor at compile time, so I assumed that the least harmful decision could be the current implementation, but not for the issue you have raised of course, so we should always send config files values, even if they are default ones.

@minuscorp Ok, to make it clear, your suggestion is to use .userDefined in all the functions that use config file values in Fastlane.swift, instead of using .fastlaneDefault right?

Without being able to test it by myself right now, it seems to be a potential solution.


After rebooting vServer bot send weird error

2020-02-27 13:18:57 [JDA MainWS-ReadThread] WARN  net.dv8tion.jda.internal.handle.GuildSetupController  - Accumulating suspicious amounts of cached events during guild setup, something might be wrong. Cached: 8000 Members: 4/86217 Status: CHUNKING GuildId:<PHONE_NUMBER>96991498 Incomplete: 0/6
This error came when i tried to start the bot after rebooting my vserver
Edit: on my local pc it works

Please follow the actual issue template.
Also, other devs (including me) encounter this aswell and my thought is, that this is caused by a recent API change from Discord.
Disable the caching/chunking for your bot for now as a workaround.

My vserver has a bad download atm.
Thanks for helping, i contact the support from my hoster


[Search] Prepare for GA release

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

API change check
API changes are not detected in this pull request.


[FEAT]: Add mep data to data folder

Description
Add unstructured MEP data (pdf/word report?) to data folder to increase diversity of data types and team represented. Currently all our data are CSV which does not simulate real-world scenarios for data catalog use
Additional Information
No response

I added the report to the data folder. Is there anything else I should do with it?

Awesome! @DOH-KGC0303 Could you also update the last row in metadata.csv? I have a PR (#21) that moves the report you added into a subdirectory of data/ and adds that location as a connection value in metadata.csv. The rest of the values (besides Product_ID) should be filled in. You can add whatever values you feel are appropriate for each field

Closed by #27


Add benchmarks for the candle-nn package

Been doing some work on optimizing the layernorm and conv2d, figured I can get this in earlier than when I submit a PR for those!
Let me know if you have any feedback, it's essentially a copy of the core create's bench marks

Thanks!


[debian] arbitrary --user throws permission errors

tl;dr
I tried to run the example for arbitrary --user from the docs on the Debian-based container, but it threw several permission errors.
error
chmod: changing permissions of '/var/lib/postgresql/data': Operation not permitted
chmod: changing permissions of '/var/run/postgresql': Operation not permitted
The files belonging to this database system will be owned by user "www-data".
This user must also own the server process.

The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".

Data page checksums are disabled.

fixing permissions on existing directory /var/lib/postgresql/data ... initdb: error: could not change permissions of directory "/var/lib/postgresql/data": Operation not permitted

steps to reproduce
See: https://github.com/docker-library/docs/blob/master/postgres/README.md#arbitrary---user-notes
# running as root
$ docker run -it --rm --user www-data -e POSTGRES_PASSWORD=mysecretpassword postgres:bullseye

# other example
$ docker run -it --rm --user www-data:www-data -v /etc/passwd:/etc/passwd:ro -e POSTGRES_PASSWORD=mysecretpassword postgres:bullseye
$ grep www-data /etc/passwd
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin

environment
Docker version 20.10.12, build e91ed57 from Docker's repository for Debian Buster (AMD64)
analysis
Inside the container, there's already a $PGDATA directory, which belongs to user-id 999. Of course, an arbitrary user cannot run chmod or other stuff here, as stated in https://github.com/docker-library/postgres/blob/ab940cbb923af99e2c7cf0e0ba5305bc6815aecc/14/bullseye/docker-entrypoint.sh#L41
$ ls -n -a $PGDATA
total 8
drwxrwxrwx 2<PHONE_NUMBER> Dec 21 23:32 .
drwxr-xr-x 1<PHONE_NUMBER> Dec 21 23:32 ..

$ chmod 700 "$PGDATA" || :
chmod: changing permissions of '/var/lib/postgresql/data': Operation not permitted

possible fix
Add -e PGDATA=/tmp/pgdata or another directory, where the user is allowed to write OR fix permissions of current location in the image.

Yeah that error should be non-failing
https://github.com/docker-library/postgres/issues/853#issuecomment-853928725

Closing since this seems resolved, if you need further help you could also try asking over at the Docker Community Forums, Docker Community Slack, or Stack Overflow


Need vision and mission document

Positioning and messaging must have
SWAT and BMC nice to have

I'm going to need some reviewers for this. Anyone?


[store-api] Missing extensions / tags in the response when includes are enabled in the request

PHP Version
7.4.16
Shopware Version
v6.4
Expected behaviour
"extensions" property contained in the API response when includes parameter is used - for store-api endpoints
Actual behaviour
the response does not contain "extensions" property in an entity's response root object when includes parameter is used.
related issue: https://github.com/vuestorefront/shopware-pwa/issues/1593
How to reproduce
make a request for product / category with includes parameter containing some fields, and "extensions" as well, like:
{
"product": ["name", "extensions"]
}
the response does not contain "extensions"
sample curl for shopware 6 hosted on localhost:
--header 'Connection: keep-alive' \
--header 'Pragma: no-cache' \
--header 'Cache-Control: no-cache' \
--header 'sec-ch-ua: "Chromium";v="92", " Not A;Brand";v="99", "Google Chrome";v="92"' \
--header 'sec-ch-ua-mobile: ?0' \
--header 'User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.107 Safari/537.36' \
--header 'Content-Type: application/json;charset=UTF-8' \
--header 'Accept: application/json, text/plain, */*' \
--header 'sw-access-key: SWSCMGPZM1LVCK5QOHLBSMLAUQ' \
--header 'sw-include-seo-urls: true' \
--header 'sw-context-token: n2a9dPUbPUntQ0huCyuyuaaGjDVliDea' \
--header 'Origin: http://localhost:3000' \
--header 'Sec-Fetch-Site: same-site' \
--header 'Sec-Fetch-Mode: cors' \
--header 'Sec-Fetch-Dest: empty' \
--header 'Referer: http://localhost:3000/' \
--header 'Accept-Language: pl-PL,pl;q=0.9,en-US;q=0.8,en;q=0.7,nb;q=0.6,cs;q=0.5,de;q=0.4' \
--data-raw '{
    "includes": {
        "product": [
            "name",
            "extensions"
        ]
    }
}'```

Will there still be updates for Shopware 6.4? or is this applicable for 6.6 as well?

@JoshuaBehrens @mkucmus This problem can be solved when looking at the docs: https://shopware.stoplight.io/docs/store-api/cf710bf73d0cd-search-queries
So just use the name of the extension directly in the "includes" definition. Then it will work :)

tl;dr

Always add both extensions and the desired extension itself to the includes of an entity.
includes for responded extensions only works when using JSON:API, not plain JSON.

I can confirm that this behavior still exists in Shopware <IP_ADDRESS> (tested with the Admin API).

So just use the name of the extension directly in the "includes" definition. Then it will work :)

This makes it work, yes. The exact behavior depends on the content type though, because application/json and application/vnd.api+json (JSON:API) don't show consistent behavior here.
Let's start with a simple request containing includes without extensions:
POST /api/search/product

{
    "includes": {
        "product": [
            "id",
            "name"
        ]
    },
    "limit": 1
}

Responses:

application/vnd.api+json{
    "data": [
        {
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "type": "product",
            "attributes": {
                "name": "Rustic Plastic Tyrannosaurus Rocks!"
            },
            "relationships": []
        }
    ],
    "included": []
}

application/json{
    "data": [
        {
            "name": "Rustic Plastic Tyrannosaurus Rocks!",
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "apiAlias": "product"
        }
    ]
}

Now we add the pickwareErpPickwareProduct extension to the includes of product.
POST /api/search/product

{
    "includes": {
        "product": [
            "id",
            "name",
            "pickwareErpPickwareProduct"
        ]
    },
    "associations": {
        "pickwareErpPickwareProduct": {}
    },
    "limit": 1
}

The responses look like this:

application/vnd.api+json{
    "data": [
        {
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "type": "product",
            "attributes": {
                "name": "Rustic Plastic Tyrannosaurus Rocks!"
            },
            "relationships": {
                "extensions": {
                    "data": {
                        "type": "extension",
                        "id": "01920bd1436c71f18ee67ac11387c4df"
                    }
                }
            }
        }
    ],
    "included": [
        {
            "id": "75e0550447754663899784e1cbf76d33",
            "type": "pickware_erp_pickware_product",
            "attributes": {
                "productId": "01920bd1436c71f18ee67ac11387c4df",
                "productVersionId": "0fa91ce3e96a4bc2be4bd9ce752c3425",
                "reorderPoint": 300,
                "reservedStock": 3,
                "stockNotAvailableForSale": 0,
                "incomingStock": 0,
                "isStockManagementDisabled": false,
                "createdAt": "2024-09-19T19:45:44.024+00:00",
                "updatedAt": "2024-09-19T19:46:44.256+00:00"
            },
            "relationships": {}
        },
        {
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "type": "extension",
            "attributes": {},
            "relationships": {
                "pickwareErpPickwareProduct": {
                    "data": {
                        "type": "pickware_erp_pickware_product",
                        "id": "75e0550447754663899784e1cbf76d33"
                    }
                }
            }
        }
    ]
}

application/json{
    "data": [
        {
            "name": "Rustic Plastic Tyrannosaurus Rocks!",
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "apiAlias": "product"
        }
    ]
}

As we can see, the included extension pickwareErpPickwareProduct (and also the extensions relationship) is responded for content type application/vnd.api+json but not for application/json. Adding also extensions to the includes makes this work.
POST /api/search/product

{
    "includes": {
        "product": [
            "id",
            "name",
            "pickwareErpPickwareProduct",
            "extensions"
        ]
    },
    "associations": {
        "pickwareErpPickwareProduct": {}
    },
    "limit": 1
}

Responses:

application/vnd.api+json (same as above){
    "data": [
        {
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "type": "product",
            "attributes": {
                "name": "Rustic Plastic Tyrannosaurus Rocks!"
            },
            "relationships": {
                "extensions": {
                    "data": {
                        "type": "extension",
                        "id": "01920bd1436c71f18ee67ac11387c4df"
                    }
                }
            }
        }
    ],
    "included": [
        {
            "id": "75e0550447754663899784e1cbf76d33",
            "type": "pickware_erp_pickware_product",
            "attributes": {
                "productId": "01920bd1436c71f18ee67ac11387c4df",
                "productVersionId": "0fa91ce3e96a4bc2be4bd9ce752c3425",
                "reorderPoint": 300,
                "reservedStock": 3,
                "stockNotAvailableForSale": 0,
                "incomingStock": 0,
                "isStockManagementDisabled": false,
                "createdAt": "2024-09-19T19:45:44.024+00:00",
                "updatedAt": "2024-09-19T19:46:44.256+00:00"
            },
            "relationships": {}
        },
        {
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "type": "extension",
            "attributes": {},
            "relationships": {
                "pickwareErpPickwareProduct": {
                    "data": {
                        "type": "pickware_erp_pickware_product",
                        "id": "75e0550447754663899784e1cbf76d33"
                    }
                }
            }
        }
    ]
}

application/json{
    "data": [
        {
            "extensions": {
                "pickwareErpPickwareProduct": {
                    "_uniqueIdentifier": "75e0550447754663899784e1cbf76d33",
                    "versionId": null,
                    "translated": [],
                    "createdAt": "2024-09-19T19:45:44.024+00:00",
                    "updatedAt": "2024-09-19T19:46:44.256+00:00",
                    "productId": "01920bd1436c71f18ee67ac11387c4df",
                    "product": null,
                    "reorderPoint": 300,
                    "incomingStock": 0,
                    "reservedStock": 3,
                    "stockNotAvailableForSale": 0,
                    "isStockManagementDisabled": false,
                    "id": "75e0550447754663899784e1cbf76d33",
                    "productVersionId": "0fa91ce3e96a4bc2be4bd9ce752c3425"
                }
            },
            "name": "Rustic Plastic Tyrannosaurus Rocks!",
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "apiAlias": "product"
        }
    ]
}

Interestingly, defining includes for the extension entity (i.e. pickwareErpPickwareProduct) does not work at all when using application/json. For application/vnd.api+json it works as expected.
POST /api/search/product

{
    "includes": {
        "product": [
            "id",
            "name",
            "pickwareErpPickwareProduct",
            "extensions"
        ],
        "pickware_erp_pickware_product": [
            "isStockManagementDisabled"
        ]
    },
    "associations": {
        "pickwareErpPickwareProduct": {}
    },
    "limit": 1
}

The responses now look like this:

application/vnd.api+json{
    "data": [
        {
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "type": "product",
            "attributes": {
                "name": "Rustic Plastic Tyrannosaurus Rocks!"
            },
            "relationships": {
                "extensions": {
                    "data": {
                        "type": "extension",
                        "id": "01920bd1436c71f18ee67ac11387c4df"
                    }
                }
            }
        }
    ],
    "included": [
        {
            "id": "75e0550447754663899784e1cbf76d33",
            "type": "pickware_erp_pickware_product",
            "attributes": {
                "isStockManagementDisabled": false
            },
            "relationships": {}
        },
        {
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "type": "extension",
            "attributes": {},
            "relationships": {
                "pickwareErpPickwareProduct": {
                    "data": {
                        "type": "pickware_erp_pickware_product",
                        "id": "75e0550447754663899784e1cbf76d33"
                    }
                }
            }
        }
    ]
}

application/json (same as above){
    "data": [
        {
            "extensions": {
                "pickwareErpPickwareProduct": {
                    "_uniqueIdentifier": "75e0550447754663899784e1cbf76d33",
                    "versionId": null,
                    "translated": [],
                    "createdAt": "2024-09-19T19:45:44.024+00:00",
                    "updatedAt": "2024-09-19T19:46:44.256+00:00",
                    "productId": "01920bd1436c71f18ee67ac11387c4df",
                    "product": null,
                    "reorderPoint": 300,
                    "incomingStock": 0,
                    "reservedStock": 3,
                    "stockNotAvailableForSale": 0,
                    "isStockManagementDisabled": false,
                    "id": "75e0550447754663899784e1cbf76d33",
                    "productVersionId": "0fa91ce3e96a4bc2be4bd9ce752c3425"
                }
            },
            "name": "Rustic Plastic Tyrannosaurus Rocks!",
            "id": "01920bd1436c71f18ee67ac11387c4df",
            "apiAlias": "product"
        }
    ]
}

IMHO this inconsistent behavior is a bug. But luckily we have workarounds.

[public] Shopware automated response: This issue is linked to the internal issue: NEXT-38971
[created from NEXT-38971, comment 503593]


python39Packages.notmuch: Fix build

Motivation for this change
Fix #132567
The most recent update to the notmuch package switched src from the git repo to the source tarball release, which changed the value of src.name from "notmuch" to "notmuch-0.32.2.tar.xz". As passthru.pythonSourceRoot uses this value, it was using a non-existent directory as its source root.
This change exports pythonSourceRoot using the actual root directory of the source tarball, which is notmuch-${version}.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Relase notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 132592 run on x86_64-linux 1

6 packages built:

afew
alot
lieer (gmailieer)
python38Packages.alot
python38Packages.notmuch
python39Packages.notmuch


Added Y412 format (12bit YUV444 ) support for HEVC-12 main444 decode

Added 12bit YUV444 support for HEVC-12 main444 decode and gst-msdk implementation

root@8f8578038cd1:/home/focus/workspace_focus/vaapi-fits# ./vaapi-fits run test/self/formats.py --pl=TGL -k fmt=Y412
27 tests collected
test/self/formats.py ...........................  PASS
======================================= Session ended. 27 successful, 0 skipped, 0 failed, 0 erroneous. Total duration: 00:00:02 ========================================
root@8f8578038cd1:/home/focus/workspace_focus/vaapi-fits#

Please submit a patch to https://github.com/intel-media-ci/gst-checksumsink/blob/master/gstchecksumsink.c to add support for Y412_LE format.  Also, it appears P012_LE is missing from checksumsink2, too.

The Y412_LE and P012_LE were supported in https://github.com/xhaihao/gst-checksumsink.
@uartie @zhoujd do you happen to know what's the difference between the https://github.com/intel-media-ci/gst-checksumsink and https://github.com/xhaihao/gst-checksumsink
I remembered that the media-ci is using the mirror of https://github.com/xhaihao/gst-checksumsink for gst-checksumsink

The media ci uses https://github.com/intel-media-ci/gst-checksumsink/blob/master/gstchecksumsink.c

In theory, the intel-media-ci gst-checksumsink fork will allow us to have multiple "maintainers" from our team to manage pull-requests/changes to support CI.  Whereas, xhaihao and ceyusa forks are limited to a single maintainer.  If either one of those maintainers are unavailable (e.g. vacation), then we shouldn't have to wait for them to respond.
Unfortunately, it looks like gst-checksumsink for intel-media-ci is forked from xhaihao .  And xhaihao is forked from ceyusa.  Instead, I think  intel-media-ci should be forked from ceyusa.  We need to fix that and apply all of xhaihao extra patches to intel-media-ci.  And all future patches from us should be submitted to intel-media-ci, including patches by @xhaihao

I see, thanks Artie, I rebased Haihao's patch into intel-media-ci and am trying to some sanity testing against intel-media-ci gst-checksumsink. If no issue found, then will submit the rebased intel-media-ci commits into the intel-media-ci master

I have already pushed @xhaihao patches to intel-media-ci fork and changed it to be a fork from ceyusa

Good, thanks @uartie


Memory leak caused by @tool scripts can crash the editor

Tested versions
Very likely to appear in all 4.x Godot versions
System information
Godot v4.3.rc1.mono - Windows 10.0.19045 - Vulkan (Mobile) - Memory 31.8GiB
Issue description
[I used a translation tool] I mistakenly wrote code that could cause a memory leak. When I was testing the game, it caused the editor to crash. When I tried to restart the project again, the editor crashed again. After a period of investigation, I found that the problem was caused by a file with the @tool tag. Delete @tool and write code correctly will solve it.
But I would like to make a suggestion, can we ensure that the editor is not killed by the system when memory leak occurs ( Just stop the game related calculations and rendering ) , and remind the user of the memory leak issue to avoid troubleshooting for more than 20 minutes like I did.
Steps to reproduce
Simply put,
1> Writing can cause memory leaks
2> Add an evil @ tool tag at the beginning of the file
3> Try to have the editor run this file. If you don't remove the @ tool tag, your project will never start
Minimal reproduction project (MRP)
N/A

This is not specific enough, please upload an MRP to make this possible to test:

A small Godot project which reproduces the issue, with no unnecessary files included. Be sure to not include the .godot folder in the archive (but keep project.godot).
Having an MRP is very important for contributors to be able to reproduce the bug in the same way that you are experiencing it. When testing a potential fix for the issue, contributors will use the MRP to validate that the fix is working as intended.
Drag and drop a ZIP archive to upload it (max 10 MB). Do not select another field until the project is done uploading.
Note for C# users: If your issue is not C#-specific, please upload a minimal reproduction project written in GDScript. This will make it easier for contributors to reproduce the issue locally as not everyone has a .NET setup available.

Closing due to lack of response, if you provide the requested information this can be reopened


You move at mach 5 after rejuvenating from starvation death.

This looks like it happens because the RejuvenateVerb calls both ResetThirst(); and ResetHunger(); on both the HungerComponent and ThirstComponent. And the math that those components do causes this. Why not collapse thirst component into hunger component anyway?


Update specs2-core, specs2-scalacheck to 4.13.3

Updates

org.specs2:specs2-core
org.specs2:specs2-scalacheck

from 4.12.12 to 4.13.3.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.specs2" } ]

labels: test-library-update, early-semver-minor, semver-spec-minor, commit-count:1

Superseded by #109.


[Feature]: Address Field

What is the feature?
Hi,
Would it be possible to add 1 more address field?
Example:
Street, neighborhood and complement, for apartments and commercial rooms.
Thanks.
Version
3.2.x

This issue will be closed and archived in 3 days, as there has been no activity in the last 60 days. If this issue is still relevant or you would like to see it actioned, please respond and we will re-open this issue. If this issue is critical to your business, consider the Dedicated Support Service where a Service Level Agreement is offered.


Issue When enabling JMX port

I tried to enable JMX port in order to install tabmon, but unfortunately I'm getting stuck  with enabling JMX port.
When I enabled JMX port, the dataserver process on both our workers went down.
Initially it was because of port conflict, I changed the default port of dataserver processes to 9750 & 9751 and still the issue persist if I enable JMX port.
Please help me to identify where I'm going wrong.
Thanks,
Shoba

Hey Shobananpa -
It sounds like you're describing an issue with Tableau Server, not Tabmon. Please open a support case with Tableau Support and/or leverage the User Forums to resolve this :)

Hi,
Below is the Tabmon log file.
I replaced the server name as PrimaryGateway
Could someone please let me know where we are going wrong.
TABMON Log File
2016-05-04 11:59:43,144 [5] INFO TabMon.Config.TabMonConfigReader - Loading TabMon user configuration..
2016-05-04 11:59:43,441 [5] DEBUG TabMon.Config.TabMonConfigReader - Loading database configuration..
2016-05-04 11:59:43,441 [5] INFO TabMon.Config.TabMonConfigReader - Connecting to results database..
2016-05-04 11:59:45,082 [5] DEBUG TabMon.Helpers.HostnameHelper - Successfully resolved 'localhost' to 'PrimaryGateway'.
2016-05-04 11:59:45,160 [5] INFO TabMon.Config.TabMonConfigReader - Successfully loaded TabMon config options! [Host='Primary\PrimaryGateway', Writer='Database Writer (Postgres Driver)', PollInterval='30', TableName='countersamples']
2016-05-04 11:59:45,160 [5] INFO TabMon.TabMonAgent - Initializing TabMon..
2016-05-04 11:59:45,160 [5] INFO TabMon.TabMonAgent - Loading performance counters from C:\Program Files (x86)\TabMon\Config\Counters.config..
2016-05-04 11:59:45,691 [5] DEBUG TabMon.CounterConfig.CounterConfigLoader - Successfully validated 'Config\Counters.config' against 'Resources\CountersConfig.xsd'.
2016-05-04 11:59:45,691 [5] DEBUG TabMon.CounterConfig.CounterConfigLoader - Loading Perfmon counters..
2016-05-04 11:59:47,113 [5] INFO TabMon.CounterConfig.CounterConfigLoader - Loaded 62 Perfmon counters on PrimaryGateway.
2016-05-04 11:59:47,113 [5] DEBUG TabMon.CounterConfig.CounterConfigLoader - Loading MBean counters..
2016-05-04 11:59:47,113 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 8900-8999 on PrimaryGateway..
2016-05-04 11:59:49,457 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Encountered closed JMX port (8900), stopping scan.
2016-05-04 11:59:49,457 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 9400-9499 on PrimaryGateway..
2016-05-04 11:59:50,472 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Encountered closed JMX port (9400), stopping scan.
2016-05-04 11:59:50,472 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 10000-10299 on PrimaryGateway..
2016-06-08 12:08:56,716 [5] INFO TabMon.Config.TabMonConfigReader - Loading TabMon user configuration..
2016-06-08 12:08:56,857 [5] DEBUG TabMon.Config.TabMonConfigReader - Loading database configuration..
2016-06-08 12:08:56,857 [5] INFO TabMon.Config.TabMonConfigReader - Connecting to results database..
2016-06-08 12:08:58,482 [5] DEBUG TabMon.Helpers.HostnameHelper - Successfully resolved 'localhost' to 'PrimaryGateway'.
2016-06-08 12:08:58,935 [5] INFO TabMon.Config.TabMonConfigReader - Successfully loaded TabMon config options! [Host='Primary\PrimaryGateway', Writer='Database Writer (Postgres Driver)', PollInterval='30', TableName='countersamples']
2016-06-08 12:08:58,935 [5] INFO TabMon.TabMonAgent - Initializing TabMon..
2016-06-08 12:08:58,935 [5] INFO TabMon.TabMonAgent - Loading performance counters from C:\Program Files (x86)\TabMon\Config\Counters.config..
2016-06-08 12:08:59,669 [5] DEBUG TabMon.CounterConfig.CounterConfigLoader - Successfully validated 'Config\Counters.config' against 'Resources\CountersConfig.xsd'.
2016-06-08 12:08:59,669 [5] DEBUG TabMon.CounterConfig.CounterConfigLoader - Loading Perfmon counters..
2016-06-08 12:09:02,154 [5] INFO TabMon.CounterConfig.CounterConfigLoader - Loaded 60 Perfmon counters on PrimaryGateway.
2016-06-08 12:09:02,154 [5] DEBUG TabMon.CounterConfig.CounterConfigLoader - Loading MBean counters..
2016-06-08 12:09:02,169 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 8900-8999 on PrimaryGateway..
2016-06-08 12:09:04,748 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Encountered closed JMX port (8900), stopping scan.
2016-06-08 12:09:04,763 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 9400-9499 on PrimaryGateway..
2016-06-08 12:09:05,779 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Encountered closed JMX port (9400), stopping scan.
2016-06-08 12:09:05,779 [5] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 10000-10299 on PrimaryGateway..
2016-06-08 15:22:21,232 [5] INFO TabMon.Config.TabMonConfigReader - Loading TabMon user configuration..
2016-06-08 15:22:21,591 [5] DEBUG TabMon.Config.TabMonConfigReader - Loading database configuration..
2016-06-08 15:22:21,591 [5] INFO TabMon.Config.TabMonConfigReader - Connecting to results database..
2016-06-08 15:22:25,517 [5] FATAL TabMon.Config.TabMonConfigReader - Could not initialize writer: Failed to establish a connection to 'localhost'.
2016-06-08 15:22:25,533 [5] DEBUG TabMon.Helpers.HostnameHelper - Successfully resolved 'localhost' to 'PrimaryGateway'.
2016-06-08 15:22:25,829 [5] FATAL TabMon.Config.TabMonConfigReader - Invalid options in configuration: [Host='Primary\PrimaryGateway', Writer='null', PollInterval='30', TableName='countersamples']
2016-06-08 15:22:25,829 [5] INFO TabMon.TabMonAgent - Initializing TabMon..
2016-06-08 15:22:25,829 [5] FATAL TabMon.TabMonAgent - Invalid TabMon options specified!
Aborting..
2016-06-08 15:22:25,829 [5] FATAL Topshelf.Runtime.Windows.WindowsServiceHost - The service did not start successfully
Topshelf.TopshelfException: The service did not start successfully (returned false).
at Topshelf.Runtime.Windows.WindowsServiceHost.OnStart(String[] args)
2016-06-08 15:46:50,229 [1] INFO TabMon.Config.TabMonConfigReader - Loading TabMon user configuration..
2016-06-08 15:46:50,260 [1] DEBUG TabMon.Config.TabMonConfigReader - Loading database configuration..
2016-06-08 15:46:50,260 [1] INFO TabMon.Config.TabMonConfigReader - Connecting to results database..
2016-06-08 15:46:50,604 [1] DEBUG TabMon.Helpers.HostnameHelper - Successfully resolved 'localhost' to 'PrimaryGateway'.
2016-06-08 15:46:50,604 [1] INFO TabMon.Config.TabMonConfigReader - Successfully loaded TabMon config options! [Host='Primary\PrimaryGateway', Writer='Database Writer (Postgres Driver)', PollInterval='30', TableName='countersamples']
2016-06-08 15:46:50,604 [1] INFO TabMon.TabMonAgent - Initializing TabMon..
2016-06-08 15:46:50,604 [1] INFO TabMon.TabMonAgent - Loading performance counters from C:\Program Files (x86)\TabMon\Config\Counters.config..
2016-06-08 15:46:50,963 [1] DEBUG TabMon.CounterConfig.CounterConfigLoader - Successfully validated 'Config\Counters.config' against 'Resources\CountersConfig.xsd'.
2016-06-08 15:46:50,963 [1] DEBUG TabMon.CounterConfig.CounterConfigLoader - Loading Perfmon counters..
2016-06-08 15:46:52,744 [1] INFO TabMon.CounterConfig.CounterConfigLoader - Loaded 62 Perfmon counters on PrimaryGateway.
2016-06-08 15:46:52,744 [1] DEBUG TabMon.CounterConfig.CounterConfigLoader - Loading MBean counters..
2016-06-08 15:46:52,776 [1] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 8900-8999 on PrimaryGateway..
2016-06-08 15:46:54,822 [1] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Encountered closed JMX port (8900), stopping scan.
2016-06-08 15:46:54,822 [1] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 9400-9499 on PrimaryGateway..
2016-06-08 15:46:55,838 [1] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Encountered closed JMX port (9400), stopping scan.
2016-06-08 15:46:55,838 [1] DEBUG TabMon.Counters.MBean.MBeanClientFactory - Scanning JMX ports 10000-10299 on PrimaryGateway..
Thanks,
Shoba

Hi shobananpa,
It looks like TabMon started up correctly, but the Tableau Server JMX ports were not open.  As Russell mentioned, if you are unable to open JMX ports then unfortunately you are going to have to work with Tableau Support on successfully opening them.

Hi,
Tableau support helped us to resolve this port issue. we can close this now
Thanks,
Shoba

hello shobananpa,
Can you please write down,how did the support try opening the JMX ports.
Regards,
Sudhakar Reddy


Debug server code [Question]

Versions
    _                      _                 ____ _     ___
   / \   _ __   __ _ _   _| | __ _ _ __     / ___| |   |_ _|
  / △ \ | '_ \ / _` | | | | |/ _` | '__|   | |   | |    | |
 / ___ \| | | | (_| | |_| | | (_| | |      | |___| |___ | |
/_/   \_\_| |_|\__, |\__,_|_|\__,_|_|       \____|_____|___|
               |___/

Angular CLI: 1.5.3
Node: 9.2.0
OS: win32 x64
Angular: 5.0.1
... animations, common, compiler, compiler-cli, core, forms
... http, language-service, platform-browser
... platform-browser-dynamic, router

@angular/cdk: 2.0.0-beta.12
@angular/cli: 1.5.3
@angular/flex-layout: 2.0.0-beta.10
@angular/material: 2.0.0-beta.12
@angular/platform-server: 5.0.2
@angular-devkit/build-optimizer: 0.0.32
@angular-devkit/core: 0.0.20
@angular-devkit/schematics: 0.0.35
@ngtools/json-schema: 1.1.0
@ngtools/webpack: 1.8.3
@schematics/angular: 0.1.1
typescript: 2.4.2
webpack: 3.8.1

Repro steps
Build Universal app with:

ng build --app 1 --prod --output-hashing=false etc.
Launch dist/server.js
Attach VS Code to server process
Debug specific server code (isPlatformServer blocks)

Observed behavior
When I try to debug server code, the only way I found, is trough "server/main.bundle.js" file, that is minified and hard to debug.
I tried : ng build --app 1 --prod --output-hashing=false --sourcemaps=true --build-optimizer=false
but nothing changes, (there is not source maps for main.bundle.js)
Desired behavior
Waiting for ng serve for platform server, is there a more confortable way to debug on server?

Have you see this?
https://github.com/Microsoft/vscode-recipes/tree/master/Angular-CLI

I'm talking about Aungular universal app.
So I need to debug server app main.bundle.js in dist/server folder that is minified and without source map.
Specifically the code running in isPlatformServer blocks.
if (isPlatformServer(this.platformId)) {
     // Server only code.
     ...
   }

For support requests, we'd recommend to use Gitter or StackOverflow. In case I've misunderstood, please consider opening a new issue following the template and providing a demo where we can reproduce the problem. Thank you! :)


Monitored endpoints cannot be deleted (even if the endpoint does not exist anymore)

nrpe checks are created for each of the discovered endpoints in the Keystone catalog. Currently, monitored endpoints can be disabled per type (admin, public, internal).
However, if a service is removed from the catalog, checks won't be configurable anymore because keystone_client.endpoint.list() won't discover them.
An action should be created to "update-endpoint-checks". The catalog would be parsed again, and missing endpoints would get their checks removed. This reconfiguration will also take into consideration if check_{admin,internal,public}_urls config parameters are enabled or not.

(by xavpaice)
Re-tested this following release of the patch, but the bug is still not fixed - tested by deploying a cloud, removing an application, removing the endpoints, and the checks are still there.  Re-opening bug as a result.
FWIW, changes to existing endpoints do get notified and reflected in the checks (e.g. a hostname change in the endpoint).


Featured

I think it would be interesting to implement the Methods:
"getCARDNumberString",
"getCARDNumberHEX"
"getCARDNumberInt"
and the same for the wiegand bits:
"getBitsString",
"getBitsInt"
I think this would greatly facilitate the extraction of CardID to pesones, which is harder for the programming.

Yes, that's a good idea

By "getBitsString" you expect a string of 0s and 1s?

Xdd no, us an error, xdd tksssEl 8 abr. 2019 16:11, Paulo Costa<EMAIL_ADDRESS>escribió:By "getBitsString" you expect a string of 0s and 1s?
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or mute the thread.

What?!

getBitsString It is not necessary, it was a mistake when I made Copy & Paste.

Same as #13


Force protobuf version to prevent Java-7 issue

Description
aapt2-proto depends on protobuf-java 3.10.0 which is broken in Java-7 (Android only). This PR fixes the issue by updating proto-buf to 3.11.4

Hi @skylot,
I am commenting here because the issue is related. It is necessary to apply some more fixes to get the core library to work in Android API < 26. I have studied a little and found that in older API (with desugaring enabled), mostly .forEach() and List.sort() methods are a problem. In my fork, I have created a utlity class namely CompatUtils which provides compatibility for the .forEach() and related classes, (and for List.sort(), Collections#sort() can be used). If the patch (the patch hasn't been published yet) is merged to this repo, then it would be easier for me to maintain an Android-specific fork of Jadx. Let me know what you think.
TIA.

@MuntashirAkon I have several concerns about your request:

Using jadx on Android will be hard because jadx uses lots of memory and will hit app memory limit very fast
Jadx can be compiled with Java 8 only features, and D8 can desugar all these features to a working code
Actual problem is that jadx uses java.nio and it is not supported by Android below API 26. And I don't think I want to rewrite all code to remove all NIO API.

So as conclusion: I don't recommend using jadx library on Android and for now it is only work for Android API >= 26.

Using jadx on Android will be hard because jadx uses lots of memory and will hit app memory limit very fast

Jadx can have interesting use-cases. For example, converting a single Smali file to Java can be useful while exploring an APK. In one of my app (App Manager), I offer this feature using jadx-core and jadx-dex-input libraries. Simple features such as these do not consume much memory. There are also other apps that offer this using Jadx (but they are closed source).

Jadx can be compiled with Java 8 only features, and D8 can desugar all these features to a working code

Apparently, it can't. I have run lint checks and found the issues that I have mentioned earlier. I have already fixed all the issues by creating compat classes in my end.

Actual problem is that jadx uses java.nio and it is not supported by Android below API 26. And I don't think I want to rewrite all code to remove all NIO API.

I think you should, at least, consider replacing it with more abstract I/O API. For example, I also maintain an Android-specific fork of the AOSP's apksig library supporting API 21 and later. In this library, they have used DataSource which abstracts the underlying FileDescriptor, File*Stream, FileChannel, RandomAccessFile. In this case, you could also use an abstraction similar to AndroidX's DocumentFile to handle file management. I think this design will be fruitful in the future as new ideas will build up. While refactoring the code, I haven't found any special use (for example, random access of the file contents) of the java.nio or File API that cannot be replaced by an abstraction. (java.nio is already a good abstraction over any file system, but having a custom abstraction would surely make things more precise and clear about how files are managed.)
In my fork, I've been successfully able to remove all the java.nio dependencies from the jadx-core library. It isn't much difficult right now but it could be in the future.