Show consistent repr output for index, series and frame

Currently, Koalas display.max_rows has a weird relationship with pandas' display.max_rows because Koalas directly uses pandas' repr.
import pandas as pd
import databricks.koalas as ks

ks.set_option("display.max_rows", 5)
pd.set_option("display.max_rows", 5)

ks.range(6)

   id
0   0
1   1
2   2
3   3
4   4

ks.set_option("display.max_rows", 5)
pd.set_option("display.max_rows", 4)

ks.range(6)

    id
0    0
1    1
..  ..
3    3
4    4

[Showing only the first 5 rows x 1 columns]

The reason is because pandas appends footer like:
>>> ks.range(6).to_pandas()
    id
0    0
1    1
..  ..
4    4
5    5

[6 rows x 1 columns]

only when the value exceeds display.max_rows.
Koalas replaces this footer [6 rows x 1 columns] to [Showing only the first 6 rows x 1 columns].
If pandas does now show the footer:
>>> ks.range(3).to_pandas()
   id
0   0
1   1
2   2

Koalas cannot replace it.
The solution is that to avoid use repr but use to_string and ignore pandas' display.max_rows but always print out fully. Koalas will control it.

Codecov Report

Merging #786 into master will decrease coverage by 2.29%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master     #786     +/-   ##
=========================================
- Coverage   94.28%   91.98%   -2.3%
=========================================
  Files          32       32
  Lines        5770     5775      +5
=========================================
- Hits         5440     5312    -128
- Misses        330      463    +133

Impacted Files
Coverage Δ

databricks/koalas/series.py
94.99% <100%> (-0.15%)
:arrow_down:

databricks/koalas/frame.py
95.19% <100%> (-1.7%)
:arrow_down:

databricks/koalas/usage_logging/__init__.py
23.14% <0%> (-74.08%)
:arrow_down:

databricks/koalas/usage_logging/usage_logger.py
50% <0%> (-50%)
:arrow_down:

databricks/koalas/__init__.py
77.5% <0%> (-7.5%)
:arrow_down:

databricks/conftest.py
90.69% <0%> (-6.98%)
:arrow_down:

databricks/koalas/namespace.py
84.81% <0%> (-1.33%)
:arrow_down:

databricks/koalas/plot.py
93.34% <0%> (-0.96%)
:arrow_down:

databricks/koalas/utils.py
97.24% <0%> (-0.69%)
:arrow_down:

... and 2 more

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 e992200...6cc0532. Read the comment docs.

hm, NVM. let me just implement to match pandas' to make API management less complicated in Koalas for now.

Let me merge this one - I am pretty sure on this.


FAILURE: Build failed with an exception.  * What went wrong: Execution failed for task ':app:checkDebugAarMetadata'. > Could not resolve all files for configuration ':app:debugRuntimeClasspath'.    > Could not find com.google.firebase:firebase-bom:null.      Searched in the following locations:        - https://dl.google.com/dl/android/maven2/com/google/firebase/firebase-bom/null/firebase-bom-null.pom        - https://repo.maven.apache.org/maven2/com/google/firebase/firebase-bom/null/firebase-bom-null.pom        - https://storage.googleapis.com/download.flutter.io/com/google/firebase/firebase-bom/null/firebase-bom-null.pom

You have most likely set the wrong version of the firebase bom in your build.gradle.
This is not a flutter issue. You should check your configuration to see if you have the right version set. If you did not manually add the firebase bom to your project but this was injected by the flutterfire_cli tool, you'll need to report this on their repo.
Closing from here.
Thank you


Multi-worker race condiction has been fixed in HanLP

Hi @QubitPi, thanks for using HanLP. With the latest patch https://github.com/hankcs/HanLP/commit/32428a2510a5fb747fee07ad5aa81ccd43a06e00, you can now safely enable multi-worker without problems.
Cheers!

Hi @QubitPi, thanks for using HanLP. With the latest patch hankcs/HanLP@32428a2, you can now safely enable multi-worker without problems.
Cheers!

Oh I just saw it. Sorry for the delay.
Thank you very much, @hankcs, for spending time on my issue! This is very helpful! I have enabled multi-worker. Thanks again and great work!


Long integer content-parameters issue

Hi,
I'm using the content-parameters on my API page but I'm having a problem with 18 digit numbers as after the 15th it gets rounded up.  Is there any other data type I could use to support longer numbers?
Thanks,

Even when using the regular "string" type entering a number like<PHONE_NUMBER>02361856 it gets rounded to<PHONE_NUMBER>02361900 in the application/json
{
"change_requests": [
{
"change_request_id":<PHONE_NUMBER>02361900
}
]
}


[Feature Request] : Authentication checks for AGRO-rent services

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
Authentication checks and middlewares for agro-rent services like adding to cart, checkout etc so that only authenticated users are provided with the services.
Will add authentication middlewares to the backend routes.
Use Case
Preventing the application from spammers and personalized user experience.
Benefits
No response
Add ScreenShots
No response
Priority
High
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[X] I have starred the repository

Wait a while ...we will implement it later..... @haseebzaki-07

@manikumarreddyu okay


Update messaging in readme

Description

General Checklist

[ ] Tests added for this feature/bug
if it was a bug, test must cover it.
[ ] Conform by the style guides, by using formatter
[ ] Documentation updated
[ ] (optional) Please add a label to your PR

We can close this; I'll just do a big update with v1


Large monitor experience

Absolutely LOVE the new page!  The design is gorgeous and it's very well architected and laid out.
On a larger monitor, there's a lot of empty space and I wanted to raise the idea that we could use more of the space or align the content such that it doesn't leave such a large white space on the right:

Happy to brainstorm if you like!

This looks like a duplicate to #67 so closing!


openssl 1.1.1d install_sw make target broken with no-shared option linux-x86_64

Building 1.1.1d from clone:
$ git describe HEAD
OpenSSL_1_1_1d
$ ./Configure linux-x86_64  no-shared --prefix=/tmp/openssl1.1.1 --openssldir=/tmp/openssl1.1.1/
Configuring OpenSSL version 1.1.1d (0x1010104fL) for linux-x86_64
Using os-specific seed configuration
Creating configdata.pm
Creating Makefile

**********************************************************************
***                                                                ***
***   OpenSSL has been successfully configured                     ***
***                                                                ***
***   If you encounter a problem while building, please open an    ***
***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
***   and include the output from the following command:           ***
***                                                                ***
***       perl configdata.pm --dump                                ***
***                                                                ***
***   (If you are new to OpenSSL, you might want to consult the    ***
***   'Troubleshooting' section in the INSTALL file first)         ***
***                                                                ***
**********************************************************************
$ make install_sw
...
install ./include/openssl/x509_vfy.h -> /tmp/openssl1.1.1/include/openssl/x509_vfy.h
install ./include/openssl/x509err.h -> /tmp/openssl1.1.1/include/openssl/x509err.h
install ./include/openssl/x509v3.h -> /tmp/openssl1.1.1/include/openssl/x509v3.h
install ./include/openssl/x509v3err.h -> /tmp/openssl1.1.1/include/openssl/x509v3err.h
install libcrypto.a -> /tmp/openssl1.1.1/lib/libcrypto.a
install libssl.a -> /tmp/openssl1.1.1/lib/libssl.a
basename: missing operand
Try 'basename --help' for more information.
make: *** [Makefile:370: install_dev] Error 1

This appears to be due to the make variable INSTALL_SHLIB_INFO having a value of ";" ";":
$ grep INSTALL_SHLIB_INFO Makefile
INSTALL_SHLIB_INFO=";" ";"
        @set -e; for s in $(INSTALL_SHLIB_INFO); do \
        @set -e; for s in $(INSTALL_SHLIB_INFO); do \

Additionally, from looking at the makefile template (Configurations/unix-Makefile.tmpl), it appears that lines 623-657 are not intended to go into the generated Makefile when the shared option is disabled, but, in fact, they are in the Makefile:
        @set -e; for s in $(INSTALL_SHLIB_INFO); do \
                s1=`echo "$$s" | cut -f1 -d";"`; \
                s2=`echo "$$s" | cut -f2 -d";"`; \
                fn1=`basename $$s1`; \
                fn2=`basename $$s2`; \
                : ; \
                if [ "$$fn1" != "$$fn2" ]; then \
                        $(ECHO) "link $(DESTDIR)$(libdir)/$$fn2 -> $(DESTDIR)$(libdir)/$$fn1"; \
                        ln -sf $$fn1 $(DESTDIR)$(libdir)/$$fn2; \
                fi; \
                : ; \
                $(ECHO) "install $$s2 -> $(DESTDIR)$(libdir)/$$fn2"; \
                cp $$s2 $(DESTDIR)$(libdir)/$$fn2.new; \
                chmod 755 $(DESTDIR)$(libdir)/$$fn2.new; \
                mv -f $(DESTDIR)$(libdir)/$$fn2.new \
                      $(DESTDIR)$(libdir)/$$fn2; \
                : ; \
                a=$(DESTDIR)$(libdir)/$$fn2; \
                $(ECHO) "install $$s1 -> $$a"; \
                if [ -f $$a ]; then ( trap "rm -rf /tmp/ar.$$$$" INT 0; \
                        mkdir /tmp/ar.$$$$; ( cd /tmp/ar.$$$$; \
                        cp -f $$a $$a.new; \
                        for so in `$(AR) t $$a`; do \
                                $(AR) x $$a $$so; \
                                chmod u+w $$so; \
                                strip -X32_64 -e $$so; \
                                $(AR) r $$a.new $$so; \
                        done; \
                )); fi; \
                $(AR) r $$a.new $$s1; \
                mv -f $$a.new $$a; \
                : ; \
        done

I will attach the output of perl configdump.pm --dump

configdatadump.txt

This was originally noticed while trying to build a conan-packaged version of this from source, where it failed.  Bug filed against the conan packaging recipe as well: https://github.com/conan-io/conan-center-index/issues/1147

Also just fetched 1.1.1e from this repo and replicated using the same steps against that version as well.  Not surprising because nothing related to this appears to have been changed between "d" and "e".

Just to check: you've read the 1.1.1 INSTALL file, understand the current semantics of openssldir and prefix, and really do want to set them to the same path?  That is a quite uncommon configuration.

Also, you need to run make between Configure and make install_sw.

Issuing the make between Configure and make install_sw does not change the reported behavior.

