Undefined variables in psiflow.utils

https://github.com/molmod/psiflow/blob/e011c2b1712396d61550717fb6e30c7b75aec290/psiflow/utils.py#L393-L409
In the _check_distances() function, it looks like NullState is not imported and therefore not defined. Similarly, FlowAtoms in compute_error() is not defined.
Could you provide some insight on where they are being imported, assuming it's not an error?

The tests pass so it certainly works, but I don't understand why. Also the numpy import is not done properly. One way or another, the namespace inside a python_app gets contaminated with general pytest/psiflow imports I think. It's not a problem, but I agree it's a little ugly.

When you start a pytest run, during the collection phase it imports all the modules from your tests that are accessible by the collection. So, it is possible that this is why your tests are passing. Either way, the current approach seems a bit risky. It's probably better to just add the missing imports.


interesting visualization effect/bug

Hi
I have defined a python layer to calculate a new loss, all works fine but I get these strange curves
it looks like there is a bug in the visualization? or maybe the loss is sometimes just not calculated?
I use exclude{stage: "deploy"  }  for these layers.

I figured out that those wholes are maybe caused by none values
is there a way to see such cases for better debugging?

Can you attached your caffe_output.log? I think I've seen similar things in cases where there was too much output coming out of Caffe.

I figured out that those wholes are maybe caused by none values

Yep, probably.
FWIW, I actually think that DIGITS and the graphing library is handling this pretty well!

@gheinrich good idea to check the caffe_output.log
Actually it seems that the since I am printing out some values from my python script, this simply makes the above graph not to be drawn currently!!
So I commented my "print loss" line in the python script and the graph is now whithout the wholes
Is it the behavior we want from DIGITS?
attached is the log file
caffe_output (1).txt

Yes, the things that you print during training (either in your script or in Caffe) can confuse the log parser in DIGITS so use debug prints with care.

Thanks @gheinrich
by the way, do you have any idea why my loss is increasing (the blue curve)?
also my training loss is much higher than my val loss (green curve)
I am trying to implement the dice loss with the backward included.
I couldn't find the backward implementation from your scripts

do you have any idea why my loss is increasing (the blue curve)?
also my training loss is much higher than my val loss (green curve)

It is difficult to say... it's always good to check your data.

I am trying to implement the dice loss with the backward included.
I couldn't find the backward implementation from your scripts

There is an implementation of the backward pass for Dice there:
https://github.com/faustomilletari/VNet/blob/master/pyLayer.py#L55-L66

Thanks, yes I am using a similar implementation.
it is confusing at this time :)


Improve memory utilization in the pure Java path

This improves the general case by allocating small re-used primitive arrays and passing them up the stack into blockmix_salsa8 and salsa20_8. Unfortunately even jdk7 doesn't seem to stack allocate these. Taking this one step further I make all major buffers class fields for a near constant memory profile.
Also fixed the exceptions thrown when running on Windows.
Here is a "bad case" performance difference, measured over loops of 10 averaged in runs of 50 on i7-3930K which shows gains as little as 2-3%. It's possible to create N,r,p combinations like 256,16,1 which greatly exaggerate the performance difference.
columns: N, r, p, ave(50) nanos per invocation, ave(50) bytes delta per loop of 10
Round 1
8192    8       1       7.677132172E7   4.802926571428572E7
8192    9       1       8.593538972E7   5.843984088888889E7
8192    10      1       9.526296554E7   6.4078846666666664E7
8192    11      1       1.0436935362E8  5.68130032E7
16384   8       1       1.501082958E8   6.402281548387097E7
16384   9       1       1.6824245094E8  9.790573938461539E7
16384   10      1       1.871972998E8   1.1331258633333333E8
16384   11      1       2.0516909732E8  1.4749913933333334E8
32768   8       1       2.9725410802E8  1.3370965007407407E8
32768   9       1       3.3364132114E8  1.43921864E8
32768   10      1       3.7131039344E8  1.539255297142857E8
32768   11      1       4.0709769344E8  2.3783391292307693E8
Round 2 - extract int arrays B32, x to parent blockmix_salsa8
driving down memory pressure
8192    8       1       7.541511396E7   10606.56
8192    9       1       8.39292394E7<PHONE_NUMBER>7959183
8192    10      1       9.383809952E7   2207950.6666666665
8192    11      1       1.0252205956E8  3988968.0
Round 3 - extract arrays X, B32, x to parent smix
further driving down memory pressure
8192    8       1       7.567288484E7<PHONE_NUMBER>142857
8192    9       1       8.426645256E7   209807.2
8192    10      1       9.396060928E7<PHONE_NUMBER>6666666
8192    11      1       1.072375194E8   209822.72
16384   8       1       1.4782262128E8  6826663.0
16384   9       1       1.6573762662E8  419523.04
Round 4 - extract working arrays B, XY, V into class fields
very close to a constant memory profile
8192    8       1       7.534449092E7<PHONE_NUMBER>0612245
8192    9       1       8.486543134E7   46.53061224489796
8192    10      1       9.311034794E7   53.06122448979592
8192    11      1       1.0058963958E8  46.53061224489796
16384   8       1       1.474089465E8   46.53061224489796
16384   9       1       1.6655495584E8  46.53061224489796
16384   10      1       1.8330988716E8  46.53061224489796
16384   11      1       1.9819719774E8  46.53061224489796
32768   8       1       2.9227427122E8  46.53061224489796
32768   9       1       3.3014280414E8  46.53061224489796
32768   10      1       3.6368373274E8  46.53061224489796
32768   11      1       3.934064224E8   46.53061224489796

Hi Karl,
Thanks for the pull request, and the bug report regarding initialization failure on unsupported platforms! I've released version 1.2.1 which fixes the bug in a different way.
Unfortunately I cannot accept your commit because it conflicts with some other work I'm doing, and I don't intend to support long-lived instances of the SCrypt class in this manner.
For performance you should definitely look into taking advantage of the native C implementation, in my tests it's about 4x faster than the pure Java version and only allocates the final output byte[] on the Java heap.
-Will

Thanks very much for looking at the pull and providing feedback on this.
Most of the performance gain comes from dredging X, B32, and x up into the smix method. If you can accomplish anything like that it results in much less memory pressure on the JVM. Unfortunately even jdk7 doesn't handle these as non-escaping references so they end up showing as heap allocations, making an impact on total system memory measurements.
This would be a very important improvement for embedded devices which cannot use native code. (for example silly things like Android tarsnap or litecoin clients)
From what I can see, creating all the buffers inside smix will still allow you to multithread the java implementation and execute each p run simultaneously.
I completely understand your reasoning on the SCrypt instancing and I went back to run some tests to make sure that instancing didn't slow down my cases, but unfortunately it did! I don't want to force anyone to hold object instances to avoid a slowdown. Please disregard that part and consider moving all buffer allocation up into smix. I can update this pull request if we can find consensus.

Thanks for the suggestion! I benchmarked moving all allocation up to the scryptJ method, and it was indeed ~10% faster on 1.6 (Mac OS X 10.7, 64-bit JVM, build 1.6.0_29-b11-402-11M3527). Surprisingly however doing that results in a 10% slowdown on 1.7 (build 1.7.0-ea-b220).
These changes won't help the typical case on a client platform like Android because usually you'd only invoke it once, to derive a key from a password. However server performance is a concern as many concurrent requests may need to be processed efficiently, so I wouldn't want to reduce performance on Java 1.7.
Of course the litecoin use case is a bit different. You've interested me in attempting to build the native library for Android! I'll try to find some time in the near future.

Thanks, I'll check my results on jdk7.

Ok! I've improved the shared library build process and added the non-SSE2 C implementation of scrypt. It builds cleanly with the NDK and looks good on my Nexus S: with params N = 16384, r = 8, p = 1 the native implementation is about 13x faster.


Swap uglify for terser

While working on: https://github.com/PrismJS/prism/pull/2868
I noticed that the existing build system does not support const or let.
This PR removes uglify,  which does not support ES6+, and replaces it with terser via https://www.npmjs.com/package/gulp-terser
Depending on Prism's browser support policy this will force a breaking change.
This PR is split into two commits:

the meaningful changes
npm run build

I noticed that the existing build system does not support const or let.

This isn't a technical limitation but an intentional choice. Prism v1.x is an ES5 project to support older browsers such as IE11. (I know that IE11 actually supports some ES6 features (such as let and const) but it is a lot easier to enforce ES5 than it is to enforce the specific subset of ES6 supported by IE11.) However, we do plan to drop IE11 in v2.0 (see #1578) but that might still take a while.
Therefore:

This change cannot be part of Prism v1.x. We cannot drop support for IE11 without changing the major version.
As for v2.0: using Terser is only one step we have to undertake in order to modernize our codebase. This PR will not help much with these tasks.

For these reasons, I will now close this PR.

@NullVoxPopuli
I'm sorry to reject your PR but I cannot allow ES6+ features yet. Please use ES5 equivalents (such var instead of let and const) while the Prism team figures out a way to modernize this codebase.

all good. do you have thoughts on transpiling down to ES5?

Interesting that switching to Terser made all of the builds larger as well. If we continued to support our given syntax set but the minifier produced better results, I'd be in support but it seems like Terser produces worse results across the board for our codebase.

Interesting that switching to Terser made all of the builds larger as well

afaict, This is only because the variable Prism is no longer abbreviated to one letter, since it's a global

