Problems during usage

Good Day!
First of all, that you for your great work!
I think it perfect base for our future plans.
I very like how you have organized .profile script in to separated small files.
But I want to ask, or in case of confirmation propose help (if it will be in my power).
So, what I got, during compilation  process all go fine and image generated perfectly!
But in case of using it I got several problems. I dont know was it caused by some errors during compilation, or it is a current project state.
Can you please look at problems list and tell is it current state or something was wrong during compile process?
P.S. I use it at RPi 3 B+.
Thank you!

missing pump
apt-get install pump

missing libpng12.so (shows in command prompt during Air RPi start. executed by /.../wifibroadcast-misc
/raspi2png)

ath9k. Reg zone not applied.
Frequencies:
* 2312 MHz [-19] (disabled)
...
* 2407 MHz [0] (disabled)
* 2412 MHz [1] (20.0 dBm)
...
* 2472 MHz [13] (20.0 dBm)
* 2477 MHz [14] (disabled)
....
* 2732 MHz [-453] (disabled)

With build in firmware for ath9k (htc_9271-1.4.0.fw) transfer speed is limited to 0.8 ~Mbit
Solution: to copy patched firmware from original WFBC.
(or compile it from sources.)

missing  hostapd
solution: apt-get install hostapd

hostapd startup function point to /tmp/apconfig.txt , but apconfig.txt missing
Reason:
Installed version of dos2unix don`t have -n arg.
dos2unix -n /boot/apconfig.txt /tmp/apconfig.txt
dos2unix: invalid option -- 'n'

Solution? install fixed version number??

missing /etc/udhcpd-wifi.conf (Used by DHCP for WiFi )

Missing OSD GUI part of Ground RPi.

Cool !!
Very good news.
I will test it asap ...

missing pump
apt-get install pump

missing libpng12.so (shows in command prompt during Air RPi start. executed by /.../wifibroadcast-misc
/raspi2png)
Solution:
apt-get install libpng12-dev

ath9k. Reg zone not applied.
Frequencies:
* 2312 MHz [-19] (disabled)
...
* 2407 MHz [0] (disabled)
* 2412 MHz [1] (20.0 dBm)
...
* 2472 MHz [13] (20.0 dBm)
* 2477 MHz [14] (disabled)
....
* 2732 MHz [-453] (disabled)

With build in firmware for ath9k (htc_9271-1.4.0.fw) transfer speed is limited to 0.8 ~Mbit
Solution: copy patched firmware from original WFBC.
(Or build from sources with patch?)

missing  hostapd
solution: apt-get install hostapd

hostapd startup function point to /tmp/apconfig.txt , but apconfig.txt missing
Reason:
Installed version of dos2unix don`t have -n arg.
dos2unix -n /boot/apconfig.txt /tmp/apconfig.txt
dos2unix: invalid option -- 'n'

Solution:  apt-get install dos2unix  - works

missing /etc/udhcpd-wifi.conf (Used by DHCP for WiFi )
Solution: Copy from original WFBC.

Missing GUI part of Ground RPi.
Inside /osd_rx_functions.sh uncomment ionice -c 3 nice dos2unix -n /boot/osdconfig.txt /tmp/osdconfig.txt
and other lines.

8.1 Inside /osd_rx_functions.sh rename cd /home/pi/wifibroadcast_osd to:
cd /home/pi/wifibroadcast-osd
8.2 /home/pi/wifibroadcast-osd different from original.
Remove and replace with original.

Inside Makefile change line to:
LDFLAGS+=-L/opt/vc/lib/ -lbrcmGLESv2 -lbrcmEGL -lopenmaxil -lbcm_host -lvcos -lvchiq_arm -lpthread -lrt -lm -lshapes

8.3 sudo apt-get install libfontconfig1-dev
apt-get install libfreetype6-dev
apt-get install libfontconfig1-dev
8.4 missing libshapes.so.2.0.0 (only 1.0.0, inside 1.0.0 missing LoadTTFFile function)
solution: Copy from original FWBC /usr/src/openvg
make
make install

ath9k. Reg zone not applayed.
...
Solution:
apt-get install python-m2crypto
wget https://mirrors.edge.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2018.09.07.tar.xz
tar xf wireless-regdb-2018.09.07.tar.xz
cd wireless-regdb-2018.09.07
sed -i '3cCRDA_PATH ?= /lib/crda' Makefile
apt-get install python-future python-attr

sed -i 's/2402 - 2472/2302 - 2742/g' db.txt
sed -i 's/(20)/(30)/g' db.txt
make
make install
iw reg set BO
REGDOMAIN=BO
sed -i 's/REGDOMAIN=/REGDOMAIN=BO/g' /etc/default/crda

forgot to add one line for GUI part
8.5 Copy /boot/osdfonts from original WFBC to /boot

Often during boot file /boot/settings.sh become broken\damaged. At screen displayed message: dos2unix failed to open temporary output file: Read-only file system

Hello,
During several tests of the Russian image I would have random errors come
up with the OSD during boot for no apparent reason.
I would also get a message on my PC saying that the "OSDconfig file is
corrupt, run ScanDisk to fix".  If I tried to exit out of the message
continually returns resulting in having to reboot my PC.  One time I
noticed that this "NULL" text would show up at the bottom of the config.txt
file.
At first I thought it was an issue with my PC but it happened on another
computer several times.
I'm not sure if any of this is related or buried somewhere with the b+
config settings I figured it was worth mentioning in case the same thing
happens to you.
On Sat, Oct 13, 2018, 5:32 PM user1321<EMAIL_ADDRESS>wrote:

Often during boot file /boot/settings.sh become broken\damaged. At
screen displayed message: dos2unix failed to open temporary output file:
Read-only file system

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/RespawnDespair/wifibroadcast-image-builder/issues/10#issuecomment-429576960,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcSp0qOqq-UWJ_rYxNmT3aO9BsxhAAHEks5uklv1gaJpZM4XagKl
.

joystick tx (ground) program missing in /tmp/rctx:
Reason:
During build from source codes appears error:
fatal error: SDL/SDL.h: No such file or directory
Solution:
sudo apt-get install libsdl2-dev   ( or only 1.2-dev?)
sudo apt-get install libsdl1.2-dev

10.2 Is it different version of RC joystick program? (different from original WFBC)

All these thing that I described here implemented inside ISO image that I uploaded to gDrive.
You may check it.
Also, ISO image contains one more bug that not described here but in the end of "Welcome new contributors " thread.

I had it compiling fine with the new versions which don't use LoadTTF, but you're stuck with a single font.

What do you mean when saying "stuck" ? :)

The other issues you report are also accurate. What would be ideal? Fix all these issues here in this repository and then move to Bortek or recreate everything there?

It`s up to you.
But maybe we can first fix everything?

What do you mean when saying "stuck" ? :)

I never thought being able to use comic sans was a good idea, but i'm sure there are people who have their own custom fonts, my solution prevents loading anything but the defaults we decide... Not a problem if you ask me, but...who knows...

It`s up to you.
But maybe we can first fix everything?

Sure thing, you seem to have found solutions for everyhting i knew of and then some. Perhaps when we have my repository working (e.g. when generating an image there are no known issues). We can then transport it to the Bortek repository.

Probable solution from point 9 will solve problem, let's check?

RO would help, but i'm pretty sure it's because i try to do dos2unix 'in place' that makes it break...
Unfortunately i'm not in a position right now to test anything, so would you be okay with me making you contributor on all my repositories so you can make changes yourself? I will of course try to help as well, but mainly testing is an issue right now...

Here (https://github.com/RespawnDespair/wifibroadcast-image-builder/issues/5#issuecomment-417866914) is some code I'd add to install the aircrack-ng/8812au driver (5.20.2). We could add it later when all will be fixed. It's not enough to make the rtl8812/14au boards to work : it needs some modifications in .profile, tx_telemetry.c, render.c. Will see it later.

Hi, Yes21.
Forgot to say to you yesterday, Lelik responded at question. Link:
http://forum.rcdesign.ru/f90/thread515083-22.html#post7546520
https://translate.google.com/translate?hl=en&sl=ru&tl=en&u=http%3A%2F%2Fforum.rcdesign.ru%2Ff90%2Fthread515083-22.html%23post7546520

Oh, many thanks, that's nice to you.
Those informations are interesting ...
Could you translate and send to him a little message, because I have problems with its lasts images ?

With the 20181003 image, the bidirectional telemetry didn't work (only down telemetry).

With the 20181007 image, the telemetry is working fine (up and down), but there is no more video transmission !!

My setup : Alpha AWUS036ACH (8812) in the air, and AWUS1900 (8814) on the ground

Many thanks if you could transmit that to Lelik.
ps : now I am going to test your image with compatible wifi boards ...

Sure, hope you have ethernet to connect to RPi ( OSD works only with it.) If not, please, tell me, I found why It not showing OSD without ethernet.

I have my groundPi connected via ethernet ...
Thanks. I am downloading the image.

Just in case image with fixed Ethernet dependency:
https://drive.google.com/open?id=1bG4b0y8Q5hfiWhDISG8zS9IRHxfiI3MI
P.S. You may contact Lelic directly, I think he can speak English.

Here is my first test of the new image.
I've tested with 2 CSL300 (RT5572 working fine with the regular image).

1 : there's no wifibroadcast-1.txt file in the boot partition.
2 : all seems correct on the groundPi (Pi3 ethernet connected) : the wifi board is correctly set up in monitor mode and I can see the osd.
3 : with my Pi0 airPi, I don't have any video or telemetry.
4 : with my Pi2 airPi, I can see video transmission (can't test telemetry because it's soldered on my Pi0).

That's a good beginning for this first step.
Many thanks to you, RespawnDespair and user1321, for all this work !

Thank you for your report!
Htcohio  also reported about problems with wifi hotspot.
So, that bug list - next target to solve....
P.S. wifibroadcast-1.txt renamed to settings.sh inside "wifibroadcast-image-builder" project.

P.S. You may contact Lelic directly, I think he can speak English.

I've just subscribed to the russian RCdesign forum, but I don't succeed in sending a message !
I got an error message that googletranslator doesn't want to translate to me.
So, could you please help me, and forward my reports to Lelik ?

Just forwarded.
http://forum.rcdesign.ru/f90/thread515083-23.html

Just forwarded.
Many thanks to you :)

Htcohio also reported about problems with wifi hotspot.
I can confirm. The groundPi says the hotspot in on, but I can't see it on any device.

P.S. wifibroadcast-1.txt renamed to settings.sh inside "wifibroadcast-image-builder" project.
Perhaps it's not such a good idea to have change its name ?

Perhaps it's not such a good idea to have change its name ?
It was not mine decision.
I also think that it may be returned to wild known name wifibroadcast-1.txt to avoid misunderstanding.
Work in progress...

Guys! Your are awesome! Sorry I had not enough time to contribute testing today.. we had a very severe hardship within the closest circle of friends. Can't really :-( ... Can't think clearly right now. Just wanted you let you know that I noticed your great achievements! Well done my friends.

I had RPI zero air side and RPI 3 B+ ground working fine but only problem was 5G hotspot ground.
OSD was working great but have not tested bi-directional Telemetry yet.
1x atheros air
3x atheros ground

