Error when using POST

I keep getting the following error :
 ERROR - WebClient.Execute: -2147210493 (11011 / 80042b03), An error occurred during execute
-2147024713 (800700b7): Cannot create a file when that file already exists.

I receive this when trying to do a POST request using PostJson and manually building the request and using a WebRequest. What does this error mean and how can I resolve it?
Here's my code :
Sub TestGrounds()
Dim testthing As New WebClient
Dim bodydic As New Dictionary
Dim secondarydic As New Dictionary
Dim Options As New Dictionary
Dim Headers As New Collection

testthing.BaseUrl = "https://api.smartsheet.com/2.0/"
testthing.EnableAutoProxy = True

bodydic.Add "line 1", "line 1 item"
bodydic.Add "line 2", "Line 2 item"
secondarydic.Add "sub line A", "subline A item"
secondarydic.Add "sub line B", "subline B item"
bodydic.Add "line 3", secondarydic

Headers.Add WebHelpers.CreateKeyValue("Authorization", "Bearer XXXXXXXXXXXXXXXXXXXXX")
Headers.Add WebHelpers.CreateKeyValue("content-type", "application/json")
Options.Add "Headers", Headers

Response = testthing.PostJson("https://api.smartsheet.com/2.0/sheets/3815827490269060/rows", bodydic, Options)```

@theFisher86 Thanks for raising this issue, is this happening on Windows or Mac? My initial guess is that you need to define and set the response, but I'll look into it.
Dim Response As WebResponse
Set Response = ...

This is happening on Windows.  I copied your example code and I'm
re-formatting it to suit my needs and it seems to be working... I think it
may have been  one of those simple syntax mistakes or something that I
never noticed... either way I think it's working now!
On Tue, Dec 29, 2015 at 12:42 PM Tim Hall<EMAIL_ADDRESS>wrote:

@theFisher86 https://github.com/theFisher86 Thanks for raising this
issue, is this happening on Windows or Mac? My initial guess is that you
need to define and set the response, but I'll look into it.
Dim Response As WebResponse
Set Response = ...
—
Reply to this email directly or view it on GitHub
https://github.com/VBA-tools/VBA-Web/issues/179#issuecomment-167840961.

Glad to hear it's working!

Hi all, I'm getting the same error but don't seem to be able to solve it.  I have tired a few options and have done some searching online but this seems to be the only post I can find with the same error.
I'm successfully getting GET requests to work on this API, but neither the PUT or PUSH requests seem to work.  They are both giving the same error.
Any suggestions would be much appreciated.
This is the code i'm running on a pc
Function fnUpdateAVisit(strVisitId As String, dicUpdateVisitBody As Dictionary) As WebResponse
Dim SimpliRouteRequest As New WebRequest
Dim strResource As String

    'displays the WBA Web logging in the immidiate window
    WebHelpers.EnableLogging = True

    'sets base url as stripped back url
    SimpliRouteClient.BaseUrl = SimpliRouteBaseURL

    'sets other paramaters
    SimpliRouteRequest.Method = WebMethod.HttpPut

    SimpliRouteRequest.Format = WebFormat.json
    'SimpliRouteClient.EnableAutoProxy = False

    'sets end section of url
    SimpliRouteRequest.Resource = "routes/routes/" & strVisitId

    'adds headers
    SimpliRouteRequest.AddHeader "authorization", "Token " & AuthorizationToken
    SimpliRouteRequest.AddHeader "content-type", "application/json"

    'no body
    Set SimpliRouteRequest.Body = dicUpdateVisitBody

    'above outputs
'    GET https://api.simpliroute.com/v1/routes/routes/63d60d3f-3ca4-4370-b3fd-f96dd5b222ed
'    authorization: Token 1dcc545b55d140d639bc490733e6f07c5c14d8e8
'    content-type: application/json

    Set fnUpdateAVisit = SimpliRouteClient.Execute(SimpliRouteRequest)

End Function

The immediate window output is:
--> Request - 6:50:20 PM
PUT https://api.simpliroute.com/v1/routes/routes/63d60d3f-3ca4-4370-b3fd-f96dd5b222ed
authorization: Token 1dcc14d8e8
content-type: application/json
User-Agent: VBA-Web v4.1.6 (https://github.com/VBA-tools/VBA-Web)
Accept: application/json
Accept-Encoding: identity
Content-Type: application/json
Content-Length: 40

{"comment":"comment updated 6:47:36 PM"}

ERROR - WebClient.Execute: -2147210493 (11011 / 80042b03), An error occurred during execute
-2147024713 (800700b7): Cannot create a file when that file already exists.`

and the error seems to be throwing here in WebClient:Execute:

Is routes/routes/{guid} the correct URL? Looks suspicious. Judging by the original post from 2015 it might be something as simple as that.

