Disqus Unable to Load on Post Page

Versions

jekyll 3.4.0
minima ~> 2.0

_config.yml
title: Schwad
email<EMAIL_ADDRESS>description: > # this means to ignore newlines until "baseurl:"
  I am a Full Stack Ruby on Rails Software Engineer for OceansHQ in Torpoint,
  England.
baseurl: "" # the subpath of your site, e.g. /blog
url: https://schwad.github.io
twitter_username: Schwad4HD14
github_username:  schwad
disqus:
  shortname: schwad-github-io

# Build settings
markdown: kramdown
theme: minima
gems:
  - jekyll-feed
exclude:
  - Gemfile
  - Gemfile.lock

repo
https://www.github.com/schwad/schwad.github.io
Problem

Disqus will not load on any of my pages.
My shortname is valid as you can see by visiting: https://schwad-github-io.disqus.com
I have attempted to resolve this using the Jekyll docs, Github docs and Disqus docs, as well as querying and making tweaks around form reviewing StackOverflow. I have even attempted manually setting up disqus in my application, and clearing my cache and viewing incognito.
I have spent about a week trying to debug this before bringing this issue to you, I certainly hope you can help me and provide some guidance on this issue.
All the best.

And of course I would find the solution within 30 seconds of writing it out here. The only change I can imagine is that there was an extra whitespace in the line above with github_username. After I cleared that out it started working. Leaving here if anyone else makes the same mistake in the future. WHEW

unbelievable, but simply reapplying the changes in the _config.yml file worked for me too....weird!


Update cyclonedx to v1.4

Signed-off-by: Sambhav Kothari<EMAIL_ADDRESS>Fixes #744
Does the following -