Yes, terser is a little bit worse than uglify for ES5 but not by much. When talking about minified ES6+ code, it can do a bit more.

Well I was going to say terser can typically do much better than it's defaults (and this may still be true), but for us the difference is only 1% (300 bytes)... so I guess it all depends.  It's also possible we don't have it tuned as finely as it could be as well. :)

I don't think that's the case because all of the languages are wrapped in IIFEs and pass in Prism, so they're mostly not referencing the global Prism. I only mention this because my general thing is keeping the bundle small, so if you wanna spend some time configuring Terser to produce smaller bundles, I'm all for it.
As for ES6, I believe we need IE11 support for our unminified code as well, so I think that's a no go until the V2 rewrite.


Review & refactor messages partial

Messages partial contains to much repeated code. Need to refactor and maybe move this messages section to directive.

@micrum implemented in https://github.com/flatlogic/angular-material-dashboard/pull/22

thx @gaykov, good job!


firewall: empty "proto" selection on GeoIP alias

Important notices
Our forum is located at https://forum.opnsense.org , please consider joining discussions there in stead of using GitHub for these matters.
Before you ask a new question, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Not sure how it should be handled, but looking at the way the GUI is set up I'd say prevent storing an empty value via validation?

Empty is treated as both as it emits it from the filter_tables.conf, adding a validation would be ok, but as it depends on type, is a bit annoying.

In that case I can just mock "IPv4, IPv6" as the empty selection title then :)


There is no application.cryptolog. in /data/data/com.example.aes/cache/

I followed the instructions in the README and executed the commands in order, but when I reached the 'Collect the logs' step, 'cryptolog | failed' was printed. By looking at the script file, I found the problem was that there was no no application.cryptolog. in /data/data/com.example.aes/cache/, which led to The run_cmd function returns Error, I want to know how to solve it.
Thanks in advance.

Learn from your previous Issue, I just run the test application that is included in the folder app-test, but it still was error.

Hi, can you please check if there are other files in the directory /data/data/com.example.aes/? There should be a file called aes.log in one of the subdirectories. Can you confirm that the file aes.log is there? This is to make sure that the application was executed successfully.

Yeah, there is file aes.log in the directory /data/data/com.example.aes/, and the content is:
[decrypted: The quick brown fox jumps over the lazy dog]

Ok, great. Can you please go inside the directory android-emu/libcore and run the command git status?

I created the emulator manually and did not use the method in the README, so there is no android-emu directory in my root directory. I didn't execute these commands in the picture below.

Thanks! Sorry, but you need to create the emulator by using the method explained in the README. We modified the Java library to print the log. If you use a different emulator, you use the standard Java library and therefore the file application.cryptolog is not created.

Okay, thanks for your reply, I will try your method first, and then tell you the result of my attempt

Thanks! Sorry, but you need to create the emulator by using the method explained in the README. We modified the Java library to print the log. If you use a different emulator, you use the standard Java library and therefore the file application.cryptolog is not created.

Little personal suggestion is that u can add this requirement which need to create the emulator as README doing to the supplementary document, so that others wont meet the same problem as above ~~ Great thanks a lot ~~

Thanks! Sorry, but you need to create the emulator by using the method explained in the README. We modified the Java library to print the log. If you use a different emulator, you use the standard Java library and therefore the file application.cryptolog is not created.

Hi, could you please provide the modified Java library

Thanks! Sorry, but you need to create the emulator by using the method explained in the README. We modified the Java library to print the log. If you use a different emulator, you use the standard Java library and therefore the file application.cryptolog is not created.

Maybe you provided, but I didn't find it, could you please tell me where it is

Hi, if you build the emulator as explained in the instructions (the emulator you run from the directory emulator-emu that is created with the script scripts/setup/setup_emu.py) you will run your applications with our modified Java library. You can find the modifications to the Java library in scripts/deltas/libcore/ojluni/src/main/java. Thanks

Hi, if you build the emulator as explained in the instructions (the emulator you run from the directory emulator-emu that is created with the script scripts/setup/setup_emu.py) you will run your applications with our modified Java library. You can find the modifications to the Java library in scripts/deltas/libcore/ojluni/src/main/java. Thanks

Many thanks for your reply and guide

Hi, if you build the emulator as explained in the instructions (the emulator you run from the directory emulator-emu that is created with the script scripts/setup/setup_emu.py) you will run your applications with our modified Java library. You can find the modifications to the Java library in scripts/deltas/libcore/ojluni/src/main/java. Thanks

Hi, I built the emulator as explained in the structions, but now I have a problem. When I entered the script "emulator" or "emulator -writable-system",  a line of instruction, “emulator: ERROR: No initial system image for this configuration”, will appear.
Then I searched it in google, but no satisfying results occured. Could you please give me some guidance? Many thanks!

Hi, I think there is some sort of issue with the compilation process.
Please go inside the directory android-emu and then do the following:
source ./build/envsetup.sh
lunch sdk_phone_x86-userdebug
make

This re-compiles the emulator. Is the compilation successful?
Thanks

Hi, I think there is some sort of issue with the compilation process.
Please go inside the directory android-emu and then do the following:
source ./build/envsetup.sh
lunch sdk_phone_x86-userdebug
make

This re-compiles the emulator. Is the compilation successful?
Thanks

Hi, When I followed your instructions, a new problem occured. Both "./build/envsetup.sh" and "lunch sdk_phone_x86-userdebug" are successful, but when I entered "make", a line of instruction, "failed to build some targets ", appeared.
Maybe you have encountered this kind of problem before, Could you please give me some guidance? Many thanks!
liyuxi@liyuxi-All-Series:~/crylogger/android-emu$ source ./build/envsetup.sh
including device/generic/car/vendorsetup.sh
including device/generic/mini-emulator-arm64/vendorsetup.sh
including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh
including device/generic/mini-emulator-mips64/vendorsetup.sh
including device/generic/mini-emulator-mips/vendorsetup.sh
including device/generic/mini-emulator-x86_64/vendorsetup.sh
including device/generic/mini-emulator-x86/vendorsetup.sh
including device/generic/uml/vendorsetup.sh
including device/google/crosshatch/vendorsetup.sh
including device/google/cuttlefish/vendorsetup.sh
including device/google/marlin/vendorsetup.sh
including device/google/muskie/vendorsetup.sh
including device/google/taimen/vendorsetup.sh
including device/linaro/hikey/vendorsetup.sh
including sdk/bash_completion/adb.bash
liyuxi@liyuxi-All-Series:~/crylogger/android-emu$ lunch sdk_phone_x86-userdebug
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
TARGET_PRODUCT=sdk_phone_x86
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=x86
TARGET_ARCH_VARIANT=x86
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.8.0-50-generic-x86_64-Ubuntu-20.04.2-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ3A.190505.001
OUT_DIR=out
liyuxi@liyuxi-All-Series:~/crylogger/android-emu$ make
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
TARGET_PRODUCT=sdk_phone_x86
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=x86
TARGET_ARCH_VARIANT=x86
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.8.0-50-generic-x86_64-Ubuntu-20.04.2-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ3A.190505.001
OUT_DIR=out
ninja: no work to do.
ninja: no work to do.
wildcard(out/target/product/generic_x86/clean_steps.mk) was changed, regenerating...
No need to regenerate ninja file
[  0% 1/79616] host C++: aapt <= frameworks/base/tools/aapt/Main.cpp
FAILED: out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/Main.o
/bin/bash -c "PWD=/proc/self/cwd  prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++ 	-I frameworks/base/tools/aapt -I out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates -I out/host/linux-x86/gen/EXECUTABLES/aapt_intermediates -I libnativehelper/include_jni $(cat out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/import_includes)  -I system/core/include -I system/media/audio/include -I hardware/libhardware/include -I hardware/libhardware_legacy/include -I hardware/ril/include -I libnativehelper/include -I frameworks/native/include -I frameworks/native/opengl/include -I frameworks/av/include  -c  -Wa,--noexecstack -fPIC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS --gcc-toolchain=prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8 --sysroot prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/sysroot -fstack-protector-strong -m64 -DANDROID -fmessage-length=0 -W -Wall -Wno-unused -Winit-self -Wpointer-arith -no-canonical-prefixes -DNDEBUG -UDEBUG -fno-exceptions -Wno-multichar -O2 -g -fno-strict-aliasing -fdebug-prefix-map=/proc/self/cwd= -D__compiler_offsetof=__builtin_offsetof -Werror=int-conversion -Wno-reserved-id-macro -Wno-format-pedantic -Wno-unused-command-line-argument -fcolor-diagnostics -Wno-expansion-to-defined -Wno-zero-as-null-pointer-constant -fdebug-prefix-map=$PWD/=   -target x86_64-linux-gnu -Bprebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/bin  -Wsign-promo -Wno-inconsistent-missing-override -Wno-null-dereference -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -Wno-thread-safety-negative -Wno-gnu-include-next  -isystem prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/include/c++/4.8 -isystem prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/include/c++/4.8/backward -isystem prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/include/c++/4.8/x86_64-linux -std=gnu++14  -DAAPT_VERSION=\"$(cat out/build_number.txt)\" -Wall -Werror -fPIE -D_USING_LIBCXX -DANDROID_STRICT -nostdinc++  -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Werror=address-of-temporary -Werror=return-type -Wno-tautological-constant-compare -Wno-null-pointer-arithmetic -Wno-enum-compare -Wno-enum-compare-switch   -MD -MF out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/Main.d -o out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/Main.o frameworks/base/tools/aapt/Main.cpp"
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++.real: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
[  0% 6/79616] build out/target/commo...PACKAGING/hiddenapi-dark-greylist.txt
ninja: build stopped: subcommand failed.
17:37:37 ninja failed with: exit status 1
failed to build some targets (02:28 (mm:ss))

