Wallet-ext: [p0] Add a tab for showing transactions

Similar to https://github.com/MystenLabs/sui/issues/1191, add a tab to show all transactions related to the wallet address: https://github.com/MystenLabs/sui/issues/1191 in the wallet extension.

Does this include the NFT transactions as well?

Done https://github.com/MystenLabs/sui/pull/2529


Ce Migration FAQ

Created an FAQ section for CE Migration

Docs Build status updates of commit 3b630b3:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

windows-iotcore/TOC.yml
:white_check_mark:Succeeded

windows-iotcore/windows-ce-migration-faq.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Question: Where do dags/plugin etc live

Hi,
Once airflow is deployed via ECS, where do we store the custom objects like dags, plugins etc?
Can they be part of codecommit/git and would ECS be able to pull them once a new dag/update is published?
Thanks
Apun

also wondering how this works!

I'm hoping. efs-volumes will do the trick. I'm new to airflow though have some experience with ECS and that is why I'm trying this out.


[Thunder Scans] Detecting last premium chapter

Source information
Thunder Scans 1.4.36
Source language
English
Steps to reproduce
Open any manhwa with premium chapter.
Expected behavior
Shouldn't detect premium chapter.
Actual behavior
Detected the premium chapter.

(Ch 35 is premium chapter. There are ch 34 which is also premium, but not detecting.)
Mihon/Tachiyomi version
Mihon Preview r7015
Android version
Android 14
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open or closed issue.
[X] I have written a short but informative title.
[X] I have updated the app to version 0.15.3.
[X] I have updated all installed extensions.
[X] I have tried the troubleshooting guide.
[X] If this is an issue with the app itself, I should be opening an issue in the app repository.
[X] I will fill out all of the requested information in this form.

Add a :+1: reaction to issues you find important.

related to https://github.com/keiyoushi/extensions-source/issues/5908
https://github.com/keiyoushi/extensions-source/issues/5908#issuecomment-2466734304

I would go as far as calling it a duplicate even.

it is.

It seems like a duplicate. I searched with Thunder Scans but nothing found on the issue.


Fix #handle for BasicObject return values

We want to wrap calls to redis with SimpleCurcuitBreaker#handle. Pipelined requests return Redis::Future objects that are derived from BasicObject and therefore don't respond to #tap resulting in a NoMethodError in #handle. Note that minitest's #must_equal also doesn't work, but at least #equal? does.

:+1: Thank you.


no docs

add docs link to readme, pypi and github header
add bug tracker link to them.

fixed i will close this issue now


CI: Fix typo stopping new runtime config being used

PR #543 attempted to make the tests use the new runtime config file, but
the fix was incorrect due to a silly typo.
Really fixes #542.
Signed-off-by: James O. D. Hunt<EMAIL_ADDRESS>

Replaces #544.

LGTM

Wow, I thought this moment wound never come...


Fix sles not labeled as suse

Label sles as linux_suse instead of linux_generic
Closes #8295

Test failure is unrelated.  Merging.


feat: adding beginner-friendly repos

Please confirm this pull request meets the following requirements:

[X] I followed the contributing guidelines: https://github.com/github/explore/blob/main/CONTRIBUTING.md.
[X] I am not the sole author or employee of a company who created the topic or collection I'm changing.

Which change are you proposing?

[X] Suggesting edits to an existing topic or collection
[ ] Curating a new topic or collection
[ ] Something that does not neatly fit into the binary options above

Editing an existing topic or collection
I'm suggesting these edits to an existing topic or collection:

[ ] Image (and my file is *.png, square, dimensions 288x288, size <= 75 kB)
[X] Content (and my changes are in index.md)

