authorize_access_token() doesn't add client_secret to query with GET request

When you send GET request to get access token client_secret is not added to query.
Here is some prints from methods:
request method: GET <authlib.integrations.httpx_client.oauth2_client.OAuth2ClientAuth object at 0x00000203BB662B80> SOME_CLIENT_SECRET
send method: <authlib.integrations.httpx_client.oauth2_client.OAuth2ClientAuth object at 0x00000203BB662B80> SOME_CLIENT_SECRET
_send_handling_auth method: response <Response [401 Unauthorized]> b'{"error":"invalid_client","error_description":"client_secret is undefined"}'
As you can see everything fine with Auth object and client_secret is in it, but something wrong with _send_handling_auth
Full error callback:
client_secret <authlib.integrations.httpx_client.oauth2_client.OAuth2ClientAuth object at 0x0000020867A03B80> SOME_CLIENT_SECRET
Traceback (most recent call last):
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 394, in run_asgi
result = await app(self.scope, self.receive, self.send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 45, in call
return await self.app(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\fastapi\applications.py", line 179, in call
await super().call(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\applications.py", line 111, in call
await self.middleware_stack(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\errors.py", line 181, in call
raise exc from None
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\errors.py", line 159, in call
await self.app(scope, receive, _send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\cors.py", line 78, in call
await self.app(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\sessions.py", line 75, in call
await self.app(scope, receive, send_wrapper)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\exceptions.py", line 82, in call
raise exc from None
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\exceptions.py", line 71, in call
await self.app(scope, receive, sender)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\routing.py", line 566, in call
await route.handle(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\routing.py", line 227, in handle
await self.app(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\routing.py", line 41, in app
response = await func(request)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\fastapi\routing.py", line 182, in app
raw_response = await run_endpoint_function(
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\fastapi\routing.py", line 133, in run_endpoint_function
return await dependant.call(**values)
File ".\src\app\auth\routes.py", line 47, in vk_auth
token = await oauth.vk.authorize_access_token(request, method='GET')
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\starlette_client\integration.py", line 64, in authorize_access_token
return await self.fetch_access_token(**params)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\base_client\async_app.py", line 105, in fetch_access_token
token = await client.fetch_token(token_endpoint, **kwargs)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\httpx_client\oauth2_client.py", line 133, in _fetch_token
return self.parse_response_token(resp.json())
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\oauth2\client.py", line 380, in parse_response_token
self.handle_error(error, description)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\httpx_client\oauth2_client.py", line 82, in handle_error
raise OAuthError(error_type, error_description)
authlib.integrations.base_client.errors.OAuthError: invalid_client: client_secret is undefined
ERROR:uvicorn.error:Exception in ASGI application
Traceback (most recent call last):
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\uvicorn\protocols\http\h11_impl.py", line 394, in run_asgi
result = await app(self.scope, self.receive, self.send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\uvicorn\middleware\proxy_headers.py", line 45, in call
return await self.app(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\fastapi\applications.py", line 179, in call
await super().call(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\applications.py", line 111, in call
await self.middleware_stack(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\errors.py", line 181, in call
raise exc from None
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\errors.py", line 159, in call
await self.app(scope, receive, _send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\cors.py", line 78, in call
await self.app(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\middleware\sessions.py", line 75, in call
await self.app(scope, receive, send_wrapper)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\exceptions.py", line 82, in call
raise exc from None
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\exceptions.py", line 71, in call
await self.app(scope, receive, sender)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\routing.py", line 566, in call
await route.handle(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\routing.py", line 227, in handle
await self.app(scope, receive, send)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\starlette\routing.py", line 41, in app
response = await func(request)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\fastapi\routing.py", line 182, in app
raw_response = await run_endpoint_function(
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\fastapi\routing.py", line 133, in run_endpoint_function
return await dependant.call(**values)
File ".\src\app\auth\routes.py", line 47, in vk_auth
token = await oauth.vk.authorize_access_token(request, method='GET')
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\starlette_client\integration.py", line 64, in authorize_access_token
return await self.fetch_access_token(**params)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\base_client\async_app.py", line 105, in fetch_access_token
token = await client.fetch_token(token_endpoint, **kwargs)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\httpx_client\oauth2_client.py", line 133, in _fetch_token
return self.parse_response_token(resp.json())
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\oauth2\client.py", line 380, in parse_response_token
self.handle_error(error, description)
File "c:\users\ander\appdata\local\programs\python\python39\lib\site-packages\authlib\integrations\httpx_client\oauth2_client.py", line 82, in handle_error
raise OAuthError(error_type, error_description)
authlib.integrations.base_client.errors.OAuthError: invalid_client: client_secret is undefined
To Reproduce
oauth.register(
    name='vk',
    client_id=CLIENT_ID,
    client_secret=CLIENT_SECRET,
    authorize_url='https://oauth.vk.com/authorize',
    access_token_url='https://oauth.vk.com/access_token',
)

@router.get('/login/vk')
async def vk_login(request: Request):
    redirect_uri = request.url_for('vk_auth')
    return await oauth.vk.authorize_redirect(request, redirect_uri)

@router.get('/')
async def vk_auth(request: Request):
    token = await oauth.vk.authorize_access_token(request, method='GET')  <-  error here

Expected behavior
await oauth.vk.authorize_access_token(request, method='GET') makes request with url like https://some-site.com/access-token?client_id=id&client_secret=secret&redirect_uri=uri&code=code&state=state
Environment:

OS: Windows 10
Python Version: 3.9
Authlib Version: 0.15.2
starlette: 0.13.6
fastapi: 0.61.2

This GET access token is not standard OAuth. To get what you want, you need to use compliance_fix, check:
https://docs.authlib.org/en/latest/client/frameworks.html#compliance-fix-for-oauth-2-0

The problem with compliance_fix is that this method adds hook to TokenAuth class, but when you call .authorize_access_token, ClientAuth class is used.
ClientAuth has DEFAULT_AUTH_METHODS = {
'client_secret_basic': encode_client_secret_basic,
'client_secret_post': encode_client_secret_post,
'none': encode_none,
}
so I set token_endpoint_auth_method='none' in .register() and also changed encode_none func:
def encode_none(client, method, uri, headers, body):
    if method == 'GET':
        uri = add_params_to_uri(uri, [('client_id', client.client_id),
                                      ('client_secret', client.client_secret)]) <-- added this
        return uri, headers, body
    body = add_params_to_qs(body, [('client_id', client.client_id)])
    if 'Content-Length' in headers:
        headers['Content-Length'] = str(len(body))
    return uri, headers, body

And now when I use oauth.vk.authorize_access_token(request, method='GET') everything works fine, and i get my access_token from vk.
Probably you could suggest me a better solution for my problem without changing the source files.

You can register a new auth method, e.g. name it client_secret_get.


[Fix] OfflineMapTask instantiation pattern

Description
This PR fixes Generate offline map to avoid 2 instances of a map. Please refer to the issues below for more details. Thanks @sbiswas96 !
Linked Issue(s)

common-samples/issues/3808
waverley/issues/2500
https://github.com/Esri/arcgis-runtime-samples-qt/pull/1553

How To Test

Sample still behaves the same
README reads correctly

![simulator_screenshot_FBE10478-4266-404E-80F8-394B852E2B21](https://user-images.githubusercontent.com/52215269/206589316-c9e7cef6-8225-4515-bbfc-edf87563ec62.png | width=200)
Sample works fine but looks like the button in the code portion is off center.


Disallow bad retry delay/jitter combination

When stress testing #1, I noticed that it's possible for
get_retry_timeout() to do something unexpected and throw an error.  By
disallowing retry_jitter >= retry_delay, and also changing the way
get_retry_timeout() works, we avoid that possibility.

The pr is in draft mode because I'm not certain about the changes to get_retry_timeout().

ping?

bump?


Migrating from keras to tf.keras

I'm using tf.keras (with TF2), instead of keras standalone library since TF2 integrates better.
So I had to make a few fixes:
import keras.foo becomes
import tf.keras.foo
and
Model(input = my_input, output = my_output) becomes
Model(inputs = my_input, outputs = my_output)
Otherwise, it's a great implementation. Many thanks 非常谢!

I'm using tf.keras (with TF2), instead of keras standalone library since TF2 integrates better.
So I had to make a few fixes:
import keras.foo becomes
import tf.keras.foo
and
Model(input = my_input, output = my_output) becomes
Model(inputs = my_input, outputs = my_output)
Otherwise, it's a great implementation. Many thanks 非常谢!

我也发现了这个问题，在model.py脚本56行处，需要更正为
model = Model(inputs = inputs, outputs = conv10)
这样才运行正确。
感谢


if os using cgroup v2 then choose runc.v2

Add better diagnosic output to show  the absence of cgroup. Or if cgroup1 or 2 are being used.  Fixes #2054

@ktsakalozos  added the ability to change the containerd.toml to  use cgroupV2 if the os is currently running with cgroupV2.
I used the same test logic as in the inspect.sh cgroup test. I'm not sure if this is more correct than checking for if we are running with systemd.unified_cgroup_hierarchy=0 or systemd.unified_cgroup_hierarchy=1

Is there anything i can do to improve this PR? I have build locally (pulling in master frequently) and it is working well for auto selecting runcV2.

Hi @tbertenshaw already looked at this PR, there is nothing wrong with it. We will target v1.22 for this to get some more testing on the v2 cgroups across as many distributions as we can.

@ktsakalozos cool.

just pulled master into my branch since 1.21.
Notice failing on CLA check. Is there something i am missing. I did notice a recent CLA check commit, i have signed the CLA.


Clean folder path autoware_common/tmp /lanelet2_extension to autoware_common/lanelet2_extension

Checklist

[X] I've read the contribution guidelines.
[X] I've searched other issues and no duplicate issues were found.
[X] I've agreed with the maintainers that I can plan this task.

Description
I don't know why there is a tmp folder for autoware_common/tmp /lanelet2_extension
Purpose
clean (remove) the tmp folder so that it looks more clean for folder structure
Possible approaches
remove the tmp folder, move lanelet2_extension to its upper path
Definition of done
tmp folder is removed

The lanelet2_extension package was moved to this repository by https://github.com/autowarefoundation/autoware_common/issues/84. My understanding is that this is meant for cloning and referencing only lanelet2_extension from other repositories. However, it is not clear whether this repository is suitable as a destination. Therefore, I think that it is placed under tmp directory. We may need to consider moving this package to an independent repository.


import/no-extraneous-dependencies and import/order false postives since version 2.23

Since the update to version 2.23, we have a lot of false positives in our project being part of two categories :

error  'rxjs/operators' should be listed in the project's dependencies. Run 'npm i -S rxjs/operators' to add it  import/no-extraneous-dependencies : rxjs/operators is a sub-module of rxjs so I don't have to add it to project dependencies.
*error  `@models/partner/partner-id` import should occur before import of `@models/partner/partner`               import/order : I can fix these issues, but it seems that the order has changed between two versions and I don not understand why and if it is on purpose ? I can not find mention to this in the changelogs.

Cheers 🤙

I'm having this same issue with rxjs/operators any solution to fix that?

cc @paztis, #1696 may have caused this first issue.

@mlbiche for the order issue, can you provide the exact code it's warning on?

@ljharb Here it is :
import { Partner } from '@models/partner/partner';
import { PartnerId } from '@models/partner/partner-id';

It is doing the same whenever there are two files at the same path with a common prefix. Before, the shortest one was considered first.

Updated to "eslint-plugin-ngrx": "1.23.0"  and I 'm still getting;
/app/src/app/app.component.ts
  7:1  error  'rxjs/operators' should be listed in the project's dependencies. Run 'npm i -S rxjs/operators' to add it  import/no-extraneous-dependencies

#2071 should fix the ordering issue.

#2071 should fix the ordering issue.

Not sure if covered by this PR, but the following comes up as an error since upgrading to 2.23:
import { UserInputError } from 'apollo-server-express'

import { new as assertNewEmail } from 'Assertions/Email'

// .eslintrc.json (abridged)
{
  "plugins": [
    "import",
  ],
  "rules": {
    "import/order": [
      "error",
      {
        "alphabetize": {
          "caseInsensitive": true,
          "order": "asc"
        },
        "groups": [
          "builtin",
          "external",
          "internal",
          "parent",
          "sibling",
          "index"
        ],
        "newlines-between": "always"
      }
    ],
  },
  "settings": {
    "import/resolver": {
      "babel-module": {},
      "webpack": {}
    }
  }
}

The codebase I’m working on uses the convention that aliases start with a capital letter. There should be a space between import groups. The error goes away when removing the empty line between both import statements.

@lensbart Could you file that as a separate issue?

Sure thing! https://github.com/benmosher/eslint-plugin-import/issues/2081

Is the defect still present ?
EWHat is the resolver plugin you use ? I don't encounter the issue on my side

ah ok I see the problem.
With the new mechanism, we search for hte fist packageJson ancestor
the problem is rxjs /operators/package.json exists with this content
{
  "name": "rxjs/operators",
  "typings": "./index.d.ts",
  "main": "./index.js",
  "module": "../_esm5/operators/index.js",
  "es2015": "../_esm2015/operators/index.js",
  "sideEffects": false
}

So it isconsidered as an independent module, what is not the case...
It is an error of the rxjs developers I think
What can we do for this ?

That is the package.json for a secondary entry point of the package. Until the exports field becomes more widely supported these files are unfortunately going to be around.
To find the root package.json for a particular package, the node_modules directory could to be used in the check.
For example:

node_modules/<unscoped_package>/package.json
<EMAIL_ADDRESS>
Alternatively, the package.json could be read and validated for all required fields but that would probably be more expensive.  There is no version in the above package.json, for example.

@paztis package.json files are only the root of a project when ../ is named "node_modules".

No, this is not true. I do this recursive search explicitely to support the. Monolithic repositories (multiple packages in one repository).
If we do like you said, we will always found a parent package.json  my hat is totally unrelated with the package.
Standards are 1 package.json for each delivreable

In case we of monorepo, what is possible is to resolve the import file without resolving the symbolic links. Potentially this may also us to check the node_module path. We still have the case of scoped modules to verify

{
  "name": "rxjs/operators",
  "typings": "./index.d.ts",
  "main": "./index.js",
  "module": "../_esm5/operators/index.js",
  "es2015": "../_esm2015/operators/index.js",
  "sideEffects": false
}

Note that this in 6.x branch and not in main (7.x) anymore - not sure if this error occurs with 7.x version - cannot test that because I'm using RxJs with Angular and it doesn't support RxJs 7.x at this time.

solution I propose in #2072 might resolve your problem. It's will be a little less strict on the imports but might be enough for these cases

@paztis i said an installed project. In other words, if you're inside a node_modules directory, then you're not in a monorepo, you're an npm-installed package, and the rule I described applies.

I  really understand your problem.
But what you misunderstood is that in a mini repo, under node_modules you have all the modules of you monorepo in symlink.
So when you resolve the filename of the imports, the resolver can give you the real path of the file that is not under node_modules.
This is the principle of monorepos
And as I can it control the resolvers as they are plugins of eslit-import (lot of plugins exist on nom), I won't just check if I'm under node module or not

@paztis yes, but the symlink will be realpathed, so the resulting paths won't be under node_modules.

Either way, "supporting a monorepo" is of zero importance compared to "supporting normally installed dependencies", if there's a conflict between the two.

Sorry but the only non standard thing here is the rocks module that produces abnormal package.json in its subfolders.
Now I've propose you a solution that will resolve your errors. So do you want it or not ?

Nested package.jsons aren't abnormal, they are an explicitly encouraged pattern with node's native ESM support.
I'll take a look at your comment in #2072.

To detect the module package from one package file, we're using read-pkg-up, downloaded 38 228 565 times on npm.
It recursively move up until it founds a package.json
So it means everyone that use this module is not correctly discovering the packages ?

Esm in node is really recent. Monorepo are older.
Need to found one solution to make both cohabit

Yes, if they're using read-pkg-up and stopping at the first package.json AND using it as the project root, then they all have this bug.
Nested package.jsons aren't recent; node has always supported nested package.json files with a "main". The issue is that the closest package.json hasn't ever been guaranteed to be the package root, so that's the bug that needs fixing.

Yes, if they're using read-pkg-up and stopping at the first package.json AND using it as the project root, then they all have this bug.

From its readme:

Read the closest package.json file

To me, that's not a bug, but instead the expected behaviour.

Of that package, absolutely. However, anyone naively using it to find the root package.json for a package is what has a bug.

But, how to detect the actual package root?

@piranna there isn't a robust way for things not inside a node_modules folder. There's reliable signals - if it has "exports", or "publishConfig", or "private", I'd call it top-level. If the repo has a ".git" directory, it's probably top-level. It'd be a heuristics-based approach.

I am having this very same problem with Firebase imports.

I've proposed a fix for extraneous-dependencies in PR #2097

Still happens with firebase

"eslint-plugin-import": "^2.24.2",

Still happens with firebase
"eslint-plugin-import": "^2.24.2",

did you list @firebase/auth in your project dependencies or devDependencies? If not, then it's expected result. Even if you have @firebase/auth in your node_modules as part of the another module's dependencies.
This issue happened mainly for sub module or sub files of module detected as individual module. While @firebase/auth is individual module.
For example rxjs is individual module that exported operators.js in that module. So we can import rxjs/operators.js or rxjs/operators which is valid as rxjs as dependencies.

Oh, I didn't know about the scope thing at all. And I don't know why firebase is using separate modules as its own packages when it says it's not supposed to be used directly :D
Anyways, all good when I removed the "@" and used firebase/auth instead.
Thanks for the info.


Type inference fails in JSX if union type is involved.

TypeScript Version:  2.4.2
Code
type Props<T> = PropsBase<string> | PropsWithConvert<T>;

interface PropsBase<T> {
    data: T;
}

interface PropsWithConvert<T> extends PropsBase<T> {
    convert: (t: T) => string;
}

function InferenceFail<T>(props: Props<T>): JSX.Element {
    return <div />;
}

InferenceFail({data: '1'});
const test = <InferenceFail data={'1'} convert={n => '' + n} />;
InferenceFail({data: 2, convert: n => '' + n});

Expected behavior:
All lines should compile.
Actual behavior:
The JSX version does not compile.
Removing the type union, the JSX version is able to compile
Possibly related: #17295

This no longer errors in our nightlies, but I hesitate to call it "fixed". The signature is being instantiated in a way which is inconsistent with the types of the members passed; for example, in <InferenceFail data={'1'} convert={n => '' + n} />;, InferenceFail has signature function InferenceFail<"1">(props: Props<"1">): JSX.Element, but data has the type string, and convert has the type (n: any) => string. The callback is incorrectly typed, which is the big issue here.

@weswigham That's not the same semantics as far as I can tell.
    data: string | T;
    convert?: (t: T) => string;
}

This would allow me to have T be int, but not provide a convert function.

@alshain correct. I was merely pointing out a similar instance where we performed inference correctly. In any case, we should do inferences correctly in master/the nightly since #17790 is merged.


Filter on input select

Hi!
I know that this is not an issue and I know that this is not the proper place to ask. I've asked this on stackoverflow, but seems that is going to be unanswered and I need this to keep on going at work.
I need to implement a search engine to filter the input options. In the example files than I'm using, the user will have more than 8000 options to choose, so it's imperative to have a filter or search feature.
What I have thought it's to create another input where the user can type whatever he/she wants and then "change" the input options regarding that. Please check this image:

This data come from a DB, so, another option is to perform a mysql query where I filter the parameters with a like command, but, since the data is already (or should be already) downloaded, I think it will be more efficient to filter this data locally. Although, DB query is pretty fast. (Question 1: I'm right?)
json structure is:
{
    "tag1": "tag1",
    "tag2": "tag2",
    "tag3": "tag3"
}

So, the code that raises the sweetalert modal is:
$(function(){
        $("#taginfo").click(function(){
            console.log("click on tag info");
            swal({
            title: 'Select Tag',
            html: '<input id="swal-input1" class="swal2-input">',
            input: 'select',
            inputOptions: inputOptionsPromise,
            inputPlaceholder: 'Select tag',
            showCancelButton: true,
            inputValidator: function (value) {
                return new Promise(function (resolve, reject) {
                  if (value != '') {
                    document.getElementById('taginfo').value = value;
                    resolve();
                  }else {
                      reject('You need to select one tag')
                  }
                })
            }
            }).then(function (result) {
                swal({
                    type: 'success',
                    html: 'You selected: ' + result
                })
            })
        });
    });

And I've getting the data with:
var inputOptionsPromise = new Promise(function (resolve) {
    setTimeout(function () {
            //place options here
            console.log("options promise");
            $.getJSON("/resources/tags.json", function(data) {
                console.log(data);
                resolve(data)
            });
    }, 2000)
})

How can I filter the data?
Thanks and sorry for posting this here.

I need to implement a search engine to filter the input options.

This is so unrelated to SweetAlert2, I'm closing this, sorry. StackOverflow is the right place to ask questions like this.
If you don't get the answer on SO next 2 days, you can start the bounty so the questions will get the proper attention :)

Ping me if you don't have enough reputation to start the bounty, I'll do that :)

Hi @limonte I know this is so unrelated, sorry about that. I'll probably do a workaround and try to perform custom search for it.
Thanks and again, sorry about this issue.

I've managed to fix this. If @limonte don't mind, I'm sharing this here, maybe it will help someone in the future.
var inputOptionsPromise = new Promise(function (resolve) {
        setTimeout(function () {
            $.getJSON("/resources/tags.json", function(data) {
                resolve(data);
            });
        }, 2000)
    })
    var inputOptionsFilteredPromise;
    function generatePromise(){
        console.log("generatePromise");
        inputOptionsFilteredPromise = new Promise(function (resolve) {
            setTimeout(function () {
                $.getJSON("/resources/tags.json", function(data) {
                    for (var key in data) {
                        if (data.hasOwnProperty(key)) {
                            var tmpKey = key.toUpperCase();
                            var tmpUserInput = userInput.toUpperCase();
                            if (tmpKey.indexOf(tmpUserInput) == -1){
                                delete data[key];
                            }
                        }
                    }
                    resolve(data);
                });
            }, 2000)
        })
    }

    var userInput;
    $(document).on('click', '.SwalBtn1', function() {
        //Some code 1
        console.log('Button search');
        userInput = document.getElementById('swal-input1').value;
        console.log("userInput: "+userInput);
        generatePromise();
        swal({
            title: 'Filtered Tag',
            input: 'select',
            inputOptions: inputOptionsFilteredPromise,
            inputPlaceholder: 'Select tag',
            confirmButtonColor: '#25C76A',
            showCancelButton: true,
            inputValidator: function (value) {
                return new Promise(function (resolve, reject) {
                  if (value != '') {
                    document.getElementById('taginfo').value = value;
                    resolve();
                  }else {
                      document.getElementById('taginfo').value = "default";
                      resolve('You need to select one tag')
                  }
                })
            }
        }).then(function (result) {
                swal({
                    type: 'success',
                    html: 'You selected: ' + result
                })
        })
    });
    $(function(){
        $("#taginfo").click(function(){
            console.log("click on tag info");
            swal({
            title: 'Select Tag',
            input: 'select',
            inputOptions: inputOptionsPromise,
            inputPlaceholder: 'Select tag',
            confirmButtonColor: '#25C76A',
            html:'<input id="swal-input1" class="swal2-input" placeholder="Search...">' + '<button type="button" role="button" tabindex="0" class="SwalBtn1 customSwalBtn">' + 'Search' + '</button>',
            showCancelButton: true,
            inputValidator: function (value) {
                return new Promise(function (resolve, reject) {
                  if (value != '') {
                    document.getElementById('taginfo').value = value;
                    resolve();
                  }else {
                      document.getElementById('taginfo').value = "default";
                      resolve('You need to select one tag')
                  }
                })
            }
            }).then(function (result) {
                swal({
                    type: 'success',
                    html: 'You selected: ' + result
                })
            })
        });
    });


Organize Imports with shorter prefix first

🔎 Search Terms
organizeImports,sorting
🕗 Version & Regression Information

This is the behavior in every version I tried, and I reviewed the FAQ for entries about organizing imports

⏯ Playground Link
No response
💻 Code
it("Sort prefix imports first w/ dash", () => {
    const sortedImports = parseImports(
        `import logoInverted from "@assets/logo-inverted.svg";`,
        `import logo from "@assets/logo.svg";`,
    );
    const actualCoalescedImports = ts.OrganizeImports.coalesceImports(sortedImports, /*ignoreCase*/ true);
    const expectedCoalescedImports = parseImports(
        `import logo from "@assets/logo.svg";`,
        `import logoInverted from "@assets/logo-inverted.svg";`,
    );
    assertListEqual(actualCoalescedImports, expectedCoalescedImports);
});

it("Sort prefix imports first w/ underscore", () => {
    const sortedImports = parseImports(
        `import logoInverted from "@assets/logo_inverted.svg";`,
        `import logo from "@assets/logo.svg";`,
    );
    const actualCoalescedImports = ts.OrganizeImports.coalesceImports(sortedImports, /*ignoreCase*/ true);
    const expectedCoalescedImports = parseImports(
        `import logo from "@assets/logo.svg";`,
        `import logoInverted from "@assets/logo_inverted.svg";`,
    );
    assertListEqual(actualCoalescedImports, expectedCoalescedImports);
});

it("Sort prefix imports first", () => {
    const sortedImports = parseImports(
        `import logoInverted from "@assets/logoInverted.svg";`,
        `import logo from "@assets/logo.svg";`,
    );
    const actualCoalescedImports = ts.OrganizeImports.coalesceImports(sortedImports, /*ignoreCase*/ true);
    const expectedCoalescedImports = parseImports(
        `import logo from "@assets/logo.svg";`,
        `import logoInverted from "@assets/logoInverted.svg";`,
    );
    assertListEqual(actualCoalescedImports, expectedCoalescedImports);
});

🙁 Actual behavior
Organized Code
import logoInverted from<EMAIL_ADDRESS>import logo from<EMAIL_ADDRESS>
🙂 Expected behavior
Organized Code
import logo from<EMAIL_ADDRESS>import logoInverted from<EMAIL_ADDRESS>
Additional information about the issue
No response

I don't understand what you're doing here. Whose testcases are these? What editor command are you running? Are you asking for new configuration? Please file an issue that more clearly describes the problem.


Failing logout

When a client app calls the logout endpoint (that seems to be the same for oauth and basic auth in mokey) it seems not to be handling the current logout flow as described in hydra: https://www.ory.sh/hydra/docs/guides/logout
The current implementation for logout it seems to be this one:
https://github.com/ubccr/mokey/blob/2e243ee7ae81403c7ca49b2def95d6cf3b606d2c/server/auth.go#L102
But doesn't seem to be using the described hydra logout challenge flow. In the logs we also see:
level=warning msg="Logout - Failed to revoke hydra authentication session" error="No sid or user found in session"

I've looked at the browser storage and the mokey-sessck is only set when doing login directly on mokey interface (https://login.server/auth/login), not if validating through hydra (https://login.server/oauth/login?challenge...), neither if bypassing hydra.
So, at logout, mokey cookie just doesn't exist. I think this is a bug.

@jvinolas thanks for the report. This may or may not be related to your issue. But there was definitely a bug in the logout/revoke session handling in mokey. This has been fixed in  f8c8e3590f2328ecbb49327356f92c27f3115545. The error was:
level=warning msg="Logout - Failed to revoke hydra authentication session" error="response status code does not match any response statuses defined for this endpoint in the swagger spec (status 502): {}"

The way the current logout/revoke works in mokey is that it assumes you're running hydra and mokey on the same server. It also assumes you're running the hydra administrative API endpoint (port 4445) bound to localhost with fake-tls-termination enabled. When a user signs out, mokey makes an admin API request to hydra to destroy all sessions for that user. In this case there is no need to implement the user logout flow.

Sorry, I did not explain well. I'm using freeipa+mokey+hydra in a docker-compose, all in the same internal network (what it is almost the same as having it in the same host).
Validation is going correctly from my client apps (moodle/nextcloud) but when I go to logout from any app it fails:
level=warning msg="Logout - Failed to revoke hydra authentication session" error="No sid or user found in session"
Even with the fake-tls-termination enabled. When I logout from apps they redirect to /auth/logout, but as you can see from the code and from the error, mokey is trying to guess the user id from mokey-sessck cookie that was not set on login. I've checked that the mokey-sessck is not being set when doing this login flow through hydra but correctly set if not using oauth at all (validating in mokey with basic auth, not from app/hydra).

@jvinolas Thanks so much for the additional details. Think I got this fixed up. Can you test? Let me know and I'll close this out.

Perfect! So quick, thanks! You can close this one.


fix: create reservation - date filter lost context

Codecov Report

Merging #41 (f5c7d0f) into dev (a3728ea) will decrease coverage by 0.14%.
The diff coverage is 62.96%.

@@            Coverage Diff             @@
##              dev      #41      +/-   ##
==========================================
- Coverage   72.36%   72.22%   -0.15%
==========================================
  Files         162      166       +4
  Lines        2566     2585      +19
  Branches      220      224       +4
==========================================
+ Hits         1857     1867      +10
- Misses        682      691       +9
  Partials       27       27

Impacted Files
Coverage Δ

frontend/src/app/core/core.module.ts
100.00% <ø> (ø)

...rontend/src/app/core/store/actions/auth.actions.ts
97.61% <ø> (ø)

.../app/core/store/reservations/reservations.state.ts
17.97% <ø> (ø)

...d/src/app/core/validators/reservation.validator.ts
12.50% <ø> (ø)

...c/app/shared/components/navbar/navbar.component.ts
11.11% <0.00%> (-3.18%)
:arrow_down:

...ntend/src/app/core/interceptor/lang.interceptor.ts
25.00% <25.00%> (ø)

...rontend/src/app/core/store/actions/base.actions.ts
25.00% <25.00%> (ø)

frontend/src/app/core/store/ui/ui.state.ts
46.66% <46.66%> (ø)

frontend/src/app/core/store/ui/ui.selector.ts
50.00% <50.00%> (ø)

...tend/src/app/core/store/actions/routing.actions.ts
66.66% <66.66%> (ø)

... and 5 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


BibCirculation: display link to add copy when all items are missing

Originally on 2011-07-22
When viewing the "Holdings" tab of a record for which "all copies are missing", the display misses an admin link to "add a copy", as it is done when there are simply no copies.
(Requested by Jens in RQF0020333)
Note that it is still possible to add new copies from the BibCirculation admin interface in this case.

@egabancho @kasioumis @ludmilamarian Is this still the case in CDS formats?


Implement Asteroid Pipeline

Tickets addressed: 969
Review: By commit
Merge strategy: Merge (no squash)

##Description:
A blueprint pipeline for this was implemented using an unreal plugin, Geometry Script. The pipeline reads in a mesh, converts it to a dynamic mesh (at this point the mesh can be altered), converts it back to a static mesh, and creates a new BP_Asteroid actor with the resulting static mesh.
##Validation:
The blueprint was validated by visually inspecting the test scene, AsteroidBlueprintTest_Lvl. It was confirmed that the actor was spawned at the world origin, with the ryugu_veryrough Mesh, and the MI_Gravel_Ground_vmgmafun_2K material.
##Documentation:
No documentation change is needed.
##Future Work:
Future work includes connecting this pipeline to the basilisk messaging system.

What is the procedure one would follow if they wanted to independently verify this PR? Compile, run editor, play level...etc.


Add RateLimiter.dt

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

25 of 27 (92.59%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-1.7%) to 98.319%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

loop_rate_limiters/rate_limiter.py
22
24
91.67%

Totals

Change from base Build<PHONE_NUMBER>:
-1.7%

Covered Lines:
117

Relevant Lines:
119

💛  - Coveralls


Removed composer.lock

Added composer.lock to .gitignore file
Organizing .gitignore file

Thanks for the contribution! 👍


Student Reassessment Status on Tracker

As a (Student) I want (to know the status of my reassessment) So That *.....
Additional Context

enter text here
enter text here

Acceptance Criteria

[ ] Given (Context), When (action carried out), Then (expected outcome)
[ ] Given (Context), When (action carried out), Then (expected outcome)

sorry if this is a duplicate.

@michesmith Can you take a look at #2673 (Student application tracker adjustments for new assessment trigger type) and see if this covers what you expect of this ticket?

Closing as a duplicate as mentioned above,


[1.x] KeyRingProvider initialization causes thread pool starvation when server starts under load

Consider back-porting https://github.com/aspnet/DataProtection/pull/241 to 1.x.
cref original issue #233 (fixed for 2.0)

Sorry, repeating from the PR:

Ok, thanks. One my my customers was on the original issue/thread here, and from their perspective data protection is in essence broken and unusable until this fix makes it into a release (as I'd imagine anyone else trying to use data protection, especially in azure). They aren't really in a position to move to 2.0 anytime soon.

Looks like there's a trivial workaround, does it have any catches?

Looks like there's a trivial workaround, does it have any catches?

Well, I can only say that my customer was close to dropping ASP.NET Core support (and going back to the ancient days of Katana even!) given that this felt like a critical issue "out of the box". Perhaps fixing perception is more important?

This issue was moved to aspnet/Home#2510


null slug for invite! user

Code:
User.invite!({email<EMAIL_ADDRESS>name: "John John"}, @user)
Error generated:
ActiveRecord::NotNullViolation: PG::NotNullViolation: ERROR:  null value in column "slug" violates not-null constraint
My fix:
before_invitation_created :generate_slug

private

  def generate_slug
    return unless slug.nil?

    self.slug = set_slug
  end

I want to make sure that a slug is created (if exists) before the invitation is created to avoid the null violation error. Is there a way to have this fixed from within devise_invitable?
Side note: I am a ruby newbie

There is nothing about slugs in devise invitable, that's a custom code you need to add to your model, nothing related to devise invitable


Update master to Hugo version 0.57.2

This PR reintroduces #16094, which replicates #16104 and #16151 for master (and thereby current and future versions).
Fixes #16066
Context
#16066 exhibits behavior characteristic of gohugoio/hugo#5615. To resolve the issue, we need to upgrade Hugo to a version that includes the solution.
Because #16094 got lost in the release timing shuffle, this PR didn't make it into master.
/sig docs
/priority important-soon
/assign @aimeeu

End user acceptance testing https://deploy-preview-16813--k8s-v1-15.netlify.com/

[x] "latest version" link in deprecation warning on k8s.io points to https://kubernetes.io/docs/home/ (from issue 16606)
[x] "latest version" link in deprecation warning on k8s.io/docs/home points to https://kubernetes.io/docs/home/ (from issue 16606)
[x] links on Home page point to 1.15 version
[ ] search results return 1.15 pages - NO search results return links to non-deprecated content (looks like this how it's always worked)
[x] reference API docs 1.15 version and buttons work
[x] eyeball links on various pages to make sure they all point to 1.15

I fetched this PR to my laptop for local testing:

One compile warning:

Building sites … WARN 2019/10/11 10:59:15 Content directory "/home/aimee/Dev/git/github.com/aimeeu/k8s/sigdocs/website/content/en/docs/reference/kubernetes-api" have both index.* and _index.* files, pick one.

[x] Docs smoke test page renders correctly

Based on my random testing, I'd say this is good to push once the makefile has been updated.

@aimeeu

search results return 1.15 pages - NO search results return links to non-deprecated content (looks like this how it's always worked)

Yup! That's intentional: diluting our SEO across multiple versions of the same page is a bad idea.

/lgtm

@aimeeu If this looks good to you, please /approve.

/assign @bradtopol

/lgtm
/approve


Is the vocabulary of BERT the same as the vocabulary of BERT-joint?

As mentioned in the technical report, special markup tokens, such as "[Paragraph=N]" and "[Table=N]", were introduced. I think there are no such tokens in the vocabulary for BERT model. So the embedding table in the first layer of the transformer encoder seems different between BERT and BERT-joint. But the BERT-joint used a pre-trained  BERT model. I had a hard time understanding this part. Any ideas?

BERT-joint uses different vocab as original BERT. Vocab list used for bert-joint has replaced [unused=xx] tokens from bert original vocab keeping the total size as it is (original vocab.txt file includes ~1k [unused=xx]). bert-joint is initialized from pre-trained bert model, but as long as the total number of vocabs stays same, taking pre-trained bert as initialization works.


Minor fixes to Mac OS X docs

I have integrating the changes in my PR, maybe once that is merged, we can abandon it or vice versa.

I'm closing this PR because PR #1825 deleted the file docker-on-mac.md and that PR is now merged.


Idea: Coerce value case to match enum value case

We had a client today that wanted the ability to be able to have enum validation not be case-sensitive. Great in theory, but only adds to bad data problem and increases the complexity of the code behind the validation step. After the meeting, I had the idea - what if we coerced the data to match the string in the enum list. This would allow poor quality data to be uploaded from 3rd parties and be sanitized during validation. See example below.
Curious if others have run into this or think this might be useful.
If this was built it could look like this:
Ajv options object
var ajv = new Ajv({ coerceTypes: ['array','enum']] });

JSON Schema
{
  "type":"array",
  "items": {
    "type":"string",
    "enum":["pH"]
  }
}

Sample data
["ph","PH","pH","Ph"]

Validation result, data AFTER validation, error messages
valid == true
["pH","pH","pH","pH"]

Hi @willfarrell. It is almost the same as https://github.com/epoberezkin/ajv/issues/705,
it’s actually the third time this idea brought up.
I think creating a custom keyword that would manage case and any other text transformations is better - it will be explicit in the schema rather than implicit. It would still be ignored by other validators, same as transformation via config, but at least it will be clear that something is ignored.


Load config from cache

Status
READY
JIRA Ticket
MOB-90
Description

load config from cache on SCBackendService start
fix parsing SCLayerConfig to json (layer.fields -> layer.schema.fields)

closing this to change base to develop


Estimation of real gap size

Hello,
As far as I understand, currently (v1.1) the only way to control the gap between contigs is by setting a uniform gap size through the padding parameter. It could be useful if one could estimate the actual gap between contigs based on the mapping to the reference, and use this to introduce variable gap sizes.
This is important when trying to annotate RaGOO output, especially when the original assembly is highly fragmented. We want to bring together adjacent contigs so that annotation software can predict genes spanning multiple contigs On the other hand, we don't want to bring together contigs with large gaps between them because this can confuse the annotation.
If you have a suggestion on how to do that using the current release, I'd be happy to hear. Otherwise, I can only suggest this as a future feature.
Thanks!

Hi there,
Thanks for the suggestion. This was on my list of features to add to v2 and I have implemented a prototype in my development code. Unfortunately, I haven't quite got it to work as expected: my current method seems to add far too many gaps, consistently overestimating the space between adjacent contigs.
I will probably come back to this at some point to see if I can include this in v2. As it stands now, the v2 code allows for such a feature to be plugged in should I come up with something that works. For example, the intermediate output file (which you commented on in a different post) now specifies gap positions, thus allowing for variable gap sizes.
I'll leave the issue open so that I can comment here if I can make improvements. Thanks


run AppVeyor on Julia 0.6

Codecov Report

Merging #16 into master will decrease coverage by 0.3%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #16      +/-   ##
==========================================
- Coverage   98.34%   98.04%   -0.31%
==========================================
  Files           7        7
  Lines         666      666
==========================================
- Hits          655      653       -2
- Misses         11       13       +2

Impacted Files
Coverage Δ

src/streamreader.jl
97% <0%> (-1%)
:arrow_down:

src/node.jl
98.1% <0%> (-0.28%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c67645b...790a94c. Read the comment docs.


Add Mylar Age Ratings values to ComicInfo schema

I propose adding the content rating values that Mylar uses to the AgeRating field of ComicInfo.
These values are:

All Ages
9+
12+
15+
17+
Adult

These values closely (but not identical) resemble the DC/Marvel ratings system as described here: https://www.howtolovecomics.com/2020/02/10/comic-book-age-ratings, and I feel are good inclusions to the standard as they are clear and concise.
The current schema has lots of overlap and feels non-uniform in its values. This proposal does not suggest to remove the existing values, but to add existing values already used in a popular library management tool.
If the ComicInfo schema is meant to be a descriptive standard, then the inclusion of existing metadata would make sense. However, if the schema is meant to be prescriptive, then I would assume that the AgeRatings field would be pared down to a select few values and remove current ambiguity.

We won't be removing any values, as this project aims at keeping the schema backward compatible.
Adding values to the enum wouldn't hurt IMHO:

I doubt any consumer actually validate XML against the XSD. If that was the case, a 2.1 XML with the new values wouldn't validate against the 2.0 XSD.
The recommended approach for consumers (we still need to document that by the way!) is to be flexible around the schema. If a field is not there, ignore it. If you can't parse it for any reason, ignore it. The same would go for the new enum values, if you don't know about them, ignore it. Note that the schema itself in its original form is very rigid, for example forcing the order of the elements with a sequence, but in reality no consumer would enforce that.


I receive the same data from network twice after connection hang up error!

Hi!
I have got small dapp which tracks transactions on EOS network and it is very important for me to not receive over your library duplicated data and I am pretty sure I do.
After library hangs connection for a moment with error:
{
  type: 'error',
  errors: [
    {
      message: 'graphql: hammer search result: rpc error: code = Unknown desc = Internal server error (trace_id:
      56c9fe4be60757f244e32b37e56ce125)'
    }
  ],
  terminal: true
}

I receive the same data I already received before error being thrown.
This is very dangerous for my app. I plan to receive and send from my contract money in form of EOS and other tokens to users.
Please advice what to do.

Please provide full logs so I can see more what is happening.

Please provide full logs so I can see more what is happening.

It happens very rarely once per few days or even rarer I will try to provide you proper logs, but it can take.

{"type":"data","data":{"searchTransactionsForward":{"cursor":"pA7m1GKnJM1KNIOLIKwmife7JpQ9AltvVAvjIBtBhIrypCPGjMygATI=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"1.5400 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 13:04:26 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: '2P-2bFDidypWTWs2-2FqoPe7JpQ9AltvUgngIBsT1oj3oybD1J6jADQ=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"2P-2bFDidypWTWs2-2FqoPe7JpQ9AltvUgngIBsT1oj3oybD1J6jADQ=","undo":false,"trace":{"matchingActions":[{"json":{"from":"tonelb.ftw","to":"eosgamesdepo","quantity":"0.5520 EOS","memo":"1000000410"}}]}}}} Tue, 11 Jan 2022 13:04:26 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'y7vnz3ATdQBMYeU7c3XrgPe7JpQ9AltnVQzhIBtB09j-pnHBj5mlBmk=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"y7vnz3ATdQBMYeU7c3XrgPe7JpQ9AltnVQzhIBtB09j-pnHBj5mlBmk=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"2.3000 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 13:04:26 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'N_pqBglD_jY-eBLqZt7fRPe7JpQ9Al5qUAviIBtJjI3w8yeTjJXwVmU=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"N_pqBglD_jY-eBLqZt7fRPe7JpQ9Al5qUAviIBtJjI3w8yeTjJXwVmU=","undo":false,"trace":{"matchingActions":[{"json":{"from":"tonelb.ftw","to":"eosgamesdepo","quantity":"0.1070 EOS","memo":"1000000410"}}]}}}} Tue, 11 Jan 2022 13:04:26 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'BJcfpTvfMqQPvhhqPS3UXfe7JpQ9AlxpUQjlIBtFgomjo3XCi5iiBmI=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"BJcfpTvfMqQPvhhqPS3UXfe7JpQ9AlxpUQjlIBtFgomjo3XCi5iiBmI=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"5.0000 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 13:04:26 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'q4xipOuhjm1XHElfw3fk_Pe7JpQ9AlxoVQ3kIBsQ04L19XrH2JTzAzU=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"q4xipOuhjm1XHElfw3fk_Pe7JpQ9AlxoVQ3kIBsQ04L19XrH2JTzAzU=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"5.0000 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 13:04:26 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'D7H5YcyMWCCsccvFd_Gmsfe7JpQ9AlxoUw_tIBtC1tj0oSTMiZ30VmI=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"D7H5YcyMWCCsccvFd_Gmsfe7JpQ9AlxoUw_tIBtC1tj0oSTMiZ30VmI=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"5.0000 EOS","memo":"1000000220"}}]}}}} Error in d fuse graphql client: Tue, 11 Jan 2022 13:04:26 GMT {   type: 'error',   errors: [     {       message: 'graphql: hammer search result: rpc error: code = Unknown desc = Internal server error (trace_id: 7054321bdec46dd386ad4b9941d539a9)'     }   ],   terminal: true } 2022-01-11T13:04:55.503Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:05:25.509Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:05:55.515Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:06:25.519Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:06:55.523Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:07:25.529Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:07:55.532Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:08:25.537Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:08:55.541Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:09:25.542Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:09:55.548Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:10:25.550Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:10:55.555Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:11:25.558Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:11:55.561Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:12:25.561Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:12:55.565Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:13:25.566Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:13:55.572Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:14:25.574Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:14:55.579Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:15:25.583Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:15:55.589Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:16:25.595Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:16:55.596Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:17:25.599Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:17:55.603Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:18:25.609Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:18:55.614Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:19:25.615Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:19:55.621Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:20:25.624Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:20:55.632Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:21:25.632Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:21:55.633Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:22:25.634Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:22:55.637Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:23:25.638Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:23:55.645Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:24:25.647Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:24:55.650Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:25:25.657Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:25:55.657Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:26:25.664Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:26:55.667Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:27:25.673Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:27:55.677Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:28:25.679Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:28:55.685Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:29:25.686Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:29:55.692Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:30:25.696Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:30:55.700Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:31:25.706Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:31:55.710Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:32:25.713Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:32:55.715Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:33:25.715Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:33:55.716Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:34:25.724Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:34:55.727Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:35:25.731Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:35:55.736Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:36:25.741Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:36:55.748Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:37:25.752Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:37:55.757Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:38:25.764Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:38:55.766Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:39:25.768Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:39:55.774Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:40:25.779Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:40:55.782Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:41:25.784Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:41:55.789Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:42:25.795Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:42:55.798Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:43:25.805Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:43:55.810Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:44:25.815Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:44:55.818Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:45:25.819Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:45:55.823Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:46:25.829Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:46:55.835Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:47:25.838Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:47:55.844Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:48:25.848Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:48:55.854Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:49:25.860Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:49:55.862Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:50:25.867Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:50:55.873Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:51:25.880Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:51:55.887Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:52:25.891Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:52:55.897Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:53:25.898Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:53:55.905Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:54:25.908Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:54:55.913Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:55:25.916Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:55:55.921Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:56:25.926Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:56:55.927Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:57:25.930Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:57:55.935Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:58:25.942Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:58:55.947Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:59:25.948Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T13:59:55.953Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:00:25.958Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:00:55.957Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:01:25.963Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:01:55.968Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:02:25.973Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:02:55.979Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:03:25.986Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:03:55.991Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:04:25.995Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:04:56.001Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:05:26.007Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:05:56.011Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:06:26.018Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:06:56.022Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:07:26.025Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:07:56.028Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:08:26.032Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:08:56.033Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:09:26.036Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:09:56.038Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:10:26.041Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:10:56.042Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:11:26.044Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:11:56.048Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:12:26.050Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:12:56.057Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:13:26.063Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:13:56.065Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:14:26.069Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:14:56.071Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:15:26.071Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:15:56.076Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:16:26.081Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:16:56.088Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:17:26.090Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:17:56.096Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:18:26.100Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:18:56.100Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:19:26.101Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:19:56.106Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:20:26.114Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:20:56.118Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:21:26.118Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:21:56.121Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:22:26.124Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:22:56.131Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:23:26.136Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:23:56.137Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:24:26.143Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:24:56.146Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:25:26.150Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:25:56.155Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:26:26.157Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:26:56.159Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:27:26.166Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:27:56.169Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:28:26.174Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:28:56.180Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:29:26.184Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:29:56.188Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:30:26.192Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:30:56.198Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:31:26.204Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:31:56.208Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:32:26.213Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:32:56.214Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:33:26.221Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:33:56.224Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:34:26.229Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:34:56.232Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:35:26.237Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:35:56.241Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:36:26.243Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:36:56.248Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:37:26.249Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:37:56.253Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:38:26.259Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:38:56.264Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:39:26.268Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:39:56.273Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:40:26.274Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:40:56.279Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:41:26.285Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:41:56.289Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:42:26.292Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:42:56.294Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:43:26.298Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:43:56.304Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:44:26.306Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:44:56.310Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:45:26.311Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:45:56.311Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:46:26.315Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:46:56.321Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:47:26.321Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:47:56.321Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:48:26.321Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:48:56.321Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:49:26.322Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:49:56.322Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:50:26.323Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:50:56.324Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:51:26.324Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:51:56.324Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:52:26.325Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:52:56.325Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:53:26.324Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:53:56.325Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:54:26.325Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:54:56.324Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:55:26.325Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:55:56.325Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:56:26.326Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:56:56.326Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:57:26.326Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:57:56.327Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:58:26.328Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:58:56.328Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:59:26.329Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T14:59:56.330Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:00:26.331Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:00:56.330Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:01:26.331Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:01:56.330Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:02:26.330Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:02:56.330Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:03:26.331Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:03:56.331Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:04:26.332Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:04:56.332Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:05:26.332Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:05:56.333Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:06:26.334Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:06:56.334Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:07:26.334Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:07:56.335Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:08:26.335Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:08:56.335Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:09:26.337Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:09:56.337Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:10:26.338Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:10:56.338Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:11:26.340Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:11:56.341Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:12:26.341Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:12:56.342Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:13:26.342Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:13:56.342Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:14:26.343Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:14:56.344Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:15:26.345Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:15:56.345Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:16:26.346Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:16:56.347Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:17:26.351Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:17:56.356Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:18:26.361Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:18:56.364Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:19:26.368Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:19:56.373Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:20:26.376Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:20:56.379Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:21:26.383Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:21:56.388Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:22:26.390Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:22:56.393Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:23:26.397Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:23:56.402Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:24:26.403Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:24:56.405Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:25:26.409Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:25:56.414Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:26:26.415Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:26:56.417Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:27:26.421Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:27:56.425Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:28:26.427Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:28:56.427Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:29:26.433Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:29:56.437Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:30:26.442Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:30:56.447Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:31:26.452Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:31:56.454Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:32:26.456Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:32:56.461Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:33:26.463Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:33:56.468Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:34:26.472Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:34:56.473Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:35:26.473Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:35:56.476Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:36:26.476Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:36:56.480Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:37:26.484Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:37:56.489Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:38:26.494Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:38:56.499Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:39:26.501Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:39:56.506Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:40:26.510Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:40:56.513Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:41:26.517Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:41:56.521Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:42:26.526Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:42:56.526Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:43:26.526Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:43:56.528Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:44:26.533Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:44:56.537Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:45:26.542Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:45:56.547Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:46:26.552Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:46:56.556Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:47:26.561Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:47:56.565Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:48:26.567Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:48:56.570Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:49:26.573Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:49:56.576Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:50:26.581Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:50:56.587Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:51:26.590Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:51:56.594Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:52:26.594Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:52:56.600Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:53:26.603Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:53:56.608Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:54:26.611Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:54:56.615Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:55:26.620Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:55:56.625Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:56:26.628Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:56:56.632Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:57:26.636Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:57:56.640Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:58:26.643Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:58:56.647Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:59:26.653Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T15:59:56.657Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:00:26.663Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:00:56.667Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:01:26.671Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:01:56.674Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:02:26.679Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:02:56.682Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:03:26.683Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:03:56.685Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:04:26.691Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:04:56.694Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:05:26.698Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:05:56.701Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:06:26.706Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:06:56.710Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:07:26.714Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:07:56.718Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:08:26.721Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:08:56.724Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:09:26.729Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:09:56.732Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:10:26.735Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:10:56.740Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:11:26.744Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:11:56.744Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:12:26.747Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:12:56.747Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:13:26.749Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:13:56.751Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:14:26.755Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:14:56.758Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:15:26.759Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:15:56.764Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:16:26.766Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:16:56.768Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:17:26.774Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:17:56.774Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:17:59.890Z dfuse:graphql-stream Routing socket message of type 'error' with id 'dc-cff18860357fa-0' to appropriate stream Tue, 11 Jan 2022 16:17:59 GMT {   type: 'error',   errors: [     {       message: 'graphql: hammer search result: rpc error: code = Unknown desc = Internal server error (trace_id: 6564cb5fa8074de88b98f3ff89a35bae)'     }   ],   terminal: true } {"type":"error","errors":[{"message":"graphql: hammer search result: rpc error: code = Unknown desc = Internal server error (trace_id: 6564cb5fa8074de88b98f3ff89a35bae)"}],"terminal":true} 2022-01-11T16:17:59.891Z dfuse:graphql-stream Stream [dc-cff18860357fa-0] received error message and auto restart on error set, waiting [2500 ms] before restarting Error in d fuse graphql client: Tue, 11 Jan 2022 16:18:01 GMT {   type: 'error',   errors: [     {       message: 'graphql: hammer search result: rpc error: code = Unknown desc = Internal server error (trace_id: 6564cb5fa8074de88b98f3ff89a35bae)'     }   ],   terminal: true } 2022-01-11T16:18:02.392Z dfuse:graphql-stream About to restart stream [dc-cff18860357fa-0] 2022-01-11T16:18:02.393Z dfuse:socket:graphql Sending message { id: 'dc-cff18860357fa-0', type: 'start', payload: { query: '\n' + '              subscription {\n' + '                searchTransactionsForward(query: "receiver:eosio.token action:transfer data.to:eosgamesdepo",\n' + '                 cursor: "yzs7YNIzWmXlCrbClmtHQ_e7JpQ9BV9vUgPlIBEVg97_9HWW2J6uAjAgPBXVkP_53EPrS1yk1o7IF3l_9pZU79Xvw7wyuHU4FHMvl4_sqby6e_umbV9KIr1mV-2EMN-NCDveYAzycrUF",\n' + '                 irreversibleOnly: false) {\n' + '                  cursor\n' + '                  undo\n' + '                  trace {\n' + '                    matchingActions {\n' + '                      json\n' + '                    }\n' + '                  }\n' + '                }\n' + '              }\n' + '            ', variables: { cursor: '' } } } through socket. Tue, 11 Jan 2022 16:18:02 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'pA7m1GKnJM1KNIOLIKwmife7JpQ9AltvVAvjIBtBhIrypCPGjMygATI=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"pA7m1GKnJM1KNIOLIKwmife7JpQ9AltvVAvjIBtBhIrypCPGjMygATI=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"1.5400 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 16:18:02 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: '2P-2bFDidypWTWs2-2FqoPe7JpQ9AltvUgngIBsT1oj3oybD1J6jADQ=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"2P-2bFDidypWTWs2-2FqoPe7JpQ9AltvUgngIBsT1oj3oybD1J6jADQ=","undo":false,"trace":{"matchingActions":[{"json":{"from":"tonelb.ftw","to":"eosgamesdepo","quantity":"0.5520 EOS","memo":"1000000410"}}]}}}} Tue, 11 Jan 2022 16:18:02 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'y7vnz3ATdQBMYeU7c3XrgPe7JpQ9AltnVQzhIBtB09j-pnHBj5mlBmk=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"y7vnz3ATdQBMYeU7c3XrgPe7JpQ9AltnVQzhIBtB09j-pnHBj5mlBmk=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"2.3000 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 16:18:02 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'N_pqBglD_jY-eBLqZt7fRPe7JpQ9Al5qUAviIBtJjI3w8yeTjJXwVmU=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"N_pqBglD_jY-eBLqZt7fRPe7JpQ9Al5qUAviIBtJjI3w8yeTjJXwVmU=","undo":false,"trace":{"matchingActions":[{"json":{"from":"tonelb.ftw","to":"eosgamesdepo","quantity":"0.1070 EOS","memo":"1000000410"}}]}}}} Tue, 11 Jan 2022 16:18:02 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'BJcfpTvfMqQPvhhqPS3UXfe7JpQ9AlxpUQjlIBtFgomjo3XCi5iiBmI=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"BJcfpTvfMqQPvhhqPS3UXfe7JpQ9AlxpUQjlIBtFgomjo3XCi5iiBmI=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"5.0000 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 16:18:02 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'q4xipOuhjm1XHElfw3fk_Pe7JpQ9AlxoVQ3kIBsQ04L19XrH2JTzAzU=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"q4xipOuhjm1XHElfw3fk_Pe7JpQ9AlxoVQ3kIBsQ04L19XrH2JTzAzU=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"5.0000 EOS","memo":"1000000220"}}]}}}} Tue, 11 Jan 2022 16:18:02 GMT {   type: 'data',   data: {     searchTransactionsForward: {       cursor: 'D7H5YcyMWCCsccvFd_Gmsfe7JpQ9AlxoUw_tIBtC1tj0oSTMiZ30VmI=',       undo: false,       trace: [Object]     }   } } {"type":"data","data":{"searchTransactionsForward":{"cursor":"D7H5YcyMWCCsccvFd_Gmsfe7JpQ9AlxoUw_tIBtC1tj0oSTMiZ30VmI=","undo":false,"trace":{"matchingActions":[{"json":{"from":"bababooey.gm","to":"eosgamesdepo","quantity":"5.0000 EOS","memo":"1000000220"}}]}}}} 2022-01-11T16:18:26.778Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:18:56.783Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:19:26.783Z dfuse:socket:graphql Sending keep alive pong through socket. 2022-01-11T16:19:56.635Z dfuse:graphql-stream Routing socket message of type 'complete' with id 'dc-cff18860357fa-0' to appropriate stream Tue, 11 Jan 2022 16:19:56 GMT { type: 'complete' } {"type":"complete"}
I think I already see the problem in logs when this Internal server error is called stream is restarted with the initial cursor.
Please confirm, if I am right and if you gonna handle it somehow or what can I do on my side now.

You need to send the latest cursor you received on reconnect.

But reconnect is automatic. It's your library which handles it.
How can I handle it?

I know I might provided you with logs in poor format.
Here I attach them in txt file.
dfuse-issue-logs.txt

@BartolomeoItaliano Three  things is required for proper tracking of chain and ensure no duplicated trx is found:

It's required to mark the cursor on the stream to save the active cursor, the active cursor is used to re-connect
It's required to have a $cursor variable in the GraphQL document, it you have an active cursor, it's automatically used and passed to the GraphQL variables
If you deal with head blocks that can fork, you need to deal with the undo: true flag which is set when a transaction is part of a forked block and must be reverted.

From the logs you have, you seems to have the cursor inlined inside your GraphQL document:
2022-01-11T16:18:02.393Z dfuse:socket:graphql Sending message { id: 'dc-cff18860357fa-0', type: 'start', payload: { query: '\n' + '
 subscription {\n' + '
 searchTransactionsForward(query: "receiver:eosio.token action:transfer data.to:eosgamesdepo",\n' + '
 cursor: "yzs7YNIzWmXlCrbClmtHQ_e7JpQ9BV9vUgPlIBEVg97_9HWW2J6uAjAgPBXVkP_53EPrS1yk1o7IF3l_9pZU79Xvw7wyuHU4FHMvl4_sqby6e_umbV9KIr1mV-2EMN-NCDveYAzycrUF",\n' + '
                 irreversibleOnly: false) {\n' + '                  cursor\n' + '                  undo\n' + '                  trace {\n' + '
                   matchingActions {\n' + '                      json\n' + '                    }\n' + '                  }\n' + '                }\n' + '
                    }\n' + '            ', variables: { cursor: '' } } } through socket.
                    ```

You should do something more like this:

subscription($cursor: String!) { searchTransactionsForward(query: "...", cursor: $cursor) ...

This should work as expected and re-connect at the right location.

See the commit function which is called when each data is received and and calls mark here

One more question, in case I use query with cursor provided like this:
subscription($cursor: String!) { searchTransactionsForward(query: "...", cursor: $cursor) ...
How can I provide query with initial cursor when I am resrtarting whole appllication?

Ok, here I found some good example:
https://docs.dfuse.io/ethereum/public-apis/tutorials/searching-transactions/

subscription($cursor: String!) { searchTransactionsForward(query: "...", cursor: $cursor) ...

You pass it in your initial variables. See https://github.com/dfuse-io/client-js/blob/master/examples/advanced/common/graphql-never-miss-a-beat.ts#L152

For people who'se got this problem in the future. Here is proper stream setup:
https://github.com/dfuse-io/client-js/blob/HEAD/examples/basic/eosio/stream-transfers-graphql.ts
Like @maoueh said you need to set  initial parameters and then after each message mark their change:
stream.mark({ cursor: data.cursor })


Update NOTICE Copyright year to 2022

Do we really need to do this? 🤷
Have a great one, everybody!
(see #10166 for reference)

Do we really need to do this?

After googling, it seems that as long as the country is a signatory to the Berne convention, it should not be necessary. However, better double check with a lawyer.


Downloads from modpacks.ch fail with ECONNRESET

Some downloads from modpacks.ch fail seemingly randomly. Retrying seems to be a workaround for now.

Issue should be resolved.


added python code for reverse words in a string

IMPORTANT: Please do not create a Pull Request without an issue.
All Submissions:

[x] I have read the CONTRIBUTING document.
[x] My code is written in Python3 and is ending with .py
[x] Have you checked to ensure there aren't other open Pull Requests for the same update/change?
[x] I have checked that my submission does pass the test on LeetCode.com
[x] Does your filename follow the naming Conventions?
[x] Have you linked your PR to an Issue?

Closing issues
Put closes #XXXX in your comment to auto-close the issue that your PR fixes (if such).

this will solve #761


Nothing happens on this page

https://hrpg.lscult.com/job < while clicking work nothing happens

https://github.com/nenuadrian/Secret-Republic-Hacking-Browser-Game-V3/commit/7992d8a4bff882b3863722b62f6a146a5b79b9c5