Illegal instruction followed by core dump

Last time I ran synth on Sunday it upgraded my ports OK, including synth to 1.34, and pkg to 1.7.2.
Since then I have run freebsd-update from 10.2-RELEASE-p14 to 10.2-RELEASE-p17, and today I ran a portsnap fetch update.
Any synth command that results in comparing ports to installed ports results in Illegal Instruction and a core dump.
I can provide the core file if needed.

This is the first report of it's kind.
Maybe you can try deinstalling synth and installing it again from FreeBSD official packages.  If that doesn't work, you can try building it from source (preinstall gcc6-aux from packages first though).

Unfortunately, after taking the following steps, the problem persists (fyi, cmd I'm running is
'synth status'):

make -C /usr/ports/devel/gcc6-aux deinstall
make -C /usr/ports/devel/gcc6-aux reinstall
make -C /usr/ports/ports-mgmt/synth deinstall
make -C /usr/ports/ports-mgmt/synth reinstall
clean out /var/synth/live_packages
make -C /usr/ports/devel/gcc6-aux deinstall
make -C /usr/ports/ports-mgmt/synth deinstall
pkg install synth (installs v1.33)

On 05/18/2016 18:06, jrmarino wrote:

This is the first report of it's kind.
Maybe you can try deinstalling synth and installing it again from FreeBSD official packages. If that
doesn't work, you can try building it from source (preinstall gcc6-aux from packages first though).
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-220172625

why "reinstall"?
It should be "make clean ; make install" right?
why v1.33?  Are you on quarterly branch for official packages?
If so, that's the same synth you've been using all along, so it didn't change -- it doesn't seem to like your new base.
You might try gdb7 and running a backtrace on the core dump but I don't have much hope since surely there are no debug symbols there.  I would guess doesn't even build with them.

Does the problem still exist?  Even with synth v1.40?

Unfortunately, yes.
I can sometimes successfully run 'synth status' with a specific port.
I've run it with dtruss but I am no expert and it is not clear what is causing it to core.
On 06/17/2016 08:05, jrmarino wrote:

Does the problem still exist? Even with synth v1.40?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-226752283, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJkdghO06v3mEuOSnXQA-qIkA_ngnks5qMo13gaJpZM4IhrJn.

This might help diagnose it.
Do a "make clean; make patch" command from ports-mgmt/synth
find the default.gpr file in the working directory
change line 15 from
for Default_Switches ("ada") use ("-g", "-O2", "-gnat12", "-gnatyaAbBcdefhiklnOprsSxt");

