cowboy_req:cookie crashes on cookies without values

When headers are not parsed yet, the {error, badarg} returned by parse_header(<<"cookie">>, Req) causes a badmatch in current version of cowboy_req:420. See:
=ERROR REPORT==== ...
Ranch listener websocket had connection process started with cowboy_protocol:start_link/4 at <0.1584.0> exit with reason:
{[{reason,{case_clause,{error,badarg}}},...,
{stacktrace,[{cowboy_req,cookie,3,[{file,"src/cowboy_req.erl"},{line,420}]},...

This happens when parsing invalid cookies, e.g. without a value.
For example when parsing Cookie: foo=bar; baz; bar=foo, the baz causes parse_header function to return {error, badarg}.
This return value is only handled, when the request headers were parsed already.
According to rfc6265, it is required to use key-value pairs in cookie headers,
 cookie-header = "Cookie:" OWS cookie-string OWS
 cookie-string = cookie-pair *( ";" SP cookie-pair )

but apparently some tracking / metics services add some plain cookie-name keys without a value. I think the value is then considered to be "true".
Maybe it makes sense to parse also this cookies and return <<"true">> as values.
The line was removed in this commit: faf64524c6758ae1e27404d2ae1383a23538c538.

Hi @essen . Here is my case (actually very similar to @bharendt ):
I have a big proprietary application that a few years ago used to use such empty cookies for something like application state tracking. Nowadays all this code deprecated (and nobody actually has idea about all the possible names of such cookies). I just deployed some new cowboy based code to production. And I faced with
next issues:

because such cookie was set with very long expiration time some users have them in place.
I can't serve any request to such users because my application using cookie based authorization, and I have to check cookie value for each request.

So what we have here:

it's possible to set such incorrect value in modern browsers
modern browsers will send that value to server
cowboy became totally unusable if such things happen.
All other web servers in our project have no such issues (TomCat, Netty etc).

Totally unusable is a bit strong, writing a stream handler to clean the cookie should be trivial in 2.0. I'd say check https://tools.ietf.org/html/rfc6265 and see if they say something about that and then we can discuss.

According to RFC such cookie incorrect for sure:
cookie-string = cookie-pair *( ";" SP cookie-pair )
cookie-pair   = cookie-name "=" cookie-value

But here we talking not about the standart but about real life.
Not sure about cowboy 2.0 but in 1.x you will have to write your own cow_cookie like parser or hack existing one. Not something that you expecting when working with production ready webserver.
I respect your idea about not hiding errors, but at the same time, it does not make too much sense to throw away all cookies array only because one bad value was passed. So if you interested here is my proposal for future cowboy versions (i believe that I will have to hack existing version anyway):
Let's make it possible to store in cookie list value something like {error, <<"raw error value">>, error_desription()} instead of throwing exceptions. And provide some wrappers access functions for cookie manipulations. If you will try to access such cookie value by the name with wrapper you will get exception, but at the same time, it should be possible to retrieve the raw value with special functions, and do everything what you want with it.

The RFC is more than these two lines. It should say what the behavior should be when receiving invalid input.


MLFlow deployment deploys additionally the LB/NodePort

When deploying the MLFlow additional access point to MLFlow is created.
Why do we expose this? Should we not use relations to Istio/pilot and ingress gateway to expose MLFlow, especially since MLFlow is open to the public by default? When used with Charmed Kubeflow the DEX is used to provide the authentication.
In code:
https://github.com/canonical/mlflow-operator/blob/4bdda5d0a545821109c380b8d460c69c6d5de9be/charms/mlflow-server/src/charm.py#L216

I think we've treated the mlflow charm as something that could be deployed with kubeflow or standalone, rather than something that had to be with kubeflow.  But it would make more sense to have configuration options to only expose what is needed based on the setup chosen


🍒 Cherry pick PR #4741 to staging 🍒

🍒 Cherry pick https://github.com/Expensify/App/pull/4741 to staging 🍒

🚀 Cherry-picked to staging by @AndrewGable in version: 1.0.86-8 🚀

platform
result

🤖 android 🤖
failure ❌

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Cherry-picked to staging by @AndrewGable in version: 1.0.86-8 🚀

platform
result

🤖 android 🤖
skipped 🚫

🖥 desktop 🖥
skipped 🚫

🍎 iOS 🍎
skipped 🚫

🕸 web 🕸
skipped 🚫

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.

🚀 Cherry-picked to staging by @AndrewGable in version: 1.0.86-8 🚀

platform
result

🤖 android 🤖
skipped 🚫

🖥 desktop 🖥
skipped 🚫

🍎 iOS 🍎
skipped 🚫

🕸 web 🕸
skipped 🚫

@Expensify/applauseleads please QA this PR and check it off on the deploy checklist if it passes.


Menubarfixes

If you're fixing a UI issue, make sure you take two screenshots. One that shows the actual bug and another that shows how you fixed it.

Fixes #19
Fixes #21
Fixes #22
Fixes #23
Before:
Menubarfixes before.webm
After:
Menubarfixes after.webm

@zenorocha able to take a look at this repo's permissions to enable some merges? Mentioned in #18 but that PR has since been merged; wanted to bring it up again in case it slipped past your radar. Thanks!

Well, instead of granting @Chrismettal permissions like I requested in a DM to Zeno, someone just ended up adding me instead. I don't feel comfortable merging without someone else testing first, though. Wanna start working your way through these to give me the go-ahead for each PR?

Oh, a message just came through: apparently there was a goof-up during the repo creation and you now have access too! Hooray!

Thank you so much for your contributions! I am happy to see that we both got push access actually!
There is only one thing I see a problem with this PR, which is the added padding for the icons. This alone will make the "checked" icon background get misaligned with the icon, which you can actually see in your "after" video as well.
I have reverted that single commit from your PR for now as I was unable to figure out a quick way of leaving the padding without getting the background misaligned, as I feel the bit of padding isn't that noticable to begin with.
If you figure out how to keep the background aligned I would like to see the padding merged as well though.

Yes, me too! Very glad to polish up this theme with you, it's so nice to use. Makes FC feel way more modern, too.
Oh, and good catch on the active background; I actually had to rewatch the video twice to see it even after you pointed it out! Hopefully I'll get some time this weekend to look into it.


any operators with '>' or '<' like e.g.  '==>' generate '== >' in header of page

Html escaping problem
The header at the top of a doc page shows e.g. infix <== for an explanation of <==. This should show infix <==.  This goes for all operators where a < or > is involved.
Example pages are infix =>, syntax << and infix <==.

@coke This is a duplicate of another issue, which has been solved, I think. @2colours is there an example of this in the current doc-site? If so, I will fix

@finanalyst 2 out of the 3 provided links (https://docs.raku.org/routine/=> and https://docs.raku.org/routine/<== ) have this problem in the title

@2colours Yes a different problem to the one where ==> was incorrect in the search candidates.

@2colours @labster @coke @MARTIMM  I fixed the issue, which was in the secondaries plugin. <head><title>... for each secondary page was generated from HTML escaped name, but should be an un-escaped string. Also took opportunity to enhance secondaries by adding a Table of Contents, and improve information for search engine.
The patches are visible on new-raku see routine/=%3E
Patch for doc-website soon

closing as completed


some question

I'm so sorry to disturb you in this way, since I can't find your email.
I have a question about this repository, that is:
when use Jupyter Notebook and Tensorboard in the same time,
your command is
$ docker run  --name notebooks -d -v /$(pwd)/notebooks:/notebooks -v /$(pwd)/logs:/logs -p 8888:8888 dash00/tensorflow-python3-jupyter /run_jupyter.sh --allow-root --NotebookApp.token=''
$ docker run  --name board -d -v /$(pwd)/logs:/logs -p 6006:6006 dash00/tensorflow-python3-jupyter tensorboard --logdir /logs

Doesn't that mean running two containers?

Why the tensor computation graph written in notebook(in container notebook) could show in other container tensorboard?  I think they are in two different container environment.

Can use Jupyter Notebook and Tensorboard in the same time and just generate one container?

thank you!

besides, I pull it to my mac(high sierra10.13.6), it doesn't work.
the terminal raise an error about the permission, ~/notebook is not allowed.


rewrite legacy statements

replace legacy "action: module options" with "module: options"
prepend "0" to mode where it's missing

Thanks for the update to the new syntax, I am still in the habit of using the old syntax, but I need to update all my playbooks at some point.


Siglent binary waveforms are unsupported

System Info:
Glscopeclient version: 0.1-59ef026
OS: Windows 10
Oscilloscope: Siglent SDS6204A (offline, open from .BIN file)
Description:
I'm unable to open raw waveform binaries using glscopeclient: ERROR: Unknown vendor in file header.
Is this planned to be supported? I think this would be useful, since glscopeclient doesn't support >12.5Mpts live captures, and my scope has 500Mpts of memory depth.

Worth noting: Siglent provides a Bin2CSV converter, but it would be nice to import these waveforms natively. However, if this isn't trivial, the converter provides a workaround.

Do you have a link to a spec for the format, and can you share some example files?
Writing an import filter is pretty trivial (the Agilent/Keysight BIN importer is ~200 lines if you don't count the boilerplate for filter creation) but obviously we have to know how the files are structured. If not we might have to reverse engineer it.

The spec can be found here: https://siglentna.com/wp-content/uploads/dlm_uploads/2021/09/How-to-Extract-Data-from-the-Binary-File.pdf. The 6000 series isn't listed as supported by the document, but I'm hoping that the format is unchanged.
I'll need  to grab a smaller binary - max upload is 25 MB.

I split the ch1 capture into 10M volumes using 7zip. If this is unwieldly, let me know.
ch1-pt1.zip
ch1-pt2.zip

Here is a newer version of the siglent binary spec that specifies SDS2000X HD, SDS5000, and SDS6000: https://www.siglenteu.com/wp-content/uploads/2021/08/How-to-Extract-Data-from-the-Binary-File.pdf
Despite the date in the link, this spec was updated in 2023.

I am working on a python script to parse and visualize the waveform: https://gist.github.com/hansemro/4b8733cf5a217bcee7a5796f8eff2726
This script currently supports:

V2 waveform format with analog + digital waveform data processing and plotting.

SDS2000X+ with firmware 1.2.2 to 1.3.9RX
SDS6000A  with firmware older than <IP_ADDRESS> and math disabled

tested single channel analog data from @dan-gies
a newer V2 format revision includes math waveform support, but that is not yet supported.

SDS6000H10/SDS6000H12 should be supported, but may require adjustments to code_per_div.

Unfortunately, I have not yet found a method to identify the model from the bin file. For now, the model argument must be specified to get the correct code_per_div.

Updated script to support V4 waveform format, which includes support for most scopes running up-to-date firmware.
Fortunately V4 is not much different to V2, so we can greatly simplify the C++ implementation:

v2_data[0x4:0x400] should be the same as v4_data[0x8:0x404].
V2 waveform data begins at 0x800, whereas V4 waveform data begins at 0x1000.

Waveform data includes any enabled math channels. Math channel data is inserted between analog and digital channel data.

Updated dev branch with support to import math and digital waveforms.


VerifySessionCookieAsync() missing in TenantAwareFirebaseAuth

I have seen a pull request which has the changes but those are not publicly available
https://github.com/firebase/firebase-admin-dotnet/pull/232

Hi @utkarsh-bandekar VerifySessionCookieAsync API is available since the 1.12.0 release. Tested the following with the latest Admin .NET SDK version 2.3.0.
using FirebaseAdmin.Auth;

var decodedToken = await FirebaseAuth.DefaultInstance.
						VerifySessionCookieAsync(
							sessionCookie, checkRevoked);

@lahirumaramba
The question is when tenant scoped, I think its not available when using a tenant.


Fix columns order in aggregation queries

Adaptations for https://github.com/django/django/commit/65ad4ade74dc9208b9d686a451cd6045df0c9c3a.

Does it make sense to send "get_columns as a cached property' to main so the branches don't diverge on that?

It does!
El mar, 31 de dic de 2024, 20:44, Tim Graham @.***>
escribió:

Does it make sense to send "get_columns as a cached property' to main so
the branches don't diverge on that?
—
Reply to this email directly, view it on GitHub
https://github.com/timgraham/django-mongodb/pull/4#issuecomment-2566755704,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABO2S4QM7HHMGPHM2IFDTAT2IMT5FAVCNFSM6AAAAABUAGXBNCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKNRWG42TKNZQGQ
.
You are receiving this because you authored the thread.Message ID:
@.***>


Not supported output mapping on end events

Describe the Bug

on an end event, I can add "payload mappings" which are not supported by Zeebe anymore

    <bpmn:endEvent id="EndEvent_1ng8o4b">
      <bpmn:extensionElements>
        <zeebe:payloadMappings>
          <zeebe:mapping source="sourceValue" target="targetValue" type="PUT" />
        </zeebe:payloadMappings>
      </bpmn:extensionElements>
      <bpmn:incoming>SequenceFlow_0vltuqu</bpmn:incoming>
    </bpmn:endEvent>

Steps to Reproduce

add an end event
go to Properties Panel -> Payload Mappings
add a new input parameter

Expected Behavior

I can not add "Payload Mapping" on an end event

Environment

OS: Ubuntu
Zeeber Modeler Version: 0.7.0

Since the Payload Mapping tab was only related to bpmn:EndEvents, we can simply remove it.


Error Compiling on Mac OS

I seem to be missing the libmdb library.  Any idea what I am doing wrong here? It compiles fine without the IBMDB package.
Here is the command line output:
cvg-000-000:greatag_api ctinnell$ swift build
Compile Swift Module 'IBMDB' (1 sources)
Compile Swift Module 'Socket' (3 sources)
Compile Swift Module 'SwiftyJSON' (2 sources)
Compile Swift Module 'HeliumLogger' (1 sources)
Compile Swift Module 'SSLService' (1 sources)
Compile Swift Module 'KituraNet' (29 sources)
Compile Swift Module 'Kitura' (40 sources)
Compile Swift Module 'GreatAPI' (2 sources)
Linking ./.build/debug/GreatAPI
ld: library not found for -libmdb for architecture x86_64
:0: error: link command failed with exit code 1 (use -v to see invocation)
:0: error: build had 1 command failures
error: exit(1): /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift-build-tool -f /Development/great_api/.build/debug.yaml

Hello, did you run all the steps here?
https://github.com/IBM-DTeam/swift-for-db2/blob/master/README.md#installation-os-x

Yes.  I followed the OSX installation steps.

Can you check your environment variables in XCode? It should look something like this.

Nope.  I don't have those. Did I miss a step in the installation instructions?

No, I don't think so. For some reason, xcode doesn't like to maintain the environment variables we set up via command line so we have to set it up manually. I'm looking into a fix for that.
For now though, try manually putting in these vars
https://github.com/IBM-DTeam/swift-for-db2-cli/blob/master/env.sh
And make sure you have this path /usr/local/ibmdb
Let me know if this solves your issue. :)

Will do.  I actually didn't even generate the Xcode project previously.  I was just issuing swift build from Terminal per the instructions.  I'll add the variables and let you know what happens when I try to build from Xcode.

Hi, can you try running
"swift build -Xcc -I/usr/local/include -Xlinker -L/usr/local/lib" instead?
I have a feeling you have to tell the compiler where the library is located. If that's the case we'll have to update our README!

@GWlodarek Sorry for the slow response. I will check this out today.

@GWlodarek This did fix my problem. Thank you for the help! I am now able to compile my project.

@GWlodarek Do you have any suggestions for getting this to work within Xcode?

I was able to get this to work in Xcode by adding:
/usr/local/lib to Library Search Paths
-and-
/usr/local/include to Header Search Paths

Good to know! I haven't used Xcode so I wouldn't know :)


Question about instance recognition metrics

Hi,
In Table 9: Evaluation of frozen features on instance-level recognition. of the table, it shows the performance for OpenCLIP-G/14 is 50.7 for Oxford-M and 19.7 for Oxford-H. However, we only get 39.4 for Oxford-M and 11.7 for Oxford-H (even without 1M distractors) using the evaluation code https://github.com/filipradenovic/revisitop/blob/master/python/evaluate.py#L39
Also tried revisit-oxford (without 1M distractors) the Dinov2-B14 distilled backbone with make_classification_eval_transform() transform in this repo, the metrics I get is 0.58 for Oxford-M and 0.337 for Oxford-H, which seems much lower than the number reported in the paper 0.729 for Oxford-M and 0.495 for Oxford-H.
If possible, could you help clarify:

what metrics you are reporting in the paper, is it mean average precision or mean precision at kappas?
Are you including the 1M distractors in the eval?
what transform I should use the released backbone?

Similar for met, we also cannot reproduce the eval metrics for both OpenCLIP-G/14 and Dinov2-B14.
It will be great if you could provide the code to run on eval sets or the embedding generated!
Thanks!

Update: we get a higher metrics without cropping the query image (provided by the eval sets)
OpenCLIP-G/14:
[Oxford-M] 53 (reproduced) vs 50.7 (reported in the paper)
[Oxford-H] 21(reproduced) vs 19.7 (reported in the paper)
Dinov2:
[Oxford-M] 69 (reproduced) vs 72.9 (reported in the paper)
[Oxford-H] 43.7 (reproduced) vs 49.5 (reported in the paper)
It is closer but still doesn't match the metrics in the paper. It would be greatly appreciated if you could provide information about your evaluation setup.
Thanks!


Make password argument optional

Passing a password through as an argument is poor security practice (as your password becomes stored in your .bash_history etc).
I suggest that the password argument be made optional (so it can still be provided for scripts if needed) and a user request is made using input('Please enter password: ') or similar if it is not supplied.
This script is great. Thanks so much!

You are right. I will try to improve that.
To be fair, I used it only once and transferred everything out so it was not a problem in my case, but I get your point. Thanks!


Fail to link on Win32 platform

We are using the (as well as rusb) on an internal library and it works pretty well. However, one of our requirements is to provide Windows 32 and 64-bit support.
We are getting errors when linking to the 32-bit flavor. We've been struggling with this for a few days, so I'd like to know if you could take a look at this and see if you could help?
Some examples of the linking error:
test.test.dvy3h0uq-cgu.15.rcgu.o : error LNK2019: unresolved external symbol _libusb_open_device_with_vid_pid referenced in function __ZN4rusb7context10UsbContext24open_device_with_vid_pid17h4d5b1707d7a5a313E [D:\a\libtest\build\test_target.vcxproj]
test.test.dvy3h0uq-cgu.7.rcgu.o : error LNK2001: unresolved external symbol _libusb_open_device_with_vid_pid [D:\a\libtest\build\test_target.vcxproj]
              Hint on symbols that are defined and could potentially match:
                _libusb_open_device_with_vid_pid@12
test.test.dvy3h0uq-cgu.3.rcgu.o : error LNK2019: unresolved external symbol _libusb_release_interface referenced in function __ZN4core3ptr18real_drop_in_place17h32d5cf5582c84dcbE [D:\a\libtest\build\test_target.vcxproj]
test.test.dvy3h0uq-cgu.7.rcgu.o : error LNK2001: unresolved external symbol _libusb_release_interface [D:\a\libtest\build\test_target.vcxproj]
              Hint on symbols that are defined and could potentially match:
                _libusb_release_interface@8

I have no idea what is wrong here. But I will try to figure out the field of the new year, if you don't find earlier a solution earlier.


I will just leave this here

I came across this a while back on Twitter, it creates automated signatures for petitions.

The picture is from the 2nd Referendum Petition period in June 2016


[SMALL] Mention migration operation in SQLite NotSupportedException

Fixes #5389

@natemcmaster could you take a quick look at this one

:shipit:

Merged https://github.com/aspnet/EntityFramework/commit/4b23c5db78221691669d33a4577690f0ae37ea9b


Arathi Basin request shown under miscellaneous

Describe the bug
I turned on the category "Arathi Basin", still when people write in world/lfg Chat text's with "AB" or "Arathi" is shown under the miscellaneous section.
Im playing SoD and using the 3.17 (newest) version.
To add customizable Battleground search terms in the options would solve this.

Seems like "arathi" is not a default english tag for it, only "ab" and "basing". Meaning messages that only match "arathi" in its body will get sorted to Miscellaneous. This prevents general messages w/ the word "arathi" in them from getting catagorised as part of "Arathi Basin" request.
If you want, you could add "arathi" to the "Search Patterns" panel entry for Arathi Basin in the ingame addons settings.


Relaunch terminal after shell selection on Windows

Testing #23130
(Might be caused by #23357)

Choose Customize from the info message

Choose cmd

The user settings are automatically changed to contain: "terminal.integrated.shell.windows": "C:\\windows\\Sysnative\\cmd.exe"

Observe, the integrated terminal still shows Powershell:

Edit: After restarting VS Code the integrated terminal now uses cmd.exe

You should be able to just relaunch the terminal, maybe that's not clear though. Perhaps I should follow up on the idea of listening for changes in the current instance, and if there aren't any after the selection it's killed and a new one is launched.

:+1: also just saw it working


Application does not use correct Text Encoding

Text for things like details and state should be using UTF8 or else some characters are not correctly interpreted by Discord

Closing as this was the wrong repo (my bad ^^)


zotero: make wrapGAppsHook work

Motivation for this change
Fixes https://github.com/NixOS/nixpkgs/issues/83699
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[X] Ensured that relevant documentation is up to date
[X] Fits CONTRIBUTING.md.

@GrahamcOfBorg eval
dealing with an issue with ofborg at the moment, my apologies


RPM signature not verifiable

at least I could not find the key anywhere.
Retrieving package keybase-<IP_ADDRESS>60809160037.24badd1-1.x86_64                               (1/1),  56.8 MiB (172.3 MiB unpacked)
keybase_amd64.rpm:
    Header V4 RSA/SHA1 Signature, key ID 656d16c7: NOKEY
    V4 RSA/SHA1 Signature, key ID 656d16c7: NOKEY

keybase-<IP_ADDRESS>60809160037.24badd1-1.x86_64 (Plain RPM files cache): Signature verification failed [4-Signatures public key is not available]
Abort, retry, ignore? [a/r/i] (a):

cc @oconnor663

@Achimh3011 could you include the command you ran to get to this point? Did you install directly with rpm?
I think if you use the instructions here and install with yum (or probably with dnf in some slightly modified way), you will bypass this error. In the state that you're seeing, I think it'll work if you choose ignore too, and then it should install our PGP key in your RPM keyring. (That might feel dirty compared to getting the fingerprint from our website and fetching the key manually first, but at the end of the day I think both approaches are open to the same Evil Keybase attacks.)

@oconnor663 yes, it feels dirty. Posting the public key for your RPM-signing in multiple places (including the github repo) would give it a lot more cred. Sure, its not totally proof, but at least one could verify it in different places before installing some binaries that do who-knows-what on one's system.

Ah I probably should've mentioned a couple places where you can get it:
https://keybase.io/docs/server_security/our_code_signing_key
https://github.com/keybase/client/blob/master/packaging/linux/code_signing_fingerprint

Oh, I did not search long enough... Thanks for the pointer. Maybe a link on the download page would make sense in the longer run? Anyway, after importing the key signature verification worked during installation (as expected).

Great. I'll go ahead and add a mention on that page. Thanks for following up.


Meeting Client requirements

The biggest problem at least what I see is in a tenant environment.. is when there is a need to add default elements to all pages. For instance the client has a requirement for security banners on all pages. There isn't currently (as I understand) a mechanism to AUTOMATICALLY add something like mandatory security banners on O365.. not on prim.. on a tenant.

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

ID: 926ab97b-0406-116a-9b44-59df02beee7d
Version Independent ID: 3094c3cf-cd16-518e-48fc-095fb14036dd
Content: Customizing
Content Source: docs/solution-guidance/modern-experience-customizations-customize-pages.md
Product: sharepoint
GitHub Login: @spdevdocs
Microsoft Alias: spdevdocs

Can you  describe a bit more what you mean by mandatory security banners? In Modern SharePoint, we can use SPFx Application Customizers to load a banner at the top of modern pages.

You can use the PnP PowerShell to add a banner for both Site Collection/Web Scope, please take a look at this example:
Add a banner to your SharePoint Online site with a custom message using SharePoint Framework.


Build falls after upgrading webpack to v4

The usage of the plugin is regular. I will provide more info if needed.
ERROR in   TypeError: callback is not a function

  - index.js:27
    [Auth0-Config]/[html-webpack-inline-source-plugin]/index.js:27:7

  - new Promise

  - Hook.js:35 AsyncSeriesWaterfallHook.lazyCompileHook [as _promise]
    [Auth0-Config]/[tapable]/lib/Hook.js:35:21

  - index.js:679
    [Auth0-Config]/[html-webpack-plugin]/index.js:679:45

  - index.js:170
    [Auth0-Config]/[html-webpack-plugin]/index.js:170:16

  - util.js:16 tryCatcher
    [Auth0-Config]/[bluebird]/js/release/util.js:16:23

  - promise.js:512 Promise._settlePromiseFromHandler
    [Auth0-Config]/[bluebird]/js/release/promise.js:512:31

  - promise.js:569 Promise._settlePromise
    [Auth0-Config]/[bluebird]/js/release/promise.js:569:18

  - promise.js:614 Promise._settlePromise0
    [Auth0-Config]/[bluebird]/js/release/promise.js:614:10

  - promise.js:693 Promise._settlePromises
    [Auth0-Config]/[bluebird]/js/release/promise.js:693:18

  - async.js:133 Async._drainQueue
    [Auth0-Config]/[bluebird]/js/release/async.js:133:16

  - async.js:143 Async._drainQueues
    [Auth0-Config]/[bluebird]/js/release/async.js:143:10

  - async.js:17 Immediate.Async.drainQueues
    [Auth0-Config]/[bluebird]/js/release/async.js:17:14

ERROR in   TypeError: callback is not a function

  - index.js:27
    [Auth0-Config]/[html-webpack-inline-source-plugin]/index.js:27:7

  - new Promise

  - index.js:679
    [Auth0-Config]/[html-webpack-plugin]/index.js:679:45

  - index.js:170
    [Auth0-Config]/[html-webpack-plugin]/index.js:170:16

  - util.js:16 tryCatcher
    [Auth0-Config]/[bluebird]/js/release/util.js:16:23

  - promise.js:512 Promise._settlePromiseFromHandler
    [Auth0-Config]/[bluebird]/js/release/promise.js:512:31

  - promise.js:569 Promise._settlePromise
    [Auth0-Config]/[bluebird]/js/release/promise.js:569:18

  - promise.js:614 Promise._settlePromise0
    [Auth0-Config]/[bluebird]/js/release/promise.js:614:10

  - promise.js:693 Promise._settlePromises
    [Auth0-Config]/[bluebird]/js/release/promise.js:693:18

  - async.js:133 Async._drainQueue
    [Auth0-Config]/[bluebird]/js/release/async.js:133:16

  - async.js:143 Async._drainQueues
    [Auth0-Config]/[bluebird]/js/release/async.js:143:10

  - async.js:17 Immediate.Async.drainQueues
    [Auth0-Config]/[bluebird]/js/release/async.js:17:14

I got another error after updating to v4
xxx/node_modules/tapable/lib/Tapable.js:63
		throw new Error(`Plugin could not be registered at '${name}'. Hook was not found.\n` +
        ^
Error: Plugin could not be registered at 'html-webpack-plugin-alter-asset-tags'. Hook was not found.
BREAKING CHANGE: There need to exist a hook at 'this.hooks'. To create a compatiblity layer for this hook, hook into 'this._pluginCompat'.
    at Compilation.plugin (xxx/node_modules/tapable/lib/Tapable.js:63:9)
    at Compilation.deprecated [as plugin] (internal/util.js:53:15)
    at xxx/node_modules/html-webpack-inline-source-plugin/index.js:17:17
    at SyncHook.eval (eval at create (xxx/node_modules/tapable/lib/HookCodeFactory.js:17:12), <anonymous>:7:1)
    at SyncHook.lazyCompileHook [as _call] (xxx/node_modules/tapable/lib/Hook.js:35:21)
    at Compiler.newCompilation (xxx/node_modules/webpack/lib/Compiler.js:418:26)
    at hooks.beforeCompile.callAsync.err (xxx/node_modules/webpack/lib/Compiler.js:457:29)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (xxx/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:6:1)
    at AsyncSeriesHook.lazyCompileHook [as _callAsync] (xxx/node_modules/tapable/lib/Hook.js:35:21)
    at Compiler.compile (xxx/node_modules/webpack/lib/Compiler.js:452:28)
    at compiler.hooks.watchRun.callAsync.err (xxx/node_modules/webpack/lib/Watching.js:77:18)
    at _err0 (eval at create (xxx/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:11:1)
    at invalid (xxx/node_modules/webpack-dev-middleware/lib/context.js:76:7)
    at context.compiler.plugin (xxx/node_modules/webpack-dev-middleware/lib/context.js:116:5)
    at AsyncSeriesHook.eval [as callAsync] (eval at create (xxx/node_modules/tapable/lib/HookCodeFactory.js:24:12), <anonymous>:7:1)
    at AsyncSeriesHook.lazyCompileHook [as _callAsync] (xxx/node_modules/tapable/lib/Hook.js:35:21)

I fixed the plugin in #38.

please update to new version~


OPSEXP-1372 - switch to FQN (part 2 - acs, check-versions and prerequisite_checks playbooks)

Creating this draft PR as a separate branch from OPSEXP-1372, with changes to acs playbook

#421 had introduced these changes, as being branch created with commit history from this part, whic merged before this one had chance. Closing it


[10.x] Added Str::dotify() helper method

This helper function makes easy to convert to a notation like foo[bar][baz] (array notation) to foo.bar.baz (dot notation) without having to process an array and flatten it to retrieve a dot variant of just a position.
A use case may be this: when working with array in forms, old() helper function supports only array with dot notation while the input name must be given with array notation, using this helper function we could write a code like this (for example, in a Blade component):
@props([
    'name' => 'foo[bar][baz]'
])

<x-text-input :value="old(Str::dotify($name))" :name="$name" />

It works with numeric arrays and quoted indexed as well.

Thanks for your pull request to Laravel!
Unfortunately, I'm going to delay merging this code for now. To preserve our ability to adequately maintain the framework, we need to be very careful regarding the amount of code we include.
If possible, please consider releasing your code as a package so that the community can still take advantage of your contributions!
If you feel absolutely certain that this code corrects a bug in the framework, please "@" mention me in a follow-up comment with further explanation so that GitHub will send me a notification of your response.


Mixing of 3sdk --expert can get you in trouble

When you create a threebot with --expert enable you container will moutn the code inside your container from ~/sandbox/code
if you afterwards start the same container with pull=true withouth expert mode it might deleted all your code on the host.
This behaviour is ofcourse undesirable.
When pulling code we need to detect if our container we are pulling from has coded mounted or not instead of relying on the --expert flag

verified.


TextDetector doesn't work with hindi language "hi-IN"

It works for image with english text. it says language is undefined.

Are you talking about the example app or the plugin? The example app only recognizes English, if you need another language you need to:

Download the model
pass that in the method

Thanks for response. I am using  https://pub.dev/packages/google_ml_kit . I am very new in this area, so It would be great if you could tell me where I can find model and which method you are talking about.

@uttamgupta Currently the original google API supports only Latin - based character set, hence it is not being recognized. Look here for more details link.

Looks like google cloud vision api is only option for other than latin based char set.  I hope this standalone google ml kit would support other language too in near future. So I am closing this issue.


⚠ Secret Website 3 has degraded performance

In 57f9d66, Secret Website 3 ($SECRET_WEBSITE_3) experienced degraded performance:

HTTP code: 200
Response time: 2011 ms

Resolved: Secret Website 3 performance has improved in 1c3b1d9.


Switch to Unit Tests

PR is added to the queue for testing as 1. task. (1adf945)

Test (Fail) 54970261 build is completed (1adf945)
See https://github.com/ThaliTester/TestResults/tree/549702611adf945_Switch_to_Unit_Tests_tobybrad/ for the logs

PR is added to the queue for testing as 1. task. (d7d3b81)

Test (Fail) 54970261 build is completed (d7d3b81)
See https://github.com/ThaliTester/TestResults/tree/54970261d7d3b81_Switch_to_Unit_Tests_tobybrad/ for the logs

PR is added to the queue for testing as 1. task. (c23922d)

Test (Success) 54970261 build is completed (c23922d)
See https://github.com/ThaliTester/TestResults/tree/54970261c23922d_Switch_to_Unit_Tests_tobybrad/ for the logs

Test 54970261c23922d(c23922d) has failed
See https://github.com/ThaliTester/TestResults/tree/54970261c23922d_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 2. task. (7d40def)

Test (Success) 54970261 build is completed (7d40def)
See https://github.com/ThaliTester/TestResults/tree/549702617d40def_Switch_to_Unit_Tests_tobybrad/ for the logs

Test 549702617d40def(7d40def) has failed
See https://github.com/ThaliTester/TestResults/tree/549702617d40def_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 2. task. (fc259e9)

Test (Success) 54970261 build is completed (fc259e9)
See https://github.com/ThaliTester/TestResults/tree/54970261fc259e9_Switch_to_Unit_Tests_tobybrad/ for the logs

Test 54970261fc259e9(fc259e9) has failed
See https://github.com/ThaliTester/TestResults/tree/54970261fc259e9_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 1. task. (0263d9b)

Test (Success) 54970261 build is completed (0263d9b)
See https://github.com/ThaliTester/TestResults/tree/549702610263d9b_Switch_to_Unit_Tests_tobybrad/ for the logs

Test<PHONE_NUMBER>63d9b(0263d9b) has failed
See https://github.com/ThaliTester/TestResults/tree/549702610263d9b_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 1. task. (aa56788)

Test (Success) 54970261 build is completed (aa56788)
See https://github.com/ThaliTester/TestResults/tree/54970261aa56788_Switch_to_Unit_Tests_tobybrad/ for the logs

Test 54970261aa56788(aa56788) has failed
See https://github.com/ThaliTester/TestResults/tree/54970261aa56788_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 2. task. (8c0ebdb)

PR is added to the queue for testing as 3. task. (ac9928f)

Test (Success) 54970261 build is completed (8c0ebdb)
See https://github.com/ThaliTester/TestResults/tree/549702618c0ebdb_Switch_to_Unit_Tests_tobybrad/ for the logs

Test (Success) 54970261 build is completed (ac9928f)
See https://github.com/ThaliTester/TestResults/tree/54970261ac9928f_Switch_to_Unit_Tests_tobybrad/ for the logs

PR is added to the queue for testing as 4. task. (e0c50c1)

Test (Success) 54970261 build is completed (e0c50c1)
See https://github.com/ThaliTester/TestResults/tree/54970261e0c50c1_Switch_to_Unit_Tests_tobybrad/ for the logs

Test 549702618c0ebdb(8c0ebdb) has failed
See https://github.com/ThaliTester/TestResults/tree/549702618c0ebdb_Switch_to_Unit_Tests_tobybrad/ for the fail logs

Test 54970261ac9928f(ac9928f) has failed
See https://github.com/ThaliTester/TestResults/tree/54970261ac9928f_Switch_to_Unit_Tests_tobybrad/ for the fail logs

Test 54970261e0c50c1(e0c50c1) has failed
See https://github.com/ThaliTester/TestResults/tree/54970261e0c50c1_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 1. task. (40aeaf4)

PR is added to the queue for testing as 2. task. (d953416)

Test (Success) 54970261 build is completed (40aeaf4)
See https://github.com/ThaliTester/TestResults/tree/5497026140aeaf4_Switch_to_Unit_Tests_tobybrad/ for the logs

Test (Success) 54970261 build is completed (d953416)
See https://github.com/ThaliTester/TestResults/tree/54970261d953416_Switch_to_Unit_Tests_tobybrad/ for the logs

Test<PHONE_NUMBER>aeaf4(40aeaf4) has failed
See https://github.com/ThaliTester/TestResults/tree/5497026140aeaf4_Switch_to_Unit_Tests_tobybrad/ for the fail logs

Test 54970261d953416(d953416) has failed
See https://github.com/ThaliTester/TestResults/tree/54970261d953416_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 1. task. (3245198)

Test (Success) 54970261 build is completed (3245198)
See https://github.com/ThaliTester/TestResults/tree/549702613245198_Switch_to_Unit_Tests_tobybrad/ for the logs

Test<PHONE_NUMBER>45198(3245198) has failed
See https://github.com/ThaliTester/TestResults/tree/549702613245198_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 1. task. (9369e5e)

Test (Success) 54970261 build is completed (9369e5e)
See https://github.com/ThaliTester/TestResults/tree/549702619369e5e_Switch_to_Unit_Tests_tobybrad/ for the logs

PR is added to the queue for testing as 2. task. (0b97681)

Test (Success) 54970261 build is completed (0b97681)
See https://github.com/ThaliTester/TestResults/tree/549702610b97681_Switch_to_Unit_Tests_tobybrad/ for the logs

Test<PHONE_NUMBER>69e5e(9369e5e) has failed
See https://github.com/ThaliTester/TestResults/tree/549702619369e5e_Switch_to_Unit_Tests_tobybrad/ for the fail logs

Test 549702610b97681(0b97681) has successfully finished without an error
See https://github.com/ThaliTester/TestResults/tree/549702610b97681_Switch_to_Unit_Tests_tobybrad/ for the logs

PR is added to the queue for testing as 1. task. (79923a9)

PR is added to the queue for testing as 2. task. (86051be)

Test (Success) 54970261 build is completed (79923a9)
See https://github.com/ThaliTester/TestResults/tree/5497026179923a9_Switch_to_Unit_Tests_tobybrad/ for the logs

Review status: 0 of 12 files reviewed at latest revision, 1 unresolved discussion.

thali/readme.md, line 7 [r1] (raw file):
This change was just to force CI the first time round IIRC

Comments from the review on Reviewable.io

Test (Success) 54970261 build is completed (86051be)
See https://github.com/ThaliTester/TestResults/tree/5497026186051be_Switch_to_Unit_Tests_tobybrad/ for the logs

Reviewed 12 of 12 files at r1.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

test/TestServer/TestFramework.js, line 41 [r1] (raw file):
Is the behavior now so that if you omit number of devices or set it to be -1 the end result is the same, i.e., value taken from the arguments given to index.js?
I wonder would it make sense to document userConfig in the readme? I noticed there is something in the UnitTestConfg.js file, but a readme might be a better fit since these are relevant to performance tests as well and there is other documentation of the config file in there (that should be removed or updated since it isn't all accurate anymore after the changes).

Comments from the review on Reviewable.io

Test<PHONE_NUMBER>923a9(79923a9) has failed
See https://github.com/ThaliTester/TestResults/tree/5497026179923a9_Switch_to_Unit_Tests_tobybrad/ for the fail logs

Test<PHONE_NUMBER>051be(86051be) has failed
See https://github.com/ThaliTester/TestResults/tree/5497026186051be_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 1. task. (7cfd775)

Test (Success) 54970261 build is completed (7cfd775)
See https://github.com/ThaliTester/TestResults/tree/549702617cfd775_Switch_to_Unit_Tests_tobybrad/ for the logs

Review status: 12 of 13 files reviewed at latest revision, 1 unresolved discussion.

test/TestServer/TestFramework.js, line 41 [r1] (raw file):
-1 indicates use value from arguments, yes. I'll update the readme.

Comments from the review on Reviewable.io

Test 549702617cfd775(7cfd775) has failed
See https://github.com/ThaliTester/TestResults/tree/549702617cfd775_Switch_to_Unit_Tests_tobybrad/ for the fail logs

PR is added to the queue for testing as 2. task. (7e2936d)

Review status: 12 of 13 files reviewed at latest revision, 1 unresolved discussion.

test/TestServer/TestFramework.js, line 41 [r1] (raw file):
Done.

Comments from the review on Reviewable.io

Test (Success) 54970261 build is completed (7e2936d)
See https://github.com/ThaliTester/TestResults/tree/549702617e2936d_Switch_to_Unit_Tests_tobybrad/ for the logs

Review status: 12 of 13 files reviewed at latest revision, 1 unresolved discussion.

test/TestServer/TestFramework.js, line 41 [r1] (raw file):
Done.

Comments from the review on Reviewable.io

Test 549702617e2936d(7e2936d) has failed
See https://github.com/ThaliTester/TestResults/tree/549702617e2936d_Switch_to_Unit_Tests_tobybrad/ for the fail logs


Implement: git submodule update

Adds functionality for #140

Waiting on Approval @mrkno

Does /update still crash? As this touches update it would be where we fix it if it does

@Awarua- did you ever find the cause of this issue?

Approved (in its current state)

@Awarua- the exit problem still exists

Approved

Approved (2.0)

Approved


predict_generator may shuffle batches if used with workers != 1

Keras version: 2.0.4 (backend is tensorflow, but it's irrelevant)
Premise: I have looked again and again at the library code and I think I am certain of this problem, but I might be missing something, so check my reasoning. I also, to the best of my googling skill, believe that the behaviour is undocumented.
My use case: I want to predict the labels of a big dataset of images and I want to associate each label with the corresponding filename.
My code:
model = InceptionV3(weights='imagenet')
datagen = ImageDataGenerator(preprocessing_function=preprocess_input)
generator = datagen.flow_from_directory(dataset_dir,
                                        target_size=(299,299),
                                        batch_size=batch_size,
                                        class_mode=None,
                                        shuffle=False)
preds = model.predict_generator(generator, len(generator.filenames)//batch_size, workers=5)

Note how it's important that the order of the lables in preds matches the order of the filenames in generator.filenames. I want to use multiple workers to build the queue because with just one worker the GPU stalls between batches.
The expected behaviour: predict_generator spawns 5 worker threads that put batches in a queue in the same order as they are produced by the generator.
The issue: I believe there is a possibility for batch shuffling when batches are enqueued in GeneratorEnqueuer::data_generator_task(). Reshuffling happens, for example, in the following sequence of events.
In data_generator_task():

worker_1 calls next(self._generator) and gets batch_1, then gets suspended.
worker_2 calls next(self._generator) and gets batch_2.
worker_2 enqueues batch_2.
worker_1 resumes execution and enqueues batch_1.
The two batches have been swapped, so the predictions do not match the corresponding filenames anymore.

The behaviour of the thread scheduler is unpredictable so the notion of "order" is not possible. Overriding predict_generator to save the actual order would work.

If that's the case, what's the intended use of the multiple workers in predict_generator? If the order is not preserved, the labels produced cannot be matched to the data they come from.
I'm working here on a possible fix for the shuffling that uses multiprocessing's apply_async function.
It works (at least for me on Windows) when pickle_safe=False, but I can't check the pickle-based implementation because I run in the "Can't pickle local object 'GeneratorEnqueuer.start..data_generator_task" error mentioned in #5071 (any help testing the code on UNIX is very appreciated)

One way to easily fix this would be implement a new API to look like the one from Pytorch. The generator would become indexed and the main thread would ask for input according to ids to idle processes.
So the main threads ask for 1,2,3,4,5 to all 5 processes, the first one to return get the 6, then the 7. It's 1 more call between the main process and the others processes, but it would solve a lot of problem. Would be a major change though so likely to never happen

It's actually pretty easy to implement with concurrent.futures (or equivalently with multiprocessing.pools.ThreadPool and its method apply_async() which essentially does the same as the futures). I played around with both today and came up with some pretty good results limited, however, to threads.
From what I could see today, generators are not supposed to be sent around processes at all (since they're not picklable and Windows doesn't have fork()) and what the code does if pickle_safe=True is both platform-dependent and either buggy or broken.
I implemented the interface for the threads, but I'm stuck for the equivalent with multiprocessing... mostly because I'm not sure there should be at all an interface based on multiprocessing.

For multiprocessing, you need some sort of indexing because the generator is copied.
Something like this would work.
https://gist.github.com/Dref360/30e0eda6f8f748460057ab2bb2aa835a

Uhm I think I'm missing something. I apologize for my long posts, but I'm trying to be as clear as possible explaining my reasoning because I'm not sure I got everything right.

I am working under the assumption that the library should work equally under windows and linux, since both backends are available for both platforms (but I studied the behaviour under linux to see if at least there it works).
I also assume that the specific order in which the generator produces the batches is important and should not be altered neither by reordering the batches, nor by doubling/cloning batches when these are enqueued.

I think this is the expected behaviour because the only difference between generating the batches yourself and calling per-batch {train, evaluate, predict}_batch and building a generator and passing it to {train, evaluate, predict}_generator should IMO be the better resource usage of the generator that comes from queueing more batches so that the network can run as fast as it can.
From my research and experiments, I have seen that generators are not picklable and thus cannot be passed to a subprocess that is spawned on windows. This already breaks my first assumptoin, but I'll put windows aside for a moment and look at what happens in Linux.
Due to the generation of processes via fork(), the generator is split into identical clones, each of which wll then produce the same sequence of batches, independently. Let's call bi_j the ith batch generated by the jth copy of the generator. If we have workers=2, even if we enforce that in each process the batches are enqueued in the ordered produced by the local copy of te generator, we can have different layouts of the batches in the common queue.
For example, we might have b1_1, b2_1, b3_1, b1_2, b2_2, b3_2, ... or b1_1, b1_2, b2_1, b2_2, ... or any other mix of the two sequences bi_1, bi_2.
This, IMO, should be considered a bug because

the specific queue layout is nondeterministic even when the generator is.
the amount of times a specific batch is enqueued is also nondeterministic, depends on workers and randomply ranges from 1 to workers
the steps parameter (and its equivalents) of the *_generator functions counts one step per batch extracted by the queue. If, for example, we want to evaluate_generator on 5 batches and we have 5 workers, it is possible that the evaluation actually runs only on the first batch, cloned 5 times. Thus, the measured accuracy is wrong.

Any updates on this?

In PR https://github.com/fchollet/keras/pull/6891

My workaround for this was to use GeneratorEnqueuer for resource allocation and then predict_on_batch. I don't care about the ordering, because the generator yields (X, filename) and then I just take the X to predict_on_batch.
    enqueuer = GeneratorEnqueuer(batch_generator, pickle_safe=False)
    enqueuer.start(max_q_size=10, workers=4)
    while True:
        try:
            X, info = enqueuer.queue.get(1)
            Y = self.model.predict_on_batch(X)
            label_objects(info, Y) # can do this using apply_async for efficiency

        except Queue.Empty:
            enqueuer.stop()
            break

@GPhilo is this fixed now?

The new dataset API from pr #6891 fixes the problem.

Please can you close the issue?


I get an error when try to run the project

Bluefruit_LE_Connect-master/Pods/Moscapsule/Moscapsule/Moscapsule.swift:377:39: Cannot invoke initializer for type 'UnsafePointer' with an argument list of type '(UnsafeMutableRawPointer!)'

I'm afraid we don't/can't offer any support on the mobile apps. The source code is provided as a referencepurely 'as-is', but it isn't something we can actively support beyond our own in house needs to publish apps in the respective app stores. With limited resources, we need to focus our support team on embedded firmware and HW, and there are much larger mobile development communities out there for app development. Thanks for your understanding!


✨[Feature Request]: Replacemnt of Chatbot

issue #461
Description
Added Chatbot
Related Issues
#461
Type of PR

[ ] Bug fix
[X] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Screenshots / videos (if applicable)
https://github.com/Anishkagupta04/RAPIDOC-HEALTHCARE-WEBSITE-/assets/154777864/6598b616-c0f2-4b61-b0db-847a1453ade4
Checklist

[X] I have gone through the contributing guide
[X] I have updated my branch and synced it with project main branch before making this PR
[X] I have performed a self-review of my code
[X] I have tested the changes thoroughly before submitting this pull request.
[X] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[X] I have commented my code, particularly in hard-to-understand areas.

Additional context:
Added Code:

@varshith257 please assign me this issue add Labels

@Anjaliavv51 Thanks for this making chatbot responsive


Add support to single # as the version header

Some changelog presets, like conventional-changelog-angular, use # as the version header.
By the way, in this particular preset, both # and ## are used as version headers (## for patches, # for the other version types).
Instead of adding a parser preset and add complexity to the project, we could just support these two header levels.
I could create a PR if you agree with that :)

Sounds good to me!


Render code and diffs

Code and diffs look pretty. You can switch between the two with a button. The seeded before/after files are difflib.py from Python 2.7 and Python 3.5 respectively.

Resolves #646, #647

Ready for review!

Looks great!  Some comments:

The syntax highlighting CSS italicizes comments and docstrings: My person preference is to not italicize them. I believe Github highlighting also does not use italics for comments/strings.
The highlight.css file can be moved to common (and this also solved a layout issue with the overall page). I couldn't really figure out why it caused the layout issue (screenshot in comment above)
It might be worth removing the h1 header here. I'm not sure what value it provides for the user

We could replace it with a h3 with the submission info.
On small screen sizes - the tables goes off the edge.

f65b0a9 fixes the issues I mentioned above. Feel free to merge if those changes look ok to you.


Add option to have multiple containers

This PR allows to have additional containers (e.g. to make it possible to use a Prometheus exporter for postfix).

Hey, which prometheus exporter do you use ..  https://github.com/kumina/postfix_exporter  ?


Upgrade to Kubernetes 1.25

What this PR does / why we need it:
Upgrade to Kubernetes 1.25
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #

e2e
[SynchronizedAfterSuite] PASSED [0.905 seconds]
[SynchronizedAfterSuite]
/home/ubuntu/go/src/github.com/oracle/cluster-api-provider-oci/test/e2e/e2e_suite_test.go:252

  Timeline >>
  STEP: Tearing down the management cluster @ 03/02/23 05:24:42.262
  << Timeline
------------------------------

Ran 6 of 25 Specs in 2853.370 seconds
SUCCESS! -- 6 Passed | 0 Failed | 0 Pending | 19 Skipped


CalTRACK Issue: Difference in Differences (DiD) methods using control groups for better gross / net savings

Issue: Difference in Differences (DiD) methods using control groups can yield more accurate and discrete gross and net savings estimates than normalized pre and post intervention comparisons for participant groups only.
Prerequisites: This issue is in the CalTrack working group. Issues previously opened are only tangential to the formulation of control groups [exogenous effects (#1050, accuracy (#73), zip code mapping (#65, # 26) and non- routine events (#84)].
Description: The proposed update would require consideration of appropriate control groups and their use when valid control groups can be developed.
Using before and after consumption normalized for weather (and possibly other variables) provide estimates of total savings for the participant group. This includes gross impacts, net impacts and ‘exogenous’ impacts due to the economy, societal messaging, customer behavior and other events.  These exogenous effects can be captured using a control group with DiD mthods, which can help isolate those net (free ridership) impacts and provide more reliable net to gross (NTG) impacts for specific interventions. NTG data gathering can then concentrate on more definitive and discrete events as to whether the control group member implemented a specific intervention outside of the program, replacing more ambiguous and costly analysis methods. Note that if the program intervention was implemented by a control group member during the pre or post period, net impacts could be slightly underestimated as the potential implementing non-participant pool is smaller (exogenous effects would not be affected).
Methods for matching participants can be standardized based on available information.
Matching criteria can include zip codes, groups of zip codes, county, climate zones, population density (large urban/small urban/suburban, exurban, rural designation), household size, income levels, building square footage, building type (SF/MF/DMo), ownership (own/rent), condo flag, change in service ID during pre or post analysis period, and daily/monthly energy use profiles (as a proxy for some of the aforementioned criteria). Control group members would be dropped upon change in Service ID, major other EE/RE/electrification measures, or participation in other correlated EE programs during the pre or post period.
Proposed Test Methodology

Develop minimum population of recent program participants (2016/2017, residential, similar characteristics from description above). Smaller sample sizes (minimum 100) are allowed for test phase. For testing purposes, size can be small and restricted to one zip code and building type, for instance.
Find matching sample from non-participating customers. Verify no change in ownership or major energy using equipment (including adoption of incented technologies).
Use the same weather adjustments for control group as applied to participant group (or other appropriate identical weather adjustments for both groups).
Test that regression models for the participant group function for the control group (+/-10%; include r squared and CVRSME at a minimum).
Check proportion of savings from participants and control groups.
Make adjustments based on findings until successful for small test populations. Expend to large populations (segmented as needed). Test regression models.

Acceptance Criteria
If regression model results are similar for the larger set of participants, accept the use of control groups to account for both net impacts (free ridership) and exogenous effects.  Gross impacts for the participants can be adjusted upwards or downwards based on the results from the control group.  (Findings should be presented with program reporting to the CPUC for more accurate and refined net to gross analysis).

@AJLutz Thanks for this issue. It's actually out of scope of CalTRACK, but perfect for GRID. Would you mind reposting it in that working group? https://github.com/energy-market-methods/GRID/issues
Thanks,
McGee

@jkoliner Once Al moves this to GRID, where it belongs, we should have some way of closing and marking as out of scope. Maybe a tag of sorts. @hshaban Does that make sense to you?

One more point @AJLutz when you do repost this in GRID, it would be helpful to be a lot more specific. Take a look at the existing CalTRACK methods for a reference. We'd need to document how exactly the comparison group would be selected. What exactly would be the acceptance criteria, etc.

McGee –
I can see how the net impacts may fall under GRID.
However, with the larger samples afforded under CalTrack, and the fact that we are up and going there, I still think it is relevant there. Maybe we can list in both places?
Control groups would seem to fall under CalTrack as they are a tool to help us get to the right values. Some jurisdictions claim a NTGR of 1.00, so we’d be seeing exogenous effects only. I see a direct comparison to the pharma industries that use control groups most often (with millions of lives and billions in revenues on the line). Why not in CalTrack?
Maybe it will not raise to the top issues to be addressed in the first round for CalTrack. We discussed tackling three issues at a time.
As a pre draft issue, I am not looking to develop this further for GRID or CalTrack. Can further detail wait until the groups decide when this is to be tackled?
Al
Al Lutz, PE, CEM, LEED AP
AJL Resources, LLC
510-504-4813
www.al-lutz.com
www.linkedin.com/in/al-lutz-ajlenergyhttp://www.linkedin.com/in/al-lutz-ajlenergy
PS - Sorry I have a conflict and may not be able to make the GRID meeting (or not until the end). Please let me know if there is relevant discussion on this.
From: McGee Young<EMAIL_ADDRESS>Sent: Tuesday, May 7, 2019 8:34 PM
To: energy-market-methods/caltrack<EMAIL_ADDRESS>Cc: AJLutz<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [energy-market-methods/caltrack] CalTRACK Issue: Difference in Differences (DiD) methods using control groups for better gross / net savings (#119)
@AJLutzhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FAJLutz&data=02|01||3d3229c2c372474a6a3d08d6d3660164|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636928832393269230&sdata=mJU4lgxtDB66jAP%2FVKHKsHY04UUOjeN%2BCNwDoRvCAUk%3D&reserved=0 Thanks for this issue. It's actually out of scope of CalTRACK, but perfect for GRID. Would you mind reposting it in that working group? https://github.com/energy-market-methods/GRID/issueshttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fenergy-market-methods%2FGRID%2Fissues&data=02|01||3d3229c2c372474a6a3d08d6d3660164|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636928832393279247&sdata=Bry3VZoIFShBheaK5%2FuZcOSuFd9WCAHYgHbBlzYZoxs%3D&reserved=0
Thanks,
McGee
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fenergy-market-methods%2Fcaltrack%2Fissues%2F119%23issuecomment-490334114&data=02|01||3d3229c2c372474a6a3d08d6d3660164|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636928832393289246&sdata=8HFuTr4whwzX%2BoadvcnxAL8greERjivhTqV8PdbN2N4%3D&reserved=0, or mute the threadhttps://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FAL7C442N4PLWR7QVMZPV4L3PUJC2LANCNFSM4HLNSIKA&data=02|01||3d3229c2c372474a6a3d08d6d3660164|84df9e7fe9f640afb435aaaaaaaaaaaa|1|0|636928832393299251&sdata=DeLFwaKqEhnAx0Vj%2FhLd%2BTUEO5geYBPsvJ2v4Dmwrsg%3D&reserved=0.

Closed because it's been resubmitted to GRID Working group


feat(wash-cli): prefix absolute path references with file://

A few users have been confused trying to run commands like wash start actor /path/to/file and seeing an error (from the host). The file:// scheme is rough devX, so instead, if wash can detect the reference is an absolute file path (i.e. it starts with a /), wash can simply prefix the reference for the user

@vados-cosmonic looks like @rvolosatovs reran the job and it passed, so it does look like a flake

Did you happen to get the error report? I'm trying to find the failed run, but I can't find it, I can only see the successful run now.
Approving but wanted to know if that failure was an actual test failure or some other infra ephemeral failure


Failure creating virtual conda env with Pandas

VS Version: 28526.9.d16.0stg
Python Tool Version: 16.0.19026.2
Repro steps:
1.Create python application
2.Right-click in python environment node and select add environment
3.Select Conda environment tab, select like below:

expect result: create conda virtual environment successfully
actual result: failed to create conda environment, error information:
----- Creating 'env11' -----
Solving environment: ...working... done
==> WARNING: A newer version of conda exists. <==
current version: 4.5.11
latest version: 4.6.1
Please update conda by running
$ conda update -n base -c defaults conda
environment location: C:\Users\vwazho.conda\envs\env11
added / updated specs:
- pandas
The following packages will be downloaded:
package                    |            build
---------------------------|-----------------
pandas-0.24.0              |   py37ha925a31_0         9.6 MB
The following NEW packages will be INSTALLED:
blas:            1.0-mkl
ca-certificates: 2018.12.5-0
certifi:         2018.11.29-py37_0
icc_rt:          2019.0.0-h0cc432a_1
intel-openmp:    2019.1-144
mkl:             2019.1-144
mkl_fft:         1.0.10-py37h14836fe_0
mkl_random:      1.0.2-py37h343c172_0
numpy:           1.15.4-py37h19fb1c0_0
numpy-base:      1.15.4-py37hc3f5095_0
openssl:         1.1.1a-he774522_0
pandas:          0.24.0-py37ha925a31_0
pip:             18.1-py37_0
python:          3.7.2-h8c8aaf0_0
python-dateutil: 2.7.5-py37_0
pytz:            2018.9-py37_0
setuptools:      40.6.3-py37_0
six:             1.12.0-py37_0
sqlite:          3.26.0-he774522_0
vc:              14.1-h0510ff6_4
vs2015_runtime:  14.15.26706-h3a45250_0
wheel:           0.32.3-py37_0
wincertstore:    0.2-py37_0
Downloading and Extracting Packages
pandas-0.24.0        | 9.6 MB    |            |   0%
pandas-0.24.0        | 9.6 MB    |            |   0%
pandas-0.24.0        | 9.6 MB    | ###1       |  31%
pandas-0.24.0        | 9.6 MB    | ######7    |  68%
pandas-0.24.0        | 9.6 MB    | ########5  |  85%
pandas-0.24.0        | 9.6 MB    | #########2 |  93%
FileNotFoundError(2, 'No such file or directory')
----- Failed to create 'env11' -----
note: if create Conda environment with SciPy , it was failed like pandas

Let's reopen if that happens again.

VS Version: 16.0.0 [28727.162.d16.0]
Python Tool Version: 16.0.19074.1
Workload: "Desktop development with C++" and "Python development"
Same error occurs when creating conda env with "pandas",“scipy", "matplotlib","plotly","seaborn","karas","tensorflow","theano","django" and "requests".

Were you running VS as admin?
To get more detailed error, we can run with the verbose option from command line:
cd C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Extensions\Microsoft\Python\Miniconda\Miniconda3-x64\Scripts

conda create -v -v -v -n myenvname -y pandas matplotlib

(repeating -v 3 times gives the most verbose output)
This will print details for the FileNotFound error.

This is the detailed error information:
condaenv.log

This is the path causing problem:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Common7\IDE\Extensions\Microsoft\Python\Miniconda\Miniconda3-x64\pkgs\matplotlib-3.0.3-py37hc8f65d3_0\Lib\site-packages\matplotlib\backends\web_backend\jquery-ui-1.12.1\images\ui-icons_cc0000_256x240.png

It's 267 characters long, so it's over MAX_PATH.
If the downloaded packages are getting written under VS install folder, it must mean VS is running as admin. When not running as admin, the packages will go under the user folder, which is a shorter path that avoids this issue in most cases.

The change I'm making for the updated miniconda, to force use the pkgs folder under the user's folder, should take care of this.


Update API closest_destination function to handle destination attributes rather than a selected objectstore

This PR updates the API function closest_destinations to handle and work with destination attributes instead of the selected objectstore.
The idea is to choose a destination closest to the object store where the dataset is located, i.e., choosing the compute closest to the data or edge computing in other terms.
I have also updated the example and the Readme to reflect the same.
A PR to add a helper function to find/extract the object store ID and the size of the dataset from a job was recently submitted and merged into TPV.
Through this PR, we try to use this helper function to get the object store ID and size of the dataset and send it to the API, and the closest_destination function in the API will handle the most basic scenarios,

When there is no object store: Returns all destination IDs, and we can fall to the TPVs random weighted sampling method
When there is only one dataset
When there is more than one dataset and all of them reside in the same object store
When there is more than one dataset, and they reside in different object stores

Please double-check the changes in the PR.
Notes:
@bgruening suggested in the TPV channel that we could also use the size of the dataset in the decision-making. I have not implemented that in this PR.

Thanks @sanjaysrikakulam ! This looks good.
Just a note to discuss is, we should probably have a small test suite that uses both TPV and the API within this repo. Until now I have been updating a test that uses the API here: https://github.com/galaxyproject/total-perspective-vortex/pull/108 but since we're contionually updating the API, this type of test should probably not be included in the TPV codebase. Deploying the API with a galaxy instance is probably too much for the purpose of testing.
What do you think?

Just a note to discuss is, we should probably have a small test suite that uses both TPV and the API within this repo. Until now I have been updating a test that uses the API here: galaxyproject/total-perspective-vortex#108 but since we're contionually updating the API, this type of test should probably not be included in the TPV codebase. Deploying the API with a galaxy instance is probably too much for the purpose of testing as well.
What do you think?

My feeling is that we should get the service/API done at first. The TPV integration can come later. That was the whole idea of creating the API, so that we don't need to deal with TPV integration and changes much and can iterate faster on the API level.

The API itself is "ready". It is already deployed on the ESG instance. Sebastian has requested a complete integration demo for the deliverable due 29th Feb 2024.
The API can be queried for example using the below,
import requests

destinations = [
      {
         "id": "pulsar_italy",
         "abstract": False,
         "runner": "general_pulsar_1",
         "destination_name_override": "pulsar_italy",
         "cores": None,
         "mem": None,
         "gpus": None,
         "min_cores": None,
         "min_mem": None,
         "min_gpus": None,
         "max_cores": None,
         "max_mem": None,
         "max_gpus": None,
         "min_accepted_cores": None,
         "min_accepted_mem": None,
         "min_accepted_gpus": None,
         "max_accepted_cores": 8,
         "max_accepted_mem": 32,
         "max_accepted_gpus": None,
         "env": None,
         "params": None,
         "resubmit": None,
         "scheduling": {
         "require": ["pulsar"],
         "prefer": [],
         "accept": ["general"],
         "reject": []
         },
         "inherits": None,
         "context": {
            "latitude": 50.0689816,
            "longitude": 19.9070188 },
         "rules": {},
         "tags": None
      },
      {
         "id": "slurm_poland",
         "abstract": False,
         "runner": "slurm",
         "destination_name_override": "slurm_poland",
         "cores": None,
         "mem": None,
         "gpus": None,
         "min_cores": None,
         "min_mem": None,
         "min_gpus": None,
         "max_cores": None,
         "max_mem": None,
         "max_gpus": None,
         "min_accepted_cores": None,
         "min_accepted_mem": None,
         "min_accepted_gpus": None,
         "max_accepted_cores": 16,
         "max_accepted_mem": 64,
         "max_accepted_gpus": None,
         "env": None,
         "params": None,
         "resubmit": None,
         "scheduling": {
         "require": [],
         "prefer": [],
         "accept": ["slurm"],
         "reject": []
         },
         "inherits": None,
         "context": {
            "latitude": 51.9189046,
            "longitude": 19.1343786},
         "rules": {},
         "tags": None
      },
      {
        "id": "slurm_germany",
        "abstract": False,
        "runner": "slurm",
        "destination_name_override": "slurm_germany",
        "cores": None,
        "mem": None,
        "gpus": None,
        "min_cores": None,
        "min_mem": None,
        "min_gpus": None,
        "max_cores": None,
        "max_mem": None,
        "max_gpus": None,
        "min_accepted_cores": None,
        "min_accepted_mem": None,
        "min_accepted_gpus": None,
        "max_accepted_cores": 16,
        "max_accepted_mem": 64,
        "max_accepted_gpus": None,
        "env": None,
        "params": None,
        "resubmit": None,
        "scheduling": {
        "require": [],
        "prefer": [],
        "accept": ["slurm"],
        "reject": []
        },
        "inherits": None,
        "context": {
        "latitude": 51.165691,
        "longitude": 10.451526},
        "rules": {},
        "tags": None
        }
   ]
objectstores = {
      "object_store_italy_S3_01": {
         "latitude": 57.0689816,
         "longitude": 9.9070188,
         "other_stuff_that_we_find_useful": "foobar"
      },
      "object_store_poland": {
         "latitude": 41.9189046,
         "longitude": 19.1343786,
         "other_stuff_that_we_find_useful": "foobar"
      },
      "object_store_germany": {
         "latitude": 31.165691,
         "longitude": 14.451526,
         "other_stuff_that_we_find_useful": "foobar"
      },
   }
dataset_attributes = {
        "dataset_italy": {
            "object_store_id": "object_store_italy_S3_01",
            "size": 123
        },
        "dataset_poland": {
            "object_store_id": "object_store_poland",
            "size": 456
        },
        "dataset_germany": {
            "object_store_id": "object_store_germany",
            "size": 789
        }
    }

api_url = <API_URL>

input_data = {
    "destinations": destinations,
    "objectstores": objectstores,
    "dataset_attributes": dataset_attributes
}

response = requests.post(api_url, json=input_data)
print(response.json())

However, more algorithms other than geolocation need to be added by Abdulrahman, which will take the API to the next step.


Race condition in Objective-C channel creation while offline

Should this be an issue in the gRPC issue tracker?
Yep
What version of gRPC and what language are you using?
gRPC 1.10.0 in Objective-C, distributed via CocoaPods.
What operating system (Linux, Windows, …) and version?
iOS 11.3 Simulator running on macOS 10.13.3 (High Sierra)
What runtime / compiler are you using (e.g. python version or version of gcc)
Xcode 9.3
clang --version gives:
Apple LLVM version 9.1.0 (clang-9<IP_ADDRESS>)
Target: x86_64-apple-darwin17.4.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
What did you do?
We received a report https://github.com/firebase/firebase-ios-sdk/issues/1069 from a user about an assertion failure in gRPC as used by Firestore. You can reproduce the issue like so:
Prepare:

Check out the Firestore iOS FriendlyEats quickstart app.
cd quickstart-ios/firestore
pod install  (this installs gRPC)
open FriendlyEats.xcworkspace  (which opens Xcode)
Edit the FriendlyEats scheme
Configure the Run action to use the Release build configuration
Select a simulated device to run against (I used an iPhone 8, this doesn't seem to matter)

Run:

Disable all network connections on the host
In Xcode Run the scheme

At this point you'll see a prompt to sign in

In the simulator, force quit the app
Relaunch the app

Repeat:

Relaunch the app
If it succeeds, force quit and try again
Network must remain disabled

What did you expect to see?
At this point I would expect to see a prompt to sign in again every time I open the app.
What did you see instead?
Black screen and a crash with a call to abort() from within gRPC. Full stack trace in the original report.
Debugging this issue is difficult because it seems to be extremely sensitive to timing. I can't reproduce this issue:

In a Debug build
With any of the sanitizers enabled (tsan etc)
With the debugger attached from the outset

However, you can get the debugger attached if you use Debug > Attach to process by PID or Name ... > and use PID or process name of FriendlyEats. Then start the app on the device and the debugger will catch gRPC's calls to abort().
I've seen this manifest with two different assertion failures:

In grpc_channel_create_call_internal calling GPR_ASSERT(channel->is_client)
In gpr_ref_non_zero calling assert(prior > 0)

I believe that what's happening is there's a race condition when invoking -[GRPCCall startWithWriteable:].
One party in the race is the callback registered with SCNetworkReachability that's registered by GRPCHost and flushes the cache when the network is disconnected.
The other party is the thread attempting to create the call object. There's a window wherein the GRPCHost is entered into the host cache and its unmanaged channel has been created but the unmanaged grpc_call doesn't bump the reference count on its channel until way down in grpc_call_create. This leaves a window wherein the SCNetworkReachability callback can destroy the channel before grpc_call can bump the refcount.
It ends up looking like this:

FYI I got the following error during build of FriendlyEats:
/Users/mxyan/grpc/repro/quickstart-ios/firestore/FriendlyEats/GoogleService-Info.plist:0: error: reading data: The file “GoogleService-Info.plist” couldn’t be opened because there is no such file.

Ah sorry--you need a Firebase project to make that work. I've sent you the corresponding file to my project privately.

Thanks I will give that a try.
So since I was not able to build FriendlyEats, I tried to add some sync hacks in our code to reproduce your conjecture of the window. I did not succeed in that way.
The problem was that the unmanaged channel is destroyed with [GRPCHost:disconnect](https://github.com/grpc/grpc/blob/7e37a42e1441765542d56695c3f22d4bfd9b9aa1/src/objective-c/GRPCClient/private/GRPCHost.m#L270), which is synchronized with the GRPCHost object. On the other thread, when calling GRPCChannel:unmanagedCallWithPath, the channel is proactively referenced. The ref is synchronized on the same GRPCHost object. So I was not able to get the GRPCChannel object dealloc'ed while another thread is still in GRPCChannel:unmanagedCallWithPath.
I'll try with your project instead. Besides that, could you share with us the stack trace when it crashes on gpr_ref_non_zero?

The stack trace of the crash in gpr_ref_non_zero is the one posted in the customer issue: https://github.com/firebase/firebase-ios-sdk/issues/1069

Here's the stack of a crash at gpr_ref_non_zero:
* thread #8, queue = 'com.google.firebase.firestore', stop reason = signal SIGABRT
  * frame #0: 0x0000000108a01e3e libsystem_kernel.dylib`__pthread_kill + 10
    frame #1: 0x0000000108a3b150 libsystem_pthread.dylib`pthread_kill + 333
    frame #2: 0x000000010865dc97 libsystem_c.dylib`abort + 127
    frame #3: 0x0000000108626c03 libsystem_c.dylib`__assert_rtn + 320
    frame #4: 0x000000010493d1b1 grpc`::gpr_ref_non_zero(r=<unavailable>) at sync.cc:91 [opt]
    frame #5: 0x00000001048cae57 grpc`grpc_call_create(args=0x0000700004fa4790, out_call=<unavailable>) at call.cc:434 [opt]
    frame #6: 0x00000001048cfd8c grpc`grpc_channel_create_call_internal(channel=<unavailable>, parent_call=0x0000000000000000, propagation_mask=65535, cq=0x00007feb78700530, pollset_set_alternative=0x0000000000000000, path_mdelem=<unavailable>, authority_mdelem=(payload = 0), deadline=9223372036854775807) at channel.cc:264 [opt]
    frame #7: 0x00000001048cfc45 grpc`::grpc_channel_create_call(channel=0x00007feb78710840, parent_call=0x0000000000000000, propagation_mask=65535, cq=0x00007feb78700530, method=grpc_slice @ 0x0000700004fa4990, host=0x0000000000000000, deadline=(tv_sec =<PHONE_NUMBER>854775807, tv_nsec = 0, clock_type = GPR_CLOCK_REALTIME), reserved=<unavailable>) at channel.cc:276 [opt]
    frame #8: 0x0000000101d568bc GRPCClient`-[GRPCChannel unmanagedCallWithPath:serverName:timeout:completionQueue:](self=3 key/value pairs, _cmd=<unavailable>, path=<unavailable>, serverName=<unavailable>, timeout=0, queue=<unavailable>) at GRPCChannel.m:201 [opt]
    frame #9: 0x0000000101d57bfa GRPCClient`-[GRPCHost unmanagedCallWithPath:serverName:timeout:completionQueue:](self=<unavailable>, _cmd=<unavailable>, path=<unavailable>, serverName=<unavailable>, timeout=0, queue=<unavailable>) at GRPCHost.m:135 [opt]
    frame #10: 0x0000000101d596a8 GRPCClient`-[GRPCWrappedCall initWithHost:serverName:path:timeout:](self=0x000060c0004253a0, _cmd=<unavailable>, host=<unavailable>, serverName=<unavailable>, path=<unavailable>, timeout=0) at GRPCWrappedCall.m:257 [opt]
    frame #11: 0x0000000101d557e9 GRPCClient`-[GRPCCall startCallWithWriteable:](self=0x000060c0001242e0, _cmd=<unavailable>, writeable=<unavailable>) at GRPCCall.m:427 [opt]
    frame #12: 0x0000000101d55c23 GRPCClient`-[GRPCCall startWithWriteable:](self=<unavailable>, _cmd=<unavailable>, writeable=<unavailable>) at GRPCCall.m:481 [opt]
    frame #13: 0x0000000100eb99e6 FriendlyEats`-[FSTStream resumeStartWithToken:error:] + 680

frames 14 and below are all irrelevant libdispatch gunk.

I think the issue is that in the release build the ARC reference you're counting on isn't working as expected.
In particular, if I set a breakpoint in grpc_channel_destroy this is what the stack looks like:

That is to say that the reference is released before the call to unmanagedCallWithPath:serverName:timeout:completionQueue:
:-(.

Huh! that is an interesting stack trace! Thank you for throwing it out. We never thought the GRPCChannel object could ever be dealloc'ed at this place.

@wilhuff I did not get a very consistent reproduction on my side (only reproduced 4 or 5 times), but I was able to dig into assembly and found some possible cause. #15086 is the tentative fix for it. Would you be able to patch it and verify if it fixes this issue?

I found I was able to reproduce much more reliably if I turned off everything else on the machine. Your proposed change fixes this: I can no longer reproduce the problem.


ListField fails with duplicate values in iterable

Hi, when having a field like:
cn = ListField(db_column='cn')
trying to save eg. ['foo', 'bar', 'bar'] lead to a protocol error because duplicate value. Can't tell ATM if duplicates are allowed on a per-attribute basis, don't think anyway as it is really pointless in respect to RFC2251 : "the order of attribute values within the vals set is undefined and implementation-dependent, and MUST NOT be relied upon."
Maybe simply returning sets from ListField field class eg. from_ldap and get_db_prep_save ? not sure
thank you, ciao

I coded this after experiencing issues with ListField in Django 2
https://github.com/django-ldapdb/django-ldapdb/pull/152


Problems with start

Checklist

[x ] I have read the FAQ
[x ] I have checked if this issue already exists (both open and closed issues)
[x ] I am using the most recent version of pogom from the master branch
[x ] If this is an installation issue, I am posting my OS, OS version, python version, pip version
[x ] I'm posting the complete log
[x ] I'm using a descriptive title for this issue

My Issue
I have problems with start using -H and -P:
$ python runserver.py -H "<IP_ADDRESS>" -H 72
2016-08-13 14:57:43,135 [     pgoapi] [   INFO] pgoapi v1.1.7 - Copyright (c) 2016 tjado https://github.com/tejado
Traceback (most recent call last):
File "runserver.py", line 76, in
app.run(threaded=True, debug=args.debug, host=args.host, port=args.port)
File "C:\Python27\lib\site-packages\flask\app.py", line 843, in run
run_simple(host, port, self, **options)
File "C:\Python27\lib\site-packages\werkzeug\serving.py", line 694, in run_simple
inner()
File "C:\Python27\lib\site-packages\werkzeug\serving.py", line 656, in inner
fd=fd)
File "C:\Python27\lib\site-packages\werkzeug\serving.py", line 544, in make_server
passthrough_errors, ssl_context, fd=fd)
File "C:\Python27\lib\site-packages\werkzeug\serving.py", line 464, in init
HTTPServer.init(self, (host, int(port)), handler)
File "C:\Python27\lib\SocketServer.py", line 417, in init
self.server_bind()
File "C:\Python27\lib\BaseHTTPServer.py", line 108, in server_bind
SocketServer.TCPServer.server_bind(self)
File "C:\Python27\lib\SocketServer.py", line 431, in server_bind
self.socket.bind(self.server_address)
File "C:\Python27\lib\socket.py", line 228, in meth
return getattr(self._sock,name)(*args)
socket.gaierror: [Errno 11004] getaddrinfo failed

You're using -H twice: python runserver.py -H "<IP_ADDRESS>" -H 72
Should be: python runserver.py -H "<IP_ADDRESS>" -P 72

@ghvanderweg omg, ty very much, I cant understand how I couldnt saw that....


feat: Test changesets

Description

...
...
...

Related issue(s)

We require all PRs to follow Conventional Commits specification.
More details 👇🏼
 The subject "Test changesets" found in the pull request title "feat: Test changesets" should start with a lowercase character.


Semver check only as default and prerelease added to it

Hi, I just came across your software - it's really helpful!
As far as I understand the documentation, if I (only) want a semver check for updates (that is, show only candidates for update which changed in the x.y.z area of the tag) I have to add the label wud.tag.include=^\d+\.\d+\.\d+$$ to my container. Is it possible to set this as a default for all containers via a variable, too?
How would I adjust the line wud.tag.include=^\d+\.\d+\.\d+$$ to include the "-prerelease" part, too, but not more?
Thank you very much!
Regards

Hi,

Is it possible to set this as a default for all containers via a variable, too?

Currently is not possible to set a global wud.tag.include to apply to all containers.

How would I adjust the line wud.tag.include=^\d+.\d+.\d+$$ to include the "-prerelease" part, too, but not more?

Somethink like wud.tag.include=^\d+\.\d+\.\d+-.*$$?
Can you share an example of a container you want to configure that way so I can help you more precisely?

Thank you!
I've let myself get disconcerted by the collabora/code one. Actually this isn't really "prerelease", I think it doesn't follow semver-rules. But I think I found wud.tag.include=^\d\d\.\d\d\.\d\.\d\.\d$$ works with this one!

Ah, I was mistaken. It does not work with the container collabora/code and my include statement.
compose.yaml:
services:
  collaboracode:
    image: collabora/code:<IP_ADDRESS>.1
    restart: unless-stopped
    container_name: collaboracode
    ports:
      - 9980:9980
    environment:
      - aliasgroup1=https://cloud.mydomain.de:443
      - server_name=collabora.mydomain.de
    tty: true
    cap_add:
      - MKNOD
    labels:
      - wud.tag.include=^\d\d\.\d\d\.\d\.\d\.\d$$

When I have a look at https://hub.docker.com/r/collabora/code/tags there should be newer versions, <IP_ADDRESS>.1 and <IP_ADDRESS>.1. But WUD shows "all containers are up to date".

Hi,
2 things to change to make it work:
1. Your regex doesn't capture the 3rd tag (<IP_ADDRESS>.1)
=> Better use ^\d+\.\d+\.\d+\.\d+\.\d+$
2. The Collabora tags don't comply with semver tags
So we also need to transform them so wud can compare them
wud.tag.transform=^(\d+\.\d+\.\d+)\.(.*)$ => $1-$2
In summary
services:
  collaboracode:
   ...
    labels:
      - wud.tag.include=^\d+\.\d+\.\d+\.\d+\.\d+$$
      - wud.tag.transform=^(\d+\.\d+\.\d+)\.(.*)$ => $1-$2

And here we go! 😃

Thank you again, your help is very much appreciated!


govuk::apps::ckan: add a maintenance_mode

https://trello.com/c/WjOK9SKl
The fetching of the static error page is heavily cribbed from how the loadbalancer does this, and the actual redirection mechanism is depressingly complex due to how the nginx conf outside of govuk::apps:ckan's control is organized. Hopefully I've commented it enough to make some sense though.

 Might have to close this PR and do a blanket redirect to an external error page, running out of time to tinker with this nonsense.


Transparent textures

I made an avatar and tried to use a transparent texture, but it won't work. Probably a shader import issue.

Are you using mtoon shader?


Failed initializing dependency-map script

rhel7 > downloaded executable
receive the following when running jfrog commands:
panic: Failed initializing dependency-map script.
goroutine 1 [running]:
github.com/jfrog/jfrog-cli-go/artifactory/utils/pip/dependencies.init.0()
/var/lib/jenkins/workspace/EcoSystem/jfrog-cli-release/temp/jfrog-cli-go/artifactory/utils/pip/dependencies/dependencies.go:25 +0x68

installed by one user, attempted to be used by another is where the issue appears.

Hi @sudodevnull,
Can you please let us know what are the permissions the file is created with?
(the file should be located under JFROG_CLI_HOME_DIR/dependencies/pip/1)
What command are you trying to run?
Thanks.

Same here, but with the official docker image jfrog-cli-go:latest.
Downgrading from jfrog-cli-go:1.28.0 (current latest) to jfrog-cli-go:1.27.0 fixes the problem!

@liron-shalom Any news on this? There have been two releases since this issue was reported (1.29 and 1.29.1).
For me, this issue is an upgrade blocker.

@famod,
I think that this latest release resolves this issue. Can you please check and let us know?

@eyalbe4 confirmed.
Would be nice if @sudodevnull (which originally created this issue) could also confirm.

I am out of pocket for a few days and will not be able to test. I will take @famod word and close. Thank you!

Thanks @famod and @sudodevnull.
We may still have a permissions issue for people who use the new jfrog rt pip-install command with different OS users.
Any chance you can help us investigating this by answering @liron-shalom's question above?
Really appreciate your help with this. Thanks.


ngShow/ngHide in ngInclude within ngRepeat does not work

Tested with AngularJS 1.4.7.
If I use ngInclude inside of a ngRepeat, the ngShow and ngHide is not executed as expected.
Example: http://lukas-schulze.github.io/angular-showhide-bug/

Where is your tpl.connected.html variable defined?

I've got an impression that you are expecting ng-include to take a string, while it takes an expression that evaluates to a template name. If you still believe that this is a bug please share live reproduce scenario using plunker, jsfiddle or similar - it is hard to debug your code without any ability to modify it / seeing the entire example.


Update debian rosdep rule for libjpeg-dev

It's a dummy package and the provider changed from libjpeg8-dev to libjpeg62-turbo-dev
https://packages.debian.org/search?searchon=names&keywords=libjpeg
https://packages.debian.org/jessie/libjpeg62-turbo-dev

@wjwwood this is causing stage in Kinetic to fail to build on debian: http://<IP_ADDRESS>:8080/view/Kbin_arm_dJv8/job/Kbin_arm_dJv8__stage__debian_jessie_arm64__binary/5/console

+1, thanks for looking into it.


Unable to parse URL

When POSTing a blob to an Iron server this params library fails to parse the URL.
It looks like the code is trying to parse the body - and it gives this error:
UrlDecodingError(BodyError(BodyError { detail: "Invalid UTF-8 sequence", cause: Utf8Error(Utf8Error { valid_up_to: 1 }) }))
I need more control - I need to be able to explicitly extract params out of the URL - and NOT try any other mechanism.

Hmm yeah, this is a bit tricky. The core problem is that params uses urlencoded's body parsing unconditionally, and so the body of any POST is at least required to be a valid UTF-8 form query string.
My apologies, I hadn't thought of this problem! I'll take a closer look and try to come up with a solution soon.

No worries.
I found out Iron has the ability to parse URL Query params so I'm using that now.

You're right, you can use urlencoded or body-parser directly. I guess params will remain an opinionated all-in-one. :sweat_smile:
Thanks again!


Duplicate Object name

Description of the feature
When I merge multiple Object, using MergedObject, it seems that it won't register new Object if Object name exists.
It is probably better to throw some sort of compiling error (if possible) or run time error.

Please use v2.11.2，if a GraphQL name conflict is detected when creating schema, it will cause panic.

Hey thanks for quick response,
I updated to v2.11.2 but I got a new error, maybe you know the recent changes better.
I was using 2.10.6 and I have code like this
let session = ctx.data::<Arc<Mutex<Session>>>()?;
session.lock()?...

It throws error at lock()?
`std::sync::MutexGuard<'_, Session>` cannot be sent between threads safely

Hey thanks for quick response,
I updated to v2.11.2 but I got a new error, maybe you know the recent changes better.
I was using 2.10.6 and I have code like this
let session = ctx.data::<Arc<Mutex<Session>>>()?;
session.lock()?...

It throws error at lock()?
`std::sync::MutexGuard<'_, Session>` cannot be sent between threads safely

Maybe you should switch to an asynchronous lock, such as tokio::sync::Mutex.

Right thanks @sunli829 it works well. Do you know what might be the reason?
It seems like issue start to appear with v2.11.1

Btw with the new name conflicting error, I have an issue where Object actually has the same name with a Union.
An object like this:
[#Object]
struct Tesla {
  motor: Motor;
}

And a Interface like this:
#[derive(Interface)]
pub enum Car {
  TESLA(object::Tesla)
}

#[derive(Interface)]
pub enum Tesla {
  TESLA(object::Tesla)
}

As I would like to support 2 resolvers like this
createTesla()
// which returns an actual Tesla

searchCar() {
  ... on Tesla {
    motor
  }
}
// which returns a Car

Not sure if it there is a better way to handle this usecase?

Of course, this is supported.

Hey, yeah thing is I have to register Tesla (Interface) and it throws error there.
I tried to use Interface only
createTesla() -> Tesla (Interface)
searchCar() -> Car (Interface)

But createTesla return object with all the Car fields to be null, only Tesla (Interface) fields are set. FYI I do a conversion from Tesla (struct) to Tesla (Interface) by using try_into, not sure if it causes any issues.
If I do something like this in v2.11.1 then everything works as expected
createTesla() -> Tesla (struct)
searchCar() -> Car (Interface)

Then it works as expected.

Thinking about this, for Tesla (Interface) I only specify its specific field, i.e. motor.
#[graphql(field(name = "motor", type = "&Motor"))]
Do I need to specify all the fields (including Car) for Tesla (Interface), feel quite a bit redundant?

I mean, ideally if the old scenario should still work, i.e. we should be able to have Interface and struct of the same name.
As they are just rust way of doing thing, from the consumer point of view, they should be the same thing, so ideally if they have the same name.

Can you tell me why you need to define the Tesla object and interface at the same time? 🙂
#[derive(Interface)]
pub enum Tesla {
  TESLA(object::Tesla)
}

Cool thanks @sunli829
Yeah right so looks like I don't have to define Tesla (Interface), I was under impression that it is necessary to register motor field.
In that case why do I need to specify any field in Car (Interface) at all if async-graphql knows what object and what field?

The reason why Interface needs to specify all fields is to ensure that all objects that implement this interface must contain these fields, so this error can be found during the compilation phase.

I don’t know for what purpose you want to define Tesla objects and interfaces at the same time. In fact, you can query the Car interface like this:
searchCar() -> Car (Interface)
{
    searchCar {
        motor
        ... on Tesla {
          # here are the fields of Tesla
        }
    }
}

You don't need to define the Tesla interface.

Yeah righto, not sure why I was under impression that I need that interface, everything seems to work fine without it, thanks as always! @sunli829


Add navic hl groups

Refactoring of https://github.com/rebelot/kanagawa.nvim/pull/75 for the new overhaul to close https://github.com/rebelot/kanagawa.nvim/issues/62

Why not linking to corresponding TS captures? Theme Colors should be used semantically, not because of the actual color, i.e. use syn.const because it's a constant not because it's orange. Otherwise we lose portability across themes

Updated, I've tried to follow the same structure as Cmp for the most part

Should this be merged? Seems to work.

Just a ping. Tested and it works well.

No news?

Any updates on this please? navic is fairly commonly used and the commit seems to work well.

This looks good on my machine.


Print functionality

client requested this at the last meeting, but we were told it wasn't a feature to prioritize. if we have extra time lets research how to implement this to print off the main events table


Update flask-restx version lower bound

Fix https://github.com/banesullivan/localtileserver/issues/216

:warning: Please install the  to ensure uploads and comments are reliably processed by Codecov.
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 83.93%. Comparing base (df43e54) to head (654b0a6).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #224   +/-   ##
=======================================
  Coverage   83.93%   83.93%
=======================================
  Files          26       26
  Lines        1021     1021
=======================================
  Hits          857      857
  Misses        164      164


Allow variadic annotation on *args

Originally posted by @LeeeeT in https://github.com/charliermarsh/ruff/issues/2321#issuecomment-1441327112

Closed by https://github.com/RustPython/RustPython/pull/4557.


GPU issue

Hi,
May I know is it a MUST to have GPU and CUDA?
Can I just run the code on a normal laptop without GPU and CUDA?

BR

Yes it can be run without CUDA, try it in Collab


build: fix CLA assistant version

Fixes https://github.com/splunk/addonfactory-ucc-generator/pull/225/checks?check_run_id=2811076190.

Codecov Report

Merging #226 (1f0f29c) into main (9858189) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #226   +/-   ##
=======================================
  Coverage   55.98%   55.98%
=======================================
  Files          37       37
  Lines        2506     2506
=======================================
  Hits         1403     1403
  Misses       1103     1103

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 9858189...1f0f29c. Read the comment docs.

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

v5.3.0
GitHub release

Your semantic-release bot :package::rocket: