Submit new R package to CRAN

@hetong007 @tqchen @pommedeterresautee @khotilov
I received some requests recently. Could anyone submit the latest version to CRAN (major changes are the callbacks I believe)?

Sorry I missed that issue. Thanks @hetong007.

We will need a VM to get solaris checks pass,  @thirdwing  can you help on that?

I will try to find some time.

I just try a 32-bit Solaris VM. However, I can't install all the dependencies on that.

@thirdwing  Do you have a list of those dependencies?

NMF can't be install one x86 VM. See https://cran.r-project.org/web/checks/check_results_NMF.html
We don't depend on this directly. This is a dependecy for DiagrameR

BTW, I can install xgboost on x86 Solaris.

@thirdwing can you confirm the R check as-cran pass?

I can just install it. It seems impossible to do the check on x86 Solaris machine.

The igraph depends on NMF , the DiagrammeR depends on igraph; and we call some functions from both DiagrammeR and igraph in some non-essential plotting methods. There are a few unit tests which call those  - is that why the check for solaris doesn't work? Could it make sense to disable those particular tests just for the CRAN release?

@khotilov Failure on x86 Solaris is somewhat acceptable by CRAN, since NMF hasn't been removed. I will try to get access to a real Solaris machine.

+1 to CRAN release, would be very helpful since the current version is from July 12.

Any updates on this? Have you sorted out the issue with raw test mismatch?

As mentioned by @yixuan in https://github.com/dmlc/xgboost/pull/1826#issuecomment-264056624, this error can be observed when R compiles with -O1 or -O2, and vanishes when using -O0.
I am considering about commenting out the related tests when submitting to CRAN.

Yeah I think we can submit it for now by commenting those out.
On Tue, Dec 13, 2016 at 10:56 PM Tong He<EMAIL_ADDRESS>wrote:

As mentioned by @yixuan https://github.com/yixuan in #1826 (comment)
https://github.com/dmlc/xgboost/pull/1826#issuecomment-264056624, this
error can be observed when R compiles with -O1 or -O2, and vanishes when
using -O0.
I am considering about commenting out the related tests when submitting to
CRAN.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dmlc/xgboost/issues/1812#issuecomment-266942825, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEEnSuPdkI1vGNyGEyLew3W5aieksvenks5rH3cLgaJpZM4K8HBx
.

I will do that in this weekend.

xgboost failed on solaris: https://www.r-project.org/nosvn/R.check/r-patched-solaris-x86/xgboost-00install.html
This is because the openmp support on CRAN machine.
Two solution: (1) disabled openmp; (2) add a separate autoconf script.

The first solution would make the package much weaker on CRAN, thus not really benefits the CRAN users.
@thirdwing can you help with the second solution?

see my repo https://github.com/thirdwing/xgboost/commit/e1af62c9d199cd8bb191d61c79350dd922b58efb
It should work on Solaris and Linux. Not sure about Windows.

i think it is fine to disable OpenMP on solaris because solaris is not used widely anyway. It is interesting that C++11 compiler in solaris is g++ instead of Solaris studio. We do need to make sure the checks pass in other OS

If you have CXX_STD = CXX11, the solaris will also use g++.
Actually I think it will be more complicated to disable openmp on only one OS.

What I intended to say is that this is the problem of current CRAN's solaris build system. see also my comment in https://github.com/dmlc/xgboost/pull/1880  By default, it should be the build system's job to switch off openmp by not passing anything in SHLIB_OPENMP_CFLAGS .
This happens in OSX automatically. Solaris have openmp support with solaris studio, but need to be able to disable it when c++11 is turned on. This is the problem of current build script, that affect every package with c++11 and openmp turned on

The problem is due to the wrong flag to enable OpenMP. For Solaris Studio the flag for OpenMP is -xopenmp, but for GCC it is -fopenmp. From the CRAN check log it can be seen that -xopenmp was passed to GCC.

That is why we need a configure script
On Dec 16, 2016 4:46 PM, "Yixuan Qiu"<EMAIL_ADDRESS>wrote:

The problem is due to the wrong flag to enable OpenMP. For Solaris Studio
the flag for OpenMP is -xopenmp, but for GCC it is -fopenmp. From the
CRAN check log it can be seen that -xopenmp was passed to GCC.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/dmlc/xgboost/issues/1812#issuecomment-267703484, or mute
the thread
https://github.com/notifications/unsubscribe-auth/ABebVQF57CG7_wdxjyoQ-vwSQCHiMZ7Jks5rIwaegaJpZM4K8HBx
.

Yep, and here is what I found: #1881 .

Currently xgboost 0.6-2 is on. The version number "2" is the need for the post-submission bug fixing.
However after the fixes from @yixuan and @thirdwing , installation on Solaris is still broken: https://cran.r-project.org/web/checks/check_results_xgboost.html.
Another issue is that DiagrammeR 0.9 will be on CRAN. It is also left to be tested to see if this update breaks xgboost.

@thirdwing Can you grab a VM to look into this?
The Sparc compilation error is due to lack of support of thread local in Sparc, which can be solved by optionally disable thread local macro here https://github.com/dmlc/xgboost/blob/master/src/common/thread_local.h#L22 to check solaris and simply define MX_TREAD_LOCAL to be empty

The segfault of x86 solaris is more mysterious, and we might need a reproducible example to see what exactly happened.

I only have the x86 VM. I will have a try if possible.

@tqchen I can't reproduce the error on the X86 solaris VM.

From the CRAN checking log, the error on X86 Solaris is from https://github.com/dmlc/xgboost/blob/master/R-package/src/xgboost_R.cc#L88
It involves the usage of openmp, so maybe we can try to disable openmp on solaris.

Let us do that

Let us also fix the thread local issue by patching the fix i mentioned

@thirdwing can you followup on this? I also noticed there is an error in windows, reporting conflicting defintition of fopen, do you know what happened there?

I am working on my own fork. The on Solaris doesn't support if ,which makes things much harder.

@thirdwing just opened a new PR (pending) for solaris: https://github.com/dmlc/xgboost/pull/1912 .
For the error on old release windows, the error message is
d:\compiler\gcc-4.6.3\bin\../lib/gcc/i686-w64-mingw32/4.6.3/../../../../i686-w64-mingw32/include/stdio.h:396:83: error: 'FILE* std::fopen(const char*, const char*)' should have been declared inside 'std'
d:\compiler\gcc-4.6.3\bin\../lib/gcc/i686-w64-mingw32/4.6.3/../../../../i686-w64-mingw32/include/stdio.h:396:83: error: declaration of 'FILE* std::fopen(const char*, const char*)'
d:\compiler\gcc-4.6.3\bin\../lib/gcc/i686-w64-mingw32/4.6.3/../../../../i686-w64-mingw32/include/stdio.h:395:17: error: conflicts with previous declaration 'FILE* fopen(const char*, const char*)'

I found several related previous issues:

https://github.com/dmlc/xgboost/issues/1174#issuecomment-225014458
https://github.com/dmlc/xgboost/issues/1267

Hope someone can shed light on it.

@hetong007 I suggest adding Depends: R (>= 3.3.0), so we do not need to worry about old windows release.

There have been some updates and typo fixes to docs. Could you also
regenerate the docs before resubmitting the package?
On Fri, Dec 30, 2016 at 11:24 PM Qiang Kou (KK<EMAIL_ADDRESS>wrote:

@hetong007 https://github.com/hetong007 I suggest adding Depends: R (>=
3.3.0), so we do not need to worry about old windows release.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dmlc/xgboost/issues/1812#issuecomment-269783689, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEEnSoOWt6Ibojz7_HfUsLX5ZJ9QEFwhks5rNSI8gaJpZM4K8HBx
.

There are some plot-related errors on R 3.3.2 when checked by win-builder: https://win-builder.r-project.org/Oc7UhRHG4Y2w/00check.log (link will expire after roughly 72 hours).
However the check on R-devel is fine: https://win-builder.r-project.org/qG0ASTr2Yd45/00check.log
The errors, e.g. Error: 'graph_from_data_frame' is not an exported object from 'namespace:igraph', are not reproducible on Linux. I will compile and check it on a windows machine later today to see if this is actually caused by win-builder.

Please also update this https://github.com/dmlc/xgboost/blob/master/R-package/vignettes/xgboost.Rnw#L24

You should use something like xgboost.version <- packageDescription("xgboost")$Version

We are getting closer. Now errors only come from Old Windows release and Sparc Solaris: https://cran.r-project.org/web/checks/check_results_xgboost.html
My opinions are as follow:
(1) We don't need to care much about old Windows release;
(2) Sparc Solaris failed in https://github.com/dmlc/xgboost/blob/master/R-package/tests/testthat/test_helpers.R#L86
The simplest solution is to disable this test on Solaris by detecting Sys.info()[['sysname']].

We are getting closer. Now errors only come from Old Windows release and Sparc Solaris: https://cran.r-project.org/web/checks/check_results_xgboost.html
My opinions are as follow:
(1) We don't need to care much about old Windows release;
(2) Sparc Solaris failed in https://github.com/dmlc/xgboost/blob/master/R-package/tests/testthat/test_helpers.R#L86
The simplest solution is to disable this test on Solaris by detecting Sys.info()[['sysname']].


region-k-means

New algo that gives us k-connected components following k-means logic.
We may want to move some of the helper functions out of this module, but this gets us moving.

Looks goo to me. One question, are we gonna use some of the stuff present in https://github.com/pysal/region/blob/master/region/csgraph_utils.py?


Give map a focus-outline in accessible-example

This makes it easier to see if the map-element currently has the focus:

+1

Thanks for the review.


Feature/update travis

Updates travis configuration and parallelises the tox suite

@JoelLefkowitz Just an FYI, when the tox env's were moved to scripts, Windows developers can no longer run them. That is one advantage of using tox for things such as tox -e lint as it is cross platform.


New Operations: JWK conversion from/to PEM

Transforms a key in PEM format to a JSON Web key or
a JWK back to its PEM format

Updated to current sources, added some more tests and fixed some conversion problems

Rebased to the current sources. Looks like there is something wrong with the UI tests:

An error occurred while creating a new ChromeDriver session: [SessionNotCreatedError] session not created: This version of ChromeDriver only supports Chrome version 114

Current browser version is 117.0.5938.132 with binary path /usr/bin/google-chrome

Rebased to the current master sources. This fixes #1794

Tried it out with a few JWKs and a few PEMs.  This is a nice implementation!  Thanks so much for the contribution, apologies it's taken three years to merge this in.


Get the Playwright version from the package.json

To run the end-to-end tests we execute Playwright using a spcific Docker tag. To know the docker tag that we need to use, we read the Playwright Docker image tag from a file placed in the root of the project. This provokes that everytime @dependabot creates a pull request updating the @playwright/test package, tests fail because the Playwright Docker image is outdated.
In this pull request, we read the Playwright version from the same package.json and in this way, we can remove the necessity of having the .playwright_docker_version at all.

coverage: 99.735%. remained the same
when pulling 8b064795ac1497605aa23e9c9fedf6d88cba515f on get_playwright_version_from_package_json
into 5281dc0e86480789f1b3d76f55936caa458d9a01 on master.


typo "create" not "creat"

If a comment has a typo, should I bother to correct it? Or is such a small modification more trouble than its worth to approve? Please advise.

This got fixed in #690. Thanks for the PR!


upgrade antrea to v1.13.0

k8s.io/apimachinery/pkg/util/sets.String was deprecated, and replaced with sets.Set[string]. sets.String.List() was replaced with sets.List(sets.Set[string]). Similar changes happened on sets.Int32, sets.Int64
k8s.io/apiserver/pkg/registry/rest.Storage interface added requirement on implementation of Destroy() method
k8s.io/client-go/tools/remotecommand.Executor.Stream was deprecated, and replaced with StreamWithContext
NetworkPolicy struct is updated from crdv1alpha1 to v1beta1
ANPAppliedToSpec is renamed to ANNPAppliedToSpec
"k8s.io/kubectl/pkg/cmd/cp" changed the way to take the parameter args. CopyOptions no longer takes the parameter args in copyOptions.Run.  User's defined args are used in copyOptions.Complete instead.

Signed-off-by: Yun-Tang Hsu<EMAIL_ADDRESS>

/theia-test-e2e

/theia-test-e2e

/theia-test-e2e

/theia-test-e2e


Add a setting option to specify the module directory

As proposed in #5, it would be nice if one could set the module directory (-J gfortran option) in the package settings.

...maybe even for each project individually, but I don't know how this could work. Just an idea!

Yes, that could be nice. We could follow the linter-clang/linter-gcc approach here and have a per-project configuration file (.clang_complete and a JSON file for linter-gcc)

For per-project settings in other linters we defer people to project-manager (at least until Atom finally brings in support natively for per-project settings).
This would of course still require a setting for this to be added first 😉.

I recently switched from Sublime Text to Atom (best decision ever) and, even though the linter-gfortran works great for most cases, I'm still getting some troubles when dealing with modules. The compiler cannot find the associated .mod files (naturally) and the only solution that is working for me is to just open all the module files, temporarily solving the issue. Anyone has any suggestions on how to solve this?

is #5 not working? When I tried it, the modules were found!

Unfortunately no, I already tried the following settings and it just stops working and doesn't detect any errors. I'm using gfortran v7.2, can this be a problem?

hmm... I tried it with fortran 4.9.2 and it works. In this answer, the J-flag is the first one. Maybe this works?

That thread includes a very useful information with regard to the use of the "J" flag. :+1:
Meanwhile I've tested the gfortran-5 and the linter still doesn't work. Although I think I now the source of the problem: I have some modules using other modules and those dependencies are not provided with the -J flag.
Any idea on how to solve this?

hm, you could link all .mod files into a seperate directory where only linter checks for the modfiles. This directory will be ignored during you compiling routine but be visible for linter itself. I would be interested, if this works! :-)


⚠ Bofrost.at has degraded performance

In 07af6e1, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1010 ms

Resolved: Bofrost.at performance has improved in d59e9b3 after 8 minutes.


[Bug Report] Fake players is invalid

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:
Fake players is invalid
Screenshots

Server Software and Version:

Vendor: Purpur、paper
Minecraft Version: 1.18.1

Additional context
Add any other context about the problem here.

Issue template not properly filled out

Incompatible with superVanish plugin


[FEATURE] Add IsFromMockProvider (or similar name) to Position object

[FEATURE] On Android, a Location object has the IsFromMockProvider property, would it be possible to carry/include that on the Position object as well?
If other platforms than Android don't have the possibility of GPS positions being from mock providers, then maybe Position.IsFromMockProvider could be nullable and set to null for those or just set to False (if nullable is undesirable).

No plans to do this

Alright, bummer - it was a nice plugin though. I'll just write a small warning below, so other developers maybe wont get as far as me using the plugin, before realizing the functionality is missing.
WARNING! If you are developing an App (for Android) that needs to do as much as possible to ensure the positions are coming from the GPS and not from a simulator App running in the background, the GeolocatorPlugin is not ideal.


Add psc-ide-server arguments and pass src to psc-ide-server

Should fix:
https://github.com/ethul/purs-loader/issues/79
For me this is also required for psc-ide-vim to work with the psc-ide-server instance started by purs-loader.

Thanks for the PR. I think the addition of the server args is a good one. However, I am wondering if we should not add the src globs by default since it is mentioned in #79 that doing this adds lag. Perhaps we can allow the user to configure it if desired.

Just so you know, only the initial load command is affected. Rebuilding shouldn't be any slower.

Thanks for the info @kRITZCREEK. Out of curiosity, on a large project, would it be a noticeable delay during load?

Simple solution is to conditionally add the globs to psc-ide-server, put it
behind a flag. Default to true, then if it slows down the flag can be
disabled.
On Sun, Jan 8, 2017, 11:47 eric<EMAIL_ADDRESS>wrote:

Thanks for the info @kRITZCREEK https://github.com/kRITZCREEK. Out of
curiosity, on a large project, would it be a noticeable delay during load?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ethul/purs-loader/pull/80#issuecomment-271166475, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAzdmYmnnXatGGXbBlUjZZDJW0tGUkfgks5rQSEngaJpZM4Lc3r6
.

You could also override the globs by passing {"_": []} as pscIdeServerArgs

Good points all. @kozak I think that makes sense. Perhaps it would be worth adding your comment as a note in the README. Would you be okay to add this to your PR?

Done.

Looks great. Thanks!

Thanks @kozak!


feat: force login on space creation last step

Currently if someone try to create a space unlogged it will trigger login modal but after space trying to create an progress will be lost, we should instead force login before going on next step of the flow.

I cannot reproduce it, right now if you are not signed in it opens this popup after creating Create button as it's calling contracts to predict space address. I can't access this screen while unlogged.

Are we doing same? https://www.loom.com/share/0f0472f30a3b4da1ab3ec480140378e6

@bonustrack I think so.
Can you check what is happening there once you click submit?
https://github.com/snapshot-labs/sx-ui/blob/7ee8c477b957f5ffc065f8f97f1df6b16fa3cfdd/src/composables/useActions.ts#L59-L62
Does it return early here or somewhow web3.value.account has some data?
Could you also test with this branch?
https://github.com/snapshot-labs/sx-ui/compare/sekhmet/confirming-after-space?expand=1
If there is something wrong with web3.value.account this branch won't change anything though.

@Sekhmet For some reason I can't reproduce anymore

@aurelianoB Can you still reproduce this issue?

Cannot reproduce either. I get prompted to log in with wallet before finishing the space creation


SAMZA-2584: Refactor ClusterBasedJobCoordinator

Issues: In the deployment flow of a beam job, we will have a complicate flow: ClusterBasedJobCoordinator#main -> Beam main class -> JobCoordinatorLaunchUtil -> ClusterBasedJobCoordinator.
Changes:

Move ClusterBasedJobCoordinator#main to ClusterBasedJobCoordinatorRunner#main
Update run-jc.sh to invoke ClusterBasedJobCoordinatorRunner

Tests:

unit tests
Deployed hello samza job successfully with the change following instructions on http://samza.apache.org/startup/hello-samza/latest/

API Changes: None
Upgrade Instructions: None
Usage Instructions: None

Can you merge with the latest master head? ClusterBasedJobCoordinator has locality refactor changes?


Non Rigid registration

Hi all,
We know from documentation that non-rigid registration needs a moving_img and a fixed_img argument.
Under the example scripts folder https://github.com/MathOnco/valis/blob/main/examples/register_ihc.py in line 60, both non-rigid and rigid registrations happen, but I see no specification of fixed_img and moving_img arguments. Are they just picked randomly? Or can someone give us some example script showing how to play around with non_rigid registration parameters and input?
Thanks in advance for looking into this.
Cheers,

Hi @simomounir,
Apologies for the delayed response, but to answer your question, how Valis determines what the moving and fixed images are will depend on the number of images and what arguments are used. If aligning two images, the "fixed_img" can be specified by setting reference_img_f to the filename of the fixed image, and align_to_reference=True when creating the Valis object. In this case, the "moving" image will be the other image. However, if reference_img_f=None, then the fixed image is the 1st image in the directory, and the 2nd image is moving image. Alternatively, if one provides a list of paths to the images (the img_list argument) in addition to src_dir, then the 1st image in img_list will be the fixed image, and the 2nd image will be the moving image.
Things get a bit more complicated when there are more than 2 images, . The default assumption is that the images are un-ordered (imgs_ordered=False, e.g. not a 3D image stack) and there is no reference image (reference_img_f=None). Given these parameters, Valis will sort the images by similarity, such that each image's neighbors in the z-stack are similar to that image. The images then are aligned from the center out. For example, if there are 5 images, the first fixed image is 3, and the first moving image is 2, which after warping becomes 2', which I'll indicate as 2 -> 3 = 2', or moving -> fixed = registered moving. Image 2' now becomes the fixed image, and 1 is the new moving image, i.e. 1 -> 2' = 1'. The process then gets repeated for the other half of the stack, i.e. 4 -> 3 = 4', 5-> 4' = 5'. In this case, the center image is always a fixed image, and never a moving image.
If a reference image is specified (i.e. reference_img_f is not None) and  align_to_reference=False, then  reference_img will always be a fixed image, and never a moving image. For example, if reference_img_f is Image 2, then the alignment would go 1 -> 2 = 1', 3 -> 2 = 3', 4 -> 3' = 4', 5 -> 4' = 5'.
If a reference image is specified (i.e. reference_img_f is not None) and  align_to_reference=True, then  all images get aligned to the reference_img, i.e. 1 -> 2 = 1', 3 -> 2 = 3', 4 -> 2 = 4', 5 -> 2 = 5', again assuming Image 2 is the reference image.
Finally, if imgs_ordered=True, then Valis will not sort the images based on similarity, but will sort them alphanumerically based on their filename, which is often how serial slices from 3D tissues are named. So, in this case, the alignment would go 2 -> 1 = 2', 3 -> 2' = 3', 4 -> 3' = 4', 5 -> 4' = 5'.
Sorry there isn't really a simple answer to your question, but I hope the above helps clarify how Valis determines what is the fixed and moving images. But please let me know if you have any other questions or would like some more clarification.
Best,
-Chandler


