Problem with renew token, when poor internet connection

When access_token expire I create refresh request with 30 seconds read timeout.
In some cases when internet connection poor server receive request, but I don't receive response, and server delete this token.
After i make 2nd request with old refresh_token, I don't get new credentials, instead I receive response: {"error":"invalid_grant"}, because this token was used in 1st request.
How can I solve this problem?
IdentityServer client config:
new Client {
         ClientId = "example-android",
         ClientName = "Example Android",
         AllowedGrantTypes = GrantTypes.Code,
         RequirePkce = true,
         RequireClientSecret = false,
         RequireConsent = false,

         RedirectUris = {"example callback"},

         AllowedScopes = {
           IdentityServerConstants.StandardScopes.OpenId,
           IdentityServerConstants.StandardScopes.Profile,
           IdentityServerConstants.StandardScopes.Email,
           IdentityServerConstants.StandardScopes.OfflineAccess,
           "example-web-api",
           "example-api"
         },
         PostLogoutRedirectUris = {"example"},
         AllowOfflineAccess = true
}

You can set the refresh token usage to re-use. This way you can use the refresh token more than once.

@leastprivilege thx, for answer, but I think this solution is not secure. Is any still solutions available?

no, sorry.

All set on this issue -- can we close?


Peer connections flapping

Background
Updated to 0.5.2-99-beta commit=queue/v1.0.1-23-g36cc1da8ea0eec6be4559c673bc07bd0ae9be66a
And started back up.  It can't seem to sync, and keeps disconnecting 10-20 peers every few minutes while 'applying gossip update'
Your environment

version of lnd : 0.5.2-99-beta commit=queue/v1.0.1-23-g36cc1da8ea0eec6be4559c673bc07bd0ae9be66a

which operating system (uname -a on *Nix) Rasbian

version of btcd, bitcoind, or other backend

Steps to reproduce
Start node
Expected behaviour
Runs normally
Actual behaviour
"Applying update" stalls for 10+ seconds... then spam of peer connections failing.
All of these peers were working find before the upgrade.  There seems to be an endless loop of trying to get the gossip... causes peers to disconnect... when reconnect tries to get gossip... which causes peers to disconnect.
It's like the gossiper is causing peers to time out... which is causing the gossiper to start over when the channel comes up and rinse/repeat.
2019-03-15 23:27:41.020 [INF] DISC: gossipSyncer(03abf6f44c355dec0d5aa155bdbdd6e0c8fefe318eff402de65c6eb2e1be55dc3e): applying new update horizon: start=2019-03-15 22:26:59 +0700 +07, end=2155-04-22 04:55:14 +0700 +07, backlog_size=21999
2019-03-15 23:27:55.228 [INF] DISC: Broadcasting batch of 905 new announcements
2019-03-15 23:27:55.336 [INF] PEER: Disconnecting <IP_ADDRESS>:9735, reason: unable to write message: write tcp <IP_ADDRESS>:43314-><IP_ADDRESS>:9735: write: connection reset by peer
2019-03-15 23:27:55.348 [INF] PEER: Disconnecting <IP_ADDRESS>:9735, reason: unable to write message: write tcp <IP_ADDRESS>:55744-><IP_ADDRESS>:9735: write: connection reset by peer
2019-03-15 23:27:55.360 [INF] PEER: Disconnecting <IP_ADDRESS>:9735, reason: unable to write message: write tcp <IP_ADDRESS>:39280-><IP_ADDRESS>:9735: write: connection reset by peer
2019-03-15 23:27:55.430 [INF] PEER: Disconnecting <IP_ADDRESS>:9735, reason: unable to write message: write tcp <IP_ADDRESS>:49280-><IP_ADDRESS>:9735: write: connection reset by peer

I closed the 5 channels that were flapping the most, and the problems disappeared.

The IP addresses you posted seem to belong to LNBig.com.
Do you observe this problem constantly? Or is it intermittent for some hours during the day?
Can you observe high load on your harddisk like in #2809?

It started just after upgrading, and persisted for 3 days straight, non-stop.  (I wanted to see if the "deprioritize gossip" helped with the out of memory problem.)
It wasn't the same channels each time, nor was it just the 5 posted.  But there were 5 channels that were flapping more than the others, and once I closed them, the rest stopped.
Wild guess: while applying new update horizon, my node stopped sending keep-alives, which caused the distant end to disconnect, and when they reconnected it flooded my node with updates which started the cycle all over again.
I wasn't checking HD I/O, but CPU was in the 75-100% range the entire time.

@ZapUser77 you can give this branch a spin https://github.com/lightningnetwork/lnd/compare/master...Roasbeef:net-stability?expand=1

Needs one more change, but these combined should address most of the current issues.

@Roasbeef I received an email that you posted here, but don't see the replies for some reason.
The link you posted is "to open a new pull request".
I don't know the syntax to pull your specific commit to my device.  If you can provide the exact pull command syntax, I can do that right away.

He wanted you to try out an experimental branch that greatly improves the current gossip issues, but there are some database changes that will change and we'd rather wait until they're done to have people actively test them.

Ok thanks.  Ya, my node is running on mainnet with real funds... so gotta say safe.  :)