Hi, I think there is some sort of issue with the compilation process.
Please go inside the directory android-emu and then do the following:
source ./build/envsetup.sh
lunch sdk_phone_x86-userdebug
make

This re-compiles the emulator. Is the compilation successful?
Thanks

Hi, When I followed your instructions, a new problem occured. Both "./build/envsetup.sh" and "lunch sdk_phone_x86-userdebug" are successful, but when I entered "make", a line of instruction, "failed to build some targets ", appeared.
Maybe you have encountered this kind of problem before, Could you please give me some guidance? Many thanks!
liyuxi@liyuxi-All-Series:~/crylogger/android-emu$ source ./build/envsetup.sh including device/generic/car/vendorsetup.sh including device/generic/mini-emulator-arm64/vendorsetup.sh including device/generic/mini-emulator-armv7-a-neon/vendorsetup.sh including device/generic/mini-emulator-mips64/vendorsetup.sh including device/generic/mini-emulator-mips/vendorsetup.sh including device/generic/mini-emulator-x86_64/vendorsetup.sh including device/generic/mini-emulator-x86/vendorsetup.sh including device/generic/uml/vendorsetup.sh including device/google/crosshatch/vendorsetup.sh including device/google/cuttlefish/vendorsetup.sh including device/google/marlin/vendorsetup.sh including device/google/muskie/vendorsetup.sh including device/google/taimen/vendorsetup.sh including device/linaro/hikey/vendorsetup.sh including sdk/bash_completion/adb.bash liyuxi@liyuxi-All-Series:~/crylogger/android-emu$ lunch sdk_phone_x86-userdebug
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
TARGET_PRODUCT=sdk_phone_x86
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=x86
TARGET_ARCH_VARIANT=x86
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.8.0-50-generic-x86_64-Ubuntu-20.04.2-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ3A.190505.001
OUT_DIR=out
liyuxi@liyuxi-All-Series:~/crylogger/android-emu$ make
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
TARGET_PRODUCT=sdk_phone_x86
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=x86
TARGET_ARCH_VARIANT=x86
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.8.0-50-generic-x86_64-Ubuntu-20.04.2-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ3A.190505.001
OUT_DIR=out
ninja: no work to do.
ninja: no work to do.
wildcard(out/target/product/generic_x86/clean_steps.mk) was changed, regenerating...
No need to regenerate ninja file
[ 0% 1/79616] host C++: aapt <= frameworks/base/tools/aapt/Main.cpp
FAILED: out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/Main.o
/bin/bash -c "PWD=/proc/self/cwd prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++ -I frameworks/base/tools/aapt -I out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates -I out/host/linux-x86/gen/EXECUTABLES/aapt_intermediates -I libnativehelper/include_jni $(cat out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/import_includes) -I system/core/include -I system/media/audio/include -I hardware/libhardware/include -I hardware/libhardware_legacy/include -I hardware/ril/include -I libnativehelper/include -I frameworks/native/include -I frameworks/native/opengl/include -I frameworks/av/include -c -Wa,--noexecstack -fPIC -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS --gcc-toolchain=prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8 --sysroot prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/sysroot -fstack-protector-strong -m64 -DANDROID -fmessage-length=0 -W -Wall -Wno-unused -Winit-self -Wpointer-arith -no-canonical-prefixes -DNDEBUG -UDEBUG -fno-exceptions -Wno-multichar -O2 -g -fno-strict-aliasing -fdebug-prefix-map=/proc/self/cwd= -D__compiler_offsetof=__builtin_offsetof -Werror=int-conversion -Wno-reserved-id-macro -Wno-format-pedantic -Wno-unused-command-line-argument -fcolor-diagnostics -Wno-expansion-to-defined -Wno-zero-as-null-pointer-constant -fdebug-prefix-map=$PWD/= -target x86_64-linux-gnu -Bprebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/bin -Wsign-promo -Wno-inconsistent-missing-override -Wno-null-dereference -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -Wno-thread-safety-negative -Wno-gnu-include-next -isystem prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/include/c++/4.8 -isystem prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/include/c++/4.8/backward -isystem prebuilts/gcc/linux-x86/host/x86_64-linux-glibc2.15-4.8/x86_64-linux/include/c++/4.8/x86_64-linux -std=gnu++14 -DAAPT_VERSION="$(cat out/build_number.txt)" -Wall -Werror -fPIE -D_USING_LIBCXX -DANDROID_STRICT -nostdinc++ -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Werror=address-of-temporary -Werror=return-type -Wno-tautological-constant-compare -Wno-null-pointer-arithmetic -Wno-enum-compare -Wno-enum-compare-switch -MD -MF out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/Main.d -o out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/Main.o frameworks/base/tools/aapt/Main.cpp"
prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++.real: error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory
[ 0% 6/79616]

build out/target/commo...PACKAGING/hiddenapi-dark-greylist.txt
ninja: build stopped: subcommand failed.
17:37:37 ninja failed with: exit status 1
failed to build some targets (02:28 (mm:ss))

Hi, thank you. The compilation process can be a little complicated because there are several dependencies. In your case, it looks like the error is "error while loading shared libraries: libtinfo.so.5: cannot open shared object file: No such file or directory". Try to install this library in Ubuntu. Thanks!

The process is similar to the app we provided in this repository. The only differences are that you need to download the app from the Google Play Store and change the number of random events. To download a set of apps, I used an apk crawler that used the Google Play Store website to download the APKs. Unfortunately this is no longer available... but you may be able to find something similar that downloads the app for the architecture you want to use. Thanks

Sorry, I mean what command should I enter. According to the instructions given, I will enter "python run.py --work_dir data --session emulator-", but the apps I downloaded directly from the Google Play Store in the given emulator will not provide an apk file. Many thanks!

The process is similar to the app we provided in this repository. The only differences are that you need to download the app from the Google Play Store and change the number of random events. To download a set of apps, I used an apk crawler that used the Google Play Store website to download the APKs. Unfortunately this is no longer available... but you may be able to find something similar that downloads the app for the architecture you want to use. Thanks

Hi, could you please recommend some apps that you tested successfully? Many thanks!

Sorry for misunderstanding. The script run.py assumes that you have the apk of the app to install. If the app is already installed on the emulator, e.g., by using the marketplace, you need to modify the script to skip the installation step and find a way to provide the name and the package to the script. So you need to modify manually the Python script as it does not provide the functionality that you're asking.
Regarding the apps, I tested several apps. Please try some of the Google Play Store. If the installation is successful and the app works correctly, you should be able to get the log of the cryptographic APIs. If you don't find the log it means that the app has not been executed for enough time. In one of your previous screenshots, an app was running successfully, please try to extract the log from that one. The log should be in the directory /data/data/<app-packages/cache.
I hope this helps.

Sorry for misunderstanding. The script run.py assumes that you have the apk of the app to install. If the app is already installed on the emulator, e.g., by using the marketplace, you need to modify the script to skip the installation step and find a way to provide the name and the package to the script. So you need to modify manually the Python script as it does not provide the functionality that you're asking.
Regarding the apps, I tested several apps. Please try some of the Google Play Store. If the installation is successful and the app works correctly, you should be able to get the log of the cryptographic APIs. If you don't find the log it means that the app has not been executed for enough time. In one of your previous screenshots, an app was running successfully, please try to extract the log from that one. The log should be in the directory /data/data/<app-package>/cache.
I hope this helps.

Many thanks for your patient reply and guidance!
I have already solved all the problems mentioned above.
Maybe someone added a necessary snippet code to the file "build.gradle" in his app so that the app can be installed in the given X86 emulator, but others did not do like this.

Hi! I also have trouble installing apps from Google Play Store onto the emulator. I have successfully run crylogger on the given example app and am trying to run it to test other top apps from Google Play Store. Here's what I did:

use chrome extension to download apk files from Google Play to my mac, and transfer the .apk file to the remote server (where the emulator is located) (app info: phone, x86, android 9.0)

Then I tried to do adb -s emulator-5554 install -g data/apks/voila-ai-new_27.apk, but I always got the error message saying "broken pipe (32)" as below

I tried to uninstall "com.example.aes" and reinstall it again, but it output the same error. (Sometimes, the error message may be saying transaction failure).

I have tried adb kill-server and adb start-server and restart the emulator multiple times (as suggested on some posts online), but it still did not work. Have you met similar problem before? Or do you have any suggestions on this? Thank you!

Hi, sorry I've never seen that error message before. I'm not sure what it is going on. Thanks.

No worries, thank you for you reply! I have tried several times more and it still didn't work. In this case, I am going to try to install Ubuntu and run this on mac to see what happens.


Hardens Future.await(), adds Future.await(timeout, timeunit)

Fixes #1963
Fixes #1871 (it is future.await(timeout, timeunit).get() instead of future.get(timeout, timeunit))

Codecov Report

Merging #2110 into master will decrease coverage by 0.12%.
The diff coverage is 52.63%.

@@             Coverage Diff              @@
##             master    #2110      +/-   ##
============================================
- Coverage      97.5%   97.37%   -0.13%
  Complexity     5199     5199
============================================
  Files            93       93
  Lines         11933    11957      +24
  Branches       1575     1581       +6
============================================
+ Hits          11635    11643       +8
- Misses          147      158      +11
- Partials        151      156       +5

Impacted Files
Coverage Δ
Complexity Δ

vavr/src/main/java/io/vavr/concurrent/Future.java
99.52% <ø> (ø)
106 <0> (ø)
:arrow_down:

...r/src/main/java/io/vavr/concurrent/FutureImpl.java
70.58% <52.63%> (-11.47%)
23 <1> (ø)

Continue to review full report at Codecov.

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


Follow users

You can now follow and unfollow users from their timeline.

We need some tests!

We need some tests!

Fixes #88 btw


Goodbye patch, hello render.

Rename patch function to render and simplify signature. This ultradom.render is essentially hyperapp.app but without any notion of state or actions. It recycles by default, so the mounting behavior is like in Hyperapp. There is no longer a way to patch a specific element. The new render is essentially ReactDOM.render, without component lifecycle and using Hyperapp's virtual DOM engine.
Hello World
import { h, render } from "ultradom"

render(
Hello, world!
, document.body)

Clock
import { h, render } from "ultradom"

const tick = () =>
  render(

Hello, world!

It is {new Date().toLocaleTimeString()}.

,
    document.body
  )

setInterval(tick, 1000)

Counter
import { h, render } from "ultradom"

const app = state =>
  render(

{state}

      <button onclick={() => app(state - 1)}>-</button>
      <button onclick={() => app(state + 1)}>+</button>
    ,
    document.body
  )

app(0) // Start!

There is no longer a way to patch a specific element

This is not good for my case, I would like to be able to calculate a part of the vdom-tree, diff and patch from a specific element, not recalculate the whole app at each render...

@cjh9 Bummer.

Yes, that's one way to solve not doing diffing too many nodes. The other way is attaching a shouldComponentUpdate function. Maybe both the render-api and patch-api could be supported?

Mounting takes over the supplied container so make sure your container is empty

Looks like we have the 1:1 single parent/child relationship now forced again? didn't we address that?
Being able to mount/patch a single node directly is pretty essential if anyone's going to attempt to implement a component pattern with this library.

This is not only about component patterns though - we've discussed this at length, and the main problem still is that this forces you to use very specific markup structure, which can make it difficult to move from an HTML/CSS prototype to a working app.
For example, if your CSS guys deliver an HTML prototype with BEM-style CSS, you may have to start picking apart their BEM blocks, adding arbitrary wrapper-elements and (in particular) changing nested CSS selectors.
This being a library and not a framework, it's particularly bad that you can't use arbitrary markup structure according to your own requirements and design.
You also removed the ability to pass null for the element and get a new node back, so I can no longer implement the mount() function I used to create. As per this example, I now have to add an arbitrary dummy wrapper-node just for positioning, before I can render anything at all.
If this is how the render() function is going to work from now on, I'd like to suggest you expose the patch() function as well, which will provide much more flexibility. Yes, calling it is more verbose - but, again, this being a library and not a framework, you will most likely build your own layer, so who cares how verbose that one line of code is?
From where I'm sitting, the render() function is seriously in the way of the low-level functionality in the library that I'm interested in.
I might even go so far as to suggest removing the render() function altogether, because those couple of lines are not where the utility of this package lies - it's abstracting away the details and thereby much of the control we'd have with patch(), and I think that's a real problem.
You removed functional components as well, so you're obviously heading in the direction where this is more of a library and less of a micro-framework, not so much intended to be useful without a layer on top of it.
It kind of seems like that render() function belongs in hyperapp?

@mindplay-dk React doesn't have a problem with this. Preact has render(node, container, element), but their goals are different to mine.
ultradom.h flattens arrays, so the only annoying thing is that the root element is nested inside a dummy div. This problem will go away when fragments are implemented https://github.com/jorgebucaran/ultradom/issues/71.

My point remains valid: the render() function walls off something potentially useful - even if it's not useful to your use-case (hyperapp) there's no reason to obstruct others from accessing it?
This being a library, it should expose the functionality of the library rather than abstracting and hiding it - it's for frameworks to decide the degree of abstraction.
Otherwise, I guess, expect people to fork rather than import and use your library, which is what I would have to do to explore the kind of use-cases I'm interested in. But that seems kind of silly, since I could have just forked your framework then - sorta proves my point doesn't it? Why is it even a library if I can't access the library functionality and end up having to treat it like a framework? hmm.

The ability to target a specific element and SSR recycling combined allows a pattern that emulates stateful components. I think this is misuse. You want to use the right tool for the right job and stateful components is a solved problem — just use React or Preact for that.


Tilemap test issues

~prespective dies with Uncaught RuntimeError: invalid conversion to integer on Emscripten~
betamax appears to be dividing by 0 (Uncaught RuntimeError: integer divide by zero on Emcripten, Floating point exception on Linux)

Fixed point 2 in #359

Now the only thing left is that the perspective effect does a (float) divide by zero for line 0, resulting in a matrix of nans.
Also, most of the effects have a comment of apply dream wave effect...

Looks like everything is working now!


Remake SDF fonts.

Current label drawing method has to be improved.

Replaced to https://github.com/openglobus/openglobus/issues/112


prefix target sqlpp11 with namespace sqlpp11::

The main idea here is to have a way to group sqlpp related targets.
e.g. sqlpp11::sqlpp11-connector-sqlite3

Being super ignorant about cmake, I admit, I have no idea if and what kind of implications this would have.
Closing this for now.


Re-directs can be added but are not re-directing.

Hi,
We have been using the notFoundHandler in Optimizely for a while now to create re-directs with no issue.
Recently, the re-directs that we are adding are not actually re-directing.
I have raised a ticket with Optimizely support who have suggested I contact the contributors of this package directly.
Any advice on how I could debug this? or is there any documentation that I could use related to this issue?