Latest Test,
2.3ghz and 2.5ghz channels do not up here to work, I think this is already
known right now.
Changed wifi pssword in apconfig.txt back to wifibroadcast, got the hotspot
to work once then tried to different frequency settings and wasn't able to
get the hotspot to come back up again.  I'll try to reflash the image and
change HotSpot settings first.
During boot RX the screen shows that hotspot started successfully, I'm not
sure why this seems to happen.  I had this problem with the Russian images
well on Friday.  Could be some bug or, something else maybe.  Perhaps
internal Wi-Fi hotspot could be activated after everything else boots?
Finally, for these tests images.  CTS protection was set to "auto".  Per
the wiki this should be set to Y with RC control.  Maybe this is also part
of the problem I'm seeing.  I will continue to test and
On Sun, Oct 14, 2018, 6:28 PM HTC Communications<EMAIL_ADDRESS>wrote:

Latest Test,
2.3ghz and 2.5ghz channels do not up here to work, I think this is already
known right now.
Changed wifi pssword in apconfig.txt back to wifibroadcast, got the
hotspot to work once then tried to different frequency settings and wasn't
able to get the hotspot to come back up again.  I'll try to reflash the
image and change HotSpot settings first.
During boot RX the screen shows that hotspot started successfully, I'm not
sure why this seems to happen.  I had this problem with the Russian images
well on Friday.  Could be some bug or, something else maybe.  Perhaps
internal Wi-Fi hotspot could be activated after everything else boots?
Finally, for these tests images.  CTS protection was set to "auto".  Per
the wiki this should be set to Y with RC control.  Maybe this is also part
of the problem I'm seeing.  I will continue to test and update you if any
new info is identified.
On Sun, Oct 14, 2018, 3:56 PM user1321<EMAIL_ADDRESS>wrote:

Perhaps it's not such a good idea to have change its name ?
It was not mine decision.
I also think that it may be returned to wild known name
wifibroadcast-1.txt to avoid misunderstanding.
Work in progress...
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/RespawnDespair/wifibroadcast-image-builder/issues/10#issuecomment-429657114,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcSp0s7tWpNbh_XwmVqoqH3PYBXvGtzEks5uk5bogaJpZM4XagKl
.

3 : with my Pi0 airPi, I don't have any video or telemetry.

I think I have now a problem with my Pi0 : it can't anymore detect any cam !
So it has nothing to do with the image. I had yesterday the same problem with the last russian image, but Lelik did confirm that all is working now perfectly. Perhaps the csi connector ?
A new Pi0 W should arrive tomorrow ...

I can confirm. The groundPi says the hotspot in on, but I can't see it on any device.

I can now make the wifi hotspot work, in setting in apconfig.txt the same parameters as in legacy EZ-WBC.
My devices can see the ssid, but can't get an ip adress ...
I've also problems with ssh : I can't log on the grounPi with ssh because the password "wifibroadcast" is refused.

is there a .ssh file in the /boot ?

Yes21,
Thank you for reporting.
At my local side I already fixed WIFi. (Also DHCP)
As for 5G.
If you wish, you may use channel 157 - it will create WiFi Network.
For IP address (DHCP ) you may set it manualy.
But all this dont make any sense, because Mavlink forwarder dont working by default.
I typed about it at last post in "main" thread. ( please, read it. It contains question about Mavlink v2)
So, please, be patience and soon all be fixed.
Login:pi
Password:
raspberry
Ps. Thank you for your report.

./mavlink-routerd -e <IP_ADDRESS>:14550 /dev/pts/1:57600
Error:
Could not open conf file '/etc/mavlink-router/main.conf' (No such file or directory)
Could not set DTR/RTS (Invalid argument)

Solution (Workaround) Build patched mavlink-rounterd
sudo git clone -b rock64 https://github.com/estechnical/mavlink-router.git
cd mavlink-router
sudo git submodule update --init --recursive
#fix missing pymavlink
cd /home/pi/mavlink-router/mavlink-router/modules/mavlink
sudo git clone --recurse-submodules https://github.com/ArduPilot/pymavlink.git
cd /home/pi/mavlink-router/mavlink-router

./autogen.sh
./configure CFLAGS='-g -O2' --sysconfdir=/etc --localstatedir=/var --libdir=/usr/lib64 --prefix=/usr
sudo make

h264parse used by gst-launch-1.0 (video RTSP forward)

Guys, I once knew all the ins and outs of exwbc and can help on some of your issues. I'm davidgp on rcgroups or<EMAIL_ADDRESS>I never liked the dos2unix conversions, which used to be run during boot as systemctl scripts. I would suggest rewriting the scripts and programs to just handle the linefeeds. In DOS lines end with 0x0A0D, In uinx the 0x0D is dropped (or was it the 0x0A?)  Not moving the setup files to /tmp would unconfuse things. When I ported everything IO could to Ubuntu I broke down the scripts to accept an sttyX input and added set -x to the top of the scripts for debugging. Turning off the identifiable/persistent network names option also make debugging wifi easier. Earlier versions used ifconfig and iw for network setup instead of hostapd.
You've already found out that there are some driver changes made in the kernel. These are not all FFC compiiant, which may or may not ever be an issue. I have always ended up applying kernal patches by hand because the patch files were outdated and many of the early changes were later added to the kernal source. These changes were hardcoding the AR9721 tx power, adding additional channel support, and adding some configurable modprobe parameters. The changes that are not bypassing FCC regs need to be communicated to the proper channels for inclusion in the kernal source if possible.
You may want to scan the big thread on RCGroups and read Rodizios comments about why he did things in a specific way. He stripped the Raspian system down to a minimum level to get latency down. I remember him making some changes because certain processes caused very slow response times and latency. I'm setting up two RPi 3's to test with. I don't  have tons of free time but I'll try to help with any issues. Please let me know where to look for the russian image.I'm also looking at getting all 18 channels through mavlink and could use some help if anyone really understands mavlink.
The anual florida mullet run is happening now and I'm required to throw live mullet back into the surf just in case a large predator wants lunch.  It's the best time of year for surf fishing in florida!!

Many thanks for your help. That's great :)

Please let me know where to look for the russian image

The last russian image (from Lelik) is here.
It works pretty well with AWUS036ACH (rtl8812au) and AWUS1900 (rtl8814au).
The driver used is here (5.2.20 branch). Perhaps 5.3.4 branch will be a better choice for the future.
You can find here some code I've proposed to add to ImageBuilder to install the driver.

Next image:
It contains bug fixes: mavlink-routerd, gst-launch, hotspot, DHCP.
Using that image I able to connect via HotSpot to Ground RPi via phone, get parameters vis Ground Сontrol app (Android), receive video over raw h264 and RTSP.
As for RTSP, it confuse me a little.
Using RTSP I get video with delay something like 0.5 second +
It`s look to me very strange, because I remember that using one of my images (not published here) It was significantly lower.
So, is it normal? ( I am not saying acceptable. Just to know,  as we trying to create a copy of original WFBC 1.6)
Also I did same test at "RussianImage" at RPi 3B+ and got same result with build in wifi card (RP 3B+) and with external one.
So, please, check it also. And if you remember or know that it must (!) be lower inside GroundControl app ( I am not talking about VR_2018 app) . Please, say about it.
Also, this is not the end. Just some report about progress.
P.S. Adjust settings.sh file for your configuration.
https://drive.google.com/open?id=1Mg7O1tQmn-GTEdkfCjWZdnZWXAhG58ga

@dposea : and you can a look at this link to read latest news about the revival of the project (if you know it ...).

@all,
I was just completing some drone testing on the previously posted image.  USB tethering didn't appear to be a problem.  More testing is probably needed.
For this image:
https://drive.google.com/open?id=1Mg7O1tQmn-GTEdkfCjWZdnZWXAhG58ga
Test2 (pi3b+ hdmi/5g hotspot/usb tether/Ipad with hotspot)
https://youtu.be/Idk2Y4J0eDk
Test3 (pi3b+ , pi2/3, hdmi/5g hotspot (with android phone)
Briefcase is actually connected to pi2/3 with hdmi) latency does not appear to be any different than expected).
https://youtu.be/pD5k5h0G8SI

@dposea (@davidgp)
You are welcome to contribute. Many thanks for your help.
I suggest you to vote for a proposition I made here .

Intermediary update:
I have included a lot of fixes as found by @user1321 in the actual scripts.
It now builds an image again which contains a lot of said fixes.
Now i'm going to focus on adding and fixing the remaining bugs and fixes found by @user1321 so the image i generate should be roughly equal to his hand edited image.

Great job ! Many thanks to you :)
Don't give up ...
ps : from the beginning of your project, I was sure it will be one day very useful ! And now it has found his place in the life cycle of ez-wbc ... That's great !

Just let me quote Rodizio from the RCgroups Thread on this : „What a warte of time“.
Ohhh man... #facepalm. I dont have words for such foolishness.
Exzellent Work! Kudos!!!!!
Von meinem iPhone gesendet

Am 17.10.2018 um 19:31 schrieb Yes21<EMAIL_ADDRESS>Great job ! Many thanks to you :)
Don't give up ...
ps : from the beginning of your project, I was sure it will be one day very useful ! And now it has found his place in the life cycle of ez-wbc ... That's great !
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Guys, please, do a lot more tests...

Issue #13
Thank you for pointing at that bug!
It is very interesting thing...
After a lot of tests with RPi ground + several cards I was able to reproduce that bug, and I think it related not only to ImageBuilder!!! In case of 3 TP-Link wn722n everything seems stable, But if replace one wn722n with powerful card and dont connect direct power line to it - RPi will drop one of the USB cards.
And here where bug is hiding:
ImageBuilder( Original WFBC also?) kill and start rx\tx programs. But, not all!
Thank you Htcohio for pointing at it!

@user1321 WOW, that's a great find, i've included it in the fixes for the coming 1.6 image.
Most of your findings have been included now, struggling to generate a working image now...

The entire image needs to be tested extremely.
I'd rather fix this in the 1.6 image instead of having it as a known bug.

I have uploaded a test image created with the image-builder. Zero manual intervention on this.
Most of the issues adressed by @user1321 should be fixed in this image, some issues still remain as indicated on my project board.
I currently don't have a pixhawk ready for testing, so the OSD should work, but i have no way of validating.
Please report any issues individually on the issue list so i can work them out for the next release.
Link:
https://drive.google.com/file/d/1Ba38JfWNB58pWxC4Rcdjmxg7w0NTQ0js/view?usp=sharing
Short summary:
* Uses 4.14 kernel
* Uses 1.6RC6 RC program (i have a custom one in the works, but that's experimental)
* Uses my custom OSD which no longer supports custom fonts. Support for loading TTF was dropped from the libraries due to locking up the GPU
* Completely untested except for the basic video tranmission

So please don't use this for flying just yet.
Now i'm going to get some sleep and continue on the issues on the board tomorrow. I'm also considering updating to Mavlink 2 since Mavlink one seems to be causing a lot of issues. If anybody has a shortlist for what that would require, i'd love the head-start.

@RespawnDespair,
I want to ask, OSD working for you at your side?

No, but i thought it might be because there is no data coming in. It doesn't show when you have a pixhawk connected either?
Then i need to get my setup working here so i can test properly myself...

@RespawnDespair

No, but i thought it might be because there is no data coming in. It doesn't show when you have a pixhawk connected either?

OSD.Unfortunately, I afraid thats not reason why it not appears. If try to run it manually, it will throw out "segmentation failure" Thats main reason why I returned back to original OSD.
They both did`t work at start and was required to be fixed\ adapted ( in case of original you may see solution list at point 8.)
As I understood your version should use less CPU? Any other difference for and user?

Other things...
I able to connect to WiFi hotspot, but no video or telemetry forwarded.