Hi @zgrose, thank so much for this!
After reading your post, I did notice there was a / after the guid and I thought that might fix it but unfortunately not.  I'm still getting the same error.
--> Request - 7:43:23 AM
PUT https://api.simpliroute.com/v1/routes/routes/63d60d3f-3ca4-4370-b3fd-f96dd5b222ed/
authorization: Token 1dcc545b507c5c14d8e8
content-type: application/json
User-Agent: VBA-Web v4.1.6 (https://github.com/VBA-tools/VBA-Web)
Accept: application/json
Accept-Encoding: identity
Content-Type: application/json
Content-Length: 40

{"comment":"comment updated 7:42:54 AM"}

ERROR - WebClient.Execute: -2147210493 (11011 / 80042b03), An error occurred during execute
-2147024713 (800700b7): Cannot create a file when that file already exists.

The api documentation asks for:
curl -X PUT \
  https://api.simpliroute.com/v1/routes/visits/1111/ \
  -H 'authorization: Token<PHONE_NUMBER>0987sr' \
  -H 'content-type: application/json' \

I am able to get the Gets to work using the same / similar URL structure so i think the structure and guid is correct.
I'm also going to check in with the SimpliRoute support team, maybe there is something i'm missing.  I just thought that because it was an error coming from "VBA" and not the server that it could be something i'm not setting up correctly in the VBA code.
Any further thoughts would be appreciated.

The api documentation asks for:
api.simpliroute.com/v1/routes/visits/1111/

You are sending
api.simpliroute.com/v1/routes/routes/63d60d3f
I was referring to the routes/routes part

Yeah, that does seem to be an issue with the SimpliRoute documentation.  We received an email from the SimpliRoute support and they used routes/routes' in their examples.  and all the GETs that I got to work are using routes/routesand notroutes/visits` as in their documentation.
I guess i'm trying to work out if the issue is an API server communication error or if its a internal VBA Web issue.  But it does seem its a API communication error.  We ran the code on a MAC and it seems to feedback some server errors, so i'm beginning to think it must be what we are sending the server and not an internal VBA web issue.
The error description given by VBA Web in windows made me think it was a VBA code issue and not an issue of passing the wrong info to the server.  But it does seem to be the latter.
Thanks for your efforts.


:bug: Fix issue with cilium when k8s < 1.30

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 #143
Special notes for your reviewer:
Please confirm that if this PR changes any image versions, then that's the sole change this PR makes.
TODOs:

[ ] squash commits
[ ] include documentation
[ ] add unit tests

Closing, as the new CSO release v0.1.0-alpha.7 contains necessary fixes for this issue


Swift 3.0 Support

When will swift 3 be supported

To everyone that reaches this issue. Swift 3.0 support is tracking in the feature/0.40.0 branch. It's part of a bigger migration but also includes Swift 3.0.
It's easiest to target the head of that branch with Cocoapods/Carthage rather than try to pin to a beta release as it's moving fast with every Xcode release.
At this point it's beta quality, and may have unknown issues etc…

Okay thanks

Hi. Just wanted to point out that Xcode 8 beta 6 got released yesterday. It is causing several issues with the feature/0.40.0 branch. Thanks in advance


Fixes #2651 - Set Serves Status dropdown to be enabled when creating new

Allows users to set the initial state of server status when adding a new server with OFFLINE preselected in the dropdown menu.

Can one of the admins verify this patch?


refactor: update blas/ext/base/ssorthp to follow current project conventions

Resolves #1537
Description

What is the purpose of this pull request?

This pull request:

Refactors @stdlib/blas/ext/base/ssorthp to follow current project conventions.

Checklist

[x] update README.md
[x] manifest.json
[x] include.gypi
[x] benchmark
[x] examples
[x] docs
[x] test
[x] src
[x] lib

Related Issues

Does this pull request have any related issues?

This pull request:

resolves #1537
progress #1152

Questions

Any questions for reviewers of this pull request?

No.
Other

Any other information relevant to this pull request? This may include screenshots, references, and/or implementation notes.

No.
Checklist

Please ensure the following tasks are completed before submitting this pull request.

[x] Read, understood, and followed the contributing guidelines.

@stdlib-js/reviewers

Got it! thanks for the clarification. I will make the necessary changes.

@kgryte @Planeshifter can you please review it?
this test is failing, while other file has included same directory see

run_affected_tests

Tests should now pass; will merge once CI has passed. Thanks!


Only last exception in a clojure block is shown

As my gorilla clojure blocks get bigger, I start refactoring code and get therefore sometimes exception in my code blocks.
It seems to me that, even if several exception occurred during evaluation of a block, only the last is shown.
I think as well that even after an exception, the reminder of the block gets further evaluated.
This makes seeing the real (first) exception very hard. I see myself constantly commenting code, only in order to see the first exception.
I think it would be better, if a block would stop executing, if there is any exception.

This is an interesting one. Originally, I was thinking that it would always be one top-level form per Gorilla segment. But then I, and others, found that it was useful to have more than one top-level form in a segment. I made a (pretty half-assed) tweak to the output code so that multiple outputs would be displayed (although they are not saved, see #170 ). It would be good to go back and improve the code so multiple outputs are saved and displayed, and show multiple exceptions.
I think the behaviour that the whole block is executed, even after an exception is probably right. That seems to correspond to my intuition that running a block sends all of the code to be evaluated. It also matches the way Mathematica does is, which is probably why it feels right to me.


[Bug]: Net6 can't be used, wpf, Windows Forms

Describe the bug 🐞
已使用“.NETFramework,Version=v4.6.1, .NETFramework,Version=v4.6.2, .NETFramework,Version=v4.7, .NETFramework,Version=v4.7.1, .NETFramework,Version=v4.7.2, .NETFramework,Version=v4.8, .NETFramework,Version=v4.8.1”而不是项目目标框架“net6.0-windows7.0”还原包“ReactiveUI.WinForms 19.4.1”。此包可能与项目不完全兼容。
Step to reproduce
no error
Reproduction repository
https://github.com/reactiveui/ReactiveUI
Expected behavior
no error
Screenshots 🖼
No response
IDE
No response
Operating system
No response
Version
No response
Device
No response
ReactiveUI Version
No response
Additional information ℹ
No response

We don't support net461. It's been unsupported by Microsoft for a while now.


Message: 'phantomjs' executable needs to be in PATH.

Trying to use this package for scraping from MSCI, but I can't seem to get it working.
I get this error:
"Message: 'phantomjs' executable needs to be in PATH. "
I tried downloading some driver for phantomJs and using webdriver, which I imagine is included in your package.
Any tips or fixes?

Hi @AndriasP
I'm sorry for the delay getting back to you. Here is how to solve this problem, if you have not already:

Download PhantomJS from this link: https://phantomjs.org/download.html
Once you download it, place it in the directory where you want it to stay. For my case, I'll place it in my Applications folder (I'm running MacOS): /Applications/<here>
Once you've placed it somewhere, add the path to the "bin" folder within phantomjs to your PATH environment variable. Since I placed the phantomjs downloaded folder into /Applications, I run:
export PATH=$PATH:/Applications/phantomjs-2.1.1-macosx/bin/
Now, when I execute the ratefinder script, I get:
{'rating-paragraph': 'Tesla is average among 40 companies in the automobiles industry.', 'rating-history-paragraph': "Tesla's rating remains unchanged since April, 2019.", 'current': {'esg_rating': 'a', 'esg_category': 'average'}, 'history': {'jul-17': '', 'apr-18': '', 'aug-18': '', 'apr-19': '', 'apr-20': ''}}


Docs/move to mkdocs-material platform, editorial, and later import into the Knowledge Layer

This PR does two things:

Demo's the way we can import docs from satellite repos by using the same doc platform and importing in the main docs repo.
Does an editorial (structure/correctness - does it work?/language) of the current README quickstart.

I have changed the name of the original docs folder to docs-draft with the idea that new docs can be dropped in there, a ticket raised to TWs, and then we can incorporate it into the mkdocs-material plaform, although there is nothing stopping devs writing directly to the platform, tbc.
Instructions

Follow the new README.md file I have created to spin up the site locally.
We are doing the same with Miden docs: https://docs.polygon.technology/.

@leovct It looks like the conflicts can only be resolved on the merge back in as I moved docs around.


Added some comments re: TwitterLinkToOrganization updates needed. Added tool that adds google_civic_election_id to all positions. Fixed bug with finding organization by twitter_handle.

👍


DO NOT MERGE! Fast Forward stable to ccbc4ea5447e3fec59c33f20aad59043952f91aa.

This PR will be merged automatically once checks are successful.

This change is

Jenkins job mixer/postsubmit passed

Jenkins job mixer/e2e-suite passed


chore(deps): bump tonic to 0.11 and raise MSRV to 1.70

Hello, I came across this PR because console-api and console-subscriber are blocking our project's upgrade to tonic 0.11. Is this PR ready for merge?

@hds Could you please help approve this PR? Then we can merge it. Thanks!


Should ctx.sleep be named ctx.setTimeout to be consistent with node/js conventions?

No discussion happened here, so we can close it.


@-moz-document doesn't work on Safari

Could've sworn I tested this, but apparently not.
Stylus expects a @-moz-document rule to determine which urls to apply the style to, and complains if the userstyle header has an @include rule.
UserScripts, on the other hand, relies on having an @include rule and seemingly doesn't support (perhaps it's Safari that doesn't support) @-moz-document.
For now I'll tweak the UserScripts install instructions to note this, but it'd be ideal if there were a Safari extension with better compatibility...

Looks like Cascadea supports Stylus format natively.

I've updated the README, adding info about Cascadea, and adding instructions for the necessary tweaks for UserScripts.


Cocoon task name filtering should be case insensitive

Steps to reproduce

Go to https://flutter-dashboard.appspot.com/#/build?repo=engine&branch=master
Click gear to open filtering settings
Type in "mac"

Mac tasks are filtered out.  Typing in camel case Mac works.

cc @flar

Fixed by https://github.com/flutter/cocoon/pull/1740.
@codebird see https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue#linking-a-pull-request-to-an-issue-using-a-keyword for how to autoclose issues when your PR fixes are merged.  Thanks for the contribution!


Remove --python3 option

Remove the --python3 option and associated python3_... config items.

Waiting for U16 to move to python3, and is also dependant on fixes in progress for cryptography and using python3 on ST tests.

@blag We announced that we're removing python2 completely and users had that notice and time to migrate. This means we're removing all the python2-related functionality.
I don't think keeping that old flag would help anymore, considering this behavior doesn't work and would just provide erroneous results. I think that'll bring confusion and false sense of a working feature.
We had enough deprecation Warnings about full Python2 removal via:

st2 startup logs
via st2ctl cmd
on pack install

This includes entire platform python2 feature set.

The cli did have a warning. St2 pack install had a warning in 3.3 if you installed a python 2 pack.

If my understanding is correct, then there's two warnings that should have been generated:

[x] Warning about installing Python 2-only pack
[ ] Warning about --python3 flag being deprecated and removed, since ST2 is going Python 3 only (unless you use the --force flag)

We definitely warned about Python 2 packs, but did we also warn about the removal of the --python3 flag? I don't see it, but if I missed it, please let me know.
Consider what people would have done in the past to ensure that their packs were always Python 3:

Their packs were Python 2 --> not good.
Update their packs to support Python 2 and Python 3 --> better.
Install their packs with --python3 in their deployment scripts or whatever --> awesome.

So now their pack still has to be installed with the --python3 flag, otherwise it gets installed with Python 2.
Since we defaulted to installing packs as Python 2 for so long, people who are trying to do things right have been forced into using the --python3 flag to ensure that their packs use Python 3.
If we up and remove this flag, the CLI will no longer recognize the flag and throw an error. That will cause those people's deployment scripts or whatever to immediately break. That's pretty rude of us - we are effectively penalizing people who have been doing things "right" and trying to switch to Python 3 for awhile.
Instead, we should at least allow a grace period where we still accept that (now superfluous) --python3 flag, but we emit a warning about it.
If I have been operating under a misconception please correct me, but as I understand it, we should not break things for our best users.

I think your understanding is correct, and I get your point as to why we should allow them to still use --python3 option with a warning.
I am happy to rework as per your suggestion, if @armab also happy.

@amanda11 Per https://stackstorm-community.slack.com/archives/CSBELJ78A/p1608157605269500 discussion, I'm fine with @blag to keep it for one more release if there are concerns that python 2 removal/deprecation communication wasn't enough for this change.

@blag @armab I've kept in the --python3 pack, but I only kept it in the pack/install.py. I didn't see any other print etc being done in the manager files, so I wasn't sure why we wanted to pass the argument through to the manager and do the prints in there, as all the other printing seems to be done in the commands/*.py files.
If it's needed I will move it to the manager file.
Example output:
$ st2 pack install aws_boto3 --python3

For the "aws_boto3" pack, the following content will be registered:

actions   |  6
rules     |  0
sensors   |  0
aliases   |  0
triggers  |  0

Installation may take a while for packs with many items.

DEPRECATION WARNING: --python3 flag will be ignored, as ST2 now runs with python3 as the default on all OS

	[ succeeded ] init_task
	[ succeeded ] download_pack
	[ succeeded ] make_a_prerun
	[ succeeded ] get_pack_dependencies
	[ succeeded ] check_dependency_and_conflict_list
	[ succeeded ] install_pack_requirements
	[ succeeded ] get_pack_warnings
	[ succeeded ] register_pack

+-------------+-------------------------+
| Property    | Value                   |
+-------------+-------------------------+
| ref         | aws_boto3               |
| name        | aws_boto3               |
| description | AWS actions using boto3 |
| version     | 0.8.0                   |
| author      | StackStorm, Inc.        |
+-------------+-------------------------+

Rerunning end-to-end tests with this to ensure that StackStorm/st2tests#196 didn't break anything.

@blag I fixed the lint problem as it also needed an import of warnings, but I think we need to do more as haven't registered what warnings should do. Output using warnings is as follows:
IInstallation may take a while for packs with many items.
/home/centos/st2/st2client/st2client/commands/pack.py:215: UserWarning:
DEPRECATION WARNING: --python3 flag is ignored and will be removed in v3.5.0 as StackStorm now runs with python3 only

  warnings.warn('\nDEPRECATION WARNING: --python3 flag is ignored and will be removed '

	[ succeeded ] init_task


ciao-down: Ciao-down should not use template.Must

ciao-down is using template.Must when parsing the cloud-init section of ciao-down workloads.  In the past this was appropriate as these workloads were hard coded into ciao-down.  However, they can now be user supplied and so we shouldn't panic if the user passes us invalid data.  Also, as the panics are not trapped, it means that ciao-down does not clean up after itself correctly when there is an error in a user workload.

Moved to https://github.com/intel/ccloudvm/issues/14


Using geopackage tile occur SQLiteException

According to the example, I write the following code：
Set<File> mapFiles = new HashSet<>();
mapFiles.add(new File("data/data/com.imagesky.app/123.gpkg"));
File[] maps = new File[mapFiles.size()];
maps = mapFiles.toArray(maps);

GeoPackageProvider geoPackageProvider = new GeoPackageProvider(maps, this);
List<GeopackageRasterTileSource> sources = geoPackageProvider.geoPackageMapTileModuleProvider().getTileSources();

XYTileSource tileSource = geoPackageProvider.getTileSource(sources.get(0).getDatabase(),
        sources.get(0).getTableDao());
BoundingBox bbox = sources.get(0).getBounds();
mMapView.setTileProvider(geoPackageProvider);
mMapView.setTileSource(tileSource);

There was an exception：

After debugging, it was found that there is a problem here:

Is it a bug?
Version Info
Version Info:
implementation 'org.osmdroid:osmdroid-android:6.1.5'
implementation 'org.osmdroid:osmdroid-geopackage:6.1.5'

I need help, thank you!!

Is it possible that the geopackge file is on a read only partition or in a location where the app cannot write to it? permissions maybe? If not, it may be an upstream issue. We are using a 3rd party library for the geopackage support. NGA i think. It's on github

Is it possible that the geopackge file is on a read only partition or in a location where the app cannot write to it? permissions maybe? If not, it may be an upstream issue. We are using a 3rd party library for the geopackage support. NGA i think. It's on github

Is it possible that the geopackge file is on a read only partition or in a location where the app cannot write to it? permissions maybe? If not, it may be an upstream issue. We are using a 3rd party library for the geopackage support. NGA i think. It's on github

thank you for your reply.
I'm sure the path is accessible.

Hello. Testing with Android 25 works fine, but I have the same issue here with:

Android 29.
'org.osmdroid:osmdroid-android:6.1.10'
'org.osmdroid:osmdroid-geopackage:6.1.10'

@spyhunter99 It´s not related with permissions or accessibility to filesystems. Same issue here:

https://github.com/osmdroid/osmdroid/issues/1706
https://github.com/osmdroid/osmdroid/issues/1491

I made debug and found that:

“manager.importGeoPackage(file)” calls method “create” from “GeoPackageMetadataDataSource“ class, that calls method “insert” from “GeoPackageDatabase” class, that calls method “quoteWrap” from “SQLUtils” class.
In "quoteWrap", the Android class Parcel makes an operation that returns empty values (only for Android 29).

All of this classes are from NGA Geopackage Library (https://github.com/ngageoint/GeoPackage) and this issue was found and fixed in the 3.3.0 version (see https://github.com/ngageoint/geopackage-android/issues/56)
OsmDroid Geopackage uses "mil.nga.geopackage:geopackage-core:2.0.1" but the current version is "5.1.0". Do you have any chance to update the NGA Geopackage Library? (Related with: https://github.com/osmdroid/osmdroid/issues/1707). It will fix this issue and maybe other future issues.
@hello-willy Please, did you find any workaround?
Thanks.

@AndresLpzFdz An upgrade would be nice indeed: feel free to create a PR that uses the latest version of geopackage (or at least newer than 2.0.1), as long as there's no (big) impact on the apps that already use osmdroid.

IIRC i did attempt the update but there were some API changes that made the update not intuitive. Unfortunately i don't have much free time for osmdroid these days. Hopefully someone else will attempt it and succeed.

@spyhunter99 I don't know which version you attempted to upgrade to, but perhaps the gap is not that big from version 2.0.1 to version 3.3.0, which would be good enough for us, at least for this issue.


Merge pull request #1 from openthread/master

Update from original

@joyshmitz, this PR does not seem to introduce any changes.


resource_tailnet_key: handle 404 and discard expired keys

What this PR does / why we need it:

Changes the handling of 404 errors on Read / terraform refresh operations to treat all 404 errors as a deleted key. Previously only one-time keys (e.g not reusable) were treated as deleted and a 404 would fail the terraform operation with an error.
Compares expires_at on Read / terraform refresh and if expires_at is before time.Now().UTC(), treats the key as a deleted key.

Which issue this PR fixes:
Fixes #144
Special notes for your reviewer:
Any concerns with using the time of the machine that is running Terraform to compare with expires_at returned by the Tailscale API?

Local testing...
main.tf
variable "expiry" {
    default = 30
}

resource "tailscale_tailnet_key" "instance" {
  expiry   = var.expiry
  reusable = false
  tags     = ["tag:demo-exit-node"]
}

output "key_id" {
    value = tailscale_tailnet_key.instance.id
}

output "expiry" {
    value = var.expiry
}

test steps / output
# TF_CLI_CONFIG_FILE=.terraformrc terraform apply -auto-approve
╷
│ Warning: Provider development overrides are in effect
│
│ The following provider development overrides are set in the CLI configuration:
│  - tailscale/tailscale in /Users/cameron/.terraform.d/plugins/github.com/tailscale/tailscale/0.1/darwin_arm64
│
│ The behavior may therefore not match any released version of the provider and applying changes may cause the state to become incompatible with published releases.
╵

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  + create

Terraform will perform the following actions:

  # tailscale_tailnet_key.instance will be created
  + resource "tailscale_tailnet_key" "instance" {
      + created_at = (known after apply)
      + expires_at = (known after apply)
      + expiry     = 30
      + id         = (known after apply)
      + key        = (sensitive value)
      + reusable   = false
      + tags       = [
          + "tag:demo-exit-node",
        ]
    }

Plan: 1 to add, 0 to change, 0 to destroy.

Changes to Outputs:
  ~ key_id = "kxqFHN3CNTRL" -> (known after apply)
tailscale_tailnet_key.instance: Creating...
tailscale_tailnet_key.instance: Creation complete after 0s [id=key1]

Apply complete! Resources: 1 added, 0 changed, 0 destroyed.

Outputs:

expiry = 30
key_id = "key1"
#
#
#
# TF_CLI_CONFIG_FILE=.terraformrc terraform refresh
tailscale_tailnet_key.instance: Refreshing state... [id=key1]

Outputs:

expiry = 30
key_id = "key1"
#
#
#
# TF_CLI_CONFIG_FILE=.terraformrc terraform refresh
tailscale_tailnet_key.instance: Refreshing state... [id=key1]

Outputs:

expiry = 30
key_id = "key1"
#
#
#
# TF_CLI_CONFIG_FILE=.terraformrc terraform apply -auto-approve
╷
│ Warning: Provider development overrides are in effect
│
│ The following provider development overrides are set in the CLI configuration:
│  - tailscale/tailscale in /Users/cameron/.terraform.d/plugins/github.com/tailscale/tailscale/0.1/darwin_arm64
│
│ The behavior may therefore not match any released version of the provider and applying changes may cause the state to become incompatible with published releases.
╵
tailscale_tailnet_key.instance: Refreshing state... [id=key1]

No changes. Your infrastructure matches the configuration.

Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed.

Apply complete! Resources: 0 added, 0 changed, 0 destroyed.

Outputs:

expiry = 30
key_id = "key1"
#
#
#
# sleep $(terraform output expiry)
#
#
#
# TF_CLI_CONFIG_FILE=.terraformrc terraform apply -auto-approve
╷
│ Warning: Provider development overrides are in effect
│
│ The following provider development overrides are set in the CLI configuration:
│  - tailscale/tailscale in /Users/cameron/.terraform.d/plugins/github.com/tailscale/tailscale/0.1/darwin_arm64
│
│ The behavior may therefore not match any released version of the provider and applying changes may cause the state to become incompatible with published
│ releases.
╵
tailscale_tailnet_key.instance: Refreshing state... [id=key1]

Note: Objects have changed outside of Terraform

Terraform detected the following changes made outside of Terraform since the last "terraform apply" which may have affected this plan:

  # tailscale_tailnet_key.instance has been deleted
  - resource "tailscale_tailnet_key" "instance" {
      - id         = "key1" -> null
        tags       = [
            "tag:demo-exit-node",
        ]
        # (6 unchanged attributes hidden)
    }

Unless you have made equivalent changes to your configuration, or ignored the relevant attributes using ignore_changes, the following plan may include actions to
undo or respond to these changes.

──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  + create

Terraform will perform the following actions:

  # tailscale_tailnet_key.instance will be created
  + resource "tailscale_tailnet_key" "instance" {
      + created_at = (known after apply)
      + expires_at = (known after apply)
      + expiry     = 30
      + id         = (known after apply)
      + key        = (sensitive value)
      + reusable   = false
      + tags       = [
          + "tag:demo-exit-node",
        ]
    }

Plan: 1 to add, 0 to change, 0 to destroy.

Changes to Outputs:
  ~ key_id = "key1" -> (known after apply)
tailscale_tailnet_key.instance: Creating...
tailscale_tailnet_key.instance: Creation complete after 0s [id=key2]

Apply complete! Resources: 1 added, 0 changed, 0 destroyed.

Outputs:

expiry = 30
key_id = "key2"
#
#
#
# TF_CLI_CONFIG_FILE=.terraformrc terraform destroy -auto-approve
╷
│ Warning: Provider development overrides are in effect
│
│ The following provider development overrides are set in the CLI configuration:
│  - tailscale/tailscale in /Users/cameron/.terraform.d/plugins/github.com/tailscale/tailscale/0.1/darwin_arm64
│
│ The behavior may therefore not match any released version of the provider and applying changes may cause the state to become incompatible with published
│ releases.
╵
tailscale_tailnet_key.instance: Refreshing state... [id=key2]

Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:
  - destroy

Terraform will perform the following actions:

  # tailscale_tailnet_key.instance will be destroyed
  - resource "tailscale_tailnet_key" "instance" {
      - created_at = "2023-09-12T17:49:38Z" -> null
      - ephemeral  = false -> null
      - expires_at = "2023-09-12T17:50:08Z" -> null
      - expiry     = 30 -> null
      - id         = "key2" -> null
      - key        = (sensitive value) -> null
      - reusable   = false -> null
      - tags       = [
          - "tag:demo-exit-node",
        ] -> null
    }

Plan: 0 to add, 0 to change, 1 to destroy.

Changes to Outputs:
  - expiry = 30 -> null
  - key_id = "key2" -> null
tailscale_tailnet_key.instance: Destroying... [id=key2]
tailscale_tailnet_key.instance: Destruction complete after 2s

Destroy complete! Resources: 1 destroyed.
#

After internal discussion we're going to go a slightly different direction here that will require changes to the Tailscale API and https://github.com/tailscale/tailscale-client-go. I made this PR a draft and will come back to this once the upstream change are ready.


Insert() and returning filled in autogenerated fields?

If I'm calling Insert and passing a struct is it possible to get it to return with the autogenerated fields filled in?
type Request struct {
	ID        uuid.UUID `json:"-" generated:"auto" db:"id" table:"sign_request_user"`
	Request string    `json:"request" db:"request"`
	Created   time.Time `json:"-" generated:"auto" db:"-"`
	Updated   time.Time `json:"-" generated:"auto" db:"-"`
	Status    string    `json:"-" generated:"auto" db:"-"`

So I insert just the Request value into the struct and would get back filled in ID, Status and such.

Looking into your PR and happy to add support for this. Let's continue the conversation in the PR. Thanks


Add code of conduct pitching to Event Protocol

As spoken about in our meeting today.

Sorry about the failing tests, currently working on a separate pull request
to fix those.
On Thu, Jan 7, 2016 at 5:21 AM, Mention Bot<EMAIL_ADDRESS>wrote:

By analyzing the blame information on this pull request, we identified
@zachlatta https://github.com/zachlatta to be a potential reviewer
—
Reply to this email directly or view it on GitHub
https://github.com/hackclub/meta/pull/452#issuecomment-169661418.

--
Zach Latta
http://zachlatta.com
https://github.com/zachlatta
https://twitter.com/zachlatta

And it's done! @MaxWofford merged in #453 last night, so if you rebase master into your branch for this pull request, all should be well.

@zachlatta ready to merge

:heart:


🐛 BUG: Error: Maximum number of keys modified in a transaction is 128.

What version of Wrangler are you using?
2.6.2
What operating system are you using?
Windows 11
Describe the Bug
When attempting to run wrangler d1 execute products --file=./inserts.sql, and have 35k rows in my DB which are indexed by a name (TEXT) column I'm greeted with this error:
🌀 Mapping SQL input into an array of statements
🌀 Parsing 5000 statements
🌀 Executing on products (<id>):

✘ [ERROR] A request to the Cloudflare API (/accounts/<id>/d1/database/<id>/query) failed.

  Error 9000: exception caught in D1 core. Maximum number of keys modified in a transaction is 128.
  Error: Maximum number of keys modified in a transaction is 128.
      at Object.m [as putPage] (worker.js:2595:29)
      at put_page (worker.js:2438:15)
      at worker.js:2267:15
      at wasm://wasm/00f4590e:wasm-function[49]:0x863a
      at wasm://wasm/00f4590e:wasm-function[3209]:0x1d220e
      at wasm://wasm/00f4590e:wasm-function[3186]:0x1cd0d2
      at wasm://wasm/00f4590e:wasm-function[3189]:0x1cdb39
      at wasm://wasm/00f4590e:wasm-function[3242]:0x1d7673
      at wasm://wasm/00f4590e:wasm-function[3300]:0x1eadf0
      at wasm://wasm/00f4590e:wasm-function[3297]:0x1dd6c9 [code: 7500]

  If you think this is a bug, please open an issue at:
  https://github.com/cloudflare/wrangler2/issues/new/choose

This does not happen if I remove the index on my database.
My schema is as follows:
DROP TABLE IF EXISTS Products;
CREATE TABLE Products (id INT, name TEXT, PRIMARY KEY (`id`));

CREATE INDEX product_name_index ON Products (name);

And some examples of the inserts I'm trying to do are:
INSERT INTO Products(id,name) VALUES (29959,'Chicken Stuffing Mix');
INSERT INTO Products(id,name) VALUES (29960,'Acini di Pepe, No. 78');
INSERT INTO Products(id,name) VALUES (29961,'Seaweed Crisps Almond Sesame');
INSERT INTO Products(id,name) VALUES (29962,'Kettle Cooked Sweet Hawaiian Onion Potato Chips');
INSERT INTO Products(id,name) VALUES (29963,'Moroccan Argan Oil Renewing Shampoo');
INSERT INTO Products(id,name) VALUES (29964,'Organic Savory Spice Sweet Potato Fries');
INSERT INTO Products(id,name) VALUES (29965,'Star Fruit');

Hey @adcar,
We recently released a new D1 backend which fixes this issue, you can read more about it here: https://blog.cloudflare.com/d1-turning-it-up-to-11/


MTCNN Face Detector demo won't work

The link address: https://itnext.io/realtime-javascript-face-tracking-and-face-recognition-using-face-api-js-mtcnn-face-detector-d924dd8b5740
The moment the MTCNN model is loaded, the console prints: 'mtcnn is deprecated and will be removed soon', May I ask why it is overdue?
The following two lines of code run error:
faceapi.drawDetection('overlay', mtcnnResults.map(res => res.faceDetection), { withScore: false })
faceapi.drawLandmarks('overlay', mtcnnResults.map(res => res.faceLandmarks), { lineWidth: 4, color: 'red' })
Can examples in the repository provide clear examples of MTCNN?
Looking forward to reply~

mtcnn and tinyYolov2 models are quite old and not included in latest face-api.js for a while now (it's possible to make them work, but why bother?).
models that are included are mobileNetv1 and tinyFaceDetector.

mtcnn and tinyYolov2 models are quite old and not included in latest face-api.js for a while now (it's possible to make them work, but why bother?).
models that are included are mobileNetv1 and tinyFaceDetector.


Docs for auth, org and project API

Fixes #302
Description

I have created 3 new files in api-docs folder each for auth, org and project API
Fixed one bug in authcontroller
Created routes in authrouter

Addition Information (if any)
This PR is for STEP 1 of issue #302

@gauravdas014 kindly review this PR

@jhasuraj01 Good work!


Improve the startup time.

This is a LEVEL 3 task, and anyone who wants to work on it must contact the repo owner - TathagataRoy1278
The code currently takes 3-4s to run. For an impatient person like me, that is not good enough. The culprit would be, me using python as the language, which is pretty slow. To overcome this, we have to totally restructure the code in C. If you want to work on this, suggest a plan and a structure, then we can start on a new branch,

Closing this since I think it would be better if we kept it in python, so that I dont get bored of maintaining it.


Combined filters bug

Bug description
I would expect these two filters would be the same:
{
  id: typeof typebotIds === 'string' ? typebotIds : { in: typebotIds },
  OR: [
    {
      collaborators: {
        some: {
          userId: user.id,
          type: type === 'write' ? CollaborationType.WRITE : undefined,
        },
      },
    },
    {
      workspace: {
              members: {
                some: { userId: user.id, role: { not: WorkspaceRole.GUEST } },
              },
            },
    },
  ],
}

{
  OR: [
    {
      id: typeof typebotIds === 'string' ? typebotIds : { in: typebotIds },
      collaborators: {
        some: {
          userId: user.id,
          type: type === 'write' ? CollaborationType.WRITE : undefined,
        },
      },
    },
    {
      id: typeof typebotIds === 'string' ? typebotIds : { in: typebotIds },
      workspace: {
              members: {
                some: { userId: user.id, role: { not: WorkspaceRole.GUEST } },
              },
            },
    },
  ],
}

But the first one fails. Is it expected? Am I missing something?
How to reproduce
Combine a field filter with an OR filter
Expected behavior
No response
Prisma information
Not relevant
Environment & setup

OS: MacOS
Database: PostgreSQL
Node.js version: 14

Prisma Version
3.12.0

Thank you for the report. What do you mean by But the first one fails? Do you see an error, or does it not return the result you're expecting?

It doesn't return the expected result.
Let me know what I can provide to help debugging

My first tries at reproducing this were unsuccessful, but I didn't use relation filters. If you can provide your schema that would help in pinning the issue if it's relation-filter related.

Thank you for investigating. Here is the partial DB schema:
model Workspace {
  id            String                @id @default(cuid())
  name          String
  icon          String?
  members       MemberInWorkspace[]
  folders       DashboardFolder[]
  typebots      Typebot[]
  createdAt     DateTime              @default(now())
  plan          Plan @default(FREE)
  stripeId      String?               @unique
  customDomains CustomDomain[]
  credentials   Credentials[]
  invitations   WorkspaceInvitation[]
}

model MemberInWorkspace {
  userId      String
  user        User          @relation(fields: [userId], references: [id], onDelete: Cascade)
  workspaceId String
  workspace   Workspace     @relation(fields: [workspaceId], references: [id], onDelete: Cascade)
  role        WorkspaceRole

  @@unique([userId, workspaceId])
}

enum WorkspaceRole {
  ADMIN
  MEMBER
  GUEST
}

model WorkspaceInvitation {
  id          String        @id @default(cuid())
  createdAt   DateTime      @default(now())
  email       String
  workspaceId String
  workspace   Workspace     @relation(fields: [workspaceId], references: [id], onDelete: Cascade)
  type        WorkspaceRole
}

model Typebot {
  id                 String                    @id @default(cuid())
  createdAt          DateTime                  @default(now())
  updatedAt          DateTime                  @default(now()) @updatedAt
  icon               String?
  name               String
  ownerId            String?
  owner              User?                      @relation(fields: [ownerId], references: [id], onDelete: Cascade)
  publishedTypebotId String?
  publishedTypebot   PublicTypebot?
  results            Result[]
  folderId           String?
  folder             DashboardFolder?          @relation(fields: [folderId], references: [id])
  blocks             Json[]
  variables          Json[]
  edges              Json[]
  theme              Json
  settings           Json
  publicId           String?                   @unique
  customDomain       String?                   @unique
  collaborators      CollaboratorsOnTypebots[]
  invitations        Invitation[]
  webhooks           Webhook[]
  workspaceId        String?
  workspace          Workspace?                @relation(fields: [workspaceId], references: [id], onDelete: Cascade)

  @@unique([id, ownerId])
}

model CollaboratorsOnTypebots {
  userId    String
  user      User              @relation(fields: [userId], references: [id], onDelete: Cascade)
  typebotId String
  typebot   Typebot           @relation(fields: [typebotId], references: [id], onDelete: Cascade)
  type      CollaborationType

  @@unique([userId, typebotId])
}

enum CollaborationType {
  READ
  WRITE
  FULL_ACCESS
}

Hi @baptisteArno I tried to reproduce your bug and I am confussed, with the schema provided in the current version (3.15) the generated queries for PostgreSQL are equivalent :|
I will close this ticket, but please try with the latest version and if the problem persist, open the ticket and share the specific JS query you are trying (I tried using a query over Typebot) and I will take a look at it again.


Created start script in frontend and backend

Those two simple scripts run "npm update" before starting the project
in order to install node dependencies if needed.

Q
A

Is bugfix?
No

New feature?
Yes

Fixed issues

Nice !


Add utilities to compare unit test runtimes between two different runs

After #2448 is merged, we will have artifacts for each job which includes the runtime of each test run. I had previously manually written a XML parser to read in two of these files and compare the runtime of each test in the two different runs. It could be useful to store this in the evalml repo for the team to access easily and use, to help debug or spot huge increases in runtime for our unit tests.
I've attached my original python code to this issue; it was hardcoded for my sake but hopefully it's a good starting point for whoever picks this issue up!
Extra bonus: it could also be super duper cool if we could, during a job, calculate the difference in time it took to run on that branch vs the current artifact on main and raise a warning / flag if the runtime significantly increased.
import csv
import requests
import xml.etree.ElementTree as ET

def parse_xml(xmlfile):
    tree = ET.parse(xmlfile)
    root = tree.getroot()
    results = {}
    for test_case in root.findall('testcase'):
        attributes = test_case.attrib
        name = attributes['name']
        time = attributes['time']
        if float(time) > 1:
            results[name] = time
    return results

def compare_results(main_results, other_results):
    timing_results_dict = {}
    for test_case_name in main_results:
        try:
            time_diff = float(other_results[test_case_name]) - float(main_results[test_case_name])
            timing_results_dict[test_case_name] = time_diff
        except KeyError:
            continue
    return timing_results_dict

def main():
    main_results = parse_xml('main.xml')
    woodwork_results = parse_xml('woodwork_36.xml')
    time_diffs = compare_results(main_results, woodwork_results)
    # for test_case in time_diffs:
    #     print(test_case, time_diffs[test_case])
    sorted_diffs = sorted(time_diffs.items(), key=lambda x:x[1])
    for diff in sorted_diffs:
        print (diff)

if __name__ == "__main__":

    # calling main function
    main()

Thanks for filing and sharing your script @angela97lin . I think this is super helpful!

This is really cool! And its great that we are storing those artifacts.
Before we put too much more time into this, and into integrating it with automation, let's sync and see if there's a good UI-based CI tool we could use to do this automatically. We'd have to figure out how to make it public, so there's a lot to think about.


Update Mega MEGASync

Use official URL instead of winget.it URL
Microsoft Reviewers: Open in CodeFlow

The SHA256 was updated without incrementing the version


Rename or refactor macros to avoid leading underscores

Since I've ventilated the idea in https://github.com/godotengine/godot/issues/51435 here's an attempt.  After this, there is only one macro left whose names begins with an underscore across all the *.cpp files in the tree -- _WGL_CONTEXT_DEBUG_BIT_ARB is actually unused, only mentioned in a comment.
Realistically speaking, I think that only the first two commit should be committed.  The first fixes a warning when compiling on OpenBSD, and the second removes two unused macros.  The third commit, "macro ->constexpr conversion", can be useful, as it removes some macros in favor of C++14 constexprs which avoids possible name clashes with external libraries.  The last two commits are mostly aesthetic (except for the #undefs maybe) and can be dropped: even if those macros have illegal names the chance of a name clash is unlikely.
edit: the format script keeps failing because one of the macros isn't aligned.  I haven't fixed that on purpose: I'm only changing the name, not the body of it (that clang-format wants to change)

@fire sorry for the delay, somehow I missed the notification.  Could you please elaborate more what do you mean?  I'm not following you, apologies

edit: the format script keeps failing because one of the macros isn't aligned. I haven't fixed that on purpose: I'm only changing the name, not the body of it (that clang-format wants to change)

You should also change the body, so that it's aligned.

Wops, I made a typo (uint32_t vs int32_t) inlining the _S macro.  Now it should be correct

Rebased, there was only one conflict due to a comment changed after one of the edits.  I still have to build it locally (I'm doing it right now, it takes some time :P) but it should be fine :)

Wops, I missed a substitution, the CI servers are way faster than my machine :D
I can successfully build godot on OpenBSD (modulo some patches for thirdparty/, but that's the norm).  It currently fails as linking due to some missing symbols in Glslang, but that's because I'm using glslang from ports and not the built-in one, and is unrelated to this diff anyway

Thanks!


Confusion with BYOL

There is a confusion in how BYOL is documented on this page versus "https://docs.microsoft.com/en-us/azure/marketplace/marketplace-commercial-transaction-capabilities-and-considerations#transact-billing-models".
It seems that BYOL is a "billing model" and not a "publishing option". Please confirm and correct the content to either billing model or publishing options across all documentation.
See also PR https://github.com/MicrosoftDocs/azure-docs/issues/58838

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

ID: 5ad22423-b979-4382-1412-e58e2a5b083f
Version Independent ID: 2b65f4a9-a440-e627-2c13-14c952da3e94
Content: Determine your publishing option - Microsoft commercial marketplace
Content Source: articles/marketplace/determine-your-listing-type.md
Service: marketplace
Sub-service: partnercenter-marketplace-publisher
GitHub Login: @keferna
Microsoft Alias: keferna

@MustAl-Du - Thanks for brining this to our attention. We will investigate it further and update you shortly.

#reassign:MonikaReddy-MSFT

@keferna can you please take a look, and assist with this customer's doc related question? Thanks, Jason
#reassign:keferna

Dan and Ming will address this.

#reassign:mingshen-ms

#assign:dannyevers

@MustAl-Du  I agree that BYOL is a billing option and I'm updating the help article you referenced.

#please-close


switch from fontawesome to forkawesome

This is completely a judgement call for the waycrate team. Fork Awesome provides a Matrix logo glyph, and is a fully-free, libre and open-source fork of the original FontAwesome, which has apparently privatized its build system.
The drawback at this point is that the "toggle" icons used for the dark mode switch on the website aren't available, so I used a cirlce and a dot circle in their place.
I have not built and run the site locally to see how they show up, so you may want to check that first before merging.

I'll wait on angelo for this one. @angelofallars

c47608be245d9e2cfe0c8e2d3d302c69b3220b70 corrects an oversight in the CSS - I hadn't previously realized that the classes for the icons are directly referenced in the stylesheet to hide whichever one is currently applied.


How to add removed Windows host to Rancher?

Rancher Version: v1.3.1
Rancher server: Ubuntu 16.04 in VM
Steps to reproduce the problem:
Add Windows Server (previously added and removed) as host, it comes to a failure and the Windows Server is not displayed in the Host list
Log:
time="2017-02-15T14:38:10+08:00" level=info msg="Launching agent"
time="2017-02-15T14:38:10+08:00" level=info msg="http://<IP_ADDRESS>:8080/v16E9351F0802C17537917fUqaidFruSRx58rfVmgo84wgwgDm6QtaoFuUBTaN"
time="2017-02-15T14:38:10+08:00" level=info msg="Listening for events on http://<IP_ADDRESS>:8080/v1"
time="2017-02-15T14:38:10+08:00" level=info msg="launching hostapi"
time="2017-02-15T14:38:10+08:00" level=info msg="Starting event router."
time="2017-02-15T14:38:10+08:00" level=error msg="error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/containers/json?all=1&filters=%7B%22status%22%3A%7B%22paused%22%3Atrue%2C%22running%22%3Atrue%7D%7D&limit=0: open //./pipe/docker_engine: The system cannot find the file specified."
time="2017-02-15T14:38:22+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1/schemas: EOF"
time="2017-02-15T14:38:32+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1: EOF"
time="2017-02-15T14:39:15+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1: EOF"
time="2017-02-15T14:39:23+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1: EOF"
time="2017-02-15T14:39:29+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1: EOF"
time="2017-02-15T14:39:37+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1: EOF"
time="2017-02-15T14:39:44+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1: EOF"
time="2017-02-15T14:39:52+08:00" level=error msg="Get http://<IP_ADDRESS>:8080/v1: EOF"
time="2017-02-15T14:39:54+08:00" level=fatal msg="Failed to initialize handlers. Exiting go-agent"
Thank you.

Hi @e120078. Can you please try http://docs.rancher.com/rancher/v1.4/en/windows/#removing-windows-hosts to see if you can re-register your hosts again? And also make sure that your docker daemon is running.

@StrongMonkey Thanks very much for your kind reply. As I mentioned in question, I tried to re-register the hosts but it didn't succeed. I found that both the registry keys need to be deleted on host server and the rancher agent state need to be deleted on rancher server so that we can re-register hosts. Anyway, thank you very much.

@e120078 What were the steps to clean up after the windows hosts?  This issue should not have been closed.  If you add a host, clone that host, and then try to remove and readd the host you are not able to.  That is still the crux of this issue and it looks like @e120078 found a workaround but the issue is still not fixed.


Format text custom function

For @zachmullen

is this still too locked down?  Should you be able to edit the styling at the same time if you want to edit the text?  Text size, color and other options are still dependent on the type specified.  I don't know the immediacy of this or the intended usage, but just wondering if we should give some more control besides just formatting the TextData output.

text size, color and other options are still dependent on the type specified

You'd have to "coordinate" with the typeStyling properties, which I think is reasonable given that's how everything else works.
This is already much more than Zach needs, so I'm reluctant to go out of my way to make this ultra-flexible without a use case. This was just the most convenient way to expose the functions he needed.


DF Chat Enhancements: Roll Buttons No Longer Show

Module
DF Chat Enhancements v3.5.1
Describe the issue
I updated from version 3.3.0 to the current latest 3.5.1 and the roll buttons were all gone, I restarted after changing the settings a few times to make sure but nothing worked. Restored to version 3.3.0 and they were back.
To Reproduce
Use 3.5.1, select the option for Roll Buttons in module settings, restart, see that they do not appear.
Expected behavior
Roll Buttons should replace the drop down menu and other buttons like they did previously, as expected when selecting that option in the settings.
EDIT: I just realised that I'm still using DnD5e 1.4.3 due to having an issue with the latest version, that could be why more than one of my modules are not working in their latest version, in which case ignore me.

There was a Roll Type conflict with another module. This was corrected in v3.4.0. What version of Foundry are you running? Because it was a simple CSS change that shouldn't care about what version your DnD5e system is at. Chat Enhance is a universal module with no system dependencies.

Oh okay hmm. I'm on Foundry 0.8.9

ok, if you have a chance, could you try disabling all your other modules? If it works then there might be a conflict with another module.
If so, you can use Find the Culprit! to figure out which module is conflicting with DFCE.

Hey flamewave I just did this and the problem persisted even when all my other modules were disabled, apart from the ones required (DF Chat Enhancements, libWrapper, Library: Chat Commands). Both libWrapper and Library: Chat Commands are updated to latest versions.

I'm going to close this one for now since I've updated this module to V9. If this issue still persists in V9 I can reopen the ticket.


Use decorators instead functions when registring models in admin_generator

Coverage remained the same at 37.809% when pulling f7087facdfbf90044dcdb005f9f61027c4c91d9d on APSL:admin_generator_register_decorator into 94c6cc95a53a5ebd7277db7b19bb93a7953b8fe4 on django-extensions:master.

Thanks!


Add isSubscribed method to Subscriber resource

I added isSubscriber() method to Subscriber resource for issue #34

Thanks! Closing in favour of #37


Question: how to run sockets on GKE hosted Run

I've transitioned all of our frontend services to Cloud Run and love it. It'd be great to also move the API there as well but is using web sockets heavily.
Bumped into this FAQ repository which states:

WebSockets are currently not supported on Cloud Run. However, Cloud Run on GKE supports running applications capable of doing WebSockets.

It says that GKE supports running applications capable of doing websockets but doesn't quite clarify how.
What limitation does managed Run have that a GKE hosted solution does not suffer from?

Hi @intellix, just for curiosity, have you tested you frontend services in cloud run with a load testing service? like loader.io ? I'm asking because I tested on the first days of cloud run, 1000 concurrent connections of a Nuxt.js frontend in cloud run x app engine standard. The cloud run could not handle without a 502 error.

To be honest I haven't load tested it but it only reaches about 4req/sec currently and seems perfectly fine atm

Since Cloud Run on GKE is Knative/Istio stack it supports Websockets. https://github.com/mchmarny/knative-ws-example
Cloud Run managed platform runs on Google’s proprietary networking stack that doesn’t support WS yet.
I would recommend you move the error rates discussion elsewhere like Google Cloud issue trackers or Stackoverflow.

Hi @ahmetb ,
Just following the example you provided, when the connection is trying to establish I get the error:
app.js:28 WebSocket connection to 'ws://demo.XXXXXXX/ws' failed: Error during WebSocket handshake: Unexpected response code: 503

Not that before ending onto this issue and the example, I was also having this error on my own websocket server. I'm running it on Cloud Run on GKE, and when trying to kubectl port-forward ... onto the pod directly, I'm able to connect to the server. It seems sometimes goes wrong at another layer (Knative/Istio ?).
I didn't override settings from Cloud Run level (to override Kubernetes settings or other), so I'm a bit lost what could cause this.
If you have any idea, do not hesitate 👍 I continue to investigate today 🤞
Thank you,

Just to follow up @ahmetb , did you succeed using the example you provided with a Cloud Run on GKE cluster?
I tried multiple attempts I described here https://github.com/mchmarny/knative-ws-example/issues/2 but none of them are working. Having your thoughts would be great 🙏
Thank you,

I’d open a Knative/Serving issue is you are not able to get WS working on Knative.


merge from template-arlac77-github

README.md

docs(README): update from template

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[release-4.14][manual] improve support to coexist with standard scheduler

manual backport of #952  to stable branch 4.15.
Add API field to configure the resync strategy.
We used to configure the cache resync code to:

react to any foreign pod (= pod not scheduled by this scheduler)
consider all the pods when computing the expected node state

But thinking about it, only pods whose containers require exclusive resources are relevant to the node state, because only exclusive resources can have NUMA affinity.
We retroactively dub this configuration "aggressive" because it causes recomputation when any change is detected, even unnecessary ones.
Recomputing the state often creates more work on the scheduler process, but most notably slows down the scheduling because we need to wait more for resyncs, being the current state invalidated (because of aggressive detection).
To improve in both areas (resource consumption but most notably scheduling latency) we add a new mode, called "relaxed" on which we leverage the scheduler options to react and consider only pods whose containers require exclusive resources.
The new "relaxed" mode is enabled by default, and the old behavior can be re-enabled with a configuration option.
release-4.14 specific notes: please see commit fa5ba29949a7120c33c80b5d0b3c2caf1140036d
release-4.14 specific notes: e2e tests not backported yet

/retest

lgtm but let's wait for the ci to pass

Ci failures look legit. I'll setup a repro.

needs to be rebased on top of #846 once the latter merges

#846 dropped, changed accordingly. We should now be good to go

/cc @Tal-or @shajmakh

/lgtm
trivial backport


deploy failed, couldn't resolve image public.ecr.aws/bitnami/java:11

error when doing cdk deploy, couldn't resolve image public.ecr.aws/bitnami/java:11
manually changed both Dockerfile as below and able to deploy
#FROM public.ecr.aws/bitnami/java:11
FROM bitnami/java:11
not sure the root cause though

Thx for reaching out!
That's strange because the tag is still available public.ecr.aws/bitnami/java:11 in ECR. Perhaps a temporary glitch or region routing/access issue?

@ryanniuu do you need further assistance or can we close this issue?


Fix link to application ports.

Small change to fix link to application ports.

Good spot, thank you :+1:

Oh you're welcome, thanks for nice piece of work, I'm currently experimenting in a VM before I put it in production!


Add AWS region name into ac_record_id for Historical Queue export for multi-instances setup:

Add AWS region name into ac_record_id for Historical Queue export for multi-instances setup:
This is needed when having multiple Amazon connect instance export data to the same Salesforce environment and Queue names in the Amazon Connect instances are identical
Issue #, if available:
*Description of changes:

The integration is working as-is if:
a.	Queue names are different on all 3 instances
b.	Queue names are similar but no calls happen on the same queue in the same 30 minute interval
In our case, when testing to place one call on the 3 instances targeting the same Queue here is what happens:
a.	First call to be processed is well created into Salesforce
b.	Second and Third are overwriting this first entry
c.	The result is that only one call is kept into Salesforce (the last one writing)
In order to avoid this I have modified the lambda exporting the Queue data (sfIntervalQueue):
a.	Unicity is done on a field called ac_record_id
b.	This field is passed in the URL of the API call (https://XXXX.my.salesforce.com/services  /data/v51.0/sobjects/amazonconnect__AC_HistoricalQueueMetrics__c/amazonconnect__AC_Record_Id__c/HOS-Sales and Event Management-ENG2021-02-16T16:00:00.000Z)
c.	It is built using [Queue Name][StartInterval] (this is why the data gets overwritten when the queue name and interval are identical)
d.	I have added the region to this parameter (https://XXXX.my.salesforce.com/services/data/v51.0/sobjects/amazonconnect__AC_HistoricalQueueMetrics__c/amazonconnect__AC_Record_Id__c/HOS-Sales and Event Management-ENG2021-02-16T16:00:00.000Zus-east-1)
e.	With this I can see 2 records for 2 calls from different instances into Salesforce:

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Not needed anymore


Integration Test - Release - 2021/12/27 10:38:28

Auto create for integration test. IssueCommandFlow

#pri1

#pri2

Just type '#pri3'


TFTP client ignores incoming data packets

TFTP client implementation (/subsus/net/lib/tftp/tftp_client.c) doesn't work with tftpd ver.0.17-22
After creating socket (line 235) it sends request to server port 69 (line 196). Server responds with data packet, but the data transfer ports are chosen independently by the sender and receiver during the transfer initialization.
As a result, /subsus/net/ip/connection.c drops incoming data packet from server as it has source port differ than expected port 69 (checking at line 695):
[00:01:23.478,000] <dbg> net_conn.conn_register_debug: (sysworkq): [0x20004fcc/17/2/0x3f] remote fe80::5c00:82ff:fe96:9800/69
[00:01:23.485,000] <dbg> net_conn.conn_register_debug: (sysworkq):   local ::/38166 cb 0x803cd91 ud (nil)
[00:01:23.599,000] <dbg> net_conn.net_conn_input: (rx_q[0]): Check UDP listener for pkt 0x2001497c src port 36610 dst port 38166 family 2
[00:01:23.607,000] <dbg> net_conn.net_conn_input: (rx_q[0]): No match found.
[00:01:25.995,000] <dbg> net_conn.net_conn_unregister: (sysworkq): Connection handler 0x20004fcc removed
[00:01:26.001,000] <dbg> net_conn.conn_register_debug: (sysworkq): [0x20004fcc/17/2/0x3f] remote fe80::5c00:82ff:fe96:9800/69
[00:01:26.008,000] <dbg> net_conn.conn_register_debug: (sysworkq):   local ::/38166 cb 0x803cd91 ud (nil)
[00:01:26.110,000] <dbg> net_conn.net_conn_input: (rx_q[0]): Check UDP listener for pkt 0x2001497c src port 45641 dst port 38166 family 2
[00:01:26.118,000] <dbg> net_conn.net_conn_input: (rx_q[0]): No match found.
[00:01:28.518,000] <dbg> net_conn.net_conn_unregister: (sysworkq): Connection handler 0x20004fcc removed
[00:01:28.524,000] <dbg> net_conn.conn_register_debug: (sysworkq): [0x20004fcc/17/2/0x3f] remote fe80::5c00:82ff:fe96:9800/69
[00:01:28.531,000] <dbg> net_conn.conn_register_debug: (sysworkq):   local ::/38166 cb 0x803cd91 ud (nil)
[00:01:28.599,000] <dbg> net_conn.net_conn_input: (rx_q[0]): Check UDP listener for pkt 0x2001497c src port 36610 dst port 38166 family 2
[00:01:28.606,000] <dbg> net_conn.net_conn_input: (rx_q[0]): No match found.

https://snipboard.io/GhUDEF.jpg
Temporary workaround:
Comment out 'continue' on line 698 file connection.c, it disables source port checking; use recvfrom() and sendto() to keep server's port.

Is it possible to use 'setsockopt' to modify socket behaviour in part of source port checking?
Or any suggestion, how to change conn->remote_addr->sin_port value to 0 after sending the first packet?
Or better to use 'bind' to random incoming port instead 'connect' to port 69?

The TFTP client polls on the socket (see https://github.com/zephyrproject-rtos/zephyr/blob/master/subsys/net/lib/tftp/tftp_client.c#L108), And so any data received on this socket should make it to the client even if its sent by a different source port. So the client is doing the correct thing.
I'm not aware of the latest changes within the networking stack which may have caused this. @jukkar would know if its a networking stack issue.

Noticed following issues with tftp:

There is no sample app for the tftp functionality. Dunno how this went unnoticed but this needs to be fixed, every feature needs to have a sample so that it is easy to test things and also make sure the code does not bitrot. @bwasim would you be able to send a PR that adds simple tftp client app? The app does not need to implement anything useful, just to make sure it calls relevant bits and pieces that are needed for the tftp.
Noticed resource leak in tftp_get(), the sock is not closed in the case of error or timeout. Also tftp_lock is not relased in the case of error. We should goto to req_done: label in the case of errors (except the socket() failing)
I setup a tftp_server in Linux and tried this from Zephyr side (after adding tftp_get() call to existing sample). In Zephyr side the socket is created like this which creates this listener in connection.c

[ 6] 0x808dff8  2      4DU      <IP_ADDRESS>:37362       <IP_ADDRESS>:69

So in Zephyr side we are only accepting data from <IP_ADDRESS>:69 but now the server is sending data from some random port (instead of 69). Then zephyr just drops the packet because there is no listener for that external port. After quick browse of the code, Zephyr should be able to accept the tftp packet if the port is set to 0 in connect() and then set the destination port when using sendto(). Atm the tftp lib is using send() so the code would need some tweaking. I did not test this but it looks like it might work.

@jukkar Approve. My code works fine with connection port set to 0. Thanks.
Additionally, it's good to have streaming mode for TFTP client (for example, to write data to Flash)

I will do a pull request firstly to fix the issues described in this issue, and we can think about enhancements later.
@jukkar , I was supposed to send out a pull request for the app, but I moved away from this project fairly quickly and forgot to do so. Will also do that with this issue.


Invert how relative stack IDs are calculated and stored.

Relative stack IDs are expensive to compute, but allow a stack ID to be computed that is persistent across runs of an instrumented binary (abstracts away base addresses).
Currently, we compute the relative stack ID and explicitly store it in the registry. During the next run we need to explicitly calculate relative stack IDs for each stack in order to see if this matches.
A better way would be to store sufficient information in the registry to directly calculate a corresponding absolute stack ID using current module load addresses. Since modules can load/unload at runtime, and some modules used in some stacks may not always be in memory, this will require a persistent module load observer mechanism that updates an in-memory set of stack IDs that can be matched against.

Turns out that this isn't going to work either. The problem is with generated frames that don't lie within any module. They will always make a random contribution to a stack-trace ID, which can only be filtered out by actually checking which frames are in modules (expensive to do, and the reason why relative stack IDs are expensive to calculate).
We have decided to stick with storing relative stack IDs in the registry, and to make a class that observes both the StackCaptureCache and the modules, computing relative stack IDs of stacks at most once each as they enter a stack-capture cache, and only when pending relative stack IDs haven't been matched.
In the usual case the overhead will be nil. While actively matching a non-empty list of relative stack IDs the cost will be to calculate a single relative stack ID per stack ID committed to the stack cache.

This was addressed indirectly in the following CLs:
https://github.com/google/syzygy/commit/72cf729374d6f746de31d1a5d404ff1c82d00b10
https://github.com/google/syzygy/commit/84fc538f381d9f02aeadbd75fe582050b63222f7
https://github.com/google/syzygy/commit/b16783c81c2c38bc61c9fe309b0a9e32fc7af398
Closing.


Auth and Database custom domain?? [PC - Android]

hello guys,
is it possible to define custom domain [i mean BLABLABLA.com] against of Firebaseio.com for Android and PC apps that sends or gets their all of Auth or Database request to this domain?
i mean this custom domain is doing redirect of this requests to main Firebase server ...
PC / Android      <=======>      BLABLABLA.com      <===================>     Firebase

@davoodkharmanzar nope that's not possible.


chore: use double backticks for explicit names, if possible

This PR is very likely not exhaustive: the next step to finding these more exhaustively would be to write an intelligent linter.
(I found these using a simple text-based linter, which has still too many false positive).

Thanks!
maintainer merge


Works on .jpg files

I'm not sure why, but glob seems to return all jpg files as well (despite mentioning *.png at the end) and I was able to generate feature vectors using it.
Just thought I'd mention it here. Maybe one can remove that comment which says jpg not supported.

Heh, this is a good 'issue' to report, thanks :)


Bluetooth: Immediate Alert Service

Add Immediate Alert Service

@MariuszSkamra FYI

The IAS spec is not clear on behavior when multiple peers are connected. But I think clearing the alert when any peer disconnects is wrong.
The Alert Level characteristic is not readable. This makes me think that each GATT client should have a separate alert level.

Good point. It's an old spec, but perhaps an Erratum should be raised for this, to make this clear? From most other specs I've read, it is explicitly stated if a characteristic value is on a per-client basis.

The IAS spec is not clear on behavior when multiple peers are connected. But I think clearing the alert when any peer disconnects is wrong.
The Alert Level characteristic is not readable. This makes me think that each GATT client should have a separate alert level.

Good point. It's an old spec, but perhaps an Erratum should be raised for this, to make this clear? From most other specs I've read, it is explicitly stated if a characteristic value is on a per-client basis.

I thinks this is right too, I'll change this PR into draft and I'll make some major adjustments so this will work properly with multiple peers connected.

@szymon-czapracki please rebase

@szymon-czapracki please rebase

Done


Basic DataFrame stream example not working in Jupyter notebook

I must be missing some basic understanding. All the examples feature the builtin streamz.dataframe.Random utility. However when I try to mimic its functionality with hvplot in a jupyter notebook there is no plot rendered. See my example below.
def make_data():
    # simulate a rest api call
    # that returns dataframe with orderbook info
    df = pd.DataFrame({'bid':np.random.randn(10),
                       'ask':np.random.randn(10)})
    return df

stream = streamz.Stream()
example = pd.DataFrame({'bid': [], 'ask': []},
                       columns=['bid','ask'])

df = DataFrame(stream, example=example)
for i in range(5):
    df = make_data()
    stream.emit(df)
    df.hvplot.line(width=400)

Please advise.

To render the plot it either needs to be on the last line of a cell, or you need to wrap it in a call to display (a builtin in ipython). In your case you should move the hvplot line on the last line of your first cell and then run the for loop with stream.emit in the next cell.

To state that another way. Hvplot calls are not like matplotlib where calling it displays the plot, instead they return objects which display themselves in the notebook.

Ok thanks for the clarification.  My example is working now.


BLE Mesh when resend use GATT bearer

Hello EvenyBody:
When I use GATT Bearer to control node with phone. The node sends the long packet at the transport layer, and then is split and sent. The mobile phone sends back an ACK response, but the ACK response does not contain all the response packets, so the node will resend the split packet it thinks is lost. The node calls the function ‘’‘bt_mesh_net_resend‘’‘ to send the retransmitted packet, but not through the GATT but only the Adv Bearer.

bt_mesh_adv_send(buf, cb, cb_data);

How is it possible that not all packets are acknowledged? GATT is a reliable bearer without packet loss, unlike advertising. That said, I do agree it's odd behaviour that resending happens over a different bearer, so this should probably be fixed no matter what.

I agree with you that GATT is a reliable transmission bearer. There is theoretically no packet loss, but this is happening. The most critical issue now is the need to fix the problem of retransmitting data on different bearer.

@jhedberg Thank you very much for your contribution to the open source community.
I have a question that there is a not need to do memory release here.
https://github.com/zephyrproject-rtos/zephyr/blob/70640334730b816c8c485d2cfbe77119fc3783cb/subsys/bluetooth/mesh/net.c#L736-L792
        if (IS_ENABLED(CONFIG_BT_MESH_GATT_PROXY) &&
	    bt_mesh_proxy_relay(&buf->b, dst)) {
		net_buf_unref(buf);//This code should not be executed
	} else {
		bt_mesh_adv_send(buf, cb, cb_data);
	}

memory release is automatically performed when the appropriate response packet is received.
https://github.com/zephyrproject-rtos/zephyr/blob/70640334730b816c8c485d2cfbe77119fc3783cb/subsys/bluetooth/mesh/transport.c#L208-L215
https://github.com/zephyrproject-rtos/zephyr/blob/70640334730b816c8c485d2cfbe77119fc3783cb/subsys/bluetooth/mesh/transport.c#L170-L206

@menglingao1997 I don't see any net_buf unrefs in the transport.c code you quoted. Either way, note that we're talking about a reference count here, not explicitly freeing the memory. The advertising queue owns a reference to each net_buf that's in the queue, so once a buffer has been removed from the queue it's the responsibility of adv.c to release that reference by eventually calling net_buf_unref(). If this is the last reference the buffer will be freed, but there could also be code elsewhere (e.g. transport.c) holding a second reference and so the buffer would be freed only when the last reference is removed.

@menglingao1997 ah, I had to scroll down on your quote to see the net_buf_unref, I guess you were referring to this:
net_buf_unref(tx->seg[i]);

The tx->seg[i] is its own reference to the buffer. Both the advertising queue reference and this one need to get a net_buf_unref() call.

@menglingao1997 the tx->seg[i] in transport.c gets its own reference here: https://github.com/zephyrproject-rtos/zephyr/blob/70640334730b816c8c485d2cfbe77119fc3783cb/subsys/bluetooth/mesh/transport.c#L407

@menglingao1997 sorry, I thought you were talking about the adv.c change, but I see you were referencing the net.c change to the resend() function. Let me take another look.

@menglingao1997 yes, you're right - bt_mesh_adv_send() calls net_buf_ref() so doing the unref() in resend() is not consistent and will cause an imbalance in the reference count. Thanks for pointing this out, and sorry for my initial confusion with what you were trying to explain 😄
There is also another issue - I'm afraid if there are callbacks provided by the sending code those will not be called in this case.

There is also another issue - I'm afraid if there are callbacks provided by the sending code those will not be called in this case.

Actually this is fine, since this is just a resend of a segment. transport.c will take of the callbacks once the segment sending procedure is complete.

There is also another issue - I'm afraid if there are callbacks provided by the sending code those will not be called in this case.
Actually this is fine, since this is just a resend of a segment. transport.c will take of the callbacks once the segment sending procedure is complete.

Correcting myself again: it's not fine, transport.c relies on callbacks for each segment resend as well. I'll address this in a subsequent PR.

@menglingao1997 please take a look at #18285 which tries to address the issue you brought up.


[SP-4480] Backport of PDI-16909 - Remove a schedule using the REST AP…

…I using HTTP DELETE method (8.1 Suite)
@ricardosilva88 @cravobranco

Build Completed
:fire: This pull request has some issues. It would be preferable to fix them in order for it to be just perfect. See below for more details. Some links are also available below for further assistance in addressing those issues.
Build Commands
mvn -B -fn -f 'pom.xml' -pl 'ui,engine' -P '!assemblies' -Dsurefire.runOrder=alphabetical -Daudit -amd clean install

Cleanup Commands
mvn -B -f 'pom.xml' -pl 'ui,engine' -P '!assemblies' -amd build-helper:remove-project-artifact

Changed files
  engine/src/main/java/org/pentaho/di/trans/steps/rest/Rest.java
  engine/src/main/java/org/pentaho/di/trans/steps/rest/RestMeta.java
  engine/src/test/java/org/pentaho/di/trans/steps/rest/RestMetaTest.java
  engine/src/test/java/org/pentaho/di/trans/steps/rest/RestTest.java
  ui/src/main/java/org/pentaho/di/ui/trans/steps/rest/RestDialog.java
  ui/src/test/java/org/pentaho/di/ui/trans/steps/rest/RestDialogTest.java

Unit Test Coverage
These statistics help you identify how your changes have affected the coverage of the following files. If a file is not in this list, then its coverage was not affected by your changes. To get some help interpreting these metrics, please refer to Jacoco's documentation.

:warning: Coverage Changes: +0.1% (click to expand)
org.pentaho.di.trans.steps.datagrid.DataGridMeta

Branch Change: -2% :small_red_triangle_down:
Complexity Change: -1.7% :small_red_triangle_down:
Instruction Change: -0.2% :small_red_triangle_down:

org.pentaho.di.trans.steps.groupby.GroupByMeta

Branch Change: -2% :small_red_triangle_down:
Complexity Change: -2.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.ldapoutput.LDAPOutputMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.memgroupby.MemoryGroupByMeta

Branch Change: -1.1% :small_red_triangle_down:
Complexity Change: -1.3% :small_red_triangle_down:

org.pentaho.di.trans.steps.sort.SortRowsMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.tableoutput.TableOutputMeta

Branch Change: -0.9% :small_red_triangle_down:
Complexity Change: -0.8% :small_red_triangle_down:

org.pentaho.di.trans.steps.uniquerows.UniqueRowsMeta

Instruction Change: -0.1% :small_red_triangle_down:

org.pentaho.di.trans.steps.salesforceupsert.SalesforceUpsertMeta

Instruction Change: -0.1% :small_red_triangle_down:


.net standard library with dylib - DllNotFoundException

I previously posted this on Stack Overflow but that's had no responses and I think there is a fair chance it's a problem with .Net Core or the .Net Core documentation.
I'm using .Net Core 1.0.
I have a dylib (libextern.dylib) that I've created which contains the following:
int extern_test()
{
    return 123;
}

I have a library which targets netstandard1.5 and net451 and which contains:
[DllImport("libextern.dylib", EntryPoint="extern_test")]
public static extern int ExternTest();

Finally, I have a .net core CLI app which calls the library's ExternTest().  It has a project reference to the library and allowUnsafe in it's buildOptions:
"dependencies" : {
  "MyLibrary": {
    "version": "0.0.1",
    "target": "project"
  }
},
"buildOptions": {
    "allowUnsafe": true
}

If I place libextern.dylib into the root of the CLI project then ExternTest() returns 123 as expected.
Rather than putting it into my CLI project, I want to include libextern.dylib within my library.  I have followed the How to Use Native Dependencies instructions and the KestrelHttpServer/Libuv example it links to (as well as various other guides which I believe have become out of date) but I get a DllNotFoundException when calling ExternTest().
The library's project.json contains:
"buildOptions": {
  "allowUnsafe": true
},
"packOptions": {
  "files": {
    "mappings": {
      "runtimes/osx/native/": "libextern.dylib"
    }
  }
}

The How to Use Native Dependencies instructions omit "mappings" but I have tried both ways and found it was required for libextern.dylib to be included in the nuget package.
I have also tried packaging libextern.dylib into another package (Option 2 in the How to Use Native Dependencies instructions) but this did not work for me either.
What might I be doing wrong here?  Might this actually be an issue with .net core?

@schellap Could this be a problem with the host?

@jonstoneman, would you be able to share the entry for this "MyLibrary" in your deps.json file in your app base?
I'm suspecting an instance of https://github.com/dotnet/core-setup/issues/194

Sorry, I would need the "type" in the "libraries" section for this library.

@jonstoneman try changing packOptions to publishOptions
Like this:
"publishOptions": {
  "files": {
    "mappings": {
      "/": "libextern.dylib"
    }
  }

Not entirely sure this will work but packOptions seems wrong.
After doing this do a dotnet publish and take a look at the output directory to see if the .dylib file was binplaced correctly.
@cartermp The documentation @jonstoneman is referencing appears incorrect for project.jsons attempting to reference a native dll.

@cartermp Specifically
For the first option, you'll need to include the following in your project.json file:+
1.Setting allowUnsafe to true in a buildOptions section.
2.Specifying the path to the native .dll(s) with a Runtime Identifier (RID) under files in the packOptions section.

Should packOptions here be perhaps buildOptions or publishOptions
@jonstoneman There is some additional info for these option types in the original announcement here:
https://github.com/aspnet/Announcements/issues/175

@ajaybhargavb Which would be the correct place to list a native dependency?  What I had documented is now broken with the project.json changes.

If the dll need to be copied to the output directory so that it is used when building, then it needs to be included in copyToOutput in buildOptions.
"buildOptions":{
        "copyToOutput":{
            "runtimes/win7-x64/native/":"native-lib.dll"
        }
    }

@ajaybhargavb I see.  Looking at the Libuv packOptions is being used, but this is specifically for packaging it as a NuGet package.  Is that still valid?
Is there a doc or matrix of valid configurations for placing files under sections?  Specifically:

Put your native .dll dependency under buildOptions in these ways to accomplish X, Y, and Z
Put your native .dll dependency under publishOptions in these ways to accomplish X, Y, and Z
Put your native .dll dependency under packOptions in these ways to accomplish X, Y, and Z

This is what I can gather based on the information I've found:

??? To build with a native dependency, associate the path with the RID(s) you want under mappings under files under packOptions.  This will not copy to the output directory.
To package a native dependency with your NuGet package, associate the path with the RID(s) you want under mappings under files under packOptions
To publish the native dependency with your application, associate the path with the RID(s) you want under mappings under files under packOptions

In addition to what you just said above:

To build with the native dependency and copy the .dll to the output directory, associate the path with the RID you want under copyToOutput under buildOptions

@schellap:  MyApp.deps.json contains:
{
  "runtimeTarget": {
    "name": ".NETCoreApp,Version=v1.0",
    "signature": "da39a3ee5e6b4b0d3255bfef95601890afd80709"
  },
  "compilationOptions": {},
  "targets": {
    ".NETCoreApp,Version=v1.0": {
      "MyApp/1.0.0": {
        "dependencies": {
          "MyLibrary": "1.0.0"
        },
        "runtime": {
          "MyApp.dll": {}
        }
      },
      "MyLibrary/1.0.0": {
        "runtime": {
          "MyLibrary.dll": {}
        }
      }
    }
  },
  "libraries": {
    "MyApp/1.0.0": {
      "type": "project",
      "serviceable": false,
      "sha512": ""
    },
    "MyLibrary/1.0.0": {
      "type": "project",
      "serviceable": false,
      "sha512": ""
    }
  }
}

@brthor: I can't use dotnet publish with a library

@ajaybhargavb: copyToOutput resulted in the dylib being copied into the output directory of the library project but I still get the DllNotFoundException when calling the test method from the app.

I've put example code here: https://github.com/jonstoneman/nativelibrepro
The master branch has the dylib in the MyApp project and works.
The feature/packaged_lib branch demonstrates the problem.

@jonstoneman I didn't realize this was a library project.
I think you are hitting this issue: https://github.com/dotnet/cli/issues/2902
To make this work you'll need to do a dotnet pack on that library (also going back to packOptions in your project.json). Then target the output nupkg with the consuming app rather than the project.
You can do this by using dotnet restore -f C:\Directory\Where\The\Nupkg\Sits where -f adds a source to the restore call, so the nupkg can be picked up from a local directory.
For packOptions you'll want the original string that you had:
"buildOptions": {
  "allowUnsafe": true
},
"packOptions": {
  "files": {
    "mappings": {
      "runtimes/osx/native/": "libextern.dylib"
    }
  }
}

Thanks @brthor - that does work!  I had previously tried that but using a NuGet.config file instead of dotnet restore -f.  The NuGet.config seemed to be working (MyLibrary appeared in ~/.nuget/packages) so I guess I must have had something else different without realising.
Is there any way of getting this working with project references?  I found this aspnet/dnx sample but I don't know if it worked.  dotnet restore certainly complains about dependencies without version numbers.
Without project references working then presumably I'll need to do this each time I make a change to my library project:

rm -rf ~/.nuget/packages/MyLibrary
dotnet pack ../src/MyLibrary
dotnet restore -f ../src/MyLibrary/bin/Debug

Unfortunately due to the linked bug above I don't believe this will currently work for P2P references.
an alternative to doing this, each time you update your library project:
rm -rf ~/.nuget/packages/MyLibrary
dotnet pack ../src/MyLibrary
dotnet restore -f ../src/MyLibrary/bin/Debug

is to version your library higher with each change, by putting this in your library project.json : "version": "1.0.0-*"
Then using dotnet pack --version-suffix 000X ../src/MyLibrary where X increases with each change.
For the cli we use the commit count of the repo to keep versions increasing.

@jonstoneman is the workaround provided by @brthor working for you? If so, can we close this issue?

@blackdwarf The workaround works but is no faster than what I was already doing and actually less convenient.  I still need to call dotnet restore -f ../src/MyLibrary/bin/Debug but I also need to increment the --version-suffix.  With my method I can just rerun the same commands (which I have all on one line so can just up arrow and enter).
In any case, using package references is still a pretty bad experience compared to project references.  I'd suggest keeping this issue open until project references work but won't object if you feel that https://github.com/dotnet/cli/issues/2902 really covers it and want to close this one.

@jonstoneman I will actually close this one since we have dotnet/cli#2902. It is preferable to keep the product issues in the actual product repos.

@jonstoneman You can provide example of result?
I have same problem with 3 projects: 1 native lib => 2 bindings => 3 test app

I'm also struggling getting to specify and use a native library with my .Net Core project.
In my traditional Net461 VS solution, the native lib is compiled and project-referenced as a dependency.
I've tried all recommendations here (except making a NuGet package of it) and nothing seems to work as one would expect.
I literally just want to specify the .dll file as a dependency and have the Core app find and load it appropriately. Even copying the specific native dll into all folders in my output path (incl the folder where the .exe is build to), I still get that the dll fails to be found.
Is there some new magic in .Net Core runtime to how it is finding assemblies? I've fiddled with the additionalProbingPaths setting in *.runtimeconfig.json as well to no joy.
Where is the de facto reference doc on is stuff?
Is making a NuGet package of my native dll the only way it can work? Seems a bit overkill....

@SeanSnyders, Could you also mention the version of the SDK and the runtime (Microsoft.NETCore.App) you are using?
dotnet.exe appname.dll (shared FX app) and appname.exe (standalone app) find the DLLs referenced in the appname.deps.json files. Do you have your library in the appname.deps.json?

@schellap It is netcoreapp1.1 and I'm targeting runtime win10-x64.
I ended up making a NuGet package of my native lib and added a local folder as a NuGet source where this package is deployed.
I can see my dependency in appname.deps.json:

But I still get a DllNotFoundException:

On the topic of referenced native libraries, how is the c++ runtime referenced? Does the dotnet app run in a sandbox (implicating it should be specced as a dependency) or does an installed runtime redist get picked up? Or both?

@schellap I found the problem. It was in the end my own error as I was pulling in an incorrect dll into my NuGet package as a dependency of my top-level native dll. I monitored my running app with SysInternal's  Process Monitor (procmon.exe) and found the loading was working for the one dll but not for the other.
I would still like to know what is the recommended procedure for specifying vc runtime dependencies in .Net Core projects. Can we make a SCD that includes the runtimes as well. What of other platforms like linux, osx, etc....?

@piotrpMSFT, @blackdwarf, @livarcocc, can you help @SeanSnyders understand how native libraries are referenced in the project file? (i.e., as project to project dependency instead of making nupkgs for them)

@blackdwarf I am experiencing this exception as well. I can only assume that I am doing something wrong. I outlined all details in this StackOverflow post: http://stackoverflow.com/questions/41432671/unable-to-load-dll-dotnet-core . Any help would greatly be appreciated.

@cartermp can you take a look at @czifro question since it is F#?

No idea what the status of pinvoke on .NET Core is, let alone for F#.  Tagging @KevinRansom

@cartermp p/invoke works in .NET Core. We've been using it in CoreFX implementations without issues. The problem folks are having here are packaging / project related.
@czifro Can you post another GitHub issue and provide more detail? Are you loading dylib that you package yourself or supplied by the OS?

@yizhang82 post another issue on this repo? or a different one? Just want to make sure I post it in the right location.

@czifro You can start with the coreclr repo first. Thanks.


Add Greater Mimics

Description
Greater mimics, are mimics, except spikier and beefier. They can take more hits and deal more damage. Will probably require nerfing normal mimics to make the strength noticeable.
Technical stuff
Greater mimics should be a chance spawn from mimic multiplying.
The succ
Greater mimics should have an ability to one-shot face-suck kill people. Might be a bit brutal to players -- worth giving them a warning, and/or enabling this behavior only when difficulty settings are above a certain level.
Art Needed
A spikier mimic texture essentially

Audio Needed
Can probably re-use mimic audio.

Wound up working on this myself, this may wind up becoming a thing fairly soon.


Delete standalone cmake installation from Windows build images

The Windows build images have two cmake installations: One that comes with Visual Studio and a standalone one. All repos should use the one that comes with Visual Studio.
The standalone cmake installation is redundant. It should be deleted to make our build environment simpler and more secure.
Context: https://github.com/dotnet/runtime/issues/88172#issuecomment-1613896921

Release Note Category

[ ] Feature changes/additions
[ ] Bug fixes
[ ] Internal Infrastructure Improvements

Release Note Description

cc @agocke

as mentioned in dotnet/runtime#88172, making this change would negatively impact any team using the standalone cmake installation. @dotnet/dnceng do we have a reliable way to determine who would be affected❔

do we have a reliable way to determine who would be affected❔

Not that I know of. Anyone can use anything from the images we provide in any way. It's hard to get detailed auditing. And it is very hard to be confident a change won't break anyone.
Thus, changes of this kind to machine images are done with thorough communication with partner teams using channels like the Build Council, GitHub issues in the Arcade repository, the DNCEng Partners email alias, the General channel of the .NET Core Eng Services Partners Teams team and the engineering services rollout/release notes. But it's certainly possible.
In this particular situation, Engineering Services would partner with someone who would drive the change. This person is probably not a member of dnceng as this is a bit outside our usual stewardship concerns of things like Component Governance or other Compliance issues. So if there was a partner willing to take this on we would of course provide any data and support we could (e.g., build telemetry, access to our databases, etc.)

And it is very hard to be confident a change won't break anyone.

That is true of any build image changes. The rollouts of the updated build images are regularly breaking dotnet/runtime builds and we have to always adjust to the break on a short notice. That's how the system is setup.
The proposed change is not deleting cmake from the image. It is effectively updating the version to the one that comes with VS and changing the location where it is installed. Both these types of breaks (version updates and changes in the exact locations where the tool is installed) happen regularly, without much ado.
I agree that it is a good idea to do due some diligence to see who may be affected - if it is easy to do that.

The proposed change is not deleting cmake from the image. It is effectively updating the version to the one that comes with VS and changing the location where it is installed. Both these types of breaks (version updates and changes in the exact locations where the tool is installed) happen regularly, without much ado.

Ah, I did not realize this. That makes this easier to accomplish, I think.
I see your statements that the business motivation is to eliminate one source of problems by eliminating an unnecessary install of CMake. What do you view the urgency as?

It is effectively updating the version to the one that comes with VS and changing the location where it is installed

not quite. anything using the standalone installation today has either configured their pipeline using the https://github.com/dotnet/arcade/blob/main/Documentation/NativeToolsOnMachine.md approach or is manually finding cmake where it's placed. the problem is applicable searches are going to find loads of matches in eng/common/tools.ps1 files and we don't constrain use of our queues to dotnet/* repos

What do you view the urgency as?

This issue falls into secure supply chain improvements, not urgent.
IMHO, it should be your job to work towards making the build environment as secure as possible and as small as possible and get the users of the build images to adjust to the changes.
The users of the build images do not really care that there are extra duplicate tools installed from different sources.

I think all the pertinent information is captured here (at least, my questions are answered) so I'll let the usual triage process take over.


variables: adds empty $utilities

This PR expose the possibility of adding new utility classes.
If it's ok, please give me some feedback of what comment description we should leave there.
@MartijnCuppens what do you think?

The branch is not based on the latest master branch @zalog :)

Wow! My bad :)
Now it's ok.

Not sure about this, I think it's clearer to leave it in the separate file.

Yeah, but I think exposing this on our most visible scss file, and leave there a comment, can open developers eyes. What do you think?

Hmm, not sure. It's weird to only have an empty variable. We have a documentation page dedicated to the Utility API (https://twbs-bootstrap.netlify.com/docs/4.3/utilities/api/) and I think this covers it well enough.

Ok. Please think about this if we will need some sort of specific order in variables regarding this.
Tnks for your time.

We still have https://github.com/twbs/bootstrap/pull/29451 open, feel free to drop ideas there