I added more beginner-friendly projects to the index.md` file.

Curating a new topic or collection

[ ] I've formatted my changes as a new folder directory, named for the topic or collection as it appears in the URL on GitHub (e.g. https://github.com/topics/[NAME] or https://github.com/collections/[NAME])
[ ] My folder contains a *.png image (if applicable) and index.md
[ ] All required fields in my index.md conform to the Style Guide and API docs: https://github.com/github/explore/tree/main/docs

Please replace this line with an explanation of why you think this topic or collection should be curated.

Something that does not neatly fit into the binary options above

[ ] My suggested edits are not about an existing topic or collection, or at least not a single one
[ ] My suggested edits are not about curating a new topic or collection, or at least not a single one
[ ] My suggested edits conform to the Style Guide and API docs: https://github.com/github/explore/tree/main/docs

Please replace this line with an explanation of your proposed changes.

Please note: we will close your PR without comment if you do not check the boxes above and provide ALL requested information.

items:

beetbox/beets
scottschiller/SoundManager2
CreateJS/SoundJS
musescore/MuseScore
tomahawk-player/tomahawk
cashmusic/platform
mopidy/mopidy
AudioKit/AudioKit
Soundnode/soundnode-app
gillesdemey/Cumulus
metabrainz/picard
overtone/overtone
samaaron/sonic-pi
display_name: Music
created_by: jonrohan

Drop the code bass with these musically themed repositories.

/*\

math

math related functions

*/
define(function () {
math = {
/**

  math helper functions-----

  */

/*\

 * math.inbetween

 [ method ]

 - x, L, R (number)

 = (boolean) true if x is in between L and R

\*/

inbetween: function (x, L, R) {

  let l, r

  if (L <= R) {

    l = L

    r = R

  } else {

    l = R

    r = L

  }

  return x >= l && x <= r

},

/*\

 * math.round_d2

 [ method ]

 - I (number)

 = (number) round to decimal 2

\*/

round_d2: function (I) {

  return Math.round(I * 100) / 100

},

/*\

 * math.negligible

 [ method ]

 - M (number)

 = (boolean) true if M is very very small, with absolute value smaller than ~0.00000001

\*/

negligible: function (M) {

  return M > -0.00000001 && M < 0.00000001

},

/**

curves--------------------

*/

/*\

 * math.bezier2

 [ method ]

 - A, C, B (object) points in `{x,y}`

 * here `C` means the control point

 - steps (number)

 = (object) array of points on curve

\*/

bezier2: function (A, C, B, steps) {

  const curve = new Array()

  for (let i = 0; i < steps; i++) {

    curve.push(math.bezier2_step(A, C, B, i, steps))

  }

  curve.push(B)

  return curve

},

bezier2_step: function (A, C, B, i, steps) {

  const P = { x: 0, y: 0 }

  P.x = getstep(getstep(A.x, C.x, i, steps), getstep(C.x, B.x, i, steps), i, steps)

  P.y = getstep(getstep(A.y, C.y, i, steps), getstep(C.y, B.y, i, steps), i, steps)

  return P

  function getstep(x1, x2, stepcount, numofsteps) {

    return ((numofsteps - stepcount) * x1 + stepcount * x2) / numofsteps

  }

},

/**

2d vector math--------------

*/

/*\

 * math.add

 [ method ]

 * A+B

 - A, B (object) points in `{x,y}`

 = (object) point in `{x,y}`

\*/

add: function (A, B) {

  return { x: A.x + B.x, y: A.y + B.y }

},

/*\

 * math.sub

 * A-B

 [ method ]

 - A, B (object) points in `{x,y}`

 = (object) point in `{x,y}`

\*/

sub: function (A, B) {

  return { x: A.x - B.x, y: A.y - B.y }

},

/*\

 * math.scale

 * A*t

 [ method ]

 - A (object) point

 - t (number)

 = (object) point

\*/

sca: function (A, t) {

  return { x: A.x * t, y: A.y * t }

},

/*\

 * math.length

 * |A|

 [ method ]

 - A (object) point

 = (number) length

\*/

length: function (A) {

  return Math.sqrt(A.x * A.x + A.y * A.y)

},

/*\

 * math.distance

 * |AB|

 [ method ]

 - A, B (object) points in `{x,y}`

 = (number) length

\*/

distance: function (p1, p2) {

  return Math.sqrt((p2.x - p1.x) * (p2.x - p1.x) + (p2.y - p1.y) * (p2.y - p1.y))

},

/*\

 * math.negative

 * -A

 [ method ]

 - A (object) point

 = (object) point

\*/

negative: function (A) {

  return { x: -A.x, y: -A.y }

},

/*\

 * math.normalize

 * A/|A|

 [ method ]

 - A (object) point

 = (object) point

\*/

normalize: function (A) {

  return math.sca(A, 1 / math.length(A))

},

/*\

 * math.perpen

 * perpendicular; anti-clockwise 90 degrees, assume origin in lower left

 [ method ]

 - A (object) point

\*/

perpen: function (A) {

  return { x: -A.y, y: A.x }

},

/*\

 * math.signed_area

 [ method ]

 - A, B, C (object) points

 = (number) signed area

 * the sign indicate clockwise/anti-clockwise points order

\*/

signed_area: function (p1, p2, p3) {

  const D = (p2.x - p1.x) * (p3.y - p1.y) - (p3.x - p1.x) * (p2.y - p1.y)

  return D

},

/*\

 * math.intersect

 * line-line intersection

 [ method ]

 - P1 (object) point on line 1

 - P2 (object) point on line 1

 - P3 (object) point on line 2

 - P4 (object) point on line 2

 = (object) return the intersection point of P1-P2 with P3-P4

 * reference: [http://paulbourke.net/geometry/lineline2d/](http://paulbourke.net/geometry/lineline2d/)

\*/

intersect: function (P1, P2, P3, P4) {

  let mua, mub

  let denom, numera, numerb

  denom = (P4.y - P3.y) * (P2.x - P1.x) - (P4.x - P3.x) * (P2.y - P1.y)

  numera = (P4.x - P3.x) * (P1.y - P3.y) - (P4.y - P3.y) * (P1.x - P3.x)

  numerb = (P2.x - P1.x) * (P1.y - P3.y) - (P2.y - P1.y) * (P1.x - P3.x)

  if (negligible(numera) && negligible(numerb) && negligible(denom)) {

    // meaning the lines coincide

    return {

      x: (P1.x + P2.x) * 0.5,

      y: (P1.y + P2.y) * 0.5

    }

  }

  if (negligible(denom)) {

    // meaning lines are parallel

    return { x: 0, y: 0 }

  }

  mua = numera / denom

  mub = numerb / denom

  return {

    x: P1.x + mua * (P2.x - P1.x),

    y: P1.y + mua * (P2.y - P1.y)

  }

  function negligible(M) {

    return M > -0.00000001 && M < 0.00000001

  }

}

}
return math
})

Hi @Gitsam2332! :) Can you put these code snippets as in-line comments? I'm struggling to understand where to put them in my PR.

Sure.
On Fri, 15 Sept, 2023, 5:37 pm Christine Belzie, @.***>
wrote:

/*\

math
math related functions
*/
define(function () {
math = {
/**
math helper functions-----
*/
/*\

math.inbetween

[ method ]

x, L, R (number)

= (boolean) true if x is in between L and R
*/
inbetween: function (x, L, R) {
let l, r
if (L <= R) {
l = L

r = R

} else {
l = R

r = L

}
return x >= l && x <= r
},
/*\

math.round_d2

[ method ]

I (number)

= (number) round to decimal 2
*/
round_d2: function (I) {
return Math.round(I * 100) / 100
},
/*\

math.negligible

[ method ]

M (number)

= (boolean) true if M is very very small, with absolute value smaller than ~0.00000001
*/
negligible: function (M) {
return M > -0.00000001 && M < 0.00000001
},
/**
curves--------------------
*/
/*\

math.bezier2

[ method ]

A, C, B (object) points in {x,y}

here C means the control point

steps (number)

= (object) array of points on curve
*/
bezier2: function (A, C, B, steps) {
const curve = new Array()
for (let i = 0; i < steps; i++) {
curve.push(math.bezier2_step(A, C, B, i, steps))

}
curve.push(B)
return curve
},
bezier2_step: function (A, C, B, i, steps) {
const P = { x: 0, y: 0 }
P.x = getstep(getstep(A.x, C.x, i, steps), getstep(C.x, B.x, i, steps), i, steps)
P.y = getstep(getstep(A.y, C.y, i, steps), getstep(C.y, B.y, i, steps), i, steps)
return P
function getstep(x1, x2, stepcount, numofsteps) {
return ((numofsteps - stepcount) * x1 + stepcount * x2) / numofsteps

}
},
/**
2d vector math--------------
*/
/*\

math.add

[ method ]

A+B

A, B (object) points in {x,y}

= (object) point in {x,y}
*/
add: function (A, B) {
return { x: A.x + B.x, y: A.y + B.y }
},
/*\

math.sub

A-B

[ method ]

A, B (object) points in {x,y}

= (object) point in {x,y}
*/
sub: function (A, B) {
return { x: A.x - B.x, y: A.y - B.y }
},
/*\

math.scale

A*t

[ method ]

A (object) point

t (number)

= (object) point
*/
sca: function (A, t) {
return { x: A.x * t, y: A.y * t }
},
/*\

math.length

|A|

[ method ]

A (object) point

= (number) length
*/
length: function (A) {
return Math.sqrt(A.x * A.x + A.y * A.y)
},
/*\

math.distance

|AB|

[ method ]

A, B (object) points in {x,y}

= (number) length
*/
distance: function (p1, p2) {
return Math.sqrt((p2.x - p1.x) * (p2.x - p1.x) + (p2.y - p1.y) * (p2.y - p1.y))
},
/*\

math.negative

-A

[ method ]

A (object) point

= (object) point
*/
negative: function (A) {
return { x: -A.x, y: -A.y }
},
/*\

math.normalize

A/|A|

[ method ]

A (object) point

= (object) point
*/
normalize: function (A) {
return math.sca(A, 1 / math.length(A))
},
/*\

math.perpen

perpendicular; anti-clockwise 90 degrees, assume origin in lower left

[ method ]

A (object) point

*/
perpen: function (A) {
return { x: -A.y, y: A.x }
},
/*\

math.signed_area

[ method ]

A, B, C (object) points

= (number) signed area

the sign indicate clockwise/anti-clockwise points order

*/
signed_area: function (p1, p2, p3) {
const D = (p2.x - p1.x) * (p3.y - p1.y) - (p3.x - p1.x) * (p2.y - p1.y)
return D
},
/*\

math.intersect

line-line intersection

[ method ]

P1 (object) point on line 1

P2 (object) point on line 1

P3 (object) point on line 2

P4 (object) point on line 2

= (object) return the intersection point of P1-P2 with P3-P4

reference: http://paulbourke.net/geometry/lineline2d/

*/
intersect: function (P1, P2, P3, P4) {
let mua, mub
let denom, numera, numerb
denom = (P4.y - P3.y) * (P2.x - P1.x) - (P4.x - P3.x) * (P2.y - P1.y)
numera = (P4.x - P3.x) * (P1.y - P3.y) - (P4.y - P3.y) * (P1.x - P3.x)
numerb = (P2.x - P1.x) * (P1.y - P3.y) - (P2.y - P1.y) * (P1.x - P3.x)
if (negligible(numera) && negligible(numerb) && negligible(denom)) {
// meaning the lines coincide

return {

  x: (P1.x + P2.x) * 0.5,

  y: (P1.y + P2.y) * 0.5

}

}
if (negligible(denom)) {
// meaning lines are parallel

return { x: 0, y: 0 }

}
mua = numera / denom
mub = numerb / denom
return {
x: P1.x + mua * (P2.x - P1.x),

y: P1.y + mua * (P2.y - P1.y)

}
function negligible(M) {
return M > -0.00000001 && M < 0.00000001

}
}
}
return math
})
Hi @Gitsam2332 https://github.com/Gitsam2332! :) Can you put these code
snippets as in-line comments? I'm struggling to understand where to put
them in my PR.
—
Reply to this email directly, view it on GitHub
https://github.com/github/explore/pull/3917#issuecomment-1721167500, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/BABH7IPUGWL6UFLWGCTAHA3X2RAGHANCNFSM6AAAAAA4YXPK3I
.
You are receiving this because you were mentioned.Message ID:
@.***>

Sure.
On Fri, 15 Sept, 2023, 5:37 pm Christine Belzie, @.***>
wrote:

/*\

math

math related functions

*/

define(function () {

math = {

/**

math helper functions-----

*/

/*\

math.inbetween

[ method ]

x, L, R (number)

= (boolean) true if x is in between L and R

*/

inbetween: function (x, L, R) {

let l, r

if (L <= R) {

l = L

r = R

} else {

l = R

r = L

}

return x >= l && x <= r

},

/*\

math.round_d2

[ method ]

I (number)

= (number) round to decimal 2

*/

round_d2: function (I) {

return Math.round(I * 100) / 100

},

/*\

math.negligible

[ method ]

M (number)

= (boolean) true if M is very very small, with absolute value smaller than ~0.00000001

*/

negligible: function (M) {

return M > -0.00000001 && M < 0.00000001

},

/**

curves--------------------

*/

/*\

math.bezier2

[ method ]

A, C, B (object) points in {x,y}

here C means the control point

steps (number)

= (object) array of points on curve

*/

bezier2: function (A, C, B, steps) {

const curve = new Array()

for (let i = 0; i < steps; i++) {

curve.push(math.bezier2_step(A, C, B, i, steps))

}

curve.push(B)

return curve

},

bezier2_step: function (A, C, B, i, steps) {

const P = { x: 0, y: 0 }

P.x = getstep(getstep(A.x, C.x, i, steps), getstep(C.x, B.x, i, steps), i, steps)

P.y = getstep(getstep(A.y, C.y, i, steps), getstep(C.y, B.y, i, steps), i, steps)

return P

function getstep(x1, x2, stepcount, numofsteps) {

return ((numofsteps - stepcount) * x1 + stepcount * x2) / numofsteps

}

},

/**

2d vector math--------------

*/

/*\

math.add

[ method ]

A+B

A, B (object) points in {x,y}

= (object) point in {x,y}

*/

add: function (A, B) {

return { x: A.x + B.x, y: A.y + B.y }

},

/*\

math.sub

A-B

[ method ]

A, B (object) points in {x,y}

= (object) point in {x,y}

*/

sub: function (A, B) {

return { x: A.x - B.x, y: A.y - B.y }

},

/*\

math.scale

A*t

[ method ]

A (object) point

t (number)

= (object) point

*/

sca: function (A, t) {

return { x: A.x * t, y: A.y * t }

},

/*\

math.length

|A|

[ method ]

A (object) point

= (number) length

*/

length: function (A) {

return Math.sqrt(A.x * A.x + A.y * A.y)

},

/*\

math.distance

|AB|

[ method ]

A, B (object) points in {x,y}

= (number) length

*/

distance: function (p1, p2) {

return Math.sqrt((p2.x - p1.x) * (p2.x - p1.x) + (p2.y - p1.y) * (p2.y - p1.y))

},

/*\

math.negative

-A

[ method ]

A (object) point

= (object) point

*/

negative: function (A) {

return { x: -A.x, y: -A.y }

},

/*\

math.normalize

A/|A|

[ method ]

A (object) point

= (object) point

*/

normalize: function (A) {

return math.sca(A, 1 / math.length(A))

},

/*\

math.perpen

perpendicular; anti-clockwise 90 degrees, assume origin in lower left

[ method ]

A (object) point

*/

perpen: function (A) {

return { x: -A.y, y: A.x }

},

/*\

math.signed_area

[ method ]

A, B, C (object) points

= (number) signed area

the sign indicate clockwise/anti-clockwise points order

*/

signed_area: function (p1, p2, p3) {

const D = (p2.x - p1.x) * (p3.y - p1.y) - (p3.x - p1.x) * (p2.y - p1.y)

return D

},

/*\

math.intersect

line-line intersection

[ method ]

P1 (object) point on line 1

P2 (object) point on line 1

P3 (object) point on line 2

P4 (object) point on line 2

= (object) return the intersection point of P1-P2 with P3-P4

reference: http://paulbourke.net/geometry/lineline2d/

*/

intersect: function (P1, P2, P3, P4) {

let mua, mub

let denom, numera, numerb

denom = (P4.y - P3.y) * (P2.x - P1.x) - (P4.x - P3.x) * (P2.y - P1.y)

numera = (P4.x - P3.x) * (P1.y - P3.y) - (P4.y - P3.y) * (P1.x - P3.x)

numerb = (P2.x - P1.x) * (P1.y - P3.y) - (P2.y - P1.y) * (P1.x - P3.x)

if (negligible(numera) && negligible(numerb) && negligible(denom)) {

// meaning the lines coincide

return {

  x: (P1.x + P2.x) * 0.5,

  y: (P1.y + P2.y) * 0.5

}

}

if (negligible(denom)) {

// meaning lines are parallel

return { x: 0, y: 0 }

}

mua = numera / denom

mub = numerb / denom

return {

x: P1.x + mua * (P2.x - P1.x),

y: P1.y + mua * (P2.y - P1.y)

}

function negligible(M) {

return M > -0.00000001 && M < 0.00000001

}

}

}

return math

})

Hi @Gitsam2332 https://github.com/Gitsam2332! :) Can you put these code

snippets as in-line comments? I'm struggling to understand where to put

them in my PR.

—

Reply to this email directly, view it on GitHub

https://github.com/github/explore/pull/3917#issuecomment-1721167500, or

unsubscribe

https://github.com/notifications/unsubscribe-auth/BABH7IPUGWL6UFLWGCTAHA3X2RAGHANCNFSM6AAAAAA4YXPK3I

.

You are receiving this because you were mentioned.Message ID:

@.***>

Thanks

👋 Hi @CBID2, this PR looks good, thank you for contributing! I'll merge as-is, no need to make any additional changes. The other suggestions are off-topic for this case.

👋 Hi @CBID2, this PR looks good, thank you for contributing! I'll merge as-is, no need to make any additional changes. The other suggestions are off-topic for this case.

Great thanks @

I just overrode it in this case - we typically require collection items to be added to the end, but in your case the edit made good sense because that repo has moved.


[DO NOT MERGE] cdn new version 2022 01 01 preview

MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Changelog
Add a changelog entry for this PR by answering the following questions:

What's the purpose of the update?

[ ] new service onboarding
[x] new API version
[ ] update existing version for new feature
[ ] update existing version to fix swagger quality issue in s360
[ ] Other, please clarify

When are you targeting to deploy the new service/feature to public regions? Please provide the date or, if the date is not yet available, the month.

The new APIs that are added are internal APIs and the target for Private preview is Jan/Feb 2022. Please do not merge these APIs as they have not been implemented yet.
Note: The new changes are done on top of a new version release for CDN (2021-06-01) which is not yet merged into main.

When do you expect to publish the swagger? Please provide date or, the the date is not yet available, the month.

January/February

If updating an existing version, please select the specific langauge SDKs and CLIs that must be refreshed after the swagger is published.

[ ] SDK of .NET (need service team to ensure code readiness)
[ ] SDK of Python
[ ] SDK of Java
[ ] SDK of Js
[ ] SDK of Go
[ ] PowerShell
[ ] CLI
[ ] Terraform
[x] No refresh required for updates in this PR

Contribution checklist:

[x] I commit to follow the Breaking Change Policy of "no breaking changes"
[x] I have reviewed the documentation for the workflow.
[x] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

Applicability: :warning:
If your changes encompass only the following scenarios, you should SKIP this section, as these scenarios do not require ARM review.

Change to data plane APIs
Adding new properties
All removals

Otherwise your PR may be subject to ARM review requirements. Complete the following:

[x] Check this box if any of the following apply to the PR so that label "WaitForARMFeedback" will be added automatically to begin ARM API Review. Failure to comply may result in delays to the manifest.

Adding a new service
Adding new API(s)
Adding a new API version
-[x] To review changes efficiently, ensure you copy the existing version into the new directory structure for first commit and then push new changes, including version updates, in separate commits.

[x] Ensure you've reviewed following guidelines including ARM resource provider contract and REST guidelines. Estimated time (4 hours). This is required before you can request review from ARM API Review board.

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If any of the following scenarios apply to the PR, request approval from the Breaking Change Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in a stable version
[ ] Removing properties in a stable version
[ ] Removing API version(s) in a stable version
[ ] Updating API in a stable or public preview version with Breaking Change Validation errors
[ ] Updating API(s) in public preview over 1 year (refer to Retirement of Previews)

Action: to initiate an evaluation of the breaking change, create a new intake using the template for breaking changes. Addition details on the process and office hours are on the Breaking change Wiki.
Please follow the link to find more details on PR review process.

@priyadmurugan, set this PR to Open and send email to the current ARM API Review oncall when you are ready for ARM review.

"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/policies/{policyName}/applyPolicy": {

Did you consider modelling this API as a "policy application" or "policy assignment" resource where PUT applies the policy, and GET returns the application (including current provisioning state). It looks like you are supporting POST async operation results, which is good, but once they go away, a client doesn't have a way to discover what's been applied. Modeling it as a resource type would allow clients to enumerate all of the applications that have been made with a given policy. It would also allow applying policies in a deployment template, which isn't possible if it's done with POST.

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:2386 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

    "provisioningState": {

This should be a string enum with a fixed set of values. The  required states are terminal { Succeeded, Failed, Canceled }. Other [non-terminal only] states may be added. Ref: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#creatingupdating-using-put.

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:6716 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

    "resourceState": {

What does this property add on top of provisioningState? You can add "Creating" and "Deleting" to provisioningState, and use "Succeeded" instead of "Active".

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:6702 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

"PolicyParameters": {

It doesn't look like this needs to be separate from definitions/Policy. Generally ARM APIs should support a GET, modify, PUT pattern, which means that PUT should accept (and return) the same type as returned by GET (it's fine to ignore the state property/properties on PUT input).

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:6723 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

    "customerConfig": {

Does this need to be an opaque blob? It's generally much better to schematize these wherever possible. This gives you automatic support for ARM features like ARG and Azure Policy. That won't be possible with a free-form blob. Even if only part of it can be schematized, it's better. Free-form blobs basically create a an API contract that isn't analyzable, managed, or versioned by ARM.

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:6635 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

      "202": {

Current async model doesn't use 202. Use 200/201 + provisioningState. Ref: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#creatingupdating-using-put.

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:2313 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

      "200": {

IIUC, you are supporting async POST. If so, you need to return 202 for accepted status.

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:2433 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

      "202": {

Requires x-ms-long-running-operation.

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:2313 in 38f20d3. [](commit_id = 38f20d38d5b15ac6361116f8828b25b1aee808b7, deletion_comment = False)

    "provisioningState": {

This should be a string enum with a fixed set of values. The required states are terminal { Succeeded, Failed, Canceled }. Other [non-terminal only] states may be added. Ref: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/async-api-reference.md#creatingupdating-using-put.
Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:6716 in 38f20d3. [](commit_id = 38f20d3, deletion_comment = False)

    "customerConfig": {

Does this need to be an opaque blob? It's generally much better to schematize these wherever possible. This gives you automatic support for ARM features like ARG and Azure Policy. That won't be possible with a free-form blob. Even if only part of it can be schematized, it's better. Free-form blobs basically create a an API contract that isn't analyzable, managed, or versioned by ARM.
Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:6635 in 38f20d3. [](commit_id = 38f20d3, deletion_comment = False)

    "customerConfig": {

Does this need to be an opaque blob? It's generally much better to schematize these wherever possible. This gives you automatic support for ARM features like ARG and Azure Policy. That won't be possible with a free-form blob. Even if only part of it can be schematized, it's better. Free-form blobs basically create a an API contract that isn't analyzable, managed, or versioned by ARM.
Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:6635 in 38f20d3. [](commit_id = 38f20d3, deletion_comment = False)

CustomerConfig was intentionally kept as opaque blob as the API we are implementing is more of a transport layer than a parse layer.

"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/policies/{policyName}/applyPolicy": {

Did you consider modelling this API as a "policy application" or "policy assignment" resource where PUT applies the policy, and GET returns the application (including current provisioning state). It looks like you are supporting POST async operation results, which is good, but once they go away, a client doesn't have a way to discover what's been applied. Modeling it as a resource type would allow clients to enumerate all of the applications that have been made with a given policy. It would also allow applying policies in a deployment template, which isn't possible if it's done with POST.
Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:2386 in 38f20d3. [](commit_id = 38f20d3, deletion_comment = False)

@mentat9 : Here Policy is a new resource that we are adding. I am not sure if I understand the first line correctly. Could you please elaborate that. On a related note, Is there a limit on the payload size for a PUT vs POST operation?

"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/policies/{policyName}/applyPolicy": {

Did you consider modelling this API as a "policy application" or "policy assignment" resource where PUT applies the policy, and GET returns the application (including current provisioning state). It looks like you are supporting POST async operation results, which is good, but once they go away, a client doesn't have a way to discover what's been applied. Modeling it as a resource type would allow clients to enumerate all of the applications that have been made with a given policy. It would also allow applying policies in a deployment template, which isn't possible if it's done with POST.
Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:2386 in 38f20d3. [](commit_id = 38f20d3, deletion_comment = False)

@mentat9 : Here Policy is a new resource that we are adding. I am not sure if I understand the first line correctly. Could you please elaborate that. On a related note, Is there a limit on the payload size for a PUT vs POST operation?

IIUC, when the applyPolicy POST action is called, your RP has to store something that indicates that policy A has been applied to resource R. I'm suggesting modeling that association as a resource type (e.g. Microsoft.Cdn/profiles/policyAssignments). PUT creates it (applies the policy), GET retrieves it, collection GET lists all of them, DELETE removes it, etc. This would require naming this association, but that feels like a more complete way of applying a policy to a resource. Otherwise how does a client discover what a policy has been applied to, or stop applying a policy to something that it was previously applied to? Also, if your customers want to apply policies in ARM templates, it must be done through PUT. ARM templates can't perform POST actions. Since my suggestion didn't make sense initially, I'm probably misunderstanding something about the intended operation of the API. Hopefully this will help clarify how I'm thinking about it.

resourceState

@mentat9 : Thanks for the clarification. The API that we are creating will be used by another internal team to apply policy through ARM. So the customer for our API is the internal team. The new resource that we created is called 'Policy'. this resource will not be created through the Azure portal. As you suggested, we can remove POST action and use PUT to basically apply the policy. But to go with this change, I have a couple of clarifications. If we go with PUT instead of POST, then Policy resource would have both 'ServiceType' and 'CustomerConfig' as their property, so that when the customer does a PUT on policy we use the customerConfig json blob to apply that policy. Is this a correct appraoch and to go with this change, what's the limitation on the payload size for the PUT action   and what are the additional validations we need to take care?

resourceState

@mentat9 : Thanks for the clarification. The API that we are creating will be used by another internal team to apply policy through ARM. So the customer for our API is the internal team. The new resource that we created is called 'Policy'. this resource will not be created through the Azure portal. As you suggested, we can remove POST action and use PUT to basically apply the policy. But to go with this change, I have a couple of clarifications. If we go with PUT instead of POST, then Policy resource would have both 'ServiceType' and 'CustomerConfig' as their property, so that when the customer does a PUT on policy we use the customerConfig json blob to apply that policy. Is this a correct appraoch and to go with this change, what's the limitation on the payload size for the PUT action and what are the additional validations we need to take care?

ARM payload size limit is 8Mb. Stepping back for a minute, you have CRUD APIs for a policy type. These APIs create, retrieve, update and delete an ARM resource type named "policy". Couple of questions about your design:

If I create a policy, but do nothing else, will it be enforced anywhere, or is it just a rule that's available for me to use in the future?
Can a single policy be applied to multiple different resources/contexts/scenarios?
What exactly does the POST action "applyPolicy" do?

resourceState

@mentat9 : Thanks for the clarification. The API that we are creating will be used by another internal team to apply policy through ARM. So the customer for our API is the internal team. The new resource that we created is called 'Policy'. this resource will not be created through the Azure portal. As you suggested, we can remove POST action and use PUT to basically apply the policy. But to go with this change, I have a couple of clarifications. If we go with PUT instead of POST, then Policy resource would have both 'ServiceType' and 'CustomerConfig' as their property, so that when the customer does a PUT on policy we use the customerConfig json blob to apply that policy. Is this a correct appraoch and to go with this change, what's the limitation on the payload size for the PUT action and what are the additional validations we need to take care?

@priyadmurugan, ARM payload size limit is 8Mb. Stepping back for a minute, you are adding CRUD APIs for a policy type. These APIs create, retrieve, update and delete an ARM resource type named "policy". Couple of questions about your design:

If I create a policy, but do nothing else, will it be enforced anywhere, or is it just a rule that's available for me to use in the future?
Can a single policy be applied to multiple different resources/contexts/scenarios?
What exactly does the POST action "applyPolicy" do?

@mentat9: Earlier we were planning to do CRUD on policy resource and use applypolicy POST action on policy resource to apply the policy (json blob) on profile resource. I was trying to understand if we can use PUT on policy itself to perform functionality which applypolicy POST action would have done. Is that possible? Also, the  reason we went with POST action applyPolicy is to overcome the ARM payload size limitation. As per my understand there is no limit on the payload size for POST action. Is that right? I have answered your questions below:

If I create a policy, but do nothing else, will it be enforced anywhere, or is it just a rule that's available for me to use in the future?
This policy would be a resource that will be created with PUT action and then  used to call applyPolicy  POST action to apply policies to the profile.

Can a single policy be applied to multiple different resources/contexts/scenarios?
We have 1-1 mapping between policy and profile (parent resource)

What exactly does the POST action "applyPolicy" do?

It applies the json blob which is the policy on the profile resource.

resourceState

@mentat9 : Thanks for the clarification. The API that we are creating will be used by another internal team to apply policy through ARM. So the customer for our API is the internal team. The new resource that we created is called 'Policy'. this resource will not be created through the Azure portal. As you suggested, we can remove POST action and use PUT to basically apply the policy. But to go with this change, I have a couple of clarifications. If we go with PUT instead of POST, then Policy resource would have both 'ServiceType' and 'CustomerConfig' as their property, so that when the customer does a PUT on policy we use the customerConfig json blob to apply that policy. Is this a correct appraoch and to go with this change, what's the limitation on the payload size for the PUT action and what are the additional validations we need to take care?

@priyadmurugan, ARM payload size limit is 8Mb. Stepping back for a minute, you are adding CRUD APIs for a policy type. These APIs create, retrieve, update and delete an ARM resource type named "policy". Couple of questions about your design:

If I create a policy, but do nothing else, will it be enforced anywhere, or is it just a rule that's available for me to use in the future?
Can a single policy be applied to multiple different resources/contexts/scenarios?
What exactly does the POST action "applyPolicy" do?

@mentat9: Earlier we were planning to do CRUD on policy resource and use applypolicy POST action on policy resource to apply the policy (json blob) on profile resource. I was trying to understand if we can use PUT on policy itself to perform functionality which applypolicy POST action would have done. Is that possible? Also, the reason we went with POST action applyPolicy is to overcome the ARM payload size limitation. As per my understand there is no limit on the payload size for POST action. Is that right? I have answered your questions below:

If I create a policy, but do nothing else, will it be enforced anywhere, or is it just a rule that's available for me to use in the future?
This policy would be a resource that will be created with PUT action and then  used to call applyPolicy  POST action to apply policies to the profile.

Can a single policy be applied to multiple different resources/contexts/scenarios?
We have 1-1 mapping between policy and profile (parent resource)

What exactly does the POST action "applyPolicy" do?

It applies the json blob which is the policy on the profile resource.

@mentat9 : I have removed post action and will be implementing it as you suggested with put approach.

  "put": {

This method still needs the x-ms-long-running-operation extension if it's using the async pattern.

Refers to: specification/cdn/resource-manager/Microsoft.Cdn/preview/2022-01-01-preview/cdn.json:2255 in b410f4c. [](commit_id = b410f4cc407d6a7ab7ba16ea05a4da3d7d64e917, deletion_comment = False)

@priyadmurugan, I reviewed the latest iterations and it looks good, modulo one comment. Also, for future reference, you can get a faster turnaround from ARM review on PR updates that cross into the next week if you tag or directly ping the current oncall when you are ready for re-review (the labels are also good, but sometimes get overlooked across the next week handoff/transition).

@priyadmurugan, I reviewed the latest iterations and it looks good, modulo one comment. Also, for future reference, you can get a faster turnaround from ARM review on PR updates that cross into the next week if you tag or directly ping the current oncall when you are ready for re-review (the labels are also good, but sometimes get overlooked across the next week handoff/transition).

@mentat9 : I have addressed your PR review comments. My new version is based of 2021-06 version which was merged after I created PR and I see that there are few changes there that are missing in my new version. Would you suggest me to update them manually or probably create a new PR by having first commit with that version, followed by my changes?

@priyadmurugan, I reviewed the latest iterations and it looks good, modulo one comment. Also, for future reference, you can get a faster turnaround from ARM review on PR updates that cross into the next week if you tag or directly ping the current oncall when you are ready for re-review (the labels are also good, but sometimes get overlooked across the next week handoff/transition).

@mentat9 : I have addressed your PR review comments. My new version is based of 2021-06 version which was merged after I created PR and I see that there are few changes there that are missing in my new version. Would you suggest me to update them manually or probably create a new PR by having first commit with that version, followed by my changes?

Go ahead and make the new PR exactly as you described. Include a link back to this PR in your comments when/after you submit the new PR.

Closing this PR, as there is another PR open for the same changes; https://github.com/Azure/azure-rest-api-specs/pull/17539


csv separator not working

Hello @darold , I am not sure when this happened, but somehow the csv-separator stopped working. pgBudger still recognizes it as a valid option, but it does not change the output - the separator is still a semicolon, and also the strings are not enclosed into double quotes.
I had these things working in prod for several months, and now we need to migrate to the new server, and everything is falling apart! Please help!

WE have this pgbadger ver 12.4 working properly on Oracle Linux 8.7 and not working on Oracle linux 8.9

We were able to rebuild and now pgBadger is working with no problem - apologies for the false alarm!


convert all document elements to top.document so the library also works from within iframes

No thanks

There seems to be a problem with the current implementation as it does not work from within iframes. For web applications that occasionally need to reload and still stay in fullscreen after reloading, the iframe solution seems to be the only viable one. The current screenfull.js version does not support this. If you put your iframed application in fullscreen and reload the page, screenfull.js wrongfully reports that the application is not fullscreen, when in fact it is. This means, for example, that screenfull.toggle() does not work as expected because it will try to request fullscreen mode when the document is already in fullscreen, instead of exiting as it should.
Although brettmarkowitz solution is not optimal (it seems to ignore the fact that you are replacing the global window.document with your own local variable) I believe screenfull needs some tweaking to support iframed solutions.
Personally I have added a method to screenfull that allows setting your own target document
var screenfull = {
targetDocument: function (doc) {
    document = doc;
},
request: function (elem) {
...

In my code I use it to set thet target document before accessing any of its other methods:
screenfull.targetDocument(window.top.document);

This fixes the problem for me.


Deprecate http async provider

Is your feature request related to a problem? Please describe.

as most of the functionality has been contributed back to OSS airflow, we're going to leverage the code there and deprecate this project
Describe the solution you'd like

Contribute the delta to the OSS provider
Point the astronomer provider to the OSS provider
Do the release and wait for a month or so before we remove the astronomer provider in a major release

Describe alternatives you've considered

Additional context

Current Progress

Number of operator changes on OSS airflow needed: 1
Number of operators to deprecate: 1

[ ] HttpSensorAsync

Note: not yet contributed back
Action: contribute back
Deprecation PR:
OSS Airflow PR:
Minimum Provider Version:

Raised PR in OSS

@vatsrahul1001 to link the relevant PR for this

PRs linked and merged. Closing the issue.


Adding a real login to the demo

Right now, there's a mock login happening in the LoginActivity of the demo.
The disadvantage is that there's no way a 401(unauthorized) will cause the login to open, so that you cannot really see that retroauth is handling this as well.
I would like to add i.e. a facebook or similar login to the demo

I chose to add an authorization example using the github oauth 2.0 api


Using static and conditional validators

Is there a method by which conditional validations AND static (always present) validations could be applied to a property? E.g. I want to ALWAYS validate that a property is a number, but conditionally validate that the number is greater than 5.
I was thinking this format should work:
{
  myProp: [
    validateNumber({integer: true}),
    validateSometimes([validateNumber({gt: 5})], function() { /* ... */ })
  ]
}

But this throws errors:
TypeError: validator is not a function
    at handle-multiple-validations.js:53

Sure, I'll take a stab at if I get some time.
My concern is that I don't know if there is a way to allow a format like that without there being changes to ember-changeset-validations itself. Because it seems that it will only allow for an array of validators that is a single level deep, (i.e. it won't allow for nested arrays of validators) and validateSometimes() needs to return an array.
So maybe the PR is really needed on ember-changeset-validations such that it will recursively iterate over a an array of validators, and then the current validateSometimes() would just work?

Actually, it might currently work without any changes like this:
{
  myProp: [
    validateNumber({integer: true}),
    ...validateSometimes([validateNumber({gt: 5})], function() { /* ... */ })
  ]
}

Notice the spreading. validateSometimes returns an array of validators, each guarded by the condition function. See here: https://github.com/skaterdav85/ember-changeset-conditional-validations/blob/master/addon/validators/sometimes.js#L12
Give that a try and let me know how it works out. :)

@skaterdav85 Yes, it looks like this works! Might  be a good tip to note in the documentation. :-)
Thanks!

@billdami Version 0.5.0 has some updates that improve the API, specifically around your use case, thanks to @sovietspaceship :)
https://github.com/skaterdav85/ember-changeset-conditional-validations#combining-validations-with-conditional-validations


Update Eiger API

[x] Depends on #104

Fixed the CI :hammer:
Eiger coverage is now 100%

Did you have any more comments on this @abbiemery ?


AMA GA updates for Change Tracking Overview

Removing the "preview" wording from the Change Tracking overview page since AMA is GA, also changed the DCR link to the proper internal page away from a blog post in 2020.

#sign-off


v4 collapse without jquery

Work in progress...

Done 👍 waiting for https://github.com/twbs/bootstrap/pull/23989 before I can merge this one
if you have time @XhmikosR do not hesitate to take a look at this PR, thanks 👍


System.ArgumentException: An item with the same key has already been added

Dear Developer,
i have a bug when trying to run a XL-Search for disulfid-crosslinks. on the base of a GPTM-D database.
the report:
results.txt.
Which information do you need more?
Best
Roman

Thanks for notifying us of this error and thanks for sending us the results.txt file. We are reviewing the information that you sent to identify and fix the bug. We'll post a note here when we create a fix.

Hi there,
did you make progress here?
best
Roman

Hi,
Thanks for the message. We haven't test crosslink search with GPTMD database before. We figure out what happened here but don't have a chance to fix the bug because we cannot repeat it with our data. Could you please share your data and database to us?

thx for the message, I'll leave you the files here:
https://drive.google.com/open?id=0B0VKdZCKDItLUU9ZakV6WHlxdzQ
enjoy and good luck - the option of GPTMD in combination with crosslinksearch is a standalone feature and will be very helpful not only for me!
best
Roman


Search bar added but search feature not working

Hi,
I was able to follow the steps and add the search in my local site.
However, when I go to search something on the page, nothing shows up.
What am I missing?

Please disregard.  Once I pushed to GH pages, the search was indexing.


Is the documentation related to external synchronization misleading?

I am trying to view the RGB, depth, and IR outputs of two different kinects on the same Azure Kinect Viewer instance. I'm following the instructions here: Verify that the devices are connected and communicating. It seems that, on step 2, I should be able to view the serial numbers for both kinects, as shown below:

However, I'm not able to do so. Additionally, according to this answer, it seems that this is not actually possible. Therefore, I am wondering if the documentation is misleading, or the answer is misleading.
My current setup is as follows: I have two Kinects, Kinect A and Kinect B. Kinect A has the following device firmware versions:
RGB camera: 1.6.102
Depth camera: 1.6.75
Audio: 1.6.14
Build config: Release
Signature type: Microsoft
Kinect B has the following device firmware versions:
RGB camera: 1.6.102
Depth camera: 1.6.75
Audio: 1.6.14
Build config: Release
Signature type: Microsoft
Kinect A is connected to a machine running Windows, with SDK version 1.3.0, while Kinect B is connected to a machine running Ubuntu 18.04, with SDK version 1.3.0. Both Kinect A and Kinect B have their indicator lights on at steady white, meaning that both power and data cables should be connected properly. I'm able to open the Azure Kinect Viewer on both the Windows machine and the Linux machine, and I'm able to individually start the Kinects on both machines. Also, Kinect A was chosen to be the master, while Kinect B was chosen to be the subordinate. Therefore, the Sync Out port of Kinect A is connected to the Sync In port of Kinect B.
To test external synchronization, I started Kinect B using the Azure Kinect Viewer as a subordinate. Then, I started Kinect A using the viewer as a Master. As soon as I start Kinect A as master, the RGB, depth, and IR streams for Kinect B open, which is expected. However, on the Windows machine that is connected to Kinect A, the master, I am not able to see the serial number for Kinect B. It seems from the documentation mentioned above that this should be possible, but I'm not sure.

If I understand your question correctly, and if I understand how the devices/SDK work correctly, then unfortunately, no – your intended behavior is not possible.
As far as I understand, just like frame data, the serial numbers are transmitted via USB from each camera to its host computer. The connection between the cameras, on the other hand, is a 3.5 mm sync trigger. Besides this trigger, this line carries no data – neither serial numbers nor frames. So, cameras cannot see each other's serial numbers/frames, and neither can their respective host computer.
In my own use case, I have two Azure Kinect DK cameras plugged into the same host computer, and I do see both serial numbers in the Azure Kinect Viewer app regardless of their external sync connections. However, this makes sense, as they each are connected to this single host computer via their own individual USB connection. I'm guessing that this same 2-camera/1-host setup was used in the screenshot you cited.

If I understand your question correctly, and if I understand how the devices/SDK work correctly, then unfortunately, no – your intended behavior is not possible.
As far as I understand, just like frame data, the serial numbers are transmitted via USB from each camera to its host computer. The connection between the cameras, on the other hand, is a 3.5 mm sync trigger. Besides this trigger, this line carries no data – neither serial number

In that case, I think the documentation is indeed misleading, because the preceding section on the same page, titled Connect your devices, states:

This suggests that I should be able to see both serial numbers when the kinects are externally synchronized, which, as you wrote, is not actually possible. Perhaps it would be a good idea to change the wording of the documentation to indicate this.

There is a section on that same webpage entitled "Host Computers" under "Prepare your devices and other hardware":

Host computers
Typically, each Azure Kinect DK uses its own host computer. You can use a dedicated host controller, depending on how you use the device and how much data is transferred over the USB connection.
Make sure that the Azure Kinect Sensor SDK is installed on each host computer. For more information about how to install the Sensor SDK, go to Quickstart: Set up your Azure Kinect DK.

This part you are referencing is talking specifically about 3.5 mm cables, which are used for syncing devices and thus are entirely separate from each Azure Kinect's USB connection to its host computer. That is, when it says that the "last device should only have one cable connection", it means "one [sync] cable connection" – because in a daisy-chain configuration, all of the "middle" devices will have two sync cable connections (one in, one out) rather than just one. Below is an illustration from the same webpage:

I personally think that the current information is sufficient as written, but what do you think?

@rajkundu Looks good to me. Thanks for the help!


NOT LIKE and NOT CONTAINS in query criterias

Any update on this feature request ? It is very important for our project to be able to set 'not like' or 'not contains' options in the where clause (using .query() is not an option for the moment as we are using both my-sql and ms-sql adapters). The main reason we are using waterline is the ORM and query language features, where we don't need to duplicate query string for each database adapters.
Same as this: #666
Thanks

@Joanne16 I expect the team would take pull-request in the waterline-sequel repo to support this.  Ideally other official adapters would be brought up-to-date to support the feature as well.

@Joanne16 that would be great! Could you make a PR to the roadmap with a spec of what the query language should look like? We will need to update the adapters and adapter-test suite to support this.

+1

I'm doing tree selection, the result need to filter own records and child records.
I need to use Not-Like pairs!

@devinivy @particlebanana I need to help!


Workspace positions

Hi,
as far as i can tell, the gui does position workspaces inside the window based on their real position.
I really like that idea but it can be an issue if there are to many workspaces to fit onto a single screen. Aka the window is getting to wide.
Would it be hard to implement some kind of scrolling or give an option do display a grid view of workspaces?
There may be another option to deal with this.

I think I have to order the workspaces via CSS, instead of using absolute positioning to make this possible

added a new env var in 2.1.3 (WORKSPACES_PER_ROW)


Implement edit:command-history &dedup

This implements &dedup and &newest-first options for
edit:command-history. This makes it noticably cheaper to feed unique
command history into external commands like fzf.
Related #1053
Fixes #568

This makes it noticably cheaper to feed unique command history into external commands like fzf.

I can't stress this point enough. This change means that a Ctrl-R binding that feeds the output of edit:command-history to fzf has gone from being mildly annoying (due to the visual artifacts and the time before I can interact with fzf) to being almost indistinguishable with the builtin Ctrl-R implementation.


Uncaught Error: infinite rendering invalidation detected, with ember-pikaday 2.2.1

with     "ember-pikaday": "2.2.1" and
Ember             : 2.11.2
Ember Data        : 2.11.3
jQuery            : 3.1.1
getting the "infinite rendering invalidation detected" error (and the web paper going blank) when 'opening' the component and selecting the minDate (which is the current date).
work around : reverting back to the ember-pikaday": "2.2.0" corrected the bad behavior
{{pikaday-input
format="dddd MMMM DD, YYYY"
value=selectedDate
readonly="readonly"
minDate=minDate
required=true
onSelection=(action (mut selectedDate))
size="30"
class="broadcast-date"
}}
I've included the console dump if that that helps! (thank you for your work!)
 I have some suspicions about what's going on but just want to verify.

no problems with ember-pikaday 2.2.0

I think this is what happens:
problem is:

component is rendered with minDate set to new Date() which is the current time with hours, minutes …

{{!-- today: new Date() is what I have in the controller --}}
{{pikaday-input
  minDate=today
  value=someDate
  onSelection=(action (mut someDate))
}}

user clicks on input and chooses the edge minDate from the calendar
mut helper updates date to the beginning of the chosen day (this is what is returned from the pikaday)
didUpdateAttrs fire - the muted value is also passed in as a value
setMinDate is triggered
in the sync queue the value && value < minDate is true since value was set to the benign of the chosen (minDate) day while the actual value of minDate is bigger - it is the same day but with some hours and minutes
pikaday.setDate is triggered
onSelection callback (which is set to our mut helper) is triggered with an argument which has the hours and minutes wiped out again by the piked (back to step 1)
…didUpdateAttrs fire - we are back at point 2 and go on in the infinite loop

I have an idea on how to fix it and will try to submit a PR - the comparison in the sync queue should only care about year, month and day

I think the comparison needs to be changed to:
if (value && moment(value).isBefore(minDate, 'day')) {


Use git tag --no-column for listing tags for dbt deps

Housekeeping

[X] I am a maintainer of dbt-core

Short description
Use git tag --no-column instead of git tag --list to prevent the issue described in https://github.com/dbt-labs/dbt-core/issues/10305
Acceptance criteria
Use git tag --no-column instead of git tag --list.
Suggested Tests

Current tests in CI.
Manual testing after changing the git configuration:git config --local column.ui always

Impact to Other Teams
Should not have impact to other teams
Will backports be required?
No
Context
As described in https://github.com/dbt-labs/dbt-core/issues/10305#issuecomment-2171943583, if a user updates their git client to always use columnar output like the following, it will break dbt deps:
git config --local column.ui always

So in order to make dbt deps more resilient, we could update this to be:
    out, err = run_cmd(cwd, ["git", "tag", "--no-column"], env={"LC_ALL": "C"})

The thing to be careful of is git clients that might not have the --no-column flag available.
It looks like --no-column was introduced in v1.7.11 by https://github.com/git/git/commit/d96e3c150f2b4508f2e7d23ce9183d5b807c2155 around June 2012, so we might be okay there.

is it possible to take this issue for community contributor?
this fixes don't seem difficult, and affected tests or additional tests also not difficult to write.

is it possible to take this issue for community contributor?

Yep! We'd welcome a PR from a community contributor 👍


Remove markdown in CLI output

Fixes #3574

So the reason we do this is because these help messages get rendered for the docs here: https://github.com/pachyderm/pachyderm/blob/master/doc/pachctl/pachctl_create-pipeline.md seeing that output in the CLI is pretty jarring though. Long term we may want to have a flag we specify when we're generating docs that tells pachctl to output markdown or not.

@jdoliner fwiw, the pachctl docs aren't linked off in the docs due to an issue: https://github.com/pachyderm/pachyderm/issues/3382

@gabrielgrant JK and I talked about making those kinds of changes to our docs build system in the near future.


adding code from adafruit examples so the Adafruit-M4-CAN-EXPRESS wil…

I used the examples from the Adafruit Fork with the Adafruit M4 CAN Express, but they didn't work. I then realized the the code examples from https://learn.adafruit.com/adafruit-feather-m4-can-express/arduino-can-examples had code that turned on the boost converter, and that with this code the examples worked fine.
This PR adds code to make sure the chip is not in standby and turns on the boost converter. Since this fork is for the Adafruit feather, I thought it made sense. They are enabled only if the board definition of ADAFRUIT_FEATHER_M4_CAN exists. I could check for the existence of STANDBY and BOOSTEN pins, but this made it clear it was for that board.

Thanks for the PR. This library is being deprecated. The new library is here:
https://github.com/adafruit/Adafruit_CAN
The new examples there include these configuration settings. But if something still seems off, please consider submitting a new PR there.


Missing DLC Content

Hello everyone.
I am making this issue to hopefully answer some thoughts people may have.
I am currently still in my play through of the DLC. I unfortunately do not have a lot of time due to the things going on in my life. So I cannot completely check to make sure of the content added to the site is legitimate.
You may be able to help with this.
Quests:
Probably the hardest part to tackle since these have a specific wording for each.

Added DLC weapons in 3561bd5

Added DLC graces in f9054e0. I need confirmation of 3 graces and where they are located in the list
The graces required for checking are

Divided Falls
Abyssal Woods
Rivermouth Cave

The rest should be correct from what I have seen

Added DLC spells in ccffb8b

DLC Bossed added in #73 by @DanyBoyP123

Hello, I made an account for this but it seems that the DLC Talismans are missing a few talismans. For example I'm not seeing the All-Crucible Charm or the Fine feather crucible charm. Note these aren't the exact names.

Hello, I made an account for this but it seems that the DLC Talismans are missing a few talismans. For example I'm not seeing the All-Crucible Charm or the Fine feather crucible charm. Note these aren't the exact names.

Hello, yes they are currently missing all DLC talismans that are not +1/+2/+3 variants. I will add it to the list of todos

DLC talismans added in 42c4a26

Added in Revered Spirit Ashes and Scadutree Fragments #75 by @DanyBoyP123

Added Armor in bee4fd6

Gesture order check completed as accurate once acquired all in ed2e47f

Added DLC graces in f9054e0. I need confirmation of 3 graces and where they are located in the list The graces required for checking are
* Divided Falls

* Abyssal Woods

* Rivermouth Cave

grace order double checked and last order movement completed in d6fe0e7

Notes now that I am further into the DLC:

I think Scadu Altus' site of grace Finger Birthing Grounds probably needs to be updated to this map link, the current one doesn't work.
The mention of the Tree Sentinel for Scadu Altus should move to Scaduview so that it has two, as it has two that are a field boss, there is none in Scadu Altus itself (see also the "where to find" section of Tree Sentinel or it needs to be collapsed to "Tree Sentinel Duo", like Altus Plateau.

I think Scadu Altus' site of grace Finger Birthing Grounds probably needs to be updated to this map link, the current one doesn't work.

Fixed in eb19d7a. Thanks

The mention of the Tree Sentinel for Scadu Altus should move to Scaduview so that it has two, as it has two that are a field boss, there is none in Scadu Altus itself (see also the "where to find" section of Tree Sentinel or it needs to be collapsed to "Tree Sentinel Duo", like Altus Plateau.

I usually reference the wiki to determine how I display bosses and update my site once the wiki has updated as well. I think this was probably done this way because the bosses section has them listed in 2 separate locations.

https://eldenring.wiki.fextralife.com/Bosses
Where the altus plateau duo exists in only altus plateau so they added parenthesis

I can go ahead and make them a duo but the issue is where is the correct location for them.

Merged them into duo in 2890195 Someone can open an issue if they can convince otherwise.


Update dlp-exchange-conditions-and-actions.md

@chrfox - Should I redo this change after the repo migration or something?

@ybhargav1995
Make the change now, but in the private repo, not the public one.  I can get it in before the migration.
https://review.learn.microsoft.com/en-us/office-authoring-guide/contribute-get-started-setup-quick-update?branch=main

@chrfox - made the changes here: https://github.com/MicrosoftDocs/microsoft-365-docs-pr/pull/21497


Date validation in component triggers infinite update loop

Versions:

VueJs: 2.4.2
VueRouter: 2.70
Vee-Validate: 2.0.0-rc.13

Description:
Need to check if given date range is within limits.
Steps To Reproduce:
https://jsfiddle.net/r19sL3rL/6/

Enter something in the text field.
Watch the console

Awesome response time. Thank you!

Thanks for reporting the issue!


Ignore '/utf-8' flag on Visual Studio 2013

@Ranoller pointed out the issue at 7f2ad8b caused by #27915, and this may be a fix.
My bad. Didn't realize /utf-8 flag was only added in one version of Visual Studio 2015.
 Amended

@starry-abyss I am fine with either. Both will work while making different assumptions (“begin with digits + .” vs “begin with two digits”). To me comparing number is a bit more intuitive than comparing strings. So I think it comes down to what the repository owner prefers.

So, to clarify: This option does not exist in Visual Studio 2013, but does exist in 2015 and later, therefore it should not be used with older versions to avoid warnings.

Thanks!


Performance: Flatten pass does a lot of redundant work on unions.

I'm working on a pure Pony type-safe implementation of the Pony AST trees, for eventual use in a Pony-compiler-in-Pony.  I ended up with a lot of large type unions, and unacceptably high compile times (it was taking so long to compile that my first assumption was that it was stuck in an infinite type recursion).
Implementing the patch in #1560 reduced my compile times by about 23x, but it's still taking a significant amount of time, and most of this time is still spent in the flatten pass, flattening my type unions.  I added some ast_print calls to flatten_union in flatten.c to print the before and after AST every time a union was flattened, so I could see what calls were going on.
Doing so, I found 181,811 flatten_union operations took place in the compile operation I was testing.  Doing some post-processing on the data showed that there were only 277 unique calls.  This means that roughly 1 out of 655 calls to flatten_union are performing the flattening operation on a union that we've already seen and flattened before.  This translates to a ton of unnecessary work that could be avoided.
Strategies to pursue:

Find ways to "centralize" union flattening, so that we flatten each union in exactly one place, and refer to the already flattened union.
Find a way to cache the flatten_union operation based on the structure of the input (less ideal).

Note that other parts of flattening may be able to benefit from a similar optimization, but it's specifically union flattening that is severely affecting my compile time for this use case.

If anyone is curious about the code I'm compiling, here it is:
https://github.com/jemc/pony-ast/blob/85f3ad7ec1a9fd2154ff2b759098b1f19238cddc/static/ast.pony
Note that the code is generated, not hand-written.  The definitions that is generated from are here:
https://github.com/jemc/pony-ast/blob/85f3ad7ec1a9fd2154ff2b759098b1f19238cddc/static/gen/ast_defs.pony

The extra flattening seems to be due in large part to the way type aliases are eliminated in the names pass, just before the flatten pass.
That is, in the names pass, everywhere a type alias is seen, the alias reference is replaced with the definition being aliased.  So, in the flatten pass, every single mention of a type alias is seen as a copy of the alias definition, so every single mention of a type alias referring to a union results in a flattening operation on that union. This leads to a lot of totally unnecessary work - every mention of the type significantly increases the work done in the flatten pass, even though the same work has already been done many times.
So, if I have a type alias named Foo defined as a union of 12 types:
type Foo is (X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 | X10 | X11 | X12)

then every single place I mention Foo in my program, it needs to flatten the same union again, in the flatten pass (and for a union of 12, each flatten operation for the union requires 10 sub-operations).
If possible, I'd like to try to refactor so that union flattening occurs just before type aliases are replaced with the copy of their definitions, instead of just after.  Perhaps the type alias substitution could occur as part of the flattening pass, just after structurally flattening the definition of the type alias.
I wanted to bring it up for discussion in case anyone (@sylvanc?) had thoughts or warnings about the ramifications of such a change.

I think the right change may be to eliminate both flattening and type alias substitution, and modify the typechecker to understand type aliases directly.
This would give:

Better error messages (the end user gets the type alias, rather than a substituted type)
The right framework for allowing recursive type aliases

The classic example of the latter is:
type JSON is (
  | Bool
  | F64
  | String
  | Array[JSON]
  | Map[String, JSON]

+1 to getting recursive type aliases in.

@sylvanc - Just to be clear, which parts of flattening do we want to eliminate?  Get rid of just union flattening?  Get rid of union and intersection flattening?  Get rid of the entire flatten pass?
Apart from that I'm not sure why getting rid of flattening entirely is desirable.  It seems like just getting rid of type alias substitution is enough to accomplish both goals.  That is, it would reduce unnecessary union flattening, and also allow for recursive type aliases.  Of course getting rid of union flattening entirely would also reduce unnecessary union flattening, but it seems like it would make many places of code more complex, where every union type we have to deal with is nested N-1 levels deep (2 children each) instead of being a flat node with N children.

As discussed on the sync call, @sylvanc was referring to getting rid of union flattening, not the entire flatten pass.
Another alternative would be to keep the structural flattening of unions (going from a node with N-1 nested levels of children to a node with N children), but remove the is_subtype checks used to fold overlapping types into eachother.  @sylvanc says this wouldn't affect correctness of the type system for unions, though would be erroneous if we also did it for intersections.  This may or may not result in a net performance gain for some cases, because later stages will have to work on a greater number of union type members if there was folding for overlapping types that could have been done, though I suspect that having overlapping types in a union is rare enough in real world code that it wouldn't be a significant performance detriment.
However, we all agreed the best place to start would be to remove type alias substitution entirely, and reform downstream type system logic to understand and correctly handle type aliases as they come.

I've opened PR #1723 to implement one of the improvements mentioned above:

keep the structural flattening of unions (going from a node with N-1 nested levels of children to a node with N children), but remove the is_subtype checks used to fold overlapping types into eachother.

However, instead of doing structural flattening in the flatten pass, this PR moves it to be done in the parser, so that union type nodes are flattened from the start.


Mute a part of video and add new audio to video

Mute a part of video and add new audio to video
I was testing this library
these are the various scenarios we are testing
Mute a part of video, For example We have a video of 1 minute, we want to mute from 20th sec. to 40th sec. keeping rest of the audio. i.e from 0 sec. to 20 and from 41 sec to 60 sec
for another video of 2 minutes long we want to add new audio to the original video removing original audio or keeping original audio overlaying new audio over it(both are different scenario)
can we keep original video and reverse audio
how can we do this.

(Pasted to all my answers today: it's been a long time since my last issues review. I am sorry about the delay and I know you likely have moved on by now. Still, I'm going to answer where I can)
We don't support many of this scenarios. But we could add a basic audio processor for doing your own volume adjustments.


copy files to storage devices,result is succ,but has other messy code files.see more details.

Hi,I'm from China.Thank you for your repositories.
Sorry,My English is not good. When I copy file to storage devices,result is succ,but has more 0B and messy code files,and then,not have any error stack. I don't down what happen. Fortunately,the file has been successfully copied.
see wrong picture,Thanks!

Can you try the lastest version 0.6.0?

you need writepermission

might be the same problem like #233 and should be fixed in 0.7.3


Fix shaded client dependencies for prestodb's alluxio connector

What changes are proposed in this pull request?
Fix shaded client dependencies for prestodb's alluxio connector
Why are the changes needed?
There is some code in prestodb are still using the alluxio-table-client
Does this PR introduce any user facing changes?
no

@apc999 @LuQQiu fyi, we still need this dependency for presto

@Xenorith build is good now
@apc999 and @LuQQiu do you want to take a look?

alluxio-bot, merge this please


Performance improvements using alignment and pipelining

Hi Egor,
I wrote a blog post about alignment and pipelining, which you could use to further boost the performance of most examples in your repository. In essence, you can transform this code:
public static int Sum(int[] source)
{
  const int VectorSizeInInts = 8;

  fixed (int* ptr = &source[0])
  {
    var pos = 0;
    var sum = Avx.SetZeroVector256<int>();

    for (; pos <= source.Length - VectorSizeInInts; pos += VectorSizeInInts)
    {
      var current = Avx.LoadVector256(ptr + pos);
      sum = Avx2.Add(current, sum);
    }

    var temp = stackalloc int[VectorSizeInInts];
    Avx.Store(temp, sum);

    var final = Sum(temp, VectorSizeInInts);
    final += Sum(ptr + pos, source.Length - pos);

    return final;
  }
}

Into this:
public static int SumAlignedPipelined(int[] source)
{
  const ulong AlignmentMask = 31UL;
  const int VectorSizeInInts = 8;
  const int BlockSizeInInts = 32;

  fixed (int* ptr = &source[0])
  {
    var aligned = (int*)(((ulong)ptr + AlignmentMask) & ~AlignmentMask);
    var pos = (int)(aligned - ptr);
    var sum = Avx.SetZeroVector256<int>();
    var final = Sum(ptr, pos);

    for (; pos <= source.Length - BlockSizeInInts; pos += BlockSizeInInts)
    {
      var block0 = Avx.LoadAlignedVector256(ptr + pos + 0 * VectorSizeInInts);
      var block1 = Avx.LoadAlignedVector256(ptr + pos + 1 * VectorSizeInInts);
      var block2 = Avx.LoadAlignedVector256(ptr + pos + 2 * VectorSizeInInts);
      var block3 = Avx.LoadAlignedVector256(ptr + pos + 3 * VectorSizeInInts);

      sum = Avx2.Add(block0, sum);
      sum = Avx2.Add(block1, sum);
      sum = Avx2.Add(block2, sum);
      sum = Avx2.Add(block3, sum);
    }

    for (; pos <= source.Length - VectorSizeInInts; pos += VectorSizeInInts)
    {
      var current = Avx.LoadAlignedVector256(ptr + pos);
      sum = Avx2.Add(current, sum);
    }

    var temp = stackalloc int[VectorSizeInInts];
    Avx.Store(temp, sum);

    final += Sum(temp, VectorSizeInInts);
    final += Sum(ptr + pos, source.Length - pos);

    return final;
  }
}

On my machine this results in 27% boost in performance when working with aligned arrays, and 34% on unaligned arrays (some arrays in your benchmarks are aligned, and some are not, which can results in around 10% difference in performance).
I don't have the time to send you a pull request, but I though you might be interested in this.

Wow, amazing!! @Metalnem I'll check it out!

I don't see the method Avx.SetZeroVector256... 'Avx' does not contain a definition for 'SetZeroVector256'. I also can barely find any reference to it in Google.

@Floccinaucinihilipilification11 this method existed in a (early) preview version of HW-intrinsics in .NET Core 3.0, which was later removed / replaced by Vector256<T>.Zero.

@gfoidl Thanks, documentation on SIMD is scant to say the least, so I appreciate the reply.