Update machine-learning-r-csharp-retail-demand-forecasting.md

edit for freshness

Hi @jaymathe, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (jaymathe). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, or work for Microsoft Open Technologies, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;


please return the cover image file name

I know I can get the image by reader.getCoverImage(),
but how about the file name,
if we don't know the file extension, reader.getCoverImage() is useless.
can you add a method to  return the cover image file name?

reader.getCoverImageFileName() method will be available in the next version.


_fileobject.read() is pretty badly broken

There are several significant issues here:

Depending on timing, when read() is called and the remote end terminates its SSL connection cleanly, SSLZeroReturnError will be raised to the user and the final bytes of the stream are lost forever.
            data = _safe_ssl_call(False, self._sock, 'recv', maxbufsize)
            if not data:
                break

In the above snippet, the second line will not execute when SSLZeroReturnError is raised.  data is a local variable and its contents are lost.

There are identical code patterns which need fixing in _fileobject.readline() as well (maybe other places too, I'm not sure).

In the case size < 0, read() does not keep the contract of reading until EOF.
    if size < 0:
        # Read until EOF
        self._rbuf = BytesIO()  # reset _rbuf.  we consume it via buf.
        data = _safe_ssl_call(False, self._sock, 'recv', rbufsize)
        buf.write(data)
        return buf.getvalue()

In the above snippet, the comment is mistaken.  There would have to be a loop for it to be true.  No more than rbufsize additional bytes are read from the channel.

Hi
Is this related?
https://github.com/mjs/imapclient/issues/268


Update MD file on new branch 2017-11-14_21-29-52

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

split/updateTestRef1.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[Question] How to initiate a conversation on WebChat when user connects?

System Information (Required)

SDK Language: .NET
Development Environment: App Service

Issue Description
Hello
I want bot to greet user as soon as s/he clicks on the link to webchat. How would bot service know that a conversation has been initiated even before it is invoked.
There is some information below but webchat works like an anonymous channel hence the channel account id may get changed.
https://docs.microsoft.com/en-us/bot-framework/dotnet/bot-builder-dotnet-connector
Thanks

Hi @neetgupta7
When the WebChat loads, it will send an activity to the bot that is of type ConversationUpdate.  Your bot can watch for this and respond accordingly.  Here is an example:
 if (message.Type == ActivityTypes.ConversationUpdate)
{
    IConversationUpdateActivity iConversationUpdated = message as IConversationUpdateActivity;
    if (iConversationUpdated != null)
    {
        ConnectorClient connector = new ConnectorClient(new System.Uri(message.ServiceUrl));

        foreach (var member in iConversationUpdated.MembersAdded ?? System.Array.Empty<ChannelAccount>())
        {
            if (member.Id == iConversationUpdated.Recipient.Id)
            {
                var reply = message.CreateReply("I'm a bot.");
                await connector.Conversations.ReplyToActivityAsync(reply);
            }
        }
    }
}


daemon: Prevent endpoint-routes and tunneling

Tunneling mode hasn't been fully figured out with endpoint-routes mode,
which results in various issues like applying policy twice on traffic
coming into a node or other weird problems. Prevent users from
configuring this option for now until we resolve those issues.
Ref: https://github.com/cilium/cilium/issues/16446
Ref: https://github.com/cilium/cilium/issues/14657
Ref: https://github.com/cilium/cilium/issues/14955

It appears that this is the default in OpenShift deployments today. Further investigation needed to resolve that before we go and disable this combination.

What concerns me a bit is that I don't think we ever specifically decided that this combination is safe enough for users to run, so anyone who's running it out there today is liable to hit a range of weird & wonderful issues, and Cilium won't give any sort of indication that they're running a combination with known issues.
Is there a middle ground where this is an Error() instead of a Fatal()?

Maybe to be a bit more clear also, this is an attempt to just give users a heads up that there might be a problem in case they hit an issue, assuming that properly fixing this combination of configurations will take a bit longer. If the fixes are almost done then I'll happily discard this PR.

Is there a middle ground where this is an Error() instead of a Fatal()?

@joestringer Could we at least Warn users about possible consequences? Otherwise, users might be running e.g., into https://github.com/cilium/cilium/issues/16446, and such issues is not so easy to debug / obvious for users.

@brb I had avoided this since it's pointless warning users who have no knowledge or control over the flag, in particular OpenShift where we set this combination by default. If we change that default, then yeah adding an error/warning seems reasonable.


Add NEWM circulating supply

Addresses/information sent from Andrew Westberg of NEWM team

@hieupnh Why was this closed instead of merged?


the cilium intalled fail on latest version

this is the k8e log
Oct 10 17:13:17 VM-0-118-ubuntu k8e[11777]: E1010 17:13:17.030292   11777 pod_workers.go:965] "Error syncing pod, skipping" err="failed to "CreatePodSandbox" for "metrics-server-74474969b-45hmf_kube-system(6e500cfa-1ea8-4097-8c75-ca6c551810d6)" with CreatePodSandboxError: "Failed to create sandbox for pod \"metrics-server-74474969b-45hmf_kube-system(6e500cfa-1ea8-4097-8c75-ca6c551810d6)\": rpc error: code = Unknown desc = failed to setup network for sandbox \"3580f149a703582240f49bfbc26ff54cf7d2e85012fda5547e632a369471a9f9\": plugin type=\"cilium-cni\" name=\"cilium\" failed (add): unable to connect to Cilium daemon: failed to create cilium agent client after 30.000000 seconds timeout: Get \"http:///var/run/cilium/cilium.sock/v1/config\": dial unix /var/run/cilium/cilium.sock: connect: no such file or directory\nIs the agent running?"" pod="kube-system/metrics-server-74474969b-45hmf" podUID=6e500cfa-1ea8-4097-8c75-ca6c551810d6

ubuntu 22.04

please found /etc/cni/net.d/05-cilium.conf and I deleted it on all nodes，systemctl restart k8e, The cluster will back to normal. have a try

@snakeliwei hi buddy,
Please do me a favor to testing the cilium install works:
cilium uninstall

cilium install --helm-set-string=ipam.operator.clusterPoolIPv4PodCIDR="<IP_ADDRESS>/16",kubeProxyReplacement=strict

for my ubuntu 22.04, it works.
and k8s install.sh already update right now.

It is work on master node , but another error occurs on work node install.  here is the cilium pod log.
level=info msg="Auto-disabling \"enable-bpf-clock-probe\" feature since KERNEL_HZ cannot be determined" error="Cannot probe CONFIG_HZ" subsys=daemon
level=info msg="Using autogenerated IPv4 allocation range" subsys=node v4Prefix=<IP_ADDRESS>/16
level=info msg="Initializing daemon" subsys=daemon
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=info msg="Establishing connection to apiserver" host="https://<IP_ADDRESS>:6443" subsys=k8s
level=error msg="Unable to contact k8s api-server" error="Get \"https://<IP_ADDRESS>:6443/api/v1/namespaces/kube-system\": dial tcp <IP_ADDRESS>:6443: connect: connection refused" ipAddr="https://<IP_ADDRESS>:6443" subsys=k8s
level=fatal msg="Unable to initialize Kubernetes subsystem" error="unable to create k8s client: unable to create k8s client: Get \"https://<IP_ADDRESS>:6443/api/v1/namespaces/kube-system\": dial tcp <IP_ADDRESS>:6443: connect: connection refused" subsys=daemon

It seems the the k8s api url is untouchabled..

Thanks your report, k8sServiceHost is bad idea for settting, it will add more effort on our deploymnet. i will dig some way to overcome this settings pain.

@snakeliwei  with many case with cilium kubeProxyReplacement=strict
I have add env API_SERVER_IP cilium cni插件需要指定api-server的IP, 必须是主机IP to install.sh
Now k8e fully support cilium ctl 1.12


[KeyVault] - Replace keyId: URL with certificateKeyId: string

what

Deprecate secretProperties.keyId and replace it with secretProperties.certificateKeyId
Remove dom from tsconfig

why
secretProperties.keyId being a URL is the only reason we need dom lib in this library.
Even though it has never been populated we cannot remove it because we might break
someone's compilation (although it would have never worked at runtime).
Instead we'll deprecate it, note that it will always be undefined, and make it an unknown so
we can remove the dependency on dom.
Refer to #9639 for previous work in this area.
Resolves #10726