I changed prefix and openssldir values to be more in line with the example in INSTALL as well as running make prior to running make install_sw.  The end result is the same as what I initially reported.
Configure
[ccleeland@build04 openssl-upstream-fork ((OpenSSL_1_1_1d))]$ mkdir /tmp/fakeinstall
(reverse-i-search)`C': vi profiles/^CntOS.cmake
[ccleeland@build04 openssl-upstream-fork ((OpenSSL_1_1_1d))]$ ./Configure linux-x86_64  no-shared --prefix=/tmp/fakeinstall/ --openssldir=/tmp/fakeinstall/ssl
Configuring OpenSSL version 1.1.1d (0x1010104fL) for linux-x86_64
Using os-specific seed configuration
Creating configdata.pm
Creating Makefile

**********************************************************************
***                                                                ***
***   OpenSSL has been successfully configured                     ***
***                                                                ***
***   If you encounter a problem while building, please open an    ***
***   issue on GitHub <https://github.com/openssl/openssl/issues>  ***
***   and include the output from the following command:           ***
***                                                                ***
***       perl configdata.pm --dump                                ***
***                                                                ***
***   (If you are new to OpenSSL, you might want to consult the    ***
***   'Troubleshooting' section in the INSTALL file first)         ***
***                                                                ***
**********************************************************************

make
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
    "-oMakefile" crypto/include/internal/bn_conf.h.in > crypto/include/internal/bn_conf.h
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
    "-oMakefile" crypto/include/internal/dso_conf.h.in > crypto/include/internal/dso_conf.h
/usr/bin/perl "-I." -Mconfigdata "util/dofile.pl" \
    "-oMakefile" include/openssl/opensslconf.h.in > include/openssl/opensslconf.h
make depend && make _all
make[1]: Entering directory '/code/ccleeland/openssl-upstream-fork'
make[1]: Leaving directory '/code/ccleeland/openssl-upstream-fork'
make[1]: Entering directory '/code/ccleeland/openssl-upstream-fork'
gcc  -I. -Iinclude -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA
256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DOPENSSLDIR="\"/tmp/fakeinstall/ssl\"" -DENGINESDIR="\"/tmp/fakeinstall/lib/engines-1.1\"" -DNDEBUG  -MMD -M
F apps/app_rand.d.tmp -MT apps/app_rand.o -c -o apps/app_rand.o apps/app_rand.c
...
${LDCMD:-gcc} -pthread -m64 -Wa,--noexecstack -Wall -O3 -L.   \
        -o test/x509aux test/x509aux.o \
         test/libtestutil.a -lcrypto -ldl -pthread
rm -f test/drbg_cavs_test
${LDCMD:-gcc} -pthread -m64 -Wa,--noexecstack -Wall -O3 -L.   \
        -o test/drbg_cavs_test test/drbg_cavs_data.o test/drbg_cavs_test.o \
         test/libtestutil.a -lcrypto -ldl -pthread
rm -f apps/openssl
${LDCMD:-gcc} -pthread -m64 -Wa,--noexecstack -Wall -O3 -L.   \
        -o apps/openssl apps/asn1pars.o apps/ca.o apps/ciphers.o apps/cms.o apps/crl.o apps/crl2p7.o apps/dgst.o apps/dhparam.o apps/dsa.o apps/dsaparam.o apps/ec.o apps/ecparam.o apps/enc.o apps/engine.o apps/errstr.o apps/gendsa.o apps/genpkey.o apps/genrsa.o apps/nseq.o apps/ocsp.o apps/openssl.o apps/passwd.o apps/pkcs12.o apps/pkcs7.o apps/pkcs8.o apps/pkey.o apps/pkeyparam.o apps/pkeyutl.o apps/prime.o apps/rand.o apps/rehash.o apps/req.o apps/rsa.o apps/rsautl.o apps/s_client.o apps/s_server.o apps/s_time.o apps/sess_id.o apps/smime.o apps/speed.o apps/spkac.o apps/srp.o apps/storeutl.o apps/ts.o apps/verify.o apps/version.o apps/x509.o \
         apps/libapps.a -lssl -lcrypto -ldl -pthread
make[1]: Leaving directory '/code/ccleeland/openssl-upstream-fork'

make install_sw
[ccleeland@build04 openssl-upstream-fork ((OpenSSL_1_1_1d))]$ make install_sw
make depend && make _build_libs
make[1]: Entering directory '/code/ccleeland/openssl-upstream-fork'
make[1]: Leaving directory '/code/ccleeland/openssl-upstream-fork'
make[1]: Entering directory '/code/ccleeland/openssl-upstream-fork'
make[1]: Nothing to be done for '_build_libs'.
make[1]: Leaving directory '/code/ccleeland/openssl-upstream-fork'
created directory `/tmp/fakeinstall/lib'
created directory `/tmp/fakeinstall/bin'
*** Installing runtime libraries
*** Installing development files
created directory `/tmp/fakeinstall/include'
created directory `/tmp/fakeinstall/include/openssl'
install ./ms/applink.c -> /tmp/fakeinstall/include/openssl/applink.c
install ./include/openssl/aes.h -> /tmp/fakeinstall/include/openssl/aes.h
...
install ./include/openssl/x509err.h -> /tmp/fakeinstall/include/openssl/x509err.h
install ./include/openssl/x509v3.h -> /tmp/fakeinstall/include/openssl/x509v3.h
install ./include/openssl/x509v3err.h -> /tmp/fakeinstall/include/openssl/x509v3err.h
install libcrypto.a -> /tmp/fakeinstall/lib/libcrypto.a
install libssl.a -> /tmp/fakeinstall/lib/libssl.a
basename: missing operand
Try 'basename --help' for more information.
make: *** [Makefile:370: install_dev] Error 1

Well, then I don't think I can reproduce it on my Ubuntu 18.04.4 bionic system.
I will try again from scratch just to be sure, though.

While it doesn't seem like it should matter, this happens on both centos 6 and 7 hosts.  I can try to reproduce in an 18.04 docker container, or I can try to reproduce on 16.04 real installation.
Ultimately, though, I need to build this for centos 6 and 7, so having it work on ubuntu isn't a resolution.

The same steps I used in https://github.com/openssl/openssl/issues/11367#issuecomment-602793401 behaved properly (i.e., install_sw completed without error) when run on Ubuntu 16.04.

I agree that it doesn't seem like it should matter, and yet it does seem to.
Other things to check: what shell are you using, and do you have a (non-builtin) basename(1) on the path?
$:~/git/tmp$ echo $SHELL
/bin/bash
$:~/git/tmp$ type basename
basename is /usr/bin/basename
$:~/git/tmp$ which basename
/usr/bin/basename

[ccleeland@build04 openssl-upstream-fork ((OpenSSL_1_1_1d))]$ type basename
basename is /usr/bin/basename

I compared Makefile generated on centos7 with Makefile generated on 16.04.  They are different in expected ways, but they are also different in the install_dev target.  Specifically, the centos7 generated makefile contains the clause I noted in the original issue description, and which seemed like it was intended to be omitted, whereas the 16.04 does not contain that clause.

Hmm, so the issue is presumably in the perl goo that translates the template into the Makefile.
I guess we have to engage the @levitte signal, then...

my centos7 machine has perl 5.16; ubuntu 16.04 has perl 5.22.
I'm trying to build this in a docker container using centos:7 as the base image to see if I can reproduce it there.  If so, then hopefully you (or @levitte) could reproduce simply from the Dockerfile.

I think I've found the problem.  Our dev systems have perl-Text-Template installed at the system level and this appears to be confusing the openssl Configure script.  I'm trying to hone in on the exact details.

System-installed version of Text::Template:
$ yum info perl-Text-Template
Loaded plugins: fastestmirror
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
Determining fastest mirrors
Installed Packages
Name        : perl-Text-Template
Arch        : noarch
Version     : 1.45
Release     : 12.el7
Size        : 122 k
Repo        : installed
From repo   : epel
Summary     : Expand template text with embedded Perl
URL         : http://search.cpan.org/dist/Text-Template/
License     : GPL+ or Artistic
Description : This is a library for generating form letters, building HTML pages, or
            : filling in templates generally.  A 'template' is a piece of text that
            : has little Perl programs embedded in it here and there.  When you
            : 'fill in' a template, you evaluate the little programs and replace
            : them with their values.

More digging--the util/perl/with_fallback.pm sub import doesn't appear to be getting arguments the way it's expecting.  It's specifying that the version should be 1.46 (use with_fallback "Text::Template 1.46";) but when sub import gets called, it sees those as two distinct args rather than one.
I made a quick hack join the two args together. with_fallback then appeared to try to find the Text::Template packaged with openssl, but the makefile still contained the clause that causes it to misbehave..

Enabling hackery below.
I'm not suggesting this is The Fix; it just illustrates a workaround for The Problem of not properly detecting that a system-installed Text::Template is the wrong version.
diff --git a/util/dofile.pl b/util/dofile.pl
index c3bc9ba..6cecda9 100644
--- a/util/dofile.pl
+++ b/util/dofile.pl
@@ -28,31 +28,31 @@ use Getopt::Std;
 # $config{target} must exist as an absolute minimum.
 die "You must run this script with -Mconfigdata\n" if !exists($config{target});

 # Make a subclass of Text::Template to override append_text_to_result,
 # as recommended here:
 #
 # http://search.cpan.org/~mjd/Text-Template-1.46/lib/Text/Template.pm#Automatic_postprocessing_of_template_hunks

 package OpenSSL::Template;

 # Because we know that Text::Template isn't a core Perl module, we use
 # a fallback in case it's not installed on the system
 use File::Basename;
 use File::Spec::Functions;
 use lib "$FindBin::Bin/perl";
-use with_fallback "Text::Template 1.46";
+use with_fallback "Text::Template";

 #use parent qw/Text::Template/;
 use vars qw/@ISA/;
 push @ISA, qw/Text::Template/;

 # Override constructor
 sub new {
     my ($class) = shift;

     # Call the constructor of the parent class, Person.
     my $self = $class->SUPER::new( @_ );
     # Add few more attributes
     $self->{_output_off}   = 0;        # Default to output hunks
     bless $self, $class;
     return $self;
diff --git a/util/perl/with_fallback.pm b/util/perl/with_fallback.pm
index 2423650..6974952 100644
--- a/util/perl/with_fallback.pm
+++ b/util/perl/with_fallback.pm
@@ -1,27 +1,26 @@
 # Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
 #
 # Licensed under the OpenSSL license (the "License").  You may not use
 # this file except in compliance with the License.  You can obtain a copy
 # in the file LICENSE in the source distribution or at
 # https://www.openssl.org/source/license.html

 package with_fallback;

 sub import {
     shift;

     use File::Basename;
     use File::Spec::Functions;
     foreach (@_) {
-       eval "use $_";
-       if ($@) {
+       if (1) {
            unshift @INC, catdir(dirname(__FILE__),
                                  "..", "..", "external", "perl");
            my $transfer = "transfer::$_";
            eval "use $transfer";
            shift @INC;
            warn $@ if $@;
        }
     }
 }
 1;

@cleeland thank you very much for tracking down what seems to be the core issue here!
I feel pretty confident that Richard will be able to work with this once he has a chance to take a look (I don't expect him to be awake right now, and his time is in high demand working towards the 3.0.0 release.)

@kaduk no problem.  At this point, since this only affects the build process and not runtime, we have a path forward: either build in a docker container that doesn't have Text::Template installed, or upgrade the system-installed package to 1.46 or later.

Also found issue while running command from windows10 having gcc
ERROR: openssl/1.1.1l: Error in build() method, line 748
self._make()
while calling '_make', line 684
self._run_make()
while calling '_run_make', line 639
self.run(" ".join(command), win_bash=self._win_bash)
ConanException: Error 2 while executing /c/.conan/9e1dd4/1/bin/msys64/usr/bin/make.exe -j8
any help would be appreciated.

@levitte is this still relevant?

no response, marking as inactive, to be closed at the end of 3.4 dev barring further input


automate kuberig-dsl

automate kuberig-dsl build and release pipelines
release pipeline should include propagating the released version number to:

kuberig-dsl-kubernetes
kuberig-dsl-openshift
kuberig (ToBeDecided)

Not automatically propagating the version to kuberig for now.


Analysis first step title is not completely right

The original designs says "Your Workflow (X)" while X is the number of steps already applied.

@MariaCheca, could you take a look? If you need help, let me know and we will check it together.


Workaround/Fix for corrupted images on some devices

After reading this I decided to take a look at the cwac-camera source to see where the picture size was set. As expected, it is set after the preview is started which causes the image corruption bug on some devices because of the reason stated the the linked answer, I presume.
To avoid this I found a window just before the preview is started to set the picture parameters without modifying the source. This is what I did:

@Override
public Camera.Parameters adjustPreviewParameters(Camera.Parameters parameters) {
        Log.d(TAG, "adjustPreviewParameters()");
        // Workaround: set picture parameters before preview starts to prevent image corruption bug
        Camera.Size size = getPictureSize(null, parameters);
        parameters.setPictureSize(size.width, size.height);
        parameters.setPictureFormat(ImageFormat.JPEG);
        parameters.setJpegQuality(85);
        parameters.setJpegThumbnailQuality(85);
        return parameters;
}

In the source, adjustPreviewParameters() is called right before the preview is started, since you have access to the camera parameters at this point you can set your picture parameters in there. Just extend SimpleCameraHost and override the method like above.
I can confirm this works on the Samsung Galaxy S3 (samsung_d2tmo).
@commonsguy correct me if I'm wrong or if this is a bad fix.

@shemarlindie I see nothing intrinsically wrong with what you're doing. The larger issue of adjusting parameters at wrong times is why I am rebooting this library. But, if this helps you with compatibility in your scenario, you're certainly welcome to roll with it.

Great! Glad to hear it.
All the best with the reboot.


Update for PCBNew 8

I found that this plugin was no longer working in KiCad 8.0 from Ubuntu Snap.
This fixes it, I was able to generate a CPL.
The description was never used anyway so I removed the broken call.

Disregarding how PRs here are likely never to be merged due to age, #1 implements this exact fix, with what looks like better handling.


wrong order with english

I have a string
string s4 = "apple قد غادر جماعتنا.";
use rtl:

but expceted

Play with the options in the component editor. RTLTMPro detects language based on the first character. "Force Fix" overrides that and makes RTLTMPro to interpret text as RTL regardless of the first character.


feat: added new task export-image-tar

This pull request is to add a new simple task for exporting images as oci-archive tar file and pushing as an oci artifact.  This is needed in some cases where images must be shared without the use of an image registry.

@chmeliik This makes it possible to do this as part of a pipeline task for a release. There are many tasks you can do manually that konflux automates for you. Like I can clone a repo with git clone but there still is a clone-repository task. Our release requirements are such that we need to give customers the ability to download an image tar file directly. Since there is no task currently in Konflux for saving and uploading an image as a tar file. That is what this is for. And just because you can do it manually with skopeo doesn't help with CI/CD.

Is the oras-uploaded artifact pullable directly? I thought you pretty much needed oras pull to download something uploaded by oras push (which is why it seems no different from telling your customer to use skopeo)

At some level, these operations can be done at release time, but that comes down to an implementation detail. I feel like operations that modify artifacts should be done before release time to enable them to be more fully tested. Build-time activities are those like producing container images, binary artifacts, tarfiles, etc. Release-time activities are those like retrieving, signing, pushing, copying content. This separation can also ensure that we have appropriate provenance available for the produced artifacts.
In this case, the release pipeline wouldn't know that it is processing a container image necessarily. It would just be passed a path to retrieve a tarball and a destination for it.
I think that this task could be changed to do something similar to what I am exploring here: https://github.com/konflux-ci/build-definitions/pull/1534/files#diff-ac0937f0ae23d79101fafbbe1d7b9325c299712e27bcb8a781e0ec34ef8a4643R441-R447
These tarballs are tightly coupled with the container image(s) itself. Instead of producing separate artifacts, it would make sense to create artifacts and attach them to the original container using the referrer's API. Based on feedback from the contract team, however, it has been requested to not reuse the Trusted Artifact flow for this and instead to create a separate utility to simplify the artifact pushing. This approach is, however, less supported than it is to generate a tarball on its own. It would require the feature requested in https://issues.redhat.com/browse/KONFLUX-5222.

At some level, these operations can be done at release time, but that comes down to an implementation detail. I feel like operations that modify artifacts should be done before release time to enable them to be more fully tested. Build-time activities are those like producing container images, binary artifacts, tarfiles, etc. Release-time activities are those like retrieving, signing, pushing, copying content. This separation can also ensure that we have appropriate provenance available for the produced artifacts.

Agreed. And by this definition, this task is a release task. It doesn't produce anything new, it copies the built image into the same registry but in a weird wrapper

Right. It could be handled on either side of build or release. I added this topic to the Konflux community architecture call for tomorrow.


in get_last_checkpoint     assert len(ckpts) > 0

Hello
!When I start running the train.py to train the Kitti,it has the error like this:
[08/21/2024 09:33:35 pixloc INFO] Starting experiment kitti
Traceback (most recent call last):
File "D:\daxue\异构\跨视角地图融合复现\SIBCL-main\pixloc\pixlib\train.py", line 465, in
main_worker(0, conf, output_dir, args)
File "D:\daxue\异构\跨视角地图融合复现\SIBCL-main\pixloc\pixlib\train.py", line 414, in main_worker
training(rank, conf, output_dir, args)
File "D:\daxue\异构\跨视角地图融合复现\SIBCL-main\pixloc\pixlib\train.py", line 160, in training
init_cp = get_last_checkpoint(args.experiment, allow_interrupted=False)
File "D:\daxue\异构\跨视角地图融合复现\SIBCL-main\pixloc\pixlib\utils\experiments.py", line 35, in get_last_checkpoint
assert len(ckpts) > 0
AssertionError

This log indicates that the pretrained model weights are missing from your experiment folder. Please download the provided model weights and verify the name of your experiment folder.

This log indicates that the pretrained model weights are missing from your experiment folder. Please download the provided model weights and verify the name of your experiment folder.

Ok, so should I download the weight model here:
? Where should I put it after downloading? Also, when I changed restore to false, it ran as follows and then stopped, I wonder why.
log.txt

Yes, please download weights and place the weights in your experiment folder. You can set your experiment folder; for example, create an 'experiment' folder named 'kitti' under 'TRAINING_PATH'(default: 'SIBCL/outputs/training'). Please try debugging your folder settings to resolve the problem.
line418: parser.add_argument('--experiment', type=str, default='kitti')
line431: output_dir = Path(TRAINING_PATH, args.experiment)

Yes, please download weights and place the weights in your experiment folder. You can set your experiment folder; for example, create an 'experiment' folder named 'kitti' under 'TRAINING_PATH'(default: 'SIBCL/outputs/training'). Please try debugging your folder settings to resolve the problem. line418: parser.add_argument('--experiment', type=str, default='kitti') line431: output_dir = Path(TRAINING_PATH, args.experiment)

But if I set resotore as false, it doesn't need the weights, right?

I have not trained from scratch; starting from a pre-trained weight is highly recommended as it will speed up your training process. If you choose to train from scratch, you may need to debug step by step to identify why it stopped in your environment.

I have not trained from scratch; starting from a pre-trained weight is highly recommended as it will speed up your training process. If you choose to train from scratch, you may need to debug step by step to identify why it stopped in your environment.

OK .So I can put my dataset and weights all in the  'SIBCL/outputs/training'

You can configure your dataset path, for example, by setting it in line 23: root_dir = "/data/dataset/Kitti" within the file pixloc/pixlib/datasets/kitti.py.

您可以配置数据集路径，例如，在文件 pixloc/pixlib/datasets/kitti.py 中的第 23 行中设置它： root_dir = “/data/dataset/Kitti”。

YES, I set like that.But it always says it could not found the "checkpoint_best.tar".I change the "best" to "71" and than it works.But it stop at "pred = model(data)" and didn't raise any error.

I understand what you're struggling with now. During training, when I started from a specific weight, I copied checkpoint_count.tar to checkpoint_best.tar, and both of these files are located in the experiments folder.

I understand what you're struggling with now. During training, when I started from a specific weight, I copied checkpoint_count.tar to checkpoint_best.tar, and both of these files are located in the experiments folder.

It seems like a new problem has raised:


Remove MAY tests from AU Core Inferno

While items in AU Core are marked MAY in the Implementation Guide to highlight their potential relevance to the use case there is not  strong need to support in testing.
Recommend removal. Or alternatively some sort of AU Core+ test kit that includes the SHALL, SHOULD, and MAY (noting ALL of the FHIR standard not explicitly prohibited is equivalent to MAY).

Sparked Tooling Meeting 10/9/24: Pavel to update config variable to exclude MAY tests.

Reviewed AU Core v1.0.0-ballot v.0.0.14 test kit - spot check of 8 test suites against AU Core 1.0.0-ballot. MAY tests have been excluded.
This ticket can be closed.
Upon further consideration, I think an AU Core+ test kit that includes the SHALL, SHOULD, and MAY tests would be beneficial for the implementer community for capability testing so I will raise a new issue.


Add NASA IXS Class Warpship and Spacedocks for RoverDude's Stand-Alone Alcubierre Drive from Kerbal Stuff

This pull request was automatically generated by Kerbal Stuff on behalf of Augustus, to add NASA IXS Class Warpship and Spacedocks for RoverDude's Stand-Alone Alcubierre Drive to CKAN.
Please direct questions about this pull request to Augustus.

Besides the usual problems with invalid license, we should come up with a shorter identifier for this.


RGBHSW params - Not clear to me

Hello there,
I read the new light setting in dokumentation. But one thing not clear to me:
"rgbhsv (optional, hex): a dps to control the color of the light, using 14 digit hex encoding of RGB and HSV values."
My HSV set is :
 "values": "{\"h\":{\"min\":1,\"scale\":0,\"unit\":\"\",\"max\":360,\"step\":1},\"s\":{\"min\":1,\"scale\":0,\"unit\":\"\",\"max\":255,\"step\":1},\"v\":{\"min\":1,\"scale\":0,\"unit\":\"\",\"max\":255,\"step\":1}}"
But it three different value. How to set the min/max in this case?

It needs some tweaking, as the first implementation had max of 100 for s and v, and that got hardcoded.  Probably I will add an additional config option for "format" of these hex encoded entries, something like:
format:
  - name: red
    bytes: 1
    range:
       min: 0
       max: 255
  - name: green
    bytes: 1
    range:
       min: 0
       max: 255
  - name: blue
    bytes: 1
    range:
       min: 0
       max: 255
   - name: hue
     bytes: 2
     range:
        min: 0
        max: 360
   - name: saturation
     bytes: 1
     range:
       min: 0
       max: 255
    - name: value
      bytes: 1
      range:
        min: 0
        max: 255

Support for the format specification detailed above is released in 0.16.0, with the Digoo and MoesHome smartplugs with nightlight both using this with different ranges for saturation and value.  For names, I just used the single character names (r, g, b, h, s, v) instead of spelling them out, and if the range is 0-255 (for 1 byte subfields, 65535 for 2 byte etc) the range can be omitted.


Edit Service Configuration files

Add AOI-specific information for USDA and HKH
Clarify the different WM formats used for the USDA services
Add pixel value references to WM descriptions
Add HydroSAR Hydro30 references to WM metadata

I confirmed the trufflehog failure is still a false positive, continuing to flag the thumbnail binary data in the new raster function template xml.


Not able to use proxy server with AmazonCloudTrailClient

Not able to use proxy server with AmazonCloudTrailClient
Expected Behavior
AmazonCloudTrailClient should use proxy server details set through like -
config.ProxyCredentials = new System.Net.NetworkCredential(_awsConfig.ProxyUserName, _awsConfig.ProxyPassword, _awsConfig.ProxyDomain);
var client = new AmazonCloudTrailClient(_accessKeyId, _secretAccessKey, config);

Current Behavior
ERROR Exception in getting CloudTrail events: A WebException with status ProtocolError was thrown.
ERROR Due to AWS CloudTrail Server error, logs can not be generated.
ERROR Failed to connect CloudTrail server Region: us-east-1.  Check the AccessKeyId, SecretAccessKey, Region and Proxy fields in the configuration file.
Context
Our customer are having issues with collecting AWS cloudtrail event logs as they have proxy server in between
Your Environment

AWSSDK.Core version used: <IP_ADDRESS>
Service assembly and version used:
Operating System and version: Windows server 2008
Visual Studio version: VS Ultimate 2013
Targeted .NET platform: 4.5

In addition to setting config.ProxyCredentials, you need to set config.ProxyHost and config.ProxyPort to valid values, otherwise the SDK ignores the ProxyCredentials.

Hello
Thanks for your response. that's already done but no luck. I found this link "http://stackoverflow.com/questions/35879889/exception-while-uploading-file-to-s3-net-sdk" and look like its a same issue. I will try the resolution posted on this link.
Any other suggestions?

See code snippet below -

Curious. It looks like there's a method TestProxy. Here are two assumptions on my part, as I don't know how TestProxy is implemented:

TestProxy succeeds
_proxy does not have its credentials configured (unless TestProxy reads _awsConfig.ProxyUserName and other related fields)

If TestProxy succeeds without _proxy having the credentials set, it seems that you shouldn't be setting config.ProxyCredentials. This may be the reason for the failure you are seeing. But that's just a guess at this point.
Can you try testing your code locally using Fiddler as described earlier?

I have tested my code and its working fine using a test proxy application wingate. But same code is not working for our customer. Here is my TestProxy method which I introduced just to test if for my customer there is no issues in making any REST api call from their server.

BuildRequest is not shown, so it's still not clear if _proxy is considered when the request is made, so it's not clear if your application is correctly testing that the proxy works.
It's not positively clear to me that this is an issue with the SDK. You will need to do more testing and debugging to identify exactly what the issue is, then provide a repro case where the SDK is clearly not picking up proxy settings. The snippet I posted above is a good start, so if you can modify it to fail it'll be clear that this is an SDK issue and we can get that fixed very quickly. Short of that, the SDK team does not have enough information to make a fix or the resources to continue to assist with identifying the exact issue in non-SDK code.

Closing due to inactivity.


Update Home Assistant Docker image to version 2024.12.2

This pull request updates the Home Assistant Docker image to version 2024.12.2.

coverage: 100.0%. remained the same
when pulling a40fb718c8c997084e17ec59798ae8a549c56b61 on update_home_assistant_docker_image
into f64505dba92563ba711f6ca14c0088f309039855 on master.


Gh-1364 NamedOperations Custom Score

New ScoreResolver interface and an implementation for Named Operations added.
AddNamedOperation now takes an optional field of score, which is persisted in the NamedOperationCache.
Functionality has been integrated into the existing ScoreOperationChainHandler.

Codecov Report

Merging #1413 into develop will increase coverage by 4.09%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##             develop    #1413      +/-   ##
=============================================
+ Coverage      63.27%   67.37%   +4.09%
+ Complexity      1107      536     -571
=============================================
  Files            319      387      +68
  Lines          10304    12602    +2298
  Branches        1308     1596     +288
=============================================
+ Hits            6520     8490    +1970
- Misses          3243     3470     +227
- Partials         541      642     +101

Impacted Files
Coverage Δ
Complexity Δ

...r/store/operation/handler/output/ToCsvHandler.java

...a/elementdefinition/exception/SchemaException.java

.../java/uk/gov/gchq/gaffer/commonutil/DebugUtil.java

...a/uk/gov/gchq/gaffer/data/element/id/EntityId.java

...n/implementation/raw/CompactRawLongSerialiser.java

.../java/uk/gov/gchq/gaffer/jobtracker/JobDetail.java

...ain/java/uk/gov/gchq/gaffer/data/element/Edge.java

...k/gov/gchq/gaffer/data/generator/MapGenerator.java

...affer/data/element/function/ElementAggregator.java

...q/gaffer/store/operation/handler/CountHandler.java

... and 692 more

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 492d94e...5ee5dc5. Read the comment docs.

Closing while migration testing is performed

Tested as working in V2 of the REST API.


Config serialization on Adobe Commerce 2.4.5-p3

When upgrade Adobe Commerce to 2.4.5-p3, I started having this error on order placement:
TypeError: json_decode(): Argument #1 ($json) must be of type string, array given in /home/gustavo/development/smartphonehoesjes-magento-2/vendor/magento/framework/Serialize/Serializer/Json.php:42
Stack trace:
#0 /home/gustavo/development/smartphonehoesjes-magento-2/vendor/magento/framework/Serialize/Serializer/Json.php(42): json_decode()
#1 /home/gustavo/development/smartphonehoesjes-magento-2/vendor/buckaroo/magento2analytics/Model/ConfigProvider/Analytics.php(51): Magento\Framework\Serialize\Serializer\Json->unserialize()
When checking the config: buckaroo_magento2/analytics/cookie_param_pair I have a valid serialized (Even values coming from config.xml) and getValue() function of \Buckaroo\Magento2Analytics\Model\ConfigProvider\Analytics::getCookieParamPairs() is already returning an array.
I cannot reproduce this behavior on previous version of Adobe Commerce (<= 2.4.5-p2).

Thanks @gustavorof for mentioning, we will look into your PR a.s.a.p.

Fixed with PR from @gustavorof, will be included in upcoming release!


Storage section in Customization page

Current Status:

@vojtechszocs @yaacov @pcbailey @hstastna @glekner @avivtur @metalice guys can you please review this? :D Thanks

Hi @upalatucci ,
Thank you for the PR!

I would strongly suggest splitting it's into 3-4 separate PRs. Is very hard to truly review it this way and understand the structure.

As a general note of my quick looking, I think a lot of functions can be exported into utils files and components can be much smaller by splitting them into sub-components.

As a suggestion I think a validation library-style Yup or Joi could be a good and fitting solution for the validations. Although currently, we don't have a lot and strong validation necessities, the advantages of a validation library are huge. such as schema validation that is very maintainable, readable, and considerate in a single place, it contains a lot out of the box validation functionality. I currently don't see any cons using an external library.

Thanks @metalice for the suggestions.
I'll split this PR into 3 different pr and try to apply your other 2 suggestions.
Do you think could be a great idea to add a validation library after these prs get merged?
So that we have time to decide together which library to add for the validation.
Honestly, I don't have a great knowledge of validation react libraries.
cc: @yaacov

@upalatucci please start with splitting the PR into smaller ones. We will discuss external validation libraries in follow-ups

I'll split this PR into 3 different pr and try to apply your other 2 suggestions.

There are 3 distinct forms, they can use 3 PRs, one for each form

regular parmaters
disk storage
cd storage

Do you think could be a great idea to add a validation library after these prs get merged?

No, the design definition say any validation in the client is not valid, you have to do all the validations using the back end in the on submit method

So that we have time to decide together which library to add for the validation.

Using client validation is contradicting the design, acceptance rules say no client logic, and validation done only by backend
why validations are done only on the backed:
a - it is the only true way to get valid / non valid answer for specific JSON string
b - it makes the client code simpler to read, because the code becomes smaller and linear, validation is done when you do on submit, no need for storage and reducers.
c - it makes the client code maintainable, when requirements change form fields will change and validation rules will change, if the form is simple html form without validations, it's easier to keep it up to date, the a rendered form with complex logic.

@yaacov @upalatucci
We can process the template and then run a dryRun for creating a VM each time the state changes.
but its a backend call and it has flight time
We need it anyway to validate the parameters before going to the Wizard.
We need to check if multiple errors coming back from the dryRun can be attributed to specific input fields


similarity_search get 2 validation errors for DocArrayDoc

System Info
pip show langchain_community
Name: langchain-community
Version: 0.0.3

python --version
Python 3.10.12

pip show langchain_core
Name: langchain-core
Version: 0.1.1

pip show pydantic
Name: pydantic
Version: 2.5.1

Who can help?
No response
Information

[ ] The official example notebooks/scripts
[ ] My own modified scripts

Related Components

[ ] LLMs/Chat Models
[ ] Embedding Models
[ ] Prompts / Prompt Templates / Prompt Selectors
[ ] Output Parsers
[ ] Document Loaders
[X] Vector Stores / Retrievers
[ ] Memory
[ ] Agents / Agent Executors
[ ] Tools / Toolkits
[ ] Chains
[ ] Callbacks/Tracing
[ ] Async

Reproduction
/root/jupyter/pydantic/pydantic/_migration.py:283: UserWarning: `pydantic.error_wrappers:ValidationError` has been moved to `pydantic:ValidationError`.
  warnings.warn(f'`{import_path}` has been moved to `{new_location}`.')
Traceback (most recent call last):
  File "/root/jupyter/GitHub-Issues/david/langC-rag-lcel.py", line 86, in <module>
    chain.invoke("where did harrison work?")
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_core/runnables/base.py", line 1514, in invoke
    input = step.invoke(
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_core/runnables/base.py", line 2040, in invoke
    output = {key: future.result() for key, future in zip(steps, futures)}
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_core/runnables/base.py", line 2040, in <dictcomp>
    output = {key: future.result() for key, future in zip(steps, futures)}
  File "/opt/python-3.10.12/lib/python3.10/concurrent/futures/_base.py", line 458, in result
    return self.__get_result()
  File "/opt/python-3.10.12/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
    raise self._exception
  File "/opt/python-3.10.12/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_core/retrievers.py", line 112, in invoke
    return self.get_relevant_documents(
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_core/retrievers.py", line 211, in get_relevant_documents
    raise e
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_core/retrievers.py", line 204, in get_relevant_documents
    result = self._get_relevant_documents(
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_core/vectorstores.py", line 656, in _get_relevant_documents
    docs = self.vectorstore.similarity_search(query, **self.search_kwargs)
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_community/vectorstores/docarray/base.py", line 127, in similarity_search
    results = self.similarity_search_with_score(query, k=k, **kwargs)
  File "/root/jupyter/virtualenv/slack-dev-3.10/lib/python3.10/site-packages/langchain_community/vectorstores/docarray/base.py", line 106, in similarity_search_with_score
    query_doc = self.doc_cls(embedding=query_embedding)  # type: ignore
  File "/root/jupyter/pydantic/pydantic/main.py", line 166, in __init__
    __pydantic_self__.__pydantic_validator__.validate_python(data, self_instance=__pydantic_self__)
pydantic_core._pydantic_core.ValidationError: 2 validation errors for DocArrayDoc
text
  Field required [type=missing, input_value={'embedding': [0.00177018... -0.018160881474614143]}, input_type=dict]
    For further information visit https://errors.pydantic.dev/2.4/v/missing
metadata
  Field required [type=missing, input_value={'embedding': [0.00177018... -0.018160881474614143]}, input_type=dict]
    For further information visit https://errors.pydantic.dev/2.4/v/missing

Expected behavior
it should run successfully

The issue is with pydantic version, it's 2.0.0+ and not compatible with docarray.
Instead it should be pydantic==1.10.9
source: https://stackoverflow.com/questions/76880224/error-using-using-docarrayinmemorysearch-in-langchain-could-not-import-docarray


docs: Fix README build status badge

Fixes #
Description

Fix README build status badge

How was this change tested?

Viewing the status badge on the README in the fork

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
12 unchanged lines in 2 files lost coverage.
Overall coverage remained the same at 76.132%

Files with Coverage Reduction
New Missed Lines
%

pkg/controllers/deprovisioning/controller.go
3
70.33%

pkg/controllers/deprovisioning/events/events.go
9
80.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
5719

Relevant Lines:
7512

💛  - Coveralls


PR: Information on local bus services and additional area-specific discounts

Content fix for #580
Start page
Before:

After:

Expandable text expanded

Not sure if we need to mention the National Express card ^^, may just confuse users and isn't a public service. Could just say "National coach services are not generally included."
Will be adding the expandable links to the Application complete page too.

Application complete page
Before:

After:

[Expanded text as per Start page (After) above]
NB I edited the subhead and changed a non-header to a header to support the increased text in the 'valid' section

@lizziebruce Are there any style rules about putting two dropdowns like that next to each other?

@sanjaypoyzer Only the Typography guidance http://govuk-elements.herokuapp.com/typography/#typography-hidden-text with example page http://govuk-elements.herokuapp.com/typography/example-details-summary/
On instinct and from the example it feels like somthing that shouldn't happen, but then again one of the Design Principles is be consistent, not uniform. Having the two drop downs is the best content presentaion I can think of for this particular circumstance. The justification being that adding the links directly following the relevant copy would then require more subheads and the whole page would be less readable.
There is another alternative which would be to move the where and when you pass is valid content onto a new page of its own - solving the Start page double dropdown. For the Application complete page might need to go the additional subheads route.

@lizziebruce How about we move those bits of info onto their own pages? They are actually both bits of content that should really be available on the council's website outside of the application journey, so linking to those pages from here makes sense to me.

Yes, moving the "where and when your pass is valid" content onto a new loop page is fine with me.
I don't necessarily think councils would/should have "when you pass is valid" info outside of the application. It's more efficient to have it in the place where you can apply for a pass, that's why it's good to have on the first page of the application. Also, info on council websites stems from services they provide, rather than this is useful info for the public to know about.
There's an argument for making the local bus info ("where you can use your pass) available on an out-of-app page as other concessionary travel passes would also reference it.

I've come up with a new content fix, a loop page for local bus services info and an expandable link for council-specific extra discount info. That way there's only one expandable link. Screenshots in new PR #620

@lizziebruce Did you want this PR as well or is #620 an alternative?


fix: add ring topology to hrm dashboards

Summary
Adds the vCenter Single Sign-on ring topology to to the HRM dashboards in VMware Aria Operations.
Type

[ ] Bugfix
[x] Enhancement or Feature
[ ] Code Style or Formatting
[ ] Documentation
[ ] Refactoring
[ ] Chore
[ ] Other
Please describe:

Breaking Changes?

[ ] Yes, there are breaking changes.
[x] No, there are no breaking changes.

Test and Documentation

[x] Tests have been completed.
[ ] Documentation has been added or updated.

Issue References

Closes #88
Additional Information

Updated version as well. All good to merge now.


Front end designs for good and bad metadata views

Current example of very incomplete metadata, from the dev environment

Note that even if we exclude stuff from the search, if the database is visible, all of its tables will be reachable as well (and vice versa).

Possible approach 1: highlight missing metadata
Make it look intentionally bad so people are prompted to fix it. Perhaps we could use a tag component for this, but this does not fit with the current metadata block, would probably need to convert this back to a summary list or introduce more spacing.

Possible approach 2: hide missing metadata
We could remove any data that is missing, and completely hide the block when there is no metadata at all. This may confuse users who are looking for that information (why can I see this here and not there?)


Trivial update to n-queens example

Looked at this so many times its starting to bug me...

Can one of the admins verify this PR? Comment with 'ok to test' to start the build.

Can one of the admins verify this PR? Comment with 'ok to test' to start the build.

Thanks :)


Logical Error between route implicit model binding & authentication

This is relevant to the @laravel/laravel 5.3.x application, not the framework itself..
Description:
If you're using route implicit model bindings, for a secured area behind authentication (using both web & auth middleware), in such case Laravel tries to fetch that bound model from DB first before checking permissions, whether the user already logged in or not, which I believe is a logical error in the flow of that process. We must check if user have permissions or not first, before even hitting the DB, right? Or am I missing something?
The other way is to put auth middleware before web middleware group, in which case it won’t work since it requires sessions, and sessions are instantiated within the web middleware group..
So, what do you think?

You can put the binding middleware wherever you want. That's why we changed it to be implemented a middleware so you can do auth first.


Allow nullable objects in boolean expressions

Brings shared eslint configuration in line with studio repo.
Alternatively we can ban this syntax in studio repo - I don't have a strong preference either way.

LGTM


Dartpad is using old SDK.

The current DartPad i s using SDK version 1.13. The most recent stable release is 1.15.

cc @Sfshaza

Yup; moving this issue over to here: https://github.com/dart-lang/dart-services/issues/267. We just need to push the latest dart-services to prod.


How to inject context dependency into all components?

I'd like to inject a context object with platform-dependent methods. For example
Open dialog/ display result method:

in dev mode (react), it just add a json object to redux, and let react display corresponding react components
in tiddlywiki env, it will call $tw.wiki.addTiddler to add a new note (called Tiddler in tiddlywiki) with corresponding widgets, to display things

This requires I have a way to pass this context object when calling createNetwork or nofloNetwork.start() in the following code:
  const runGraph = useCallback(async () => {
    setGraphIsRunning(true);
    try {
      /**
       * Similar to noflo-runtime-base's `src/protocol/Network.js`, transform FbpGraph to ~~NofloGraph~~ Network
       */
      const nofloNetwork: Network = await createNetwork(fbpGraph, {
        subscribeGraph: false,
        delay: true,
        componentLoader: libraryLoader,
      });
      currentNetworkReference.current = nofloNetwork;
      nofloNetwork.on('process-error', (processError: { error: Error }) => {
        if (typeof console.error === 'function') {
          console.error(processError.error);
        } else {
          console.log(processError.error);
        }
      });
      await nofloNetwork.connect();
      await nofloNetwork.start();
      nofloNetwork.once('end', () => {
        setGraphIsRunning(false);
      })
    } catch (error) {
      // TODO: show error on a debugger panel
      // network.once('process-error', onError);
      console.error(error);
      setGraphIsRunning(false);
    }
  }, [fbpGraph, libraryLoader]);

And requires the process method can accept this "context" object alongside with input, output in the following code:
    // Register a process handler for incoming data
    this.process((input, output) => {
      /**
       * If there's a conversation in progress, skip processing the new input.
       * Use backpressure to prevent new input from being processed until the current conversation is done.
       * @url
       */
      if (this.currentConversationID !== null) {
        return;
      }
      if (!input.hasData('prompt')) {
        return;
      }
      this.currentConversationID = String(Date.now());
      // Retrieve the incoming data from the inport
      const prompt = input.getData('prompt') as string;
      // eslint-disable-next-line @typescript-eslint/strict-boolean-expressions
      const cpuCount = input.getData('cpu_count') as number || 4;

      const runnerResultObserver: Observable<ILLMResultPart> = window.observables.languageModel.runLanguageModel$(runner, {
        completionOptions: {
          prompt,
          nThreads: cpuCount,
        },
        id: this.currentConversationID,
      });

      /**
       * Wait for Observable to done, then send this full output.
       */
      let fullResult = '';
      // Subscribe to the observable to process the results
      runnerResultObserver.subscribe({
        next: (resultPart: ILLMResultPart) => {
          // Process the result part as needed
          // For this example, we'll just send the result to the outport
          output.send({
            token: resultPart.token,
          });
          fullResult += resultPart.token;
        },
        complete: () => {
          this.currentConversationID = null;
          output.send({
            result: fullResult,
          });
          // Mark the process as finished
          output.done();
        },
        error: (error: Error) => {
          this.currentConversationID = null;
          output.done(error);
        },
      });
    });

or get it from the constructor in the following code:
class LLaMaChat extends Component {
  description = 'Call local Llama model';
  icon = 'file';
  currentConversationID: string | null = null;

  constructor() {
    super();

is this possible in the noflo now?
P.S. you should open Discussion feature in these repos, so we can ask questions there.

Assistant:
At the time of my last update (September 2021), NoFlo (a flow-based programming system for JavaScript) supports the dynamic passing of context via a mechanism called IP, or Information Packet. While NoFlo allows the passing of data between components using IPs, it doesn't have a built-in way of passing a global context object to every component when starting a network.
However, there are a few ways you could approach this, depending on your needs:

Dedicated Ports: Consider having dedicated input ports on each component that expect this context. You could then wire up these ports in your FBP graph to ensure that each component receives the context object when the network is started. This might be the most straightforward method if you want to keep your components as reusable and independent as possible.

Component Constructor: As you've noted, you could pass the context object to the component constructor. This method would make your components dependent on that context object, but it could be a valid approach if you only intend to use these components within this specific application.
For example:
class LLaMaChat extends Component {
  description = 'Call local Llama model';
  icon = 'file';
  currentConversationID: string | null = null;
  platformContext: any;

  constructor(platformContext: any) {
    super();
    this.platformContext = platformContext;
  }
}

And then when you instantiate the component:
const myComponent = new LLaMaChat(myPlatformContext);

Wrap the Network Creation: You could abstract the creation of the network into a factory or builder pattern and use that to inject the context. This would encapsulate the behavior of starting the network and ensure that the context is always provided.

Modify NoFlo's Core: This is the most involved option, but if you're comfortable making changes to the NoFlo source code itself, you could extend or modify it to support the passing of a context object to components when a network is started. However, this might make upgrading to newer versions of NoFlo in the future more challenging.

Considering the above, you should choose the method that feels right for your application's needs and architecture. If you opt for a solution that modifies NoFlo or introduces custom behaviors, make sure to document your changes clearly to ease future maintenance.

HUMAN:
I'm going to add a Dedicated Port call "ui_effects" that is hidden from the user, but is accessible when constructing the graph, it is same object for all noflo components that has this port. Methods in this context is dynamically constructed, when user add a new ui related noflo component by installing plugin (of my system), the plugin will also provide corresponding context methods to add to context object that will send to all "ui_effects" ports. And these ui related noflo component will get the context object from the port in runtime. You are writing some example to demostrate how to do this.

Assistant:
Certainly! Let's design this with your requirements in mind.

Defining the Context Object:
The context object might look something like this:
interface UIEffectsContext {
  openDialog?: (data: any) => void;
  displayResult?: (data: any) => void;
  // ... any other dynamic methods added by plugins
}

Dedicated UI Effects Port in Components:
Each component that expects the UI effects context will have a dedicated port for it.
class SomeUIComponent extends Component {
  constructor() {
    super();
    this.inPorts.add('ui_effects', { datatype: 'object' });
  }

  process(input, output) {
    if (!input.hasData('ui_effects')) return;
    const uiEffects: UIEffectsContext = input.getData('ui_effects');
    // Now you can access uiEffects.openDialog, etc.
  }
}

Populating the Context Object:
When a plugin is installed, it should modify the global context object:
function installPlugin(plugin: any) {
  // Assuming globalUIEffectsContext is your global UI effects context
  if (plugin.provideUIEffects) {
    Object.assign(globalUIEffectsContext, plugin.provideUIEffects());
  }
}

A sample plugin might look like:
const myPlugin = {
  provideUIEffects: () => ({
    openDialog: (data) => {
      // Implementation here
    },
  }),
};

installPlugin(myPlugin);

Sending the Context Object to the Components:
When you're setting up and running your graph, ensure the ui_effects port for each component receives the global context:
const runGraph = async () => {
  // ... your existing setup code ...
  const nofloNetwork: Network = await createNetwork(/*... your existing code ...*/);

  // Assuming components have been added to the network
  for (let componentName in nofloNetwork.processes) {
    const component = nofloNetwork.processes[componentName];
    if (component.inPorts.ui_effects) {
      component.inPorts.ui_effects.attach(new noflo.IP('data', globalUIEffectsContext));
    }
  }

  // ... rest of your runGraph code ...
};

This is a basic example to get you started. There might be nuances depending on your specific implementation and how you manage the lifecycle of data in NoFlo. Remember to handle errors and potential issues that could arise from the dynamic nature of this setup (e.g., ensuring that methods in the context object do not overwrite each other).

Attaching sockets to ports, what is socket
人类:
In the following js code using noflo library, what does port.attach mean?
import { IP } from 'noflo';
import type { Network } from 'noflo/lib/Network';

export function injectUIEffectsWhenRunGraph(nofloNetwork: Network) {
  for (const componentName in nofloNetwork.processes) {
    const networkProcess = nofloNetwork.processes[componentName];
    networkProcess?.component?.inPorts?.ports?.ui_effects?.attach(new IP('data', globalUIEffectsContext));
  }
}

And this is source code of noflo/src/lib/BasePort.js
  /**
   * @param {import("./InternalSocket").InternalSocket} socket
   * @param {number|null} [index]
   */
  attach(socket, index = null) {
    let idx = /** @type {number} */ (index);
    if (!this.isAddressable() || (index === null)) {
      idx = this.sockets.length;
    }
    this.sockets[idx] = socket;
    this.attachSocket(socket, idx);
    if (this.isAddressable()) {
      this.emit('attach', socket, idx);
      return;
    }
    this.emit('attach', socket);
  }

助手:
In the provided JavaScript code, the port.attach method is being used in the context of the NoFlo library to attach a socket to a port. The code snippet you've provided seems to be part of a larger codebase that involves working with data flows and components within the NoFlo framework.
In NoFlo, a data flow network is constructed by connecting different components together using ports and sockets. Components represent units of processing, and ports are the input/output points of these components where data flows in and out.
Here's a breakdown of the relevant parts of the code:

networkProcess?.component?.inPorts?.ports?.ui_effects: This code is accessing a specific port named ui_effects of a component within the network process. It's using optional chaining (?.) to handle cases where any of the intermediate properties might be undefined or null.

new IP('data', globalUIEffectsContext): This creates a new IP (Information Packet) object with the type 'data' and the payload of globalUIEffectsContext. IP objects are used to carry data between components in the NoFlo network.

port.attach(socket, index = null): This method is being called on the ui_effects port. It's used to attach a socket to the port. A socket represents a connection point that can send or receive data. The index parameter is optional and specifies the index at which to attach the socket, but if it's not provided, the socket is attached to the next available index.

The method implementation in BasePort.js provides the logic for attaching the socket. It assigns the socket to the specified index in the sockets array of the port and emits an 'attach' event. This event is significant in NoFlo's internal mechanics, as it indicates that a socket has been attached to the port.

In summary, the line port.attach(new IP('data', globalUIEffectsContext)) attaches a new socket (representing a connection) to the ui_effects port of a specific component in the NoFlo network. This socket is used to send a data packet (IP object) containing globalUIEffectsContext as payload, which can then be processed by the connected component.

人类:
You said "attach a socket to a port", what is socket?

助手:
In the context of the NoFlo library and data flow programming paradigms, a socket is a fundamental concept that represents a connection point for data to flow into or out of a component. Think of a socket as an interface through which data enters or exits a component.
Sockets are used to establish communication between different components in a data flow network. They come in pairs: an input socket and an output socket, corresponding to the input and output ports of a component. Sockets are used to send and receive data packets, and they manage the data flow between connected components.
When you attach a socket to a port, you are essentially creating a connection between two components, allowing data to flow from one component's output socket to another component's input socket.
In the context of NoFlo's attach method and the provided code snippets, attaching a socket to a port means establishing a data flow connection between the specified output socket (which represents the data source) and the input port (which represents the data destination). This connection allows data to be passed from one component to another within the data flow network.

人类:
In fbp-graph, there are Node and Connection class, and in noflo there are Component, Port and socket. Are they simillar?

助手:
Yes, the concepts in the fbp-graph library and the noflo library are similar in the sense that they both represent the building blocks of a data flow programming paradigm. However, the terminology and the way these concepts are implemented might differ slightly between the two libraries.
Here's a comparison of the concepts in both libraries:

Node (fbp-graph) / Component (noflo):

In both libraries, a node or a component represents a unit of processing.
Nodes in fbp-graph and components in noflo can encapsulate functionality and logic.
They can have input and output points for data flow.

Connection (fbp-graph) / Port and Socket (noflo):

In fbp-graph, a connection represents a link between two nodes, allowing data to flow from the output of one node to the input of another node.
In noflo, the concept is divided into ports and sockets. A port represents a named input or output point on a component, and a socket is used to establish connections between ports.
The combination of an output port and an input port connected via a socket achieves the same purpose as a connection in fbp-graph.

Overall, both fbp-graph and noflo aim to facilitate data flow programming, where you define components or nodes that process data and connect them together to form a network. While the terminology and implementation details might vary, the core idea of creating data flow networks remains consistent between the two libraries.

导出时间 2023年8月15日 下午1:48.


Add config options to README

I thought it would be convenient to have all of the config options listed and explained in the readme, so I started a new section for them. I know this doesn't capture all available config items yet, but it's at least a good start and a place to put future items.

Closing as the repo is not maintained anymore.


The associated project "" has changed its configuration. These changes will not be reflected until you reset this interactive window

Describe the bug
Hello, since a few weeks I have a problem using the Ipython interactive mode in my Python projects using Visual Studio.
This problem only appears if I have linked a custom file to the active solution.
If I select a piece of code which calls a method or function of the linked file and click „send to interactive“ or „ctrl+enter“ then I get the message "The associated project "prj_test" has changed its configuration. These changes will not be reflected until you reset this interactive window.“
As soon as I continue with other lines of code a new interactive window automatically appears.
Steps to Reproduce

create a file named "awesome_linked_file.py" in folder "..\linked_files"
the code of "awesome_linked_file.py" is:
def SayHelloLinkedFile():
print('Hello, I am a linked file')
create a Visual Studio Solution "prj_test" with module "prj_test.py"
add file "awesome_linked_file.py" as link to the solution
the code of "prj_test.py" is:
from awesome_linked_file import SayHelloLinkedFile
SayHelloLinkedFile()

Expected behavior
I would expect using the same interactive window executing the code line by line  instead a new interactive window has to be started  as soon as I call a linked file.
Configuration information (If you are providing a diagnostics file (see below), skip this section)
VS Version: Microsoft Visual Studio Community 2019 Version 16.9.4
PTVS version: 16.9.21026.1-16.0
Python version: 3.8
Picture

Files
prj_test.zip

Thanks for the feedback! However, we don't have plans on adding this functionality at this time.


Improve article 2104.04040

Exact location of issue
Figure 1
Problem details
The SVG generated loses the textual content of the legend. Here are two screenshots:
HTML+SVG (in Firefox)

PDF

This reduces to:
\documentclass{article}
\usepackage{pgfplots}
\pgfplotsset{height=5.2cm}
\pgfplotsset{compat=1.7}
\makeatletter

\begin{document}
\begin{figure}
\begin{tikzpicture}[trim right=0cm]
\begin{loglogaxis}[
    xmax=200,ymax=100,xtick={100},ytick={10},legend style={at={(1.1,0.8)},anchor=north west},
    every axis plot/.append style={thick},legend cell align={left}]
\addplot[color=red,mark=*,]
    coordinates {(100,73.8)};
\def\plotnum{0}\def\plotnumofactualtype{0}%
\def\pgfplots@already@computed@legend@node{%
    \matrix[/pgfplots/every axis legend]{%
    \pgfplots@show@small@legendplots{}{/pgfplots/every axisplot except %
    legend/.code=,/pgfplots/every axis plot,/pgfplots/every axis plot except legend,%
    /pgfplots/every axis plot no 0/.try, color=red, mark=*,%
     ,/pgfplots/.cd,,/pgfplots/.cd,/pgfplots/every axis plot post}\pgfmatrixnextcell
     \node{legend panel};\\};}
\end{loglogaxis}
\end{tikzpicture}
\label{fig:running-time}
\end{figure}
\end{document}

And likely runs into one of the limitation comments in pgfsys-latexml.def.ltxml namely:

But there are still some major problems:
On top of that, we're somehow getting out-of-sync with the
bgroup/egroup & begingroup/endgroup pairs that tikz/pgf is adding
and the ones embedded in our alignment machinery.
I THINK we're running afoul of when the last item of \matrix ends with \ ???

I think I will shave the issue until we return to align-related considerations, hopefully the minimal example helps troubleshoot further.

Resolved with the latest ar5iv update.


Extra issue fix

optimize TonConnectUIProvider

use Symble key in provide / inject

// now we use tonConnectUIKey export from @townsquarexyz/ui-vue to inject instance in demo project, like this usage
<script  lang="ts">
import { TonConnectUI, useTonWallet, tonConnectUIKey } from "@townsquarexyz/ui-vue";
const tonConnectUI = inject<TonConnectUI | null>(tonConnectUIKey, null);
</script>

which related to #8 [Moderate] implementation 1, 2, 3, 4

feel free to notify Alex that the repo is ready to merge

Am I entitled to do it? I mean, he asked me to do a general review. We can clear everything up in Telegram.

Also, could we connect on Telegram for smoother communication?

Feel free to contact on Telegram: https://t.me/dimchickLoveNY .

Yeah, since Alex asked you to handle the general review, we’d like to let you inform him to keep the process smooth and complete, and then we can push this into next step. And it's not the must, we can let him know this in some other day. :D


Make e2Ee by default for private rooms

not only for DM.
We should have the button to disable it in the room creation dialog first.

We do not have the UI like riot-web and riotx-android to create a room.
riot-ios creates a room with basic settings. Then, the user needs to use the room settings to set the right options.
We cannot attack this issue before having the room creation dialog.


Better handle nicks/aliases containing special characters

In PR #21 , I fixed a bug where regex special characters in a nick caused the bot to crash.  My fix avoided the crash, but was not ideal because some kinds of nicks like [whatever] could not be correctly identified in #action commands.  This PR improves the implementation by factoring out an _AliasMatcher class, adding a bunch of test cases, and adjusting the regex to better match all kinds of nicks and aliases, regardless of what characters they contain.  I also clarified some of the documentation.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

17 of 17 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 98.372%

Totals

Change from base Build<PHONE_NUMBER>:
0.03%

Covered Lines:
815

Relevant Lines:
826

💛  - Coveralls

I can confirm that as of Hcoop-Meetbot v0.61 from PyPI, nicks with [square brackets] no longer crash the meetbot. This mattered because the popular Matrix irc bridge appends "[m]" to Matrix nicks when joining irc channels.


Patch for previous version

Noticed yesterday's deployment was failing. It was my fault, I forgot to check a box.

Wait! I think merging this will create a hole in the middle since yesterday's versions are not published yet, and they're already one version up and are already in the changelog.

👍🏻


docs: update operator documentation to reflect dex migration

What type of PR is this?

Uncomment only one  /kind line, and delete the rest.
For example, > /kind bug would simply become: /kind bug

/kind bug
/kind cleanup
/kind failing-test
/kind enhancement
/kind documentation
/kind code-refactoring

What does this PR do / why we need it:
This PR updates the api documentation to reflect the new SSO structure, as well as the dex related documentation to reflect the updated, unified SSO module
Have you updated the necessary documentation?

[x] Documentation update is required by this PR.
[x] Documentation has been updated.

Which issue(s) this PR fixes:
Fixes #483
How to test changes / Special notes to the reviewer:

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: jaideepr97:x: Jaideep RaoJaideep Rao seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

Are you sure this is a docs change? There's loads of code changes in the commits

Hey @jannfis
Those code changes are here because for this PR I branched off of the branch that I used to raise https://github.com/argoproj-labs/argocd-operator/pull/488 since I needed to reference the api changes I made in https://github.com/argoproj-labs/argocd-operator/pull/488 in order to update the docs accurately
This PR is meant to be merged after https://github.com/argoproj-labs/argocd-operator/pull/488 goes in so that only the docs changes will remain when its time to merge this PR


use the variable already exist

Hi, appreciate the PR, but it looks like there's some problems running your tests in Travis. See for example: https://travis-ci.org/erlang-lager/lager/jobs/427249681
Can you take a look and address those please?

I will.

@mrallen1
The pr is finally ok, you can check the code.

Also it would be cool if you'd squash some of the commits you ended up abandoning. :)

Not sure if you intended to squash commits but they're not squashed. :)

I recheck the commits, only the last five commits can be squashed into one commit. Or you mean to squash all commits into one commit?

You can also cherry pick some commits and squash them.

@getong some maintainers prefer all commits in a PR to be squashed into one.

In this case, yes, it would be nice to have them squished into a commit.

ok, I will do it tonight.

done.


Position of msg field

In logrus.TextFormatter, the msg field is always the third field (after time and level).
This makes sense because the other tags are probably additional information about the error, compare:
time="2017-06-28T13:37:18+02:00" level=fatal msg="Can't open file" filename="/usr/local/share/man"

vs
time="2017-06-28T13:37:18+02:00" level=fatal filename="/usr/local/share/man" msg="Can't open file"

In prefixed.TextFormatter it is always at the end, which in my opinion makes the log more difficult to read.

Indeed, makes sense. I'll change that.


FocusView with confirmCloseMessages - UI breaks when there are dropdowns in the content

Describe the bug
When the FocusView content has dropdowns and confirmCloseMessages is used to show a confirmation dialog, the UI is breaking because of the z-index issues.
To Reproduce
Using this app:
import {useState} from 'react';
import {
  Button,
  ContextView,
  FocusView,
} from '@stripe/ui-extension-sdk/ui';

const App = () => {
  const [shown, setIsShown] = useState(true);

  return (
    <ContextView title="Test">
      <FocusView
        title="Test"
        shown={shown}
        confirmCloseMessages={{
          title: "Are you sure you want to exit?",
          description: "You may lose data.",
          cancelAction: "Cancel",
          exitAction: "Exit",
        }}
        secondaryAction={<Button onPress={() => setIsShown(false)}>Close</Button>}
      >
        Hello
<Select label="test" value="test">
    <option value="">test</option>
</Select>
<Select label="test" value="test">
    <option value="">test</option>
</Select>
<Select label="test" value="test">
    <option value="">test</option>
</Select>
<Select label="test" value="test">
    <option value="">test</option>
</Select>
<Select label="test" value="test">
    <option value="">test</option>
</Select>
      </FocusView>
    </ContextView>
  );
};

export default App;

Expected behaviour
UI should not break even when there are dropdowns in the content.
Screenshots

@mangatinanda Thanks for filing this, we'll take a look.

@mangatinanda I don't have an exact time, but we're expecting a fix this week.

The fix may not land today. We're working to get it in, and I'll post an update here when it's ready. No SDK update will be required.

This issue has been resolved. No SDK update required.

Unfortunately we've had to roll back because a new issue was introduced: https://github.com/stripe/stripe-apps/issues/669
I'll post here with updates as we work on a fix.

Rolled forward.


documentation for the API

Description
Issue Description:
I'm having difficulty locating sufficient documentation for the API, particularly regarding the API. I'm interested in understanding if there's a method to invoke the web application from a script.
The payload, once encrypted, would resemble the following JSON structure:
{
  "text": "<encrypted text>",
  "files": [],
  "title": "<encrypted title>",
  "password": "",
  "ttl": 360,
  "allowedIp": "",
  "preventBurn": false,
  "maxViews": 1,
  "isPublic": false
}

I observed that the response includes a header with an ID, but I'm unsure about the URL to which to send the payload prior to encryption.
Any guidance on this matter would be greatly appreciated.
Screenshots
No response
Additional information
No response

https://github.com/HemmeligOrg/Hemmelig.app/blob/main/cli.js

Some docs here, but not reliable yet
https://hemmelig.app/api-docs


Message ACKs and communication establishment

During integration of the RSMP interface between TLCs and city traffic management system (CTMS), we are facing the following situation and would appreciate your expertise to find a proper solution:

RSMP version exchange is performed successfully between TLC and CTMS
TLC and CTMS both send a watchdog command and receive the acknowledgment.
According to RSMP section 5.3.1, TLC starts sending aggregated status, alarms.
CTMS is acknowledging aggregated status, alarms received and also starts sending status unsubscribe/subscribe requests to the TLC.
As TLC is busy with points 3, it does not acknowledge the requests sent by CTMS (point 4) within a reasonable time span. After some time, CTMS dropped the connection.

We have been checking the RSMP specs, section 5.3.1, but we have not been able to conclude about what is incorrect in this situation. Nevertheless this situation is preventing establishing a connection.

I'm not sure I like the proposal to only ignore missing ACKs, as long as something else is received.
If you're receiving other alarms, statuses, etc. it means that watchdogs are effectively disabled, as you cannot take any action if they're missing.
I think we should stick to the simle requirement that all messages must be ACK'ed within the time limit. Sites must then take care not to block the output with large number of messages, before sending the ACK.

An issue with allowing acks not to be send in time if other messages are received is that this weaken the purpose of acks in any situation where many messages are exchanged, eg. when many status messages are send.

If we leave the spec as it is, we need to instead speficy that messages send after reconnect is not strictly FIFO, acks must be interleaved.

Working group decision is that we want to keep the requirement of receiving MessageAck within specified time limit. Instead we will update the specification to clarify that MessageAcks must be send within the limit, even when a large buffer of messages is being handled after a disconnect
.

An alternativ would be to change the spec, so that you're not required to send watchdog regularly, but instead just ensure that something is send within a certain interval. If you have nothing to send, you send a watchdog.

Watchdog currently have a secondary purpose, which is sending the time. But this is probably better handled in other ways.

We're going for the simpler alternative described above. Draft needs to be updated.

Proposal implies that it's an error to send a watchdog if something else has been send within the watchdog interval. Because if the site is busy sending buffered messages, it will not be able to acknowdledge to the wathdog.

Draft updated with e90a77a85d1226c3cc6c1e06b86330188c72ae7d.
However, it only cover watchdog messages. If, for instance StatusSubcribe is sent, then the same issue remains

Going to move discussion about watchdogs to a separate issue, since it's not directly related to message acks.

The draft and e90a77a actually implements #30. Is the below implemented in the spec?

Working group decision is that we want to keep the requirement of receiving MessageAck within specified time limit. Instead we will update the specification to clarify that MessageAcks must be send within the limit, even when a large buffer of messages is being handled after a disconnect.

The draft and e90a77a actually implements #30. Is the below implemented in the spec?

Yes. It was implemented with c6190f85e1bec18cce760040db922aef68eed7a3. Commit  e90a77a85d1226c3cc6c1e06b86330188c72ae7d actually implements #47.
I think this issue can be closed and is ready for review


ResourceType format not consistent across APIs

Describe the bug
The Providers.GetByName() API returns a ResourceType value that is not consistent with the formats returned by
ResourceId.FromString(resourceId).FullResourceType
ResourceId.FromString(resourceId).ResourceType
ResourceUtils.ResourceTypeFromResourceId(resourceId)
Please refer the screenshot below
To Reproduce
Code to reproduce the issue

// Configure ResourceManager
IResourceManager resourceManager = ConfigureRM();

var resourceId = "/subscriptions/xxxxx-c5b6-44fb-b5ba-xxxxxx/resourceGroups/xxxx-adftutorial/providers/Microsoft.Compute/virtualMachines/xxxx-vm/extensions/enablevmaccess";

var fullResourceType = ResourceId.FromString(resourceId).FullResourceType;

var resourceType = ResourceId.FromString(resourceId).ResourceType;

var providerResourceType = resourceManager.Providers
                                       .GetByName(ResourceUtils.ResourceProviderFromResourceId(resourceId)).ResourceTypes;

var resourceTypefromResourceUtils = ResourceUtils.ResourceTypeFromResourceId(resourceId);

Expected behavior
For the example shown in the screenshot, the Providers.GetByName() API should return a value "extensions" just like ResourceId.FromString().ResourceType and ResourceUtils.ResourceTypeFromResourceId()
Screenshots

Creating the same in https://github.com/Azure/azure-libraries-for-net/issues/683


[Cleanup] Cleanup TrafficCop, mostly formatting

Cleanup as I work on the callback-based multi-threading stuff.
This is a separate clean up PR, mostly just code formatting. No interface changes at all.

Coverage decreased (-0.006%) to 75.866% when pulling 022e7de8148b218022f19de3f91ccfc46eb676a3 on phisiart:clean-trafficcop into a1350229033dd0fff0c32435d3a8b575099a44f5 on cmu-db:master.


✅ Unit Test

This is a benchmark review for experiment review_of_100_reviews_20240409.
Run ID: review_of_100_reviews_20240409/benchmark_2024-04-09T10-24-34_v1-16-0-95-g65fefaeef-dirty.
This pull request was cloned from https://github.com/mraniki/iamlistening/pull/293. (Note: the URL is not a link to avoid triggering a notification on the original pull request.)


userspace: memory domain policy adjustments and ARC/ARM bugfix

This PR:

Deprecates k_mem_domain_destroy(), it lacks use-cases
Implements a new policy that all threads are a member of a memory domain. A default memory domain k_mem_domain_default is introduced for threads that would otherwise have this be NULL, such as the main thread. The primary motivation for this is MMU systems where page tables will be maintained at the memory domain level. This domain has the C library partition added by default.
ztest now just uses the default domain instead of defining its own.
k_mem_domain_add_thread() no longer explodes if the target thread was already a member of some other domain. Instead, it is removed from the old domain first.
With threads now always being a member of a memory domain, deprecate k_mem_domain_remove_thread(). Meanwhile, this is now equivalent to adding the thread to the default domain.
Uniprocessor ARM and ARC don't actually need to implement the arch_mem_domain_* APIs. Remove the implementations (which were causing problems in some corner cases) and add a Kconfig CONFIG_ARCH_MEM_DOMAIN_SYNCHRONOUS_API to indicate whether these are needed or not.
Improve some assertions and debug messages.
Documentation updates to reflect the above changes.

Please review the individual commit messages for more details about these changes.

Note: in the process of working on this I found https://github.com/zephyrproject-rtos/zephyr/issues/27785 on ARC but I don't think it's severe.

I like the changes, just few minor suggestions/question.

@andrewboie does this PR address: https://github.com/zephyrproject-rtos/zephyr/issues/21991?
At least for Cortex-M I think it does, since we do not do anything outside the context-switch. But please check as well.

@ioannisg no I haven't looked at  #21991 specifically yet. I will do so during the 2.4 stabilization period after the merge window closes.


Change objstore Delete() contract to make it idempotent

Is your proposal related to a problem?
The objstore Delete() is expected to return error if the object doesn't exist in the bucket:
https://github.com/thanos-io/thanos/blob/e9260e30f265f60e17d3f61ff361fb7357b3d34a/pkg/objstore/objstore.go#L44-L46
This design decision has some drawbacks:

S3 "delete object" API is idemponent and Thanos S3 client (based on Minio) is idempotent as well. Basically it violates the contract.
We have some places where we check for existence before deleting (eg. block.Delete()), while if it would be idempotent we could skip the check for existence at all.
Design wise, isn't more RESTful having deletes idempotent?

However, I may be missing the reason behind this design decision, so I've opened an issue to discuss it.
Describe the solution you'd like
I would propose to change objstore clients Delete() contract to make it idempotent. Object stores where delete is idempotent (eg. S3) would require no changes, while others would require handling the "not found" error status code (typically a 404, like on GCS).

I am almost certain that we did this ONLY to match with "some" obj storage APIs we were inspired by (GCS) . We are definitely ok to make it idempotent. (:
I kind of like explicitness. If you delete something that does not exists, I want to know that as a caller. This might mean some eventual consistency or race, so then caller can just ignore it. OR I really want to delete something and I want to know about deletion happening.
The simple case will be instrumentation. If we delete I want to make that we deleted something. If 20 writes deletes I just have info "they tried to delete and maybe they deleted and maybe it was already deleted". Such instrumentation/metric will NOT tell us how many deletes were in DB (e.g objstore), but rather how many attempts were there.
Apart of instrumentation, I don't see other use cases for non-idempotent Delete, but the instrumentation one might be important, not sure. Ideally, allowing caller to decide makes sense?
I think I would be happy to make it idempotent, our goal with objstore is indeed to reduce API calls.

I think I would be happy to make it idempotent, our goal with objstore is indeed to reduce API calls.

I thought the rest of the comment was leading towards not making it idempotent. If it's idempotent, from the consumer perspective, then the Delete() would act the same exact way regardless the object existed or not in the storage.

Yea, because I am torn.
Just curious, the only benefit here is really API calls? Because in a PR for meta json, we could just try to delete and filter out NotFound error, no? To achieve this (:

Because in a PR for meta json, we could just try to delete and filter out NotFound error, no? To achieve this (:

Yes, definitely. That's another valid approach, but I think the current implementation doesn't guarantee it. What I mean is: we should check this is true for all object store clients and, if so, document it in the Delete() contract.
The only downside I see (but not a big deal, if correctly documented) is that it's not possible to implement on S3 (where "delete object" API is idempotent) unless we issue an "head object" before deleting, which I would prefer to avoid (to reduce API calls).