sorry marisks,
Optimizely have linked me to the incorrect package, the correct package is Geta.NotFoundHandler (https://github.com/Geta/geta-notfoundhandler). I will re-raise the ticket there.


Remove bulma flex helpers and change it with tailwindcss

Context is here: https://github.com/kodadot/nft-gallery/discussions/8066
The first step of removing bulma from the project I'm going to do is to remove flex classes such as:
is-flex
is-align-items-*
is-justify-content-*
is-flex-direction-*
is-flex-grow-*
These are the least dangerous classes, which have an exact equivalent in tailwindcss
cc @roiLeo can I start doing this?

cc @roiLeo can I start doing this?

let's go 🚀


Update README.md

correcting the word setep => setup

the CI is not yet working, will fix it soon with the accounts app PR. ty for contrib


Prefer dl_iterate_phdr(3) over /proc/self/maps

Checklist

[ ] Used a personal fork of the feedstock to propose changes
[ ] Bumped the build number (if the version is unchanged)
[ ] Reset the build number to 0 (if the version changed)
[ ] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[ ] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

Good point. Done!

Got 3 of my patches merged upstream. Back ported them in https://github.com/conda-forge/graphviz-feedstock/pull/81


[DOCS] Contributing Guide needed

Description
People might want to know how to effectively contribute to this project, so a guide is needed.
Screenshots
No response
Additional information
No response

Hey @eddiejaoude, I would love to work on this issue. Could you please assign it to me?

I have added a contribution guide from BioDrop, and others have updated the quickstart guide. I will close for now and please review, further specific issues can be raise


Update to flutter_svg 1.0.0

Can this package be updated to the new stable flutter_svg 1.0.0?

Of course,
As you know flutter_svg package was released a couple of days ago.

Hi @elbeicktalat could you please update the package also un pub.dev to depend on flutter_svg 1.0.0?
Thank you.


Returned variational params are all NaN's

I am running a Bayesian logistic regression model with layer_sizes = [175, 1]. My activation function is a sigmoid. The returned VI parameters are all NaN's with run time warnings,

autograd/core.py:81: RuntimeWarning: divide by zero encountered in log
autograd/core.py:81: RuntimeWarning: divide by zero encountered in true_divide
autograd/numpy/numpy_grads.py:20: RuntimeWarning: invalid value encountered in multiply anp.multiply.defvjp(   lambda g, ans, vs, gvs, x, y : unbroadcast(vs, gvs, y * g))

My guess is that the returned probabilities are very small leading to numerical unstability. The piece of code that computes the log likelihood, which triggers these warnings, is log_lik = np.sum(np.log(label_probabilities)). Do you happen to know how small these probabilities can be before hitting a numerical underflow? Is there an elegant way to handle this issue?
I am new to autograd. I apologize if this is not where I should be posting this error. Any help is appreciated.

Never mind. Figured it out.

If you have time, can you explain what the issue was? It might be helpful to others who come across this issue.
We weren't able to look into this because we've been managing a big merge, but it's great to hear that you sorted things out already!

Problem: While computing the log likelihood (log_lik = np.sum(np.log(label_probabilities))) very small probabilities (<= 1e-60) led to numerical instability when taking the log.
Failed Approach: I attempted to take a look at these values before determining a cutoff but I was unable to view entries within a autograd.numpy.numpy_extra.ArrayNode object. How do you view the entries in a Arraynode object?
Fix: Added np.maximum(label_probabilities, 1e-60) before computing likelihood. This way probability values below a threshold of 1e-60 were replaced by 1e-60. Again this worked for my dataset, may need to experiment with the threshold.


Request INT8 support in Decoder inference process

Will FasterTransformer support INT8 inference in Decoder(e.g OpenDecoder in open_decoder.h)? So those models like quantized GPT could run inference more quickly.

It is in plan.


unable to get nixos-vscode-server working:

Hello @msteen ,
I'm unable to get nixos-vscode-server working, the 1st option that I tried is the local home-manager option, but it returned the error: the option is not of type boolean or signed integer or string or list of boolean or signed integer or strings?
The 2nd option that tried, is to get it working globally in configuration.nix, but it returned the error: failed to connect to bus: no such file or directory.
Anyways, I'm going to look in services to find the dbus option to enable it, to try and get it working, but I really want to get it working with my home-manager, home.nix local configuration.
Note: I was able to install home-manager fine in nixos(nixos-wsl), but, at the end, I had to manually make the directories and user file: .config/nixpkgs/home.nix, and then import it to configuration.nix. After that, home.nix seems to be working great as a module, so I don't think that has anything to do with nixos-vscode-server not working, but I thought that I'd mention it, just in case.
Also, there's a bunch of dbus options, so I don't know which dbus options to enable and configure?
https://search.nixos.org/options?channel=20.09&from=0&size=50&sort=relevance&query=dbus
If you could help me fix these 2 issues, thanks in advance for the help!

@zeta-00 you can check this pull request: https://github.com/msteen/nixos-vscode-server/pull/5, this works totally fine for me.

I just came across this issue as well. I don't have flakes turned on yet. Are there any other solutions?

I'm switching over to ubuntu+nix in wsl, until this issue gets resolved.
Thanks in advance for helping fix this issue!

I was unable to get it working in home-manager, but globally through the system config, I was, but here's the issue that's currently occurring:
https://github.com/Trundle/NixOS-WSL/issues/31

Any news on this? With user-local home manager, I'm facing the same issue as you @zeta-00 : the option is not of type boolean or signed integer or string or list of boolean or signed integer or strings

@PBHDK I don't use home manager myself currently, so I have no idea what might have go wrong. Any location reported? I am working on rewriting my NixOS configs to flakes and plan to then start using home-manager too while I am at it. Don't want to experiment with those things on my current system though.
@zeta-00 When you say you also tried to use configuration.nix, you mean the not home manager approach? I will try using this project on my desktop which is uses the latest version of NixOS, on my server, which uses an older version until I update to flakes, it runs fine on there, so maybe something changed in between versions that caused the bus error?

@zeta-00 Actually, I just looked, seems I am already running it on all my systems, including my desktop. No errors reported. So I assume it is all home manager related?

@msteen ah should've posted. See full error below:
switch --show-trace                                       1 ↵
error: A definition for option `systemd.user.services.auto-fix-vscode-server.Service.ExecStart' is not of type `boolean or signed integer or string or list of boolean or signed integer or strings'. Definition values:
       - In `/nix/store/myb15n2hhhxbmzs6dglq0f775n46d13z-source/modules/vscode-server/home.nix': <derivation /nix/store/p419g7z3ia77w78ziq5fvkpz6wcly78h-auto-fix-vscode-server.sh.drv>

       … while evaluating the attribute 'value'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:570:27:

          569|     optionalValue =
          570|       if isDefined then { value = mergedValue; }
             |                           ^
          571|       else {};

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/types.nix:387:22:

          386|       merge = loc: defs:
          387|         mapAttrs (n: v: v.value) (filterAttrs (n: v: v ? value) (zipAttrsWith (name: defs:
             |                      ^
          388|             (mergeDefinitions (loc ++ [name]) elemType defs).optionalValue

       … from call site

       … while evaluating the attribute 'ExecStart'

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/generators.nix:86:17:

           85|       mkLines = if listsAsDuplicateKeys
           86|         then k: v: map (mkLine k) (if lib.isList v then v else [v])
             |                 ^
           87|         else k: v: [ (mkLine k v) ];

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:256:16:

          255|   mapAttrsToList = f: attrs:
          256|     map (name: f name attrs.${name}) (attrNames attrs);
             |                ^
          257|

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:256:10:

          255|   mapAttrsToList = f: attrs:
          256|     map (name: f name attrs.${name}) (attrNames attrs);
             |          ^
          257|

       … from call site

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/generators.nix:88:6:

           87|         else k: v: [ (mkLine k v) ];
           88|   in attrs: libStr.concatStrings (lib.concatLists (libAttr.mapAttrsToList mkLines attrs));
             |      ^
           89|

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/generators.nix:126:14:

          125|           [${mkSectionName sectName}]
          126|         '' + toKeyValue { inherit mkKeyValue listsAsDuplicateKeys; } sectValues;
             |              ^
          127|     in

       … while evaluating 'mkSection'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/generators.nix:124:31:

          123|             (libAttr.mapAttrsToList mapFn attrs);
          124|         mkSection = sectName: sectValues: ''
             |                               ^
          125|           [${mkSectionName sectName}]

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:256:16:

          255|   mapAttrsToList = f: attrs:
          256|     map (name: f name attrs.${name}) (attrNames attrs);
             |                ^
          257|

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:256:10:

          255|   mapAttrsToList = f: attrs:
          256|     map (name: f name attrs.${name}) (attrNames attrs);
             |          ^
          257|

       … from call site

       … while evaluating 'mapAttrsToStringsSep'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/generators.nix:121:44:

          120|         # map function to string for each key val
          121|         mapAttrsToStringsSep = sep: mapFn: attrs:
             |                                            ^
          122|           libStr.concatStringsSep sep

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/generators.nix:129:7:

          128|       # map input to ini sections
          129|       mapAttrsToStringsSep "\n" mkSection attrsOfAttrs;
             |       ^
          130|

       … while evaluating 'toINI'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/generators.nix:118:6:

          117|     listsAsDuplicateKeys ? false
          118|   }: attrsOfAttrs:
             |      ^
          119|     let

       … from call site

       at /nix/store/8nf6k1nbk3k9ih20fvcmvn3vala38793-source/modules/systemd.nix:40:16:

           39|         name = pathSafeName;
           40|         text = toSystemdIni serviceCfg;
             |                ^
           41|         destination = "/${filename}";

       … while evaluating the attribute 'text' of the derivation 'auto-fix-vscode-server.service'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/pkgs/stdenv/generic/make-derivation.nix:201:11:

          200|         // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
          201|           name =
             |           ^
          202|             let

       … while evaluating the attribute 'value'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:392:44:

          391|       defnsByName' = byName "config" (module: value:
          392|           [{ inherit (module) file; inherit value; }]
             |                                            ^
          393|         ) configs;

       … while evaluating 'dischargeProperties'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:609:25:

          608|   */
          609|   dischargeProperties = def:
             |                         ^
          610|     if def._type or "" == "merge" then

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:538:137:

          537|         defs' = concatMap (m:
          538|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
             |                                                                                ^
          539|         ) defs;

       … while evaluating definitions from `/nix/store/8nf6k1nbk3k9ih20fvcmvn3vala38793-source/modules/systemd.nix':

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:537:28:

          536|         # Process mkMerge and mkIf properties.
          537|         defs' = concatMap (m:
             |                            ^
          538|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:537:17:

          536|         # Process mkMerge and mkIf properties.
          537|         defs' = concatMap (m:
             |                 ^
          538|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … while evaluating the attribute 'values'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:650:7:

          649|     in {
          650|       values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
             |       ^
          651|       inherit highestPrio;

       … while evaluating the attribute 'values'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:551:9:

          550|       in {
          551|         values = defs''';
             |         ^
          552|         inherit (defs'') highestPrio;

       … while evaluating the attribute 'mergedValue'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:557:5:

          556|     # Type-check the remaining definitions, and merge them. Or throw if no definitions.
          557|     mergedValue =
             |     ^
          558|       if isDefined then

       … while evaluating the option `xdg.configFile.systemd/user/auto-fix-vscode-server.service.source':

       … while evaluating the attribute 'value'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:525:9:

          524|     in warnDeprecation opt //
          525|       { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
             |         ^
          526|         inherit (res.defsFinal') highestPrio;

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:140:72:

          139|           # For definitions that have an associated option
          140|           declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
             |                                                                        ^
          141|

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:301:20:

          300|               then recurse (path ++ [name]) value
          301|               else f (path ++ [name]) value;
             |                    ^
          302|         in mapAttrs g set;

       … while evaluating 'g'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:298:19:

          297|           g =
          298|             name: value:
             |                   ^
          299|             if isAttrs value && cond value

       … from call site

       … while evaluating the attribute 'value'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:392:44:

          391|       defnsByName' = byName "config" (module: value:
          392|           [{ inherit (module) file; inherit value; }]
             |                                            ^
          393|         ) configs;

       … while evaluating 'dischargeProperties'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:609:25:

          608|   */
          609|   dischargeProperties = def:
             |                         ^
          610|     if def._type or "" == "merge" then

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:538:137:

          537|         defs' = concatMap (m:
          538|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))
             |                                                                                ^
          539|         ) defs;

       … while evaluating definitions from `/nix/store/8nf6k1nbk3k9ih20fvcmvn3vala38793-source/modules/misc/xdg.nix':

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:537:28:

          536|         # Process mkMerge and mkIf properties.
          537|         defs' = concatMap (m:
             |                            ^
          538|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:537:17:

          536|         # Process mkMerge and mkIf properties.
          537|         defs' = concatMap (m:
             |                 ^
          538|           map (value: { inherit (m) file; inherit value; }) (builtins.addErrorContext "while evaluating definitions from `${m.file}':" (dischargeProperties m.value))

       … while evaluating the attribute 'values'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:650:7:

          649|     in {
          650|       values = concatMap (def: if getPrio def == highestPrio then [(strip def)] else []) defs;
             |       ^
          651|       inherit highestPrio;

       … while evaluating the attribute 'values'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:551:9:

          550|       in {
          551|         values = defs''';
             |         ^
          552|         inherit (defs'') highestPrio;

       … while evaluating the attribute 'mergedValue'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:557:5:

          556|     # Type-check the remaining definitions, and merge them. Or throw if no definitions.
          557|     mergedValue =
             |     ^
          558|       if isDefined then

       … while evaluating the option `home.file./home/paul/.config/systemd/user/auto-fix-vscode-server.service.source':

       … while evaluating the attribute 'value'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:525:9:

          524|     in warnDeprecation opt //
          525|       { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
             |         ^
          526|         inherit (res.defsFinal') highestPrio;

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/modules.nix:140:72:

          139|           # For definitions that have an associated option
          140|           declaredConfig = mapAttrsRecursiveCond (v: ! isOption v) (_: v: v.value) options;
             |                                                                        ^
          141|

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:301:20:

          300|               then recurse (path ++ [name]) value
          301|               else f (path ++ [name]) value;
             |                    ^
          302|         in mapAttrs g set;

       … while evaluating 'g'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:298:19:

          297|           g =
          298|             name: value:
             |                   ^
          299|             if isAttrs value && cond value

       … from call site

       … while evaluating the attribute 'source'

       … while evaluating 'sourceStorePath'

       at /nix/store/8nf6k1nbk3k9ih20fvcmvn3vala38793-source/modules/files.nix:15:21:

           14|
           15|   sourceStorePath = file:
             |                     ^
           16|     let

       … from call site

       at /nix/store/8nf6k1nbk3k9ih20fvcmvn3vala38793-source/modules/files.nix:331:16:

          330|             escapeShellArgs [
          331|               (sourceStorePath v)
             |                ^
          332|               v.target

       … while evaluating 'escapeShellArg'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/strings.nix:318:20:

          317|   */
          318|   escapeShellArg = arg: "'${replaceStrings ["'"] ["'\\''"] (toString arg)}'";
             |                    ^
          319|

       … from call site

       … while evaluating 'concatMapStringsSep'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/strings.nix:110:5:

          109|     # List of input strings
          110|     list: concatStringsSep sep (map f list);
             |     ^
          111|

       … from call site

       at /nix/store/8nf6k1nbk3k9ih20fvcmvn3vala38793-source/modules/files.nix:330:13:

          329|           insertFile ${
          330|             escapeShellArgs [
             |             ^
          331|               (sourceStorePath v)

       … while evaluating anonymous lambda

       at /nix/store/8nf6k1nbk3k9ih20fvcmvn3vala38793-source/modules/files.nix:328:28:

          327|       '' + concatStrings (
          328|         mapAttrsToList (n: v: ''
             |                            ^
          329|           insertFile ${

       … from call site

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:256:16:

          255|   mapAttrsToList = f: attrs:
          256|     map (name: f name attrs.${name}) (attrNames attrs);
             |                ^
          257|

       … while evaluating anonymous lambda

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/lib/attrsets.nix:256:10:

          255|   mapAttrsToList = f: attrs:
          256|     map (name: f name attrs.${name}) (attrNames attrs);
             |          ^
          257|

       … from call site

       … while evaluating the attribute 'buildCommand' of the derivation 'home-manager-files'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/pkgs/stdenv/generic/make-derivation.nix:201:11:

          200|         // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
          201|           name =
             |           ^
          202|             let

       … while evaluating the attribute 'buildCommand' of the derivation 'home-manager-generation'

       at /nix/store/l0y5qia5sxvkn7j4y0z3qx1ngpr05knr-source/pkgs/stdenv/generic/make-derivation.nix:201:11:

          200|         // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) {
          201|           name =
             |           ^
          202|             let

@PBHDK Thanks! That helped a lot. I think I have addressed it, could you see if it now works for you?

@msteen I'm still seeing the error, but I'm also new to this nix / home-manager business? Is it enough for me to run home-manager switch again or do I need to force-reload or flush some cache?

@msteen wait, it's working now - fantastic! Many thanks, appreciate you getting back to me so quickly!

@PBHDK Thanks for the feedback, don't use home manager myself, so you've been a great help.
@zeta-00 Can you confirm whether it now works for you too, or whether it is just a WSL issue with inotifywait?

I assume WSL now works too, if not, a new issue focused on that can be made.


How much time is required for making environment?

PIGT version:
Python version: 3.9
Operating System: Linux

Description
Describe what you were trying to get done.
Tell us what happened, what went wrong, and what you expected to happen.
What I Did
I ran the command in the terminal:
git clone https://github.com/zrqiao/NeuralPLexer.git
cd NeuralPLexer/
make environment
make install

Results
and it keeps solving the environment for over 20 hours:
conda env create -f environment_dev.yaml --force
Collecting package metadata (repodata.json): ...working... WARNING conda.models.version:get_matcher(535): Using .* with relational operator is superfluous and deprecated and will be removed in a future version of conda. Your spec was 1.9.0.*, but conda is ignoring the .* and treating it as 1.9.0
WARNING conda.models.version:get_matcher(535): Using .* with relational operator is superfluous and deprecated and will be removed in a future version of conda. Your spec was 1.7.1.*, but conda is ignoring the .* and treating it as 1.7.1
WARNING conda.models.version:get_matcher(535): Using .* with relational operator is superfluous and deprecated and will be removed in a future version of conda. Your spec was 1.6.0.*, but conda is ignoring the .* and treating it as 1.6.0
WARNING conda.models.version:get_matcher(535): Using .* with relational operator is superfluous and deprecated and will be removed in a future version of conda. Your spec was 1.8.0.*, but conda is ignoring the .* and treating it as 1.8.0
done
Solving environment: ...working...

I wonder if it is normal to take such a long time?

Check the closed issue "make environment fail". It works for me following the instructions.

Hi @Samuel-gwb, I have the same experience as @jianqingzheng. Reading this thread, I read through the closed issue you are referring to. Kindly let us know which protocol worked for you? Thank you.

same situation here. over 24 hrs.

I've followed this one:
https://github.com/zrqiao/NeuralPLexer/issues/1#issuecomment-1943617144

@jianqingzheng @xiaodiyu @xiaodiyu We used mamba and it solves within minutes (but still required some tweaking to work afterwards)

Mamba, in my experience, is the way to go.

just change "conda" in MAKEFILE into "mamba" is ok; also note assign the packages version as dockerfile say, otherwise when installing openfold, it may be wrong.

I've followed this one: #1 (comment)

Hi @Samuel-gwb, I have the same experience as @jianqingzheng. As per your recommendation, I read through the closed issue you are referring to. Kindly let us know which protocol worked for you? Thank you.

Many thanks. I solved my problem following this comment. :)


NotImplementedException when serializing SearchMovie object

Hi there.
I am receiving a NotImplementedException when trying to (Json) serialize a SearchMovie object.
I've noticed the problem comes from method WriteJson (SearchBaseConverter.cs) Is there any reason to leave it this way? Couldn't you just override ReadJson and leave the WriteJson part to the base JsonConverter?
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException();
}
Thanks in advance.

I kinda should've expected somebody to want to serialize stuff again. I'll look into creating writers for the various converters.
As for just relaying them to base, I think it might not work - not always at least. The converters should be transitive, meaning that serializing A to B should allow you to deserialize B back to A.

@Bukran I've made a number of changes in this direction.
You should be able to check it out once I get 1.0.1-alpha up.

That's great news @LordMike.
My team will really appreciate this promptness, thanks ;)

I found a number of issues when serializing certain types. So not all converters will be able to be converted. Not yet at least.
Did this alpha edition resolve your issue? (I assume it did since you closed the issue)
Sent from my iPhone

On 21 Dec 2016, at 07.54, Bukran<EMAIL_ADDRESS>wrote:
That's great news @LordMike.
My team will really appreciate this promptness, thanks ;)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

It did, indeed @LordMike. Thanks.
I didn't noticed 1.0.1-alpha was already up and was just waiting for the next major update.
I have already tried SearchMovie and Movie classes and they both serialize ok.

Great :)
Merry Christmas.
Sent from my iPhone

On 22 Dec 2016, at 08.07, Bukran<EMAIL_ADDRESS>wrote:
It did, indeed @LordMike. Thanks.
I didn't noticed 1.0.1-alpha was already up and was just waiting for the next major update.
I have already tried SearchMovie and Movie classes and they both serialize ok.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


carouselViewControl automatically height itself to itemsource of images

I would very much like the ability to have my carousel pick it's height from it's children.
<local:CardView HorizontalOptions="FillAndExpand" VerticalOptions="StartAndExpand" Style="{ DynamicResource Card }">

                    <controls:CarouselViewControl
                        Orientation="Horizontal"
                        InterPageSpacing="10"
                        Position="0"
                        VerticalOptions="FillAndExpand"
                        HorizontalOptions="FillAndExpand"
                        ShowIndicators="True">

                        <controls:CarouselViewControl.ItemsSource>

                            <x:Array Type="{x:Type View}">

                                    <Image Source="https://site.com/images/app/banner2.png" Aspect="AspectFill" />

                                    <Image Source="https://site.com/images/app/banner3.png" Aspect="AspectFill" />

                            </x:Array>

                        </controls:CarouselViewControl.ItemsSource>

                    </controls:CarouselViewControl>

                </local:CardView>

I've got this xaml code, and it works fine, only I can't see the images unless I set a HeightRequest on the CarouselViewControl element.

If I update the code more like this...
<local:CardView HorizontalOptions="FillAndExpand" VerticalOptions="FillAndExpand" Style="{ DynamicResource Card }">
                    <controls:CarouselViewControl
                        Orientation="Horizontal"
                        InterPageSpacing="10"
                        Position="0"
                        VerticalOptions="FillAndExpand"
                        HorizontalOptions="FillAndExpand"
                        ShowIndicators="True">
                        <controls:CarouselViewControl.ItemsSource>
                            <x:Array Type="{x:Type View}">
                                <Image Source="https://site.com/images/app/banner2.png" />
                                <Image Source="https://site.com/images/app/banner3.png" />
                            </x:Array>
                        </controls:CarouselViewControl.ItemsSource>
                    </controls:CarouselViewControl>
                </local:CardView>

Then I get them to show up, but it's too tall.

If it helps, CardView inherits from Frame

When is this going to be fixed? It's quite problematic, any control should be able to auto-size itself by default.

Also, using VerticalOptions="FillAndExpand" causes handlers for a changed position to be attached twice. Please fix this bug as it is a blocker in an otherwise extremely useful component.

@ddobrev  I believe I saw in an earlier issue that the owner of this project is no longer supporting it. I think it's as far along as it's going to get.
Someone will need to branch off of it and make their own if we want these issues fixed.

@Nixon-Joseph thank you for this piece of information, it's important though sad. I am personally not aware of a carousel better than this one so it's such a shame.

@ddobrev @Nixon-Joseph sadly i don't have time right now to maintain and fix all the issues reported.

@ddobrev @Nixon-Joseph a new branch doesn't need to be created as the control will be officially released in Xamarin.Forms

@alexrainman this is great news! Is your carousel going to be incorporated or some other? When is this going to happen?

@Nixon-Joseph the carousel gets it's height from the available space its parent is providing, not the other way around. Its children will get height from what CarouselView is providing them. Remember, CarouselView is a View, not a Layout.
@ddobrev this carousel will be included in Forms.

That's really cool that it'll be included in Xamarin.Forms. Thank you for your info.
And the view relation makes sense, but there are many use cases where you may not know the exact height of the contents you'll be placing in the carousel, and it would be nice if it auto heighted itself to its contents.
I hate to peddle a different plugin on this, but @ddobrev, this one seems promising for the auto-heighted functionality (Haven't tested yet) - https://github.com/AndreiMisiukevich/CardView - I'm thinking it'll work well, because as Alex pointed out, CarouselView is a view, not a layout, this other plugin inherits from a layout.
For the moment, still using this carouselView for my app's checkout steps. It's super nice, and very useful.

@ddobrev Yeah, the other one is super young, but it is being actively supported. Also, if you're looking for an auto heighting carousel, it sounds like this one is a 'no go' no matter what. Although, I suppose it might be possible to height it yourself once it loads.
Either way, once Xamarin starts support for this class, updates may be more complete, but they will definitely further apart, as they won't be focused on this aspect alone.
Marking closed, because Auto heighting is outside the scope of this plugin.

This is a great control, but there are some issues with the height.
I find that it displays well if I have FillAndExpand on it, but as Nixon-Joseph  says, without that it doesn't show up at all. I don't really what FillAndExpand on it as I want the other controls on the page to use the available space.
However I found a strange workaround, in that, the second time my page is displayed, the Carousel displays correctly even when I don't have FillAndExpand on it. But this means I've had to add a hack to display a different page first, and then switch to my page. Not sure how or why this resolves the display issue - hope this gets fixed when its part of the official Xamarin.Forms

For those, who still struggle with this issue, I found a workaround, how to change the height of the CarouselView manually. Just put it into a Grid like this:
`
<Grid.RowDefinitions>

</Grid.RowDefinitions>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>

        <cv:CarouselViewControl Orientation="Horizontal" Grid.Row="0" Grid.Column="0">
            <cv:CarouselViewControl.ItemsSource>
                <x:Array Type="{x:Type View}">
                    <Label Text="Breakfast" HorizontalTextAlignment="Center"/>
                    <Label Text="1st Snack" HorizontalTextAlignment="Center" />
                    <Label Text="Lunch"  HorizontalTextAlignment="Center"/>
                </x:Array>
            </cv:CarouselViewControl.ItemsSource>
        </cv:CarouselViewControl>
    </Grid>`

For those, who still struggle with this issue, I found a workaround, how to change the height of the CarouselView manually. Just put it into a Grid like this:       <Grid>             <Grid.RowDefinitions>                 <RowDefinition Height="30" />             </Grid.RowDefinitions>             <Grid.ColumnDefinitions>                 <ColumnDefinition Width="*" />             </Grid.ColumnDefinitions>             <cv:CarouselViewControl Orientation="Horizontal" Grid.Row="0" Grid.Column="0">                 <cv:CarouselViewControl.ItemsSource>                     <x:Array Type="{x:Type View}">                         <Label Text="Breakfast" HorizontalTextAlignment="Center"/>                         <Label Text="1st Snack" HorizontalTextAlignment="Center" />                         <Label Text="Lunch"  HorizontalTextAlignment="Center"/>                     </x:Array>                 </cv:CarouselViewControl.ItemsSource>             </cv:CarouselViewControl>         </Grid>

For those, who still struggle with this issue, I found a workaround, how to change the height of the CarouselView manually. Just put it into a Grid like this: <Grid> <Grid.RowDefinitions> <RowDefinition Height="30" /> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="*" /> </Grid.ColumnDefinitions> <cv:CarouselViewControl Orientation="Horizontal" Grid.Row="0" Grid.Column="0"> <cv:CarouselViewControl.ItemsSource> <x:Array Type="{x:Type View}"> <Label Text="Breakfast" HorizontalTextAlignment="Center"/> <Label Text="1st Snack" HorizontalTextAlignment="Center" /> <Label Text="Lunch" HorizontalTextAlignment="Center"/> </x:Array> </cv:CarouselViewControl.ItemsSource> </cv:CarouselViewControl> </Grid>

How is this a solution to the issue? The idea is for the height to be determined automatically based on carousel's items' content. not to set a fixed height.


QA system: vary top k documents in retrieval stage

We should have an option to vary the top k documents that are analyzed, i.e., tokenized into sentences and scored as passages.
@rosequ or @salman1993 ?

@lintool this is already a part of the RetrieveSentences.java and can be specified with -hits option.

I think this topic is closed. We can now specify the 'k' parameter from the front-end and get top k results back.

@salman1993 this is at the retrieval stage and not at the front-end, no?

getRankedPassages(String query, int numHits, int k) in the PyseriniEntryPoint class returns a list of the top 'k' ranked passages and the client app shows those results.

Yes, that's what I meant... We have a method to retrieve and analyze :)


Add a scroll to top button

Fixes

Fixes #168  by Riddhi9570

Description
Included a link element in the listing layout to allow users to quickly navigate to the top of the page.
This element targets an anchor tag in the page header and is styled to match the existing 'download resource' button's styling.
JavaScript functionality has been implemented in scroll.js to dynamically display the 'scroll to top' button only when the scroll position is greater than 400px.
Note that, in order to avoid duplication in style.css, the shared styles for '.downloadbutton' and '.backtotopbutton' were extracted into a new CSS class '.button'.

Screenshots
Before

After

Checklist

[x] My pull request has a descriptive title (not a vague title like Update index.md).
[x] My pull request targets the default branch of the repository (main or master).
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no
visible errors.

Developer Certificate of Origin

For the purposes of this DCO, "license" is equivalent to "license or public domain dedication," and "open source license" is equivalent to "open content license or public domain dedication."

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

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

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

Developer's Certificate of Origin 1.1

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

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

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

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

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

Closing this and moving the area of focus to Vocabulary.

https://github.com/creativecommons/vocabulary/issues/54


Feature request: Include TypeScript .d.ts file with the npm package

Expected Behavior
As the project is written in TypeScript, I would expect it to also allow using the tool with it's typings and to benefit from the defined types when writing migration scripts.
Actual Behavior
The npm package includes only the transpiled code so no types are available.
Possible Solution
Create a separate .d.ts file for the API calls used in the documentation and include it in the npm package.

It will be possible when https://github.com/contentful/contentful-migration/pull/68 is merged.
the only thing that stopping the merge is the merge conflict

I tried rebasing it myself as the only conflict was the README.md but I could not get it to work easily. The example imports are also referring to contentful-migration-cli, has this repo been renamed prehaps? I would suggest to rebase it yourself while having actual understanding of the inner workings of the code base. A lot of work done there already.
It seems to me the developer is not planning to rebase the PR as the PR seems to have evolved into a forked tool: https://github.com/watermarkchurch/migration-cli

Hey @ristomatti,
I pushed some fixed to the PR, can check now.
If all good I can go ahead and merge
Best,
Khaled

@Khaledgarbaya Thanks! I'll give it a shot when I get the chance. I'm currently using Contentful within a customer project so probing around with new tools needs to be when things aren't that busy.

I believe I got this working on a custom project directory using npm link. I'm not sure if the ts-node example would be a good idea to include in the documentation though. It seems kind of hacky especially considering the recommended way to run migrations on command command line would be using contentful-cli right?
Maybe a more future proof documentation would mention the TypeScript migration scripts would first need to be transpiled to JavaScript?

Hey @ristomatti That sounds promising can you share the project somewhere and I will try to have an example based on that in the docs

Sorry it's not in a state to be shared, I just experimented with using a tsconfig.json, type annotated JavaScript files etc. I decided to leave the experimentation for now until the typings are part of the npm package. I'm designing/creating a migration script development workflow and deployment that will be used by multiple developers already and I doubt the PR will be merged before I'm done. It's not an option in this case to use a forked branch.
The most important goal is to find the Contentful tool/library for the purpose that would most likely be supported in the future. contentful-cli is the tool recommended in the documentation but it is in beta and has some bugs that make me hesitant to include here. But as it uses contentful-migration in the background, I'm currently leaning towards creating a simplified CLI deployment tool that uses contentful-migration as a library to run the scripts (written in JS for now).

@Khaledgarbaya I ended up doing some more testing on this today after all. What I did was just take the index.d.ts file, put it to ./typings/contentful-migration folder and set ./typings as one of the tsconfig.json typeRoots. As hacky as the example seemed it did work. It took a while to figure out how it works but eventually was able to run a TypeScript migration from another TypeScript file based on one of the JavaScript examples for using contentul-migration as a library.
The typings seem to not cover everything though. To get no errors from the script I had exported from our production system I had to add to ContentType:
export interface ContentType {
  /** Change field editor interface. */
  changeEditorInterface(fieldId: string, widgetId: string, settings: Object): void
}

and change IValidation property in to also accept number[]:
export interface IValidation {
  /** Takes an array of values and validates that the field value is in this array. */
  in?: string[] | number[],
}

Where are we at with this? I'm looking to start using this tool and Typescript would be great!

I've been using the typings file in a project using ts-node and It works great! The repo is unfortunately private so I cannot link to it. I have though done some more additions/improvements on the typings file after testing it with a migration script dump from an existing system.
I can create a pull request once this is merged.

Hey @ristomatti  @joshmedeski,
We'll tackle this hopefully next week.

Ok, so I followed the updated README:
node_modules/.bin/ts-node node_modules/.bin/contentful-migration -s $CONTENTFUL_SPACE_ID -a $CONTENTFUL_MANAGEMENT_TOKEN my_migration.ts

But I'm getting the base content when you type contentful-migrate on it's own:
Parses and runs a migration script on a Contentful space.
...

And the following error at the bottom:
q is not defined

It seems like the contentful-migration script isn't taking the arguments.

@joshmedeski I'm not at the computer right now but try adding -- before the -s parameter. We're using this with the "use as a library" method. I have created a .ts file which imports the cli module similarly as in the JavaScript example. The parameter handling is done by the script though.
I'm pretty sure though I did the initial test with the command from the new documentation though...
@Khaledgarbaya I noticed the changes being applied through commits today. I'll try to find time tomorrow to do a PR on the improvements on the typings file.

Hey @ristomatti,
Thanks a lot, I will close this issue for now since the first implementation is released.

@Khaledgarbaya it seems all but one of the changes I've done have been added there meanwhile. I don't bother making a PR from that.
The only change missing was adding | number[] to IValidation.in. I added it as otherwise migration file generated with contentful space generate would not have been valid.
export interface IValidation {
  in?: string[] | number[],


Support key presses

It would be cool if the tool would support key shortcuts, like CTRL-S to save the note.

Works after some struggling. Will create a pull request for "Minor enhancements" so that it can be tested.

Could you please test if that works as expected?

I like the Ctrl-N and Ctrl-S (and it works as expected).
How ever I think Ctrl-D is very dangerous! There should be at least a confirmation dialogue.

But to keep it simple, you also could disable Ctrl-D. IMHO, deleting a note is not a daily action and therefore doesn't really need a shortcut.

OK, I have removed the CTRL+D short cut


align commands in the command buffer on 4 bytes

This fixes a crash when microui is used on my 32-bit ARM tablet.
The crash happens when assigning a structure variable directly to a field of an unaligned command union in the command stack.
More specifically, my situation was that I was trying to display a window with a label inside. the window alone would show just fine, but as soon as I added the label inside it, the program crashed.
I managed to narrow down the crash to line 500 of microui.c which happened while adding the label:
cmd->text.pos = pos;

cmd->text.pos was not aligned because the space occupied by the previous text command (for the window title) was not a multiple of 4 because of the length of the text.
With this patch, all commands will occupy a space that has a size which is a multiple of 4, which prevents alignment problems.

the command needs to be aligned to the systems alignment (which happens to be 4 in the case of ARM)
size_t alignment = alignof(max_align_t) - 1;
size = (size + alignment) & ~alignment;

is a more portable solution but depends on C11
an alignment of 8 would probably be better for portability sake, but also more wasteful


Pixhawk does not connect to QGC [when using XBee link]

I replaced my working Telemetry (433Hz) radio link between Pixhawk (v.1.6.4) and QGroundControl (v3.2) with Xbee Pro link. My setup looks as follows:
XBee Pro S1 configured at 57600 baud, 8N1.
Xbee1 (PC) <=> Xbee2 (PC): Works great! The setup is OK.
QGC (Xbee Pro) <=> Pixhawk (Xbee Pro, connected via TELEM 1 (Not working)!
On the Pixhawk side TELEM1 pin, I have connected 5V,GND, TX and RX to respective Xbee connections.
After testing, I find that the heartbeat is being sent from the QGC side (RX led blinks on Xbee at PC) and is being received at the Pixhawk (Xbee) side. RSSI led on both ends are green, as some data is exchanged. However, looks like no data is being sent from Pixhawk Xbee to the QGC Xbee. This results in no incoming heartbeats, thus no connection is established on QGC side.
I have also seen this issue on various forums but no one seems to have figured out, for e.g.
http://diydrones.com/forum/topics/xbee-as-telemetry-module-for-pixhawk-does-not-work
To me it looks like only when Pixhawk is introduced, this tends to be happening. Any help is welcome!

This is related to your link and not a software issue. Please ask the manufacturer of your link.


Volume over an existing file can't be declared unless bind is present in create-time host config

Originally reported here: https://github.com/docker/docker-py/issues/546
The following command fails:
$ curl -i localhost:8567/v1.18/containers/create -H 'Content-Type: application/json' -d '{"Volumes": {"/etc/issue": {}}, "Cmd": ["cat", "/etc/issue"], "HostConfig": null, "Image": "busybox"}

with
'HTTP/1.1 500 Internal Server Error
Content-Type: text/plain; charset=utf-8
Date: Fri, 24 Apr 2015 18:37:46 GMT
Content-Length: 142

file exists at /var/lib/docker/aufs/mnt/599f79015b6b0bf1fa39e5660f22fc396b0d8c88d07771d2af91983f1220532f/etc/issue, can't create volume there

However, if I add a Binds entry in my HostConfig like such:
curl -i localhost:8567/v1.18/containers/create -H 'Content-Type: application/json' -d '{"Volumes": {"/etc/issue": {}},  "Cmd": ["cat", "/etc/issue"], "Image": "busybox", "HostConfig": {"Binds": ["/etc/issue:/etc/issue:ro"]}}'

this works
HTTP/1.1 201 Created
Content-Type: application/json
Date: Fri, 24 Apr 2015 18:40:41 GMT
Content-Length: 90

{"Id":"5c1cdf1ed70764a831fd43673ddde77eaf2d18964163870fa90741c472130c44","Warnings":null}

as expected
$ docker start 5c1cdf
5c1cdf
$ docker logs 5c1cdf
Ubuntu 14.04.2 LTS \n \l

This essentially means it is impossible to provide the Binds configuration to the /containers/<name>/start endpoint in that use-case, which is a bit confusing. Can this be explained/documented?

This is because the container would error out when trying to mount the dir over the file anyway, so instead we're catching beforehand.

Closing since this is expected behavior.
Note that there is no need to specify /etc/issue anywhere except in the Binds config.


Not working

I don't even know how the extension should work to be honest.
I don't see any changes. Not in FDM and not in Chrome.
Probably it's tied to the fact that python did not want to install for FDM. I simply had no window suggesting installation.

Here is the detailed instruction on how to install and use add-on: https://free-addons.org/


feat: Auto-merge Dependabot pull requests

I do not think we should auto merge dependency changes.

Including minor/patch ones? Basically, if we're not auto-merging something, then we're basically requiring someone to do a more thorough check than the workflows in verifying that it's still working. Is that the case?

Ping? Since approving these PRs is more than zero work per PR (plus the noise in my inbox and Slack), I'd love to see a solution which didn't involve a bunch of clicks for no reason.

Changed to only auto-approve.

@blacha Could you please review this? We can't merge without your approval.

Ping @blacha

Ping @blacha

Kodiak is deprecated inside of LINZ and should be removed from repositories not expanded in use.