Update the syft cyclonedx JSON and XML schemas to 1.4 from https://github.com/CycloneDX/specification/tree/master/schema
Updates cyclonedx-go from 0.4 to 0.5 (0.5 added cyclonedx 1.4 support https://github.com/CycloneDX/cyclonedx-go/releases/tag/v0.5.0)
Makes the cyclonedx package names generic (so we don't need to bump them every version change since all cyclonedx 1.x changes are b/w compatible)

This should also set us up for using cyclonedx-go 0.5 in grype and support VEX in grype -> https://github.com/anchore/grype/issues/591

Noting this thread from slack ->

Keith Zantow 1 hour ago
Question: does this drop support for 1.3? It looks like 1.4 is a superset of 1.3, so all should be well in this case, but we need to have a strategy to support multiple versions -- at least for the decoding side of things.
sam 23 minutes ago
1.4 is a superset of 1.3 - so a 1.3 document can be decoded into a 1.4 document but not vice versa
sam 23 minutes ago
the only real change is the bomVersion field
Keith Zantow 20 minutes ago
great, I figured as much for this one

I still think we should hold off on merging this until we get the CycloneDX decoding PR in and then upgrade to 1.4

@samj1912 could you regenerate the golden files and other things based on the recent decoder merge? I think we can move forward on this after that.

@kzantow sorry for the long delay, had to play catch up with the upstream changes a couple of times which caused some rebase conflicts. Should be good to go now!


example for send and receive messages

You have a example for send and receive messages in the same main program

You have a example for send and receive messages in the same main program

Have you the example or not? Thanks


How to save local video in H264 and AAC

I need to save video and push it to server. The only encodes that servers supports are H264 and ACC. Video is ok (H264) but audio is set in PCM.
I see in "LFHardwareAudioEncoder.m" file that there are an encoder to do it, but I don't know why, my local file has PCM encoder.
Can you give me some clues to solve it?
Thanks

This is the metadata of the result file:
 Metadata:
    major_brand     : qt
    minor_version   : 0
    compatible_brands: qt
    creation_time   : 2017-07-25T10:12:08.000000Z
  Duration: 00:00:19.95, start: 0.000000, bitrate: 4471 kb/s
    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p(tv, smpte170m/bt709/bt709), 640x360, 3796 kb/s, 9.35 fps, 24 tbr, 600 tbn, 1200 tbc (default)
    Metadata:
      creation_time   : 2017-07-25T10:12:08.000000Z
      handler_name    : Core Media Data Handler
      encoder         : H.264
    Stream #0:1(und): Audio: pcm_s16le (lpcm / 0x6D63706C), 44100 Hz, mono, s16, 705 kb/s (default)
    Metadata:
      creation_time   : 2017-07-25T10:12:08.000000Z
      handler_name    : Core Media Data Handler

As you can see, PCM is the problem :(

I solve my problem. Just set shouldPassthroughAudio NO in movieWriter.
Thanks!


Parser erro when using nf-if with angular-bind-notifier and angular native bind once

I want to build a condition with both angular-bind-notifier and angular native bind once, but I'm getting the following parser error.

Syntax Error: Token ':' not a primary expression at column 28 of the expression [(vm.event.is_page_owned && ::vm.isClickable)] starting at [::vm.isClickable].

Here is my code:
<a ng-if=":events:vm.event.is_page_owned && ::vm.isClickable" ng-click="vm.goToSubscriptionDetail()" href="#">

What happens if you ditch the :: before vm.isClickable?
Since it's all inside a single ng-if expression, it should be fine™ I reckon.

Closing due to inactivity.


Implement ~LUA for validating Lua code at compile time

Adds a sigil ~LUA which compiles the passed string and raises a Lua.CompilerException if the code does not compile, returning the original string.
This is useful if you have Lua literals in your codebase that you would like to validate before executing them.

I didn't mean to merge this 😅 I'll fix in another PR


[Feature Request]: adding username to the social media icons

Is there an existing issue for this?

[X] I have searched the existing issues

Feature Description
adding username to the social media icons in the footer.
Use Case
people can remember the username to follow later on.
Benefits
No response
Priority
High
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC contributor
[X] I want to work on this issue
[X] I'm willing to provide further clarification or assistance if needed.

@mansiruhil13 should I start working on it?


test: don't generate duplicate x509v3 extensions in intermediate CAs.

While there, add missing rules for generating "san_ip" test certificate.
Signed-off-by: Piotr Sikora<EMAIL_ADDRESS>

cc @joshua-rutherford

Once this is merged, we can re-land #12815, since BoringSSL started rejecting certificates with duplicate x509v3 extensions.

@PiotrSikora, you beat me to this by fifteen minutes!  Spent too much time assuming the intermediate certificate was fine and the crl was wrong.


Add "fzfs" Flipper Zero filesystem driver link

Added in update 70.

Reopening so I can mark this as merged.


Incosistent information regarding pausing

According to https://cloudblogs.microsoft.com/dynamics365/bdm/2019/06/03/new-flexible-service-updates-for-dynamics-365-for-finance-and-operations/ pausing 3 (!) consecutive updates is possible now. Here we read about just 2. What is correct?

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

ID: 8c296e1c-432e-8fb3-e9d8-a87c26d9b59d
Version Independent ID: b4b2af10-17e2-1878-c8c2-2319471bbc79
Content: Pause service updates through Lifecycle Services (LCS) - Finance & Operations | Dynamics 365 | #MSDyn365FO
Content Source: articles/dev-itpro/lifecycle-services/pause-service-updates.md
Service: dynamics-ax-applications
GitHub Login: @manalidongre
Microsoft Alias: manado

@sfmhe, thanks for letting us know!
@manalidongre, please update the topic as appropriate.

Bug 330575 has been logged to track this issue.

Also, there isn't a "Pause Update" option that switches to "On" and "Off"
There is a random toggle that is "Yes" and "No"


Add prominent link to CC tools and clarify site purpose (Fixes #793)

Fixes

Fixes #793] by @briandominick

Description
This pull request resolves an issue where users might mistakenly visit this site while looking for Creative Commons (CC) licenses/tools, which could lead to confusion about the purpose of the site.
To address this:

Added a prominent button to the hero section of the homepage labeled "Share your work using our licenses/tools" linking to the Creative Commons Share Your Work page.
Clarified the site’s purpose by adding a notice near the top of the homepage, informing visitors that this site is for developers contributing to Creative Commons, but anyone can use CC tools to share their work.
Added a consistent footer notice across all pages of the site, linking to CC tools and explaining the site’s purpose.

Technical details

Modified content/contents.lr to include the new button and the clarification notice on the homepage.
Updated themes/vocabulary_theme/templates/layout.html to add a footer notice that appears on every page.
Updated webpack/sass/home-page.scss to style the new button in the hero section and improve the overall layout.

Screenshots

Checklist

[x] My pull request has a descriptive title (not a vague title like Update index.md).
[x] My pull request targets the default branch of the repository (main or master).
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[x] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no
visible errors.

Developer Certificate of Origin

For the purposes of this DCO, "license" is equivalent to "license or public domain dedication," and "open source license" is equivalent to "open content license or public domain dedication."

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

I would also add the internal vertical padding for the text on the button is inconsistent with the other buttons and needs to be adjusted as well.

Thank you for the detailed feedback! I've made the suggested updates, but I need some help on the last feedback from @possumbilities.
As it's clear, the text within the button is too long. How do I go about that? Should I make the text smaller and fit it in one line, or split it into two lines like it is currently, but adjust the padding appropriately?
If I make the text one line, I would need to reduce the font size to avoid the design extending horizontally, which would otherwise cause horizontal scrolling on smaller devices and impact the user experience. Could you guide me on which approach would be best?
Thank you again for your time and guidance!

@MohdMuslim92 I think the most direct solution is to correct the padding. Buttons should be able to allow text-wrapping, and grow in height without them overflowing the bounds of the button, or breaking the internal spacing. I would strongly urge against altering the font-size, that may result in poor Accessibility.
A button shouldn't expect a particular length of text, though long text on buttons should have some limit (the longer it is the more disruptive it is to the button's scannability.

Thanks again for the detailed feedback! I've made the suggested updates and pushed the changes. Please let me know if there's anything else that needs attention.

Hi @TimidRobot,
Thank you for your feedback! I’ve made the suggested changes and updated the pull request description
Please let me know if there’s anything else you’d like me to address. Looking forward to your review!
Best.

Thank you all for your valuable feedback and guidance throughout this PR! I really appreciate your time and help in getting this merged. Looking forward to contributing more in the future!
Best regards,


Fix TextShadowNode cast to fix Victory Native issue https://github.com/FormidableLabs/victory-native/issues/50

LGTM

Confirmed that this branch works locally; Also cross referencing the related issue:
https://github.com/FormidableLabs/victory-native/issues/50

@magicismight any chance of this getting merged? Would be really great to unblock a lot of people and fix victory-native

This is not a bug from react-native-svg.
https://github.com/FormidableLabs/victory-native/issues/50
The error mentioned ReactVirtualTextShadowNode cannot be cast to TextShadowNode.
ReactVirtualTextShadowNode is a component from ReactNative.Text, it cannot be rendered in Svg component.
It seems like Victory Native imported Text from 'react-native' instead of 'react-native-svg', and used it inside a Svg component.

I'll add a type check to prevent a crash like this.
But this bug should inform the collaborators of Victory Native

@magicismight Ah thank you for the response and for pointing out the probably cause. I'll see about tracking down where it gets imported from mistakenly.
Was a curious issue as it doesn't throw on iOS but throws on Android

I looked all through victory-native-* and could not see any place that imports Text from react-native instead of react-native-svg.
I'll dig deeper, try and create the bare minimum of repro and see if I can find out what's going on with Android.
I assumed if this was the case then it would also break iOS?


Initial Focus is to Lowest Numerical TabIndex not the Highest TabIndex

The Remarks section says, "For UWP apps, initial focus is set to the element with the highest TabIndex that can receive focus." But the actual "initial focus is set to the element with the lowest numerical TabIndex which can receive focus."

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

ID: 0e735758-11d3-7725-8090-f8a8ff587c01
Version Independent ID: ec1072dc-7d79-4b13-ceb3-bf4364df16bc
Content: Control.TabIndex Property (Windows.UI.Xaml.Controls) - Windows UWP applications
Content Source: winrt-api-build/xml/Windows.UI.Xaml.Controls/Control.xml
Product: uwp
Technology: winui
GitHub Login: @jwmsft
Microsoft Alias: jimwalk

Thanks fo the suggestion. In fact, this topic is correct as the default (MaxValue) is the case when a control has not been assigned a tab index. Tab order follows any actual declared order and then returns to those controls without a declared tab index.

The initial focus in a current UWP application is set to the element with the lowest TabIndex which has been assigned a tab index. According to your statement the initial focus is set to an element that has not been assigned a TabIndex which is wrong.

Hi @StevenEdwardWood - you're correct, I misunderstood your issue and commented on a different aspect of the property. Topic has been updated. Thanks!


crystal tool format can't handle parentheses in both block args followed by parentheses in block body

As best as I can figure it, crystal tool format was unable to handle this (this is a minimized example, the original was in a larger file, but is of the same form as the example).
[3, 4].each_cons(2).map { |(a, b)| (a + b) / 2 }

This will get me:
$ crystal tool format src/unformattable.cr
Error:, couldn't format 'src/unformattable.cr', please report a bug including the contents of it: https://github.com/crystal-lang/crystal/issues

A few variations:

Removing parentheses from the block body will allow crystal tool format to work, but obviously would change the semantics of the block body, that's not desirable.
Removing parentheses from the block arguments will cause a compile error wrong number of block arguments (given 2, expected 1)... but will also allow crystal tool format to work. Unless there is another way I should destructure the each_cons block arg?
Putting something before the parentheses in the block body will also allow crystal tool format to work. For example, map { |(a, b)| 0 + (a + b) / 2 }. I probably won't want to keep the workaround for a while though.

Already fixed in master, duplicate of #3407


Infix function/method application

It will be nice to have infix function/method application in coffeescript, just like Haskell does. This would improve the look of EDSLs in coffeescript. Here is an example of infix function application:
dividedBy = (x, y) -> x / y

dividedBy 10, 2   # dividedBy(10, 2);
10 `dividedBy` 2 # dividedBy(10, 2);

Infix method application could be implemented like this:
class A
    constructor: (@x) ->
    add: (a) -> new A @x + a.x
    addAndMultBy: (a, m) -> new A (@x + a.x) * m.x

a = new A 1
b = new A 2
m = new A 10

a `.add` b # a.add(b);
b `a.addAndMultBy` m # a.addAndMultBy(b, m);

Haskell also allows infix expressions like a 'foo x + 1, y'  b # foo(x + 1,y,a,b); and function operators are not restricted by its arity a 'foo' b, x, y # foo(a,b,x,y).

I was thinking about this today, and I figured it might be possible to distinguish between prefix and infix by only allowing infix functions to be used in an infixy way, but then the problem is how do you distinguish between the two? I like benekastah's idea of prefixing it with something, but the question is what? We're kind of restricted by the ASCII charset.

I +1 this request, as long as one can find a nice syntax that isn't already taken by the language, or that doesn't make the parser even more ambiguous.

+1. Pinging @jashkenas - any chance to get your feedback on that?

I dunno. Why would you want to limit yourself to only having one of the arguments on the LHS? Why would this be undesirable?
a, b `infix` c, d

Probably, in most cases where you have actual objects, you won't need this in any case:
a.dividedBy b

All of the examples in this thread are for operators ... that are already real operators. How about some examples of how this would be helpful for real code? In the meantime, closing as a wontfix.

@jashkenas Well, it's not about operators per-se but the readability (natural flow, if you will). You're right that objects solve part of this problem, but it's not really practical to have all operations on objects, all the more given the high use of functional idioms in JavaScript (and I believe more so in CoffeeScript, from people not coming from strict OO-only languages).
So, with objects you have a single dispatching where the single item on the LHS is the most important thing in the equation, and this is still restrictive. For example:
var slice = () -> [].slice.call.apply [].slice, arguments
var sequence = { 0: 1, 1: 2, length: 2 }

With usual message passing for OO idioms, this looks okay
sequence.__proto__ = Array.prototype
sequence.slice 1 # => [2]

With the usual function application idioms, the application looks awkward
slice sequence, 1 # => [2]

With the ability to define any function as infix, you can get the same natural reading from idiomatic OO dispatching, but without the need to monkey-patch the object (so, less overhead and a lot safer)
sequence `slice` 1 # => [2]

This is all good for the usual single-dispatching from OO-ish idioms. But indeed functional idioms allow people to do multiple dispatching, as it's not apparent who are the main players in a function application. Magpie solves this nicely by allowing you to define arbitrary number of arguments to come before the function's identifier, and arbitrary to come after the function's identifier.
def (this is Person, action is Verb) to (predicate is String)
  print("Let it be know that " + this name + action + " to " + predicate)
end

Alan went to "the church"
# => "Let it be know that Alan went to the church"

( You can read more about Magpie's handling of function application here: http://magpie.stuffwithstuff.com/calls.html )

# string comparison
like = (strOne, strTwo) -> strOne.toLowerCase() is strTwo.toLowerCase()
a = 'some string'
b = 'SOME string'

if a `like` b then do_something()

# something more useful, class implement
implements = (base, props) -> base::[key] = value for value, key in props
class UsefulStuff
  method1: (does) -> things()
  method2: (is) -> @extremely_useful

someProps =
  method3: (also) -> a_neat method
  importantNumber: 123
UsefulStuff `implements` someProps

(new UsefulStuff).importantNumber is 123 # true

...becomes...
// comparison
if(like(a, b)) do_something();

// class
function UsefulStuff(){ /*etc*/ }
implements(UsefulStuff, someProps);

In my humble opinion, base 'implements' properties (apparently backticks are not to be escaped) looks nicer/cleaner than implements base, properties...

@jashkenas I'm not familiar with the Haskell style, but it seems similar to the F# pipelining operator. Its really useful for stuff like filtering, sorting, etc. on a collection/array. Here's one example of how this is used in F#:
Dealer.cards()
    |> Seq.map (fun c -> (rand.Next(), c))
    |> Seq.sortBy fst
    |> Seq.map snd
    |> Seq.take 10
    |> Seq.toList

This converts the sequence of cards into a tuple containing the card and a random number, sorts by the random number, gets the second element of each tuple (converting it back into a sequence of cards), gets the first 10 cards, and converts it to a list.
It's equivalent to the following F# code:
Seq.toList
    (Seq.take 10
        (Seq.map snd
            (Seq.sortBy fst
                (Seq.map (fun c -> (rand.Next(), c))
                    Dealer.cards()))))

As you can see, the first way is much more readable.
(In case you get confused when reading this code, F# does not need to seperate the arguments for functions.)


[SPARK #42785][K8S][Core] When spark submit without --deploy-mode, avoid facing NPE in Kubernetes Case

What changes were proposed in this pull request?

Why are the changes needed?

According to this PR https://github.com/apache/spark/pull/37880 when user spark submit without --deploy-mode XXX or –conf spark.submit.deployMode=XXXX, may face NPE with this code.
https://github.com/apache/spark/blob/master/core/src/main/scala/org/apache/spark/deploy/SparkSubmit.scala#164
args.deployMode.equals("client") &&

Of course, submit without deployMode is not allowed and will throw an exception and terminate the application, but we should leave it to the later logic to give the appropriate hint instead of giving a NPE.
Does this PR introduce any user-facing change?

How was this patch tested?

As last PR mentioned, @yaooqinn @shrprasa

Please use the jira-style prefix [SPARK-42785], not a GitHub issue-like one [SPARK #42785] like apache/kyuubi.

@zwangsheng args.master.startsWith("k8s")  will also throw NPE if job is submitted without master arg?

@zwangsheng @yaooqinn There won't be any NPE if you try to actually submit a job without the deploy-mode because if no value is provided, it defaults to "client".  Please refer to org.apache.spark.internal.config/package.scala.
  private[spark] val SUBMIT_DEPLOY_MODE = ConfigBuilder("spark.submit.deployMode")
    .version("1.5.0")
    .stringConf
    .createWithDefault("client")

@zwangsheng @yaooqinn There won't be any NPE if you try to actually submit a job without the deploy-mode because if no value is provided, it defaults to "client". Please refer to org.apache.spark.internal.config/package.scala.
  private[spark] val SUBMIT_DEPLOY_MODE = ConfigBuilder("spark.submit.deployMode")
    .version("1.5.0")
    .stringConf
    .createWithDefault("client")

@shrprasa Thanks for reminder
I saw this default value, you can do local test with writing following code

The default value client you mean, will be set in prepareSubmitEnvironment function, which be called after check
args.deployMode.equals("client") &&

Please use the jira-style prefix [SPARK-42785], not a GitHub issue-like one [SPARK #42785] like apache/kyuubi

Sure. XD

I was able to reproduce the issue. Thanks @zwangsheng for fixing it.


install-worker.sh will not work correctly on Kubernetes > 1.14

c1ae2f381fd41347ecfb9cdfcee0d3fb7a8c1141 introduced a new kublet.service file to support Kubernetes 1.14.  The version check should default to the new systemd unit as the prior version of kubelet.service is not anticipated to work on future versions of Kubernetes.

Fixed in https://github.com/awslabs/amazon-eks-ami/commit/b98cec20b1768208bef8870c924811ac57badc2b


compile commands for headers in compile_commands.json

Is your feature request related to a problem? Please describe.
When I use clangd as a analyzer, I find that the source files are analyzed properly. But unfortunately, the header files are all reporting errors inside the header files.
I looked up the documentation related to clangd and learned that it is the lack of a header file compilation method in the compile_command that prevents clangd from analyzing it. But it's true that normal header files don't need to be compiled, only qt projects need to compile header files.So the qt header in QtCreator works fine with clangd, because QtCreater generates the compile command for its header files.
Is there any way to add a rules so that normal header files also generate a compile command, like QtCreater does for its header files?
Describe the solution you'd like
Perhaps we could add a rule that allows header files to be put into add_files, generating compile_commands, but not using the compiler to compile them.
Or maybe modify this rule: "plugin.compile_commands.autoupdate". Add a parameter to it to support generating compile_commands for header files?
Describe alternatives you've considered
No response
Additional context
No response

I've found the reason, it's because clangd in llvm version 18.1.8 doesn't support -std:c++latest yet, it has nothing to do with the compile command.
When I use c++20, clangd is able to analyze the header files properly.


Integrate OAuth2 Provider

I'm currently integrating an OAuth2 Provider in Gitea. I'm using RFC 6749 as model. Currently only the Authorization Code Flow gets implemented due to security concerns for the other flows. I also plan to implement the PKCE Extension to support mobile and "serverless" clients.
Scopes is not a part of this PR and will be integrated until scopes are implemented in general.
I'm open for contributions and feedback. The current code is not final and is absolutely subject to change.
Resolves #27.
TODO:

[x] Database Structure
[x] Authorization Endpoint
[x] Access Token Endpoint
[x] Access Token validation (middleware)
[x] Refresh Tokens
[x] PKCE
[x] Application Settings UI
[x] Authorize UI (just basic UI, @kolaente will improve it)
[x] Well known routes will be implemented in another PR
[x] Tests, Tests, Tests, Tests
....

@filipnavara @lafriks I've reworked the access token system.

Access and refresh tokens are now JWTs
access tokens have a limited lifetime of 3600s (defined in config)
refresh tokens have a lifetime of ~1 month (defined in config)

An additional access token middleware must be added to the api but is not implemented yet.

Added the access token Middleware.

@filipnavara Thanks for testing! You may consider setting the lifetime of the access token to a higher duration since GitHub's implementation does not use refresh tokens.

Thanks for the heads-up, I didn't know that. Luckily the OAuth code in Sentry is quite generic and should be able to handle refresh tokens.

UI Screenshots

Also: we're currently re-using a lot of the existing translations from the general OAuth2 UI. (Things like headers and titles). We should evaluate if this is a good idea or not and whether we should add these strings seperate to the "normal" OAuth2 stuff.

I've added some integration tests. Please send me other test cases to add if you consider one.

I've integrated the edit and delete functionality for the settings ui. @lunny ready for review now.

@jonasfranz CI failed.

@lunny fixed

Still failing...

@lafriks fixed

conflicted

The authorize page below need some space between the head and the dailog.

And the redirectURI check is too restricted. I think app.ContainsRedirectURI should allow url queries at least and support subpath is better. See https://developer.github.com/apps/building-oauth-apps/authorizing-oauth-apps/#redirect-urls, When redirect URI in application setting is http://example.com/path then http://example.com/path?abc and http://example.com/path/subdir/other should be OK but currently not.

Tests example is here: https://gitea.com/lunny/testGiteaOauth2

@lunny I would suggest to match the whole url as recommended here: https://www.oauth.com/oauth2-servers/redirect-uris/redirect-uri-validation/

@lunny Did you reload your cache before visiting the authorize page? I do have indeed a padding-top in Chromium and Firefox.

@jonasfranz I think you are right, that's my Chrome cache problem. CI is failed, otherwise LGTM

make LG-TM work

Thanks @jonasfranz!!!

🎉

Awesome! \o/


Put error conditions near their conditions. Keep lines within 80 characters.

Looks good. You're done with this one.


ReadTimeout Does not work with POST

This is happening on Greenwich (I can test too on Finchley.SR1 or the 2.0.x snapshot line if you require).
There is an issue sending POST requests through the gateway when readtimeout is on.  This does NOT happen if I only use GET (single or multiple).  It also does not happen if I only use POST.  You must use POST and GET.
This is my setup.
App 1 (Uses HTTPS)
Has two endpoints.
/api/test/fast
/api/test/echo
Fast returns in 100ms e.g.
@RequestMapping(value = "/fast", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
	public Mono<String> getFast() {
		return Mono.just(testData).delayElement(Duration.ofMillis(100));
	}

Echo returns an echo e.g.
@RequestMapping(value = "/echo", produces =  MediaType.TEXT_PLAIN_VALUE)
	public Mono<String> post(@RequestBody String body) {
		return Mono.justOrEmpty(body).delayElement(Duration.ofMillis(250));
	}

App 2 (Gateway Uses HTTPS)
Really simple gateway setup. E.g.
.route(r -> r.path("/api/test/**")
		.filters(f -> f.retry(retryConfig -> retryConfig.setRetries(DEFAULT_RETRIES)
				.setMethods(HttpMethod.GET, HttpMethod.POST)))
		.uri("https://test-dummy.pivotal.io"))
.build();

Machine 3 (Test Runner)
A very simple Gatling script
val start = System.currentTimeMillis
val hour = 3600000
val duration = hour * 1
val rawBody = RawFileBody("RecordedSimulation_0001_request.txt")
val scn = scenario("RecordedSimulation")
	.asLongAs(session => (System.currentTimeMillis - start) < duration) {
		exec(http("request_0")
			.get("/api/test/fast")
			.headers(headers).check(status.is(200)))
		.exec(http("request_1")
			.post("/api/test/echo")
			.headers(headers_post)
			.body(rawBody).check(status.is(200)))
	}

setUp(scn.inject(rampUsers(10) over (1 minutes))).protocols(httpProtocol)

I end up with this all over the log (every second)
R:mytargetdomain:443] Pooled connection observed an error
   2018-09-14T21:55:20.59-0400 [APP/PROC/WEB/0] OUT javax.net.ssl.SSLException: SSLEngine closed already
   2018-09-14T21:55:20.59-0400 [APP/PROC/WEB/0] OUT     at io.netty.handler.ssl.SslHandler.wrap(...)(Unknown Source) ~[netty-handler-4.1.29.Final.jar!/:4.1.29.Final]
   2018-09-14T21:55:20.59-0400 [APP/PROC/WEB/0] OUT 2018-09-15 01:55:20.598 ERROR 14 --- [client-epoll-29] r.n.resources.PooledConnectionProvider   : [id: 0xe7b1f8c5, L:/10.254. ! R:mytargetdomain:443] Pooled connection observed an error

And here is the stats of my gatling script NO ERRORS!
================================================================================

2018-09-14 21:57:30                                         680s elapsed
---- Requests ------------------------------------------------------------------

> Global                                                   (OK=646    KO=0     )

> request_0                                                (OK=323    KO=0     )

> request_1                                                (OK=323    KO=0     )

---- RecordedSimulation --------------------------------------------------------

[--------------------------------------------------------------------------]  0%

		  waiting: 0      / active: 10     / done:0
================================================================================

Here is my yaml
spring:
  application:
	name: magical-gateway
  cloud:
	gateway:
	  httpclient:
		connect-timeout: 20000
		response-timeout: 20s

How could timeout exceptions be happening on connections that are coming back without errors?

Confirmed that this does not happen on Finchley.BUILD-SNAPSHOT.
Seems related to the either Greenwich or the Californium

@spencergibb I will test.  Just to be clear - the change made by @violetagg has no negative impact on 2.0.x branch.  Just on master/greenwich.  I would be wondering why something is not being released/disposed on this version (and possibly not on the other either just less verbose log messages).

I reverted the change in master/greenwich, not 2.0.x. Which version is "this version"?

@spencergibb Greenwich/Netty 0.8.x

we plan on a milestone release this week.

A bit concerned given the upcoming branch won't work with this native timeout filter and also showed memory leaks.
CC: @violetagg

We have months before Greenwich goes GA.

@spencergibb Did not see the same issue, I did see memory leaks.  Will open a new issue.

Did not see the same errors again.  I did see some leaks, but not 100% consistent in how to reproduce.

Closing this due to inactivity. Please re-open if there's more to discuss.


Update GitHub token in add_to_project.yml workflow

Closes #
Changes proposed in this pull request

Instructions for Reviewers
[All PRs] - Confirm PR template filled
[Feature Branches] - Review code
[Production Merges to main]
    - Check story numbers included
    - Check for debug code
    - Check version

Expires on Sun, May 12 2024.


Bookdownload

using reactable internal logic to download 1:1 the bookmarks, as to be expected

FYI, this will be on prod next time we restart the server.


large dataset crashes graph validation

See @idazucchi 's dataset:

Wrangling ticket ebi-ait/hca-ebi-wrangler-central#853
ops ticket ebi-ait/hca-ebi-wrangler-central#1050
There are 2 problems:

Hydration from ingest using the uuid fails.
Hydration using the spreadsheet fails while trying to load the records into neo4j. It just never stops, even after a few hours of running.

Graph validation passes if running using on older version of the validator.
See Wei's comment

Amnon started test on dev.

I deployed to prod and am testing the same dataset (Human Melanocutes 251bf9c5-a5e5-4da6-b2ad-93bac7d47eb4


To make Miracast on Cisco Any Connect VPN work on LAN

I use cisco any connect VPN on a regular basis. Is there a way with Microsoft power toys on a corporate machine without any admin access that windows/power toys could incorporate Miracast to work on wireless displays. Currently miracast does not work on the cisco VPN . I don't know why maybe its because it blocks split tunneling. Can powertoys enable or improve windows somehow so that miracast for wireless displays /the connect app of another computer(project to this PC) is not blocked and still works with VPN.

Maybe it is the cisco VPN, i've screenshared my laptop before which uses the MSFT VPN. There are a few articles when i did a search that may help but this is a Cisco or a config issue
This was one item: https://superuser.com/questions/1275906/how-to-troubleshoot-miracast-on-windows-10-laptop/1328168#1328168


#8081: Fix watcher assuming NoC-0 when reporting errors

I double-checked that NoC-1 is handled fine on device side, only issue was that when reading it out we were showing physical coordinates instead of NoC coordinates in the error message. Check in a test to cover this case as well.
Passing CI: https://github.com/tenstorrent/tt-metal/actions/runs/9088469569

New passing CI: https://github.com/tenstorrent/tt-metal/actions/runs/9162213359
Small changes, will just merge


Add Dwarven harpoon

Description:
As requested on #bso-vote:

Changes:

Add a dwarven harpoon as possible dwarven tool;
It doubles the fishing time for stuff that uses harpoon (50% if used with Shelldon);
Disable its drop from mbs;
Add 2x boost to tempoross while having the Dwarven harpoon equipped on the Skilling gear and having 90+ Fishing and 25% more loot (inferno still better for loot).

Other checks:

[X] I have tested all my changes thoroughly.

Dwarven harpoon icon (ID: 50042)

No boost:

Dwarven harpoon:

Dwarven + Shelldon

Normal Tempoross

Tempoross + Dwarven Harpoon

Changed Harpoon ID to remove the conflict with Mangos, improved its effect on Tempoross and added skill requirement of 90 attack, fishing and agility. Lowered tempoross requirement to 90 to be able to use the harpoon.

Just from a consistency standpoint, Dwarven Pickaxe and Axe have a 99 Mining and Woodcutting requirement respectively. It feels weird for harpoon to only be 90.


Can no longer provide custom config on v1+

Troubleshooting

[X] I've searched discuss.bitrise.io for possible solutions.
Which version of the step is effected? 1.*
Is the issue reproducible with the latest version? YES
Does the issue happen sporadically, or every time?  EVERY TIME
Is the issue reproducible locally by following our local debug guide? NOT APPLICABLE

Useful information

FAQ
devcenter.bitrise.io

Issue description
In AVD Manager v0.9 and below, you are able to use custom config in case you want to change things for a base device profile, eg hw.lcd.density or hw.ramSize
From v1 and above it does not seem you can do this anymore. We have a need for this to match screen specs for a specific payment terminal we use with a  flavour of android on top. Is there a way to do this, e.g. change density height and width etc of custom config on v1 and later of AVD Manager step?
I tried manually changing the config.ini of a pixel with sed and then startiong up emulator from command line but got some weird error about Qt
Bitrise info

Build URL: Please share the build URL with us.
Bitrise Support enabled: YES / NO
Log:

Steps to reproduce

...
...

Hey @testifyqa  👋
I think what you are looking for are the create_command_flags and start_command_flags inputs.


[FEATURE] Allow custom training test tones as an option on the GUI

This feature is sure to be embraced by NAM enthusiasts.
NAM is employed not only for instrument amplifiers but also for profiling studio equipment. In such cases, a more specific test tone would be preferable, such as one designed for vocals only. Using test tones that exclusively contain vocals may yield a more finely tuned profile for vocal applications.
The inclusion of custom test tones with paired output files will encourage experimentation, potentially leading to many interesting results, NAM would be more flexible and open for creative use cases.
I would appreciate seeing this feature easily selectable on the GUI.
In the event of any synchronization issues with the paired files (using pointers etc.), users can refer to provided instructions for guidance.
I am hopeful to witness the addition of this feature to NAM soon.

Hi!
This is already supported--simply remove the training segment of the reamp file and put your own audio in.
For the v3 standardized training files (i.e. just v3_0_0.wav right now), this is 0:17 to 3:00.5.
Of course, You'll still be validating on the same audio (I did this on purpose because messing up train/test and doing invalid evaluations is really easy to do if you don't know what you're doing.), but that's probably a pretty minor issue and, as far as I've seen so far, unlikely to matter. If you do want to make up your own validation split, then you definitely want to either be using the CLI trainer at that point (and you should be using the CLI trainer to find out if it's even worth bothering to do that! 😉)
Hope this helps!

Dear Steven, I appreciate your reply.
Unfortunately I can not do that because I already have recorded with my own five minute test-tone some equipment that were rented. I used to be able to train with the same test-tone by modifying a previous version of the trainer with instructions from a YouTube video, unfortunately these instructions don't work in the current version.
I am clueless what CLI trainer is and  I a noob to programming.
On the previous NAM trainer the trick was the following:
Inside the "core.py" the line "input_version: Optional[Version] = None,"
Replaced with: "input_version: Optional[Version] = Version(1, 1, 1),"
And I was able to use any test-tone paired with its output file.
Is there a way to do something similar to this version so I can train with my own test-tone?
If not, can you please tell me how I can find the old version that this trich works?
Kind regards.


0.25.0: topology/metrics.go: to many errors

Try to build release 0.25.0. May be this lack of some go lib?
/home/k0ste/sandbox/AUR/skydive/src/gopath/src/github.com/skydive-project/skydive
# github.com/skydive-project/skydive/topology
topology/metrics.go:66:9: cannot use &metric (type *InterfaceMetric) as type common.Getter in return argument:
	*InterfaceMetric does not implement common.Getter (missing GetField method)
topology/metrics.go:91:9: impossible type assertion:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:118:3: cannot use &InterfaceMetric literal (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:124:9: impossible type assertion:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:151:3: cannot use &InterfaceMetric literal (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:216:3: cannot use im (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:218:3: cannot use im (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:232:2: cannot use m1 (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:232:2: cannot use m2 (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/neighbors.go:64:9: cannot use &nbs (type *Neighbors) as type common.Getter in return argument:
	*Neighbors does not implement common.Getter (missing GetField method)
topology/neighbors.go:64:9: too many errors
Bootstrap failed: exit status 2
make: *** [Makefile:307: flow/flow.pb_easyjson.go] Error 1

Hi, in the 0.25.0 version some of the files were generated. These files seem to be missing per the log. Can you provide/check the beginning of the make output ?

@safchain, my current receipt is:
prepare() {
  cd "${srcdir}/${pkgname}-${pkgver}"
  export GOPATH="${srcdir}/gopath"
  export PATH="${GOPATH}/bin:$PATH"
  mkdir -p "${GOPATH}/src/github.com/${pkgname}-project"
  ln -snf "${srcdir}/${pkgname}-${pkgver}" "${GOPATH}/src/github.com/${pkgname}-project/${pkgname}"
}

build() {
  export GOPATH="${srcdir}/gopath"
  export PATH="${GOPATH}/bin:$PATH"
  cd "${GOPATH}/src/github.com/${pkgname}-project/${pkgname}"
  make
}

As I can see main issue is that Makefile is redefine $GOPATH. May be other?
fatal: No names found, cannot describe anything.
fatal: Needed a single revision
Usage: grep [OPTION]... PATTERNS [FILE]...
Try 'grep --help' for more information.
/bin/sh: line 0: printf: -%: invalid option
printf: usage: printf [-v var] format [arguments]
fatal: No names found, cannot describe anything.
fatal: Needed a single revision
Usage: grep [OPTION]... PATTERNS [FILE]...
 matched no packages
cd js && npm install
npm notice created a lockfile as package-lock.json. You should commit this file.
added 145 packages from 122 contributors and audited 916 packages in 4.484s
found 0 vulnerabilities

cd js && PATH=`npm bin`:$PATH make all
make[1]: Entering directory '/home/k0ste/sandbox/AUR/skydive/src/skydive-0.25.0/js'
tsc --module commonjs --target ES5 browser.ts
browserify browser.js -o ../statics/js/bundle.js
make[1]: Leaving directory '/home/k0ste/sandbox/AUR/skydive/src/skydive-0.25.0/js'
mv /home/k0ste/sandbox/AUR/skydive/src/gopath/.skydive-build-tool bin || true; ln -s vendor src || mv vendor src; cd src/github.com/jteeuwen/go-bindata/go-bindata; (unset GOARCH; unset CC; GOPATH=$GOPATH/src/github.com/skydive-project/skydive go install github.com/jteeuwen/go-bindata/go-bindata); cd -; mv bin /home/k0ste/sandbox/AUR/skydive/src/gopath/.skydive-build-tool; unlink src || mv src vendor; go-bindata  -nometadata -o statics/bindata.go -pkg=statics -ignore=bindata.go js/*.js rbac/policy.csv statics/index.html statics/css/* statics/css/themes/*/* statics/fonts/* statics/img/* statics/js/* statics/schemas/* statics/workflows/*.yaml
/home/k0ste/sandbox/AUR/skydive/src/gopath/src/github.com/skydive-project/skydive
gofmt -w -s statics/bindata.go
mv /home/k0ste/sandbox/AUR/skydive/src/gopath/.skydive-build-tool bin || true; ln -s vendor src || mv vendor src; cd src/github.com/mailru/easyjson/easyjson; (unset GOARCH; unset CC; GOPATH=$GOPATH/src/github.com/skydive-project/skydive go install github.com/mailru/easyjson/easyjson); cd -; mv bin /home/k0ste/sandbox/AUR/skydive/src/gopath/.skydive-build-tool; unlink src || mv src vendor; easyjson -all flow/flow.pb.go
/home/k0ste/sandbox/AUR/skydive/src/gopath/src/github.com/skydive-project/skydive
# github.com/skydive-project/skydive/topology
topology/metrics.go:66:9: cannot use &metric (type *InterfaceMetric) as type common.Getter in return argument:
	*InterfaceMetric does not implement common.Getter (missing GetField method)
topology/metrics.go:91:9: impossible type assertion:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:118:3: cannot use &InterfaceMetric literal (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:124:9: impossible type assertion:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:151:3: cannot use &InterfaceMetric literal (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:216:3: cannot use im (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:218:3: cannot use im (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:232:2: cannot use m1 (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/metrics.go:232:2: cannot use m2 (type *InterfaceMetric) as type common.Metric in return argument:
	*InterfaceMetric does not implement common.Metric (missing GetFieldInt64 method)
topology/neighbors.go:64:9: cannot use &nbs (type *Neighbors) as type common.Getter in return argument:
	*Neighbors does not implement common.Getter (missing GetField method)
topology/neighbors.go:64:9: too many errors
Bootstrap failed: exit status 2
make: *** [Makefile:307: flow/flow.pb_easyjson.go] Error 1

As far as I know Go or the vendor thing doesn't like symlinks. I would suggest to try without it

@safchain, thanks. I'm build couple of Go projects and don't have errors like this. May be this vendor...
As you suggested, I replace symlinking to just copy source
@safchain, thanks. I'm packaged couple of go projects and don't have errors like this. May be this vendor... As you suggested, I was replaced symlinking to copy.
mv "${srcdir}/${pkgname}-${pkgver}" "${GOPATH}/src/github.com/${pkgname}-project/${pkgname}"

Build almost complete, but stuck on another Go stuff, any suggestions?
github.com/skydive-project/skydive/cmd/skydive
github.com/skydive-project/skydive
# github.com/skydive-project/skydive
flag provided but not defined: -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now
usage: link [options] main.o
  -B note
    	add an ELF NT_GNU_BUILD_ID note when using ELF
  -E entry
    	set entry symbol name
  -H type
    	set header type
  -I linker
    	use linker as ELF dynamic linker
  -L directory
    	add specified directory to library path
  -R quantum
    	set address rounding quantum (default -1)
  -T address
    	set text segment address (default -1)
  -V	print version and exit
  -X definition
    	add string value definition of the form importpath.name=value
  -a	disassemble output
  -buildid id
    	record id as Go toolchain build id
  -buildmode mode
    	set build mode
  -c	dump call graph
  -compressdwarf
    	compress DWARF if possible (default true)
  -cpuprofile file
    	write cpu profile to file
  -d	disable dynamic executable
  -debugtramp int
    	debug trampolines
  -dumpdep
    	dump symbol dependency graph
  -extar string
    	archive program for buildmode=c-archive
  -extld linker
    	use linker when linking in external mode
  -extldflags flags
    	pass flags to external linker
  -f	ignore version mismatch
  -g	disable go package data checks
  -h	halt on error
  -importcfg file
    	read import configuration from file
  -installsuffix suffix
    	set package directory suffix
  -k symbol
    	set field tracking symbol
  -libgcc string
    	compiler support lib for internal linking; use "none" to disable
  -linkmode mode
    	set link mode
  -linkshared
    	link against installed Go shared libraries
  -memprofile file
    	write memory profile to file
  -memprofilerate rate
    	set runtime.MemProfileRate to rate
  -msan
    	enable MSan interface
  -n	dump symbol table
  -o file
    	write output to file
  -pluginpath string
    	full path name for plugin
  -r path
    	set the ELF dynamic linker search path to dir1:dir2:...
  -race
    	enable race detector
  -s	disable symbol table
  -strictdups int
    	sanity check duplicate symbol contents during object file reading (1=warn 2=err).
  -tmpdir directory
    	use directory for temporary files
  -u	reject unsafe packages
  -v	print link trace
  -w	disable DWARF generation
Error: exit status 2
make: *** [Makefile:385: compile] Error 2

for the symlink, go tools follows symlink instead of using them resulting in using wrong package name. For the link issue, I don't know where these flags come from, any remaining LDFLAGS environment variable or something ?

I don't know where these flags come from, any remaining LDFLAGS environment variable or something ?

It's comes from makepkg. !buildflags fixed this, thanks.

aur/skydive


Pip package version

Hey,
I noticed that for me installing from pip fetches an outdated version of the library, so I defaulted to pip install from a git commit - would it be possible to update the version available via pip, surely this might confuse other users as well, when they try use features documented here, but not available in the latest version installed via pip?
Thanks for the great package :)

@kontur Interesting. What version are you seeing?
Are you not seeing 2014.04.23a?
This should be the latest:
https://pypi.python.org/pypi?:action=display&name=foursquare&version=2014.04.23a
Versions are based upon the requested API version, not necessarily the release date of the library. They often coincide, but not necessarily.

Just bumped the API/package version to 2015.02.01 (after running specs) to avoid confusion.

If this fixes things on your end, feel free to close this issue.

Hey,
thanks for looking into this.
When I setup a new virtualenv now and install I get the following:
(venv)Johanness-MacBook-Pro:test johannes$ pip list
foursquare (20130707)
httplib2 (0.9)
pip (1.5.6)
poster (0.8.1)
setuptools (3.6)
wsgiref (0.1.2)

This seems to be the same version number I got when originally reporting the issue, so nothing has changed. Is there some sort of version caching that pip does that could prevent it from fetching the latest?

Thanks for the bug report @kontur.
K, it looks like it's a known pip issue that it will install the package with the highest semantic version, even if it's explicitly hidden on PyPi.
I changed the version scheme so that the latest version is explicitly greater than all prior (even old, hidden) versions.
The latest should be 1!2015.2.1.

Hey, ah okay, that could explain it.
When I now create a new folder, virtualenv and then install foursquare via pip I still do get the same version foursquare (20130707).
When after install I check pip search foursquare I get amongst other hits:
foursquare                - easy-as-pie foursquare wrapper library
INSTALLED: 20130707 (latest)

Does pip take a while to update its caches or something until it actually matches the version listed on https://pypi.python.org/pypi?:action=display&name=foursquare ?

Interesting.
I opened an issue on pip, so hopefully we can get this sorted shortly.
Thanks for the patience.

K, looks like it's an issue with pip. Next version of pip should return the latest version.

I'm going to leave this open until the pip team cuts a release.

Great :)
For reference until the latest version gets installed from pip, I leave here the way I used pip to install the latest version via git:
$ pip install git+https://github.com/mLewisLogic/foursquare.git

This should add the repo diretly as reference and install with pip.

Looks like this is fixed with pip 6.0.8!

For future explorers who find this issue, just upgrade pip using:
pip install pip --upgrade
You may or may not need sudo, depending upon your specific setup.

Perfect. Can confirm this installs right now. Thanks for the effort :)


Fix paper system late localization

About the PR

Added localization to comp init
Why / Balance

So the users don't see the localization ID
I noticed this in https://github.com/space-wizards/space-station-14/pull/30298 and said I'd fix it
Technical details

Media

Before:
https://github.com/user-attachments/assets/0df702d9-d252-4e93-8660-cbb158669df5
After:
https://github.com/user-attachments/assets/26229af6-d833-4d27-a17b-a8f654b07b74
Requirements

[x] I have read and I am following the Pull Request Guidelines. I understand that not doing so may get my pr closed at maintainer’s discretion
[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

no one even notices this so no

guh, real test fail

my skill issue is greater than previously anticipated

I'd like to move the entirety of the label/hand labeler stuff over to Shared after this


Update zio to 2.0.3

Updates dev.zio:zio from 2.0.1 to 2.0.3.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio", artifactId = "zio" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "dev.zio", artifactId = "zio" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, commit-count:1

looks like bug in ZIO 2.0.3 with scala.js compatibility https://github.com/zio/zio/issues/7496

Superseded by #84.


Added new audit reports

Uploaded new audit report

Notice new naming format for audit files, it will help in hunting specific audit files. I will fix naming format for other files in separate PR.

@rokso Lets not merge this PR. Dec21 report is not updated. It should have all fixed items marked resolved/fixed. I will send different PR with updated file.

I have upload April report in PR #51


autoware.universe is not engaging when there is an iterative scenario

Description
This issue is a part of https://github.com/autowarefoundation/autoware.universe/issues/566
When an iterative parameter exists in scenario definition, after the first iteration second one starts. If the NPC mode is active for the scenerio_test_runner(autoware.universe is not running) iterative scenarios is realizing and finishing after all the iterations.
However if one runs autoware.universe along with scenerio_test_runner, autoware.universe  is not engaging in the time specified as initialize_duration so openscenario_interpreter_node is shutting down. So one cannot test the rest of the scenario.
Here is the related part after the second iteration starts:
[openscenario_interpreter_node-3] [INFO] [1651075172.607175842] [simulation.concealer]: Simulator waiting for Autoware state to be Initializing (2).
[openscenario_interpreter_node-3] [INFO] [1651075173.607170647] [simulation.concealer]: Simulator waiting for Autoware state to be Initializing (1).
[openscenario_interpreter_node-3] [INFO] [1651075174.607185735] [simulation.concealer]: Simulator waiting for Autoware state to be Initializing (0).
[openscenario_interpreter_node-3] [INFO] [1651075175.581202385] [simulation.concealer]: Shutting down Autoware: (1/3) Stop publishing/subscribing.
[openscenario_interpreter_node-3] [INFO] [1651075175.606130081] [simulation.concealer]: Autoware is DRIVING now.
[openscenario_interpreter_node-3] [INFO] [1651075175.606570827] [simulation.concealer]: Autoware is DRIVING now.
[openscenario_interpreter_node-3] [INFO] [1651075175.607958523] [simulation.concealer]: Autoware is DRIVING now.
[openscenario_interpreter_node-3] [INFO] [1651075175.608341434] [simulation.concealer]: Autoware is DRIVING now.
[openscenario_interpreter_node-3] [INFO] [1651075175.608605849] [simulation.concealer]: Autoware is DRIVING now.
[openscenario_interpreter_node-3] [INFO] [1651075175.836675413] [simulation.openscenario_interpreter]: AutowareError: Autoware did not reach an engageable state within the specified time (initialize_duration).
[openscenario_interpreter_node-3] [INFO] [1651075179.055190713] [rclcpp]: signal_handler(signal_value=2)

Full Log:
scenario_iteration_issue.log
To Reproduce

Download the map data and the scenario file.
Run scenario_test_runner with autoware.
Observe that after the first iteration the other iterations won't be realized.

Expected behavior
All the iterations must be run automatically along with autoware.universe.
Versions:

scenario_simulator:  7f5bf7e5b9269004e85adfb5cfc7495197c2208c
autoware.universe: 7ed3e9a
OS: Ubuntu 20.04
ROS2: galactic
DDS: rmw_cyclonedds_cpp

This might be caused due to the old instruction from PR ( which launch autoware separately).
I just told @mehmetdogru to run scenario simulator differently and see the results first.

He was able to run the second parameter fine with the new command so closing this issue.

Just for convenience, here is how to start scenario_test_runner without having the issue described with details above:
source ~/autoware/install/setup.bash
ros2 launch scenario_test_runner scenario_test_runner.launch.py sensor_model:=sample_sensor_kit vehicle_model:=sample_vehicle scenario:=<path_to_yaml_file> architecture_type:=awf/universe launch_rviz:=true launch_autoware:=true

! Notice that launch_autoware:=true
! Make sure that you don't launch planning_simulator separately with another command.


issue of reproducing the results

Thanks for sharing the code. I trained the model using the command : CUDA_VISIBLE_DEVICES=0,1,2,3 python -m torch.distributed.launch --nproc_per_node=4  --use_env opencood/tools/train_camera.py --hypes_yaml  opencood/hypes_yaml/opcamera/corpbevt.yaml.
The IoU is about 46.2%. The result reported in the paper is about 60.4%. Do you know why my reproduced result is much lower?

Hi, I usually don't train the v2v model from scratch. You should train the single-vehicle model first and then let the v2v model load the single-vehicle model's pre-trained weights and train. So I suggest training opencood/hypes_yaml/opcamera/fax.yaml for around 70-80 epochs and then train corpbevt. Also, the converging is slow, so please train your model with more epochs.

Thanks for your reply. I tried the command :
CUDA_VISIBLE_DEVICES=0,1,2,3 python -m torch.distributed.launch --nproc_per_node=4 --use_env opencood/tools/train_camera.py --hypes_yaml opencood/hypes_yaml/opcamera/fax.yaml.
The error message is as follows:
File "/home/hye2/Desktop/yh/CoBEVT/opv2v/opencood/data_utils/datasets/camera_only/late_fusion_dataset.py", line 135, in get_single_cav
selected_cav_base['bev_lane.png'])
KeyError: 'bev_lane.png'
I found  in the config file 'fax.yaml'
...
data_augment: []
add_data_extension: ['bev_dynamic.png', 'bev_static.png',  'bev_visibility.png', 'bev_visibility_corp.png']
...
The 'bev_lane.png ' is missing in the 'fax.yaml'. Should the 'bev_lane.png' be added to the config file?

Yes, you can add it. It won'd influence the performance

also, how many epochs have you runed in the previous exp?

In the CorpBEVT, it is 151 epochs, which is the same in the config file

Did you see the validation loss curve? It may have overfitting issue as well

The IoUs of epoch 91 and 151 are about 44% and 46%, respectively.  It may not be the overfitting issue.

Ok. Are you able to get the same number from my provided checkpoint?

Yes. The pretrained checkpoint has almost the same result in the paper.

ok. Let me know if you can get similar results. I also saved the training events file of tensorboard for cobevt,  let me know if you need it.

Could you share the training events with me?

please shoot me a message using your institution's email and include your name, then I will send it to you via email.

Here is the screenshoot of the CoBEVT training curve. To those who wants to train the V2V model from a single-vehicle based model, here are the steps:

Train the single vehicle model (e.g., SinBEBT) for 70-80 epoches
Create a new log folder named CoBEVT, and change the name of the latest  pretrained single vehicle model to net_epoch_1.pth
Copy the default config yaml of CoBEVT to the log folder
Run the training command with --model_dir logs/CoBEVT

I followed the training approach above:  1) Trained the  fax.yaml  for 90 epochs first,  2) Then finetuned this model with the corpbevt.yaml for 80 epochs, 3) The IoU for test data was 61.1.


cannot send arbitrary number of queries in a single call to read_sql

What language are you using?
Python
What version are you using?
0.3.2
What database are you using?
PostgreSQL (timescale) + pgbouncer
What dataframe are you using?
Arrow2 (should not matter)
Can you describe your bug?
My pgbouncer instance is configured to use a connection pool of 50 slots and to allow 500 client connections per user/database.
When using the session pooling mode of pgbouncer (1-1 client connection/server connection for the duration of a session). I cannot send more than 50 queries per call to cx.read_sql.
With the other pooling modes (transaction/statement, which only are an option since pgbouncer 1.21), that number climbs to 500.
Sending even one more query above these thresholds will result in a python exception being raised (pretty reliable except for session pooling which sometimes appears to just hang).
What are the steps to reproduce the behavior?
Run timescale + pgbouncer with either:

pool_mode set to session, and  default_pool_size set to N (e.g. 50);
pgbouncer version 1.21+, max_prepared_statement set to some strictly positive value (e.g. 100), pool_mode set to transaction or statement, and max_client_conn set to N (e.g. 500).

Run the following snippet (replacing uri with the connection string for your pgbouncer instance and N with the value you configured pgbouncer with):
import connector as cx

cx.read_sql(uri, ["SELECT 1"] * N)  # OK
cx.read_sql(uri, ["SELECT 1"] * (N + 1))  # KO

Database setup if the error only happens on specific data or data type
N/A
Example query / code
import connector as cx

cx.read_sql(uri, ["SELECT 1"] * (N + 1))

What is the error?
In session pooling mode, either a hang, or an exception that mentions having hit query_wait_timeout (pgbouncer setting).
In the other pooling modes, an exception that mentions r2d2 failed to acquire enough connection slots.

It's quite easy to work around this limitation by using smaller query batches, so it's fine by me if connectorx keeps its current behaviour.
I'm merely surprised that connectorx uses r2d2 for connection pooling but actually requests one connection per partition. And maybe even more importantly, connectorx does not seem to release connections as queries complete.
Could you please comment on this?


Different theme in detail

Is it possible to use a different theme in detail, something like this:
rofi -theme "emoji" -emoji-detail-theme "emoji-detail" -emoji-format "{emoji} {name}"

emoji.rasi
@theme "theme"
element-text {
    font: "monospace 32";
}

emoji-detail.rasi
@theme "theme"
element-text {
    font: "monospace 11";
}

I use large font for emojis so I can see them better, but it's not so nice in the detail. Or any other solution?

It's not possible to load and unload theme files during runtime, no.
However, you can maybe achieve something similar using Pango markup.
rofi -modi emoji -show emoji \
	-emoji-format '{emoji} {name}[ ({keywords})]'

Just increasing the font size of the character doesn't make the "box" that contains the line larger, so they start to overlap. But if you use a theme where you have extra margin around items, then it might look fairly okay for you.
That extra space would of course still be visible inside of the menu, though.

I recommend starting up a Discussion post if you want to post any findings or examples, of if some other visitors comes by in the future and want to test things out. :smile:


fix indentation in XXPlusYYGate docstring

Summary
The matrix is supposed to be part of the note.
Details and comments

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
15 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.003%) to 89.633%

Files with Coverage Reduction
New Missed Lines
%

crates/qasm2/src/lex.rs
3
92.37%

crates/qasm2/src/parse.rs
12
96.69%

Totals

Change from base Build<PHONE_NUMBER>:
-0.003%

Covered Lines:
62261

Relevant Lines:
69462

💛  - Coveralls


sig image-version create managed-image parameter should map to new VM backend field

Preconditions

[X] No need to upgrade Python SDK or the Python SDK is ready.

Related command
az sig image-version create
Resource Provider
Microsoft.Compute
Description of Feature or Work Requested
Currently, the --managed-image parameter of the az sig image-version create command maps to the properties.storageprofile.source.id field.  We need it to map to the properties.storageprofile.source.virtualMachineId field ONLY when the source provided is a VM id.
Minimum API Version Required
2023_07_03
Swagger PR link / SDK link
https://github.com/Azure/azure-rest-api-specs/pull/27518
Request Example
Example of how it would be mapped today:
{
"name": "1.0.0",
"location": "South Central US STG",
"properties": {
"storageProfile": {
"source": {
"id": "{virtual machine id}"
}
}
}
}
The new mapping:
{
"name": "1.0.0",
"location": "South Central US STG",
"properties": {
"storageProfile": {
"source": {
"virtualMachineId": "{virtual machine id}"
}
}
}
}
Not we should only use the virtualMachineId if the id is a virtual machine.  If the id is a managed image then we should continue to use the old field.
Target Date
As soon as possible
PM Contact
<EMAIL_ADDRESS>Engineer Contact
tiregan, jerch, kagarwal
Additional context
No response

Thank you for opening this issue, we will look into it.


[ArtistRail] fixes text position when bio is missing

Fixes https://github.com/artsy/eigen/issues/1997

@orta I believe that have addressed the points you brought up concerning the test, let me know if/how I could improve it further.

I need to create a branch instead to get CI checks to all pass. Closing this.


Tiny typo in cfn template description

Awesome tool! Thanks, @ehammond :smile:

Thanks, Aaron Suggs!


Near simultaneous calls to httpd_ws_send_frame_async causes frames to become mangled (IDFGH-13609)

Answers checklist.

[X] I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there.
[X] I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there.
[X] I have searched the issue tracker for a similar issue and not found a similar issue.

IDF version.
5.3.0
Espressif SoC revision.
ESP32-S3
Operating System used.
Linux
How did you build your project?
Other (please specify in More Information)
If you are using Windows, please specify command line type.
None
Development Kit.
NA
Power Supply used.
USB
What is the expected behavior?
Calling httpd_ws_send_frame_async in rapid succession should correctly queue the packets
What is the actual behavior?
The frames become mangled and the client(s) force a disconnect. Usually the client shows either a header error, ("Invalid frame header"), fragmentation error (final is incorrectly set to false), or a UTF8 decoding error ("Could not decode a text frame as UTF-8"). This behavior is also observable in Wireshark as errored frames.
Steps to reproduce.

Call httpd_ws_send_frame_async to the same fd rapidly
Observe that the client (web browser) disconnects due to an error

To resolve the problem, I can wrap the httpd_ws_send_frame_async calls in a freertos mutex. However, I think it would make more sense to be handling the mutex in the underlying functions.
Debug Logs.
No response
More Information.
I don't have a minimal example right now but I'm noticing this error when broadcasting messages to all ws clients (calling httpd_get_client_list and filtering). I'm only sending messages like up to 1-5 messages/sec, but it's enough to cause problems. I'm not sure if it would be better to queue frames or to use a simple mutex. I also wonder if combining the sends (via sess->send_fn()) would prevent the frames from being broken up?

@kevinhikaruevans Could you please follow this example to try?
https://github.com/espressif/esp-idf/blob/master/examples/protocols/http_server/ws_echo_server/main/ws_echo_server.c#L55

Hi @ESP-YJM
I have an example in this branch here: https://github.com/kevinhikaruevans/esp-idf/tree/demo/ws-bug/examples/protocols/http_server/ws_echo_server
Specifically:

https://github.com/kevinhikaruevans/esp-idf/blob/demo/ws-bug/examples/protocols/http_server/ws_echo_server/src/ws_echo_server.c
https://github.com/kevinhikaruevans/esp-idf/blob/demo/ws-bug/examples/protocols/http_server/ws_echo_server/src/ws_helper.c

In ws_helper.c, I have a #define USE_MUTEX. If this is commented out, it will fail after some time. When it fails, it looks like:
$ wscat --connect http://<IP_ADDRESS>/ws

< {"index": 2, "time": 4}
< {"index": 0, "time": 4}
< {"index": 1, "time": 4}
< {"index": 2, "time": 4}
< {"index": 0, "time": 4}
< {"index": 1, "time": 4}
< {"index": 2, "time": 4}
error: Invalid WebSocket frame: invalid UTF-8 sequence

in Wireshark, this looks like:

or it might show an errored frame.
When I use the mutex, the program works as expected. But I don't think the application code should be setting the mutex, but the underlying httpd_ws_send_frame_async should have a mutex per connection or something similar.

I think something like this pseudocode would fix the problem, assuming the underlying send_fn handles concurrency:
esp_err_t httpd_ws_send_frame_async(...) {

   // [...]

   struct sock_db *sess = httpd_sess_get(hd, fd);

   if (!sess) {
      return ESP_ERR_INVALID_ARG;
   }

   size_t frame_length = tx_len + frame->len;
   char frame_buffer = malloc(frame_length);

   memcpy(frame_buffer, header_buffer, tx_len);
   memcpy(frame_buffer + tx_len, frame->payload, frame->len);

   if (sess->send_fn(hd, fd, (const char *)frame_buffer, frame_length) < 0) {
      ESP_LOGW(TAG, "Failed to send WS frame");
      return ESP_FAIL;
   }

   return ESP_OK;
}

Yes, this API indeeed exist this issue. But we can avoid directly use it. The API introduction also shows this issue https://github.com/espressif/esp-idf/blob/master/components/esp_http_server/include/esp_http_server.h#L1752. You can use this API httpd_ws_send_data_async https://github.com/espressif/esp-idf/blob/master/components/esp_http_server/include/esp_http_server.h#L1804

I see, should the ws_echo/wss examples be updated to use httpd_ws_send_data_async over httpd_ws_send_frame_async if the function shouldn't be used?

No, as i sent the link previous, the examples use httpd_ws_send_frame_async, but it will enqueue it to queue by httpd_queue_work. https://github.com/espressif/esp-idf/blob/master/examples/protocols/http_server/ws_echo_server/main/ws_echo_server.c#L63
So it will not exist the issue.


Err(Timeout)

I've been playing with your example, and have gotten to compiling and running on both a blue pill using stm32f1xx-hal and on a nucleo-64 (stm32f411) using stm32f4xx-hal, but I only get Err(Timeout) and not any readings. Possibly I have the wait time too short? With stm32f3xx-hal I get the error you mention in issue #1 . My code is below.  (I'm using git versions of the hals.)
I've changed several things relative to your example: pin to pa8, source of core peripherals to the hal rather than cortex_m, and the clock. The last may be most important(?) but I did not know how to do this correctly with  stm32f1xx-hal and I hit a panic with stm32f4xx-hal, possibly due to the attempted setting exceeding my hardware capabilities.
Regarding the pull-up resister, I was not sure if the internal resister gets used with just pa8.into_open_drain_output() but I get the same result  both with and without an external resistor (33K ohm, which also may not be correct).
I am a newbie and I've probably messed with something I should not have touched. I'm not even sure how to determine if this is a hardware or software problem. Any suggestions would be appreciated.
#![deny(unsafe_code)]
#![no_main]
#![no_std]

#[cfg(debug_assertions)]
extern crate panic_semihosting;

#[cfg(not(debug_assertions))]
extern crate panic_halt;

use cortex_m_rt::entry;
use cortex_m_semihosting::hprintln;

use dht11::Dht11;

#[cfg(feature = "stm32f1xx")]
use stm32f1xx_hal::{prelude::*, pac::{Peripherals, CorePeripherals}, delay::Delay };

#[cfg(feature = "stm32f3xx")]
use stm32f3xx_hal::{prelude::*, stm32::{Peripherals, CorePeripherals}, delay::Delay };

#[cfg(feature = "stm32f4xx")]
use stm32f4xx_hal::{prelude::*, pac::{Peripherals, CorePeripherals}, delay::Delay };

#[entry]
fn main() -> ! {
    let cp = CorePeripherals::take().unwrap();
    let  p = Peripherals::take().unwrap();

    #[cfg(feature = "stm32f1xx")]
    let mut rcc = p.RCC.constrain();
    #[cfg(feature = "stm32f1xx")]
    let clocks = rcc.cfgr.freeze(&mut p.FLASH.constrain().acr);
    #[cfg(feature = "stm32f1xx")]
    let mut gpioa  = p.GPIOA.split(&mut rcc.apb2);
    #[cfg(feature = "stm32f1xx")]
    let pin_a8 = gpioa.pa8.into_open_drain_output(&mut gpioa.crh);  // DHT11 data on pin  A8.

    #[cfg(feature = "stm32f3xx")]
    let mut rcc   = p.RCC.constrain();
    #[cfg(feature = "stm32f3xx")]
    let clocks    = rcc.cfgr.freeze(&mut p.FLASH.constrain().acr);
    #[cfg(feature = "stm32f3xx")]
    let mut gpioa  = p.GPIOA.split(&mut rcc.ahb);
    #[cfg(feature = "stm32f3xx")]
    let pin_a8 = gpioa.pa8.into_open_drain_output(&mut gpioa.moder, &mut gpioa.otyper);

    #[cfg(feature = "stm32f4xx")]    // Use HSE oscillator
    let clocks =  p.RCC.constrain().cfgr.freeze();
    // next gives panicked at 'assertion failed: !sysclk_on_pll ||
    //                  sysclk <= sysclk_max && sysclk >= sysclk_min'
    //let clocks = p.RCC.constrain().cfgr.use_hse(8.mhz()).sysclk(168.mhz()).freeze();
    #[cfg(feature = "stm32f4xx")]
    let pin_a8 = p.GPIOA.split().pa8.into_open_drain_output();  // DHT11 data on pin A8.

    hprintln!("dht11 ...").unwrap();
    let mut dht11 = Dht11::new(pin_a8);

    hprintln!("delay ...").unwrap();
    let mut delay = Delay::new(cp.SYST, clocks);

    hprintln!("entering sensor reading loop...").unwrap();

    loop {
        hprintln!("{:?}", dht11.perform_measurement(&mut delay)).unwrap();
        delay.delay_ms(1000_u16);
    }
}

I have been trying to get this library to give me a reading on the raspberry pi 4, but I am getting the same error.
I implemented the traits for delay like this: I am also a newbie on rust, appreciate the help.
`impl DelayMs< u16>  for Muco  {
fn delay_ms(&mut self, ms: u16)->(){
let millis = ms as u32;
let target = Instant::now() + Duration::new(0, (millis * 1000000).into());
while Instant::now() < target { }
}
}
impl DelayUs< u16>  for Muco {
fn delay_us(&mut self, microseconds: u16)->(){
let target = Instant::now() + Duration::new(0, (microseconds * 1000).into());
while Instant::now() < target { }
}
}`


Add early return in case remote participant array is empty (useSharedState)

Suggestion from tutorial review -- let's be a little more defensive in the off chance the array is empty while requesting shared state from a random peer.

Sorry for the delay -- LGTM!


feat: update some recipes and fix some deprecations

I closed #500 and I opened this because after merge the #499 the story has been override.

Well! Now it's all green!!!


Inconsistent permission behaviour with memoization

Summary
The behaviour of Argo Workflows in relation to step memoization and permissions to update the cache configmap are inconsistent and confusing.
What happened/what you expected to happen?
The following currently happens:

When (1) the argo-cluster-role (or argo-role in a namespace install) doesn't have permissions to update/create the cache configmap and (2) the cache configmap does not exist then no error is thrown.

When (1) the argo-cluster-role (or argo-role in a namespace install) doesn't have permissions to update/create the cache configmap and (2) the cache configmap exists but (3) the configmap does not contain the key then no error is thrown.

When (1) the argo-cluster-role (or argo-role in a namespace install) doesn't have permissions to update/create the cache configmap and (2) the cache configmap exists but (3) the configmap does contain the key then a permission error is thrown.

I would expect a permission error to be thrown in all cases.
What version of Argo Workflows are you running?
3.2.4
Diagnostics
Either a workflow that reproduces the bug, or paste you whole workflow YAML, including status, something like:
I am using memoize-simple workflow, i.e., https://github.com/argoproj/argo-workflows/blob/master/examples/memoize-simple.yaml
What Kubernetes provider are you using?
Minikube
What executor are you running? Docker/K8SAPI/Kubelet/PNS/Emissary
I am using the default executor for v3.2.4, which I believe is Docker.
# Logs from the workflow controller:
kubectl logs -n argo deploy/workflow-controller | grep ${workflow}

`
time="2021-12-10T18:04:57.611Z" level=info msg="Processing workflow" namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.619Z" level=info msg="Updated phase  -> Running" namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.635Z" level=info msg="Skipped node memoized-simple-workflow-7g9dw initialized Error (message: error updating last hit timestamp on cache: configmaps \"my-config\" is forbidden: User \"system:serviceaccount:argo:argo\" cannot update resource \"configmaps\" in API group \"\" in the namespace \"argo\")" namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.635Z" level=error msg="error in entry template execution" error="error updating last hit timestamp on cache: configmaps \"my-config\" is forbidden: User \"system:serviceaccount:argo:argo\" cannot update resource \"configmaps\" in API group \"\" in the namespace \"argo\"" namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.635Z" level=info msg="Updated phase Running -> Error" namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.636Z" level=info msg="Updated message  -> error in entry template execution: error updating last hit timestamp on cache: configmaps \"my-config\" is forbidden: User \"system:serviceaccount:argo:argo\" cannot update resource \"configmaps\" in API group \"\" in the namespace \"argo\"" namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.636Z" level=info msg="Marking workflow completed" namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.636Z" level=info msg="Checking daemoned children of " namespace=argo workflow=memoized-simple-workflow-7g9dw
time="2021-12-10T18:04:57.646Z" level=info msg="Workflow update successful" namespace=argo phase=Error resourceVersion=944 workflow=memoized-simple-workflow-7g9dw
`

# If the workflow's pods have not been created, you can skip the rest of the diagnostics.

# The workflow's pods that are problematic:
kubectl get pod -o yaml -l workflows.argoproj.io/workflow=${workflow},workflow.argoproj.io/phase!=Succeeded

# Logs from in your workflow's wait container, something like:
kubectl logs -c wait -l workflows.argoproj.io/workflow=${workflow},workflow.argoproj.io/phase!=Succeeded

Message from the maintainers:
Impacted by this bug? Give it a 👍. We prioritise the issues with the most 👍.

We should consider adding update configmap permission to the manifests. Memoization is a great feature and I don't see any harm adding this one additional permission on configmaps, especially given that this is a permission that the controller needs for a supported feature. WDYT? @alexec

Not sure about adding update configmaps permission. Weakens security posture by giving permission we don't always need.
Instead, I wonder if we should use a different database for memoization.

Instead, I wonder if we should use a different database for memoization.

Separate issue to track that https://github.com/argoproj/argo-workflows/issues/3587


'hist': improved subsampling

The current subsampling approach used in xgboost is;

computationally inefficient.
highly dependent on the seed; specifically, certain seeds could lead to massive oversampling/undersampling.
unaligned with the documentation; specifically in the parameters section of the docs it (incorrectly) states;

"subsample [default=1]
subsample ratio of the training instance. Setting it to 0.5 means that XGBoost randomly collected half of the data instances to grow trees".
I would like to replace the approach with an approach that doesn't suffer these drawbacks; in particular I think it should be possible to apply the following idea;

do one step of a Fisher-Yates shuffle.
calculate the statistics of the first subsampled point.
if the hessian is positive then include this point as a datapoint.
repeat.

This will avoid the need to calculate and query the statistics for each datapoint; thereby reducing a, per tree, O(number of datapoints) operation to a, per tree, O(subsample size) operation.
I've already added some code in this pull request which implements the Fisher-Yates shuffle. However, elsewhere, the code still needs to be changed so that the statistics (the hessian and gradient) aren't calculated for each datapoint and only calculated on the fly to get the indices that are part of the subsample.
I need help- from someone who knows the codebase in depth- for this last part because I'm not 100% sure on where/how best to do this (@khotilov @hcho3).

I don't really see a problem with the current sampling scheme. The current scheme selects very close to the same number of instances with very high probability. It's also almost certainly faster than shuffling due to cache effects. Subsample selection is also not a bottleneck in my recent benchmarks.
I can see a use case for subsampling before gradient calculation to avoid redundant work at gradient calculation time. Even then the gradient calculation is just  not that significant, particularly if avx is enabled.

The current scheme selects very close to the same number of instances with very high probability.

Agreed, this is probably a non-issue.

It's also almost certainly faster than shuffling due to cache effects.

I'm no computer scientist, but I doubt this very much. The cost from the extra random number generation- which is also probably not entirely cache friendly- is almost certainly more than the cost from the extra cache misses.

Subsample selection is also not a bottleneck in my recent benchmarks.

I don't doubt this. However, why, for instance, query 1 million points 200 times when you only want 50 000?
On a side note, I'm not sure why points with negative hessians are excluded. I'm not convinced that such points are detrimental to fitting.

I suggest timing things before optimising to challenge your assumptions.

Unless I'm missing something major, the following code demonstrates that there is an inefficiency in subsampling in xgboost- subsampling should be slightly more computationally costly, not ~20 times more;
import numpy as np
import xgboost as xgb
import sklearn.datasets as dset
import time
np.random.seed(12345)
# 1 million datapoints with a 5% subsample.
subsample = 0.05
n = int(1e6)
n_round = 100
param_sub = dict(
max_depth=6, eta=1, silent=1,
objective='binary:logistic', subsample=subsample
)
param = dict(
max_depth=6, eta=1, silent=1,
objective='binary:logistic', subsample=1.0
)
m = 10
ts_sub = np.empty(m, dtype=np.int64)
ts = np.empty(m, dtype=np.int64)
for i in range(m):
`# generate dataset.`
`Xtrain, ytrain = dset.make_classification(n)`
`dtrain = xgb.DMatrix(Xtrain, label=ytrain)`

`# train on all data with subsampling.`
`t0 = time.time()`
`bst = xgb.train(param_sub, dtrain, n_round)`
`t1 = time.time()`
`ts_sub[i] = t1 - t0`

`# get subsampled data.`
`idxs = np.random.choice(np.arange(len(Xtrain)), size=int(subsample*n), replace=False)`
`Xtrain, ytrain = Xtrain[idxs], ytrain[idxs]`
`dtrain = xgb.DMatrix(Xtrain, label=ytrain)`

`# train on subsampled data.`
`t0 = time.time()`
`bst = xgb.train(param, dtrain, n_round)`
`t1 = time.time()`
`ts[i] = t1 - t0`

av = np.mean(ts)
std = np.std(ts)
av_sub = np.mean(ts_sub)
std_sub = np.std(ts_sub)
print('Average time taken for all data with subsampling: {} +- {}'.format(av_sub, std_sub))
# I get with 4 cores; 123.1 +- 1.758
print('Average time taken for subsampled data: {} +- {}'.format(av, std))
# I get with 4 cores; 5.1 +- 0.539

Training on a preselected sample of a dataset is not the same thing as training on the full data set with sub sampling. With subsampling a new sample is selected at each boosting iteration.
Closing for now, we can reopen if you want to do more work on this.


Add puma support

Puma itself has hot restart feature, so there is no big advantage to
manage puma under server starter.
However, this makes us possible to manage process with daemontools
way as svc -h and svc -t to gracefully restart. daemontools does not
support USR1, sigh...
Also, this enables us to respawn puma process with new ruby or new
bundler because server starter can newly create a master process of
puma gracefully.
MEMO: By the way, puma manages its child processes with a manaster
processs whose pid id not changed unlike unicorn server.

More https://github.com/sonots/ruby-server-starter/commit/09a709f915238ae344f9f7e145ffefd27d1f7a7e


Build validation through Github Actions

Hey! I did a bit of research on how to use Github Actions with Windows C# projects. With this change, every push on every branch will be validated to make sure it builds. Example of this build passing
There are several ways this change can be expanded on or changed. For example:

Only run the build on commits to master and pull requests
Create a Github Release for built artifacts on master
Create a Github badge in the README that reflects the status on master

I would be happy to follow up on this change if any of the above is appealing.
Cheers!

Hey Scott. Thanks for the PR! CI for build validation is something I've been meaning to get around to for a while. The real challenge is doing this for more than just the base repo.
As of right now, deploying artifacts is a no-go simply due to the structure of the RTC (all the varying clients and the software being useless without a client).  To try and manage making deploying all the different clients feasible, we have the RTC launcher, and while build validation through CI is nice, I don't think that, as the project stands, deploying on Github is viable.
  Because of this, the version of the launcher we host is actually a bit outdated and then self-updates when you download the latest version of the RTC. If we were to always deploy the latest version, we'd be resetting our trust score, so that's also not something we want to deploy artifacts of.
What it comes down to is the project would need a lot of restructuring to have proper CI with artifact deployment and the such. Currently, the build pipeline is still mostly manual. This is because of the sheer number of different build system required to build all the emulator implementations.

The core RTC and Bizhawk are plain old .Net Framework sln projects
Dolphin is MSVC2019 sln
PCSX2 is MSVC2017  sln (and requires a bunch of external deps you have to manually set up)
MelonDS is MSVC2019 Visual Studio cmake (
Citra is MSVC2019 sln generated from external cmake (doesn't work with VS's integrated cmake)

I'm all for the CI for build validation, but since the RTC has so many components to coordinate, deploying artifacts through github isn't an option as of right now.   Since there's no real harm in using the CI for purely build validation, I'll merge this in. If you're up for chatting more, we're over on the RTC discord. https://discord.corrupt.wiki/


Update docs for "Organizing information with collapsed sections" to include GitHub Pages support

Code of Conduct

[X] I have read and agree to the GitHub Docs project's Code of Conduct

What article on docs.github.com is affected?
https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/organizing-information-with-collapsed-sections
What part(s) of the article would you like to see updated?
The sample Markdown displayed in the article will fail to render properly on a GitHub Pages website generated with Jekyll:

Tips for collapsed sections

### You can add a header

You can add text within a collapsed section.

You can add an image or a code block, too.

```ruby
   puts "Hello World"
```

Problem: This Markdown will result in the Jekyll renderer (Kramdown or GHMarkdown) treating all content in the Markdown file after the first  tag being rendered as plain text.  The webpage will hide the plain text in a collapsible section.  If the user clicks on the text in the  tag on the GH Pages webpage, it will expand revealing the plain text from the source Markdown file in the GitHub repo.
Solution: Adding a markdown="1" attribute to the  tag and a markdown="span" attribute to the  tag will solve this issue.
I discovered the solution in this issue from the Kramdown repo: https://github.com/gettalong/kramdown/issues/155#issuecomment-1024896918
I propose either the sample in the document be updated as per the block below, OR a note added afterwards calling out this scenario when GH Pages is used with your Markdown.

Tips for collapsed sections

### You can add a header

You can add text within a collapsed section.

You can add an image or a code block, too.

```ruby
   puts "Hello World"
```

Additional information
To reproduce the issue:

Create a Markdown file with the content from the sample snippet from this page in the docs
Enable GH Pages to render a site from the branch where your Markdown file is.
View the corresponding HTML page in the GH Pages site.

@jrzyshr Thanks so much for opening this issue! I'll get this triaged for review ✨

Hi @jrzyshr—many thanks for opening an issue and explaining in such detail.
The documentation under https://docs.github.com/en/get-started/writing-on-github/ concerns writing on GitHub itself (that is, issues/comments/PRs etc.) and so I wouldn't necessarily expect the sample Markdown on that page to render without any modifications on a GitHub Pages site. There may very well be something we can do to make this clearer, but I just want to make sure about expectations here, in case you're seeing another use case I've missed?

@subatoi you wrote: "I wouldn't necessarily expect the sample Markdown on the page you highlighted to render without any modifications on a GitHub Pages site."
I would!  Since GH Pages is a feature of GH and its main purpose is to render documentation for repo contents, it would make sense to support this common use case.
I accept that Markdown may render different or need modifications to render on GH Pages. However, this should, at a minimum, be called out in the official GH doc I filed this issue on.
I manage a repo of hackathon content here: What The Hack. We started adopting collapsible sections as it made it easier to document how to use GH Codespaces across all of our hackathons.  When I discovered that the  &  tags broke our GH Pages website (which is what students use), it took multiple days of searching online to come across the solution, buried deep in the comments of an issue opened in 2014!   That was not a good experience.
If the solution I covered above were on the official GH docs page for how to handle collapsible sections, it would have saved much time and aggravation. :)
Let me know if you need more support to make this change.

@jrzyshr Many thanks for your thoughts and elaborating so clearly: we really appreciate it.
Technically speaking, we don’t disagree with your interpretation, but we need to think about this in terms of how we manage the content, and think about it in terms of which specific GitHub feature each section is dedicated to. We don’t always get the language perfectly correct, but in this case, we specifically think of “GitHub” as “github.com” in the context of what’s under https://docs.github.com/en/get-started/writing-on-github
In order to try to account for the issue you’ve highlighted here, we’d instead add a note with some information to the Pages documentation (that being what lives under https://docs.github.com/en/pages). We’re happy to discuss where best to put that, and you or anyone else is welcome to open a pull request with the changes once that’s agreed.

@CBID2 As soon as this issue is ready to be worked on, we'll be sure to put the help wanted label on the issue to notify you and any others who may want to contribute 💛

Great @nguyenalex836! 😄

To follow up: we discussed internally and we'd suggest https://docs.github.com/en/pages/getting-started-with-github-pages/about-github-pages#static-site-generators as the place to add the note.
I'll leave this open for a few days in case of alternative or expanded suggestions, else we'll go ahead and open this to contributions (with the help wanted label) next week.

it would have saved much time and aggravation.

Yes, for me too. :cry:

@jrzyshr

FYI @subatoi from previous PRs this stance is not consistent as I recall a Pages/Jekyll-specific (pages-gem dependency-specific bug-related to be exact) content being included before: #31639
I have used similar distinction as you point out https://github.com/github/docs/pull/31639#pullrequestreview-1898862210 — not that I'm against, or necessarily for documenting exceptions to downstream behaviour, it's just it should be clear and consistent, i.) for docs consumers generally, but in this case ii.) for contributors too, in a way style guide sets the level of consistency — the line between GFM/commonmark and their parsers (even when provided by GitHub Inc.), and the actual syntax used by GitHub.com (and GHES) should be clearly articulated: as the feature support differs. (Think mermaidJS or callouts, also mentioned in the linked PR review.)
I'm not upset, as some others are, about the (lack of) updates & features classic GH Pages generally receive in this decade, as I'm more than happy with the way the new Pages in Actions enable us to do what we like — it just feels everyone tiptoes around the fact. I believe once that's honestly stated somewhere, that the Pages dependencies are not receiving any new feature work and are only kept running for the millions already using it and secure in the state from its heyday couple years ago, there won't be as much confusion about the feature parity one would expect from seeing the rendered markdown on GitHub.com vs. deployed on GitHub.io by pages-gems.

@janbrasna Thank you very much for the thoughtful feedback 💛 We apologize for any issues the inconsistencies you outlined have caused. Our team will review your feedback, and discuss avenues to remedy this in the future.

@nguyenalex836 Oh there's no need to apologise, I believe everyone came here to try to share their onboarding experience to help improving it for others that may come across the same disparity, or to document their path taken to give the idea what might have been missing in the docs for them to succeed right away.
(The louder community/community discussions about the limitations were linked from e.g. https://github.com/github/docs/pull/31639#discussion_r1501410714 for reference, but they hopefully stay there;)…)

@jrzyshr Thank you for your patience while our team discussed the best path forward!

I accept that Markdown may render different or need modifications to render on GH Pages. However, this should, at a minimum, be called out in the official GH doc I filed this issue on.

Our team supports this idea, and will be handling this internally via a product callout for all the markdown docs.
Thank you again for raising a flag on this issue and your willingness to discuss this directly with us! I'll go ahead and close this issue 💛