I'm having a similar problem, with many of my peers unable to maintain open connections some reconnect some don't. The problem does seem to be worse at different times of day too, with overnight edt being much more stable (not really sure if that's coincidence or not.).
I see the same disconnect messages that @ZapUser77  was seeing and I'll see the number of peers I have open drop below the number of channels and many of my channels become inactive.
Restarting lnd generally reconnects to all channels for a short time but then they begin to fall off again.

@Roasbeef @cfromknecht my node is running e3c65e1a4935dbf9ba91cb326ea78b5161748dad which includes #2819 since 28th of march and the problem has not yet vanished.

I observe that at the same time the number of connected peers are reduced dramaticaly, my harddisk i/o is used by 100% writing data onto lnds partition, see graphs beneath. The CPU itself is mostly idle - only one is in state iowait during the times the disk io is maxed.

http://<IP_ADDRESS>/munin/localdomain/localhost.localdomain/diskstats_utilization-week.png

What does LND write during that times onto the harddisk that is never read again?


Support dependency excludes in module metadata

Adds support for publishing and resolving dependency excludes for variants published to Gradle module metadata. Dependency exclusions support group and module attributes, and multiple exclusions may be provided per-dependency. A * value for group or module represents a wildcard match.
In module metadata, a dependency exclude appears as:
"dependencies": [
    {
        "group": "g3",
        "module": "m3",
        "version": { "prefers": "v3" },
        "excludes": [
            {"group": "gx", "module": "mx" },
            {"group": "excluded-group", "module": "*" }
         ]
    }
]

@melix I addressed your comments and merged the PR. Feel free to suggest further improvements.


asyncData not work in dynamic component?

Version
v1.4.0
Reproduction link
https://github.com/nuxt/nuxt.js
Steps to reproduce
<template lang="pug">
div
  component(:is="componentActive")
</template>

<script>
import Update from '~/components/Update'

export default {
  components: {
    Update
  },
  data() {
    return {
      componentActive: 'Update'
  }
}
</script>

# Update.vue
<template lang="pug">
  el-dialog(width='30%', visible)
    //- something
</template>

<script>
  export default {
    async asyncData({ app }) {
      // not work
      console.log(app)
      // same
      const choice = await app.$axios.$get('a fine url')
      return { choice }
    },
    data () {
      return {
        choice: {}
      }
    },
    async created () {
      // ok
      this.choice = await this.$axios.$get(`a fine url`)
    }
  }
</script>

I want to use asyncData in dynamic component, but not work at all.
What is expected ?
to be normal
What is actually happening?
just not work

This bug report is available on Nuxt.js community (#c7185)

@ahDDD asyncData only works on pages not on any other components. That is also stated in the docs: https://nuxtjs.org/guide/views#pages

alright, got it


Parse error using 'yield' in an expression

The following code gives an Parse error. primary expression expected:
def test():
    r = 0
    while True:
        r = r + (yield r)

There is no error if it is changed to:
def test():
    r = 0
    while True:
        r = (yield r) + r

But this is compiled to
var test = function* () {
    var r = 0;
    while (true) {
        var r = yield r + r;
    }
};

So the parentheses are gone. This causes incorrect behavior.

Thanks!

Seems that CPython doesn't support (yield r) being evaluated as a value.
The CPython parser, which is also used by Transcrypt, doesn't catch this.
It is only caught at runtime it seems.
So CPython can't run the following:
def testYieldL (limit):
	r = 0
	while r < limit:
		r = (yield r) + r

for r in testYieldL (7):
	print (r)

It complains with:
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
The value of (yield r) seemingly is None.
So it seems Transcrypt shouldn't support these constructs as well, if it is to be compatible with CPython.
By the way, when trying to compile this fragment with Transcrypt, the parser complaining is Google Closure, translating JS to JS, not Transcrypt.
Would be nice if Transcrypt complained, but since even CPython doesn't at parse time, I think it's relatively hard to have Transcrypt improve on that.
My proposal is to drop this, as it is a limitation of CPython.
What do you think?

I think the problem with your example is that you don't send any value into the generator, but it needs an value (an 'int').
The following works in Python and will print values 1 and 3:
def test():
    r = 0
    while True:
        r = r + (yield r)

gen = test()
next(gen)
print(gen.send(1))
print(gen.send(2))

If I try to make the same for compiling to Javascript I would write:
def test():
    r = 0
    while True:
        r = r + (yield r)

gen = test()
gen.js_next()
console.log(gen.js_next(1).value)
console.log(gen.js_next(2).value)

but then I get the Parse error. primary expression expected.
If I change the generator in this example to:
def test():
    r = 0
    while True:
        r = (yield r) + r

it will compile. But it prints the values 2 and 4, instead of 1 and 3!
If I look to the generated javascript things get clear:
var test = function* () {
    var r = 0;
    while (true) {
        var r = yield r + r;
    }
};

The javascript generator is not as it should be:
var test = function* () {
	var r = 0;
	while (true) {
		var r = (yield r) + r;
	}
};

Kind regards,
Pieter Jan Bonestroo

Hi,
Thanks for your clear analysis and suggestions.
The parsing errors were easy to solve, but really I need some help with this...
If I run the following code
		var test0 = function* () {
			var r = 0;
			while (true) {
				var r = r + (yield r);
			}
		};
		var gen0 = test0 ();
		gen0.next ();
		console.log (gen0.next (1).value);
		console.log (gen0.next (2).value);
		var test1 = function* () {
			var s = 0;
			while (true) {
				var s = (yield s) + s;
			}
		};
		var gen1 = test1 ();
		gen1.next ();
		console.log (gen0.next (1).value);
		console.log (gen0.next (2).value);

on http://math.chapman.edu/~jipsen/js/ it prints:
1
3
4
5
While the following Python code
from org.transcrypt.stubs.browser import __pragma__
__pragma__ ('gsend')

def test0 ():
	r = 0
	while True:
		r = r + (yield r)

gen0 = test0()
next (gen0)
print (gen0.send (1))
print (gen0.send (2))

def test1 ():
	r = 0
	while True:
		r = (yield r) + r

gen1 = test1()
next (gen1)
print (gen1.send (3))
print (gen1.send (4))

used with CPython prints:
1
3
3
7
Could you help me understand what causes this difference between JS code and comparable Python code.

Example in iterators_and_generators testlet of transcrypt autotest.
Note the pragma, to enable a nice notation.
Only use that locally, since there may be different, user defined, send methods on other classes.
However since Python has dyn typing there's no predicting what a var may contain (roughly speaking).
__pragma__ ('gsend')

def test0 ():
	r = 0
	while True:
		r = r + (yield

gen0 = test0()
next (gen0)
autoTester.check (gen0.send (1))
autoTester.check (gen0.send (2))

def test1 ():
	r = 0
	while True:
		r = (yield r) + r

gen1 = test1()
next (gen1)
autoTester.check (gen1.send (3))
autoTester.check (gen1.send (4))

CPython and Transcrypt output are identical now.

In my opinion it should be possible for Transcrypt to compile
def test():
    r = 0
    while True:
        r = (yield r) + r

to
var test = function* () {
    var r = 0;
    while (true) {
        var r = (yield r) + r;
    }
};

Why is that not possible? Am I missing something?
I think the main problem is that Transcrypt omits the parentheses, causing either incorrect behavior or an parse error.
During compilation it should just copy the parentheses from the Python source to the javascript destination, right?
Kind regards,
Pieter Jan

Hi,
It all should work properly now, after yesterday's commit.
Can you confirm?
KR
Jacques

Hello,
I think your examples in the mail below are different. They both behave as expected to me.
You should have as javascript code (bold are differences from your code):
var test0 = function* () {
var r = 0;
while (true) {
var r = r + (yield r);
}
};
var gen0 = test0 ();
gen0.next ();
console.log (gen0.next (1).value);
console.log (gen0.next (2).value);
var test1 = function* () {
var s = 0;
while (true) {
var s = (yield s) + s;
}
};
var gen1 = test1 ();
gen1.next ();
console.log (gen1.next (1).value);
console.log (gen1.next (2).value);
This will print (as expected):
1
3
1
3
If you have this in Python you get (again, bold is different from your code):
def test0 ():
r = 0
while True:
r = r + (yield r)
gen0 = test0()
next (gen0)
print (gen0.send (1))
print (gen0.send (2))
def test1 ():
r = 0
while True:
r = (yield r) + r
gen1 = test1()
next (gen1)
print (gen1.send (1))
print (gen1.send (2))
And again you will see:
1
3
1
3
So I think there are no differences between javascript and python code.
Kind regards,
Pieter Jan Bonestroo

Van: Jacques de Hooge<EMAIL_ADDRESS>Verzonden: zondag 30 oktober 2016 16:34
Aan: QQuick/Transcrypt
CC: pjbonestroo; Author
Onderwerp: Re: [QQuick/Transcrypt] Parse error using 'yield' in an expression (#138)
Hi,
Thanks for your clear analysis and suggestions.
The parsing errors were easy to solve, but really I need some help with this...
If I run the following code
    var test0 = function* () {
        var r = 0;
        while (true) {
            var r = r + (yield r);
        }
    };
    var gen0 = test0 ();
    gen0.next ();
    console.log (gen0.next (1).value);
    console.log (gen0.next (2).value);
    var test1 = function* () {
        var s = 0;
        while (true) {
            var s = (yield s) + s;
        }
    };
    var gen1 = test1 ();
    gen1.next ();
    console.log (gen0.next (1).value);
    console.log (gen0.next (2).value);

on http://math.chapman.edu/~jipsen/js/http://math.chapman.edu/~jipsen/js/ it prints:
Online JavaScript Interpreter - Chapman Universityhttp://math.chapman.edu/~jipsen/js/
math.chapman.edu
Comment // this is a one-line comment /* this comment could contain linebreaks */ Constant: numbers 12.3 and strings "hi", "hi".charAt(0) is "h" Variable
1
3
4
5
While the following Python code
from org.transcrypt.stubs.browser import pragma
pragma ('gsend')
def test0 ():
r = 0
while True:
r = r + (yield r)
gen0 = test0()
next (gen0)
print (gen0.send (1))
print (gen0.send (2))
def test1 ():
r = 0
while True:
r = (yield r) + r
gen1 = test1()
next (gen1)
print (gen1.send (3))
print (gen1.send (4))
used with CPython prints:
1
3
3
7
Could you help me understand what causes this difference between JS code and comparable Python code.

You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHubhttps://github.com/QQuick/Transcrypt/issues/138#issuecomment-257158091, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AE3-6ctFxxFB6mBJ9KvHISvvfMSbzI5Sks5q5LkOgaJpZM4KjKAL.

Hi Jacques,
Yes, I can confirm! Thank you very much!
I really like Transcrypt and will definitely continue using it.
Kind regards,
Pieter Jan

Glad to hear that!
If you ever make something publicly accessible that we can link to from the site as a showcase, please let me know.
KR
Jacques


⚠ DDoS-Relay EU-C-fsn1-1 has degraded performance

In 99f51da, DDoS-Relay EU-C-fsn1-1 (http://<IP_ADDRESS>:42069/;csv) experienced degraded performance:

HTTP code: 200
Response time: 2205 ms

Resolved: DDoS-Relay EU-C-fsn1-1 performance has improved in 78e6f3b after 1 hour, 3 minutes.


Add support for balancing traffic across multiple providers

We'd like to use Traefik in a setup where traffic can be balanced between multiple providers simultaneously.
Specifically, we maintain both a Marathon and Kubernetes cluster and have deployed certain applications whose traffic should be split between the two. We are primarily looking after even distribution (i.e., equal weights) but could imagine giving priority to one over the other as well.
I already touched on the subject in Slack and got some feedback from @emilevauge that Traefik currently does not support what we have in mind. I'd be happy to dive into the code and add support.
Here's a number of questions I came up with:

Are there any general concerns regarding my proposal? Things that we could address up front?
What kind of matching rule should we devise that tells Traefik two frontends from different providers should share their backends? For our specific use case, we've been thinking of matching frontend routes implicitly (e.g., equal set of hosts / paths / headers / etc.). This looks like a reasonable default, though I could imagine another explicit switch on top (like a configuration setting marking providers that are eligible for sharing, or maybe even something on the frontend level).
Somewhat related to the previous question: Do we need to make sure we don't break (or surprise) existing clients when the feature lands, especially if the matching occurs implicitly?

I have already been pointed at loadConfig() and started to think about how it'd have to be modified. It's fairly lengthy and complex and took me a while to grasp though, so I'd keen on refactoring it a bit for the better. However, I could not find any tests that would make sure I don't break anything. Did I miss those?
Thanks.

We're evaluating using traefik but our use case is a bit simpler.  I want to use our service discovery system (Sidecar as the backend provider, however, since front end configs are out of scope for service discovery I'd like to use etcd for that piece.
I'm only now diving into the code so can't speak to a proper design for this feature; just thought I'd add our use case to the issue.

@emilevauge @vdemeester @errm and others: any opinions on my request, and in particular my questions?
I'd like to start working on a PR soon and want to make sure I'm moving in the right direction.

@bparli It sounds to me like you're looking into writing a custom provider: One that uses Sidecar to determine the set of backends and etcd to get a (static?) set of frontends. To my understanding, the result of that would still be a Configuration map eventually ending up at listenConfigurations(), thereby be subject to the same cross-provider balancing rules this issue is about to define.
Did I get that correctly?

@timoreimann yessir, thats what we're aiming for

I had another look at the part of the code base relevant for this feature request: As it turned out, at least a hard preference towards one particular provider is already possible if frontends match in both the path and host components, and a proper frontend priority is assigned. This is probably going to be good enough for me as we are only going to need this feature during a transition phase from one container management system (Marathon) to a new one (Kubernetes).
@bparli and other issue subscribers: Is the more generalized cross-provider routing/balancing feature request still desirable to you? Shall we keep the issue open or not?

Thats good enough for us too @timoreimann .  Closing the issue is fine by me

Thanks @bparli 👍
Closing for now. If anyone feels this should be reopened, please comment.


Find library filter type check

There is only one type check for the filters in the find library apart from the inBox function which seems to do it properly. line 34 - find.lua
And the level is set to 1 in the type check but it doesn't lead to a helpful error message:
addons/starfall/lua/starfall/instance.lua:37: Type mismatch (Expected function, got table) in function func
It should say something like:
generic:4: Type mismatch (Expected function, got table) in function all
I'd also suggest changing the description of the filter to mention the parameter of the filter function

Unrelated, but is the find cooldown necessary? I've always wondered that. I think the cpu quota is fine good enough.

@Jazzelhawk Is this issue resolved? If so, please close.


rabbitmq_management block is created twice.

Following this commit 8f75ff5cfea7945a0d6a4074184a7279a81349d4, if one
use this simple manifest:
class { 'rabbitmq':
    admin_enable   => true,
    service_manage => true,
}

Then two blocks of
{rabbitmq_management, [
]}

gets created.
The problem is that only the parameters of the first block is taken into
account.
Furthermore the /first/ block is always created.  The template has:
+<% if @config_management_variables -%>,
+  {rabbitmq_management, [
+    <%= @config_management_variables.sort.map{|k,v| "{#{k}, #{v}}"}.join(",\n    ") %>
+  ]}
+<%- end -%>

and config_management_variables is set to {} with is not false.
This is an attempt to fix this and keep the same behavior.

Nice catch, thanks for the quick fix.


Example code not work

Hi,
i try to use this simple code in derivable 2.0.0-beta.3, i take this code from documentation
import { derive, atom, setDebugMode } from "derivable"
setDebugMode(true)

const x = atom(4)
const times = (a, b) => a * b
const xTimesTwo = x.derive(times, 2)

console.log(xTimesTwo.get())

but result is NaN
until version 2.0.0-beta.1 this code work fine

Additional arguments support was removed. Use function scope instead.
https://github.com/ds300/derivablejs/commit/371012e9e12358fb6ee936a0b287b6ff8689868f

const x = atom(4);
const times = (a, b) => a * b;
const xTimesTwo = x.derive((x)=> times(x,2));

in this way

Yep, this way.

also if i preferer old way!!
Thanks.

Docs is a bad side of this project. If you would like to help with it I'm open for questions.


Samples inputbox doesn't work

'dom.focus': () => ({'dom.action': node => node.firstElementChild.focus()})
Node is undefined.
I'm not into the graflow library so I don't know how the Memorizer is supposed to have any information about the node, but the memory is undefined (node = _ref.memory; //=> undefined)

It seems something about Snabbdom and create hook. If I change line 10 of inputbox example by this one:
  view: text => ({tag: 'div.x', content: [

it seems to work OK.
I have to spend more time debugging this issue. I'll try to fix it soon.
Thank you kritollm.

I think it's a Snabbdom issue so I've created this:
https://github.com/snabbdom/snabbdom/issues/268
Until it will be solved, it's better to use target option for run. So insted of: run(InputBox), use run(InputBox, {target: 'app'}. You have to add

 to the html file.
Well, I'll make these changes in the next cyclow release (very soon). I'll close this issue then.

Fixed in cyclow 0.5.3!
I've changed create hook by updatehook, as TylorS suggested (from Snabbdom issue).
I close this issue. Thank you, @kritollm.


feat: add moniker and valoper address to signatures query

Overview

Checklist

[ ] New and updated code has appropriate documentation
[ ] New and updated code has new and/or updated testing
[ ] Required CI checks are passing
[ ] Visual proof for any user facing features like CLI or documentation updates
[ ] Linked issues closed with keywords

Summary by CodeRabbit

New Features

Introduced new information display for validators, including monikers and operational addresses.
Added functionality to query the full list of network validators and their corresponding EVM addresses.

Enhancements

Improved the output of confirmation logs to include validator monikers and operational addresses.

Codecov Report
Attention: 20 lines in your changes are missing coverage. Please review.

Comparison is base (7680a24) 26.13% compared to head (5506b8c) 25.92%.
Report is 1 commits behind head on main.

Files
Patch %
Lines

rpc/app_querier.go
0.00%
20 Missing :warning:

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #627      +/-   ##
==========================================
- Coverage   26.13%   25.92%   -0.21%
==========================================
  Files          29       29
  Lines        3019     3043      +24
==========================================
  Hits          789      789
- Misses       2135     2159      +24
  Partials       95       95

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


feat(download): Implement download functionality

🚀 Changes proposed by this PR
This pull request implements the Download feature, adds example files demonstrating its usage, and updates the README to include these examples.
🧰 Type of change

[x] New feature (non-breaking change which adds functionality).

🤝 Requirements

[x] ✍ I have read and agree to this projects Code of Conduct.
[x] ✍ I have read and agree to this projects Contribution Guidelines.
[x] ✍ I have read and agree to the Developer Certificate of Origin.
[x] 🔎 I have performed a self-review of my own changes.
[x] 🎨 My changes follow the style guidelines of this project.

[x] 💬 My changes as properly commented, primarily for hard-to-understand areas.
[x] 📝 I have made corresponding changes to the documentation.

Hi @lrstanley,
I hope you're doing well!
I wanted to follow up on this pull request. Is there any feedback or suggestions you might have? I'm happy to make any necessary changes to get this merged.

I haven't had a chance to fully review and test the code, however, a few initial thoughts:

If at all possible, we should allow other output (e.g. print-json), if yt-dlp supports printing both. The idea would be similar to the way we intercept JSON output on a line-by-line basis (only for lines that match JSON), we could update the progress as we see something that matches a valid progress line. We would also skip the logic completely if no progress function is provided.
I'd prefer Download() instead be turned into a builder function, something like SetProgressFn(<function-which-receives-progress>), where Run() still invokes the download, that way there aren't two different ways of invoking yt-dlp. It would also be good to ensure that the documentation for the SetProgressFn(), if it has to set or disable some specific flags, that those are explicitly called out in the comment.

I agree, using a Builder function would make this much cleaner.
Regarding the simultaneous printing of JSON and progress, it seems yt-dlp currently doesn't support this. Enabling any JSON printing options prioritizes JSON output and skips the actual download. However, it only makes sense to unset those flags in the Download() method.
I'll look into it and keep you updated.

@lrstanley I've finished the new implementation. Here is a summary of the changes:

The progress callback can be set by invoking the SetProgressFn method.
The code now supports handling both single and multiple download progress.
It tracks playlist progress by adding PlaylistCount and PlaylistIndex to the DownloadProgress struct.
It stores the download results.

Please review the changes and let me know if any further modifications are needed.

regarding concerns around the consistency and safety of value parsing in our current implementation. I’ve implemented a new template encoding system that ensures safe parsing and formatting.
Key improvements:

Template Encoding (Marshal/Unmarshal): Provides a standardized and reliable way to handle ytdlp output, preventing potential parsing errors and improving consistency.
Template Formatter: Allows for flexible modification of output values before casting, enabling greater control over data manipulation.
Extensive Testing: Given the critical role of template parsing, I've thoroughly tested the new code to ensure its reliability.

@lrstanley, Just checking in on this PR. I submitted it last week and would love to get your feedback whenever you have a chance.

I am not confident at this point if the solution you've proposed is in fact better. From initial glance, feels much more complicated than required. I simply haven't had the time in the past couple of weeks to look into it further.

No worries about the delay – I get that things can pile up and it takes time to properly review changes.
I've decided to forge ahead on my fork for now. This lets me implement and test changes at the pace I need.
Your repo has been a solid starting point. I appreciate the work you've put into it.

@SaeidRp @eos175 -- unless I'm missing something, which includes the implementation in this PR and the one you have @eos175 in your repo, yt-dlp supports outputting JSON and progress, including still doing the download?
Was testing this with the latest release, and it:

downloads the file
outputs the necessary JSON
outputs progress in the format that I asked.

Am I missing something as far as that limitation?

        ProgressTemplate(`dl:%(progress.total_bytes)s,%(progress.downloaded_bytes)s`).
        ProgressDelta(float64(delta.Seconds())).
        Newline()
    c.mu.Lock()
    c.fun = fun
    c.mu.Unlock()
    return c
}

Using the print-json flag will not interrupt the download (if I recall correctly), but dump-json does.


Is something wrong I am doing?

HI @curiores
This is a wonderful program and a great idea.
I like your program very much.
But I have a problem

here you see 3 frequency components
As I coded Arduino as this
xn = sin(2PI2t) + 0.2sin(2PI50t) + 0.8sin(2PI30t) + 0.5sin(2PI100*t);
But up to 90Hz whatever frequency I used in the formula it is showing correct but if it crosses 90 degrees it kind of warp
See here I used  xn = sin(2PI2t) + 0.2sin(2PI150*t);

but when I used 120 it not worked

when I use 100 it worked

Shouldnt I use frequencies like that?
Am I missing some very basics of trigonometry?

There's nothing wrong with those frequencies, but the sample rate you're using can't support them. If your sample rate is too low, you won't pick up the correct frequencies, you'll pick up aliasing (like when we see a car wheel spinning backward). On an Arduino, your sample rate is limited by how quickly your loop function runs. If you can get your sample rate higher, there won't be an issue. The easiest way to do that is crank up the baud rate. I think the maximum for Arduino is 115200.

Thank you @curiores for two things.

Quick response.
I Really always admire your explanation, Very crisp and straightforward. Your clarified my doubt with just one word "aliasing"

Thank you.
So I will change the slow Arduino with a powerful controller to generate proper time sampling to get all frequencies measured.
can software handle 2Mbps? I am sure it does... but will check.
Forgot to mention :
just removing the 3 times condition in code and achieved frequency analysis up to 150Hz, That is quite enough with a simple setup like Arduino
xn = sin(2PI2t) + 0.2sin(2PI10t) + 0.4sin(2PI20t) + 0.6sin(2PI30t) + 0.8sin(2PI50t)+ 0.2 * sin(2PI80t)+ 0.5* sin(2PI120t) + 0.8 * sin(2PI150t)

.
Thank you again.
You earned a subscriber

Hi @chaitanya-smartrotamac,
I didn't test the maximum data stream the software can handle. It's written in JS libraries so to be fair it's not exactly the most performant software. If I recall correctly I added some options in there that can slow the visual updates without actually slowing the data stream. The main performance issues I noticed was when a lot of graphical stuff was updated too often.
Looks good! Yeah if you put a delay in there it's going to restrict the sample rate.
Glad it helped. You asked the question with clarity and specificity, so you earned the quick response.


⚠ Bofrost.de has degraded performance

In 8e3d6f4, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1375 ms

Resolved: Bofrost.de performance has improved in 6741a8d after 9 minutes.


Update README.md

remove grammatical mistakes

I am a GSSOC participant. Please check my pull request

Done. Please check

Please check my pull request

@KajalSinghBAGHEL Pl. resolve the conflicts

DONE


Migrate Modal component tests from Enzyme to React Testing Library

Description
This issue is related to refactoring the Modal.test.tsx file.
We've recently been migrating our tests from Jest + Enzyme to Jest + testing-library/react to support a full migration to React 18.
You may refer to this previous PR beginning the migration for code examples - https://github.com/dcos-labs/ui-kit/pull/771.
Acceptance Criteria
Refactor the test to use React Testing Library instead of Enzyme (which is no longer supported with React 18).
More information: Migrate from Enzyme
How to Contribute
Please review the contributing documentation beforehand.
Steps to Contribute:

Fork the repository.
Clone it to your local system.
Create a new branch.
Make your changes. Make sure that tests are still passing. To update snapshot tests, run npm run test -- -u and include the updated tests in your commit.
Commit your changes.   For example, refactor: <component_name> tests.
Push up your changes. In GitHub, click the compare & pull request button to begin drafting your pull request.
Fill out the pull request form and attach the "ready for review" label when complete.

Can I work on this issue?

Absolutely, thanks @deek121477.

Absolutely, thanks @deek121477.

Thanks!!

Hi @deek121477 are you able to create a pull request for these changes soon? Hacktoberfest will be coming to a close soon. Please let us know if you need any help.

Hi @deek121477 are you able to create a pull request for these changes? Hacktoberfest will be coming to a close soon. Please let us know if you need any help.

Yes. I'm working on it. I will need few days.

Yes. I'm working on it. I will need few days.
No problem, thanks for the update. I wanted to make sure you get the Hacktoberfest credit. 😄

Apologies @deek121477 but we've now done this work as it became a blocker. We need to finish our refactors to react testing library for work to update to React 18 happening in our current sprint. There will be other opportunities to contribute in the future, we welcome your contributions. Cheers!


fix animeSearch endpoint

Self explanatory, I think you miss this one.

Thanks, @exzork ! Was an error from my part.
This is available in v2.0.1


Updating Item, Action and Participant sections

The Item modifications are not done in this.

I am updating so we can see where we are.


Update nginx version to 1.14.0

@dataich I don't think it's necessary to review this change, but just in case I'd like to ask you to review.
Please let me know if you have any questions or concerns.
Thank you!

Thanks! @dragon3


Postgresql front end

Thanks for the issue, i would love to do this, any other thoughts you have on what you would hope to see in it would be great.

Not many :P I was looking forward keeping mysql and postgresql applications living in the same shared database, integrating both would allow me to do some things. And having something like cassandra on the back end would allow for horizontal scaleability, so it would be a win-win.
Not that I'm doing anything serious, just some minecraft server stuff. But I hope to learn some sysops, mastering Docker while fighting creepers, cool huh?


[feature] Add setVolume method for remote track

Is your feature request related to a problem? Please describe.
Currently I can only subscribe and unsubscribe to/from an audio track which may be inconvenient if one of the participants is too loud or too quite.
Describe the solution you'd like
Implement setVolume method for remote audio track similar to JS client where you can control the audio volume level locally:
https://docs.livekit.io/client-sdk-js/classes/RemoteAudioTrack.html#setVolume
At least it look like it is how it's done for web according to the implementation which uses GainNode:
https://github.com/livekit/client-sdk-js/blob/07566556ce593ca82f66bee1cc5329ff512f60c2/src/room/track/RemoteAudioTrack.ts#L42
Describe alternatives you've considered
Change audio level at backend. But this audio level change will be for all of the participants which is not good. Maybe insertable streams would help when they are implemented.
Additional context
I'm trying to stream music to a room from files but I want all of the participants to adjust the audio level of this "player participant" locally.

Any suggestions& Is it possible to implement? It would be very helpful.

Same request

After some digging I was able find a way to do it. As it turns out there is a class Helper in the main dependency flutter_webrtc. And one can change the volume of remote participant like this:
final desiredVolumeLevel = 0.7;                             // Some new audio level
final firstAudioTrack = participant.audioTracks[0];         // Get first audio track of participant
Helper.setVolume(desiredVolumeLevel, firstAudioTrack.track!.mediaStreamTrack);

But there is a catch. It only works with Android. On iOS it doesn't work because of this issue. Since this issue wasn't addressed the problem still persist. At the same time I can confirm that the root of the problem mentioned in the issue thread is indeed correct, since I've tried the proposed "solution" and it worked: I was able to change the volume of remote participant on iOS device.
@cloudwebrtc @hiroshihorie since it looks like you are one of the main contributors to the flutter-webrtc project, can you please address this issue and fix it in the future version of the package or provide appropriate hotfix. Thanks in advance.

It turns out that there was updated recently (~2 weeks ago) to version 0.9.25 and the issue was fixed. The latest livekit sdk version for flutter (1.2.2) bumped the flutter-webrtc dependency up to version 0.9.25 so the issue with iOS is gone.
@acgacgacgacg you can use the snippet from the comment above to control the volume level of the remote participants with the latest version of livekit client.
@hiroshihorie @cloudwebrtc although the issue can be closed, it would be nice to have setVolume method for a track the same way it has methods for mute/unmute. Would it be possible to add in the future livekit client versions?

@Parfyonator
Thanks for your help.
Have you figured out how to get the audio level, i.e. the volume?
The RemoteParticipant.audioLevel is always 0.


fix(anvil): ensure typed tx supported based on hardfork

Motivation
Closes #4386
ensures current hardfork supports typed transactions.

Solution
add check to eth_sendRawTransaction.
wdyt @michprev

thanks for the review.
fixed eip2930 issues and integrated in other eth_send calls

Please also address this one:
is_eip2930 should return true for berlin or later.
https://github.com/mattsse/foundry/blob/581e059216b36c3e93d70504b0bf3725e25b3ca7/anvil/src/eth/backend/mem/mod.rs#L466-L469
So it should be:
    /// Returns true for post berlin
    pub fn is_eip2930(&self) -> bool {
        (self.spec_id() as u8) >= (SpecId::BERLIN as u8)
    }

Also the comment https://github.com/mattsse/foundry/blob/581e059216b36c3e93d70504b0bf3725e25b3ca7/anvil/src/eth/backend/mem/mod.rs#L479
should be:
/// Returns an error if EIP2930 is not active (pre berlin)

fixed


Rename src directory to lib

This restores backwards compatibility with versions before 0.18 if you were importing sub-packages directly, e.g. lib/query/builder. This technique is used when mocking certain parts of the Knex API for testing other applications that use Knex.
Link to discussion: https://github.com/bookshelf/bookshelf/pull/1988
Note that there are no drawbacks to this change, other than breaking backwards compatibility again for people that could have used the same technique for versions 0.18.0-0.18.3, but considering this was released a couple of weeks ago this scenario is unlikely.
The idea here is to maintain the internal structure of the files available in the released build as in previous versions.

Please check also if documentation repo needs changes when it builds knex. Some stub requires might need fixing.

Will do.

I checked and I can't find any reference to /src in the docs. I tried building it and it seemed to generate the docs correctly despite this error:
Building docs for production
[docs-server]  /home/ricardo/src/knex-documentation/node_modules/babel-core/lib/transformation/file/index.js:558
[docs-server]        throw err;
[docs-server]        ^
[docs-server]
[docs-server]  SyntaxError: /home/ricardo/src/knex/lib/migrate/Migrator.js: Unexpected token (43:10)
[docs-server]    41 |       if (!knex.isTransaction) {
[docs-server]    42 |         this.knex = knex.withUserParams({
[docs-server]  > 43 |           ...knex.userParams,
[docs-server]       |           ^
[docs-server]    44 |         });
[docs-server]    45 |       } else {
[docs-server]    46 |         this.knex = knex;
[docs-server]      at Parser.pp$5.raise (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:4454:13)
[docs-server]      at Parser.pp.unexpected (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:1761:8)
[docs-server]      at Parser.pp$3.parseIdentifier (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:4332:10)
[docs-server]      at Parser.pp$3.parsePropertyName (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:4156:96)
[docs-server]      at Parser.pp$3.parseObj (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:4045:12)
[docs-server]      at Parser.pp$3.parseExprAtom (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3719:19)
[docs-server]      at Parser.pp$3.parseExprSubscripts (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3494:19)
[docs-server]      at Parser.pp$3.parseMaybeUnary (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3474:19)
[docs-server]      at Parser.pp$3.parseExprOps (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3404:19)
[docs-server]      at Parser.pp$3.parseMaybeConditional (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3381:19)
[docs-server]      at Parser.pp$3.parseMaybeAssign (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3344:19)
[docs-server]      at Parser.pp$3.parseExprListItem (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:4312:16)
[docs-server]      at Parser.pp$3.parseCallExpressionArguments (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3573:20)
[docs-server]      at Parser.pp$3.parseSubscripts (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3533:31)
[docs-server]      at Parser.pp$3.parseExprSubscripts (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3504:15)
[docs-server]      at Parser.pp$3.parseMaybeUnary (/home/ricardo/src/knex-documentation/node_modules/babylon/lib/index.js:3474:19)

I'll fix the conflicts now.

@ricardograca Thank you! I will be releasing 0.18.4 today, and after that will merge the PR to 0.19.0 if PR is ready.

Thanks! I just fixed the conflicts. You can ping me if there are more in the mean time.

Nope, seems to be just fine. I'll wait for CI to complete and then merge it. Thank you again!

Thanks! I didn't realize that was just an example in the UPGRADING.md file :sweat_smile:

There seems to be one error in the test suite when running in Node 8. This wasn't happening before. Is it a known issue?

@ricardograca Difficult to check logs on mobile, but wasn't it https://github.com/tgriesser/knex/issues/3225?

All seem to pass in master at least.

@kibertoad I restarted the job and then deleted the branch (oops) so I can't see the original log or re-run the test, but it was one test complaining that an array of length 1 was expected but got 0.
In any case, if master passes it's all that matters.


[MUPX] Amazon EC2 Instance... Errors

I've been trying to use MUPX to install my meteor application onto an Amazon EC2 instance with little luck, at first I was getting this error:
$ mup setup

Meteor Up: Production Quality Meteor Deployments
------------------------------------------------

Started TaskList: Setup (linux)
[<IP_ADDRESS>] - Installing Node.js
[<IP_ADDRESS>] x Installing Node.js: FAILED

	-----------------------------------STDERR-----------------------------------
	sudo: sorry, you must have a tty to run sudo
	sudo: sorry, you must have a tty to run sudo
	sudo: sorry, you must have a tty to run sudo
	sudo: sorry, you must have a tty to run sudo
	-----------------------------------STDOUT-----------------------------------
	----------------------------------------------------------------------------
Completed TaskList: Setup (linux)

Which after reading https://www.shell-tips.com/2014/09/08/sudo-sorry-you-must-have-a-tty-to-run-sudo/ I changed the /etc/sudoers file to !requiretty as a quick bypass.
But now I'm getting the following issue:
$ mupx setup

Meteor Up: Production Quality Meteor Deployments
------------------------------------------------
Configuration file : mup.json
Settings file      : settings.json

Started TaskList: Setup (linux)
[<IP_ADDRESS>] - Installing Docker
[<IP_ADDRESS>] x Installing Docker: FAILED

	-----------------------------------STDERR-----------------------------------
	bash: line 4: docker: command not found
	rm: cannot remove ‘/var/lib/dpkg/lock’: No such file or directory
	rm: cannot remove ‘/var/cache/apt/archives/lock’: No such file or directory
	sudo: dpkg: command not found
	sudo: apt-get: command not found
	-----------------------------------STDOUT-----------------------------------
	----------------------------------------------------------------------------

Anyone have any ideas?

 I was trying to get it to run on an Amazon Linux AMI. Doh!

hi, i have the same problem, so why that can't use in the Amazon Linux AMI ?

Because it's not Ubuntu.
On Wed, Sep 2, 2015 at 3:41 PM caifeng<EMAIL_ADDRESS>wrote:

hi, i have the same problem, so why that can't use in the Amazon Linux AMI
?
—
Reply to this email directly or view it on GitHub
https://github.com/arunoda/meteor-up/issues/518#issuecomment-137013124.


Is there any way to run multiply server workers?

Hello. In previous versions of prerender there was workers parameter in the server config.  After changing renderer to chrome there is no such parameter in the config. Is there any way to load CPU cores on maximum or I should just run multiply server processes?

Hello! Chrome runs each tab in a different process that spreads the load across the CPUs so there should no longer be any need for a workers parameter.


WIP: feat(mongoose): Add count option for VirtualRef

Information

Type
Breaking change

Feature
No

Usage example
Adds support for the count option on VirtualRefs (https://mongoosejs.com/docs/populate.html#count):
@Model()
class CompanyEntity {
  @VirtualRef({
      ref: 'UserEntity',
      localField: '_id',
      foreignField: 'membership.company',
      count: true,
      options: {
        match: { roles: 'client' },
      },
    })
  clientCount: number;
}

Todos
⚠ How to generate the JsonSchema correctly so we get a number type there instead of the Ref (Array) Type?. I could use some help here 😅

[ ] Tests
[ ] Coverage
[ ] Example
[ ] Documentation

Hello @ochrstn
Thanks for the PR :). for me it's ok.
Ok I see the VirtualRef set automatically the type. I think, in this case you have to test if the countOptions is given ^^
You can try that:

  return useDecorators(
     StoreMerge(MONGOOSE_SCHEMA, schema),
     type && !schema.count && (schema.justOne ? Property(type) : CollectionOf(type))
     schema.count && Proprety(Number)
);

See you
Romain

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

v6.90.0
GitHub release

Your semantic-release bot :package::rocket:


docs(readme): update actions/checkout to version 4

Do I need to do anything else here?

moved here: https://github.com/nrwl/nx-set-shas/pull/147


VSCodeEndGameTesting-Aditi][PHP] Function autocomplete not formatting correctly

OS: Windows 10
Steps:

In a php file type "fun" to get function autocomplete.
Press Enter.

Expected:
Formatting should be the same as when right-click-> Format Code

Note that you can customize the templates using Preferences > User Snippets.
For that reason I don't think we should run a formatter on them, as this would change the snippet. The creator of the snippet might have added empty lines and such on purpose.


Content suggestion: Add 21bitcoin.app

Link to Content: https://21bitcoin.app
Briefly Describe Content: Austrian Bitcoin Only Startup focused on Auto DCA, (German) education and making Bitcoin accessible to people in the EU.
Suggested Section: GET BITCOIN (Buy other)

How long have you been operating for?

Looks like it's still waitlist and hasn't launched.

Thanks. @bitsani  Please open a new issue when you have launched


Add plugin to get the version of the Chef server

When communicating with different Chef servers it is sometimes necessary to be able to get the version of the server that it is communicating with.  This so that different actions can be performed on more up to date versions of the server for example.
This issue is to create a new plugin server_version that will just return the version.

If being assigned to a variable then this will be a PSObject however if just being output to the screen then it will display a string.
The object is in the format of:
@{
    major = 1
    minor = 2
    build = 3
}

And the format of the built in ToString is {0}.{1}.{2} -f $object.major, $object.minor, $object.build


Replace array in type lists with numpy or cupy ndarray

Fixes #3258

Some comments:

You can simply write cupy.ndarray instead of :class:`cupy.ndarray`.
Initializers are more complex: they accept None, scalar, Initializer, numpy.ndarray and callable (I think cupy.ndarray is not accepted). Maybe we should write a document about the concept of initializers and make a link to it (in another PR?)

Updated

#3327 has been merged.

OK, I'll work on that.

@niboshi I have updated documents of links that take initializers. I also updated specification of initializers to add numpy.ndarray to the list.

There are other superfluous ors. Please remove them.

Thank you for your comments. I have updated the PR.

Thanks.
Did you modify docs/Makefile by mistake?

Did you modify docs/Makefile by mistake?

Sorry, it was unintended. I reverted it.

Thanks!
jenkins, test this please

jenkins, test this please

LGTM!


Decouple content from key systems

Today, if a piece of content references PlayReady and Widevine, we'll try those key systems.  If the content doesn't reference any particular key systems, we will try a list of well-known key systems.
Instead, we should let Player configuration decide what key systems we try, regardless of what the content says.  We should also have a configuration in the demo app to allow the user to specify a particular key system to try, whether or not we know about it in advance.

Thanks to @xhwang-chromium for the suggestion!

What we want already exists in the demos, and in the configuration with preferredKeySystems


Print a message when modifying settings that you may need to reload IDES/editors

This just adds a note about needing to reload editors if you make changes using flutter config.
Fixes https://github.com/Dart-Code/Dart-Code/issues/2090 (or at least, gives the user the solution).

For testing, I would add a command test to config_test which asserts that the bufferLogger contains some fragment of this status text

@jonahwilliams added a test, builds are green (minus flutter-build).


Extension issue

Issue Type: Bug
Extension Name: python
Extension Version: 2020.5.86806
OS Version: Windows_NT x64 10.0.19041
VSCode version: 1.46.0

:warning: We have written the needed data into your clipboard. Please paste! :warning:

Hi @juan12521 , could you provide additional information on the nature of the bug you encountered? This will help us investigate. Thanks!

Thanks for the bug report, but unfortunately we need some more information from you in order to triage this issue appropriately. Please edit your opening comment by providing a filled-in copy of our issue template. Once you are done please leave a comment to that effect.


Scan and DeleteRange methods for KVTxn

What I'm using:
go client v2<EMAIL_ADDRESS>What I want:
Quick range get method like Scan and range delete method like DeleteRange for TxnClient.
Other questions:

Is it okay to use both RawKVClient and TxnClient at the same time? AFAIK it is not supported for v1 API
What's the use case for DeleteRangeTask and RangeTaskRunner? Is it okay to use them concurrently with TxnClient?

Hi @Sandy4999 ,

I think we can add a rawkv like scan method. But it needs to consider more details, for example, the data obtained by scan needs to be merged with the transaction's MemBuffer. In fact, the current iterator is also implemented internally in batches of scans, but the batchSize cannot be changed. If we make batchSize settable, I wonder if it will meet your needs.
DeleteRange is supported for txnkv. We will add example about it. You may track the progress from https://github.com/tikv/client-go/issues/100
RawKVClient and TxnClient cannot be both used in the same cluster. I think it won't change in the near future.
DeleteRangeTask and RangeTaskRunner can be used concurrently. As mentioned above, we will add some example.

Sounds great, thank you! And yes, it should be better if batchSize is settable for transactions cuz sometimes we need a pretty big scan buffer (say, scan more than half keys in TiKV), which is probably not suitable for general use.

@disksing There are two more features we need, not sure if they are implemented in TiKV:

Inline append: append new bytes at the end of an existing value in the server-side, so clients don't have to do a get-modify-set.
Add conflict range: sometimes we want to watch a certain range instead of existing keys, so that an optimistic transaction is restarted if some key within this range is modified, or new keys are inserted within this range.

The APIs of FoundationDB might be a reference: AppendIfFits and AddReadConflictRange

I think none of them is supported by TiKV. I guess Inline append should be easier to implement. It is kind like CAS method which is already supported by TiKV. Conflict Range is less likely to add to TiKV. Maybe you can consider using txnkv instead to take advantages of transactions utilities.

Okay I see, we will try some workarounds then. Please link here if there is new progress :)


Score filter

Hello there.
Thank you for sharing this great tool. It is very useful and easy to use.
Is it possible to set a threshold for the score field, and to filter out the item didn't get above it?
Can it be done using a boolean variable?
Thanks again.

You can use javascript's Array.filter
const myItems = index.search(config)
const filtered = myItems.filter(({ score }) => score > 0.5)


Introduce the slow_bruteforce_interpreter.

Based on #9, only the last commit is new.
Check out src/lyg.rs for an example involving pattern-matching parse nodes, and the two tests (ported over from the gll crate) for how to use the interpret and what the output is like.
I'm open to suggestions on the API and formatting, it's a bit arbitrary at the moment.

I think I'd like this to bake a while longer, at least to get to test it with wg-grammar and maybe try out some imperative disambiguation? Could result in a wildly different handle API.
@oli-obk also expressed interest in experimenting with the "web frontend" idea.


Support for multifiles & pytlinting & more testing

Added support for multiple file inputs. No additional formatting required - only for text, not token inputs.
Added some missing tests
Added tests for multiline inputs
added pylinting (fixed long strings, const naming, if paren usage mostly.) To run call "make lint"

(I did not actually change count to use Counter for backwards compat.)

looks awesome. thanks for getting the testing and linting in a better place @iros !


Chat history does not show when I login from another computer.

Describe the bug
Chat history does not show when I login from another computer.
Link to the Bolt URL that caused the error
https://bolt.new/
Steps to reproduce
After you've chatted from one computer, open bolt.new on another computer and login with the same credentials.
It will not show the chat history
Expected behavior
It should display the chat history.
Screen Recording / Screenshot
No response
Platform

OS: [e.g. macOS, Windows, Linux]
Browser: [e.g. Chrome, Safari, Firefox]
Version: [e.g. 91.1]

Additional context
No response

Appreciate the feedback! We are aware of this issue with chat persistence. Temporary workarounds and updates can be found here: #39. (Go to stackblitz.com, login (same credentials as Bolt), click Collections on the left-hand side, click Bolt Collection). Appreciate your patience as improvements continue to be made.


Detect when running on non-Cloud Run GCP

In case when GCP metadata server is available but compute is GCE we should default to local.
It's not Cloud Run anyway and our development environment might me on GCE

Fixed in https://github.com/helloworlddan/run/commit/d7568dd0d159b89c75c254b47f4c512526d4ea44


Remove Python 3.4 From Travis CI

Python 3.4 has reached it's end of life, remove it from the build matrix so that the Travis CI tests can pass.

Shouldn't we replace it by Python 3.5?

Can we test with adding 3.5 and 3.7?

Sure thing, I've added Python 3.5 as well.  3.7 was already added by a previous PR I sent in a few weeks ago.


#6 [Feature] Improve drawing code

Apply multithreading to bitmap drawing
Integrate data saving code
Add async/await code for redraw operations


Serverless V2

Hey @getsentry/open-source!
We use certifi to validate SSL certificates in this package. Probably since forever. But the license bot does not like it.
Here is the license in question: https://github.com/certifi/python-certifi/blob/master/LICENSE
How should we continue with this?


Recommended Convoy installation on Docker Machine / VirtualBox

I'm working on a POC for a development environment utilizing Rancher, Docker Machine and Convoy for persistent storage. Ultimately, I'll probably add (more permanent) hosts through some other provider (eg: OpenStack or AWS), but for the time being, I'm stuck with Docker Machine and the VirtualBox driver.
The problem with the current installation and configuration steps is that the recommendations are to place things in ephemeral locations on the Docker host (ex: /usr/local/bin/, /etc/docker/plugins/). I can work around the placement of volumes, binaries and startup scripts, but the one that has me stumped is the /etc/docker/plugins location where it seems Docker expects the Convoy socket definition.
Do you have a recommended setup for running Convoy in a Docker Machine/VirtualBox environment?

Hi @btyler97
According to Docker doc, the plugin spec file can only be put in /etc/docker/plugins or /usr/lib/docker/plugins. Probably /usr/lib/docker/plugins would fits your need better?

@yasker, thank you, but aren't the only locations available on the persistent partition under /var/lib/docker and /var/lib/boot2docker? The point is, if I define that spec under /usr/lib/docker/plugins or /etc/docker/plugins it would gets wiped on a docker-machine restart.
It's looking like the best option would be to write a /var/lib/boot2docker/bootlocal.sh script to install, configure and startup the convoy plugin. Would you agree?

Yeah, I think that's the best bet.
The file content for convoy.spec remain unchanged(as long as you don't change Convoy sock path) and can be easily recreated from script.

Great, thank you. I tried that and it seems to have done what i need. Cheers!


Jest Command Based on Project

Not an issue per-say but wondering how people configure their jest command when you have projects that use npm, some that use yarn, etc... Do you change your config? Or is there a dynamic way?
return {
  "nvim-neotest/neotest",
  dependencies = {
    "haydenmeade/neotest-jest",
  },
  opts = function(_, opts)
    table.insert(
      opts.adapters,
      require("neotest-jest")({
        -- jestCommand = 'npm test --',
        jestCommand = "pnpm test --",
        -- jestCommand = "yarn test",
        -- jestConfigFile = 'custom.jest.config.ts',
        env = { CI = true },
        cwd = function()
          return vim.fn.getcwd()
        end,
      })
    )
  end,
}

Update 1:
I think when I made this ticket, I was bad in not adding a thought on a solution. What if we do something like not pass jestCommand and have another property that is something like:
...,
detectCommand = {
  enable = true,
  args = "test --"
},
...

With this, what the plugin can do is check in the root dir of project, is there a package-lock, or yarn.lock, or pnpm-lock? Then it could build the jestCommand from that

Although not exactly what you are looking for, but you could use ni to automatically use the correct package manager.
For example running ‘nr test —‘ will run your test regardless of your package manager.
https://www.builder.io/blog/goodbye-package-manager-chaos

Although not exactly what you are looking for, but you could use ni to automatically use the correct package manager.
For example running ‘nr test —‘ will run your test regardless of your package manager.
https://www.builder.io/blog/goodbye-package-manager-chaos

Thanks, but was hoping to not have another toolchain. I might go with this but hoping for another solution

Not sure if this is still relevant but the jestCommand option can also take a function accepting a single argument (the path of the current test). So you could do:
jestCommand = function(path)
    local cwd = vim.fn.getcwd()

    if vim.endswith(cwd, 'my-special-project') then
        return "yarn test"
    end

    return "npm test"
end

You might also be able to adapt some of the code for hasJestDependency or some of the util functions to locate the package.json file, or similar, and grab the test command directly.

@MisanthropicBit interesting. Maybe I could check for lock file.

tried to alter @MisanthropicBit approach to accept an input as the jest command to run:
       jestCommand = function(_)
            return vim.ui.input({
              prompt = 'Enter jest command (default: test): ',
              default = 'test',
            }, function(input)
              return string.format('npm run %s --', input or 'test')
            end)
          end,

but got an error before prompt shows that prevents tests from running, could someone assist?
neotest-jest: vim/shared.lua:0: s: expected string, got nil
stack traceback:
        ...ocal/share/nvim/lazy/neotest/lua/neotest/client/init.lua:89: in function <...ocal/share/nvim/lazy/neotest/lua/neotest/client/init.lua:88>
        [C]: in function 'error'
        vim/shared.lua: in function 'validate'
        vim/shared.lua: in function 'gsplit'
        vim/shared.lua: in function 'split'
        ...l/share/nvim/lazy/neotest-jest/lua/neotest-jest/init.lua:406: in function 'build_spec'
        ...al/share/nvim/lazy/neotest/lua/neotest/client/runner.lua:76: in function '_run_tree'
        ...al/share/nvim/lazy/neotest/lua/neotest/client/runner.lua:65: in function <...al/share/nvim/lazy/neotest/lua/neotest/client/runner.lua:22>
        [C]: in function 'xpcall'
        ...ocal/share/nvim/lazy/neotest/lua/neotest/client/init.lua:84: in function 'run_tree'
        ...al/share/nvim/lazy/neotest/lua/neotest/consumers/run.lua:73: in function 'func'
        ...herman/.local/share/nvim/lazy/nvim-nio/lua/nio/tasks.lua:173: in function <.../.local/share/nvim/lazy/nvim-nio/lua/nio/tasks.lua:172>```

@orenherman Slightly off-topic for the issue but if you read the documentation for vim.ui.input you'll see that it is an asynchronous function (accepts a callback), which means it returns immediately, and that it has no return value, which means it returns nil. Also the return from the callback goes to nowhere.
You can either use vim.fn.input which blocks neovim or we neotest-jest would need to support coroutines which you could then resume when the prompt is answered/cancelled which is what e.g. nvim-dap does to facilitate this kind of beaviour.
Hope that helps.


added possibility to enable swiping on vertical / horizontal axis only

As I reviewed the code I thought that maybe I made the 'isDisabled' parameter redundant, since it is now the same than disabling both axis. Don't hesitate to tell me if I should completly merge the features or leave it like that

I appreciate this! Thanks :)

Sounds good, thank u so much! I still need to test it (I'm not at home), but can you please upgrade the package version and add a changelog related to it?

And please also update the readme with the props, pls


Verify email error

I have a site that I have recently updates to Craft 3.7.63. The site has been working fine for a couple of years but after the update I am having trouble with front end registrations. It was working OK previously.
In my config I have 'verifyEmailSuccessPath' => 'account/log-in',
Verification emails are sent OK but on clicking the url in the email the user gets an "Error 500" page. The account is verified but they aren't redirected to 'account/log-in'
Hitting the url in the verification email on local I get:
Unknown Property – yii\base\UnknownPropertyException
Getting unknown property: craft\events\UserEvent::userId

Stacktrace copied below.
yii\base\UnknownPropertyException: Getting unknown property: craft\events\UserEvent::userId in /var/www/html/vendor/yiisoft/yii2/base/BaseObject.php:141
Stack trace:
#0 /var/www/html/notifications/MemberActivated.php(24): yii\base\BaseObject->__get('userId')
#1 /var/www/html/vendor/percipioglobal/craft-notifications/src/services/NotificationsService.php(89): app\notifications\MemberActivated->via()
#2 /var/www/html/vendor/percipioglobal/craft-notifications/src/Notifications.php(97): percipioglobal\notifications\services\NotificationsService->send(Object(app\notifications\MemberActivated))
#3 [internal function]: percipioglobal\notifications\Notifications->percipioglobal\notifications\{closure}(Object(craft\events\UserEvent))
#4 /var/www/html/vendor/yiisoft/yii2/base/Event.php(312): call_user_func(Object(Closure), Object(craft\events\UserEvent))
#5 /var/www/html/vendor/yiisoft/yii2/base/Component.php(642): yii\base\Event::trigger('craft\\services\\...', 'afterActivateUs...', Object(craft\events\UserEvent))
#6 /var/www/html/vendor/craftcms/cms/src/services/Users.php(698): yii\base\Component->trigger('afterActivateUs...', Object(craft\events\UserEvent))
#7 /var/www/html/vendor/craftcms/cms/src/services/Users.php(737): craft\services\Users->activateUser(Object(craft\elements\User))
#8 /var/www/html/vendor/craftcms/cms/src/controllers/UsersController.php(638): craft\services\Users->verifyEmailForUser(Object(craft\elements\User))
#9 [internal function]: craft\controllers\UsersController->actionVerifyEmail()
#10 /var/www/html/vendor/yiisoft/yii2/base/InlineAction.php(57): call_user_func_array(Array, Array)
#11 /var/www/html/vendor/yiisoft/yii2/base/Controller.php(178): yii\base\InlineAction->runWithParams(Array)
#12 /var/www/html/vendor/yiisoft/yii2/base/Module.php(552): yii\base\Controller->runAction('verify-email', Array)
#13 /var/www/html/vendor/craftcms/cms/src/web/Application.php(293): yii\base\Module->runAction('users/verify-em...', Array)
#14 /var/www/html/vendor/craftcms/cms/src/web/Application.php(602): craft\web\Application->runAction('users/verify-em...', Array)
#15 /var/www/html/vendor/craftcms/cms/src/web/Application.php(272): craft\web\Application->_processActionRequest(Object(craft\web\Request))
#16 /var/www/html/vendor/yiisoft/yii2/base/Application.php(384): craft\web\Application->handleRequest(Object(craft\web\Request))
#17 /var/www/html/public_html/index.php(21): yii\base\Application->run()
#18 {main}

I first contacted Craft support and they suggested I get in touch with you as it looks like the error is originating from the Notifications plugin
#3 [internal function]: percipioglobal\notifications\Notifications->percipioglobal\notifications{closure}(Object(craft\events\UserEvent))

Any ideas why this might be or what I could do to try and debug/fix it?
I am on Notifications v 1.2.3

hi @timprint,
Apologies for the late reply. Can you send me the MemberActivated php file please?

@cookie10codes no problem, I managed to get this fixed myself, I should have updated the ticket.
In MemberActivated php changing
$user = craft\elements\User::find()->id($this->event->userId)->one();
to
$user = craft\elements\User::find()->id($this->event->user->id)->one();
fixed it.
It's all working OK now.


Black and white optimization ?

Hello and thank you for this library !
For my project I only need grayscale (just 1 bit actually but probably with a dithering method applied further down the line) but from what I understood we can't get grayscale from the OV7670, so I'm guessing I'll need to get YUV and discard U and V ? Is that the best way ?
Thanks!

I think YUV is the best way to go.   If you set bit 4 in Register 0x3A,  the camera will send a fixed set of U and V values instead of the values from the sensor.  You can set the  U and V values used to zero by setting registers 0x67 and 0x68 to 0.
It looks like this should give you a 256-level gray scale without the need to actually manipulate the image bytes.  This is hypothetical at the moment, as I haven't actually tried this.
You can also use the brightness and contrast settings to alter the gray scale image.  Perhaps a very high contrast level will get you close to a black and white image.

Thanks for your insights, super helpful. I was planning on applying a simple dithering eg Floyd Steinberg which would give better details than clamping values by boosting contrast. But yes, dithering would involve manipulating bytes on CPU. I'b be happy with 5 fps, and the teensy seems quite capable, but I definitely need to test.

Just an update to let you know that it worked like a charm :)
By the way coming back I realize I didn't put the 2.2uF capacitor in my circuit. What is its purpose? I didn't have any issue without it.
Cheers,


Change About page text from Italic to Regular

Also seems like we could increase the leading to 1.5x the font size and center the block of text in the screen (Riding a little high right now).

Updated:

Oops, I mean:


Use epoll over io_uring channel for Unix Domain Sockets

fix for the issue #2790
the current implementation uses io_uring as preferred.
the change contains switch of precedence to use  epoll over io_uring.
I did some reading on the performance comparisons of io_uring and epoll;
io_uring is considered faster than epoll in some cases and not in others. -> https://github.com/axboe/liburing/issues/536
Since we are changing default behavior when both of them are available, there will be some performance change for clients that have both in runtime.
i cant evaluate exactly how big the impact is and/or how many client will be impacted.
happy to hear any comments.

[X] You have read the contribution guidelines.
[X] You have created a feature request first to discuss your contribution intent. Please reference the feature request ticket number in the pull request.
[X] You use the code formatters provided here and have them applied to your changes. Don’t submit any formatting related changes.
[ ] You submit test cases (unit or integration tests) that back your changes.

Thank you for your contribution. That's merged, polished, and backported now.


unconditional (forced) destroy of thread pool

Hello,
Is there an API to destroy a pool without waiting for executing threads to complete?
Or is it easy to create one based on the current destroy API ? (thpool_destroy)
Thanks.

It doesn't exist at the moment. But this could be implemented as a flag to thpool_destroy I think or alternatively as a separate function thpool_force_destroy


fix: handle directory and trailing slashes properly

This PR also includes:

add logical manifest entries instead replacing original ones
don't add manifestTransform when provided
included test folder in pwa-simple example, with index.astro and about.astro routes: /test, /test/, /test/about and /test/about/ working
map 404.astro to 404, Astro won't generate the 404/index.html and the sw will fail when precaching 404.html page
include StackBlitz links to run the examples: added to readme and included hints to run the PWA
bump to pnpm 8.9.2

You can open the pwa-example using this StackBlitz repro
closes #23

superseded by #27


Identifiers validation failed for dataset Fauna de insectos sociales del estado de Campeche

Identifier validation failed for the dataset Fauna de insectos sociales del estado de Campeche:

Crawler attempt: 321
Publishing organization: Comisión nacional para el conocimiento y uso de la biodiversidad
Publishing country: MEXICO
Installation: IPTCONABIO
Number of occurrences indexed for this dataset at the time of the issue: 15866
Cause: GBIF ID problems exceed 50% threshold: 100% duplicates; 15866 total records; 15866 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3740310/step

New IDs sample:

Old IDs sample:

00496a13b8c2854da14d35d60f23a8a8
01ae43139bde478469f829e2d1a4d1aa
02ae13aefa672797ffb783a405d9da2f
03a457281fa5e1b11aa9cf35bc372c8c
03b69a6cedc1fea07aa9bab35d9b0026
05690083ede45b003b960d0b2862e650
05d2bf92d62b1b930617fb67d686be00
05d5b12ac018050ca6369bb32e1a5ed3
07a64bfa66cde2396810828ea48cdb74
08217b8cb207113c9b4cfff82bef7722

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Fauna de insectos sociales del estado de Campeche : https://doi.org/10.15468/bac4gy.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.

Identifier validation still  failing for the dataset Fauna de insectos sociales del estado de Campeche:

Crawler attempt: 322
Publishing organization: Comisión nacional para el conocimiento y uso de la biodiversidad
Publishing country: MEXICO
Installation: IPTCONABIO
Number of occurrences indexed for this dataset at the time of the issue: 15866
Cause: GBIF ID problems exceed 50% threshold: 100% duplicates; 15866 total records; 15866 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3741162/step

New IDs sample:

Old IDs sample:

00496a13b8c2854da14d35d60f23a8a8
01ae43139bde478469f829e2d1a4d1aa
02ae13aefa672797ffb783a405d9da2f
03a457281fa5e1b11aa9cf35bc372c8c
03b69a6cedc1fea07aa9bab35d9b0026
05690083ede45b003b960d0b2862e650
05d2bf92d62b1b930617fb67d686be00
05d5b12ac018050ca6369bb32e1a5ed3
07a64bfa66cde2396810828ea48cdb74
08217b8cb207113c9b4cfff82bef7722

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Fauna de insectos sociales del estado de Campeche : https://doi.org/10.15468/bac4gy.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.

Identifier validation still  failing for the dataset Fauna de insectos sociales del estado de Campeche:

Crawler attempt: 324
Publishing organization: Comisión nacional para el conocimiento y uso de la biodiversidad
Publishing country: MEXICO
Installation: IPTCONABIO
Number of occurrences indexed for this dataset at the time of the issue: 15866
Cause: GBIF ID problems exceed 50% threshold: 100% duplicates; 15866 total records; 15866 absent records
Pipelines execution steps: http://api.gbif.org/v1/pipelines/history/execution/3741784/step

New IDs sample:

Old IDs sample:

00496a13b8c2854da14d35d60f23a8a8
01ae43139bde478469f829e2d1a4d1aa
02ae13aefa672797ffb783a405d9da2f
03a457281fa5e1b11aa9cf35bc372c8c
03b69a6cedc1fea07aa9bab35d9b0026
05690083ede45b003b960d0b2862e650
05d2bf92d62b1b930617fb67d686be00
05d5b12ac018050ca6369bb32e1a5ed3
07a64bfa66cde2396810828ea48cdb74
08217b8cb207113c9b4cfff82bef7722

Publisher email
Hello,
I am contacting you from the GBIF Secretariat about a dataset published by the Fauna de insectos sociales del estado de Campeche : https://doi.org/10.15468/bac4gy.
We noticed that the occurrenceIDs were changed. We have temporarily paused the ingestions of this dataset.
As you might already know, when an occurrence record has a new occurrenceID for a given dataset, our system considers it to be a new occurrence.
This means that it will be given a new gbifid and a new occurrence URL (like this one: https://www.gbif.org/occurrence/1252968762) and the old gbifid and URL will be deprecated.
In this case, this means that the occurrence URLs would be deprecated when ingesting the newest versions of these datasets.
We would like to check with you if those changes were intentional. Do you know if this is the case?
Please let us know, thanks! We are happy to resume the dataset ingestion.
Note that some users rely on those occurrence URLs and gbifids (like https://bionomia.net for example). In an attempt to improve
the stability of the occurrence URLs and gbifids, we have implemented a warning system to detect these type of changes in datasets (see this news item).
If the data publisher can provide us with a list of old and new occurrenceIDs per record, we can avoid the identifier and URL changes. Could that be an option?
Please let us know if you have any question. Thanks!
All the best,

You can skip/fix identifier validation using the registry UI.


Input text for dynamic rows "add button"

Summary | Résumé
Adds input for "Add button" / dynamic rows
Input field

Output

Test instructions | Instructions pour tester la modification

Add a repeating question set
Modify the "add" ____ text  (en, fr)
Preview the form

Pull Request Checklist
Please complete the following items in the checklist before you request a review:

[x] Have you completely tested the functionality of change introduced in this PR? Is the PR solving the problem it's meant to solve within the scope of the related issue?
[x] The PR does not introduce any new issues such as failed tests, console warnings or new bugs.
[ ] If this PR adds a package have you ensured its licensed correctly and does not add additional security issues?
[ ] Is the code clean, readable and maintainable? Is it easy to understand and comprehend.
[ ] Does your code have adequate comprehensible comments? Do new functions have docstrings?
[ ] Have you modified the change log and updated any relevant documentation?
[ ] Is there adequate test coverage? Both unit tests and end-to-end tests where applicable?
[ ] If your PR is touching any UI is it accessible? Have you tested it with a screen reader? Have you tested it with automated testing tools such as axe?

@anikbrazeau
Some fresh text for translation when you can
https://github.com/cds-snc/platform-forms-client/pull/1631/files#diff-a6e486b021382fa7935492752ec9890787007f55c22fdc5c300ec95e11355a7bR368


gradient_override_map should raise an error if passed invalid gradient names.

Currently, gradient_override_map does not complain if passed in nonsensical information (apart from the simple check to make sure the map is a map from strings to strings).
For instance, the following lines of code run without issue:
 with graph.gradient_override_map({"nonsense": "more_nonsense"}):       input = tf.sign(input)
A more subtle point (that happened with me), when attempting to override sign's gradient, the following typo ran without problem:
 with graph.gradient_override_map({"sign": "Identity"}):       input = tf.sign(input)
("sign" should be "Sign").
Seems like a fairly simple issue, but I am not quite versed enough in the Tensorflow backend to suggest a fix to this problem.

@mrry It looks from the code that this would be difficult to do since tf.gradient_override_map is a Python construct and (presumably) doesn't have an easy way to validate the args against all registered op names?
FWIW, the documentation here, does show a clear example where the name of the op whose gradient is being overridden is capitalized whilst the python op wrapper uses the PEP11 naming convention.
It's also still labelled as EXPERIMENTAL in the docs ... Is this still the case, or is it part of the TF1.0 API?

Unfortunately it's now part of the 1.0 API so we can't easily change it. It might be possible to validate the names of ops against the OpDef registry, which should catch some errors. Over time, however, I think we'll want to standardize on TF functions (which I guess are not yet part of the stable tf.* API) as the way to specify overridden gradients for subgraphs and individual ops.

Agreed that in general the names should match the python functions. I haven't delved into the code as much as I should have, but wouldn't it be possible just to keep a list around in python of everything that got "tf.RegisterGradient(...)"-d and check gradient_override_map against it?

I don't think the set of names for which tf.RegisterGradient() has been called is sufficient for validating the override map keys... for example a common use is to register a temporary gradient for an op that doesn't in general have one.


UVI Request

--- UVI JSON ---
{
  "vendor_name": "Linux",
  "product_name": "Kernel",
  "product_version": "versions from v5.11 to before v5.13.6",
  "vulnerability_type": "unspecified",
  "affected_component": "unspecified",
  "attack_vector": "unspecified",
  "impact": "unspecified",
  "credit": "",
  "references": [
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=7de3697e9cbd4bd3d62bafa249d57990e1b8f294",
    "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ce5b3de58fc21303722df46551f7eb9a91afb409"
  ],
  "extended_references": [
    {
      "type": "commit",
      "value": "7de3697e9cbd4bd3d62bafa249d57990e1b8f294",
      "note": "introduced"
    },
    {
      "type": "commit",
      "value": "ce5b3de58fc21303722df46551f7eb9a91afb409",
      "note": "fixed"
    }
  ],
  "reporter": "joshbressers",
  "reporter_id": 1692786,
  "notes": "",
  "description": "driver core: auxiliary bus: Fix memory leak when driver_register() fail\n\nThis is an automated ID intended to aid in discovery of potential security vulnerabilities. The actual impact and attack plausibility have not yet been proven.\nThis ID is fixed in Linux Kernel version v5.13.6 by commit ce5b3de58fc21303722df46551f7eb9a91afb409, it was introduced in version v5.11 by commit 7de3697e9cbd4bd3d62bafa249d57990e1b8f294. For more details please see the references link."
}
--- UVI JSON ---

This issue has been assigned UVI-2021-1001174


Remove ".enable" from rescript.settings.codeLens in package.json

The setting is called rescript.settings.codeLens instead of rescript.settings.codeLens.enable.

Turns out I had it the wrong way around the first time, so I changed the PR.

Thank you!


allow looker API to make unverified https requests

It would be great to have the option to make unverified https requests to our looker instance for those of us that have self hosted Looker instances behind self-signed SSL certificates.
I have hard coded the changes into client.py, seen in my attachment - although I don't think this is the right approach. Ideally, the library would have a config option set when defining the client which specifies whether or not to allow unverified SSL.
For more guidance, please see the sdk_setup.rb file fromt he Ruby implementation of the Looker API located here: https://github.com/looker/looker-sdk-ruby/blob/master/examples/sdk_setup.rb

Hey there! I've made some changes and now is possible to do non-signed requests!
Doing so is as easy as creating the client with verify false:
lc = LookerClient(api_endpoint, client_id, client_secret, verify=False)

If you want to get this update, you can now update the package doing pip install pylooker.
Closing the issue for now but let me know if you encounter some bugs!


Update license-and-subscription.rst

License and subscription FAQs (renewals)

cc @wiersgallak as well for optional blindspots review on documenting license expiry experience

Documentation for: https://github.com/mattermost/mattermost-server/pull/14420

(Dennis confirmed the HA question in community, so I think we're good with reviews :D)

/check-cla

/check-cla

/check-cla

Yay, thanks @metanerd! :)


/usr/bin/ld: cannot find -lOpenCL at build stage

Having trouble with building zogminer on Debian 8. Here is the ./build.sh output:
libtool: link: /home/debian/miners/zogminer/depends/x86_64-unknown-linux-gnu/native/bin/ccache g++ -m64 -std=c++11 -pipe -O1 -fwrapv -fno-strict-aliasing -g -Wformat -Wformat-security -Wstack-protector -fstack-protector-all -fPIE -pthread -Wl,-z -Wl,relro -Wl,-z -Wl,now -pie -o zcashd zcashd-bitcoind.o -fopenmp  -L/home/debian/miners/zogminer/depends/x86_64-unknown-linux-gnu/lib libbitcoin_server.a libbitcoin_common.a univalue/libbitcoin_univalue.a libbitcoin_util.a ./leveldb/libleveldb.a ./leveldb/libmemenv.a secp256k1/.libs/libsecp256k1.a libbitcoin_wallet.a -lboost_filesystem-mt -lboost_program_options-mt -lboost_thread-mt -lboost_chrono-mt -ldb_cxx-5.3 -lssl -ldl -lminiupnpc libzcash.a crypto/libbitcoin_crypto.a -lsnark /home/debian/miners/zogminer/depends/x86_64-unknown-linux-gnu/lib/libgmpxx.a /home/debian/miners/zogminer/depends/x86_64-unknown-linux-gnu/lib/libgmp.a -lboost_system-mt -lcrypto /home/debian/miners/zogminer/depends/x86_64-unknown-linux-gnu/lib/libsodium.a libzogminer.a -lOpenCL -lanl -fopenmp -pthread
/usr/bin/ld: cannot find -lOpenCL
collect2: error: ld returned 1 exit status
Makefile:3154: recipe for target 'zcashd' failed
make[2]: *** [zcashd] Error 1
make[2]: Leaving directory '/home/debian/miners/zogminer/src'
Makefile:7496: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/debian/miners/zogminer/src'
Makefile:633: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
Just installed opencl(opencl is working on claymore dualminer), then trying to build.
Additionally, I copied all libraries from /opt/AMDAPPSDK-3.0/ to /usr/lib/OpenCL/vendors/amd (both x86 and amd) and also added their references in /etc/ld.so.conf.d

This error has to do with the driver installing the libOpenCL.so as ```libOpenCL.so.1". You can create a symlink:
$ sudo ln -s /usr/lib/libOpenCL.so.1 libOpenCL.so

Or for people that do not want to mess with this:
$ sudo apt-get install ocl-icd-opencl-dev

I successfully compiled master. Howewever, the miner is unexpectedly slow. In average, kernel run took 4834 ms. (0.206868 H/s) and pretty hot(70 c). R9 390x, Debian8 amd64 Isn't the solve time should be less?

Right now you are not running a real solver. Disregard results, when the kernel is ready we will let you guys know.


[web] Incorrect focus handling for flutter in IFrame

Steps to Reproduce
Flutter doc can be example to reproduce this issue.

Go to https://flutter.dev/docs/cookbook/forms/focus#interactive-example.
Put cursor on input and type some text.
Put cursor to the left side (code). Note, that cursor is not disappeared from the right side (app preview).
Put cursor back to the input where you leave it. Note, that cursor is not disappeared from the left side (app code).
Try to type something in input.

What I expect:
I am typing in the TextField.
What actually happens:
I am typing in the code part.
I experience same behaviour with flutter version:
[✓] Flutter (Channel beta, 1.23.0-18.1.pre, on Mac OS X 10.14.6 18G4032 x86_64, locale en-RU)
    • Flutter version 1.23.0-18.1.pre
    • Framework revision 198df796aa (4 weeks ago), 2020-10-15 12:04:33 -0700
    • Engine revision 1d12d82d9c
    • Dart version 2.11.0 (build 2.11.0-213.1.beta)

@MariaMelnik
Can you provide a minimal complete reproducible code sample for the issue you are seeing in Flutter version ?
I saw the issue you mentioned with interactive example from flutter doc link. Curious to see the same with Flutter version.

@darshankawar I will try to make example (actually any example with TextField will be good if flutter app will be in iframe).
But I have solution for this (I believe flutter should handle it itself):
import 'dart:html' as html;

html.window.onBlur.listen((e) {
    FocusManager.instance.primaryFocus.unfocus();
  });

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.

@darshankawar I will try to make example (actually any example with TextField will be good if flutter app will be in iframe).
But I have solution for this (I believe flutter should handle it itself):
import 'dart:html' as html;

...

html.window.onBlur.listen((e) {
    FocusManager.instance.primaryFocus.unfocus();
  });

I have the same problem in using iframe and textfield. This code solves my problem.


feat: setup  swagger  called with  wrappidApp, swaggerJsonFile

setup  swagger  called with  wrappidApp, swaggerJsonFile and add  a basic swagger-output.json
Ref: #19

Closing as merging on main from issue branch is not allowed


Mac OS X / Darwin builds should default to compiling with clang, not g++

Original issue: https://charm.cs.illinois.edu/redmine/issues/651

Apple has ceased to keep GCC up to date on Mac OS and replaced it fully with Clang/LLVM. The version of GCC they ship is far enough behind that the configure test introduced under #356 fails, while Clang would have passed for the last several years. Unless we want to require users to install a newer version of GCC via MacPorts/HomeBrew/Fink/etc., we should default to compiling with clang on Mac OS builds.
The necessary change should be replacing g++ and gcc with clang in src/arch/*darwin*/conv-mach.sh and adapting the compiler flags defined there accordingly.

Original date: 2015-02-07 17:34:47

The impact of this can be seen "in autobuild":http://charm.cs.illinois.edu/autobuild/old.2015_02_07__03_41/net-darwin-x86_64-smp.txt

Original author: Nikhil Jain
Original date: 2015-02-07 17:47:04

Reassigning to Sam for load balancing.

Original date: 2015-02-09 18:55:44

Changed the default compiler to clang for the 6 darwin builds in src/arch.
They all compile with clang on my Mac now.

Original date: 2015-02-09 21:08:17

Change was approved and merged on Gerrit.

Original date: 2015-02-10 17:24:02

http://charm.cs.uiuc.edu/autobuild/cur/net-darwin-x86.txt
../../bin/charmc -optimize -production   -Wno-error -lm -I.. -cp ../../bin -seq daemon.o ../sockRoutines-seq.o -o charmd
ld: warning: ignoring file daemon.o, file was built for i386 which is not the architecture being linked (x86_64): daemon.o
ld: warning: ignoring file ../sockRoutines-seq.o, file was built for i386 which is not the architecture being linked (x86_64): ../sockRoutines-seq.o
Undefined symbols for architecture x86_64:
  "_main", referenced from:
      start in crt1.10.6.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Fatal Error by charmc in directory /scratch/autobuild/darwin32/charm/net-darwin-x86/tmp/charmrun-src
   Command clang -mmacosx-version-min=10.6 -O2 -o charmd daemon.o ../sockRoutines-seq.o -L../../bin/../lib -lm returned error code 1
charmc exiting...

It looks like the 32-bit targets are slightly broken, because linking of code with -seq is complaining about trying to link a 64-bit binary. Note that the linker command line doesn't have the -m32 argument being passed to it.
We may hack this by simply dropping support for 32-bit Mac OS X. The constraint on that is whether the iOS NAMD users build on that or something more esoteric.

Original date: 2015-02-11 02:06:17

Passing the -m32 argument to the linker fixes the build issue.

Original date: 2015-02-12 17:52:11

http://charm.cs.uiuc.edu/autobuild/cur/netlrts-darwin-x86_64-smp.txt
Could you see if this failure is a consequence of switching from gcc to clang, or what's going on there? If it's ancillary, please open a new issue.

Original date: 2015-02-12 21:54:14

I can't reproduce the error in tests/charm++/alignment/alignmentCheck for a netlrts-darwin-x86_64-smp build, so I will make a separate issue for this.


C++17 interop: std::optional

In my embedded project, I utilize std::optional heavily. Unfortunately, better_enum::optional doesn't have a built in conversion.
I can see two options:

in C++17 and newer projects, replace better_enum::optional with std::optional
provide a conversion function to std::optional

Here's a member conversion function I threw together quickly:
    #if defined(__cpp_lib_optional) && (__cpp_lib_optional >= 201606L)
    BETTER_ENUMS_CONSTEXPR_ operator std::optional<T>() const {
        if(*this) {return {_value};}
        else {return std::nullopt;}
    }
    #endif

Thank you! Would you be willing to propose this as a PR?

Sure thing. I wasn't sure if that quickly put together operator was good enough, but if it is, I'll go ahead and submit a PR.


Fix field name box

Because the vizjson has been changed again the Field name box.

...or because you were using a private dataset... Strike 1, Ramiro


Fix link to docs

Should go to https://docs.coveralls.io/ruby-on-rails
Fixes #2

Coverage decreased (-2.3%) to 91.339% when pulling 7ab7681d79f5c450b5cf03d8e3f2172348126a9f on pboling:patch-1 into 8f36f792fa44e0d93a43d08b3197c52e7831f70e on tagliala:master.


fix broken link to CMake tools for Visual C++

(You can replace all of this text with your description.)
Before creating your pull request, please check your content against these quality criteria:

Did you consider search engine optimization (SEO) when you chose the title in the metadata section and the H1 heading (i.e. the displayed title that starts with a single #)?
For new articles, did you add it to the table of contents?
Did you update the "ms.date" metadata for new or significantly updated articles?
Are technical terms and concepts introduced and explained, and are acronyms spelled out on first mention?
Should this page be linked to from other pages or Microsoft web sites?

For more information about creating content for docs.microsoft.com, see the contributor guide at https://docs.microsoft.com/contribute/.

@jillre : Thanks for your contribution! The author(s) have been notified to review your proposed change.


connections to dbpedia services time out

Goal: run dbpedia_ner for named entity recognition
Input:
cat infile.naf | python2 dbpedia_ner.py

Problem: url connection request times out. Are the servers turned off?
Traceback (most recent call last):
  File "dbpedia_ner.py", line 163, in <module>
    dbpedia_xml_results = call_dbpedia_rest_service(whole_text,args.dbpedia_url,args.confidence)
  File "dbpedia_ner.py", line 38, in call_dbpedia_rest_service
    handler = urlopen(req)
  File "/usr/lib/python2.7/urllib2.py", line 154, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python2.7/urllib2.py", line 429, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 447, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1228, in http_open
    return self.do_open(httplib.HTTPConnection, req)
  File "/usr/lib/python2.7/urllib2.py", line 1198, in do_open
    raise URLError(err)
urllib2.URLError: <urlopen error [Errno 110] Connection timed out>

Downloads for locally running dbpedia-spotlight:
wget http://downloads.dbpedia-spotlight.org/spotlight/dbpedia-spotlight-0.7.1.jar
wget http://downloads.dbpedia-spotlight.org/2016-10/nl/model/nl.tar.gz

http://spotlight.sztaki.hu/downloads/ times out as well.

Locally installing the jar and running the server is the only solution at the moment.