@bterlson  / @xirzec - mind giving this a quick look when you have a second? I want to make sure this isn't harmful. Context here is: we had a property keyId?: URL which is the only reason we needed to pull in dom but it was never actually populated at runtime.
We can't remove the field entirely to avoid breaking compilation (see #9639) so we deprecate it, make it unknown, and introduce a better named field that's a string instead (also taken from feedback on #9639). Then we can remove dom as a dependency?


Project contributors do not have access to the Wiki repository

"By default, all project contributors have read and edit access of the wiki repository. "
This is not true for my team members.
I have tried adding them to the Contributors group (they were already added) and I have tried adding individual users to the wiki to no avail.
Do you have any suggestions here? How should I set the permissions of the Access Control Summary?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: c86f5178-e331-f45e-b60a-f0f3955f7a08
Version Independent ID: 8a0882a7-8f48-32bb-c741-12976b428c38
Content: Manage permissions for READMEs and wiki pages in Azure DevOps - Azure DevOps
Content Source: docs/project/wiki/manage-readme-wiki-permissions.md
Product: devops
Technology: devops-collab
GitHub Login: @chcomley
Microsoft Alias: chcomley

Hi @jarlarntzen, Thanks for reaching out. I've engaged our PM, @adramasu, for his expertise. Thanks!

Hi @jarlarntzen, can you please check if the permissions "Contribute" and "Read" are in allow state?

Hoping you got this figured out, however if we've missed you, please respond and we can reopen this issue. Thanks very much.


Migrate csv capabilities to separate package

I meant to open the upstream PR against a feature branch in this repo not the main branch, leading to me making PRs here 🤦 (want to see passing CI instead of pushing to main).

As it stands now, fuzz tests pass when comparing results to the stdlib with LazyQuotes enabled, but the memory performance gains are now slight, and CPU performance is down quote a lot. I wonder if there are better options here (I think the use of copy within read() is what the main issue, but I haven't characterized it yet.


Add alternative delimeter for X/Y plot script

Problem: when using X/Y plot script comas parsed as plot delimeter
Suggestion:
-make an option to use alternative delimeter, for examle "||" (can conflict with infinite tables), "//", "..." or anythin that user specifies in settings
-rework prompt_parser.py to hijack promp before X/Y script
Example of "[girl:dragon:0.1,0.5], " Prompt S/R

it shoud be [girl :  dragon] but github decided to insert emoji in my message, while it is cute yet confusing

X/Y/Z values are CSV entries. To put comas, you can put an entry in quotes like this:
"[ girl : dragon : 0.1 , 0.5 ]"," "

oh thank you


Show artifact versions

What this PR does / why we need it:
This PR changes to show artifact versions with links.

Which issue(s) this PR fixes:
A part of https://github.com/pipe-cd/pipecd/issues/3303
Does this PR introduce a user-facing change?:

Be able to show artifact versions with links

Love this!
What do you guys thing about changing the layout of the version?
For example, v0.6.0 (helloworld) -> helloworld:v0.6.0.

Btw, should we trim the version in case it is too long?
Like commit hash, we should show only the first 7 characters.
helloworld:36515f2... instead of helloworld:sha36515f2d60ad86cc1f7b7e8d97e935741e5cf9f1

Love this!
What do you guys thing about changing the layout of the version? For example, v0.6.0 (helloworld) -> helloworld:v0.6.0.

I see, may be helloworld:v0.6.0 style is natural for users because they often show that style in artifact files (e.g. k8s manifest).

Btw, should we trim the version in case it is too long?
Like commit hash, we should show only the first 7 characters.
helloworld:36515f2... instead of helloworld:sha36515f2d60ad86cc1f7b7e8d97e935741e5cf9f1

I agree with it!

How about the above?

How about the above?

@khanhtc1202 @knanao what do you think?

yeh, one vote from me. Please go ahead and address it 🙏

These are after fixed.

nits, I think we should only trim the long text as it's a table cell content. On the detail page, we should just show it clearly, wdyt?

I see! Then I'll fix to truncate it in case the long text over the size of the table cell.

On the detail page, I fixed it to show full version info and split them into multiple lines.

Looks beautiful! ❤
/lgmt

sorry I found some mistakes, so I'll fix

I fixed, PTAL. 🙇

👍
/lgtm

it's beautiful, thank you 😀
/approve


feat(module): improve parsing rules

:tada: This PR is included in version 1.32.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Separate field for folder in file search

Issue Type: Feature Request
The global search should have a separate field for the folder(s) to search in. That makes it possible to independently specify the files to search for and by that simplifies the UI.
Use case: I want to search for files with specific extensions in several different folders. To do so I currently have to write something like this:
/path/to/folder1/*.foo, /path/to/folder1/*.bar, /path/to/folder2/*.foo, /path/to/folder2/*.bar, /path/to/folder3/*.foo, /path/to/folder3/*.bar
With this feature, I'd enter "*.foo, *.bar" in the files field and "/path/to/folder1/, /path/to/folder2/, /path/to/folder3/" in the folders field.
Sebastian
VS Code version: Code 1.38.0 (3db7e09f3b61f915d03bbfa58e258d6eee843f35, 2019-09-03T21:49:13.459Z)
OS version: Windows_NT x64 10.0.18362

A use case that would also be solved by having separated fields, which currently doesn't seem to be possible:
Search by file names in different folders recursively.
Say, I want to search in two different directories including all their subdirectories within specific files, then this seems currently not to be possible.
So, taking the example above, "*.foo, *.bar" in the files field and "/path/to/folder1/, /path/to/folder2/, /path/to/folder3/" in the folders field would ideally differ from the current /path/to/folder1/*.foo, /path/to/folder1/*.bar, /path/to/folder2/*.foo, /path/to/folder2/*.bar, /path/to/folder3/*.foo, /path/to/folder3/*.bar in that files would also be searched in subdirectories of folder1, folder2, and folder3.
I've just created a question on Stack Overflow at https://stackoverflow.com/q/60053690/432681 asking whether that's actually possible with the current implementation.
Sebastian

See my comment on SO about using a globstar so that
/path/to/folder1/**/*.foo, /path/to/folder1/**/*.bar etc. would search in all subdirectories of the folder1 within files with either the foo or bar extension.  Seems to work in my testing.


Feedback: Text Dialog Box for VM Size Selection with Guidance

Consider adding a text box above VM Size / SKU selection to possible provide quick reference to AVD Sizing guidelines:
https://learn.microsoft.com/en-us/windows-server/remote/remote-desktop-services/virtual-machine-recs
"For additional guidance on sizing your VM click here."

@JCoreMS thanks for the feedback, we added an infobox with the VM sizing information.


Improvement in User interface of login page

Is there an existing issue for this?

[X] I have searched the existing issues

What happened?
Please assign me this issue under GSSoC'24 , I'm actively looking for your reply . I want to contribute
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

Assigned! @Deekshashakyawal
Make sure to attach before & after screenshots in your PR and include the issue number.
Also, please star the repo before working on it. Happy open-source contributing!


Add new API so it's possible to not leak a key

for CFTypes we need copy in front of them, otherwise it leaks

ignore the comments - going to just do them all in a commit and see if that works better

re-rolling in #36430


Build system upgrade.

Closes #4
OpenSSL upgraded to v1.1.
Compatibility with boost 1.70 added.

src/makefile.unix needed for unit tests - https://github.com/neiros/TDC/blob/TDC/src/test/README.md


Add new page section for integration posts

Just like how we have a blog folder for blog posts on the marketing site we should make one for integration posts. 1 of which has now been created.

Please assign to me

All your @vishalkhoje :)

Hello @ageddesi ,
Could you provide additional information regarding the specific tasks for this ticket?

Creating a new integration page.
What content needs to be included in the post?
Do we need to add the newly created link to the header or any other location?
Need to create any form?

Hello @ageddesi
can you please suggest above is ok?

Thats perfect, then we can add posts that are specific for integrations. There should be one in a top level folder allready to go.

Hi @ageddesi ,
Can you please review PR


tpm2-tools: tss2_provision tries to write to /nix/store/

Describe the bug
tss2_provision is unable to create keystore policy directories, and fails to init the on-disk keystore.
Steps To Reproduce
Steps to reproduce the behavior:

Run nix-shell -p tpm2-tools --run tss2_provision
Observe that the provision fail.

Expected behavior
I would expect the keystore to be provisioned from my TPM, without any error messages.
Screenshots
[nix-shell:~]$ tss2_provision
WARNING:fapi:src/tss2-fapi/ifapi_io.c:339:ifapi_io_check_create_dir() Directory /nix/store/kxm3gzg8fz2r25z94pzbah5zf1knbk0v-tpm2-tss-3.2.0/var/lib/tpm2-tss/system/keystore/policy does not exist, creating
ERROR:fapi:src/tss2-fapi/ifapi_helpers.c:1053:create_dirs() mkdir not possible: -1 /nix/store/kxm3gzg8fz2r25z94pzbah5zf1knbk0v-tpm2-tss-3.2.0/var/lib/tpm2-tss/system/keystore/policy
ERROR:fapi:src/tss2-fapi/ifapi_helpers.c:1080:ifapi_create_dirs() ErrorCode (0x0006000b) Create directories for /nix/store/kxm3gzg8fz2r25z94pzbah5zf1knbk0v-tpm2-tss-3.2.0/var/lib/tpm2-tss/system/keystore/policy
ERROR:fapi:src/tss2-fapi/ifapi_io.c:342:ifapi_io_check_create_dir() ErrorCode (0x0006000b) Directory /nix/store/kxm3gzg8fz2r25z94pzbah5zf1knbk0v-tpm2-tss-3.2.0/var/lib/tpm2-tss/system/keystore/policy can't be created.
ERROR:fapi:src/tss2-fapi/ifapi_policy_store.c:115:ifapi_policy_store_initialize() ErrorCode (0x0006000b) Policy directory /nix/store/kxm3gzg8fz2r25z94pzbah5zf1knbk0v-tpm2-tss-3.2.0/var/lib/tpm2-tss/system/keystore/policy can't be created.
ERROR:fapi:src/tss2-fapi/api/Fapi_Initialize.c:212:Fapi_Initialize_Finish() ErrorCode (0x0006000b) Keystore could not be initialized.
Fapi_Initialize(0x6000B) - fapi:A parameter has a bad value

Additional context
These error message are also showed when using OpenSSH with the PKCS11 provider, see https://nixos.wiki/wiki/TPM.
Notify maintainers
@delroth
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 5.15.68, NixOS, 22.05 (Quokka), 22.05.3180.9bdbbaa634a`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.8.1`
 - channels(root): `"home-manager-22.05.tar.gz, nixos-22.05, nixos-hardware, nixos-unstable"`
 - channels(erdnaxe): `""`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

I have found a workaround for this.
The tss2 utils are using /nix/store/...-tpm2-tss-3.2.0/etc/tpm2-tss/fapi-config.json for its config. This can be overridden with the TSS2_FAPICONF environment variable.
To fix the issue, set the TSS2_FAPICONF environment variable to the path to a copy of the aforementioned config file, but with "nix/store/...-tpm2-tss-3.2.0" stripped from the values of the "system_dir" and "log_dir" keys (note that "profile_dir" should keep the store path).
The package should be fixed so that it's config file works out of the box, though for now this workaround works.
If someone who is using this could look into fixing it, that would be great, as I have ended up not using it due to it not supported by my TPM.

I have a nixos module to apply the workaround here: https://github.com/accelbread/config-flake/blob/7d23c5b9ecb560ebb10b6df3f2006db224a704a6/nix/nixosModules/tpm2-tss-fapi.nix

can the fix for this be upstreamed? I have the same problem


Allow setting httpOnly

There is currently no support for setting httpOnly on cookies in write(), with an explicit assert saying it's not useful.
While what it says is true and you won't be able to read them from inside Ember, there are still useful reasons you might want to set a httpOnly cookie, e.g. if it is generated by the client but only needs to be readable by a backend service/API.
(If you prefer to keep the assert, it could instead be an option like yesReallyHttpOnly passed into write() that causes it to allow writing one, I just need some way to do it)

It does appear that you can't set httpOnly in a browser, which makes sense.  We're using this inside fastboot (copying the cookies from a login fetch() response back to the fastboot response so that the client gets them).  So I could lave the assert but wrap it in a check for !isFastBoot?

Updated to allow httpOnly only in fastboot, show the assert in a browser, test both sides appropriately, and pull out the redundant header stuff into a separate PR.

I was just trying to minimize the change keeping the options checking in itValidatesWriteOptions(), but sure, moved to 2 separate tests in "in the browser" and "in the FastBoot server".

thanks 🎉


Implement fast slow metrics.

Register the fast and slow metrics.

This change is

Closes: #256


doc: switch back to libclang to avoid hardcoding LLVM version

The libclang package has an embedded copy of libclang, which allows us to avoid requiring the system to have a particular clang version.  This didn't work before because the lib_search_dirs logic in conf.py was clobbering a working path with a broken one.  That logic is no longer needed, so just remove it.
Tested on Fedora 38 and Ubuntu 22.04, but not specifically tested with Read the Docs.

Oh nice. Let's try this!

Sadly this breaks on readthedocs with what looks like a clang14 / clang16 mismatch error:
clang.cindex.LibclangError: /usr/lib/llvm-14/lib/libclang.so.1: undefined symbol: clang_CXXMethod_isDeleted.
Please ensure that your python bindings are compatible with your libclang.so version.

The build error report says:
>>> python -m sphinx -T -E -b html -d _build/doctrees -D language=en . $READTHEDOCS_OUTPUT/html
Running Sphinx v7.2.6
making output directory... done
WARNING: html_static_path entry '_static' does not exist
building [mo]: targets for 0 po files that are out of date
writing output...
building [html]: targets for 7 source files that are out of date
updating environment: [new config] 7 added, 0 changed, 0 removed
reading sources... [ 14%] api

Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 4255, in register_function
    func = getattr(lib, item[0])
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/.asdf/installs/python/3.11.4/lib/python3.11/ctypes/__init__.py", line 389, in __getattr__
    func = self.__getitem__(name)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/.asdf/installs/python/3.11.4/lib/python3.11/ctypes/__init__.py", line 394, in __getitem__
    func = self._FuncPtr((name_or_ordinal, self))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: /usr/lib/llvm-14/lib/libclang.so.1: undefined symbol: clang_CXXMethod_isDeleted

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/cmd/build.py", line 298, in build_main
    app.build(args.force_all, args.filenames)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/application.py", line 355, in build
    self.builder.build_update()
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 293, in build_update
    self.build(to_build,
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 313, in build
    updated_docnames = set(self.read())
                           ^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 420, in read
    self._read_serial(docnames)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 441, in _read_serial
    self.read_doc(docname)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/builders/__init__.py", line 498, in read_doc
    publisher.publish()
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/core.py", line 217, in publish
    self.document = self.reader.read(self.source, self.parser,
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/io.py", line 105, in read
    self.parse()
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/readers/__init__.py", line 78, in parse
    self.parser.parse(self.input, document)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/parsers.py", line 81, in parse
    self.statemachine.run(inputlines, document, inliner=self.inliner)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 170, in run
    results = StateMachineWS.run(self, input_lines, input_offset,
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/statemachine.py", line 240, in run
    context, next_state, result = self.check_line(
                                  ^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/statemachine.py", line 452, in check_line
    return method(match, context, next_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2779, in underline
    self.section(title, source, style, lineno - 1, messages)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 327, in section
    self.new_subsection(title, lineno, messages)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 393, in new_subsection
    newabsoffset = self.nested_parse(
                   ^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 281, in nested_parse
    state_machine.run(block, input_offset, memo=self.memo,
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 196, in run
    results = StateMachineWS.run(self, input_lines, input_offset)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/statemachine.py", line 240, in run
    context, next_state, result = self.check_line(
                                  ^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/statemachine.py", line 452, in check_line
    return method(match, context, next_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2352, in explicit_markup
    nodelist, blank_finish = self.explicit_construct(match)
                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2364, in explicit_construct
    return method(self, expmatch)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2101, in directive
    return self.run_directive(
           ^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/docutils/parsers/rst/states.py", line 2151, in run_directive
    result = directive_instance.run()
             ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/sphinx/domains/__init__.py", line 289, in run
    return super().run()
           ^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/hawkmoth/__init__.py", line 152, in run
    self.__parse(filename)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/hawkmoth/__init__.py", line 80, in __parse
    docstrings, errors = parse(filename, domain=self._domain,
                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/hawkmoth/parser.py", line 755, in parse
    index = Index.create()
            ^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 2875, in create
    return Index(conf.lib.clang_createIndex(excludeDecls, 0))
                 ^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 212, in __get__
    value = self.wrapped(instance)
            ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 4336, in lib
    register_functions(lib, not Config.compatibility_check)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 4283, in register_functions
    register(f)
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 4280, in register
    return register_function(lib, item, ignore_errors)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 4261, in register_function
    raise LibclangError(msg)
clang.cindex.LibclangError: /usr/lib/llvm-14/lib/libclang.so.1: undefined symbol: clang_CXXMethod_isDeleted. Please ensure that your python bindings are compatible with your libclang.so version.

Exception occurred:
  File "/home/docs/checkouts/readthedocs.org/user_builds/libdicom/envs/latest/lib/python3.11/site-packages/clang/cindex.py", line 4261, in register_function
    raise LibclangError(msg)
clang.cindex.LibclangError: /usr/lib/llvm-14/lib/libclang.so.1: undefined symbol: clang_CXXMethod_isDeleted. Please ensure that your python bindings are compatible with your libclang.so version.
The full traceback has been saved in /tmp/sphinx-err-19649r46.log, if you want to report the issue to the developers.
Please also report this if it was a user error, so that a better error message can be provided next time.

Maybe requirement.txt needs libclang <= 14?

Recent readthedocs builds are here: https://readthedocs.org/projects/libdicom/builds/

Oof.  I wonder why it works on vanilla 22.04 and fails on ReadTheDocs.  Maybe we can use a separate requirements.txt for ReadTheDocs?  I don't think it's a good idea to hardcode an LLVM 14 requirement in the Meson build, because the docs need to be buildable on other distros as well.  E.g., Hawkmoth is in the process of being packaged for Fedora, and once it lands, the Fedora libdicom package will rebuild the docs from source.

Yes, it's a bit annoying, I spent a morning getting readthedocs working :( I wish it was simpler.
I'll revert this commit for now to get the docs building again.

They have their build images here, fwiw: https://github.com/readthedocs/readthedocs-docker-images

Second attempt in #74.


How can I remove some of the floating social sharing buttons?

I'd like to keep just some of the options in a floating social sharing bar. What is the best way to do it?

Hi @valasatava
You need to edit this line: https://github.com/aron-bordin/neo-hpstr-jekyll-theme/blob/master/assets/js/_main.js#L93
You can read more about it here: https://github.com/ozdemirburak/jquery-floating-social-share
After editing the line, install the required tools with npm install and compile the js with grunt commands.
Let me know if you need any help :)


Unify all the inference by replacing the custom code with the unified one dealing with ONNX only

Currently there is a zoo of wrappers for models, each with custom code.
It is proposed to do the following:

Rewrite the code importing models into code converting them into ONNX. For some formats there are existing convertors, so that code can be thrown away and replaced with the third-party one. It should be possible to execute the converting scripts standalonely.
Write unified backend (I guess onnxruntime-based) working with any ONNX file as a model and maybe some metadata specifying input and output transformations.
Pre-convert all the models into ONNX.
Write an abstraction layer around different frameworks to make them do inference we need on the models in ONNX format.
Cooperate with the upstream projects to make them ship the models in ONNX format by default.
...
PROFIT

thank you for your recommendation.

@KOLANICH @serengil .
hi
is this logic has been implemented or not?

No, it has not and it will not.


GitHub discussion

Could you consider to open github discussion for new features/proposals and everything related? I have many questions and so maybe others too. Thanks!

Most definitely.
Unfortunately I have not had much time to spend here so I am happy to hand this over or open it up to anyone interested


Convert Tests for Compatibility with SAM Build

Description:
One of the steps in converting the A&R app to use SAM is to convert the existing tests to work with the newly designated SAM directory within A&R. This will ensure our lambda functions and layers operate correctly and won't cause issues with CI/CD.
Acceptance Criteria:

[ ] All tests run and pass
[ ] READMEs are updated accordingly

Development Checklist:

[ ] All tests are converted to work with the SAM changes, this mean path changes and conversion(s) for layers
[ ] All tests run successfully and pass
[ ] Update READMEs accordingly

Dependencies

Blocked by
Blocking

Relevant documentation as reference
Definition of Ready

[ ] Acceptance criteria are included
[ ] Wireframes are included (if applicable)
[ ] Design / Solution is accepted by Product Owner (if applicable)
[ ] Dependencies are identified (technical, business, regulatory/policy)
[ ] Story has been estimated (under 13 pts)

Definition of Done

In progress:

[ ] Acceptance criteria are tested (Functionality meets the acceptance criteria defined in the ticket)
[ ] UI meets accessibility requirements
[ ] Unit tests are written
[ ] Work is traceable in GitHub
[ ] PR linked to ticket number
[ ] If needed/required - Dev adds flag/label to highlight any migration steps necessary prior to PROD deployment

Code review:

[ ] Code is peer reviewed and has passed CI/CD tests

QA:

[ ] Acceptance criteria are tested (Functionality meets the acceptance criteria defined in the ticket)
[ ] Code is potentially shippable to the production environment
[ ] Functional features have been tested and passed by QA
[ ] UI components tested by designer
[ ] Code is deployed to PROD when moved to 'done' column (unless requested otherwise by PO)

PO Review:

[ ] Acceptance criteria are tested (Functionality meets the acceptance criteria defined in the ticket)
[ ] Reviewed and approved by Product Owner

Notes:

Tested on TEST: Pending

Verified that the README file has been updated.
@Christopher-walsh22 & @davidclaveau , could you please guide me to find the unit tests mentioned in the Acceptance criteria?

Hey @manuji!
These tests should be relatively the same as before the SAM update, and should all be located in several __tests__ directories.
There are a few settings/setup/teardown files in the main arSam directory, and then the handlers and layers will have their own suite of tests in their respective __tests__ directories, for example Activity's tests will be found here.
(And then the package.json file was tweaked slightly to accommodate these SAM-updated test suites when they're running during PR/Dev/Test/Prod deployment).
Let me know if that's all you needed, or if I can help with anything else!

Thank you @davidclaveau .
Tested and verified that the tests are included in the GitHub.
Passing to PO review.


Full fill unit test for RkMetaEntry

Codecov Report

Merging #2 (073636a) into master (8d2ac6c) will increase coverage by 17.43%.
The diff coverage is 100.00%.

:exclamation: Current head 073636a differs from pull request most recent head 19b2660. Consider uploading reports for the commit 19b2660 to get more accurate results

@@             Coverage Diff             @@
##           master       #2       +/-   ##
===========================================
+ Coverage   71.08%   88.52%   +17.43%
===========================================
  Files          15       15
  Lines        1387     1386        -1
===========================================
+ Hits          986     1227      +241
+ Misses        370      126      -244
- Partials       31       33        +2

Impacted Files
Coverage Δ

entry/app_info_entry.go
97.52% <ø> (+7.27%)
:arrow_up:

entry/config_entry.go
96.38% <ø> (+14.45%)
:arrow_up:

entry/cpu_info.go
100.00% <ø> (ø)

entry/cred_entry.go
76.89% <ø> (+30.00%)
:arrow_up:

entry/go_env_info.go
100.00% <ø> (ø)

entry/mem_info.go
100.00% <ø> (ø)

entry/net_info.go
92.00% <ø> (ø)

entry/os_info.go
100.00% <ø> (ø)

entry/process_info.go
80.76% <ø> (ø)

entry/prom_metrics_info.go
48.45% <ø> (ø)

... and 11 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 5ffbf73...19b2660. Read the comment docs.


[Sema Diagnostics][OSLog] Improve the miscellaneous diagnostics for os log

Make the constantness check for the arguments passed to the new os log APIs ignore the log level and log object which can be dynamic.

@swift-ci Please test and merge

@swift-ci Please test Linux Platform


WireGuard Peers Page - Add commands for downloading the config and generate a QR code

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

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

Is your feature request related to a problem? Please describe.
The most annoying part about creating new WireGuard peers is having to manually populate a config file for each peer and then generate a QR code to transfer the config to a mobile device.
Describe the solution you like
I would like a button under the Commands column to download a WireGuard config file for each peer with all of the config fields populated.
Additionally, another button should be added in the Commands column which would generate a QR code of the config file. QR codes are used to transfer WireGuard configs to a mobile device. The QR code could be displayed in a popup window.
Additional context
wg-easy is a great example of how this user interface could be implemented: https://github.com/wg-easy/wg-easy

https://github.com/opnsense/core/commit/13b685a0a792e686116e92a0bd5cb0429a9bf838 adds a config builder to generate peers, as we do not store private keys (not should we), we can not generate these from existing entries. Below a screenshot from the feature in this commit:

This looks nice :)

This looks great! This will make building configs for a lot of users much easier!
I made one small comment on your commit with what looks like a typo.

@mhlas7 I just noticed the typo, fixed in https://github.com/opnsense/core/commit/550dacfe929d4f0f51b484ff30f9c9b1667133d6. The server/client comment isn't entirely true, both of these parameters are for the client (peer), the instance (peer) ships the public key stored in the config under peer (remote peer, this instance)


Better Python Documentation

Requested Feature
I'm trying to make my own progress bar in Python for the downloads but the docs barely help at all in assisting me.
Possible implementation
No response

yeah I know documentatuin is quite limited, try looking at code in the console directory and reading comments in the code
https://github.com/spotDL/spotify-downloader/tree/master/spotdl/console
documentation (hopefully) will get better over time


[Bug]: Footer view cannot be set

What happened?
I can't set the footer view when generating a PDF.
How to reproduce the bug

Create a view for a PDF.
Create a view for the footer.
Return a PDF response.

Package Version
1.5.1
PHP Version
8.3.8
Laravel Version
^11.0
Which operating systems does with happen with?
macOS, Linux
Notes
I've created a repo for reproduction:

Clone https://github.com/alexmanase/spatie-laravel-pdf-demo
composer install
php artisan key:generate --ansi
Go to web.php, there is the code for generating the PDF.
Observe that the footer is not shown in the generated PDF.

@alexmanase did you set a font-size for the footer, this value is required for headers and footers

You are right.
Thank you!


Virtual attributes are still written to the database

When calling insert/update/patch with properties, even if a property is included in virtualAttributes, it is not excluded by $formatDatabaseJson.
class User extends Model {
    static get virtualAttributes () {
        return ['password'];
    }
}

await User.query().insert({ password: 'foo' });
// Error: insert into "users" ("password") values ($1) returning "id" - column "password" of relation "users" does not exist

Expected behavior (to me) is that marked virtual attributes are truly virtual — never written to the database — even if they are in the schema, are enumerable, have setters, etc.

How did you implement the virtual attribute? As a getter, a function or getter + setter? Please provide a real example.

As far as I can tell, it doesn't matter; I tried several implementations (with and without the virtual attribute listed in the JSON schema, with and without a setter).
const knex = require('@/config/database/knex');

const { Model } = require('objection');

class User extends Model {
    static get tableName () {
        return 'users';
    }

    static get virtualAttributes () {
        return ['password'];
    }
}

User.knex(knex);

class UserWithJsonSchema extends User {
    static get jsonSchema () {
        return {
            type:       'object',
            properties: {
                password: {
                    type: 'string'
                }
            }
        };
    }
}

class UserWithGetter extends User {
    get password () {
        return super.password;
    }
}

class UserWithGetterSetter extends User {
    get password () {
        return super.password;
    }

    set password (password) {
        super.password = password;
    }
}

(async function () {
    for (const UserClass of [User, UserWithJsonSchema, UserWithGetter, UserWithGetterSetter]) {
        try {
            await UserClass.query().insert({ password: 'foo' });
        }
        catch (error) {
            console.log(error);
        }
    }
})();

In our actual application, I work around this by doing
$formatDatabaseJson (json: Object): JSONObject {
    const { virtualAttributes }: { virtualAttributes: string[] } = this.constructor;
    if (virtualAttributes.length !== 0) {
        json = omit(json, virtualAttributes);
    }
    return super.$formatDatabaseJson(json);
}

Actually, the UserWithGetter doesn't pass it through. But if it has a setter, or appears in the schema, it fails.

(This is a problem for us, because we put virtuals in our JSON schemas. This is necessary because we enforce additionalProperties: false, which is how I originally encountered it).

I guess what I'm wondering is, why should it matter if a virtual has a setter? A locally writeable virtual should still be treated as a virtual as far as the database is concerned, right? If not, it's not really "virtual", is it?

There should be no way to define a virtual property and have an actual property at the same time. What you are doing is really funky. Try this:
class X {
  set a(a) {
    super.a = a;
    console.log('setter was called');
  }
}

const x = new X;
x.a = 100; // prints 'setter was called'
x.a = 200; // Doesn't print anything because the setter was replaced with an actual property.

Haha you are right. I don't know what I was doing. I get/set $properties elsewhere, so I don't know how I missed this...


[CT-1268] [Spike] Integrate dbt exceptions into structured logging system

Right now we have structured logging events for the majority of our logging, except for exceptions. In some but not all cases we have a separate logging event. Ideally all exceptions should be logged automatically. This ticket is labeled a "spike" because in order to scope this work we need to identify a mechanism/policies for doing this.

Copying from Nate's comment in https://github.com/dbt-labs/dbt-core/issues/4836#issuecomment-1104038063, because the underlying thrust of it continues to feel important:

whenever possible, we want to be able to programmatically distinguish when the root cause of an error is a warehouse issue, an adapter issue, or a core issue. This will be a big improvement in the process for debugging failed runs.

Basically, when a dbt run fails, how can we tell whether it was user error, database error, or internal dbt error?
In a Pythonic world, we'd expect to do this via class inheritance and type introspection. Given that our log events are now proto-composed, we probably need a field on each exception-log. Something like exception_cause or exception_category. Categories I can imagine:

parsing / validation error (problem in user code)
disallowed behavior, e.g. using deprecated functionality or a version of dbt-core that's disallowed by require-dbt-version
database error due to connection timeout
database error due to malformed query
internal / unhandled error
... more? ...

This can probably be accomplished with an enum that defines all the categories.  Without verifying the syntax I think something like this would work:
enum ExceptionCause {
{
        PARSING = 0;
        DISALLOWED = 1;
        DATABASE_CONNECTION = 2;
        DATABASE_QUERY = 3;
        UNHANDLED = 4;
        ...
 }

And then within the message add
message SomeException {
   EventInfo info = 1;
   repeated ExceptionCause exception_cause = 2;
   ...
}

This also allows the flexibility to add more types to the end of the enum which I'm sure we'll end up needing.

Blocking question we need to answer: Should we have separate LogCategory versus ExceptionCategory, or combine the two into a single field?
(Idea with LogCategory is to formally serve the role that the event codes' starting letters have been informally playing: this is parsing-related, deps-related, adapter-related, ...)

One of the unknowns here is exactly what would be useful to consumers to get logged.  We likely don't want to log all exceptions, just specific ones.  Is it best to fire an event as part of those exceptions or where the exception is raised?
Another option would be to add more structured information to MainEncounteredError.  This may cover a lot of use cases and then just give a single event that would need to be subscribed to for exception details.  The exception could contain the error category and then the MainEncounteredError event could pass the category (connection error, etc) in the proto message.
Minimum:
Easily differentiate between errors in the users code or errors related to dbt itself
Better:
Categorize Errors

dbt code error (sql syntax or jinja, md, yml, etc.)
dbt project config error (something in project.yml not being done properly)
permissions error (to warehouse or git provider)
and more

Another option would be to add more structured information to MainEncounteredError.  This may cover a lot of use cases and then just give a single event that would need to be subscribed to for exception details.  The exception could contain the error category and then the MainEncounteredError event could pass the category (connection error, etc) in the proto message.

After chatting about this with @isaac-taylor, this might get us a lot of what we need, at least in the medium-term. It would be a quality-of-life improvement over parsing the string exc from MainEncounteredError.

Even better if that catch all error had some sort of error code that we can use to categorize the error to either our system, or the user's code (like connection problems)


align telemetry cast_params with the same as in logger

I recently looked at ecto_dev_logger and I started to compare the params with cast_params
I spotted that when there are no params in a query then in the telemetry event we have params: [], cast_params: nil
I propose to unify the type of both fields in this case.
It could be also done as cast_params: opts[:cast_params] || [],

Thank you for the PR. I wonder if we could fix this on the Ecto side so that cast_params is sent as empty list. The current change makes it look like we will put the dump params into the cast params so could be jarring.

I'm also not able to reproduce...if you're able to provide a query that will show this issue that would help. Thanks.

Wait I can reproduce it but only with migrations. Is this what you were seeing? Then I think doing cast_params = opts[:cast_params] || [] is a good choice. But I would not change the name of log params

I saw it somewhere in tests.
Now when I try to reproduce it I see it only happens on Ecto.Adapters.SQL.query!(Repo, "SELECT pg_sleep(1)", [])
Feel free to close it or adjust to your liking

It probably makes sense to keep it nil then if it only applies to queries that don't use the DSL. @josevalim do you agree? If so I will close.

Agreed!

@dkuku thank you for double checking, all the same. i never thought about these cases before


[type:feat] delete user api

With pull requests:

Open your pull request against main
Your pull request should have no more than two commits, if not you should squash them.
You should pass all tests by go test -v ./... at the project root path in local.
It should pass all tests in the available continuous integration systems such as GitHub Actions.
You should add/modify tests to cover your proposed code changes.
If your pull request contains a new feature, please document it on the README.

Codecov Report

Merging #108 (dedd681) into main (b8398aa) will decrease coverage by 0.71%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #108      +/-   ##
==========================================
- Coverage   24.88%   24.16%   -0.72%
==========================================
  Files          15       15
  Lines         639      658      +19
==========================================
  Hits          159      159
- Misses        464      483      +19
  Partials       16       16

Impacted Files
Coverage Δ

internal/core/openapi/user.go
0.00% <0.00%> (ø)

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


Enable Codecov

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@72d6532). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #14   +/-   ##
=========================================
  Coverage          ?   98.54%
=========================================
  Files             ?        5
  Lines             ?      137
  Branches          ?        0
=========================================
  Hits              ?      135
  Misses            ?        1
  Partials          ?        1

Continue to review full report at Codecov.

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

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@72d6532). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #14   +/-   ##
=========================================
  Coverage          ?   98.54%
=========================================
  Files             ?        5
  Lines             ?      137
  Branches          ?        0
=========================================
  Hits              ?      135
  Misses            ?        1
  Partials          ?        1

Continue to review full report at Codecov.

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


what is the exact different scales of one face?

In the paper,   three granularity levels images of one face were crop.What is the exact size of the three  images? @vicwer

Sorry, I dont know exact size, try it...

Sorry, I dont know exact size, try it...

So, how do you build train datasets to train model?

background and head; no background and head; only face besides forehead

1.face detection. 2. expand the detected face by 10%.3. by 20%


feat: new method to fetch makes suggestions

References (hackdays)
Motivation and context
for the full text search recommendations, backend introduced a new API

(the part on the left)

LGTM
Can you add a test?

what do you want to test? since I'm neither doing something with the query nor with the response I'm not sure what I should test

LGTM
Can you add a test?

what do you want to test? since I'm neither doing something with the query nor with the response I'm not sure what I should test

Usually, we try to add a test, even if it is a simple one, you can check currentMakeModels.test.ts, up to you


Build for aarch64 which is needed for RPi4

Add another build target to compile for aarch64 (armv8).
Unfortunately it does not work out of the box on neither of my two RPi4 because of an outdated OS.
The binaries do work though as tested with this dockercontainer on one of the pis:
FROM debian:bullseye-slim

RUN apt-get update
RUN apt-get install -y wget

COPY maker maker

RUN chmod +x maker

VOLUME data

# HTTP Port and P2P Port
EXPOSE 8001 9999

ENTRYPOINT ["/maker", "--data-dir=/data"]

where as maker is the binaries downloaded from the build.
For reference, the binaries can be found in this fork: https://github.com/bonomat/hermes/pull/6
Note: I cannot get aarch64 or armv7 to build using musl (https://github.com/comit-network/hermes/pull/266)

Ignore the last commit...

bors retry


[bug] "allowlist" added to tauri.config throws error

Describe the bug
When I copy the allowlist example from the fs section of the javascript api docs into my project and try to run it, I get: ```Error tauri.conf.json error on tauri: Additional properties are not allowed ('allowlist' was unexpected)
I copied two allowlist objects from your docs and both produced the same error. Both were placed in the "tauri" section.

### Reproduction

Here is the "tauri" section that will cause the error.

"tauri": {
"allowlist": {
"fs": {
"all": true,
"readFile": true,
"writeFile": true,
"readDir": true,
"copyFile": true,
"createDir": true,
"removeDir": true,
"removeFile": true,
"renameFile": true,
"exists": true
}
},
"bundle": {
"active": true,
"targets": "all",
"identifier": "com.tauri.dev",
"icon": [
"icons/32x32.png",
"icons/128x128.png",
<EMAIL_ADDRESS>"icons/icon.icns",
"icons/icon.ico"
]
},
"security": {
"csp": null
},
"windows": [
{
"fullscreen": false,
"resizable": true,
"title": "Koriographer",
"width": 1400,
"height": 1200,
"theme": "Light"
}
]
},

### Expected behavior

I expect the project to compile and run. Ultimately, I exptect to use the fs api to acess files.

### Platform and versions

```text
[✔] Environment
    - OS: Manjaro 23.0.0 X64
    ✔ webkit2gtk-4.1: 2.40.3
    ✔ rsvg2: 2.56.2
    ✔ rustc: 1.73.0-nightly (39f42ad9e 2023-07-19)
    ✔ Cargo: 1.73.0-nightly (1b1555676 2023-07-18)
    ✔ rustup: 1.26.0 (5af9b9484 2023-04-05)
    ✔ Rust toolchain: nightly-x86_64-unknown-linux-gnu (default)
    - node: 20.4.0
    - yarn: 1.22.19
    - npm: 9.8.0

[-] Packages
    - tauri [RUST]: 2.0.0-alpha.10
    - tauri-build [RUST]: 2.0.0-alpha.6
    - wry [RUST]: 0.28.3
    - tao [RUST]: 0.19.1
    - @tauri-apps/api [NPM]: 2.0.0-alpha.5
    - @tauri-apps/cli [NPM]: 2.0.0-alpha.10

[-] App
    - build-type: bundle
    - CSP: unset
    - distDir: ../dist
    - devPath: http://localhost:1420/
    - framework: Svelte
    - bundler: Vite

Stack trace
yarn run v1.22.19
$ tauri dev
       Error `tauri.conf.json` error on `tauri`: Additional properties are not allowed ('allowlist' was unexpected)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

Process finished with exit code 1

Additional context
No response

You are using 2.0.0-alpha which doesn't have the allowlist there anymore, the allowlist has been moved to plugins, see https://github.com/tauri-apps/plugins-workspace/tree/v2/plugins

Ok, but I selected the Alpha 2 dropdown on the Tauri site expecting those docs. Not complaining as I know you guys are busy. Just an FYI.
Just to confirm: there is no "allowlist", correct? I tried the plugin with the readDir() function. It finds the path but I get "Error: forbidden path". I tried adding the allowlist back in after adding the plugin, and the application simply failed to compile with no specific error reported in CLion.

Solved this. The example in the fs repo V2 doesn't mention that I need to add a scope entry to the "plugins" object in tauri.conf.json. I did find reference to it in the source. I suggest adding that to the readme in the fs V2 repo.

Alpha docs are still in the works so it is expected for now, thanks for your feedback.

For anyone here wondering how to do it, here is an example:
	"plugins": {
		"fs": {
			"scope": {
				"allow": [
					"$AUDIO",
					"$AUDIO/*"
				]
			}
		}
	}

https://github.com/tauri-apps/plugins-workspace/blob/v2/plugins/fs/src/config.rs

"permissions": ["core:default", "shell:allow-open", "http:default"]
http:default is not allowed.
{
"permissions": [
{
"identifier": "http:default",
"allow": [{ "url": "https://*.tauri.app" }],
"deny": [{ "url": "https://private.tauri.app" }]
}
]
}
is not allowed!
https://v2.tauri.app/plugin/http-client/

i think this should mean that you don't have the plugin installed at all. @jamalsoueidan Can you post the output of the tauri info command please?


API trace DXVK files question

Hi there.
Following https://github.com/doitsujin/dxvk/wiki/Using-Apitrace#on-linux, I don't know how to proceed from here:

Before the next step, make sure you disable or get rid of DXVK files first, as it's preferred that you use WineD3D to make an apitrace.

I'm using Proton-GE. How do I get rid of DXVK files without corrupting my game Proton prefix?
Also, the game I'm trying to make an API trace for only supports DX11 (Watch Dogs 1). Would it work with WineD3D/VKD3D?

Additional issue:
I noticed the following:

Once you've successfully created an apitrace, you can delete the apitrace dll files from the game folder and set the dll overrides back to n,b.

How would I set the DLL overrides back to native, then built-in if I already did it in the previous step?

Open winecfg and add a native,builtin override for d3d9, d3d11 and dxgi.dll. Here's a GIF that showcases the process:

Thanks in advance for your attention.

Before the next step, make sure you disable or get rid of DXVK files first, as it's preferred that you use WineD3D to make an apitrace.

That's not that important. That line is partially a leftover from a time when DXVK was far less complete.

Also, the game I'm trying to make an API trace for only supports DX11 (Watch Dogs 1). Would it work with WineD3D/VKD3D?

Yes, WineD3D D3D11 is pretty good these days.

How would I set the DLL overrides back to native, then built-in if I already did it in the previous step?

You're right, that advice is a bit odd. n,b is usually what you want.

PROTON_USE_WINED3D=1 doesn't work because it will set the dlls to just build-in and not load apitrace. With proton the way it is described in the wiki also doesn't really work at all because the proton launch script will override what you do in winecfg.
With proton, to trace with dxvk you can just dump the apitrace dlls next the the exe and do nothing else and it works. To trace with wined3d you set WINEDLLOVERRIDES=dxgi,d3d11=n,b %command% as launch option.
IMO the wiki could use an overhaul because the way it describes doesn't work with proton, which is probably what most people use nowadays. Also tracing d3d11 with dxvk usually just works better and faster compared to wined3d in my experience.

To trace with wined3d in proton you have to set both PROTON_USE_WINED3D=1 and WINEDLLOVERRIDES=dxgi,d3d11=n,b. So PROTON_USE_WINED3D=1 WINEDLLOVERRIDES=dxgi,d3d11=n,b %command% for the full launch options.


datapath: Do not log when kernel config not found

Previously, when cilium-agent couldn't find a kernel config (a case for
distros which do not expose the config via /proc/config.gz, but instead
they store it in /boot, which is not mounted into a cilium container),
we logged the following message:
level=info msg="BPF system config check: NOT OK." error="Kernel Config
file not found" subsys=linux-datapath

This confused users making them to think that the missing kernel config
was to blame for their connectivity issues. Thus, this commit silences
the message (missing CONFIG_BPF would anyway result in a non-cryptic error
message).
We can bring the message back once https://github.com/cilium/cilium/issues/14314 has been resolved.

test-me-please

test-gke

retest-gke

retest-4.19

retest-gke

@jibi with small changes like these there is no need to make all tests pass.


Add Support for PulseChain

Network Name:
PulseChain
New RPC URL:
https://rpc.pulsechain.com
Chain ID:
369
Currency Symbol:
PLS
Block Explorer:
https://scan.pulsechain.com/

I have the same request. The pulsechain network has launched

Hey! +1 from my side. Please merge.


fix: use temp uri to build storage path while workspace is undefined

Types

[x] 🐛 Bug Fixes

Background or solution
while workspaceDir is undefined, the storage path will use fallback .sumi path
Changelog
use temp uri to build storage path while workspace is undefined

Codecov Report

Merging #210 (b45531f) into v2.13.x (6b85e4b) will decrease coverage by 0.00%.
The diff coverage is 42.85%.

@@             Coverage Diff             @@
##           v2.13.x     #210      +/-   ##
===========================================
- Coverage    59.41%   59.41%   -0.01%
===========================================
  Files         1180     1180
  Lines        72335    72332       -3
  Branches     14972    14971       -1
===========================================
- Hits         42977    42974       -3
  Misses       26756    26756
  Partials      2602     2602

Impacted Files
Coverage Δ

...ages/extension-storage/src/browser/storage-path.ts
86.04% <42.85%> (+1.77%)
:arrow_up:

packages/core-common/src/uri.ts
75.80% <0.00%> (-1.62%)
:arrow_down:

Continue to review full report at Codecov.

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


Events.onWithOptions doesn't work

In trying to create non-propagating events, I've discovered the aforementioned function doesn't work at all, not even with default options. Here I attempt to create an event that should be equal to onClick, yet it does nothing at all. The regular onClick (as commented out) works fine.
import Html.App
import Html
import Html.Attributes as Att
import Html.Events as Events
import String
import List
import Json.Decode

-- MODEL

type alias Model = Bool

init = False

-- UPDATE

type Msg = Click

update msg model =
  not model

-- VIEW

newEvent eventName msg =
  Events.onWithOptions
    eventName
    Events.defaultOptions
    (Json.Decode.succeed msg)

onClick = newEvent "onclick"

(=>) = (,)

view model =
  Html.div
    [ Att.style
      [ "position" => "absolute"
      , "width" => "100px"
      , "height" => "100px"
      , if model then "background-color" => "blue" else "background-color" => "red"
      ]
    , onClick Click
    --, Events.onClick Click
    ]
    []

-- APP

main: Program Never
main =
  Html.App.beginnerProgram
    { model = init
    , update = update
    , view = view
    }

Ahhh, I see. Maybe that should be made more explicit in the documentation. Although it can be concluded from the example given. I might publish a PR adding more details. Anyway, thank you.


client: better search behavior if no results

fix ugly crash

r? @patrickxb

Fixes: #1738

LGTM


model compile process[Question]

❓ General Questions

Hi I have been struggling to understand which of the three options for model compression I should use for webllm.
Also quite struggling to understand the different quantisation and other options bellow options.
The model architecture (e.g. llama-2, gpt-neox)
Quantization (e.g. q4f16_1, q0f32)
Metadata (e.g. context_window_size, sliding_window_size, prefill-chunk-size), which affects memory planning
Platform (e.g. cuda, webgpu, iOS)

If I use do webllm does automatically detects systems multiple gpus or if there is a single gpu ect?

we recommend start from default options, which we normally use and q4f16_1 to reduce memory.

What are the other Quantization (e.g. q4f16_1, q0f32) options?

Is there a video tutorial on how to convert models to mcl type?

https://llm.mlc.ai/docs/compilation/convert_weights.html contain a walk through guide


Constant, Exception, logging and validation updates on SaltStackClient.java

I have just made few changes on SaltStackClient.java

Client constructor overloaded to handle port, host and ssl
Validation added into client constructor
Logger instance added
String null checks replaced with apache StringUtils.isEmpty()
Predefined exceptions added
String password changed to a Password object #see http://securesoftware.blogspot.cz/2009/01/java-security-why-not-to-use-string.html
All hardcoded strings caried into api constants
Exception handling improved

@buraksarac, good morning and thanks for contributing!
I would like to merge at least part of your work, but before doing that it would be good if you resubmitted it in an easier-to-review form. Here are some guidelines, which by the way are also valuable in most open source projects and particularly ones in GitHub:

open a PR for each clearly separated topic. Smaller PRs are easier to check, can be looked at in parallel by multiple reviewers and tend to result in less merge conflicts, so it's more likely they get merged sooner. Plus any comments from our part that "block" one of them would not slow down the merging of others!
every PR should be both described and motivated in comments. It's good to have a one-line overview of what you have done but we can also simply read your code - much more important is why you did that, and that is not easy to read from Java source!
if your PR B depends on another PR A, include commits from the A branch in B. You will still have to rework B in case A does not get accepted as-is, but at least it will be clear to the reviewers that this dependency exists. Obviously try to work on independent PRs as much as possible;
if possible, retain meaningful commits in your PR and don't squash all changes in one. There might be value in the history of how you got to a particular solution, and merge commits will retain a track of the whole PR change anyway;
adding new dependencies (libraries) should be at least motivated a bit. Is it worth it to add a new dependency? Why did you choose a particular library? Were there any alternatives, why do you think your choice makes sense?
don't change indentation of lines you did not otherwise edit, unless your contribution is a whitespace cleanup - it makes it hard to understand what your contribution is (this is what we see);
in this project's particular case, we indent with 4 spaces and do not use tabs (as specified in the README);
same goes for reorganizing imports. Please do not change the ordering unless your contribution is exactly about that.

I look forward to see comments, and further contributions, from you :-)

Hi @moio goodmorning and thank you for comments!
I am going to separate PRs today with more explanation. I think job notice confuse me a bit so I have created PR at once as a reference because I didnt wanted to flood:)
New dependencies: Apache utils are quite powerfull especially on collection and String operations. I have added those libraries because beside of null check it is also doing an empty check. Instead of writing conditional check per case I thought it would be a  good shot to give credit to another open source project.
What IDE are you (guys) using, if it is eclipse can you provide me your formatter template or include into project folder? If not I will figure out:)
Have you ever considered using maven? Since it is opensource and early stage project can be separated as multi-maven project (api and implementation) so if someone else wants to do a implementation can use api.jar? Maven also can help for dependency management from a centralised repo so you will not need to do hash check or you can run your test by Jenkins nightly builds using goals instead every buid. If you are positive I can volunteer for implementation:)
Thanks
Burak

Hey, I am personally using eclipse, but everybody is of course free to work with whatever they prefer. We will therefore not provide a formatter configuration for a specific IDE in the repo. For you it is still easy to figure out how to setup yours: please find the most important settings [here] (https://github.com/SUSE/saltstack-netapi-client-java).
Generally we would be happy to see a pull request adding support for maven builds, please feel encouraged to work on that. I doubt that the concept of multiple modules as you are suggesting it is applicable for this project though. I am not 100% sure if I understood you correctly, but I don't think there is currently much value being added by splitting up this library into two separate jars, for api and implementation respectively.

Hello @renner thanks for the input. I have setted up Eclipse it was ok, now I am separeting PRs. I think I will go step by step:) I already have one maven version as a single project, I wanted to see yesterday how it will work. So later I can put into my repo for your review.