to
for Default_Switches ("ada") use ("-g", "-O2", "-gnat12", '-fstack-check", "-gnatyaAbBcdefhiklnOprsSxt");

(add "-fstack-check" switch to list)
then "make install".
the biggest build dependency is lang/gcc6-aux so you might want to pre-install that from official packages

So something with disk...
I do have compression enabled on ZFS.
root@ic-18338:~ # zfs list
NAME                 USED  AVAIL  REFER  MOUNTPOINT
bootpool            1.63G   300M   551M  /bootpool
zroot                111G   304G    96K  /zroot
zroot/ROOT          22.4G   304G    96K  none
zroot/ROOT/default  22.4G   304G  6.59G  /
zroot/tmp            142M   304G  25.5M  /tmp
zroot/usr           88.0G   304G    96K  /usr
zroot/usr/home      68.1G   304G  26.5G  /usr/home
zroot/usr/ports     17.4G   304G  1.07G  /usr/ports
zroot/usr/src       2.47G   304G  1.10G  /usr/src
zroot/var            204M   304G    96K  /var
zroot/var/audit       96K   304G    96K  /var/audit
zroot/var/crash       96K   304G    96K  /var/crash
zroot/var/log        193M   304G  56.8M  /var/log
zroot/var/mail      5.30M   304G   456K  /var/mail
zroot/var/tmp       4.83M   304G   240K  /var/tmp
root@ic-18338:~ # zpool status
pool: bootpool
state: ONLINE
scan: scrub repaired 0 in 0h0m with 0 errors on Thu Jun 16 03:59:05 2016
config:
NAME        STATE     READ WRITE CKSUM
bootpool    ONLINE       0     0     0
  mirror-0  ONLINE       0     0     0
    ada0p2  ONLINE       0     0     0
    ada1p2  ONLINE       0     0     0

errors: No known data errors
pool: zroot
state: ONLINE
scan: scrub repaired 0 in 0h28m with 0 errors on Thu Jun 16 04:27:53 2016
config:
NAME            STATE     READ WRITE CKSUM
zroot           ONLINE       0     0     0
  mirror-0      ONLINE       0     0     0
    ada0p4.eli  ONLINE       0     0     0
    ada1p4.eli  ONLINE       0     0     0

errors: No known data errors
root@ic-18338:~ # synth status
Querying system about current package installations.

Do a "make clean; make patch" command from ports-mgmt/synth
find the default.gpr file in the working directory
change line 15 from
|for Default_Switches ("ada") use ("-g", "-O2", "-gnat12", "-gnatyaAbBcdefhiklnOprsSxt"); |
to
|for Default_Switches ("ada") use ("-g", "-O2", "-gnat12", '-fstack-check",
"-gnatyaAbBcdefhiklnOprsSxt"); |
(add "-fstack-check" switch to list)
then "make install".
the biggest build dependency is lang/gcc6-aux so you might want to pre-install that from official
packages
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-226770766, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJtfAnpd0j8WNrfxQwtapgZ8STfu0ks5qMqM9gaJpZM4IhrJn.

how much memory does this machine have?
At least I have a vague idea of what's going on here.

hw.physmem:<PHONE_NUMBER>0
hw.usermem:<PHONE_NUMBER>
hw.realmem:<PHONE_NUMBER>0
hw.machine: amd64
hw.model: Intel(R) Xeon(R) CPU           E5410  @ 2.33GHz
RAM is ECC.
My PC (HP xw6600) is 8 years old but with some GPU and SSD upgrades it continues to chug along with
no issues.
The SSDs are 500G Samsung 850 EVOs.
GPU is Nvidia NVS 510.
On 06/17/2016 10:15, jrmarino wrote:

how much memory does this machine have?
At least I have a vague idea of what's going on here.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-226780316, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJqCOsG6yYGVc7pbxqwu_wdlGT-ixks5qMqwGgaJpZM4IhrJn.

16G is more than enough.
I think what's going on here is something I've recently seen somewhere else.  Some structures have type rnages that cover 8 bit integers (for example) and this eats up stack.  The solution is to replace those types with much more constrained version, but I would be randomly shooting in the dark since I can't test any fix.
STORAGE_ERROR doesn't refer to disk if that's your assumption.  it refers to storing data structures during executtion.
Probably the only thing I can do here is look through the code and try to identify types that might cause this and replace those and give you a patch to see if it makes any difference.  I don't know how else to try to fix it.

I'm willing to test as needed, although in some cases there will be delays due to work.
My system is stable and running the latest/greatest is not a need right now so...
On 06/17/2016 10:35, jrmarino wrote:

16G is more than enough.
I think what's going on here is something I've recently seen somewhere else. Some structures have
type rnages that cover 8 bit integers (for example) and this eats up stack. The solution is to
replace those types with much more constrained version, but I would be randomly shooting in the dark
since I can't test any fix.
STORAGE_ERROR doesn't refer to disk if that's your assumption. it refers to storing data structures
during executtion.
Probably the only thing I can do here is look through the code and try to identify types that might
cause this and replace those and give you a patch to see if it makes any difference. I don't know
how else to try to fix it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-226785764, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJgErL6xHLPxgW1YKhf2ONezf6mMrks5qMrCvgaJpZM4IhrJn.

And a huge thanks for circling back on this and trying to establish a path to resolution!
On 06/17/2016 10:39, Andrew Chaplin wrote:

I'm willing to test as needed, although in some cases there will be delays due to work.
My system is stable and running the latest/greatest is not a need right now so...
On 06/17/2016 10:35, jrmarino wrote:

16G is more than enough.
I think what's going on here is something I've recently seen somewhere else. Some structures have
type rnages that cover 8 bit integers (for example) and this eats up stack. The solution is to
replace those types with much more constrained version, but I would be randomly shooting in the dark
since I can't test any fix.
STORAGE_ERROR doesn't refer to disk if that's your assumption. it refers to storing data structures
during executtion.
Probably the only thing I can do here is look through the code and try to identify types that might
cause this and replace those and give you a patch to see if it makes any difference. I don't know
how else to try to fix it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-226785764, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJgErL6xHLPxgW1YKhf2ONezf6mMrks5qMrCvgaJpZM4IhrJn.

So far the records are already constrained.
How many builders did you set?
You might want to paste the output of "synth configure".
You might try reducing the # of builders to see if that changes anything.

It was at 4:4 for the longest time until the core dumps started.
I've tried different combinations, and even at 1:1 it is still core dumping.
Here's the config:
Synth configuration profile: LiveSystem
[A] Ports directory            /usr/ports
[B] Packages directory         /var/synth/live_packages
[C] Distfiles directory        /usr/ports/distfiles
[D] Port options directory     /var/db/ports
[E] Build logs directory       /var/log/synth
[F] Build base directory       /usr/obj/synth-live
[G] System root directory      /
[H] Compiler cache directory   disabled
[I] Num. concurrent builders   1
[J] Max. jobs per builder      1
[K] Use tmpfs for work area    true
[L] Use tmpfs for /usr/local   true
[M] Display using ncurses      true
[N] Fetch prebuilt packages    false

On 06/17/2016 10:59, jrmarino wrote:

So far the records are already constrained.
How many builders did you set?
You might want to paste the output of "synth configure".
You might try reducing the # of builders to see if that changes anything.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-226792618, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJjYTIQ-lIEKMX_fuinLB5DGLpDK1ks5qMrY6gaJpZM4IhrJn.

well, i guess you can put it back to 4:4 because it's either going to work or it won't.
The problem is that would need to put in print statements to figure out more or less where the storage_error is coming from and right now only your machine can reproduce it.  So I would basically need root access to your machine quickly trace it down.
Alternatively I could provide a patch with these print statements everywhere and then ask you to rebuilt synth and that could work.

by the way, how many packages are installed on this system?

Root access would not be possible.
pkg info | wc -l = 939
On 06/17/2016 14:02, jrmarino wrote:

by the way, how many packages are installed on this system?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-226839220, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJuW-yk9PuTGL21LDyQcVbJpmijsHks5qMuExgaJpZM4IhrJn.

i tried to reproduce it.     I assume other users have over 900 packages and would have notified me alread if it were strictly affected by number of packages installed.

I spent the day wrestling with this one.  Synth was working fine until I decided to switch from openssl (base) to libressl from ports.
In my case, this was the result of a circular build dependency which synth was unable to handle.  To be fair, it broke portmaster too.
Switching to security/libressl resulted in a build failure for ftp/curl due to an incompatible default build option.  I initially tried changing ftp/curl to require security/gnutls which was already on my system.
Unfortunately, this set up a circular dependency: ftp/curl depends on security/gnutls, which depends on security/trousers, which depends on emulators/tpm-emulator, which depends on devel/cmake, which depends on ftp/curl...
So in my case the combination of the following make.conf settings resulted in a circular dependency breaking synth.
DEFAULT_VERSIONS=ssl=libressl
ftp_curl_SET=GSSAPI_NONE GNUTLS
ftp_curl_UNSET=GSSAPI_BASE OPENSSL CA_BUNDLE TLS_SRP

Shonjir, your report seems unrelated to the topic of this issue (illegal instruction + core dump).
as an aside, all tools would broke under a circular dependency.

I failed to mention that the symptoms from synth when the circular dependency was present matched the OPs report precisely - 'synth status' (actually, pretty much any synth comparison operation) faults with an illegal instruction error, followed by a synth core dump.
I suspect that the ports tree update reported by the OP may have resulted in such a circular dependency being created.  Without knowing the full set of installed ports and configured options it may be difficult to track down the specific port that is causing OPs issue.
My report was intended to help you narrow down the operation that may be resulting in the fault.  I think I can reproduce relatively easily if need be.

Hi guys,
I have a fix that both of you can try.
When I run it against shonjir's test case, this is the output:
ironwolf# synth just-build ftp/curl

ftp/curl scan aborted because a circular dependency on ftp/curl was detected.
... backtrace devel/cmake
... backtrace emulators/tpm-emulator
... backtrace security/trousers
... backtrace security/gnutls
... backtrace ftp/curl
ironwolf#

Here's the patch against the port:
--- /usr/ports/ports-mgmt/synth/Makefile        2016-06-12 12:15:21.000000000 +0200
+++ ./Makefile  2016-06-20 15:33:00.000000000 +0200
@@ -18,6 +18,7 @@
 USES=          ada:6 ncurses:port
 USE_GITHUB=    yes
 GH_ACCOUNT=    jrmarino
+GH_TAGNAME=    5e2b4cd

 GPR=           ${LOCALBASE}/lib/gnat

diff -u /usr/ports/ports-mgmt/synth/distinfo ./distinfo
--- /usr/ports/ports-mgmt/synth/distinfo        2016-06-12 11:37:12.000000000 +0200
+++ ./distinfo  2016-06-20 15:33:09.000000000 +0200
@@ -1,3 +1,3 @@
-TIMESTAMP =<PHONE_NUMBER>
-SHA256 (jrmarino-synth-v1.40_GH0.tar.gz) = bd7ab4b5d82d80508f68a8f525bc8351cee723aa9c3f3c2c0042d81a78605656
-SIZE (jrmarino-synth-v1.40_GH0.tar.gz) = 101245
+TIMESTAMP =<PHONE_NUMBER>
+SHA256 (jrmarino-synth-v1.40-5e2b4cd_GH0.tar.gz) = 2676ba95ef513a438ea1a64a54b5ca9696aa9e273bd51d6fcec5f4f9578d8d0e
+SIZE (jrmarino-synth-v1.40-5e2b4cd_GH0.tar.gz) = 101530

I've done pretty much no testing so hopefully there are no regressions.
Please let me know how it works out.

Awesome patch so far!
root@ic-18338:~ # synth status ftp/curl
ftp/curl scan aborted because a circular dependency on ftp/curl was detected.
... backtrace devel/cmake
... backtrace emulators/tpm-emulator
... backtrace security/trousers
... backtrace security/gnutls
... backtrace ftp/curl
root@ic-18338:~ # synth status www/chromium
www/chromium scan aborted because a circular dependency on devel/cmake was detected.
... backtrace emulators/tpm-emulator
... backtrace security/trousers
... backtrace security/gnutls
... backtrace ftp/curl
... backtrace devel/cmake
... backtrace devel/llvm37
... backtrace graphics/gbm
... backtrace graphics/libEGL
... backtrace graphics/cairo
... backtrace www/chromium
It also cleans up the tmpfs mount points (although running synth configure does the same in the
unpatched version).
I vaguely remember a bug reported about curl and libressl vs openssl but am not sure if it was ever
resolved.
On 06/20/2016 09:37, jrmarino wrote:

Hi guys,
I have a fix that both of you can try.
When I run it against shonjir's test case, this is the output:
|ironwolf# synth just-build ftp/curl ftp/curl scan aborted because a circular dependency on ftp/curl
was detected. ... backtrace devel/cmake ... backtrace emulators/tpm-emulator ... backtrace
security/trousers ... backtrace security/gnutls ... backtrace ftp/curl ironwolf# |
Here's the patch against the port:
|--- /usr/ports/ports-mgmt/synth/Makefile 2016-06-12 12:15:21.000000000 +0200 +++ ./Makefile
2016-06-20 15:33:00.000000000 +0200 @@ -18,6 +18,7 @@ USES= ada:6 ncurses:port USE_GITHUB= yes
GH_ACCOUNT= jrmarino +GH_TAGNAME= 5e2b4cd GPR= ${LOCALBASE}/lib/gnat diff -u
/usr/ports/ports-mgmt/synth/distinfo ./distinfo --- /usr/ports/ports-mgmt/synth/distinfo 2016-06-12
11:37:12.000000000 +0200 +++ ./distinfo 2016-06-20 15:33:09.000000000 +0200 @@ -1,3 +1,3 @@
-TIMESTAMP =<PHONE_NUMBER> -SHA256 (jrmarino-synth-v1.40_GH0.tar.gz) =
bd7ab4b5d82d80508f68a8f525bc8351cee723aa9c3f3c2c0042d81a78605656 -SIZE
(jrmarino-synth-v1.40_GH0.tar.gz) = 101245 +TIMESTAMP =<PHONE_NUMBER> +SHA256
(jrmarino-synth-v1.40-5e2b4cd_GH0.tar.gz) =
2676ba95ef513a438ea1a64a54b5ca9696aa9e273bd51d6fcec5f4f9578d8d0e +SIZE
(jrmarino-synth-v1.40-5e2b4cd_GH0.tar.gz) = 101530 |
I've done pretty much no testing so hopefully there are no regressions.
Please let me know how it works out.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-227143944, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJqD1VyvQ4JfNBW86ILe0pX1vApxvks5qNpeTgaJpZM4IhrJn.

The config I had for ftp/curl used GNUTLS for some reason.
I redid the config for ftp/curl to use openssl and should be OK.
Once again, many thanks for taking the time to research and get this resolved!
On 06/20/2016 11:29, Andrew Chaplin wrote:

Awesome patch so far!
root@ic-18338:~ # synth status ftp/curl
ftp/curl scan aborted because a circular dependency on ftp/curl was detected.
... backtrace devel/cmake
... backtrace emulators/tpm-emulator
... backtrace security/trousers
... backtrace security/gnutls
... backtrace ftp/curl
root@ic-18338:~ # synth status www/chromium
www/chromium scan aborted because a circular dependency on devel/cmake was detected.
... backtrace emulators/tpm-emulator
... backtrace security/trousers
... backtrace security/gnutls
... backtrace ftp/curl
... backtrace devel/cmake
... backtrace devel/llvm37
... backtrace graphics/gbm
... backtrace graphics/libEGL
... backtrace graphics/cairo
... backtrace www/chromium
It also cleans up the tmpfs mount points (although running synth configure does the same in the
unpatched version).
I vaguely remember a bug reported about curl and libressl vs openssl but am not sure if it was ever
resolved.
On 06/20/2016 09:37, jrmarino wrote:

Hi guys,
I have a fix that both of you can try.
When I run it against shonjir's test case, this is the output:
|ironwolf# synth just-build ftp/curl ftp/curl scan aborted because a circular dependency on ftp/curl
was detected. ... backtrace devel/cmake ... backtrace emulators/tpm-emulator ... backtrace
security/trousers ... backtrace security/gnutls ... backtrace ftp/curl ironwolf# |
Here's the patch against the port:
|--- /usr/ports/ports-mgmt/synth/Makefile 2016-06-12 12:15:21.000000000 +0200 +++ ./Makefile
2016-06-20 15:33:00.000000000 +0200 @@ -18,6 +18,7 @@ USES= ada:6 ncurses:port USE_GITHUB= yes
GH_ACCOUNT= jrmarino +GH_TAGNAME= 5e2b4cd GPR= ${LOCALBASE}/lib/gnat diff -u
/usr/ports/ports-mgmt/synth/distinfo ./distinfo --- /usr/ports/ports-mgmt/synth/distinfo 2016-06-12
11:37:12.000000000 +0200 +++ ./distinfo 2016-06-20 15:33:09.000000000 +0200 @@ -1,3 +1,3 @@
-TIMESTAMP =<PHONE_NUMBER> -SHA256 (jrmarino-synth-v1.40_GH0.tar.gz) =
bd7ab4b5d82d80508f68a8f525bc8351cee723aa9c3f3c2c0042d81a78605656 -SIZE
(jrmarino-synth-v1.40_GH0.tar.gz) = 101245 +TIMESTAMP =<PHONE_NUMBER> +SHA256
(jrmarino-synth-v1.40-5e2b4cd_GH0.tar.gz) =
2676ba95ef513a438ea1a64a54b5ca9696aa9e273bd51d6fcec5f4f9578d8d0e +SIZE
(jrmarino-synth-v1.40-5e2b4cd_GH0.tar.gz) = 101530 |
I've done pretty much no testing so hopefully there are no regressions.
Please let me know how it works out.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/jrmarino/synth/issues/47#issuecomment-227143944, or mute the thread
https://github.com/notifications/unsubscribe/AK0FJqD1VyvQ4JfNBW86ILe0pX1vApxvks5qNpeTgaJpZM4IhrJn.

chaplina, you never mentioned anything about libressl before now.  Did you switch to it and that's when synth started  core dumping?

Once again, many thanks for taking the time to research and get this resolved!

Better yet, we got circular dependency detection out of this exercise.


As an admin, I want HathiTrust pairtree data regularly synchronized so that we have the most current version of HathiTrust content.

As @mnaydan and I discovered in testing excerpts, when we found text and page image mismatches, (and as I've suspected for a while), we should probably be doing regular rsync updates of our HathiTrust pairtree data to get any changes and (presumably) deletions.
the manual version looks something like this:

get list of all hathi source ids in the database
create a text file with one id per line
use the one off script to generate a path list for rsync (per hathitrust instructions)
run rsync with the path file list generated, using the options hathitrust specifies: rsync --copy-links --recursive --times --verbose  --itemize-changes --files-from=/tmp/rsync_path_list.txt datasets.hathitrust.org::ht_text_pd .. (itemize changes was a local addition so we could see specifically what files changed; I didn't use the delete option but we will need to add it). Note: might need to do something about permissions or file ownership. When I ran this in production, the permissions on some files did not allow the deploy user to set the time attributes (likely because files were created via the admin interface, so they were owned by apache instead of deploy; should also check that the rsync command generated by admin uses the same options).
After rsync completes, reindex pages to get updated content: python manage.py index_pages

We'll need to do these steps in production because we know we have content out of date, and it affects some of the excerpts.
We probably want to automate this at some point — I think if we do that, it would help out if there are any deletions in our dataset, but I'm not clear on all the steps we'd need.
Currently thinking it might look like this:

custom manage command that can be run as a cron job

gets a unique list of hathitrust source ids from the database
calls rsync with those ids, similar to the way we call rsync for adding new records now
identifies any records where the content was updated

reindexes pages for updated items

identifies any records that have been deleted (not sure how! file contents will be gone, but hopefully there's some way to get rsync to tell us what it removed)

mark database record as suppressed; add something to the note field and/or a log entry to document why/when it was suppressed (suppressing will take care of removing it from the index)
alert ppa admins (via email? slack?) that an item has been removed — they should be aware; they may need to find and import a different copy of that volume

I'm unclear on why volumes get removed — if we think it's unlikely for our data (since it is all public domain), maybe we can come up with a simpler approach for handling possible deletions. I'd love to have some way of sending the hathi email we get now to a script that can alert us if there's any overlap with those ids and PPA records, but haven't had time to think or ask about ways to accomplish that.  We could ask HathiTrust (or check their documentation) to see if the deletion email information is made available in another form — if there's an rss feed or something we could consume via script, that would be easier.

questions we still need to answer:

how often to run this? (currently thinking weekly)
how can/should a content admin manage this? maybe a log entry documenting that a work was updated via rsync would be sufficient - would be visible on individual work history but could also be run against the log entry admin list

I ran our new replicate playbook to make sure PPA pairtree matched production (including deleted test records we added to staging), and then ran the new version of the hathi_rsync manage command.
Here's the output from the command I saw in the terminal:
Synchronizing data for 5319 records
rsync: [sender] link_stat "uga1/pairtree_prefix" (in ht_text_pd) failed: No such file or directory (2)
rsync: [sender] link_stat "uga1/pairtree_version0_1" (in ht_text_pd) failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1865) [generator=3.2.7]
ERROR:ppa.archive.import_util:HathiTrust rsync failed — Partial transfer due to error / command: rsync -rLt --log-file=/tmp/ppa-rsync_hl204axt/ppa_hathi_rsync_20240308-132616.log --delete --ignore-errors  --files-from=/tmp/ppa_hathi_pathlist-10jsmrx4.txt datasets.hathitrust.org::ht_text_pd /mnt/nfs/cdh/prosody/data/ht_text_pd/
Updated 9389 files for 4707 volumes; full details in ppa_rsync_changes_20240308-134553.csv

It took a while to run - I think we had a lot of changes to catch up on since we haven't been updating.
Here's a copy of the detail file generated by the script; it's a CSV file generated from parsing the rsync log. I opted to include more details based on Laure's review, since the raw rsync log file is currently not preserved.
Note that we currently don't handle deletions in this report.
ppa_rsync_changes_20240308-134553.csv

Ran the script to update page counts based on the updated data; here's the output:
Volumes with updated page count: 1,539
        Page count unchanged: 3,216
        Missing pairtree data: 0

I'm starting a full page reindex now so search will be updated with the new content.

Not quite sure how to test. I looked at the CSV and I'm not sure how to read it. It looks like only 6 files were marked as size_changed FALSE and 2 as modification_time FALSE. It looks like there are 3 types of rsync_flags: >f.st...... >f..t...... and >f+++++++++. What do these mean? What do size_changed and modification_time refer to?
As far as the METS-XML referencing non-existent txt files, that's good to know (but unfortunate) that it's more than just that one record we found on #539. As long as the error is non-fatal, maybe it makes sense to document that page count may be inaccurate due to this weird HathiTrust abnormality, but not put development time into working around it.
Do we still need to address your questions about how often to run this, and whether a content admin should manage it?

I'm going to make an attempt at answering this, but @rlskoeser correct me if I'm wrong on any of the details.

size_changed is a boolean indicating whether the file's size has changed (according to rsync)
modification_time is a boolean indicating whether the file's modification time has changed (according to rsync)

The last portion corresponds to the rsync log output, which is fixed length string of 11 characters. This string should always start with >f in these logs since we're only tracking files that have been downloaded. > indicates that a transfer from the remote server to the local server has taken place. f indicates that it's a file rather than a directory, symlink, etc. The next 9 characters correspond to specific attributes.

. indicates that the attribute hasn't changed.
+ indicates a new file (so all attributes will be +s)
If there has been a change, the attribute will be marked with its corresponding letter (cstpoguax).

The rsync attributes we're explicitly logging are s and t which indicate that the file's size and modification time have changed. We'll generally log the following rsync flags:

>f.st....... the size and timestamp have changed
>f..t....... the timestamp has changed
>f+++++++++ a new file has been created

I thought it would be good to run the rsync command in staging again before I run the new excerpt script - I was curious if there would be any changes since running rsync two weeks ago.
The script output reports: "Updated 90 files for 56 volumes"
Here's the csv report generated by the rsync script.
ppa_rsync_changes_20240318-152446.csv

Another set of changes just since yesterday! 12 volumes, including 11 njp records
ppa_rsync_changes_20240319-140803.csv

After talking through our decision tree we decided to retitle this issue for full works.
Development notes (as I understand them):

[ ] run cron job daily at 2am
[ ] check for deletions
[ ] check for whether non-deleted files change size or timestamp
[ ] if full work and file change present, reindex that work and log change

Deletions and excerpts will be handled as part of #626

Since we rescoped this issue, we've already tested this issue as part of the other rsync investigations and OCR was successfully updated.


Cannot read property 'transition' of null

Im trying to draw a line chart using ChartJs and Agular4 that takes data from @Input.
  ngOnChanges(){
		if(this.labelY  && this.dataSet){
			console.log(this.dataSet);
			console.log(this.labelY);
			setTimeout(()=>{
				this.draw();
			},500);
		}

	}

Without the timeout,

error is generated. Any idea on resolving this issue?
Im using ChartJs 2.7.1
And Angular 4
draw(){
		if (this.mychart) {
			this.mychart.destroy();
		}
		let ctx = this.mycanvas.nativeElement.getContext('2d');
    this.mychart=new Chart(ctx,
      {type: 'line',
			data: {
				labels:this.labels,
				datasets: this.dataSet
			},
			options: {
				responsive: true,
				elements: {
					line: {
							tension: 0 // disables bezier curves
					}
				},

				scales: {
					xAxes: [{
						type: "time",
						display: true,
						scaleLabel: {
							display: true,
							labelString: 'Time'
						},
                        ticks: {
                            major: {
                                fontStyle: "bold",
                                fontColor: "#FF0000"
                            }
                        }
					}],
					yAxes: [{
						display: true,
						scaleLabel: {
							display: true,
							labelString: this.labelY
						},
						ticks: {
							min: 0, // it is for ignoring negative step.
							beginAtZero: true,
							stepSize: 1  // if i use this it always set it '1', which look very awkward if it have high value  e.g. '100'.
					}
					}]
				}
			}

        });
  }

I think this is a chart.js problem. If you do quick dataset replacement (i.e. remove then add new) during animation / transition, the exception will be raised. Occurs also for animation duration: 0

I have the same issue. The easiest, but not the smartest way is to hide the chart before the data will be fetched.  After the data is changed, the chart will be shown.

Anyone solved for Cannot read property 'transition' of null issue?
I also got that issue when chart data are change quickly.

@MinChanSike are you getting the problem on Angular?

no, I got in sample html page when I try to click refresh button quickly.

I am also getting that error when I'm trying to push data into the charts.

+1

Try to call mychart.update() after setting the new data... that solved the problem for me.

This error occurs when you just initialized the graph and overwrite the dataset almost immediately after you have initialized the graph (e.g., initializing the graph with empty dataset and sending an HTTP request to get a dataset from the server).
I was able to solve this error by completely disabling the animation in the options. My graph options:
var options = {
    responsive: true,
    maintainAspectRatio: false,
    animation: {
        duration: 0
    },
    hover: {
        animationDuration: 0
    },
    responsiveAnimationDuration: 0
};

chartInstance.update() solved the problem in my case.

I'm was using Angular and had the same problem.
I solved it by adding a ngDoCheck() to my chart and using chart.update() in the DoCheck
hope it helps!

@KimiaBashiran isn't ngDoCheck lifecycle called too many times?

I just encountered this problem too. I've opened a new issue since this one was closed. See https://github.com/chartjs/Chart.js/issues/6207

as discussed in #6207, calling upate() on the chart after modifying the data solves this issue.

Try to call mychart.update() after setting the new data... that solved the problem for me.

mine was solved by this

mt too.
update() is solved

i had similar issue, after reading the source code adding datasetIndex to the Chart.LegendItem did the trick

Try to call mychart.update() after setting the new data... that solved the problem for me.

Thank you so much, seems like my data had not arrived in time and updating the chart fixed the issue

i had similar issue, after reading the source code adding datasetIndex to the Chart.LegendItem did the trick

Thanks @ctrl-d this solves my issue.


adds fhir-schema to sdk

Why ? This will drastically increase the size of SDK.  Is it temporary?  I suggest we host the schema somewhere and not add in SDK.

@Harsimran1  https://gesundheitscloud.atlassian.net/browse/HC-1510
Tobi asked for it.. I guess at least for the demo this is ok.

Does this add the entire FHIR schema? Or just the bits that we need?

It adds the entire FHIR schema. but when loaded over API , it reduces down to 30KB (on first request, and later loaded from disc cache).


Recipe: Test does not run with ReplaceConstant.

Hello,
I want to use your recipe ReplaceConstant.
Problem:  When I pass my test it does not work with your recipe, I would like to understand why, also your recipe is not making changes in my project.  Any idea?.
I attach the test I had developed for test your recipe.
Version:
<rewrite.version>7.20.0</rewrite.version>
<rewrite-maven-plugin.version>4.21.0</rewrite-maven-plugin.version>

With latest version I have another issues
<rewrite.version>7.22.0</rewrite.version>
<rewrite-maven-plugin.version>4.23.0</rewrite-maven-plugin.version>

Thanks so much,
class ReplaceStaticConstantByLiteralTest : JavaRecipeTest {
   companion object {
        private val b: String = """
            package com.constant;
            public class B {
               public static final String VAR = "default";
            }
        """.trimIndent();
    }

    @Test
    fun replaceConstant() = assertChanged(
        dependsOn = arrayOf(b),
        recipe = ReplaceConstant("com.constant.B", "VAR", "\"newValue\""),
        before = """
            package com.abc;
            import com.constant.B;
            class A {
              String v = B.VAR;
            }
            """,
        after = """
            package com.abc;
            class A {
                String v = "newValue";
            }
        """,
    )
}

Error:
Caused by: java.lang.ClassCastException: class org.openrewrite.java.tree.J$Literal cannot be cast to class org.openrewrite.java.tree.J$Identifier (org.openrewrite.java.tree.J$Literal and org.openrewrite.java.tree.J$Identifier are in unnamed module of loader 'app')

Hi @dianamaesan, thank you for reporting the issue!
I'm having trouble reproducing the java.lang in response to the first error.NoSuchMethodError: 'java.io.InputStream org.openrewrite.Parser$Input.getSource()' error. I've run both rewrite-maven-plugin.version 7.21.0 and 7.23.0 without issues.
Are there any additional configurations in the plugin I should be aware of?

Caused by: java.lang.ClassCastException: class org.openrewrite.java.tree.J$Literal cannot be cast to class org.openrewrite.java.tree.J$Identifier (org.openrewrite.java.tree.J$Literal and org.openrewrite.java.tree.J$Identifier are in unnamed module of loader 'app')

I've identified the cause of the error and have a fix ready, but I'd like to ask a few questions before committing the changes.
I have a few questions:

Will resolving the java.lang.ClassCastException resolve this issue for you?
If the NoSuchMethodError is still a problem, would you mind if we separate that into a different issue?

Thanks in advance!

Hi @traceyyoshima!!,
Thank you very much for your quick response to my question. I answer your questions below:
Are there any additional configurations in the plugin I should be aware of?

No, there are no additional configurations.

Will resolving the java.lang.ClassCastException resolve this issue for you?

Yes, it solves my problem.

If the NoSuchMethodError is still a problem, would you mind if we separate that into a different issue?

Of course I don't mind if a different topic is opened.

Thank you!

Will resolving the java.lang.ClassCastException resolve this issue for you?

Great, I'm glad it will resolve the issue!

Of course I don't mind if a different topic is opened.

Thank you, I appreciate your understanding, I'll commit the changes and reference this issue as fixed.
Please let us know if you experience the NoSuchMethodError again, I'll also keep an eye out for any other reports of a similar problem.


Support parsing other DNS operations

not sure if it should be configurable, but support dynamic updates and such.

as of 0.15 dns parsing is now port based, should be better now


Any chance you'd update the plug-in to support the new TTL parameter?

Jeah, that would be VERY helpful @potrudeau

Hi @JoelGit, I am not very good in Java/NodeJS. But I managed to implement this feature. I don't know if @potrudeau will approve my PullRequest or if he is even active any more.
Anybody who wants to try my changes:

Make a Backup of Homebridge-config !!!
Make a Backup of path/to/node_modules/homebridge-messenger !!!
replace the following files from my fork:
config.schema.json
index.js
lib/pushover.js


can you share pdf

can you add pdf to repo?

link is broken
http://poseidon.csd.auth.gr/papers/PUBLISHED/JOURNAL/pdf/2018/Passalis_PatternRecognition_2018.pdf

Thanks for letting me know. I added a (working) link to the pdf to the repo. You can find the paper here.

I wasn't aware of this meetup. Happy to hear about this!!! I will soon share the code (PyTorch) implementing the method and allowing for reproducing the results reported in the paper. I will let you know.


Scope claim in the access_token should be a JSON string

Related to #1061
The scope claim provided in the access token is a JSON array of strings. There was do indication of the structure of this claim initialy, but there is now a RFC and draft that define the scope claim as a JSON string:
OAuth 2.0 Token Exchange :

The value of the "scope" claim is a JSON string containing a space-
separated list of scopes associated with the token, in the format
described in Section 3.3 of [RFC6749].

JSON Web Token (JWT) Profile for OAuth 2.0 Access Tokens

If an authorization request includes a scope parameter, the
corresponding issued JWT access token SHOULD include a "scope" claim
as defined in Section 4.2 of [RFC8693].

My bad, this is managed by the EmitScopesAsSpaceDelimitedStringInJwt  option.


MIT License Page

Hi @desandro:
Your copyright notice and the MIT license text are not contained on GitHub but on a separate MIT license page (http://desandro.mit-license.org/). This actually poses a problem for automated FOSS compliance processes. While code scanners will pick up on the string 'MIT' in the README.md, your copyright notice will be systematically missed.
Would you please consider changing your license information so that your code can be more easily used in compliance with the license? A good method for declaring copyright and licensing is https://reuse.software.

Full agreement to these concerns, and the suggestion to adopt REUSE instead.
The problem of storing such information in another place than the actual repository is that this is easy to get out of sync, and that the other source might not be available in the future. Storing it online is similar to storing it as metadata in a version control system, see here.


Fix: Format poll msg details

Codecov Report

Merging #94 (c181465) into master (9fd0061) will decrease coverage by 0.00%.
The diff coverage is 0.00%.

:exclamation: Current head c181465 differs from pull request most recent head 4c32292. Consider uploading reports for the commit 4c32292 to get more accurate results

@@            Coverage Diff            @@
##           master     #94      +/-   ##
=========================================
- Coverage    5.86%   5.86%   -0.01%
=========================================
  Files         442     442
  Lines        8784    8788       +4
  Branches     2363    2364       +1
=========================================
  Hits          515     515
- Misses       8269    8273       +4

Impacted Files
Coverage Δ

app/src/pages/gov/components/PollMsgRenderer.tsx
0.00% <0.00%> (ø)

app/src/pages/gov/logics/extractPollDetail.ts
0.00% <ø> (ø)

app/src/pages/gov/logics/getMsgDetails.ts
0.00% <0.00%> (ø)

Continue to review full report at Codecov.

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


Is there any plan to upgrade this project to 5.1?

Hi. This project is very helpful for learning Mass AI. Thank you. But I had a lot of problems trying to upgrade it to 5.1 because of the API update. It took me a lot of time but I couldn't solve them all. So I would like to ask if you have a plan to update it to 5.1?

There is very slow progress to update to 5.3
You can view the current progress here: https://github.com/Ji-Rath/MassAITesting/tree/UE5.3
At its current state, a lot is broken and there are various crashes. I can't guarantee that I will finish soon as I have been busy lately but hopefully it points you in the right direction.

Just take your time according to your own plan. Thank you for your project and work.


Add ChilliBits.Spice version 0.7.2

[x] Have you signed the Contributor License Agreement?
[x] Have you checked that there aren't other open pull requests for the same manifest update/change?

[x] Does your manifest conform to the 1.0 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

#42616

Close and reopen this PR to rerun the pipelines


tutorial bayes opt

solves #118

Fig 1: add reference to paper

Otherwise I like it a lot. After you address the two comments, you are good to merge.

Oh, one more request: Please link the tutorial in the documentation. You can follow the example in the docs/examples folder.

done, but please check real quick @rothma


respect poracle everythingFlagPermissions

    // everythingFlagPermissions defines how the 'everything' flag is treated by the !track command.
    //    allow-any: the use of everything is unrestricted, it is recorded as a wildcard, and users can use 'individually' to get individual rows
    //    allow-and-always-individually: the use of everything is unrestricted and recorded as individual rows for each pokemon tracked
    //    allow-and-ignore-individually: the use of everything is unrestricted but users can't opt for individual tracking rows
    //    deny: users cannot track for everything and must track against individual pokemon
      "everythingFlagPermissions": "allow-any",

I have mine set to deny yet when using ReactMap players are able to track everything

You only want to deny the ability to add the everything wild card? Because otherwise ReactMap is just too convenient for adding Pokemon, can't really stop them from tracking everything at once.

Indeed the use of everything should not be possible when flag is set to deny,
Ideally when flag is set to deny the buttons apply to all, disable all and enable all aren't even shown in pokemon selection, forcing them to track individual pokemon.


Programatically open/close nav?

Hi,
Is there anyway to open and close the drawer programatically?
For example, in case we need to use another button or link instead of the built-in hamburger menu?
Thank you.

There is a hacky way i just tried here - https://codesandbox.io/s/xo0976yq5z
You can use isOpen and set the state. Let me know if it works for you.

Great! That was exactly what I needed. 👍
Thanks for the quick reply, and thanks for releasing this component.

Personally i think it's better to just disable both icons using:
<Slide :burgerIcon="false" :crossIcon="false"/>
And only use custom elements combined with isOpen

This doesn't work? I am changing from false to true and back again but nothing happens.
:isOpen=openState
Also the above codeSandbox doesn't work either.
Am i misunderstanding something? Thanks!

@aske-cph  can you share some of the code ? because it works good for me

Check the codesandbox link: https://codesandbox.io/s/xo0976yq5z
Nothing happens when i click open menu button. In both Chrome and Safari. Does it open for you? For me it only closes an already open menu.

There is a problem with the button, check this https://codesandbox.io/s/10ykw3286q, it's working perfectly

check this https://codesandbox.io/s/wq3ozkvjyl, you need to add e.preventDefault() and e.stopPropagation() to the methods, codesandbox is having a problem with buttons, i don't know why, but another person the otherday  had the same issue as you, https://github.com/mbj36/vue-burger-menu/issues/43#issuecomment-463233677 and it's a sandbox problem.

Thanks abunch @roonie007 ! I got it working.


How to install docker engine without yum & apt-get

Hi,
I am a newbie in this docker environment.So, can somebody tell me how to install docker without yum in RHEL 7.1 . Not able to get much info abt this in the google search. I have downloaded "docker-engine-1.10.0-1.el7.centos.x86_64.rpm" and "docker-engine-selinux-1.10.0-1.el7.centos.noarch.rpm" but still it says
warning: docker-engine-1.10.0-1.el7.centos.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID 2c52609d: NOKEY
error: Failed dependencies:
libdevmapper.so.1.02(DM_1_02_97)(64bit) is needed by docker-engine-1.10.0-1.el7.centos.x86_64
libsystemd.so.0()(64bit) is needed by docker-engine-1.10.0-1.el7.centos.x86_64
libsystemd.so.0(LIBSYSTEMD_209)(64bit) is needed by docker-engine-1.10.0-1.el7.centos.x86_64

You should be able to find the RPMs that contain those libraries from your RHEL repository and install them first. Otherwise you can download static binaries of docker see https://docs.docker.com/engine/installation/binaries/ but these do not have devicemapper support, which is the normal storage driver for RHEL systems.

Thanks a lot justincormack !!


Add map and when extension methods over StockResponse

Description
The goal is to use the StockResponse in a more declarative way by using extension methods on StockResponse.
Methods

[x] map method
[x] maybeMap method
[x] when method
[x] maybeWhen method

Tests

[ ] map test
[ ] maybeMap test
[ ] when test
[ ] maybeWhen test

Example
// Create a stream to listen tweet changes of the user `xmartlabs`
stock
    .stream('xmartlabs', refresh: true)
    .listen((StockResponse<List<Tweet>> stockResponse) {
  if (stockResponse is StockResponseLoading) {
    _displayLoadingIndicator();
  } else if (stockResponse is StockResponseData) {
    _displayTweetsInUI(stockResponse.requireData());
  } else {
    _displayErrorInUi((stockResponse as StockResponseError).error);
  }
});

With when:
// Create a stream to listen tweet changes of the user `xmartlabs`
stock
  .stream('xmartlabs', refresh: true)
  .listen((StockResponse<List<Tweet>> stockResponse) => stockResponse.when(
        onLoading: _displayLoadingIndicator,
        onData: _displayTweetsInUI,
        onError: (error, stackTrace) => _displayErrorInUi(error),
      ));

Hey @leynier, how are you doing? Could you check my comment? Ping me if you have some question/comment.
We’re planning to release the v1.0 and it would be great to include your feature!

Hi @mirland, sorry for the late response, I had a blackout for several days due to hurricane Ian.
I could have the tests and the origin parameter addition ready by early next week.
Best regards.

Cool, that great! Again thanks for your contribution!

Codecov Report
Base: 100.00% // Head: 100.00% // No change to project coverage :thumbsup:

Coverage data is based on head (b43fd84) compared to base (4befd40).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #21   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files           14        14
  Lines          199       199
=========================================
  Hits           199       199

Impacted Files
Coverage Δ

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

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

@mirland ready for review ✅


[Bug]

Hello, I'm not one to comment or anything. But this time I'm going to do it so that this plugin can be improved further. I can't synchronize the data to my server with ISPConfig it returns that error.
The plugin is very good, what fails is that and that when a user is created, it does not create a user, it creates the site without associating it with the user.

ISPConfig3 doesn't have an API endpoint to actually sync the account, so this is expected.   However, it creating the website, but not the user is an issue.  In my testing it was also making the user account, did you by chance get any error when the account was being created?

As far as I know, I have not received any errors, only that it did not synchronize those things that I mentioned and that it causes problems when synchronizing, that it basically does not synchronize. What I would like above all is for everything to be synchronized, both the limitations and everything, to create the user account and when I suspend someone for non-payment, then if I suspend in FOSSBilling, then the account and the site in ISPConfig will be suspended.

I’ll take another peek tomorrow when I get off work, see if I can find any issues.  Also I’ll take a look at the syncing, we might be able to do something for it.  I was planning on updating the code to clean it up also so I’ll use this as a chance to also do that

Perfect, I'm sure you can improve it and clean up the code. I hardly understand PHP otherwise it would help you. Anything testing or whatever, let me know and I'll try it. I will wait for your response.

Wasn’t able to get to this today, having some car troubles and been working on that after work, and should be fully fixed tomorrow.  So I’ll have to push this out until Wednesday as long as I’m able to fix my car.

No rush, take your time without problem 💪

I conducted some testing today and was unable to replicate the issue with the client/user not being created. The user was successfully created and linked to the corresponding website. However, this does highlight areas where the process could be further optimized.
If you're experiencing an issue where the user isn't being created on your end, it's possible that the problem lies with the permissions of the API user you're using. Could you please share a screenshot of those permissions for further review?
From my perspective, the process should ensure that the user/client is successfully created. If the creation fails, the process should halt and trigger an error. I will proceed with making the necessary updates to address this.

Now what I told you is working for me but it has not been assigned what I have delimited in the space template and that has been made unlimited

But it won't let me synchronize from FossBilling so that it applies that it only has 10GB, not unlimited

Thank you for the update. I understand the current limitations with account syncing, and while this feature isn't supported at the moment, I will explore alternative solutions to enable syncing.
Regarding your comment about user creation — "When a user is created, it does not create a user; it creates the site without associating it with the user" — could you clarify the specifics of this process? Is the module creating the website but not the user account, and failing to link it in ISPConfig3? Or is this issue more closely related to the account syncing challenge?
Your insights would be helpful for better understanding and resolving the situation.

The rest is all correct, I have already gotten it to work. What would be missing is that when the user is created it does not have the established limitations. And also if I want the user to create more sites without having to purchase the plan more times, how do I do it?

Thank you for the clarification—this makes much more sense now. I had some questions about these settings and was hoping for insight from someone more familiar with ISPConfig3.
It appears the issue stems from the createClient function. I was using the example data provided by ISPConfig3, which sets certain values to -1 (indicating unlimited). I will update this in the coding to pull it from FOSSBilling, which should resolve the issue.

Perfect, I'm glad I was able to clarify

Okay, this should fix the limits and apply them correctly if you can test it.
https://github.com/FOSSBilling/ISPConfig-3/blob/account-limits-fix/Ispconfig3.php
I'll think more on the syncing I'm sure there might be something that can be done to get it.

I'll try it and let you know, thank you.

It works but the ideal is to add that you can modify all the fields of the limiting template. So that if you establish that 3 CRON tasks can be done, then there are only three tasks, not unlimited.

This would need to be specified in the "Hosting Plan Additional Parameters" section.
Currently, FOSSBilling does not have a built-in setting to define the number of cron jobs.  (That I know of)
I'll update the code soon to support custom values, and update the documentation.
So in other words it would be something like the following that we have now (except it would be for crons, etc):
Custom Package Values
vat_id - Default: NULL
web_php_options - Default: no,fast-cgi,cgi,mod,suphp,php-fpm (Not sure if all these options exist, I think only fast-cgi & php-fpm exists. Please LMK if you know.)
limit_shell_user - Default: 1
ssh_chroot - Default: no,jailkit,ssh-chroot
language - Default: en
pm_process_idle_timeout - Default: 30
pm_max_requests - Default: 30

I've completed the task, and everything is ready to go. You now have the ability to configure additional custom package values. However, please note that it is not necessary to configure all of them if you are fine with leaving them set to unlimited (-1). The only exception is the limit_cron_frequency, which will default to 5 minutes if not specified. Below is a list of the custom package values available for adjusting the limits that FOSSBilling does not provide by default.

max_mail_domains
max_mail_aliases
max_mail_alias_domains
max_mail_forwarders
max_mail_catchall
max_mail_filters
max_fetchmail
mail_quota
limit_spam_policy
max_cron_jobs
limit_cron_frequency - Default: 5 minutes

You can use the following repository to test these changes. If everything looks good, I’ll go ahead and open the pull request for review and merge.
Thank you for your valuable feedback!

Perfect, thank you very much. Then at night I try it. I'm from Spain and right now you catch me outside. Tonight I'll try and tell you.

Wanted to follow up here, did you have a chance to test?


Unclear how monetary_value is calculated

I had read through the documentation which stated:
This is equal to the sum of all a customer's purchases divided by the total number of purchases...

SQL:
AVG(total_price) as monetary_value,

I try to check back with my own data, frequency = 3, it's correct:
data = [[236,'john'], [118,'john'], [236,'john'], [99,'john']]
df = pd.DataFrame(data, columns = ['sales', 'name'])

The average should be 172.25, but why the monetary_value in summary_data_from_transaction_data shows 190.33. Where does 190.33 come from?
Thanks a lot

I think there are 2 possibilities:

In the calculation of mean for the monetary_value, the first purchase is excluded, since it is not a repeat purchase (you could change this with your own code if you want...).# by setting the monetary_value cells of all the first purchases to NaN,
# those values will be excluded from the mean value calculation

Part of your data is being filtered out because it is outside of the specified date range.

ok, got it, thanks!

Why is the monetary value of the first purchase not included while calculating the average monetary value? It doesn't make sense.

Why is the monetary value of the first purchase not included when calculating the average monetary value? It doesn't make sense. I understand we're talking about repeat purchases, but first purchase monetary value should also be included while calculating the average monetary value.
It seems this behaviour was introduced in https://github.com/CamDavidsonPilon/lifetimes/commit/bd6b73e2f3ea92cbdce936015715a18a65d1e043, which is unrelated to the change it is making.


changes for magicgui 0.3.0

magicgui 0.3.0 prerelase is out now... and it comes with some changes to the event system.
(See https://github.com/napari/magicgui/pull/253 for details)
while this plugin will still be compatible with magicgui >=0.3.0 it will have a lot of warnings.  This PR contains the changes needed to avoid the warnings.  (in magicgui 0.4.0 it will error)
(Note: don't merge this until magicgui comes out of pre-release ... you can use pip install --pre magicgui to test)

well, we recently merged https://github.com/napari/napari/pull/3465, which pins napari to magicgui 0.3.0 ... and we plan to release again in a week or two.  so maybe roughly around then?  I can ping you at that time if that sounds good


Support for DTLS

https://en.wikipedia.org/wiki/Datagram_Transport_Layer_Security
Would it be possible to request the next enhancement to support DTLS or any other type of SSL/TLS implementation?
We are sending data over the internet or WAN and like the performance of UDP but since logstash udp does not support it at this time, we have to use TCP.
I will see if I have time to add it to the project but, if anyone more experienced them me, It would be great to have in this ever increasing complex and insecure Internet World.
Thanks

I understand your comment about making the code more complex, but slowly everything is becoming SSL/tls etc because of hacking. I personally think we should only have one, but since I am only proposing the enhancement and not writing the code. I will default to your preference. Maybe it will be a good spring exercise for me to learn more.
The reason I was asking for this, is that I am sending all my syslog data to a central server over the WAN. it occurred to me. That any good hacker could utilize that info to more easily hack a system. Of course I could move to tcp but that has performance issues over the WAN.

Thanks for the feedback :)
We may make a new DTLS input plugin someday, but if anyone wishes to work on in the meantime, I certainly encourage it.


assert option, max fail option & bugfixes

fixed issue where tests flagged for pending are treated as failures
can now test based on asserts, script errors count as failed asserts
alternate fail criteria of maximum failing tests / asserts

I admire your perseverance. I would have totally switched to python by now :D

Bash has to be the worst programming language people actually use... I really should just move this to python

Unless it's a borderline trivial script, I never stay with bash. Python or ansible depending on the needs only :)


Wrong component names with autoimports.

Currently my emails directory looks like this.
emails
│   Message.vue
│   Welcome.vue
│
└───designer
    ├───components
    │       Footer.vue
    │       Header.vue
    │       Unsubscribe.vue
    │
    └───layouts
            Default.vue

All components are autoimported correctly (I am able to use <DesignerComponentsFooter /> in templates.
But, while using useCompiler(...) the components are not found.
If I use <DesignerComponents:Footer /> in my templates, then useCompiler(...) works fine but then regular nuxt rendering is not working.

Upon firther investigation, this only happens when there is a folder structure 2 levels deep.
So, my email component name is designer:components:Header.vue and after calling correctName(...) it becomes DesignerComponents:Header
The currectName(...) does name.replace(":", "-") instead of name.replaceAll(":", "-")


[DUMMY PR TO SUPPORT CCD] AAC Challenge fix

JIRA link (if applicable)
https://tools.hmcts.net/jira/browse/PRL-4899
Ref:
https://tools.hmcts.net/jira/browse/EXUI-1143
https://tools.hmcts.net/jira/browse/DTSAM-73
Change description
Dummy PR - no need to merge.
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[x] No

not needed. closing


As an organization Admin, I can request an organization account in the app.

We need to add a button that allows admin users to invite staff upon request to their organization.
[Insert design here]
[Insert technical details here]

Hey @Ndshah82 Admin can invite staff to their org in the app currently. This is based on stakeholder feedback - that they want to invite staff. It allows them more control over setting staff up, as they will end up receiving requests from random people (this happened in the original app).

@kasugaijin I pulled it from the Miro.  It's on the staff board, so I was under the assumption that it was for staff to invite users.  I updated the issue per your comments.  If further clarification is required, please provide.

Ah yes that’s a bit confusing it’s on the staff panel but the column is for organization. We could actually benefit from an organization panel couldn’t we! Thanks for updating.

Will re-write so there is less discussion clutter.


My language is supported by Deepgram but unavailable in the audio-notes settings

Issue: I speak Dutch and would like this plugin to transcribe my Dutch recordings. Based on my understanding, Deepgram supports Dutch through their API. However, I am unable to select Dutch as a language when starting a recording.

The same problem for Polish language. Please make it work :)

Same problem with Czech. Even if language is supported by Deepgram. Please add this language.

I've encountered the same issue with Chinese as well, please make some updates.


Multiple active gateway enhancement proposal

Submariner currently only allows a single gateway to be active at
any one time in a given cluster.  This enhancement proposes that
there be an option to allow more than one gateway to be active in
a given cluster to enhance both performance and resiliency. This
feature is sometimes referred to as “active-active gateways”;
however, the goal is to allow two or more active gateways to be used.
Signed-off-by: Andre Fredette<EMAIL_ADDRESS>

Thanks for your feedback @astoycos!

I have a general comment about this proposal: based on user's feedback so far, it's not clear if the gateway model (where we assume that dedicated nodes or certain worker nodes have public IPs available) is really the future of Submariner. This model is not very cloud-native, cumbersome to setup, and is not compatible/realistic with many of the managed Kubernetes offerings which are becoming more popular. For this reason, we started some early exploration work around using a LoadBalancer type service instaed (see also https://submariner.io/getting-started/architecture/gateway-engine/). I am wondering if we shouldn't complete the investigation of the LoadBalancer mode first, before further investing into HA of the gateway model.

+1
This is inline with what I mentioned earlier on couple of occasions that LB mode is going to be the future.

+1 to @nyechiel's assessment.
Additionally, LB mode would have many of the problems of multiple gateways (since we'd probably want to run more than one GW pod).
I'm suggesting we focus on LB mode first, and that would also pave the way to an easier implementation of multiple dedicated gateways, should such a feature be desired.

I am wondering if we shouldn't complete the investigation of the LoadBalancer mode first, before further investing into HA of the gateway model.

We definitely agree that LoadBalander mode is essential and probably should be a requirement for the first release.  However, we discussed this with @sridhargaddam and we believe that all of the infrastructure work we need to do for non-Loadbalancer mode will also be required for LoadBalancer mode, and the non-LoadBalancer mode development environment is much more straightforward. So, we are choosing to work on non-LoadBalancer mode first.  Once we get that fully working, we can turn our attention to LoadBalancer mode.

We definitely agree that LoadBalander mode is essential and probably should be a requirement for the first release. However, we discussed this with @sridhargaddam and we believe that all of the infrastructure work we need to do for non-Loadbalancer mode will also be required for LoadBalancer mode, and the non-LoadBalancer mode development environment is much more straightforward. So, we are choosing to work on non-LoadBalancer mode first. Once we get that fully working, we can turn our attention to LoadBalancer mode.

What is the benefit to the users from active active dedicated ha gateways?
We already see that LB mode is necessary for deployments where you cant control the infrastructure (any hosted K8s) and also as @nyechiel mentioned the "dedicated gw" mode is not K8s native and might even be problematic in many cases. All the while, LB mode should provide the same benefits while being much more native to the K8s ecosystem and easier to set up and maintain by the users.

What is the benefit to the users from active active dedicated ha gateways?

The term "LoadBalancer" in LoadBalancer mode is currently a bit of a misnomer.  The code still only supports a single active gateway sitting behind that LB.  The LB is just used as a mechanism to get an external address in certain cloud deployments.  With this change, we can support multiple active gateways behind the LB.  I attempted to explain the benefits of multiple active gateways in the initial proposal, but basically, they are increased forwarding performance and resiliency.

The term "LoadBalancer" in LoadBalancer mode is currently a bit of a misnomer. The code still only supports a single active gateway sitting behind that LB.

Yes but current HA is supported so users can still expect a decent level of service.

The LB is just used as a mechanism to get an external address in certain cloud deployments.

Yes but that would be of great value in many use cases where its not possible to deploy Submariner otherwise, or where other considerations such as cost and/or security would have users rather use the native infrastructure LB rather than going with dedicated gateways with external IPs.
The value add of a working LB mode is quite high.

With this change, we can support multiple active gateways behind the LB. I attempted to explain the benefits of multiple active gateways in the initial proposal, but basically, they are increased forwarding performance and resiliency.

We're talking about extreme scenarios when a flaiover occurs, right?
Currently the HA has a disruption of a few seconds AFAIK so I'd say the value add in this area is very low and is more of a stretch goal.
As for performance I agree there's a better use case here, but it can also be mitigated to some extent by making sure Submariner is deployed on more suitable hardware with higher networking bandwidth and/or stronger processors.

FYI, we'll be pushing an update to the proposal in the next day or two which hopefully will address many of the comments/questions.  Thanks, Andre

Thanks for the edits @Billy99!

Thanks everyone for the review and comments/suggestions.  We've updated the proposal to reflect our current thoughts on the design, and the POC that has been implemented.  We're currently doing some performance testing and will update the pr when we get some results.

@sridhargaddam, I think this is good to merge now, isn't it?  Thanks, Andre

@sridhargaddam, I think this is good to merge now, isn't it? Thanks, Andre

Indeed, thank you @anfredette

Thanks, @sridhargaddam!


add support for comma as field separator

Following this tutorial from the official arduino.cc docs I wrote a sketch that sends a comma in between variables. Indeed, it works fine with the plotter built into the IDE. Furthermore, it conforms to the somewhat standard CSV format. (e.g. the same output can be sent to the plotter and saved to SD resulting in a file readable by spreadsheet programs)
However with commas on BSP I only get the flashing com port field indicating data received, no plots or anything else. However, upon replacing the commas for spaces, it works as expected.
Upon digging I found the official specification for the protocol inside the IDE source. I believe commas should be added to fully conform as a drop-in replacement.

+1 for this, easy to add a 'separator' setting and let the user choose whatever they want to separate on.


Support plot objects in lang & playground

Proposal by Ozzie: https://docs.google.com/document/d/1Lk9X5NY68PI1VXlAEpG2Qtxs0niFdtBPnosl_4JYTLM/edit#heading=h.d5xhns252tr5

We have multiple plots now (#824), but we still want opaque plot objects.

Might make sense to think about opaque object types in general (compare: Function.declare and custom argument boundaries in functions, #1135).

We have several objects now (Plot.dists, Plot.fn, Plot.joint).
They don't support all possible charting settings, but that can be done in the follow-up task, #1704.


Make watcher symlink-aware (currently follows symlinks)

TypeScript Version:  2.8.1

Search Terms:

watch
symlink

AFAICS there is actually a lot of issues related to this.
Code
There is not really any code to show.
We do have a mono-repo, that for some issues with one of our dependencies creates manual symlinks between out packages.
Expected behavior:
Things should work
Actual behavior:
When I do a tsc --watch, it takes roughly ~30s to watch all the files, because it actually follows the symlinks.
When running tsserver, either via code or typescript-language-server, the process hangs for >60s with 100% cpu usage. I have attached a debugger and found out that all the time is spent following symlinks and watching those files.
Here is a screenshot of a short profile I have done:

(The profile only shows ~18s worth of directory walking, but in reality its way more.
Also, the tsserver process uses in excess of ~1400M of RAM, so it may also explain some of the OOM bugs that I have found with the search.
Playground Link:
Related Issues:
I think https://github.com/Microsoft/TypeScript/issues/10873 would be an extreme example of this
Otherwise there is a lot of issues mentioning watch mode and extremely slow performance, some of those mention mono-repos, so I guess a lot of this is related.

So just as an experiment, I changed this statSync here:
https://github.com/Microsoft/TypeScript/blob/23ed9f842301ab8c7894823afc7a356da960adcf/src/compiler/sys.ts#L995
to lstatSync (which according to https://nodejs.org/api/fs.html#fs_fs_lstat_path_callback returns info on the link itself, and therefore returns false for isDirectory())
That single line change basically fixed the hangs for me.
Of course if you want to properly fix this, you would have to maintain a Map of already walked directories and perform a lookup there if you encounter a symlink.
Maybe I will work on a patch tomorrow. Is there anything specific I need to keep in mind when doing that?

Hm, so apparently this was already fixed in https://github.com/Microsoft/TypeScript/pull/22976 / https://github.com/Microsoft/TypeScript/pull/22986, but it is not yet included in a stable release, although 2.8.2 was tagged, it is not yet on npm -_-
So sorry for the inconvenience :-(

Info about next release on npm: #23282.


Update channels_first parameter and docstring for PyTorch Object Detectors

Description
Set the channels_first parameter in PyTorchObjectDetector and PyTorchFasterRCNN to default to true instead of false and update the input_shape default parameter accordingly.
Additionally, update docstrings and the type hinting for PyTorchFasterRCNN.
Fixes #2264
Type of change
Please check all relevant options.

[x] Improvement (non-breaking)
[ ] Bug fix (non-breaking)
[ ] New feature (non-breaking)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Testing
Please describe the tests that you ran to verify your changes. Consider listing any relevant details of your test configuration.

[x] Test cases for PyTorchObjectDetector are unchanged
[x] Test cases for PyTorchFasterRCNN are unchanged
[x] Test cases for PyTorchYolo are unchanged

Test Configuration:

OS
Python version
ART version or commit number
TensorFlow / Keras / PyTorch / MXNet version

Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes

Codecov Report

Merging #2265 (0b2ee2a) into dev_1.15.2 (8d9de16) will decrease coverage by 62.86%.
The diff coverage is n/a.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the GitHub App Integration for your organization. Read more.

@@               Coverage Diff               @@
##           dev_1.15.2    #2265       +/-   ##
===============================================
- Coverage       85.62%   22.76%   -62.86%
===============================================
  Files             308      308
  Lines           27476    27475        -1
  Branches         5048     4988       -60
===============================================
- Hits            23526     6256    -17270
- Misses           2669    21094    +18425
+ Partials         1281      125     -1156

Files Changed
Coverage Δ

...estimators/object_detection/pytorch_faster_rcnn.py
77.77% <ø> (-22.23%)
:arrow_down:

...mators/object_detection/pytorch_object_detector.py
17.61% <ø> (-67.05%)
:arrow_down:

art/estimators/object_detection/pytorch_yolo.py
15.20% <ø> (-67.29%)
:arrow_down:

... and 245 files with indirect coverage changes

Hi @beat-buesser thank you for the review. As per our discussion, it does make sense to leave the input_shape parameter for the PyTorchObjectDetector and PyTorchFasterRCNN as (-1, -1, -1) since they accept any input arbitrarily sized image. I've made the corresponding change.


deepin(application part2): init at 20.8

Description of changes
Add more deepin packages
https://github.com/linuxdeepin/dde-nixos/issues/9

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.05 Release Notes (or backporting 22.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

@ofborg build deepin.deepin-draw  deepin.deepin-image-viewer deepin.deepin-album deepin.deepin-picker

@ofborg build deepin.deepin-draw deepin.deepin-image-viewer deepin.deepin-album deepin.deepin-picker


Tile titles on Visual Studio documentation landing page are not translated

Describe the bug
Hello,
When on the Visual Studio 2019 documentation landing page, the titles for the tiles underneath the Visual Studio documentation banner (download, overview, get started and learn) are not translated.
To Reproduce
Steps to reproduce the behavior:

Go to https://docs.microsoft.com/zh-tw/visualstudio/windows/?view=vs-2019
Observe that the tile titles below the purple banner are not translated

Expected behavior
download, overview, get started and learn to be translated.
Screenshots

Desktop (please complete the following information):

OS: macOS 10.14 (Mojave)
Browsers + versions:

Firefox 72.0.2
Edge 79.0.309.71

Fixed.
#please-close


Using multiple modals

I might be doing something completely wrong, but I'm having issues with using aurelia-dialog multiple times throughout my application.
Behavior
What's happening is:

I go to page foo, trigger opening a modal: works fine
I go to page bar, trigger opening a different modal: It fails with an error (described below)
I go back to page foo, trigger opening the modal again, and I get the content of page bar in stead.
This behavior now stays the same. The wrong content on page foo, and an error on page bar.

Technically
I get the following error in the console:

Unhandled promise rejection Error: No Aurelia APIs are defined for the referenced element.

The code I'm using is simply:
overview.js:
this.dialogService.open({viewModel: Create}).then(response => {
  if (!response.wasCancelled) {
    this.companies.push(response.output);
  }
});

create-modal.js:
import CompanyEntity from 'entity/company';
import {inject} from 'aurelia-framework';
import {Notification}  from 'service/notification';
import {Router} from 'aurelia-router';
import {DialogController} from 'aurelia-dialog';

@inject(CompanyEntity, Notification, Router, DialogController)
export class Create {

  requestInFlight = false;

  constructor (CompanyEntity, Notification, Router, DialogController) {
    this.notification                             = Notification;
    this.entity                                   = CompanyEntity;
    this.router                                   = Router;
    this.controller                               = DialogController;
    this.controller.settings.lock                 = false;
    this.controller.settings.centerHorizontalOnly = true;
  }

  create () {
    this.requestInFlight = true;

    this.entity.save()
      .then(result => {
        this.requestInFlight = false;
        this.notification.success('Location created successfully');
        this.controller.ok(result);
      })
      .catch(error => {
        console.error(error);
      });
  }
}

I'm using the default controller, and as far as I can tell I'm not doing anything weird.

After debugging a little bit, the element the error is about is one that I define in the template of the modal. This is the create-modal.html:
<template>
  <require from="component/form/company-form"></require>

          <company-form view-model.ref="form" data.bind="entity" complete.trigger="create()"></company-form>

          <button class="btn btn-sm btn-default" click.trigger="controller.cancel()">

          </button>
          <button type="submit" disabled.bind="requestInFlight" click.trigger="form.submit()" class="btn btn-success btn-sm">

          </button>

</template>

It's complaining about the company-form. I don't know what this means or how it causes this issue.

Another update. It looks like the way these elements are being removed is too aggressive. I still can't figure out where this happens though. I expected it to be on destroy, which probably holds true, but I haven't been able to trace it down to the cause yet.

If you could point me in the right direction that'd be great, too. Then I can debug myself.

@RWOverdijk Can you create a repro somewhere?  You can clone the dialog repo and repro in the sample app if you want.

@PWKad I'll try to do that tomorrow.

@PWKad I tried, and found that the error lies in my own code. Could you perhaps help me figure out what it is?
I have the following structure:
page > Modal > Form
The Form ViewModel extends Form (https://github.com/SpoonX/aurelia-form/blob/master/src/form.js). As soon as I remove that (extends Form) it works. But I can't see anything wrong in that file.

@PWKad Here's the example project, with the broken state: https://github.com/RWOverdijk/dialog-sample

Open modal in one
Navigate to two
Open modal in two > Missing content
Navigate back to one
Open modal in one > Has the content from modal two

I found the source of the problem, which is code I wrote, but I don't know what the problem is. It can be fixed by removing extends Form from the *-content.js files. So something in extends Form, which is this file: https://github.com/SpoonX/aurelia-form/blob/master/src/form.js is breaking it (and causing very weird behavior).

I have worked around this (for now) by not setting the bindables in the parent because I'd otherwise not have made my deadline.. But I'm not happy with it.
Consider this my lengthy bump :)

@RWOverdijk Is this still an issue with the latest?

@EisenbergEffect I'll update asap (tomorrow I think) and test.

@EisenbergEffect I believe I spoke with @RWOverdijk  spoke of this and the issue is with extending a class with a class that has bindables.  Templating should already be tracking this and I thought it was a do not fix can you confirm this is the case @RWOverdijk

Inheritance is a separate issue we are tracking.

@EisenbergEffect I checked, and I'm still getting the same:

Unhandled promise rejection Error: No Aurelia APIs are defined for the referenced element.(…)

Here's the map for my config related to aurelia:
{
    "aurelia-animator-css"<EMAIL_ADDRESS>    "aurelia-binding"<EMAIL_ADDRESS>    "aurelia-bootstrapper"<EMAIL_ADDRESS>    "aurelia-dependency-injection"<EMAIL_ADDRESS>    "aurelia-dialog"<EMAIL_ADDRESS>    "aurelia-fetch-client"<EMAIL_ADDRESS>    "aurelia-framework"<EMAIL_ADDRESS>    "aurelia-i18n"<EMAIL_ADDRESS>    "aurelia-metadata"<EMAIL_ADDRESS>    "aurelia-router"<EMAIL_ADDRESS>    "aurelia-templating"<EMAIL_ADDRESS>    "aurelia-templating-binding"<EMAIL_ADDRESS>    "aurelia-validation"<EMAIL_ADDRESS>}

@jedd-ahyoung Fixed by your last feature correct?

@PWKad This looks like a separate issue entirely. I don't think this has been directly fixed. We can check  latest distribution with the sample that @RWOverdijk has provided and see if the problem still exists, though.

@jedd-ahyoung I might be able to test that later today if you want?

@RWOverdijk If you wouldn't mind. I wanted to take a look at this this week, but I'm preparing for a trip and thus haven't had much time. I'd like to verify that your problem is related to templating and not the dialog itself. The dialog should be able to handle multiple windows and controllers without any issues.

@jedd-ahyoung I'll see if I can make some time later :)
You're right, I can make multiple windows, just not if they extend from a model that does binding.


Make sure search or long scroll is enabled for facility search on manage users page

Description
Some organizations have dozens or hundreds of facilities. We want to make sure that these organizations can still use the checkbox flow on the new manage users page successfully.
Proposed solution
If possible, it would be nice to include a small search box for facility name on the facility access portion of the manage users page. If not, we want to at least make sure that the page styling is correct for orgs with many facilities.

This was addressed in the manage users update.


Make API key include secret and service ID

In research we’ve seen people mix up the service ID and API key because they’re both 36 character UUIDs. We can’t get rid of the service ID because it’s used to look up the API key.
Instead, we should change API key to be one long string, which contains both the service ID, API key and (optionally) the name of the key. For example:
API key
casework_production-8b3aa916-ec82-434e-b0c5-d5d9b371d6a3-dcdc5083-2fee-4fba-8afd-51f3f4bcb7b0

This commit changes the client to make the service ID optional. If it’s not passed, they we attempt to extract it from the secret instead.

We also need to make sure that someone can use a service ID and the new format of API key (see next commit). If someone makes a new API key they’ll get it in the new format, but might not want to update their client.
The API key is always the last part of the string, so let’s ignore anything before the last 36 characters.

@servingUpAces I’m happy with this now, are you happy? Does anyone else need to look at it?

@quis @servingUpAces i've still got one outstanding comment - it looks like one of the new constructor needs setDefaultSSLContext

All constructors call into the constructor starting on line 56, meaning the default SSL context is always being set.


App not supported on Android auto for Phone screens

https://play.google.com/store/apps/details?id=com.google.android.projection.gearhead.phonescreen
I was testing the app flow when connected to a head unit with the above app unfortunately, it's not  supported on the above app. I think we need to add some meta-data in android manifest file regarding the navigation and charging.

Third-party Android Auto navigation and charging apps are not supported on phone screens at all, as far as I know - only on car head units.

See also https://issuetracker.google.com/issues/179172845


Change naming convention for Matrix markdown files

Description
This PR fixes #4819
Notes for Reviewers
Don't merge PR ASAP. WIP!!
Signed commits

[x] Yes, I signed my commits.

🚀 Preview for commit cfc23c51b69d400cc8f1756aa6a1ba8baa34d2dd at: https://61c47cb2fa1ce4d57d596a2d--meshery-docs-preview.netlify.app

Codecov Report

Merging #4820 (cfc23c5) into master (f7a55a0) will decrease coverage by 6.79%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #4820      +/-   ##
==========================================
- Coverage   32.01%   25.21%   -6.80%
==========================================
  Files          61       61
  Lines        5148     5148
==========================================
- Hits         1648     1298     -350
- Misses       3074     3532     +458
+ Partials      426      318     -108

Flag
Coverage Δ

gointegrationtests
?

unittests
25.21% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

mesheryctl/internal/cli/root/system/start.go
1.15% <0.00%> (-58.47%)
:arrow_down:

mesheryctl/internal/cli/root/system/restart.go
2.50% <0.00%> (-47.50%)
:arrow_down:

mesheryctl/internal/cli/root/system/status.go
0.00% <0.00%> (-47.44%)
:arrow_down:

mesheryctl/internal/cli/root/system/update.go
1.05% <0.00%> (-34.74%)
:arrow_down:

mesheryctl/internal/cli/root/system/stop.go
1.78% <0.00%> (-23.22%)
:arrow_down:

mesheryctl/internal/cli/root/system/check.go
1.38% <0.00%> (-22.23%)
:arrow_down:

mesheryctl/internal/cli/root/system/logs.go
3.29% <0.00%> (-20.88%)
:arrow_down:

Continue to review full report at Codecov.

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

It's actually line 96 here https://github.com/meshery/meshery-istio/blob/master/.github/workflows/e2etest-servicemeshandaddon.yaml that's causing the issue.

Not only here but that line in all the adapters is causing the issu

🚀 Preview for commit e2f2f53ac69364f57f5a605591372c8243bfb81c at: https://61c47dc0f3060da87628c5c2--meshery-docs-preview.netlify.app

I noticed it... I'm doing these for some adapters now

@warunicorn19 I suppose guess it's done for 3 adapters so far by the looks of the files in the main repo... right?

Yes, linkerd osm and istio

Yes, linkerd osm and istio

Got it!!!

🚀 Preview for commit 04a3a60d6305276f45725ceeebcf27bb994d0160 at: https://61c4837b5b5083d71583f6e6--meshery-docs-preview.netlify.app

@leecalcote I need review and merge of above 3 PRs done in adapter repo

Let's see if we can:

use <date_commitsha>.md as the filename.
have a timestamp entry in the front matter of each .md file.

Let's see if we can:

use <date_commitsha>.md as the filename.
have a timestamp entry in the front matter of each .md file.

Commit SHA as filename?? Need to think a way to implement it...

Let's see if we can:

use <date_commitsha>.md as the filename.
have a timestamp entry in the front matter of each .md file.

Commit SHA as filename?? Need to think a way to implement it...

Long form: GITHUB_SHA (see https://docs.github.com/en/actions/learn-github-actions/environment-variables)
or short form:
      - name: Set outputs
        id: vars
        run: echo "::set-output name=sha_short::$(git rev-parse --short HEAD)"
      - name: Check outputs
        run: echo ${{ steps.vars.outputs.sha_short }}


Using import with the 1.2.0 library causes a build error

Describe the bug
If the library is imported with import, upgrading from 1.1.7 to 1.2.0 causes an error at build time, about not being able to find mapboxgl.
To Reproduce
Steps to reproduce the behavior:

Go to the demo sandbox
Change the mapbox-gl-legend version in package.json to 1.2.0

As soon as it starts to rebuild, there's an error, shown below.
Expected behavior
No error!
Screenshots

Desktop (please complete the following information):

OS: Windows 10
Browser Chrome
Version 95

Additional context
Caused by changes for CDN support?

@fwextensions Thank you for raising the issue! I have fixed it now. Please use v1.2.1.

Thanks for the quick fix!  v1.2.1 doesn't show that error now.


how change styles to component?

I need a guide on how I can modify the colors of the components

@sebastam97 There is no full tutorial available yet, but please check this issue for the basic information about styling: https://github.com/chatscope/chat-ui-kit-styles/issues/5


Add workflow for automated NooBaa releases

Signed-off-by: Utkarsh Srivastava<EMAIL_ADDRESS>Explain the changes
This PR attempts to add a Github workflow to automate releases of both NooBaa core and NooBaa operator. The PR changes does the following:

Release NooBaa core OCI images to dockerhub and quay registries.
Dispatch a release in the NooBaa operator repository by triggering workflow in PR: https://github.com/noobaa/noobaa-operator/pull/998.
Update the version in the package.json and package-lock.json.

Flow:

Read the version to be released from package.json.
Build OCI images for the version read.
Push the OCI images to Quay and Dockerhub.
Dispatch workflow in the sync_operator_repository (format: repo).
Increment version in package.json and package-lock.json.
Commit the changes in the tree to the base branch.

Caveats:

The entire workflow assumes that the version in the package.json is correct. It does not have additional logic to ensure that. Whatever the version would be in that file, it will be released.
Rollbacks are manual for now. That is,  rollback sync operator changes, delete OCI images and revert the commits. Can be automated in the future though.
Whenever a new version branch is created, we need to ensure that package.json reflects that. So when we move to 5.14 branch, package.json needs to be set to "5.14.0". This can be automated as well but not sure if its worth doing so.

The scripts/workflow will require a few secrets in place like:

GHACTION_GH_PAT - A github token which has write access to the repositories. This is needed because the workflow attempts to synchronize a release in the operator repository as well by dispatching the release workflow there.
DOCKERHUB_USERNAME - Username in dockerhub where the OCI image is supposed to be pushed.
DOCKERHUB_TOKEN - Dockerhub token is used to login to the registry and push the image.
QUAY_USERNAME - Username in quay where the OCI image is supposed to be pushed.
QUAY_TOKEN - Quay token is used to login to the registry and push the image.
OCI_ORG - This is used internally hence this can be anything. It can be same as DOCKERHUB_USERNAME or QUAY_USERNAME or a random string.

This PR assumes that the version is package.json is the version that is supposed to be released. This assumption does not hold true for our 5.12 branch where the version is set to 5.13.0. Before we start using this workflow, we will need to ensure that the version is corrected there.

Versions of the branches:
5.8.18, 5.9.14, 5.10.10, 5.11.5


Issue with running the Example

First of all, thanks so much for building an awesome bluetooth library, at least for a newbie like me. I was trying to run the Example project and ran into some errors. Could you please point me to the right direction?
Thank you very much.
(screenshot attached)

Hi,
Which version of a lib your're using?

Thanks for your quick response. It's RxBluetoothKit (0.3.2)

Hi,
Please update to the newest 1.1.1 version and let me know if everything works fine.

version 1.1.1 did the trick. In the podfile, if I used just
pod 'RxBluetoothKit'
it would keep downloading the 0.3.2 version. I had to use
pod 'RxBluetoothKit', :git => 'https://github.com/Polidea/
in order to get the 1.1.1
Thank you for you help

Thats weird. It should download it automatically. But I'm glad that it works now. If you have any questions feel free to ask - we're happy to help.
Regards


Spinner on JSMPEG not vertically centralized

Checklist:

[x] I updated to the latest version available
[x] I cleared the cache of my browser

Release with the issue:
v4.0.0-rc.2
Last working release (if known):
I'm sure this didn't use to happen in the past. If you need, I can try to find the latest version which it worked.
Browser and Operating System:
N/A

Description of problem:

The JSMPEG spinner/loading icon is not vertically centralized.
Additional information:

https://user-images.githubusercontent.com/29582865/177047975-47460566-8685-461e-9a83-35f1a96d559a.mp4

Think that should do the trick, let me know if you spot a case it's not right!


Approximate fix for static field autocorrect suggestions

Motivation

Fixes #5819
Test plan

See included automated tests.

It's kind of unfortunate that we lost the location information indicating the textual StaticField in the assignment and instead redirect to the location information for the definition of the static field

When you say "lost," you don't mean that this PR lost it, do you?
If you mean it in the sense that our CFG isn't good enough to keep track of it, I'm not sure that's true, in fact I think it's likely that we could improve this in the future but I just have opted not to spend a lot of time getting something working.

It's kind of unfortunate that we lost the location information indicating the textual StaticField in the assignment and instead redirect to the location information for the definition of the static field

When you say "lost," you don't mean that this PR lost it, do you?
If you mean it in the sense that our CFG isn't good enough to keep track of it, I'm not sure that's true, in fact I think it's likely that we could improve this in the future but I just have opted not to spend a lot of time getting something working.

Oh, no, this PR didn't lose anything.  I'm 95% certain the necessary location information is in the CFG already, it's just a matter of properly extracting it.  (Or e.g. updating TypeAndOrigins to track more information in cases like these, updating callsites, etc.)


Example added

Added example how to use $gapi in router's navigation guards.

Dear Nick,
I am just fine with all proposed changes. Is there a formal Git process I
need to follow to approve yours proposals?
I can create a new pull request with that Plugin style configuration of
vue-gapi, if you are interested?
Best regards
Pavel K.
On Sun, May 2, 2021 at 1:30 AM Nick Amoscato @.***>
wrote:

@.**** approved this pull request.
@pavelkrejsa https://github.com/pavelkrejsa, this is great – thank you!
28916db
https://github.com/vue-gapi/vue-gapi/commit/28916db28b737572a86fc35de4a6254d8ebff812
makes a few minor edits:

Update VuePress configuration so this new example shows up in the
sidebar.
Rename the example from "Navigation Guard" to "Vue Router". I'm
open to feedback on this, but my guess is people might not know what
"Navigation Guard" means, given it's a Vue Router-specific topic.
Minor wording and formatting edits.

Let me know if you're cool with these changes, and we can get this merged!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/vue-gapi/vue-gapi/pull/165#pullrequestreview-649826067,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAPGB5QLME3TWQT7SFAGPCLTLSFIJANCNFSM43VP743A
.

Is there a formal Git process I need to follow to approve yours proposals? I can create a new pull request with that Plugin style configuration of vue-gapi, if you are interested?

Nope, this pull request is fine! I'll merge it now.

It's live over here.
Thanks again for the contribution!

Great,
thank you and all others for this plugin, it helped me a lot with my
project. I will try to contribute more in the future.
Pavel K.
On Sun, May 2, 2021 at 2:06 PM Nick Amoscato @.***>
wrote:

It's live over here
https://vue-gapi.github.io/vue-gapi/examples/vue-router.html.
Thanks again for the contribution!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/vue-gapi/vue-gapi/pull/165#issuecomment-830799182,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAPGB5TZWSTH72IS6SK45ATTLU527ANCNFSM43VP743A
.


APT whitelist request for libgss-dev in trusty

libgss-dev is used as a cache for neomutt and mutt (email clients)
This package used to be approved (my builds succeeded yesterday).

My build works again today.  Sorry for the noise.