I'm getting the same segmentation fault, i suspect the precompiled font is to blame, i'm working on a solution. In regards to the video not being forwarded i have no way of testing right now. I suspect something would be broken in the script that handles the forwarding, or perhaps the ftee program?

In last version that I posted (v02 ) forwarding part was working fine.
Solution must be near...
I will check it.

OSD is broken in my image, the osdicons font was generated empty. I have since found the OpenVG branche the original was built with, i'm building a new image with the original OSD in it. I will verify if it works before uploading again.
Sorry for the confusion.

Great.
As for mavlink forwarding, Probably it works. Just replaced TX wifi card to other one...
Will do more test`s.
P.S. Probably you may add 2 lines to install script to change 2 lines inside fstab file?
Probably that will help a lot.
Something like:
sudo sed -i 's/vfat    defaults/vfat    defaults,ro/g' /etc/fstab
sudo sed -i 's/ext4    defaults,noatime/ext4    defaults,noatime,ro/g' /etc/fstab

The fstab file is in the overlay dir in this repository, so no need for the sed commands. I will edit the overlay for the next image.

@user1321 I have the OSD running again, but for some reason it appears 'behind' the video. Any idea what i might have overlooked? It has a white background as well, instead of transparent.

@RespawnDespair Fantastic job ! Don't give up ...
Perhaps I will tonight run the build script to test it, and then test the build image.

Found it, custom modifications in the openvg library...
Need to either make a patch or create my own fork for this to keep working...

I have finally found the last problems with the OSD, i'm cooking a new image right now, will test it before uploading it. Might be tomorrow evening, image creation takes some time and testing as well.

@RespawnDespair : I'm building the image. Will test it this afternoon ...

@Yes21 thank you very much, i hope it was the fstab, i have not changed much else... I was so close to a complete working image...

**@RespawnDespair

**  : The build process is finished. It took one hour (twice the time as in my latest tries in august !).
I had one blue screen with a choice for "wireshark" (?).
See attached screenshot.
I will now test the image and make you my report later ...

@RespawnDespair  : First test ...
On the groundPi :

the image is booting
I see the splashscreen
I see my wifi board (CSL300) is set up in monitor mode
I see the wifi hotspot is enabled, and I can connect to him
I see the message "Ethernet connected IP :" whitout IP adress.
SSH connection is ok for<EMAIL_ADDRESS>no Video
no OSD
no telemetry with QGC connected via wifi hotspot

On the airPi (tried with Pi0 and Pi2):

I can ssh to<EMAIL_ADDRESS>I can verify with iwconfig that my wifi board (CSL300) is set up in monitor mode

@Yes21 if you can switch to tty2 (with keyboard attached to ground pi that's ALT+F2, does it show any errors? That's the TTY the OSD is built on, TTY1 is the video/main TTY, any errors there? The OSD is what i changed in this version, video has never been an issue for me...

@RespawnDespair : I've just found a usb keyboard !!
On tty2, 2 last lines are errors :
Error freetype failed to load in LoadTTFFile("/boot/osdfonts/Archivo-Bold.ttf")
ERROR: Failed to load font!

strange, i thought i included that in the overlay dir...but apparently not... Stupid mistake, i will correct it when i get home. To test the rest of the image you can manually copy it to the /boot partition on a windows pc.

@RespawnDespair : There's no "osdfonts" dir in overlay/boot in your github ...
Where can I find these fonts ?

No, i have them, extracted from the original image, but apparently i forgot to commit them to the repository. I do not have them available here at work, i will commit them later this evening when i'm home.

Ok, now I can make a pause and go for a walk with my dog :)

I'm uploading the missing files now, i found them on my work pc. So maybe you can test when you get back from walking the dog 😄

And now they are in the right folder as well, sorry for this, stupid mistake.
This should not affect the video streaming in any way however...

Ok thanks !
Should I copy the osdfonts on the sd card in /boot/overlays ?

@RespawnDespair

video has never been an issue for me...

Is it working for you ?

Sorry, the osdfonts folder goes directly under the root, so next to overlay.
Video was working for me in the last image i pushed.

I've just built a new image, but will test it tomorrow ...
Good night to You.

I ahve generated a new image based on the lastest Github.
Updated image
Untested as i am at work, but if somebody would at least verify it boots and show OSD/video i would be very grateful.

I will do it later in the afternoon.
Thanks.

I've tried with your latest image.

boot ok,
OSD ok,
no video, nor telemetry.

I think my problem is with my airPi and my wifiboard (CSL300 - rt5572)
So I've connected my hdmi screen on it.
The boot is ok, and the wifiboard set in monitor mode.
But after that, I see a continuous flow of lines which never stops (see joint picture).
I never had this problem with the same setup and 1.6rc6 ...
That's certainly a specific problem with ralink rt5572, but I've any other compatible wifi board.
So I can't test further, and I'm very sad ;)

I flashed the image before I left for work this morning.
I grabbed some gear so in a few minutes I'll test it out with all atheros cards.

To make the system rw manually you can just type rw.
I'll test with my dongles as well this evening.

Hello,
I tried your image during lunch.  The video quality was below 1mbs
Boot: OK
OSD: OK
Video: really bad and 2sec latency

Freq: 2312

*I have pi3b+ ground and I had to enable RC-mavlink in the wfb.txt file.
*I also enabled the 5G hotspot in apconfig.txt on pi3b+
Here is a Dropbox link to my exact config settings for wfb and apconfig.txt
https://www.dropbox.com/sh/euk4vgk8rj2dyrn/AAArdI0ZB1IvMoq2xZ3IycVHa?dl=0
Here's a link to the video, sorry it's very poor quality it was set up in
my car.
https://youtu.be/wMEOmpY0AME
I hope this helps in some way...
On Oct 23, 2018 8:04 AM, "Jelle Tigchelaar"<EMAIL_ADDRESS>wrote:
I ahve generated a new image based on the lastest Github.
Updated image
https://drive.google.com/open?id=1CN63R1GIa7looYJsHhcKy_BgKlDHFyJ6
Untested as i am at work, but if somebody would at least verify it boots
and show OSD/video i would be very grateful.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/RespawnDespair/wifibroadcast-image-builder/issues/10#issuecomment-432218706,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcSp0s7wCc-u7cN5iS5f8i0nnPC9g-_Cks5unwXEgaJpZM4XagKl
.

@htcohio Pi3B+ is not yet supported in this image. There is no kernel8.img
It will use the kernel7.img, but that might lead to the performance issues you report.
I will try to build a new image WITH kernel8.img in the coming days, i have tested it separately, but not integrated in the builder yet.

Understood, sorry I thought it was already integrated.

Hey** @respawndespair
I noticed that the Wi-Fi station card got really hot on the TX after not
being on for very long.
You might want to make sure that txpower is not over 58 especially when you
receive the new one on its way to you.
Once a few months back  I set the TX power to 63 on accident and it started
to get really hot just like it did today.
Keep that in mind
On Tue, Oct 23, 2018, 1:50 PM Jelle Tigchelaar<EMAIL_ADDRESS>wrote:

@htcohio https://github.com/htcohio Pi3B+ is not yet supported in this
image. There is no kernel8.img
It will use the kernel7.img, but that might lead to the performance issues
you report.
I will try to build a new image WITH kernel8.img in the coming days, i
have tested it separately, but not integrated in the builder yet.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/RespawnDespair/wifibroadcast-image-builder/issues/10#issuecomment-432349687,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AcSp0oEGvGPo4mofsA3CMP9HUrPczlHoks5un1bZgaJpZM4XagKl
.

@htcohio I have built a HIGHLY EXPERIMENTAL image for the Pi3B+
I am aware that such images exist, but this one was built with the image builder. So all the stuff you normally do by hand is now scripted in the build pipeline.
I have NO idea whether this works or not, but please give it a shot.
LINK

@RespawnDespair thank you, I'll give it a shot momentarily when I get home and give you an update within the hour.

@RespawnDespair thank you very much for all the hard work.
Unfortunately the ground does not appear to boot the screen just stays blank and the Wi-Fi cards do not initialize.  If you can tell me how to obtain more detailed information I'd be happy to do that.

Did you have any output on the screen at all? It was a long shot anyway. I'll try to get a Pi3B+ for myself so i can test.
@user1321 since you had a working image, can you provide me with the exact steps you took to make it work? So i can take a shot at integrating it in the builder?
The Pi3B+ is readily available now, so a lot of users might want to run EZWFB on it. It seems to me this should be included in the 1.6 release to make it worthwhile...

Yes agreed! Pi 3b+ support would be a big move forward

Closing this issue now that we have separate issues for the remaining problems.
Thanks to all for testing and verifying!

ath9k. Reg zone not applayed.
...
Solution:
apt-get install python-m2crypto
wget https://mirrors.edge.kernel.org/pub/software/network/wireless-regdb/wireless-regdb-2018.09.07.tar.xz
tar xf wireless-regdb-2018.09.07.tar.xz
cd wireless-regdb-2018.09.07
sed -i '3cCRDA_PATH ?= /lib/crda' Makefile
apt-get install python-future python-attr

sed -i 's/2402 - 2472/2302 - 2742/g' db.txt
sed -i 's/(20)/(30)/g' db.txt
make
make install
iw reg set BO
REGDOMAIN=BO
sed -i 's/REGDOMAIN=/REGDOMAIN=BO/g' /etc/default/crda
ADD:15.10.
sed -i 's/2402 - 2472/2302 - 2742/g' db.txt
sed -i 's/(20)/(30)/g' db.txt
change to:
sudo echo -n "" > db.txt
sudo echo -e "country 00:\n" >> db.txt
sudo echo -e "(2302 - 2742 @ 40), (30)\n" >> db.txt
sudo echo -e "(5170 - 5250 @ 80), (30), AUTO-BW\n" >> db.txt
sudo echo -e "(5250 - 5330 @ 80), (30), DFS, AUTO-BW\n" >> db.txt
sudo echo -e "(5490 - 5730 @ 160), (30), DFS\n" >> db.txt
sudo echo -e "(5735 - 5835 @ 80), (30)\n" >> db.txt
sudo echo -e "\n" >> db.txt
sudo echo -e "country US: DFS-FCC\n" >> db.txt
sudo echo -e "(2302 - 2742 @ 40), (30)\n" >> db.txt
sudo echo -e "(5170 - 5250 @ 80), (30), AUTO-BW\n" >> db.txt
sudo echo -e "(5250 - 5330 @ 80), (30), DFS, AUTO-BW\n" >> db.txt
sudo echo -e "(5490 - 5730 @ 160), (30), DFS\n" >> db.txt
sudo echo -e "(5735 - 5835 @ 80), (30)\n" >> db.txt

forgot to add one line for GUI part
8.5 Copy /boot/osdfonts from original WFBC to /boot

The method I used was "kernel internal CRDA" and de-install all userspace CRDA stuff. This is much simpler than coping with userspace CRDA and signing etc.
Also, setting regdomain=BO is not needed at all (since my kernel patches and CRDA config remove all channel and power limitations, regardless of country set) and may prevent people from using channel 13 for the internal wifi hotspot.
I also noticed that in the image builder some db.txt file gets copied over, I don't see the point as this is already being done in one of the kernel patch files.
Are you using the kernel configuration files I posted here? https://github.com/bortek/EZ-WifiBroadcast/tree/develop/kernel

I wa susing those patches (modified for the latest kernel) then i switched to a single patch and now i'm moving back again 😄
Can you explain what you mean by "kernel internal CRDA"? I have set the CONFIG_CFG80211_INTERNAL_REGDB=y and that's why i'm copying the db.txt.

@rodizio1 like i said in the other issue, i figured it out while reverting to the original patches.

Okay cool. Also don't forget to disable/remove userspace packages if you haven't already, if I remember correctly they are called "wireless-regdb" and "crda".

Could you clarify on that?
Just apt-get remove those packages in the package stage?

Yes. Always use --purge to also get rid of config files.


Leaderboard getScores doesn't take count and offset in parameter.

Version

Phaser Version: 3.10.1

Operating system: Windows

Browser: Firefox

Description
This bug is simple. The count and offset parameters of the getScores method of the Leaderboard class are fixed to their default value. Inspecting the code shows that they are not passed as parameters to the Facebook API.
I tried to show the first place of my leaderboard but the next results showed up.

Example Test Code
I cannot really provide an example code as to be reproduced it needs a Facebook Leaderboard.

Additional Information
The solution is to add arguments to getEntriesAsync in the Leaderboard method.
I will try to make a pull request.
Thanks for making this engine.

Thanks for opening this issue, and for submitting a PR to fix it. We have merged your PR into the master branch and attributed the work to you in the Change Log. If you need to tweak the code for whatever reason please submit a new PR.


Dev tooling 10

Fix for bug in api code gen where a {{ }} block occurs inside of backtics.
Fix is to translate backtic regions into code-example blocks.

My only concern with this change is that, unless I am mistaken, it is adding behaviour to a processor that was designed for something else. We should create a new processor.

How about changing the name of the processor instead, because I need to do the matched backtic processing before I do the code-example substitution.

merged.


CLI for Pinpoint

Hello,
I am new using Pinpoint, What is the CLI for Pinpoint so that I can query and fetch the data on command line.
Or any Document related to CLI or API , kindly forward the link.
Thanks and Regards,
Jayesh Muley

hi @JayeshMuley
Unfortunately, Pinpoint does not have such function as CLI.
Pinpoint has Http API, but this is not recommended to use because it could change without announcement.
thanks :)


There's no need to set the file modification date on item set, it's u…

…pdated automatically by the system. But we should be setting the date internally.
Improves the setObject method by ~5% on an iPhone 4.

My thought was correctness (I measured a difference of one second which is who cares) and the assumption it would be cheap because we're already getting the actual disk size already at the same time.
Separately, I thought about removing the actual disk cost as an option (instead using data length which should only be off by whatever the file system's block size or whatever it's called) in which case pulling the on disk modification date likely isn't worth it…
Anyway, might be worth adding an option for skipping all the reads after set :D

Useful context, all that makes sense - thanks!
Yeah, these do seem like legitimate points of engineering rigor.  My 2c is that, since this is a cache rather than a syncing service or such, the speed of avoiding further disk access contention is an asset worth more than the ~5% error in space and time management.
I agree it makes sense to provide as an option (maybe even default-off?), since there could certainly be use cases where highly predictable / exact behavior is expected.
	-- Scott

On Oct 6, 2016, at 7:43 PM, Garrett Moon<EMAIL_ADDRESS>wrote:
My thought was correctness (I measured a difference of one second which is who cares) and the assumption it would be cheap because we're already getting the actual disk size already at the same time.
Separately, I thought about removing the actual disk cost as an option (instead using data length which should only be off by whatever the file system's block size or whatever it's called) in which case pulling the on disk modification date likely isn't worth it…
Anyway, might be worth adding an option for skipping all the reads after set :D
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/pinterest/PINCache/pull/118#issuecomment-252140665, or mute the thread https://github.com/notifications/unsubscribe-auth/AAigA0iO22eU3kVoWGrkAn5aJtz8jS3Dks5qxbHggaJpZM4KQR5G.


"First" operator has been removed but no documentation to say what to use instead

I used to use the first() operator to get the first result and close/unsubscribe from the observable but with RXJS 6 the first() operator has been removed and i was wondering what i should use instead.
Also this should the alternative/s should be added to the upgrade documentation

Your right, thanks I read the docs wrong, i got mixed up with resultSelector first.
This can be closed and thanks

Thx @bafolts! Closing.


read comments from fields of anonymous structs

This PR adds support for reading documentation comments from fields of anonymous structs. The code keeps track of what fields it has traversed, and builds up a breadcrumb that includes every parent field.
Consider the following fields:
type A {
    Val1 int
    Val2 struct {
        StructVal int
    }
    Val3 []struct {
        SliceVal int
    }
    Val4 map[struct {
        MapKeyVal int
    }]struct {
        MapValueVal int
    }
}

These fields will, respectively, have the following breadcrumbs, used (along with the fully qualified name of the package) as the key in the comments map:

A.Val1
A.Val2.StructVal
A.Val3.[].SliceVal
A.Val4.[key].MapKeyVal
A.Val4.[value].MapValueVal

Note that any time the code encounters a non-anonymous type, it resets the breadcrumb to the type's fully qualified name.
Tested with a decently large codebase.

@samlown I've added tests now

@samlown I cleaned up the breadcrumb tracking a bit to make the code more readable, and I also added a fix so that comments of generic classes are fetched correctly. Let me know if there's anything else I could do to help upstream this, since the lack of support for anonymous structs is forcing us to use a fork for our documentation at the moment.
Instead of explicitly passing the breadcrumb/path as a parameter everywhere, I also toyed with the idea of a pattern like:
r.withField(f.Name, func() {
	// f.Name is at the top of the breadcrumb stack here
	property = r.refOrReflectTypeToSchema(definitions, f.Type)
})
// f.Name has been popped from the stack here

This would greatly reduce the number of places where you need to interact with the breadcrumbs, but it's also a bit volatile since it's easier to forget to include it. Let me know if it looks a bit more palatable to you, though.
Alternatively, perhaps the cleanest solution would be to add thin wrappers around reflect.Type/reflect.StructField that automatically track how types are accessed when you call Elem()/Field()/etc and provide FullyQualifiedName() methods that works for anonymous structs too.


Support for bitmap fonts, EBDT + EBLC tables

This PR makes a few changes that allow ttf_parser to be used with bitmap fonts (i.e. .otb files):

Added EBDT and EBLC tables (which are basically just aliases for CBDT and CBLC)
Implemented additional formats for the CBLC parser
Extended RasterImageFormat with the various uncompressed bitmap formats that may appear in a font

The PR also fixes some issues with CBLC parsing I found during testing:

The code for searching through subtables to find the best size did not correctly track the byte stream. There are 3 bytes between the end of ppem_x and the start of the next subtable, not 4. Also, these final bytes always have to be skipped, not just when !(start_glyph_id..=end_glyph_id).contains(&glyph_id).
location.metrics was never populated and always held the default value

I tested the changes on Terminus fonts and on some fonts I exported using Bits'N'Picas. The Terminus fonts are monochrome with several subtables for different scales. The Bits'N'Picas fonts are 8-bit grayscale.
The PR includes an automated test using one limited example font I created myself (so there are no copyright issues).

Hi! Thanks for the patch. There are a couple of reasons why EBDT+EBLC haven't been implemented yet.

I haven't been able to find a font that uses those tables. Even CBDT+CBLC are exceedingly rare. Afaik only Google uses them. And it's kinda deprecated, afaik.
Unlike CBDT+CBLC/sbix, where we have just a PNG, here we have a custom encoding format. And the question is: should we decoded it or not. To my understanding, all EBDT bitmaps are 1bit, therefore they can be decoded into Planar8 quite easily. This would require some changes to the API so we could decode it on-demand and probably into user-provided buffer. How do you plan to use this data? Do you decode it yourself or do you need the actual raw data?

Also, what about EBSC?

To provide some context and answer your initial questions. I'm working on a game with a custom engine. I already implemented TrueType rasterization using your library, but I would also like to support bitmap fonts since they're relatively easy to make and appear "crisper" at lower resolutions. I've been browsing around for bitmap fonts, and it seems that OTB is a fairly common format to find them in, and is commonly supported for tools that export bitmap fonts. All the ones I've found use EBDT+EBLC. I haven't seen any CBDT, CBLC or EBSC tables.
For your second point, I don't think ttf_parser should attempt to decode image data, or at least, it should always provide access the raw data. There are so many ways to use it that it would be impossible to satisfy everyone otherwise. For example, I currently decode the data into a 16bpp buffer where the color is always 255, and the opacity comes from glyph data. I upload this to a texture on the GPU. At some point in the future I might switch to a 32bpp buffer where again, the color is always (255, 255, 255) and the opacity comes from the glyph data. Right now, I create an image per each glyph, but in the future I might create one large image that I decode all the glyphs into. Alternatively, for some formats (e.g. 8-bit grayscale and 32-bit bgra), it is possible to upload the raw data directly, skipping decoding entirely. I would not be happy if I had to allocate a temporary buffer that I didn't need.
Anyway, I wanted to thank you for this awesome library! It's been working great for me so far.

I see. Thanks for the explanation.
To my understanding, the current implementation of EBDT+EBLC is identical to bdat+bloc. EBDT+EBLC added only formats 8 and 9, which we do not support anyway and which should be documented/mentioned somewhere. Including in the readme (it should be ~ (no 8, 9)). And then we can mark bdat+bloc as fully supported.
As for the code, I would suggest adding:
pub bdat: Option<cbdt::Table<'a>>,
pub ebdt: Option<cbdt::Table<'a>>,

We already do the same trick with hmtx and vmtx. No need for separate tables/wrappers.
And in the cbdt::Table docs mention that this table is used to parse bdat, EBDT and CBDT.
PS: if you would have performance issues parsing those tables, we could pre-parse them more. Currently we're re-parsing a lot of data for each glyph.

Also update the c-api crate.

Addressed the follow-up comments. From the bdat specs, it doesn't allow formats 8 and 9, but it does allow format 4, so I marked that as unimplemented in the readme. I also marked 8 and 9 as unimplemented for CBDT because any format that is valid for EBDT is technically allowed to appear in CBDT.
I updated the C API but admittedly I didn't really know what I was doing and was just following patterns. You might need to adjust things.

Thanks. Looks good to me.

Thanks for you work! I will publish a new version soon.

Published a new version.


Add coverage and build badge to README

This adds two badges to the README to show the current build status and coverage at a glance.

Current coverage is 68.38% (diff: 100%)

Merging #400 into master will not change coverage

@@             master       #400   diff @@
==========================================
  Files            23         23
  Lines           949        949
  Methods         198        198
  Messages          0          0
  Branches        201        201
==========================================
  Hits            649        649
  Misses          300        300
  Partials          0          0

Powered by Codecov. Last update 1d6c88f...bae78f0


Changes are not detected - Invalid metrics

Not sure if there is another hidden settings I should set, but I'm not able to the a report from the tool.
What I did:

Installed the tool via Markeplace
Created 2 new pipeline, one using YAML and another using Classic, both using the default settings
Created a file with cs extension with lots of lines. PR was marked as x-small without any additional metric
Merged that PR and opened another one with 291 lines added (see screenshots below), and got the same results
Setting the system.debug to true, I was able to see this output ##[debug]Test File: test.cs (0 lines) which seems wrong

    Adjusting the test factor input to '1'.
    ##[debug]FileMatchingPatterns=undefined
    ##[debug]* Inputs.initializeFileMatchingPatterns()
    Adjusting the file matching patterns input to '["**/*","!**/package-lock.json"]'.
    ##[debug]CodeFileExtensions=undefined
    ##[debug]* Inputs.initializeCodeFileExtensions()
    Adjusting the code file extensions input to '["js","_js","bones","cjs","es","es6","frag","gs","jake","jsb","jscad","jsfl","jsm","jss","jsx","mjs","njs","pac","sjs","ssjs","xsjs","xsjslib","epj","erb","py","cgi","fcgi","gyp","gypi","lmi","py3","pyde","pyi","pyp","pyt","pyw","rpy","smk","spec","tac","wsgi","xpy","pyx","pxd","pxi","eb","numpy","numpyw","numsc","pytb","java","jsp","ts","tsx","cs","cake","csx","linq","php","aw","ctp","fcgi","inc","php3","php4","php5","phps","phpt","cpp","c++","cc","cp","cxx","h","h++","hh","hpp","hxx","inc","inl","ino","ipp","re","tcc","tpp","c","cats","h","idc","cl","opencl","upc","xbm","xpm","pm","sh","bash","bats","cgi","command","env","fcgi","ksh","tmux","tool","zsh","fish","ebuild","eclass","ps1","psd1","psm1","tcsh","csh","rb","builder","eye","fcgi","gemspec","god","jbuilder","mspec","pluginspec","podspec","prawn","rabl","rake","rbi","rbuild","rbw","rbx","ru","ruby","spec","thor","watchr"]'.
    ##[debug]patternRoot: 'undefined'
    ##[debug]matchOptions.debug: 'false'
    ##[debug]matchOptions.nobrace: 'true'
    ##[debug]matchOptions.noglobstar: 'false'
    ##[debug]matchOptions.dot: 'true'
    ##[debug]matchOptions.noext: 'false'
    ##[debug]matchOptions.nocase: 'true'
    ##[debug]matchOptions.nonull: 'false'
    ##[debug]matchOptions.matchBase: 'false'
    ##[debug]matchOptions.nocomment: 'false'
    ##[debug]matchOptions.nonegate: 'false'
    ##[debug]matchOptions.flipNegate: 'false'
    ##[debug]pattern: '**/*'
    ##[debug]applying include pattern against original list
    ##[debug]1 matches
    ##[debug]pattern: '!**/package-lock.json'
    ##[debug]trimmed leading '!'. pattern: '**/package-lock.json'
    ##[debug]applying exclude pattern against original list
    ##[debug]0 matches
    ##[debug]1 final results
    ##[debug]* CodeMetrics.matchFileExtension()
    ##[debug]* Inputs.codeFileExtensions
    ##[debug]* Inputs.initialize()
    ##[debug]File name 'test.cs' has extension 'cs', which is included.
    ##[debug]* CodeMetrics.constructMetrics()
    ##[debug]Test File: test.cs (0 lines)
    ##[debug]* CodeMetrics.initializeIsSufficientlyTested()
    ##[debug]* Inputs.testFactor
    ##[debug]* Inputs.initialize()
    ##[debug]* Inputs.testFactor
    ##[debug]* Inputs.initialize()
    ##[debug]* CodeMetrics.initializeSizeIndicator()
    ##[debug]* CodeMetrics.calculateSize()
    ##[debug]* Inputs.baseSize
    ##[debug]* Inputs.initialize()
    ##[debug]* CodeMetrics.getDeletedFilesNotRequiringReview()

Kindly regards

Mario

Hi @marionzr,
I haven't heard back in 1 month, and I don't have sufficient details to assist further. I'm closing this issue, but you can reopen it if it persists. Thanks for using PR Metrics!


Skelecton is moving Y up a bit while using Blend2

Godot version:

Godot 3.1.1.devel 7f691e8bb
OS/device including version:

Kubuntu 19.04 / GTX 1070 Ti (driver version : 418.56)
Issue description:

Skelecton is moving Y up a bit while using Blend2 with AnimationTree even though it is the same animations.
Steps to reproduce:

Minimal reproduction project:

AnimTree blend.zip

Also affects 3.1.stable.official.


IAM Custom Role - documentation edited (note ???'d question)

Done. Approve?
From: Vincent Pun<EMAIL_ADDRESS>Sent: Wednesday, September 5, 2018 4:38 PM
To: sourced/deploymentmanager-samples<EMAIL_ADDRESS>Cc: Alexander Levitski<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [sourced/deploymentmanager-samples] IAM Custom Role - documentation edited (note ???'d question) (#43)
@sourced-vince requested changes on this pull request.

In community/cloud-foundation/templates/iam_custom_role/organization_custom_role.py.schemahttps://github.com/sourced/deploymentmanager-samples/pull/43#discussion_r215414794:

For more information on this resource:

For more information on this resource: THE LINK IS TO .../projects... SHOULD BE .../organizations...???

I'm not sure I follow your question here. Could you please clarify.

In community/cloud-foundation/templates/iam_custom_role/organization_custom_role.py.schemahttps://github.com/sourced/deploymentmanager-samples/pull/43#discussion_r215415031:

 https://cloud.google.com/iam/reference/rest/v1/projects.roles/create

To deploy custom organizational roles your project will need to enable the

Identity and Access Management (IAM) API. You may also need to grant

To deploy custom organization-level roles, your project OR ORGANIZATION??? needs the Identity

your project needs the Identity...

In community/cloud-foundation/templates/iam_custom_role/project_custom_role.py.schemahttps://github.com/sourced/deploymentmanager-samples/pull/43#discussion_r215415669:

 For more information on this resource:

 https://cloud.google.com/iam/reference/rest/v1/projects.roles/create

To deploy custom project roles your organization will require the Identity

To deploy custom project-level roles, your organization ??? OR PROJECT??? needs the Identity

your project needs the Identity...

In community/cloud-foundation/templates/iam_custom_role/README.mdhttps://github.com/sourced/deploymentmanager-samples/pull/43#discussion_r215417374:

Prerequisites

Install gcloud

-- Create a GCP project, setup billing, enable requisite APIs

+- Create a GCP project, set up billing, enable requisite APIs
+- ??? roles/permissions ???

Grant the iam.roleAdmin, iam.organizationRoleAdmin or owner https://cloud.google.com/iam/docs/understanding-custom-roles IAM role to the project service account

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/sourced/deploymentmanager-samples/pull/43#pullrequestreview-152675234, or mute the threadhttps://github.com/notifications/unsubscribe-auth/Aokzc08rNwfq3SZE9DvMwZh_lc3XRxHlks5uYDYNgaJpZM4WZrxS.


Using double quotes in name,  title, description fields will generate invalid JSON schema

Entering a double quote in any description field generates invalid JSON.
For example, using the values
test
"test"
in the Form Name and Form Description respectively will generate the following JSON schema output:
{   type: 'object',   title: 'Test',   description: '\''' }
Verified in the online playground: https://ginkgobioworks.github.io/react-json-schema-form-builder/

@ssmithereens I think the issue is not that the output is incorrect, but that the React JSON edit in the "Edit Schema" tab of the example app is showing JavaScript notation for an object, rather than actual JSON. I think the best course of action here is to replace the editor with one that is for actual JSON.

Makes sense. Thanks!


Added scrapy splash to render page and execute js

Changes Unknown when pulling ad998275c20825b11c61c5b0a4a4ea81229cc216 on effective-splash into ** on master**.

Changes Unknown when pulling 83f0e0ca1b493a07918a5ec675ef08df24fc35a8 on effective-splash into ** on master**.


Is there an easy way to parse PDF hyperlinks?

I'm wondering if there's an sample which shows how to parse PDF hyperlinks to urls and other pages.
There is the annotation example, but that only lists the annotations, I cannot find a way to make any sense out of this.

A number of functions let you write internal links or URLs (for example CellFormat(), Image(), Link(), LinkString(), etc) when you create a document. However, since this library only generates PDFs and cannot read them, there is no parsing of PDFs to extract links.


Understanding why exclude option never works, and entry point difficulty

Search terms
negate exclude
Question
I am trying to understand entry points and exclusions. I assume "entry point" means an index.tsx file that is the root of our application, but we have dynamically loaded routes in a react app so a majority of the app is "linked" but even so, using that individual file produces docs output of nothing but our readme.
I tried uses a glob for entry points instead "entryPoints": ["app/**/*.ts?(x)"], which works, except I cannot get excludes to work despite trying a dozen different things.
I tried negating stuff in the glob in various ways, I tried adding stuff to the exclude array, yet nothing is ever excluded from the output.
For example:
{
  "$schema": "https://typedoc.org/schema.json",
  "entryPoints": ["app/**/*.ts?(x)"],
  "exclude": ["app/**/*(.spec|.stories).tsx"],
  "out": "docs"
}

The .spec.tsx and .stories.tsx files are still in the docs output. I've tried various glob patterns, listing them as separate array entries, etc. No changes.
Am I misunderstanding how this works?

This doesn't work because I forgot to handle --exclude when adding support for globs in entry points, sorry about that!

Thanks! Please let me know if you can when this gets released.

Should be later today, there are a couple issues I'd like to get fixed if I have time, but either way, planning on a release today


Update What is Akka.md

Improved  punctuation.
Made second "let it crash" consistent with the first.

Thank you for your contribution.


Catalog Synchronization

Catalog synchronization and rpc

No longer relevant. Catalog refactor makes this out of date and hard to fix. Will just implement replication with log records since nobody is currently depending on this to run experiments.


Fix phpdoc in yii\helpers\BaseHtml

Q
A

Is bugfix?
yes

New feature?
no

Breaks BC?
no

Tests pass?
yes

Fixed issues
-

Thank you!


Add support for the symbolic string literal

Purpose

This PR will introduce the symbolic string literal. A  symbolic-string-literal  'foobar is equivalent to a double-quoted-string-literal  "foobar".

The characters followed by the " ' " in the symbolic string literal should start with a character in the range of  "A .. Z"  or "a .. z"  or with"_ ". The subsequent characters can have a combination of digits and characters ranging from "A .. Z"  and "a .. z".
The following characters are not allowed:

AsciiChar := 0x0 .. 0x7F
Unicode characters of category "Private Use" ranging from: 0xE000 .. 0xF8FF | 0xF0000 .. 0xFFFFD | 0x100000 .. 0x10FFFD
Unicode whitespace chars : 0x200E | 0x200F | 0x2028 | 0x2029
Unicode characters with property Pattern_Syntax=True

The following are valid:
// Variable definition
string str = 'HelloWorld;
string str = '_HelloWorld;
string str = 'HelloWorld123;

// Used in maps
map addrMap = { number: "No.20", road: 'Mount_Lavinia, country: 'SriLanka };
addrMap['postalCode] = 'PO00300;
string country = <string>addrMap['country];

// Used in tuples
 (int, string, string) a = (10, 'John_Snow, 'UK);

// Used in json
json p = { fname: 'John, lname: 'Stallone, 'age: 30 };
json lastName = p['lname];
p['age] = 66;

// Used in objects
Person p2 = new('Adam, name = 'Adam, lastname = 'Page);

// Used in records
Student stu = { name: 'AdamPage, age: 17};
string name = stu['name];

The following are not valid:
string var1 = 'Hello World;
string var2 = 'Hello$;
string var3 = 'U+001E;
string var4 = 'Hello\nWorld;
string var6 = 'Hello󰀇;
string var6 = 'Hello��;;

// Used in maps
map addrMap = { road: 'Mount Lavinia, country: 'Sri Lanka };
addrMap['country sl] = 'P0300;

// Used in records
Student stu = { name: 'Adam Page, age: 17};
string name = stu['name$];

// Used in arrays
string [] stringArr = ['hello world];

// Used in json
json p = { name: 'John\uFFFFStallone };

Goals

Symbolic-string-literal is convenient when strings are used to represent an enumeration

Automation tests

Unit tests

Added both positive and negative test cases

Security checks

Followed secure coding standards in http://wso2.com/technical-reports/wso2-secure-engineering-guidelines? yes
Ran FindSecurityBugs plugin and verified report? yes
Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets? yes

@Kishanthan sorry I had not pushed my changes before :/  Pushed the generated parser with ddc0141


imageEditor API - PR

Hi, I created a PR with Reason bindings for imageEditor API :)

Closed by #368


kernel: document arch_printk_char_out()

Used by very early console drivers.
Signed-off-by: Andrew Boie<EMAIL_ADDRESS>

note: I have no idea why the parameter is an int instead of a char, console hook stuff is really ancient. Just prototyping this as it currently exists.

note: I have no idea why the parameter is an int instead of a char, console hook stuff is really ancient. Just prototyping this as it currently exists. Doubt it matters much at all.

As @andyross noted, probably to mirror what putchar is doing, which in itself mirrors the equivalent file I/O functions that can accept EOF.
Also char type was only recently introduced (I mean it was only about 40 years ago!)


Fix swapped DCR/DCE templates on Log Ingestion tutorial

The DCR and DCE templates appear to be swapped. This change corrects the required parameters on the templates.

@bwren
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

@bwren
Can you review this old PR and determine whether it needs to be closed or merged?
@MicrosoftDocs/public-repo-pr-review-team

I see the original file was already updated by another PR, so we can close this one.


Revamp Buildkite Drivers

using all latest packages
removing old driver files (including in the long run)
retaining selected ClimaCore examples

out of date


SSSE3->AVX2, NEON32 decoding optimization

Use Wojciech Mula (@WojciechMula) and @aqrit implementation update for
AVX2 / SSSE3 / NEON32 decoding.
SSSE3 implementation is reused in SSE4.1, SSE4.2 and AVX dispatched
decoding loops.
SSE4.2 implementation is now useless but kept to ease integration of
future updates if needed.
Speed-up on i7-4870HQ @ 2.5 GHz (clang-8<IP_ADDRESS>, x86_64)
SSSE3 decoding: +79%
SSE4.2 decoding: +37%
AVX decoding: +57%
AVX2 decoding: +64%
Speed-up on Apple iPhone SE (clang-8<IP_ADDRESS>, armv7)
NEON32 decoding: +66%

@aklomp, this is the last PR of the series mentioned in #35

lib/arch/ssse3/dec_loop.c:

-	if (_mm_movemask_epi8(CMPEQ(_mm_and_si128(lo, hi), 0)) != 0xFFFF) {
+	if (_mm_movemask_epi8(_mm_cmpgt_epi8(_mm_and_si128(lo, hi), 0)) != 0) {

a couple bytes smaller
and has better formatting for any future ffs() of mask

@aqrit, done !

Hey guys, sorry about the delays, I just wanted to say that I haven't forgotten about it. Reviewing this PR has been on my to-do list for the past two weeks. I've been very busy with work, personal life and other distractions, but I hope to sit down and review it soon. Thanks a lot for your efforts to improve this library, I appreciate it and will get back to you soon.

@aklomp, when do you think you'll have time to look at this ?
Thanks

Thanks for setting me straight. I just merged your commit as-is, for these reasons:

The code passes all tests.
The speedup is very significant, as I don't need to tell you :-)
This obvious improvement has been languishing in the PR hole for over half a year, to the detriment of the community.
I recently pushed some changes to master and it felt unfair to not address your PR first.
I can't expect you to keep rebasing your work every time I make a change, and you're right to ask for progress.
I couldn't live with myself any more ;-)

A very big Thank You to you, @aqrit and @WojciechMula for your contributions and your patience.
Some justification for not merging sooner:

I honestly have a hard time understanding what's going on in the new algorithm. The description is not super clear. Perhaps you've hit the limit of what I can mentally grok. I'd like to understand code before I merge it, but in the end I decided to merge it anyway because the tests pass. I can invest time in understanding it later, for now let's have it in.
I don't like certain stylistic choices in the code. This ranges from naming of variables to use of whitespace and the fact that the SSE4.x codecs are now the SSSE3 codecs in disguise. This threw up a big mental barrier to review. I've decided now to accept what we have, and perhaps rework parts of the code later as I go through it to understand it better.

I think the work could perhaps have been presented in a way that would have made it easier to accept for me, but that's a very entitled standpoint. I'm really grateful for all of the work you've done for this project, and the fact that you've decided to contribute at all.
Sorry it took this long. I guess I could make excuses, but in the end I'm really to blame. Thanks again, and on to the next PR!

@aklomp If you like, you might take a look at our paper https://arxiv.org/abs/1704.00605 - @lemire did a great job describing the algorithms in details. I agree they're tricky. :)
I'm really glad to see that our algorithms gained real-world users. :)

+1


Line-height for Highlight seems to be broken

Bug Description
Line-height doesn't seem to be applied correctly in case of Highlight mode for text.
Note that this happens in the output only, not in the editor

Expected Behaviour

Line-height should match in the editor and in the output

Steps to Reproduce

Add a text element
Create a text of 3 lines and set the background mode to Highlight
Assing line-height to 3
Preview / Save and see the output.

Screenshots
Editor:

Output:

Additional Context

Plugin Version:
Operating System:
Browser:

Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance Criteria

Implementation Brief

Can reproduce this. Even with the default line height (1.5) or a line height of 1 the output is different from the editor.

Verified in QA


Unable to run a unit test on a new Foundation for Apps project

(Please note: I'm coming from a Backbone background, so I may not be doing things correctly. If that's the case, please let me know).
I've created a "Foundation For Apps" app by running foundation-app new myApp and am trying to basically follow the Angular PhoneCat tutorial. It started off pretty well, until I got to unit testing...
Trying to run any test (using Jasmine & Karma) on any file results in this error message:
TypeError: Cannot read property 'replace' of null
    at Object.init (/Users/matt/projects/wx-portal/bower_components/foundation-apps/js/angular/services/foundation.core.js:39:79)
    at mqInitRun (/Users/matt/projects/wx-portal/bower_components/foundation-apps/js/angular/services/foundation.core.js:16:12)
    at Object.invoke (/Users/matt/projects/wx-portal/bower_components/angular/angular.js:4182:17)
    at /Users/matt/projects/wx-portal/bower_components/angular/angular.js:4004:71
    at forEach (/Users/matt/projects/wx-portal/bower_components/angular/angular.js:323:20)
    at Object.createInjector [as injector] (/Users/matt/projects/wx-portal/bower_components/angular/angular.js:4004:3)
    at workFn (/Users/matt/projects/wx-portal/bower_components/angular-mocks/angular-mocks.js:2339:52)

This is the code that's throwing the error (foundation.core.js, in the init function):
for(var key in mediaQueries) {
  mediaQueries[key] = 'only screen and (min-width: ' + mediaQueries[key].replace('rem', 'em') + ')';
}

If I change that line to this:
for(var key in mediaQueries) {
  if ( mediaQueries[key] )
    mediaQueries[key] = 'only screen and (min-width: ' + mediaQueries[key].replace('rem', 'em') + ')';
}

...everything runs as expected.
Is this a bug in Foundation For Apps, or am I doing something wrong? I don't really like the idea of changing things in foundation.core.js unless I absolutely have to...

The template stack doesn't come with any unit tests; are you writing your own?

Yes; Jasmine tests being run with Karma (although the results are the same with or without Karma).

Hm, could you post the tests you've written?

I'll do you one better. You can clone this repo to reproduce the issue:
https://github.com/mattgrande/foundation-apps-unit-test-issue
$ git clone https://github.com/mattground/foundation-apps-unit-test-issue.git
$ cd foundation-apps-unit-test-issue
$ npm install
$ gulp test

Thanks for the repo link; taking a look at this today.

Well, I got a totally different set of errors when I tried to run the tests, but either way I think I might know the problem.
When the Sass is compiled to CSS, it drops the media query list into a property with a meta selector. The JavaScript then injects a <meta> tag with the same class and parses the value. If the test suite doesn't have a finished CSS file to reference, it can't read those values, which is why the mediaQueries object comes up null.

So... is there anything I should do about this from a test point of view, or should I just not reference Foundation in my tests (I'm not sure if the dependencies will work out for that)?
Also, if you could let me know what errors you got, that would help me out a lot!

You'd need to compile the Sass files to CSS so that the test browser can see them.
This is the error I get. I think it's happening because the Gulp plugin that generates routes isn't being run, so the foundationRoutes variable is never being created.
Chrome 40.0.2214 (Mac OS X 10.10.1) AboutController should create "phones" model with 3 phones FAILED
	Error: [$injector:modulerr] Failed to instantiate module wxPortal due to:
	Error: [$injector:modulerr] Failed to instantiate module foundation.dynamicRouting due to:
	ReferenceError: foundationRoutes is not defined

Ah right, I came across that as well... I'll have to remember what I did to fix that! Thanks for your help.

I also encountered this error when trying to run jasmine with a spec runner file. As I didn't want to reference foundation's app.css as it would then override jasmine's styling, I added the following to my specrunner file:
<style>meta.foundation-mq { font-family: "small=&medium=&large=&xlarge=&xxlarge="; }</style>

Is there any quickfix for this issue? I'am using jasmine/karma/phantom.js.
@iotaweb where do you add this line?

Quickfix for this is to load your css build before your scripts in the karma config file
// list of files / patterns to load in the browser
files: [
        'build/css/app.css',
        'build/js/vendor.js',
        'build/js/app.js',
        'bower_components/angular-mocks/angular-mocks.js',
        'app/**/*.spec.js'
      ],

If needed, you can also get away with less than that. This is the only line you need:
meta.foundation-mq {
  font-family: "small=0&medium=40rem&large=75rem&xlarge=90rem&xxlarge=120rem"; }

This style could also be added programmatically before Foundation initializes, using the CSSStyleSheet.insertRule() method.

@tolyo @gakimball Thanks a lot. This works for me.

@herrreiprich - Where did you end up adding the insertRule call? I've tried a couple places, and it seems to either be too early or too late...

@mattgrande just add it to your Stylesheet and add the file to your Karma conf


CHEBI:75431 Ghrelin slight error in structure

Hi there,
The structure of Ghrelin is missing the n-octanoyl on the 3rd residue (the 2nd serine).
See for example:
http://physrev.physiology.org/content/85/2/495.long
or
https://www.anaspec.com/products/product.asp?id=30422

Hi Noel,
Thanks for letting us know. I have now updated the ChEBI entry.
Kind regards,
Gareth


Maven plugin uses incorrect repository and causes CI/CD build failure.

Describe the bug
In Jenkins builds we have explicitly specified maven repository path via -Dmaven.repo.local=../mvnRepository mvn parameter, so each pipeline has its own local maven repo. If vaadin maven plugin determines that hilla is in project, it will run mvn vaadin:configure command in separate child process, but it doesn't pass the path to local maven repository so it will use the default ~/.m2 folder and fail because it will not find the locally built dependencies there which were installed in the local repo by the pipeline build.
To further make this a bigger problem, vaadin plugin calls com.vaadin.hilla.internal.AbstractTaskEndpointGenerator#prepareEngineConfiguration which doesn't even read the error output stream from the child processes it spawns so there is no direct way of knowing why the child process is failing on CI/CD while working fine locally without some time consuming investigation.
Expected-behavior
If vaadin maven plugin runs any child processes with maven commands, it should pass all relevant configuration parameters so they works with same settings as the parent build process and doesn't cause the whole build to fail.
If there is any error in child processes the plugin should read at least the error stream of the child process and write it to build output so the use able to determine what is wrong.
Reproduction

Create a multimodule maven project, where one of the modules will have the vaadin app and vaadin plugin configured in pom xml and it will have a dependency on another module in the project with some dummy class in it.
Make the vaadin plugin think it uses hilla, e.g. move index.tsx outside of src/main/frontend/generated folder - this should be enough to make it think it uses hilla and attempt to run the mvn vaadin:configure during maven build.
Create a mvnRepository folder inside a project dir.
Run a mvn -Dmaven.repo.local=./mvnRepository clean install
The build should fail with error (you can run the build with debug logging but there will be no more relevant info there anyway since the error output of child process is ignored by vaadin plugin):

[ERROR] Failed to execute goal com.vaadin:vaadin-maven-plugin:24.4.3:build-frontend (default) on project test-vaadin-module: Could not execute build-frontend goal: Failed to configure Hilla engine: no runner succeeded. Set log level to debug to see more details. -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.vaadin:vaadin-maven-plugin:24.4.3:build-frontend (default) on project test-vaadin-module: Could not execute build-frontend goal
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:333)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:193)
    at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:180)
    at java.util.concurrent.FutureTask.run (FutureTask.java:317)
    at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:572)
    at java.util.concurrent.FutureTask.run (FutureTask.java:317)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1144)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:642)
    at java.lang.Thread.run (Thread.java:1583)
Caused by: org.apache.maven.plugin.MojoFailureException: Could not execute build-frontend goal
    at com.vaadin.flow.plugin.maven.BuildFrontendMojo.execute (BuildFrontendMojo.java:140)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:126)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:193)
    at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:180)
    at java.util.concurrent.FutureTask.run (FutureTask.java:317)
    at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:572)
    at java.util.concurrent.FutureTask.run (FutureTask.java:317)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1144)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:642)
    at java.lang.Thread.run (Thread.java:1583)
Caused by: com.vaadin.flow.server.ExecutionFailedException: Failed to configure Hilla engine: no runner succeeded. Set log level to debug to see more details.
    at com.vaadin.hilla.internal.AbstractTaskEndpointGenerator.prepareEngineConfiguration (AbstractTaskEndpointGenerator.java:122)
    at com.vaadin.hilla.internal.AbstractTaskEndpointGenerator.getEngineConfiguration (AbstractTaskEndpointGenerator.java:72)
    at com.vaadin.hilla.internal.TaskGenerateOpenAPIImpl.execute (TaskGenerateOpenAPIImpl.java:85)
    at com.vaadin.flow.server.frontend.NodeTasks.execute (NodeTasks.java:348)
    at com.vaadin.flow.plugin.base.BuildFrontendUtil.runNodeUpdater (BuildFrontendUtil.java:341)
    at com.vaadin.flow.plugin.maven.BuildFrontendMojo.execute (BuildFrontendMojo.java:138)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo (DefaultBuildPluginManager.java:126)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2 (MojoExecutor.java:328)
    at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute (MojoExecutor.java:316)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:212)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:174)
    at org.apache.maven.lifecycle.internal.MojoExecutor.access$000 (MojoExecutor.java:75)
    at org.apache.maven.lifecycle.internal.MojoExecutor$1.run (MojoExecutor.java:162)
    at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute (DefaultMojosExecutionStrategy.java:39)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute (MojoExecutor.java:159)
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject (LifecycleModuleBuilder.java:105)
    at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:193)
    at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call (MultiThreadedBuilder.java:180)
    at java.util.concurrent.FutureTask.run (FutureTask.java:317)
    at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:572)
    at java.util.concurrent.FutureTask.run (FutureTask.java:317)
    at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1144)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:642)
    at java.lang.Thread.run (Thread.java:1583)

System Info
MacOS 14.5, Vaadin 24.4.3

I used to run into the same problem and fixed it putting the command line arguments (-Dmaven.repo.local=../mvnRepository) into the MAVEN_ARGS environment variable in my pipeline.

Work around: The hilla wrapper use ./mvnw when running MavenWrapperMain -q vaadin:configure. The wrapper does not support MAVEN_ARGS (tried 3.9.9 too), but  an undocumented MAVEN_CONFIG. See: https://issues.apache.org/jira/projects/MWRAPPER/issues/MWRAPPER-110?filter=allopenissues. The important setting for me is -s settings.xml with auth info:
export MAVEN_CONFIG="-s /root/settings.xml -Pproduction -Dmaven.repo.local=/tmp/mym2".
CommandRunner.java skips parameters on executeCommand for vaadin:configure


Similar project but faster

Hi Radu,
I have just started a new project BaseXX:
https://github.com/teal-finance/BaseXX
This is very similar to what you did. :smile:
I have selected another Base58 project that is faster than the one you choose as original work. You can run the benchmark on your computer, BaseXX is about five times faster:
go test -run=NO -bench=. -benchmem github.com/teal-finance/BaseXX/base92

goos: linux
goarch: amd64
pkg: github.com/teal-finance/BaseXX/base92
cpu: AMD Ryzen 9 3900X 12-Core Processor
BenchmarkEncode-24                       1000000              1944 ns/op              96 B/op          2 allocs/op
BenchmarkEncodeSmartgoBase92-24           135556              8722 ns/op            1377 B/op         78 allocs/op
BenchmarkDecode-24                       1794903               673.5 ns/op           122 B/op          2 allocs/op
BenchmarkDecodeSmartgoBase92-24           339506              3496 ns/op             232 B/op          8 allocs/op
PASS
ok      github.com/teal-finance/BaseXX/base92   6.404s

Have fun :grinning:

Hi,
I will look over your project. Looks interesting.
The BaseXX project is also portable in javascript and php so my first purpose is to have that logic.
Second, every piece of code inside smartgo is threadsafe in multi-threading usage (except webview2 ... which is includded there for another purpose).
Thus in multi-threading I was focusing on not having "concurrency issues".
Perhaps yours is the same, but I did not yet look too deep.

Hi 0uep
Actually you did a very wrong measure ...
I am not sure how did you get those results :-)
But let's make a simple test.
Simple test: Encode / Decode GPL v3
https://raw.githubusercontent.com/Illumina/licenses/master/gpl-3.0.txt
smartgo/base92 (my project):
ENCODE: 888.378397ms ; DECODE: 191.787475ms
Your project:
ENCODE: 1.082452169s ; DECODE: 254.817341ms
// my version (FASTER) ; ENCODE: 888.378397ms ; DECODE: 191.787475ms
package main

import (
	"log"
	"time"

	smart "github.com/unix-world/smartgo"

	b92 "github.com/unix-world/smartgo/base92"

)

func main() {

	var timerStart time.Time

	txt, _ := smart.SafePathFileRead("gpl-3.0.txt", false)

	timerStart = time.Now()
	etxt := b92.Encode([]byte(txt))
	durationEnc := time.Since(timerStart)

	timerStart = time.Now()
	dtxt, _ := b92.Decode(etxt)
	durationDec := time.Since(timerStart)

	log.Println(dtxt, etxt, durationEnc, durationDec)

} //END FUNCTION

// your version (SLOWER) ; ENCODE: 1.082452169s ; DECODE: 254.817341ms
package main

import (
	"log"
	"time"

	smart "github.com/unix-world/smartgo"

	b92 "github.com/teal-finance/BaseXX/base92"

)

func main() {

	var timerStart time.Time

	txt, _ := smart.SafePathFileRead("gpl-3.0.txt", false)

	timerStart = time.Now()
	etxt := b92.Encode([]byte(txt))
	durationEnc := time.Since(timerStart)

	timerStart = time.Now()
	dtxt, _ := b92.Decode(etxt)
	durationDec := time.Since(timerStart)

	log.Println(dtxt, etxt, durationEnc, durationDec)

} //END FUNCTION

Please notice, I only measured the encoding and decoding time.
As you can see the tests are identical ...

Just download the https://raw.githubusercontent.com/Illumina/licenses/master/gpl-3.0.txt and put in the same folder as my tests and sww how results are ;-)

Looking a bit over your code I also noticed some possible multi-concurrency issues which have to be also tested a lot to be sure it dows not panic under heavy loads by accessing same areas simultaneous

Be sure you compile the files using go build if you want a real test. Benchmarking with go as you did measures something different. I measured exactly the encode and decode time not Go benchmark times which are mostly tricky ...

Dear Radu
Thank you for your involvement and your useful replies.
You are right, my implementation is not faster.
I have been inspired by your Go samples and have also coded a bench command:
https://github.com/teal-finance/BaseXX/blob/main/examples/bench/main.go
You can test it right now:
go run github.com/teal-finance/BaseXX/examples/bench -f gpl-3.0.txt

About the multi-concurrency issues, I think read-only data do not need a mutex in Go. You may remove some mutexes in your code…
I will update soon the README of BaseXX to say your project as similar performance with larger samples. ;-)
I think our two projects are too slow compared to https://github.com/mtraver/base91 results. Thus, on the new project https://github.com/teal-finance/incorruptible, I have decided to switch to https://github.com/mtraver/base91 because https://github.com/teal-finance/BaseXX is too slow.
PS: congratulations for your awesome projects, I have been impressed by http://demo.unix-world.org/smart-framework/?/page/samples.testunit/tab/0/CamelCase/Test/

To be honest, concurrent map read still requires a read mutex in high concurrency.
Read/Write requires a RW Mutex. At least this is what I found out ... based on some experience in real environments.

Thank you for sharing your experience about concurrent map read/write.
I quote your previous message:

Looking a bit over your code I also noticed some possible multi-concurrency issues which have to be also tested a lot to be sure it does not panic under heavy loads by accessing same areas simultaneous

I have not found any mutex in this code:
https://github.com/unix-world/smartgo/blob/master/baseconv/baseconv.go
Neither in standard "encoding/base64":
https://github.com/golang/go/blob/master/src/encoding/base64/base64.go
I think there is no concurrent issue in our both BaseN-related projects.


Correcting runtime dependencies (bis)

Re-opened pull request over a release branch.

Undo this one.


[Question]: There was a failure in adding the API key. So how to add the API-Key correctly?

Describe your problem
The details are as follows:

Thank you for your response.

It seems your DNS has issue to translate URL of ZHIPU.

It seems your DNS has issue to translate URL of ZHIPU.

I have made additional changes to the /etc/resolv.conf file.
docker exec -it ragflow-server /bin/bash
vi /etc/resolv.conf
nameserver <IP_ADDRESS>
nameserver <IP_ADDRESS>

The issue has been resolved. However, is it strange that it's not the default configuration in a docker container?


kairos cluster v3.0.0 not created when setting e.g. MTUBytes=1450 in /etc/systemd/network/  .network file

Kairos version:
PRETTY_NAME="Ubuntu 22.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy
KAIROS_NAME="kairos-standard-ubuntu-22.04"
KAIROS_MODEL="generic"
KAIROS_HOME_URL="https://github.com/kairos-io/kairos"
KAIROS_SOFTWARE_VERSION="v1.29.0+k3s1"
KAIROS_VERSION="v3.0.0-v1.29.0-k3s1"
KAIROS_IMAGE_LABEL="22.04-standard-amd64-generic-v3.0.0-k3sv1.29.0-k3s1"
KAIROS_FLAVOR_RELEASE="22.04"
KAIROS_VARIANT="standard"
KAIROS_REGISTRY_AND_ORG="quay.io/kairos"
KAIROS_BUG_REPORT_URL="https://github.com/kairos-io/kairos/issues"
KAIROS_PRETTY_NAME="kairos-standard-ubuntu-22.04 v3.0.0-v1.29.0-k3s1"
KAIROS_FLAVOR="ubuntu"
KAIROS_VERSION_ID="v3.0.0-v1.29.0-k3s1"
KAIROS_IMAGE_REPO="quay.io/kairos/ubuntu:22.04-standard-amd64-generic-v3.0.0-k3sv1.29.0-k3s1"
KAIROS_ARTIFACT="kairos-ubuntu-22.04-standard-amd64-generic-v3.0.0-k3sv1.29.0+k3s1"
KAIROS_TARGETARCH="amd64"
KAIROS_RELEASE="v3.0.0"
KAIROS_GITHUB_REPO="kairos-io/kairos"
KAIROS_ID="kairos"
KAIROS_ID_LIKE="kairos-standard-ubuntu-22.04"
KAIROS_SOFTWARE_VERSION_PREFIX="k3s"

CPU architecture, OS, and Version:
Linux 3-kairosdev-sandbox-2d4bd1gx 6.5.0-25-generic #25~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Feb 20 16:09:15 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
Describe the bug
We use a non default mtusize in our network stack.
Since kairos version >2.4.1  setting MTUBytes=1450 for network interfaces a cluster wil not be created
Creating e.g. /etc/systemd/networkd/05-setmtu.network with MTUBytes=1450 results in nodes not 'finding' each other to setup cluster
            [Match]
            Name=ens1*
            [Network]
            DHCP=no
            [Link]
            MTUBytes=1450
            [DHCP]
            ClientIdentifier=mac

When MTUBytes=1500 ( default ) the  cluster is created, manually setting MTUBytes=1450 in /oem/90_custom.yaml after the cluster has been created and a reboot, cluster is still functioning.
To Reproduce
Create /etc/systemd/network/05-ens1.network with MTUBytes=1450 set within cloud-init config and deploy nodes
[Match]
Name=ens1*
[Network]
DHCP=yes
[Link]
MTUBytes=1450
[DHCP]
ClientIdentifier=mac

Expected behavior
Cluster should be created with non default MTUBytes set
Logs
{"level":"info","ts":1710768172.4428058,"caller":"service/node.go:308","msg":"Applying role 'auto'"}
{"level":"info","ts":1710768172.4428377,"caller":"service/role.go:115","msg":"Role loaded. Applying auto"}
{"level":"info","ts":1710768172.4439757,"caller":"role/auto.go:31","msg":"Active nodes:[12D3KooWD1ivphPNr8gasxAR4FUM88NCRaqbfvbonanxJAiH3uv5]"}
{"level":"info","ts":1710768172.444072,"caller":"role/auto.go:32","msg":"Advertizing nodes:[cc186c5488c430b39ab27a7a65f81a27-3-kairosdev-sandbox-2d4bd1gx]"}
{"level":"info","ts":1710768172.4440954,"caller":"role/auto.go:35","msg":"Not enough nodes"}
{"level":"info","ts":1710768172.4441204,"caller":"service/node.go:357","msg":"not enough nodes available, sleeping... needed: 2, available: 1"}

Additional context
none

Hey @Wolverine65
after the file is created in the cloud config, have you tried to do a networkctl reload ?
Can you post the cloud config used for the deployment of the cluster (redacting anything not needed)?

Hello @Itxaka ,
I also tried a networkctl reload, even added that to the runcmd part of the cloud-init. Unfortunately no luck. Below is the config we use to deploy for v2.4.1 which works fine for that version
#cloud-config

install:
  # Device for automated installs
  device: auto
  # Reboot after installation
  reboot: false
  # Power off after installation
  poweroff: false
  # Set to true to enable automated installations
  auto: true

# The upgrade block configures what happens when upgrade is called
upgrade:
  # Reboot after upgrade
  reboot: true
  # Power off after upgrade
  poweroff: true

growpart:
  devices: ['/']

stages:
  boot:
    - name: "Set system keymap"
      system_firstboot:
        keymap: us
    - name: "Setup hostname"
      hostname: "{{ vm_hostname }}"
    - name: "Set up various kube environment variables"
      environment:
        KUBECONFIG: /etc/rancher/k3s/k3s.yaml
        CONTAINERD_ADDRESS: /run/k3s/containerd/containerd.sock
        CONTAINERD_NAMESPACE: k8s.io

  initramfs:
    - files:
        - path: /etc/systemd/network/01-manual.network
          permissions: 0644
          content: |
            [Match]
            Name=ens1*
            [Network]
            DHCP=yes
            [Link]
            MTUBytes = 1450
        - path: /etc/systemd/network/02-manual.network
          permissions: 0644
          content: |
            [Match]
            Name=ens2*
            [Network]
            DHCP=no
            [Link]
            MTUBytes = 1450

users:
- name: "redacted"                             # The username for the user.
  passwd: "redacted"                      # The password for the user.
  lock_passwd: true
  groups:
  - "admin"
  ssh_authorized_keys:                      # A list of SSH keys to add to the user's authorized keys.
{% for pubkeys in ssh_keys %}
  - {{ pubkeys }}
{% endfor %}

write_files:
  - path: /etc/sysctl.conf
    content: |
{% for parameters in sysctlconf %}
         {{ parameters }}
{% endfor %}
runcmd:
  - /usr/sbin/sysctl -p

k3s:
  enabled: true
  args:
  - --default-local-storage-path=/opt/k3s-local-storage
  - --disable='traefik,servicelb'
  - --disable-cloud-controller
  - --flannel-backend=none
  - --disable-network-policy
  - --cluster-cidr="{{ lookup('vars', cluster_dictionary)[cluster_name].cluster_cidr }}"
  - --service-cidr="{{ lookup('vars', cluster_dictionary)[cluster_name].service_cidr }}"
  - --tls-san "{{ lookup('vars', cluster_dictionary)[cluster_name].kube_vip[otap] }}"
  - --node-taint 'node-role.kubernetes.io/master=true:NoSchedule'
  # following standard kairos
  - --cluster-dns="{{ lookup('vars', cluster_dictionary)[cluster_name].cluster_dns }}"
  - --cluster-domain="{{ lookup('vars', cluster_dictionary)[cluster_name].cluster_domain }}"
  - --kube-controller-manager-arg 'bind-address=<IP_ADDRESS>'
  - --kube-scheduler-arg 'bind-address=<IP_ADDRESS>'
  - --kube-controller-manager-arg 'terminated-pod-gc-threshold=10'
  env:
    K3S_TOKEN: "{{ lookup('vars', cluster_dictionary)[cluster_name].k3s_token[otap] }}"
{% if lookup('vars', cluster_dictionary)[cluster_name].ha[otap] == false %}
    # create database external
    K3S_DATASTORE_ENDPOINT: "mysql://{{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbuser }}:{{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbpassword }}@tcp({{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbhost }}:{{ lookup('vars', cluster_dictionary)[cluster_name].mysql_port }})/{{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbname }}"
{% endif %}

# before installation
bundles:
- targets:
  - run://quay.io/kairos/packages:k9s-utils-0.26.7

# create network token
# docker run -ti --rm quay.io/mudler/edgevpn -b -g
p2p:
  disable_dht: true
  network_token: "{{ lookup('vars', cluster_dictionary)[cluster_name].network_token[otap] }}"
  vpn:
    # Disable VPN, so traffic is not configured with a VPN
    create: false
    use: false
{% if lookup('vars', cluster_dictionary)[cluster_name].ha[otap] == true %}
  auto:
    enable: true
    ha:
      enable: true
      master_nodes: {{ lookup('vars', cluster_dictionary)[cluster_name].master_nodes[otap] | default ('2') }}
      external_db: "mysql://{{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbuser }}:{{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbpassword }}@tcp({{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbhost }}:{{ lookup('vars', cluster_dictionary)[cluster_name].mysql_port }})/{{ lookup('vars', cluster_dictionary)[cluster_name].mysql[otap].dbname }}"
{% endif %}

# Choose free ip from netbeheer, and use us alsi in the k3s tls-san ( see above)
kubevip:
  eip: "{{ lookup('vars', cluster_dictionary)[cluster_name].kube_vip[otap] }}"
  enable: true
  interface: "ens192"
  manifest_url: "https://kube-vip.io/manifests/rbac.yaml"
  # manifest_url: "https://raw.githubusercontent.com/kube-vip/kube-vip-cloud-provider/main/manifest/kube-vip-cloud-controller.yaml"

Below is the config we use to deploy for v2.4.1 which works fine for that version

ahh this is very important, thanks for pointing out. I'll have a quick look tomorrow to see if its something obvious and has a quick fix.

Possibly relevant link: https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1850704

I'm confused by the options used in the provided example config.

p2p.auto.enable: true
p2p.network_token (set)
p2p.vpn.create: false
p2p.vpn.use: false

What is this combination supposed to do?
I'm trying to reproduce the problem with a minimum configuration.
I have to slim it down removing the templated values and anything that is not relevant. But I'm not sure what the intended setup is supposed to be. For example, although it seems that this is a non-automated setup (no p2p etc),
still I don't see any k3s args pointing the agent to the master node (K3S_URL ?).
Can you please clarify what the intended setup is? We should come up with minimum reproducing steps that will show that simply changing the MTU value make it fail, otherwise it could easily be some other option missing or being wrong.

hello @jimmykarily ,
this is an automated setup
we use the same cloud-init  config for all our nodes. The kairos-agent/p2p then decides which one is a master and which are the workers
p2p:
  disable_dht: true
  network_token: "< TOKEN >"
  vpn:
    create: false
    use: false
  auto:
    enable: true
    ha:
      enable: true
      master_nodes: 2
      external_db: "< MYSQL STRING >"

The problem is when we try to set a non default mtu size for our network interfaces, the p2p functionality doesnt seem to find the nodes
        [Link]
        MTUBytes = 1450

When i change it to 1500 , it works, but we need a size of 1450
This has worked up until v2.4.1 , so something has changed.
Perhaps it is related to https://github.com/kairos-io/kairos/issues/2103  , since we also filed that issue, but not sure about that
Regards,
H

also tested with debian, same result.
set mtusize=1450 through dhcp options from dhcp server, also same result peer nodes dont find each other.

Hello,
any update on this issue?
Thanks.


[WASM] Numbers in memory space and History are cutting from the back in Scientific mode

Steps To Reproduce:

Visit WASM Calculator.
Open Scientific mode calculator.
Enter any large number and save it in the memory space.
Observe the number in both Memory tab and History tab.

Actual behavior:

The saved numbers are not wrapping properly and cutting from the back.
There is no delete button to delete the History or Memory.

Expected behavior:

Large numbers are always wrapped properly as per the resolution of the page.

Attachment:

Device and Application Information:

OS Build: Windows 10
WASM Build Version: Version 0.1.0-uno.1+472
Environment: Firefox, Chrome and Microsoft Edge

Notes:

Refer the attached screenshot to get better idea.
Crosschecked with windows calculator.

This issue is no longer occurred on the latest build.
Version:  0.1.0-uno.1+499