hasMethods does not work on default methods

Summary
IMO hasMethod should really follow the same contract as Class.getMethod(), but it doesn't when it comes to default methods inherited from an interface (that are not overridden with an implementation in the class being asserted).
This is because org.assertj.core.internal.Classes.getAllMethods(Class<?>) only looks at parent classes and not any implemented interfaces.
Example
class DefaultHasMethodTest {

  interface HasDefault {
    default void method() {}
  }

  static class Impl implements HasDefault {
  }

  @Test
  void testHasMethod() throws Exception {
    assertThat(Impl.class).hasMethods("method");
  }
}

This might be related to #880.

Thanks for reporting this, I agree this should be taken into account.

Currently, hasMethods doesn't follow Class::getMethods not only because of ignoring the default methods but also because it looks into non-public methods declared by actual or any of its superclasses.
On the other side, hasDeclaredMethods looks into the methods of actual with any visibility but excluding the inherited ones, in line with Class::getDeclaredMethods.
I am wondering if hasMethods should only gain interface lookup but still searching for methods of any visibility, or if it should focus only on public methods and be fully aligned with Class::getMethods. The latter would be a breaking change but in sync with the JDK behavior.

I think I would go with adding default methods to hasMethods and keep looking for methods of any visibility.
We have hasPublicMethods that only look at Class::getMethods, there is a discrepancy between AssertJ and the JDK here but I feel it is not that bad as hasPublicMethods is more obvious than Class::getMethods at indicating that it only looks at public methods.

I missed hasPublicMethods, then yes, I'd add default method lookup to hasMethods. I have the fix almost ready so I'll grab it.


[BUG] [system] [critical] Fatal error. Please report to developers. Log: 'Flic' '89'

Describe the bug
I was try load 5 models to OAK-D but program raise this error:
[14442C10E11DCAD200] [17.050] [NeuralNetwork(11)] [warning] Network compiled for 4 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance
[14442C10E11DCAD200] [17.051] [NeuralNetwork(14)] [warning] Network compiled for 4 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance
[14442C10E11DCAD200] [17.106] [system] [critical] Fatal error. Please report to developers. Log: 'Flic' '89'
[14442C10E11DCAD200] [17.052] [NeuralNetwork(17)] [warning] Network compiled for 4 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance
[14442C10E11DCAD200] [17.053] [NeuralNetwork(2)] [warning] Network compiled for 4 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance
[14442C10E11DCAD200] [17.096] [NeuralNetwork(5)] [warning] Network compiled for 4 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance
[14442C10E11DCAD200] [17.097] [NeuralNetwork(8)] [warning] Network compiled for 1 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance

RuntimeError: Couldn't read data from stream: '__rpc_main' (X_LINK_ERROR)

I guessed shaves had non-enough then i'm was try convert 2 models to 1 shave but this error was raised.
This error only raise when i was tried add palm_detection.blob model. (4 models code is still running)
I'm was tried to replace palm_detection.blob with 1 shave running model but program raised the same error
To Reproduce
This is my code:
    def create_nn(self, model_path: str, model_name: str, first: bool = False):
        """

        :param model_path: model path
        :param model_name: model abbreviation
        :param first: Is it the first model
        :return:
        """
        # NeuralNetwork
        print(f"Creating {model_path} Neural Network...")
        model_nn = self.pipeline.createNeuralNetwork()
        model_nn.setBlobPath(str(Path(f"{model_path}").resolve().absolute()))
        model_nn.input.setBlocking(False)
        if first and self.camera:
            print("linked cam.preview to model_nn.input")
            # Create face detection resize manip
            detection_manip = self.pipeline.createImageManip()
            detection_manip.setResize(320, 320)

            # Link camera output to detection_manip input
            self.cam.preview.link(detection_manip.inputImage)

            # Link to face detection neural network input
            detection_manip.out.link(model_nn.input)
            # self.cam.preview.link(model_nn.input)

        else:
            model_in = self.pipeline.createXLinkIn()
            model_in.setStreamName(f"{model_name}_in")
            model_in.out.link(model_nn.input)

        model_nn_xout = self.pipeline.createXLinkOut()
        model_nn_xout.setStreamName(f"{model_name}_nn")
        model_nn.out.link(model_nn_xout.input)

    def create_nns(self):

        if self.camera:
            self.create_nn(
                "models/scrfd_detection_openvino_2021.2_4shave.blob",
                "mfd",
                first=self.camera,
            )

        self.create_nn(
            "models/scrfd_detection_openvino_2021.2_4shave.blob",
            "mfd_db",
            first=False,
        )

        self.create_nn(
            "models/mobilenetv2_50_48_83-0001.blob",
            "gm"
        )

        self.create_nn(
            "models/face-recognition_2021.2_4shave.blob",
            "arcface",
        )

        # Create facial landmarks nn
        self.create_nn(
            "models/facial-landmarks-35-adas-0002.blob",
            "landmarks"
        )

        self.create_nn(
            "models/palm_detection.blob",
            "palm"
        )

@NguyenTuan-Dat are you using latest depthai version (2.5)? This issue was fixed in 2.1 or 2.2.

@szabi-luxonis I'm using 2.0 version. I'll try to using newer version. Thanks you <3

depthai version 2.2 was resolved my issue <3

depthai version 2.2 was resolved my issue <3

Great, thanks.
I suggest updating to latest regularly since we are improving performance and stability constantly.

depthai version 2.2 was resolved my issue <3

Great, thanks.
I suggest updating to latest regularly since we are improving performance and stability constantly.

Yeah, i'll keep my system uptodate <3


Ignore deleted Transactions in queries

Fixes: https://github.com/opencollective/opencollective-api/issues/1396


"rekor upload --artifact " should accept only URL (or improve the error message)

The doc  ( https://sigstore.dev/get_started/client/ ) says
"The upload command sends [...] artifact URL to the rekor transparency log."
and
"download a local copy of the artifact"
but the client help talks about "path" too
      --artifact fileOrURLFlag     path or URL to artifact file
Maybe it works when the server is local too but trying with a remote server, the error message is cryptic:
$ rekor upload --rekor_server https://rekor.sigstore.dev --signature mysignature.asc  --public-key /tmp/a.key --artifact llvm-toolchain-snapshot_13~++20210709100617+3e97d11df8ce.orig.tar.xz
2021/07/10 10:13:21 &{0 } (*models.Error) is not supported by the TextConsumer, can be resolved by supporting TextUnmarshaler interface

For other playing with rekor, following command works:
$ rekor upload --rekor_server https://rekor.sigstore.dev --signature mysignature.asc  --public-key /tmp/a.key --artifact https://apt.llvm.org/unstable/pool/main/l/llvm-toolchain-snapshot/llvm-toolchain-snapshot_13\~%2b%2b20210709100617%2b3e97d11df8ce.orig.tar.xz
Created entry at index 5676, available at: https://rekor.sigstore.dev/api/v1/log/entries/0ecfb1505408258b60d0876fe831d27fcebac1b463a517f2a0c7ff8b83c2fb10

@sylvestre thanks for the issue - specifying a local path OR a url should both work. The cryptic message isn't helpful (and we should improve that), but means that the server sent back an error that couldn't be parsed by the client.
could you re-run this with DEBUG=1 and share the result? thanks!

This may be a dup of https://github.com/sigstore/rekor/issues/220 if your file is > 32MB.

Yeah, it is about 90mb
(sorry for the latency)

I've updated the rekor service to return a correctly formatted error message:
[POST /api/v1/log/entries][413] createLogEntry default  &{Code:413 Message:Request Entity Too Large}


fix: upgrade to version 3.0.699

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign jenkins-x-labs-bot
You can assign the PR to them by writing /assign @jenkins-x-labs-bot in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jenkins-x-bot-test: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

gsm
0f12bea2cb051a65070398d091d505e535a812d1
link
/test gsm

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

gsm
0f12bea2cb051a65070398d091d505e535a812d1
link
/test gsm

vault
0f12bea2cb051a65070398d091d505e535a812d1
link
/test vault

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.

@jenkins-x-bot-test: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

gsm
0f12bea2cb051a65070398d091d505e535a812d1
link
/test gsm

vault
0f12bea2cb051a65070398d091d505e535a812d1
link
/test vault

kube
0f12bea2cb051a65070398d091d505e535a812d1
link
/test kube

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.


Limit order (buy) fails

Limit order (buy), e.g:
await tr.limit_order(order_id, 'DE0007037129', 'buy', '1', '21.78', 'gfd')

fails with
Unrecognized state  E  data  ['{"errors":[{"errorCode":"JSON_PARSE_ERROR","errorField":null,"errorMessage":"Subscription', 'payload', '<{\"type\":\"simpleCreateOrder\",\"clientProcessId\":\" < some generated uuid > \",\"warningsShown\":[\"userExperience\"],\"acceptedWarnings\":[\"userExperience\"],\"parameters\":{\"instrumentId\":\"DE0007037129\",\"exchangeId\":\"LSX\",\"expiry\":{\"type\":\"gfd\"},\"limit\":\"21.78\",\"mode\":\"limit\",\"size\":\"1\",\"type\":\"buy\"},\"token\":\" < the very long token > \"}>', 'validation', 'failed","meta":{"source":"MAPPER"}}]}']
This json above really looks funny with "errorMessage" value looking like a fragment of the payload without its head and tail parts.

What if you use the previous commit before the merge?

I have indeed used the version preceding the merge. The error looks a bit different now with an exception thrown in TRApi.start. The content of the message is still the same though:
Traceback (most recent call last):
File "using_tr.py", line 25, in history
await tr.start()
File "api.py", line 349, in start
raise TRapiExcServerErrorState(f"Error during server access\n\tServer-side Object probably expired...\n\t{sErr}")
trapi.api.TRapiExcServerErrorState: Error during server access
Server-side Object probably expired...
ERROR state: E data: ['{"errors":[{"errorCode":"JSON_PARSE_ERROR","errorField":null,"errorMessage":"Subscription', 'payload', '<{\"type\":\"simpleCreateOrder\",\"clientProcessId\":\"  \",\"warningsShown\":[\"userExperience\"],\"acceptedWarnings\":[\"userExperience\"],\"parameters\":{\"instrumentId\":\"DE0007037129\",\"exchangeId\":\"LSX\",\"expiry\":{\"type\":\"gfd\"},\"limit\":\"35.85\",\"mode\":\"limit\",\"size\":\"1\",\"type\":\"buy\"},\"token\":\"  \"}>', 'validation', 'failed","meta":{"source":"MAPPER"}}]}']
python-BaseException

hmmm interesting. Not sure if I find the time to debug it as I don't use TR really

How did you come up with this API? I've tried to look at the the web application network exchange: it looks pretty different to me.

is there an update to this issue?

Solved it. It still works with the given code.  Otherwise you get this misleading JSON_PARSE_ERROR from above.
However, I am still very interested in this open question: how and with what tools did you reverse engineer this API exactly?


v-on:keypress.ctrl.enter is not working across browsers

Version
2.6.11
Reproduction link
[data:,see-steps-below](data:,see-steps-below)
Steps to reproduce
Step 1:
<template>
<div>
  <textarea v-on:keypress.ctrl.enter="handleSubmit"></textarea>
</div>
</template>

<script type="module">
import Vue from 'https://cdnjs.cloudflare.com/ajax/libs/vue/2.6.11/vue.esm.browser.min.js';
let App={
  methods: {
    handleSubmit(event){
      console.log('Ctrl Enter pressed');
    },
  }
};
new Vue(App).$mount(document.querySelector('template'));
</script>

Step 1:
focus on the textarea and press Ctrl   Enter
What is expected?
the event handler handleSubmit would be invoked
What is actually happening?
It doesn't work across browsers.

event \ working \ browser
Chrome 90
Firefox 78

v-on:keypress.ctrl.enter
N
Y

v-on:keypress.ctrl.10
Y
N

v-on:keypress.ctrl.13
N
Y

v-on:keypress.ctrl.10.13
Y
Y

// v-on:keypress.ctrl.enter="handleInputEnter"
on: {
  "keypress": function($event) {
    if (!$event.type.indexOf('key') && _k($event.keyCode, "enter", 13, $event.key, "Enter"))
      return null;
    if (!$event.ctrlKey)
      return null;
    return handleInputEnter($event)
  }
}

Use .enter as an alias of .13 is sometimes misleading. If event keyCode is 13, then you may say Enter key is pressed, but if Enter pressed, the keyCode may also be 10 if Ctrl pressed in the mean time.
Currently I use v-on:keypress.ctrl.10.13="handleInputEnter" as a workaround.
So my idea is: either to add a caveat note in docuemtation section .enter, or let the component template compiler handle .enter modifier correctly.

You might have an extension changing the behavior: I tested it and it works fine https://jsfiddle.net/doqkyfx9/ on both browser

Remember to use the forum or the Discord chat to ask questions!

counter doesn't increase for me in chrome 90/edge 90, does increase in firefox 88


Fix possible NPE in worker parameters isolation

For instances that don't have an implementation hash.
This fixes the 7.5 regression https://github.com/gradle/gradle/issues/21301

@bot-gradle test this

OK, I've already triggered the following builds for you:

PullRequestFeedback build

@bot-gradle test and merge

OK, I've already triggered a build for you.

Pre-tested commit build failed.

@bot-gradle test and merge

OK, I've already triggered a build for you.

Pre-tested commit build failed.

@bot-gradle test and merge

OK, I've already triggered a build for you.


Integrate user authentication mechanisms (task #804)

@georgeconstantinou can you please adjust the unit tests as well.

@mamchenkov please review


Add option for expanding environment variables used on vars

The idea is to be able to support a declaration like the one below on
.drone.yml:
vars:
  image: $${IMAGE}

Environment variables are going to be expanded only the user explicitly
ask for it, avoiding an accidental breaking change in case some users
rely on the current behavior.
Please let me know if I should wait for #74 and add tests to the changes.

Can you update DOCS.md please and provide some more context about when this might be useful?
In http://docs.drone.io/environment/ I see mention of exporting variables that need to be expanded in commands, and that there is "pre-processing" of some sort, but I don't know exactly what that means.

@fsouza let's wait until the test refactoring gets merged in please

@tonglil sounds good!
@jrynyt I'll update the docs :)
Thankss!

@tonglil @jrynyt please take another look.

@tonglil please take another look.


don't set name on start when data.name is undefined

setPodName caused sync on page refresh. This PR fixes it.

What if a user clear the pod name (make it empty)?

I think this condition only checks for undefined value but not empty string. Please see if that’s a problem, and if so let’s check data.name === pod.name as well.

I introduced a check in previous PR (https://github.com/codepod-io/codepod/blob/main/ui/src/lib/store.tsx#L458), to mark a pod dirty, we may first check if the value is actually updated.

I introduced a check in previous PR, to mark a pod dirty, we may first check if the value is actually updated.

Yes, this looks good.


Add css to hide space holder for welcome ad

When the welcome ad is fired it add is place holder dive that needs to have a height of 0 applied.

 Wallpaper ad not loading when interstitial is also serving


fix: process null values

Fixes https://github.com/microsoft/kiota-typescript/issues/1188
1 part for processing null values

I've just pushed a set of changes to fix the unit test for form serialization writer. I think similar fixes are required for the json serialization writer as its test is also failing.

@baywet added

LGTM! @andrueastman for a final review

Great! I just comitted changes to remove .only from test file

@Kindest13 please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree

@Kindest13 please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree

Now this PR is ready, I'd like us to get started on the generation updates before we merge this pull request.
@Kindest13 do you have all the information you need to get started in the kiota repository or do you want additional pointers?

Now this PR is ready, I'd like us to get started on the generation updates before we merge this pull request. @Kindest13 do you have all the information you need to get started in the kiota repository or do you want additional pointers?

Would be great if you can share more info on this

My guess is that since the ? is hardcoded here. And since only the properties need to be settable to null, we could probably hardcoded it here.
https://github.com/microsoft/kiota/blob/4d59461de79d1de58a309b4c25fee7b005a15ee5/src/Kiota.Builder/Writers/TypeScript/CodePropertyWriter.cs#L37
Let us know if you have additional questions.

 | null roughly

hardcoded

Hey @baywet, is that correct?
So just this line?
writer.WriteLine($"{codeElement.Name.ToFirstCharacterLowerCase()}?: {returnType}{(isFlagEnum ? "[]" : string.Empty)} | null;");

 | null roughly

Hey @baywet, is that correct?
So just this line?
writer.WriteLine($"{codeElement.Name.ToFirstCharacterLowerCase()}?: {returnType}{(isFlagEnum ? "[]" : string.Empty)} | null;");

yes it looks correct, however I left a couple of comments on the PR to wrap it up.


tests: fully test the bootstrap3 theme with Invenio v3.4

The old bootstrap3 theme should be fully tested with Invenio v3.4 to make sure it still works.

Boostrap a new cookiecutter-invenio-instance
Change APP_THEME config to APP_THEME = ['bootstrap3'] (this should enable the bootstrap3 theme).
Compare each page with the semantic-ui theme and bootstrap3 theme.

Front-page is broken:
Traceback (most recent call last):
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/app.py", line 2464, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/werkzeug/middleware/dispatcher.py", line 66, in __call__
    return app(environ, start_response)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/app.py", line 2450, in wsgi_app
    response = self.handle_exception(e)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/app.py", line 1867, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/app.py", line 2447, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/app.py", line 1952, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/app.py", line 1821, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/app.py", line 1950, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask_debugtoolbar/__init__.py", line 125, in dispatch_request
    return view_func(**req.view_args)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/invenio_theme/views.py", line 25, in index
    current_app.config['THEME_FRONTPAGE_TEMPLATE'],
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/flask/templating.py", line 138, in render_template
    ctx.app.jinja_env.get_or_select_template(template_name_or_list),
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/jinja2/environment.py", line 930, in get_or_select_template
    return self.get_template(template_name_or_list, parent, globals)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/jinja2/environment.py", line 883, in get_template
    return self._load_template(name, self.make_globals(globals))
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/jinja2/environment.py", line 857, in _load_template
    template = self.loader.load(self, name, globals)
  File "/Users/lnielsen/.virtualenvs/test-site-6sgDrUfX/lib/python3.6/site-packages/invenio_app/helpers.py", line 99, in load
    raise TemplateNotFound(name)
jinja2.exceptions.TemplateNotFound: test_site/frontpage.html

Thanks to @ntarocco for the help and input.
This is the current state of the search result. There are two issues going on.

The title of the record is not displayed. This is because the template is trying to render record.metadata.title_statement.title while in our record we have record.metadata.title.

We can possibly override SEARCH_UI_JSTEMPLATE_RESULTS in the cookie cutter and provide a template that works.
Release invenio-search-ui with templates representing the latest record model.

The Sort by dropdown works only for the most recent option, there seems to be an issue with bestmatch prefixed with - and angular, which we haven't figured out yet.


Snapshot not including entire screen even though I set the resolution very large

This plugin is only taking a screenshot of about a 1000px square section of the top left of the screen, which is a small portion of this long form I'm trying out (needs about 4000px height to render all of it without a scrollbar). Has anyone else noticed this? I'm setting the viewport like this and when I run the test, it displays with this viewport in the browser, but the snapshot command always only gets a fraction. I've also tried cy.compareSnapshot and cy.root().compareSnapshot... Is it obvious I'm doing something wrong? I'm doing this in a component test, btw.

This seems kind of wild. I just tried another long (large height) component, doing the same thing as the example test I showed, and it did work to do the scrolling behavior and captured the whole screen. So I guess there is some difference between them, but I have no idea what. The component that isn't working is a higher level component that uses the component that did work as I'd expect...

Yeah I got this same behaviour, won't go wider than 1000px

I've just managed to get it to do a 1280x800 image by setting viewportWidth and viewportHeight in cypress.config.js.


docs: remove dead links

:tada: This PR is included in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Unify -h for fisher_list

Just forced pushed to this repository, more help updated.

Ops, I am not sure how to add a new request, but I have add a method to speed up __fisher_cache_list for not using sed. Hope you can cherry-pick that for the moment.

Why close this? Is it merged?

I think so. This closed when I merged your previous commit and pushed 1.0 if I am not mistaken.
Would you mind checking everything is displaying correctly?

No, both the commits that I had showed here isn't merged, including the one that makes __fish_cache_list faster and the -h unification.

Oh, that one I can't merge and I already explained why, you need check the comments. :wink:


Support Google Cloud Storage as Index Store

I am a bit new with Golang, but find a task like this interesting. @mosuka in your opinion, how big of an undertaking is this ticket? I have little experience with GCP but this feels like a great opportunity to get more comfortable with Go and GCP...

@petergeorgas
Thank you for your interest.
I think it is not so difficult. You can see the S3 implementation for details.
https://github.com/mosuka/phalanx/blob/main/clients/s3.go
https://github.com/mosuka/phalanx/blob/main/directory/directory_s3.go
I'm planning to implement and integration test it first using fake-gcs-server.
https://github.com/fsouza/fake-gcs-server

Thank you for your interest. I think it is not so difficult. You can see the S3 implementation for details.
https://github.com/mosuka/phalanx/blob/main/clients/s3.go https://github.com/mosuka/phalanx/blob/main/directory/directory_s3.go
I'm planning to implement and integration test it first using fake-gcs-server. https://github.com/fsouza/fake-gcs-server
I am looking forward to your pull request.

How do you want to deal with credentials?
https://pkg.go.dev/cloud.google.com/go?utm_source=godoc#hdr-Authentication_and_Authorization

At first, I think we can use Google Application Default Credentials (ADC).
I want to read the specified credential file if the environment variable GOOGLE_APPLICATION_CREDENTIALS is set.
In Phalanx, each resource is expressed by a URI.
I want GCS to be the following URI.
gs://<BUCKET_NAME>/<PATH_TO_INDEX_DIR>/<INDEX_NAME>

I want to be able to specify credentials in the URI parameter as well as in other storage.
gs://<BUCKET_NAME>/<PATH_TO_INDEX_DIR>/<INDEX_NAME>?application_credentials=<PATH_TO_APPLICATION_CREDENTIALS>

You can refer to the S3 documentation here.
https://github.com/mosuka/phalanx/blob/main/docs_md/index_store.md#amazon-s3


[Bug]: OpenAI server errors out with "ZMQError Too many open files" under heavy load

Your current environment

The output of `python collect_env.py`
Your output of `python collect_env.py` here

🐛 Describe the bug
@robertgshaw2-neuralmagic, @njhill
I am running vllm @ 665304092de6d56aaccaadacfa497a7836d88e7b which includes #7394.
Reproducer:
# vllm serve meta-llama/Meta-Llama-3-8B-Instruct  --disable-log-requests

import openai
import asyncio

N = 800

client = openai.AsyncOpenAI(base_url="http://localhost:8000/v1", api_key="EMPTY")

async def generate_streaming(prompt: str):
    async for req_output in await client.completions.create(
      model="meta-llama/Meta-Llama-3-8B-Instruct",
      prompt=prompt,
      stream=True,
    ):
        yield req_output.choices[0].text

async def generate_output(prompt: str):
    async for output in generate_streaming(prompt):
       final_output = output
    return final_output

async def main():
    prompts = [str(i) for i in range(N)]
    async with asyncio.TaskGroup() as tg:
        tasks = [tg.create_task(generate_output(prompt)) for prompt in prompts]

asyncio.run(main())

Error message:
    | Traceback (most recent call last):
    |   File ".venv/lib/python3.11/site-packages/starlette/responses.py", line 261, in wrap
    |     await func()
    |   File ".venv/lib/python3.11/site-packages/starlette/responses.py", line 250, in stream_response
    |     async for chunk in self.body_iterator:
    |   File "vllm/vllm/entrypoints/openai/serving_completion.py", line 231, in completion_stream_generator
    |     async for prompt_idx, res in result_generator:
    |   File "vllm/vllm/utils.py", line 468, in merge_async_iterators
    |     item = await d
    |            ^^^^^^^
    |   File "vllm/vllm/entrypoints/openai/rpc/client.py", line 424, in generate
    |     await self.abort(request_id)
    |   File "vllm/vllm/entrypoints/openai/rpc/client.py", line 350, in abort
    |     await self._send_one_way_rpc_request(
    |   File "vllm/vllm/entrypoints/openai/rpc/client.py", line 256, in _send_one_way_rpc_request
    |     with self.to_proxy_socket() as socket:
    |   File "/usr/lib/python3.11/contextlib.py", line 137, in __enter__
    |     return next(self.gen)
    |            ^^^^^^^^^^^^^^
    |   File "vllm/vllm/entrypoints/openai/rpc/client.py", line 195, in to_proxy_socket
    |     socket = self.context.socket(zmq.constants.DEALER)
    |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File ".venv/lib/python3.11/site-packages/zmq/sugar/context.py", line 354, in socket
    |     socket_class(  # set PYTHONTRACEMALLOC=2 to get the calling frame
    |   File ".venv/lib/python3.11/site-packages/zmq/_future.py", line 218, in __init__
    |     super().__init__(context, socket_type, **kwargs)  # type: ignore
    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    |   File ".venv/lib/python3.11/site-packages/zmq/sugar/socket.py", line 156, in __init__
    |     super().__init__(
    |   File "_zmq.py", line 690, in zmq.backend.cython._zmq.Socket.__init__
    | zmq.error.ZMQError: Too many open files

This arguably is not normal online serving traffic. With that said, if --disable-frontend-multiprocessing is on, the server can handle N=8192 with no issue.
strace shows lots of eventfd, which might be related to<EMAIL_ADDRESS>730059 eventfd2(0, EFD_CLOEXEC)         = 976
730059 eventfd2(0, EFD_CLOEXEC)         = 977
730059 eventfd2(0, EFD_CLOEXEC)         = 978
730059 eventfd2(0, EFD_CLOEXEC)         = 979
730059 eventfd2(0, EFD_CLOEXEC)         = 980
730059 eventfd2(0, EFD_CLOEXEC)         = 981
730059 eventfd2(0, EFD_CLOEXEC)         = 982
730059 eventfd2(0, EFD_CLOEXEC)         = 983
730059 eventfd2(0, EFD_CLOEXEC)         = 984
730059 eventfd2(0, EFD_CLOEXEC)         = 985
730059 eventfd2(0, EFD_CLOEXEC)         = 986
730059 eventfd2(0, EFD_CLOEXEC)         = 987
730059 eventfd2(0, EFD_CLOEXEC)         = 988
730059 eventfd2(0, EFD_CLOEXEC)         = 989
730059 eventfd2(0, EFD_CLOEXEC)         = 990
730059 eventfd2(0, EFD_CLOEXEC)         = 991
730059 eventfd2(0, EFD_CLOEXEC)         = 992
730059 eventfd2(0, EFD_CLOEXEC)         = 993
730059 eventfd2(0, EFD_CLOEXEC)         = 994
730059 eventfd2(0, EFD_CLOEXEC)         = 995
730059 eventfd2(0, EFD_CLOEXEC)         = 996
730059 eventfd2(0, EFD_CLOEXEC)         = 997
730059 eventfd2(0, EFD_CLOEXEC)         = 998
730059 eventfd2(0, EFD_CLOEXEC)         = 999
730059 eventfd2(0, EFD_CLOEXEC)         = 1000
730059 eventfd2(0, EFD_CLOEXEC)         = 1001
730059 eventfd2(0, EFD_CLOEXEC)         = 1002
730059 eventfd2(0, EFD_CLOEXEC)         = 1003
730059 eventfd2(0, EFD_CLOEXEC <unfinished ...>
730059 <... eventfd2 resumed>)          = 1004
730059 eventfd2(0, EFD_CLOEXEC)         = 1005
730059 eventfd2(0, EFD_CLOEXEC)         = 1006
730059 eventfd2(0, EFD_CLOEXEC)         = 1007
730059 eventfd2(0, EFD_CLOEXEC)         = 1008
730059 eventfd2(0, EFD_CLOEXEC)         = 1009
730059 eventfd2(0, EFD_CLOEXEC)         = 1010
730059 eventfd2(0, EFD_CLOEXEC)         = 1011
730059 eventfd2(0, EFD_CLOEXEC)         = 1012
730059 eventfd2(0, EFD_CLOEXEC)         = 1013
730059 eventfd2(0, EFD_CLOEXEC)         = 1014
730059 eventfd2(0, EFD_CLOEXEC)         = 1015
730059 eventfd2(0, EFD_CLOEXEC)         = 1016
730059 eventfd2(0, EFD_CLOEXEC)         = 1017
730059 eventfd2(0, EFD_CLOEXEC)         = 1018
730059 eventfd2(0, EFD_CLOEXEC)         = 1019
730059 eventfd2(0, EFD_CLOEXEC)         = 1020
730059 eventfd2(0, EFD_CLOEXEC)         = 1021
730059 eventfd2(0, EFD_CLOEXEC)         = 1022
730059 eventfd2(0, EFD_CLOEXEC)         = 1023
730059 eventfd2(0, EFD_CLOEXEC)         = -1 EMFILE (Too many open files)

Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

Right, so it's a different issue then, bruv.  "Too many open files", eh? That's a classic.  Sounds like your system's getting overwhelmed with all those requests.
First thing's first, check your system's open file limit.  It's probably set too low. You can bump it up with ulimit -n.  Give it a generous number, like 65536 or even higher.
Next, have a look at how you're handling those asyncio tasks. Are you creating too many at once? Try limiting the number of concurrent requests with asyncio.Semaphore.
If that doesn't do the trick, you might need to get a bit more creative. Consider using a connection pool to manage your requests.  That way, you can reuse connections instead of opening new ones all the time.
   Maybe it's time for an upgrade, mate.
Don't let this get you down, bruv. We'll get those files under control.

does this mean zmq still opens one file (fortunately it's not a socket) for every connection?

@youkaichao i need to dig in more. There is only 1 ipc socket created. The rest are inproc
In my testing, I manually verified that socket usage was not growing, so I’m not sure what is going on here

zmq.error.ZMQError: Too many open files  ,

+1

We have a new design that should resolve this issue:

WIP PR: https://github.com/vllm-project/vllm/pull/8059


Fixed #69 bug

Seems the file is uploaded and saved successfully, but overwrite by the empty ctx.value. code

Fixed #69 bug

And the warning "'undefined' is not a valid enum" maybe the CFS warning.
https://github.com/CollectionFS/Meteor-CollectionFS/issues/688
https://github.com/yogiben/meteor-autoform-file/commit/7c6616b9508f3e514040f7ad20709c76f8d88925 Actually I don't know which bug wants to be fixed, so I removed the code.

Great! Bug fixed. https://github.com/yogiben/meteor-autoform-file/commit/85ace6826a9168c16d71539caea226ef5ac19496
Close this

Um...how long does it take till atmosphere.

+1 for it to be on atmosphere

@obiwarn @jwktje Hi, check this https://github.com/yogiben/meteor-autoform-file/issues/74


Livestream videos capture form multiple cameras simultaneously

I have a requirement to Livestream a video capture from multiple cameras. After iOS 13 we can capture video from the front and back simultaneously. For the preview, we can put multiple preview layers side by side. But now I want to Livestream that. How can I accomplish that with this library?

@KasunNimantha have you found a solution to this problem?


1.0.0-alpha Breaking changes

Hello, it seems like 1.0.0-alpha1 has been pushed to npm last night.
My Nuxt.js project is broken now. Can anyone tell, what the breaking changes are?

@John0x I think you were too fast in adopting. The website and changelog still does not exist. As far as I can see the most important change is removing injectAs from plugin creation and being able to export a function inside of any plugin file. But better roll back and wait for an official release with changelog

I'm getting this too:
Nuxt.js Error:

Error: [nuxt] state should be a function in store/index.js

Assuming that's a breaking change and not a bug?

Sigh

Nuxt.js Error:

Error: [nuxt] state should be a function in store/index.js

+1

What's surprising to me is that the new package was pushed to NPM, but no release was made on Github. It's entirely possible this release was a mistake and was intended for internal use.
That being said, since it's marked as alpha, I wouldn't bother reporting any errors until there's an actual release here on the repository.

New release 1.0.0-alpha1 is semver incompatible with previous releases (0.x.x) so exiting users should be safe as long as they don't explicitly upgrade dependencies. (This is just whay versioning is used right? :D) We have intentionally postponed release notes and docs to get feedback from alpha users and releasing a final and stable migration guide to avoid multiply breaking changes.
Although Nuxt has many internal improvements since this version, but migration should be easy for exiting users. Here is an unofficial and incomplete migration guide for those who willing experiment new release:
runInNewContext
Most of breaking changes are because of new vue ssr performance improvements. Each render request is by default is executing in the same process context as server while this gives huge improvements it needs additional steps in your project code. learn more
Stores state should return a function
As of global context, just like data function for components which returns a function instead of data itself we need to make this change for stores as well.

See vuex-store-modules and vuex-store examples for reference.

If your root store is currently returning a Vuex instance, it should be changed to something like this:

const createStore = () => new Vuex.store({
  // Store options
}

All of your stores (including submodules) should return a function instead of object :

export state = () => {
  // initial state data
}

Plugins should export a function if want to mutate global state
If your plugins are chaging global state, such as store and api tokens you should export a function which sets it for each request.

See i18n example for reference.
Consider that if you don't take this step, it may lead to potential SECURITY BUGS as tokens are reused across requests

How would the vue-apollo example be updated with the new injectAs deprecation in mind? I just spent the last few hours trying to get that working on a fresh app, had no idea there were breaking changes and not all examples were updated.
Note that I've seen the i18n example, but the vue-apollo integration needs to inject apolloProvider into the Vue instance. I don't see which line in the i18n example does this and I[m not familiar with that plugin.
Thanks.

@pi0  How to get store instance now? In the previous version is

I'd like to know this too. I figured out the answer to my own question--turns out app is the root Vue instance so adding properties to that injects them--but now I need to access the store in my Apollo client to set authentication tokens. Can't see how to do that now that it's a function.
Thanks.

Store instance is available in vue components instance as this.$store . It is also passed into plugins and middleware function context as store.  Not tried to locally test Apollo integration.

Ok, i has been found it, i use store instance in plugins, example https://nuxtjs.org/examples/i18n/
Thanks.

If I understand correctly, the Nuxt constructor now returns a promise?
Isn't this a bad practice as explained here ?

@pi0 do you know how the changes on alpha3 can make vue-apollo work correctly? It would be great if the example could get updated. Thanks!

@dohomi Sure. Will work on that soon ;)

@pi0 how do you import in plugins now? Ie I normally import axios through an instance i created as a plugin.
For example, import axios from '~plugins/axios'
Now that '~' is no longer available and the plugin file returns a function, are the plugins registered somewhere globally?

@pi0 is there a more expansive breaking changes document? window.onNuxtReady is also no longer available.

@uptownhr For your first question, access plugins instance is a little more tricky, as SSR context is shared across request. You may use axios module for easier usage or looking into it's implementation to get idea how we could access context from inside components. (There is also another workaround using this.$ssrContext but i haven experimented it yet)

window.onNuxtReady is also no longer available.

It should not happen!! If possible please prepare a glitch test to reproduce problem and opening an issue for that.

hi @pi0 modules is new to me and I need to look at it more. But it looks like it will not resolve the issue I am having. As I'd like to get access to the same axios instance from all parts of the app. Like store, plugins, middleware or even my own personal library.
Last night i wrote a quick workaround but let me know if I'm thinking about this incorrectly and if there is a better approach.
Here is my plugins/axios.js
import axios from 'axios'

let options = {}

if (process.SERVER_BUILD) {
  options.baseURL = `http://localhost:3000/api`
} else {
  options.baseURL = `/api`
}

const apiHandler = axios.create(options)

export default function ({store, router}) {
  apiHandler.interceptors.response.use( response => {
    return response
  }, error => {
    if ( error.response.status == 401) {
      //alert('You have been logged out')
      return store.dispatch('logout').then( res => {
        router.push('/login')
      })
    }

    throw error
  })

  console.log('onnuxtready', window.onNuxtReady)

  return apiHandler
}

export { apiHandler as axios }

This exports the default function to retrieve the context and exports another axios. Now I can import import {axios} from ~plugins/axios and get the same axios instance.

Consider axios instance is created in global context! So is being shared across requests in server side. This is a WRONG and insecure approach.
Take a look at axios/plugin.js#L87 :
export default ({app}) => {
  // Create new axios instance
  const axios = Axios.create({
    baseURL: API_URL + (process.env.API_PREFIX || '/api')
  })

  // Setup instance interceptors
  axios.interceptors.request.use(withCredentials);
  axios.interceptors.response.use(undefined, handleError);

  // Make accessible using {this,$nuxt}.$root.$options.$axios
  app.$axios = axios

  // setToken helper
  axios.setToken = setToken.bind(axios)
}

How can I access Axios from within the store?

Could it be that Vuex Actions don't work anymore?

@pi0 How to get store instance now? In the previous version is
import VueStore from '~store'

Know any one a solution for that?

@LowM4N Do you want to access store outside of components/plugins/middleware ? Please explain more about use case.

@pi0 Is there a new general solution for this kind of thing?
I don't see how one would access the axios instance within a store for example.

@John0x Sorry for delay answering. Give us a little more time we are actively working on new changes and their documentation, Also will update axios and auth store modules soon for reference :)

@pi0 I want encapsulate my api logic in classes, but for that i need the jwt token from my store. I have the same problem with the router, I want use it in my store modules, but I dont know how to get him. A solution is to pass it to the action as parameter, but I found this to hacky.

@pi0 I also tried to migrate my project to version 1.0 but I failed so far. I am using apollo-client instead of vue-apollo, because the ssr documentation was not complete, when I started building my app.
Like others here did as well, I imported the client instance from the
My apollo.js plugin file looks like this:

let hostUrl = __API__

export default ({app}) => {
  var networkInterface = createNetworkInterface({
    uri: hostUrl + '/graphql',
    transportBatching: true,
    opts: {
      credentials: 'same-origin'
    }
  })

  let apolloClient = new ApolloClient({
    networkInterface: networkInterface
  })

   networkInterface.use([{
      applyMiddleware (req, next) {
         // auth stuff
         next()
      }
  }])
  app.apolloClient = app.$apolloClient = apolloClient
...
}

From what I understood, the documentation implies that this plugin snippet should provide a global option to use this.$apolloClient inside any of my components. Well, I can at least access it in asyncData ({app}) which is nice and everything is rendered as expected, but where I need it even more is on client-side reactively calling queries from inside the components and this is not working. Since I can not import it directly anymore, I have no idea what to do at that point.
Maybe I could put it into my store, but this seems like a dirty patch to me.
Or did I misunderstand something from the examples?
I have been using 1.0-alpha4

@tillkolter here is a small repo as a follow up on vuex apollo and vue-apollo: https://github.com/PierBover/vuex-apollo-example-project
Maybe it helps, I'm also thinking of moving away from vue-apollo and use the vuex approach

@dohomi I also use your suggested pattern in my app. I must admit not consistently, but I do use it in a lot of cases exactly like that. The problem with your posted solution is, that it wouldn't work with the suggested pattern for Nuxt 1.0 if you want to explicitly make apollo.js a plugin. Maybe it should be treated as a plugin at all? I have a couple of types in my schema which are only resolved if the user is authenticated that why it is convenient to have its initialisation inside some instance connected hook to connect the authentication middleware. I must admit I used this pattern mostly because I wanted to use vue-cookie (like this.$cookie). Dont know if I should skip the plugin approach now and handle Apollo and cookies the Vanilla way, but I was hoping to find an "official" recommendation on that.

  As a new nuxt user, I naively ran yarn add nuxt (per the docs), which gave me the latest (alpha.4).  The docs are written for 0.10.6, and the examples are apparently current (leaving the user scratching their head as to the reason why).  The release docs are lacking things like the removal of injectAs and the store process is now different.  If you're lucky, you'll find this issue thread, which provides some insight as to what's going on.
At minimum, update the docs to tell the user to install 0.10.6 so you can roll out experimental prereleases without causing confusion.  Not everyone has been following Nuxt from day-1, and reading through every commit to piece together the differences between the docs and the code.

@bjunc Apologies for any inconveniences.  First docs are indicating are based on 0.10.7 and alpha tagged releases started for more advanced users that can find out this changes quickly and getting feed back about final release. Next release would be probably Beta tagged and comes with docs with short delay. Anyway feel free asking questions, Our opensource community always tries it's best answer this questions in best manner as possible :)

Is it possible NOT to make alpha packages as default-latest packages?
I mean... why npm install gives me alpha version which is broken?
Shouldn't alpha version be optional?

I'm not an NPM expert, but I believe it is possible by using tags (not latest).  So for instance, if you wanted to install the alpha prerelease, you would run npm install nuxt@alpha.  It appears though that the alpha releases are being treated as the latest.
My request is more simple.  Just explicitly put the version number in the installation guide that matches up with the version the documentation is for, and don't sprinkle prerelease examples in.
Currently, the doc pages say VERSION 0.10.6.  So in my opinion, there shouldn't be any examples of alpha releases in there, and the NPM install should explicitly target 0.10.6.
By the way, I think Nuxt is great – I was just annoyed since I spent hours second guessing myself before I found this thread and realized the docs weren't for the version being pushed out via npm install.

"It appears though that the alpha releases are being treated as the latest." - EXACTLY
It is pretty natural to run "npm install" on given official examples and expect that they will work... :)

Me too:
plugins/axios.js
import store from '~store'
import router from '~router'

in interceptors got router/store on undefined

I would like to access state of store instance
see:  https://nuxtjs.org/guide/directory-structure/#aliases
import store from '~store' // => undefined
const store = require('~store') // => { createStore: [Getter] }

both on above returned unexpected thing instead of store instance.
for some reason, I dont want to access state at page component or plugin, any idea?

@pi0 @Atinux I would like to suggest that you guys keep release notes in a simple CHANGELOG.md. Its a very well known place and you could add the release notes for each of the alpha releases as well. You would get more early adopters and testers - like me :) - on board. Thanks!

@pi0 are there any news about accessing plugins from within stores?

@pi0 How to customize axios ? I want to use an interceptor in the plugin

Why was this issue closed? 1.0 is still in the release candidate phase.

@alexchopin this should not be closed. The issues are still not resolved


Params - add database and server

Default server is localdb projectsv13, and default database is to look up the PWD parent’s parent directory name (assumes that the script will be in the “projname\testhelpers\stored procedures” folder

Or search recursively for sql proj file?
Also, where do I put the pester tests for this?


Be aware about the BehaviorObservable.toPromise() not work as expected.

We will expect it resolve immediately but it doesn't.
See: https://github.com/Reactive-Extensions/RxJS/issues/1088 - BehaviourSubject toPromise isn't working
UPDATE:

Observable.toPromise and Observable.last().subscribe are identical

return new Promise((resolve, reject) => {
    let value;
    this.subscribe((x) => value = x, (err) => reject(err), () => resolve(value));
});

SOLUTION:
await behaviorSubject.asObservable.first().toPromise()

The magic resides in the above first() which will make it work as expected.

UPDATE: for anyone else viewing this later the solution would be:
await behaviorSubject.pipe(take(1)).toPromise()

@ErraticFox Thanks! We are in the stage of RxJS 6 now! 🎉

UPDATE: for anyone else viewing this later the solution would be:
await behaviorSubject.pipe(take(1)).toPromise()

Works! Thx! Not all hero wear capes.

@PabloPerezAguilo just make sure to pay the good deed forward. :)


AKSequence setLengthSoft for tracks attributes sets all track lengths not the selected track

seq.tracks[0].setLength(AKDuration(seconds: 4.0))
seq.tracks[1].setLength(AKDuration(seconds: 8.0))
the notes in the track 0 will play for 4.0 sec and then wait another 4 sec before starting over.
Shouldn't the notes in track 0 start replaying as soon as 4.0 seconds has elapsed? It seems like the track 1 set length overrides the track 0 setLength.

I don't think it is intended to work the way you are expecting.  its kind of like a multitrack recorder.  if you don't have anything from 4-8 but something is playing there, it will be silent.

Not that I don't think your way would be better.

Ah, ok.
I see, thank you for that clarification. Is there a good way to do what I'm trying to do in AudioKit besides making separate AKSequence instances (which I'm doing now, but since I'm making many (over 24) it's kind of overkill).

So, yeah, I am not sure that length is telling the sequencer anything beyond "there could be notes in this range"much like DAW would have for a piano roll.  So, I am not sure this is an issue as much of a limitation.  Instead, we have to roll our own looping logic.

I guess I could append the tracks that are meant to loop around quicker with copies of their notes to make it seem like they are looping...

what do you mean by 'roll our own looping logic' ?

Yep, that's what we did in a recent project.  In fact we never looped, just constantly added the next sequences to a queue before they were needed.

ah, ok.

Does this change the status of the other issue?  Could it all be related to the same thing?

Looks like they are related.
But, I'm a little confused about your method. Is there an example of what you did in the other project you mentioned? Constantly adding the next sequence to a queue before they were needed?

Also wouldn't that create problems for AKSequence tracks? I mean, if I understand you correctly (which I probably don't ...) then you are simply doing a sequence.tracks[0].addNote(.....) every time you want the track to continue. Won't this result in the track being filled up 'infinitely' as you keep on playing the sequence...?

It's a tiny amount of data to add a note every couple of seconds.  We looped once a day I think and started fresh.  I don't have an example, this was for a client. :-/

I guess my scenario would be:
track 0:
note 1 (0 sec)....note 2 (1 sec)....note 3 (2 sec) note 4 (3 sec)....(wait 1 sec then start back at note 1)
track 1:
note 1 (0 sec).... note2 (2 sec) ...note 3 (4 sec) ... note 4 (6 sec) (wait 1 sec then start back at note 1)
So using your suggestion for track 0
track[0].addNote(note 1 at 0 sec)
track[0].addNote(note 2 at 1 sec)
track[0].addNote(note 3 at 2 sec)
track[0].addNote(note 4 at 3 sec)
//now want to make it seem like track 0 repeats / loop restarts
track[0].addNote(note 1 at 4 sec)
track[0].addNote(note 2 at 5 sec)
track[0].addNote(note 3 at 6 sec)
track[0].addNote(note 4 at 7 sec)
....etc
Is this what you mean?

What is this

Hi Aure,
Sorry, what I was trying to demonstrate was that I would be continuously adding notes to a track and incrementing the position of the note to mimic a multitrack. I got it working and so far so good.

Cool.  Well, if you feel like things work, maybe close the issues.  Perhaps its instead a documentation issue and we can add docs to the web site.  (Something I've wanted to do for some time).


Run out of memery

Hi, I 'm sorry to bother you again,but I have met a new problem, when i was runing  the program,it showed me the memory has been run out of, then come out an error(my computer memory is 8g). Do you have any way to limit the python's memery using,or I have to upgrade my computer? How much memory does this program need? thank you.

I have never encountered this issue unfortunately, so I don't quite know which part exactly would cause a memory problem.
As a rule of thumb though, it is true memory augmented architectures are really heavy in terms of memory (I had feedback related to memory issues on my other project on Neural Turing Machines).

Thank you for your help, I will use the easiest way to solve this problem，increase the computer's memory😂.


LAG?!

Lagging if you feed w/ without macro
lagg
not PC
not internet
Totally the game ;-;

clientside

close issue

I do not get lag when I am feeding. @freaky767 it maybe client sided, idk, but please make sure your PC is beneficial for the project, (as in, a constant 30FPS+).

im using old version since the latest is not working for meh ;3

@AlexHGaming Help me with the popsplits please ;) New Version when i add the code it just make the player move faster ;-;

Latency of the server, feeding fine here. Make sure to check eject cooldown.


Minimum height for loading box

added min height 100px
changed default opacity to .85
showed Storybook example
updated snapshot

fixex #198

The opacity change was due to the loader looking odd when covering a lot of bold large text.
Could you please add a story that shows the loader on top of an H1 + H2? Otherwise approved


Update distinctcountnoblank-function-dax.md

@kfollis
Can you review the proposed changes?
IMPORTANT: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


JsonSchema.Equals

Currently seems not possible, from a JsonSchema instance, to compare a JsonSchema with an other one. Are you going to support this?

I think this will depend on what you mean by equality.
If you're looking for "the two schemas serializer to the same JSON," I can probably accommodate that.
If you're looking for "these schemas might serialize to different JSON, but they are functionally equivalent," I don't think that's doable in this library.  It would involve a lot of theory and code to identify refactorings, much like a mathematical symbolic processor.  Probably best as a library unto itself.

What it's going to take to implement this:

JsonSchema will need equality

all keywords + OtherData, or
boolean value

all keyword implementations will need equality

Probably would be best for everything to implement IEquatable<T>.
This isn't difficult; it'll just take some time.

If you're looking for "the two schemas serialize to the same JSON," I can probably accommodate that.

Yes, this is what I meant.


Pulse generator de-embedding filter

Given a memory trace of a pulse generator's output, model it as an ideal unit step followed by an unknown channel and compute the S21 response of that channel (to be displayed or exported to a file).

In theory, it should also be possible to apply standard VNA calibration techniques (SOLT/TRL etc) to TDR/TDT traces as well, thus calibrating the step generator/scope frequency response details out. This would have the advantage of not assuming step to be ideal and also extending frequency response beyond step generator/scope -3db bandwidth (at the expense of some dynamic range)

(And the simplest version of TRL cal would be just assuming there are no reflections and measuring a through/source step signal and postulating that is a flat 0db S21)


Majidghassemi githubio patch 1

Title, Google Scholar, and the description changed.

It looks like you are attempting to push a change to the template repository, for help with deploying your own website please start a new thread in the discussions.


lsp_live_workspace_symbols error

Receiving this error when utilizing lsp_live_workspace_symbols
Error executing vim.schedule lua callback: ...s/.local/share/nvim/plugged/fzf-lua/lua/fzf-lua/core.lua:391: bad argument #1 to 'ipairs' (table expected, got function)

This is when browsing C code with clang

Receiving this error when utilizing lsp_live_workspace_symbols
Error executing vim.schedule lua callback: ...s/.local/share/nvim/plugged/fzf-lua/lua/fzf-lua/core.lua:391: bad argument #1 to 'ipairs' (table expected, got function)

This is when browsing C code with clang

I don’t think this is specific to C or clang, seems like the code is going through the wrong route and I’m not sure why.
While I’m trying to figure this out can you post the lsp section of your config from setup()? Also, do you call live symbols with any added parameters?

Ok turns out it was a C specific issue, that is due to the fact that (apparently) C language servers (I used ccls for my test) return an empty result set for workspace symbols with an empty query, that in turn was confusing my code :-)
It should be ok now, note that live_lsp_workspace_symbols opens with an empty result set but should start populating once you start typing, this is the equivalent to Telescope's lsp_dynamic_workspace_symbols

Youre too fast, didnt even get a chance to respond ;). Thanks!


You Forgot to Add Modules!

You forgot to add these Modules ;
"import string"
"import random"

Thank You For Letting Me Know About This!


Sanitize column names for order key in MySQL

This adds a SQL injection prevention for a case in which we cannot use
parameters in the query.
It is not clear that this was possible to exploit. If it was possible,
it would have required a valid login to the Fleet server.

I think regex is mitigated by the fact that it's in line with a network call to a database. That should dramatically outweigh any perf hit of the regex.


Attaching the footer to the bottom of the page

#63 #66
Attaching the footer to the bottom of the page (issue #63) with some additional style change and re-arranging the layout.tsx file.
Using flex attributes instead of using calc function with a fixed height value of the footer.

That's great! Notice these though:
 This happens on certain screen sizes...
Also the font should be inter, and sizes don't exactly match,
please make changes according to the figma design only.
Thanks :)

I think you've checked NOT the latest pull request. Please refer to commit 86fb3bd where all of the things mentioned above are handled. Thank you.

That's great! Notice these though:
 This happens on certain screen sizes...
Also the font should be inter, and sizes don't exactly match,
please make changes according to the figma design only.
Thanks :)

I think you've checked NOT the latest pull request. Please refer to commit 86fb3bd where all of the things mentioned above are handled. Thank you.
Preview deployment

There is already PR for that issue, I might be wrong, #66

@rotembarsela
You are right that there is an already open PR #66 BUT there is different approach of the implication as I explain here

Thank you @or-schneider I've changed the code as you suggested and it fixed the issue of the responsiveness that @RoyTennenbaum was referring to.
@RoyTennenbaum Please review again the latest commit


Different location text

Right now they look like  chr2 g.36768911G>T, but this is difficult to read and hard to copy/paste into IGV. How would chr2:36768911 G>T work?

To clarify: do you mean the ASCII report template?

Yes! (And also the PDF? I think it uses the same thing.)

I'll just note that this deviates from HGVS but I don't actually care, I find the latter notation easier to read.

Is there an advantage to sticking with the "official" notation?

How do you represent variants like "chr17 g.5365710_5365711insGTGG"?

ch17:5365710 G>GTGG ?

Works for me, we can just show the VCF nucleotides.
On Monday, October 31, 2016, Isaac Hodes<EMAIL_ADDRESS>wrote:

ch17:5365710 G>GTGG ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/hammerlab/vaxrank/issues/67#issuecomment-257435386,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAC9OWywo-kgkgPSdIxsUPwIa6yCe-sZks5q5mbdgaJpZM4KinqA
.

Going to change these in the CSV format since that's just for our use; also considering the "simple-text" to be a duplicate of this issue.


fix: default values for offset / limit in accountOrders

Coverage remained the same at 64.39% when pulling 50b8dbc2ca3482021184da1bcedac246392a0475 on fix/graphql/offset-limit into f93120ad23dc53066fd92a5969c5d435d3c986b3 on master.


[Feature Request] shrink top margin for short tasks

For 15 minute tasks, the "checkbox" (circle) fits great as does a single line description. But for even shorter tasks, the bottom of the circle / text start to get cut off:

Obviously this is unavoidable at some point if the task is too short, but the top margin doesn't seem to shrink even for tasks where the bottom is being cut off. If the top margin could shrink to prevent cut-off, I think 10 minute tasks would still look nice in the calendar (the two shown above are 10 minutes). 5 minute tasks will still get cut off, but you could see at least part of them instead of the current version where they look like

(this might also let us grab and move 5 minute tasks, which I currently can't seem to do; the dots for moving are fully covered by the draggable bottom to expand the task)

This is related to #357 but that one probably requires more work to change. I don't want to have tasks take up more space than the time they're allotted to; I just want that space to be used better (to display information instead of margin)

Removing the padding in task-block future and task-padding-box gives

which already looks much nicer, except the left/right padding should be kept (top 2 tasks are 10 minutes, bottom one is 5). I can't figure out how to make the 5 minute task's content move up further, though.
I also don't know very much CSS; is there some smart way to say "use 4 px top padding but automatically shrink it if the content of this div is overflowing"?


Contact Us form not closing.

Contact Us form is not automatically closing when the form is successfully submitted.

Close dialog box function for this form has been added to the Valid Dialog box jqueryUI block.


Automatic font size and column count adjustment?

We have our view filters configured so that the number of jobs displayed varies a lot. When all builds are stable we show all of our roughly 30 builds, but if for example one build fails we only show that build. Since we display our build status on wall mounted TVs, when something fails we want the information on the broken builds to be as easily seen, with fewer columns and bigger text.
Have you considered allowing the font size and column count to be automatically calculated from the number of jobs displayed?

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/25432254-automatic-font-size-and-column-count-adjustment?utm_campaign=plugin&utm_content=tracker%2F580790&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F580790&utm_medium=issues&utm_source=github).

Hi @davidparsson, yes, I've been thinking about how to approach this for quite some time now, but am not sure what the best solution is yet.
My initial thoughts on this matter:

the height of the font should ideally be a percentage of the total height of the container(the JobView panel)
as the length of the job name could exceed the width of its container, the name should probably be trimmed and an ellipsis displayed instead of the trimmed part

I'm not sure how easy/difficult it is to achieve with CSS itself; it seems like some javascript might be necessary to make this work.
What do you think?

@jan-molak, I've looked into something like fittext for this before, and while it did a good job making all job names visible, it also made a quite messy impression since it gave every job a different font size. It may still be the best option around, but I don't think it's perfect.
Another option might be to somehow calculate the font size based on the number of jobs visible, and allow users to relatively increase or decrease the calculated font size using configuration.
If the text can be readable when wrapped to two lines, I'd prefer that instead of trimming it and displaying an ellipsis.
When it comes to column count, I like the idea of allowing users to configure a desired ratio between the number of rows and columns, or possibly a desired aspect ratio for the jobs.

After a fair bit of experimentation with ng-FitText I agree with your view that while it makes the job names visible it also makes quite a messy impression as the job names, build numbers etc. can all appear in different sizes.
I've incorporated your suggestion and now:

the base font size is calculated based on the number of dashboard rows
the user can still tweak the font size and make it up to 3x smaller or 2x larger than what's calculated automatically
if the text doesn't fit the allocated space it is wrapped to multiple lines
if the number of displayed projects doesn't fit the screen, the dashboard becomes scrollable

Please have a look at the latest build and let me know what your thoughts!
All the best,
Jan

Thanks @jan-molak! I've taken a look, and it's definitely on the right track, but I have some comments.
First and foremost, I'm not a big fan of the scrollable page feature in its current form. It may hide entire builds without the user knowing it, partially because I see no scrollbar. Also, since we're using this plugin to display status on wall-mounted TV screens, manual scrolling is not a feasible option for us. Automatic scrolling could be a solution, but that too seems like a compromise. I actually think that it would be better to hide certain build information (such as build number and completion time, like what happened before), than to hide entire builds from the view. What are your thoughts on this?
Secondly, the build details texts (culprits, failure reason, ...) quickly becomes too small to be readable, becoming 6px (with the default text scale) when there are four rows of jobs. After adding a few more rows this also applies to the build number and completion time at the bottom of each job. It would of course be preferable to always be able to read everything, but when that's not possible it makes more sense to completely remove the small text. I however realize the technical reasons behind the current design.
Finally I'm wondering, was the automatic column count feature rejected on purpose? Should I create another issue for it? I still think it's a nice feature.
Please know that I really appreciate the work you're putting into this. Thanks again!

Hey @davidparsson and thanks for your feedback!
You're right about the scrollbar, I've just corrected that so it should be visible if it's needed. Please have a look at the latest build and let me know your thoughts.
I appreciate that a visible scrollbar doesn't entirely solve the problem you described, but should at least address the part where the user is not aware of the jobs that got "below the fold".
I like the idea of hiding the "build meta data" if it becomes too small too read. Would you mind raising a ticket or a PR for that?
I also like the idea for the Build Monitor to propose an initial number of columns - again a separate ticket or a pull request would be appreciated :-)
Thanks for helping me make Build Monitor better for everyone!
Best,
Jan

Done! I'm glad to be able to contribute.

We installed the latest version of the plugin and found out that now the scroll bar is displayed for our set-up, which of course pushed down the jobs that did not fit in the screen. Before was better cause we were able to manually adjust the font size to match the screen size.
BTW: how do you define "comfortably fits the screen"?

Hey @coosminus, automatic adjustment of the font size is quite a tricky subject because you have to cater for scenarios where people have relatively few jobs dislpayed (10-20) as well as when they have loads (300-400 for instance).
Here's how the font size is calculated.
So, the base size of the font (the 1em in CSS terms) is defined as 1/10th of the height of a widget or 10px, whichever is smallest (1/10 is a totally arbitrary number and may need tweaking).
Then the size of the title, build number and time, culprits etc is calculated as multiples of that base font.
To answer your question, a definition of "comfortably fits on the screen" would be "as many widgets as possible, as long as the base font size is 10px or more".
BTW: the base font size can still be adjusted using the "text scale" slider in the settings, so you can make it smaller than 10px. This way you should be able to fit more widgets without the scrollbar appearing.
BTW2: This solution is by no means set in stone and I'm definitely looking forward to comments, suggestions and pull requests! :-)

now, because of culprits, scrollbar appears.
before 1.8+build.201601112328 version there also were culprits, but, probably in smaller font

Hi @jan-molak , I got the idea, thanks for detailed explanations.
The thing is now there is no way of disabling automatic adjustment of the font size. Cause if I reduce the size of the font so the scroll bar dissapears, then it will be too small to be able to read it from the distance (e.g. our project room, our case 3-4 meters).
Before I could re-size the text as much as I wanted without the scroll bar to appear, even though the end text of job name would not fit in the box (job names do not change that much over times, so in our case it was enough even we cut out some end letters).
But I understand the challenge using automatic adjustment anyway.

Is it perhaps useful to reduce the margins/paddings/space around the text blocks for each job to make more room for larger font sizes, when the font size is small?

I don't have many builds on my current project so I have no idea what happens, but I can give input based on something I have seen before.
I have the feeling that all builds now have the same size.
You can play with that.
F ew: green builds can be smaller, only builds that are broken of where the status changed from you can make the current size. that way you have a lot more room to show a lot of projects and keep the most important information readable.

@coosminus - I see, the trouble is that when people have jobs nested in folders, the displayed name becomes pretty long and with the old UI you might end up in a situtation where you see the name of the folder, but not the name of the job. The same thing goes for jobs that have long names.
The new implementation displays the full name correctly, however the relative font sizes might (and probably will) need tweaking to cater for the scenario you described.
@davidparsson - that's an interesting idea; so are you suggesting that when the font size increases, the margins/paddings shrink? That might work.
@yveshanoulle - thanks for the feedback! So the green builds would have a different base font size than red? Yes, that could work as well as long as greens and reds are separated and not displayed on the same row; We might need two "sinks" so to speak: a top one for the red ones and the bottom one for the greens maybe?

Yeah, it's worth a shot at least.
Regarding the different font sizes for different statuses, I actually think it makes even more sense to hide any stable and competed builds, if there are any unstable or failed builds, to bring full attention to the problems.
I have set this up using the View job filters plugin, but the configuration is quite complicated so including that functionality in this plugin would still add some value.


Implement immutable block storage

This is mostly done, still working out some details in the tests; WIP PR at #188.

The basic immutable DB is done. There are a few tickets for the smaller outstanding issues (currently #328, #368 and #369).


TextInput clear() doe snot work when multiline = true (test on ios)

Description
The method .clear() of TextInput does not work (for controlled or uncontrolled component) straight away when multiline is true, can work with a setTimeout of 100ms
Version
0.64.2
Output of react-native info
System:
    OS: macOS 11.6
    CPU: (16) x64 Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz
    Memory: 51.61 MB / 32.00 GB
    Shell: 5.8 - /bin/zsh
  Binaries:
    Node: 14.18.0 - ~/.nvm/versions/node/v14.18.0/bin/node
    Yarn: 1.22.15 - ~/.nvm/versions/node/v14.18.0/bin/yarn
    npm: 6.14.15 - ~/.nvm/versions/node/v14.18.0/bin/npm
    Watchman: 2<IP_ADDRESS> - /usr/local/bin/watchman
  Managers:
    CocoaPods: Not Found
  SDKs:
    iOS SDK:
      Platforms: DriverKit 21.0.1, iOS 15.0, macOS 12.0, tvOS 15.0, watchOS 8.0
    Android SDK: Not Found
  IDEs:
    Android Studio: Not Found
    Xcode: 13.1/13A1030d - /usr/bin/xcodebuild
  Languages:
    Java: Not Found
  npmPackages:
    @react-native-community/cli: Not Found
    react: 17.0.1 => 17.0.1
    react-native: 0.64.2 => 0.64.2
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Steps to reproduce
<TextInput
          ref={inputControlled}
          style={styles.textInput}
          multiline={multiline}
          blurOnSubmit={false}
          value={controlledInputValue}
          onSubmitEditing={() => {
            console.log('controlled onSubmitEditing')
            setControlledList(controlledList => [...controlledList, controlledInputValue])
            setControlledInputValue("") //no work
            if (inputControlled.current) {
              if (timer) { //if timer is tru works but with a blink
                setTimeout(() => inputControlled.current.clear(), 50)
              }
              inputControlled.current.clear()  //no work
            }
          }}
          onChangeText={(text) => setControlledInputValue(text)}
        />

Snack, code example, screenshot, or link to a repository
https://snack.expo.dev/rdIImljJD
https://github.com/cesarve77/textinput

Hello, it is labeled with "Needs: Author Feedback", how can I help you?

Hello, it is labeled with "Needs: Author Feedback", how can I help you?

Sorry that was a bug with our bot. Now I've fixed the labels


Support inline markdown for sidebar entries

Hey! Love the project!
Currently it is not possible to use inline markdown to style the sidebar entries, e.g. make one of the entries look like inline code.
If you surround the item name with backticks they just get written out as text:

@shuding I don’t think we should implement this:

Never saw it in some site
Tricky to implement

@B2o5T Agreed! So far I couldn't think of an efficient way to do this

Closing since no interested of implementing (sorry 😞)


Peer dependencies

I wonder if tsc and typescript should be included as peerDependencies in the package.json.
See https://github.com/radarsu/ts-import/blob/master/src/index.ts#L177
If no, feel free to close.

Due to npx -p flag latest typescript package will be pulled directly from npm registry, so currently there is no need for typescript peerDependency.
I should add an option though to allow configuring it. Some people may want to use their local version of typescript (that will also improve performance of compilation), some may want to use different version of typescript for the compilation process than they use.

Some people may want to use their local version of typescript

Exactly 👍

By default, when npx -p typescript tsc is executed, it runs local version if it exists.


Autogtp 6 resign not handled

In autogtp v6 leela sometimes resigns, which is not handled by the parser and causes a crash.

Ah lovely yes, this wasn't a case that had to be handled previously...

 358 (T12) 	Move:T12
 359 (resign) 	Move:resign
oh noes!!!
java.lang.RuntimeException: BAD MOVE: resign
	at leelawatcher.parser.AutoGtpOutputParser.parseMove(AutoGtpOutputParser.java:129)
	at leelawatcher.parser.AutoGtpOutputParser.lambda$start$0(AutoGtpOutputParser.java:90)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)

Now handled in release 1.0.2 (https://github.com/fsparv/LeelaWatcher/releases/tag/REL_1_0_2)


What about computing resource consumption

What about computing resource consumption？

Hi! Thank you very much for your reply! But I have one more question.
How long does it takes? When train, when test?

Hi! Thank you very much for your reply! But I have one more question. How long does it takes? When train, when test?

Our method is training-free. The inference speed depends on the GPU you use.


Validating a controller's methods

As I'm temporarily using plain NodeJS to migrate old code to awilix before moving to Typescript based code, I was wondering if it is possible to implement a startup validation for this module? Currently running into continuous methods which are missing, which Im trying to fix with unit and end-to-end testing (quite a slow method).
Startup validation would basically require looping over and checking whether the controller method or class has the functions indicated in the builder pattern and throwing an error when its missing. Does this sound doable to you? If not, its no problem to close the issue.

Its not something I would build in, but you can use the getStateAndTarget from state-util to look at the configuration and run that yourself.
The controller instance isn't created until a request comes in.

Perfect and no problem at all!


[Traversal] Filtering projects solution files without kicking off evaluations

The new filter projects in solution files feature in Microsoft.Build.Traversal is phenomenal. I noticed that by default, it still kicks off evaluations for the projects in order to then invoke the custom ShouldSkipProject target. In my situation, I don't want to even trigger evaluations (and with also not trigger msbuild sdk resolver events). I was able to make that work with the following code:
Directory.Solution.targets
<Project>

  <Import Sdk="Microsoft.Build.Traversal" Project="Sdk.targets" />

  <!-- Overwrite target from Traversal Sdk.targets. -->
  <Target Name="GetProjectsToSkip">
    <ItemGroup>
      <ProjectToSkip Include="@(ProjectReference)"
                     Message=""
                     Condition="$([System.String]::new('%(ProjectReference.Identity)').EndsWith('.Tests.csproj'))"
                     OriginalItemSpec="%(Identity)" />
    </ItemGroup>
  </Target>

</Project>

Unfortunately this only works with normal restore and not static graph based restore: https://github.com/microsoft/MSBuildSdks/issues/521
Should we document this option? From my perspective, while this is a static mechanism to filter out projects, it's the only correct way as it doesn't even trigger evaluations of filtered out projects.

cc @jeffkl
I initially tried to do this without a target but the ItemGroup always gets embedded into the sln before the ItemGroup with the ProjectReference items. That's unfortunate as it would have solved the static graph restore issue.

The original idea of dynamic skipping was for each project to indicate if it should be built.  So obviously that works well if a target is run ahead of time which modifies the final ProjectReference items.  But as you've noticed since static graph only does evaluations it won't quite work in that mode.  Instead, the entry project would need to know ahead of time if a particular project reference should be included in the restore/build and your sample above is a good way to do it, based off of a naming convention.
My design came about because I introduced a Visual Studio extension to a repo that only needed to build on Windows and CI is building/testing on Linux and Mac which caused issues.  It works pretty well when building solution files since they generally reference every project in the repo.  Traversals are potentially more complicated since they represent what to build in that particular folder.  So at the root you have a dirs.proj that points to just the next folder down's dirs.proj projects.  The transitive closure isn't necessarily represented in that paradigm so skipping transitive projects on-the-fly isn't easy.
I wonder if MSBuild's static graph API needs a way for a project to communicate that it wants to be left out of a build?  I suppose in that case the project would still get evaluated but be trimmed away from the final dependency tree.  I'm conflicted on whether or not the fix for this needs to avoid the evaluation all together or just skip projects that opted out.  What are your thoughts?


Digital Downloads

Hello, I am currently using saleor and I have to say it is amazing. Everything is setup and its easy to manage the store. I am making a digital store and I am finding it difficult to implement. Please can someone refer to some guide or give me some step here to handle a digital product, its payment and downloading part. It will be very helpful.
Thanks.

Hello and thank you for the kind words! Have you considered joining the community chat on Gitter?

sure


Removing Badge Numbers

I don't want to display badge numbers in month view please help me ?

Do you mean #611?

I have one event in my todays date so its display both event and badge also.badge in the sense in the top of number it display 1 .i want to hide this feature how can i do this

For all days or only today?

For all days

CSS rule small.cal-events-num.badge{ display: none; } works for me.


Docsearch discern language

Changes
Original PR: https://github.com/withastro/astro/pull/2472

Upgraded docsearch
Removed unnecessary lang tag in markdown
Re-added facet filters
Added getMissingResultsUrl

In the preview, the search is not working. I’ll work with Fred this week to get it working. It might be a missing API key or configuration. Once that’s fixed, this can be merged.


DEBUG_DEPTH not working

DEBUG_DEPTH env var has no effect. I tried values of 10, 100, null. No matter what I always get the following display:
2020-02-08T22:17:01.423Z SCOPE STRING [ { email<EMAIL_ADDRESS>vars: [ [Object] ] } ]

My invocation:
debug('STRING', targetObj);

GitHub Enterprise Server only: This is all possible on GitHub Enterprise through GitHub Connect. It may take up to an hour to refresh the alerts and make them visible. After waiting a reasonable amount of time, if you are still not seeing the yellow bar in the Dependency Graph, you may want to contact your administrator. In the mean time, to move along with the course, we'll give you a hint - the recommended upgraded version is 2.6.9

Noticed this also.  Looks like it is defaulting to 3 and not allowing an override...
Any fix in the works?

Yep looks like a regression somewhere.

Can you test with npm i --no-save visionmedia/debug#fix/depth?

Started down the git blame rabbit hole. This has been broken for years. Amazing.

Looks like fix is effective. Any place to add unit tests for this?
I should have noted it reproduces only when deep object is the second argument to the debug function, e.g.
// index.js
require('debug')('FOO')('something', {
  x: 1,
  y: { a: 2, b: 3, c: { a: 1, b: { a: 1, b: { a: 1, b: { a: 1 } } } } },
});

Before fix:
$ DEBUG=FOO DEBUG_DEPTH=40 node index.js
  FOO something { x: 1, y: { a: 2, b: 3, c: { a: 1, b: [Object] } } } +0ms

After fix:
$ DEBUG=FOO DEBUG_DEPTH=40 node index.js
  FOO something {
  x: 1,
  y: {
    a: 2,
    b: 3,
    c: {
      a: 1,
      b: { a: 1, b: { a: 1, b: { a: 1 } } }
    }
  }
} +0ms

I should have noted it reproduces only when deep object is the second argument to the debug function, e.g.

Yeah that's much less simple to fix; there are a few bugs about this. v5 is going to be a rewrite for the most part, so a lot of this will get addressed then.
Glad to know it works now; I'll commit it in. Thank you very much for testing @anishkny :)

What is the status on this issue ?
I noticed it recently in our production container, but that's a bit more tricky since I can't reproduce the problem locally.
Same value of DEBUG_DEPTH in both case (10).
Trying to decrement or increment it locally seems to produce the expected effect, while any value in our container does nothing (looks like it's stucked to 3), so I'm guessing something else is interfering but I wasn't able to find out what yet.

What is the status on this issue?

@Qix- very useful & constructive, thanks.
Since you clearly need me to clarify my question:
Giving this issue is opened for more than a year, and no news since Jul 9, 2020, would you be so kind to provide some update on its resolution ?
Thanks

There is no update.

@Qix- Thanks.
Thing is, you apparently already had a fix a year ago and stated in the last update on this issue :

[...] I'll commit it in sometime soon.

I'm wondering what's holding you back for so long and if the project is still maintained.
Do you or any maintainer on the project would need any help to make it happen ?

@sylver

Thing is, you apparently already had a fix a year ago and stated in the last update on this issue :

Yep.

I'm wondering what's holding you back for so long

Life.

if the project is still maintained.

Yep.

Do you or any maintainer on the project would need any help to make it happen ?

I'm the only active maintainer and I've been struggling to find free time to work on unrelated OSS. The pandemic hit us really hard and we're recovering still.

@Qix-

The pandemic hit us really hard and we're recovering still.

Sorry to hear that, hold on there.

I'm the only active maintainer and I've been struggling to find free time to work on unrelated OSS.

That's understandable.
That's not a critical issue anyway, just an annoying one.
But if there's a quick win and I can help to close it with a MR (adding what's missing, unit tests maybe ?), let me know.

@Qix- I have created a PR https://github.com/debug-js/debug/pull/911 for this fix.
It comes with tests as well.

It looks like your fix unfixed itself in the mean time somewhere. Running the test someone mentions above yields this:
DEBUG=FOO DEBUG_DEPTH=40 node bla.js
  FOO something { x: 1, y: { a: 2, b: 3, c: { a: 1, b: [Object] } } } +0ms

As you can see, this stil (again?) prints [Object]

It looks like your fix unfixed itself in the mean time somewhere. Running the test someone mentions above yields this:
DEBUG=FOO DEBUG_DEPTH=40 node bla.js
  FOO something { x: 1, y: { a: 2, b: 3, c: { a: 1, b: [Object] } } } +0ms

As you can see, this stil (again?) prints [Object]

My fix wasn't merged. You can try to checkout this branch to see if it works: https://github.com/calvintwr/debug/tree/fix/debug-depth

Looks like it works as expected now:
$ DEBUG=FOO DEBUG_DEPTH=40 node index.js
  FOO something {
  x: 1,
  y: {
    a: 2,
    b: 3,
    c: {
      a: 1,
      b: { a: 1, b: { a: 1, b: { a: 1 } } }
    }
  }
} +0ms
$ DEBUG=FOO DEBUG_DEPTH=1 node index.js
  FOO something { x: 1, y: { a: 2, b: 3, c: [Object] } } +0ms

@Qix now that the pandemic is over you think you could merge this? :)

@7elephants this project is abandoned. We are maintaining it at https://github.com/calvintwr/debug-next

Abandoned at 200M weekly download versus 80 for debug-next???

@7elephants the original debug team abandoned this project. We are not associated with them. We forked the repo and maintain it separately as a drop in replacement, with bug fixes and extra features that we needed.

@calvintwr please stop spreading misinfo. It's not abandoned. You're welcome to fork but it's not entirely easy to maintain this package as I'd like to.

Released as 4.3.5.

@Qix- Thanks for the update. That debug-next fork is interesting, but I strongly prefer debug as it keeps things exactly as they should be: simple!


update ztunnel notes

Please provide a description of this PR:
Missing ztunnel from the fix for https://github.com/istio/istio/issues/50490
To help us figure out who should review this PR, please put an X in all the areas that this PR affects.

[x ] Ambient
[ ] Configuration Infrastructure
[ ] Docs
[ ] Dual Stack
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ x ] User Experience
[ ] Developer Infrastructure

Please check any characteristics that apply to this pull request.

[ x ] Does not have any user-facing changes. This may include CLI changes, API changes, behavior changes, performance improvements, etc.

@linsun: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-security_istio
e566d720fb0795e35ee2613a6bcaecf8ecdc0e19
link
true
/test integ-security

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-security

@linsun: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name
Commit
Details
Required
Rerun command

integ-security-multicluster_istio
e566d720fb0795e35ee2613a6bcaecf8ecdc0e19
link
unknown
/test integ-security-multicluster

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test integ-security-multicluster


Add tests and methods for multi-signature transactions

@ethanfrey @willclarktech could one of you have a look at the README additions (last commit)?
I'll resolve the conflict and CI fail during merge


[PROPOSAL] - Allow Mongocruise to handle aggregation operations

Description
Currently Mongocruise is suitable for simple CRUD operations on a MongoDB only. This means that whenever we have more than 1 query that needs to be performed whether it is to manipulate the data or return more than a single set of data in a single API call, we need to rely on Hapi's handler rendering Mongocruise unusable.
MongoDB has implemented the Aggregation Pipeline for a while now, and it suits a vast range of applications. This proposal is in place so we may allow users of the library to have more freedom, and leverage Mongo's internal capabilities a bit better.
Motivation
What brought me to this proposal was the implementation of server-side pagination in our application. Basically, when using pagination we need to inform both the totalCount of items of a specific collection, as well as the paginated items according to the skip and limit values of the request. So let's assume we have a find route using Mongocruise before implementing pagination:
module.exports = {
  method: 'GET',
  path: '/todos',
  options: {
    id: 'findTodos',
  },
  handler: {
    mongocruise: {
       collection: 'todos',
       operation: 'find'
    }
  }
}

This is great for a simple GET request, but as data increases, we need to think of a different strategy, in this case, we're paginating the request. So as we know, to render the todos here we will need both the totalCount and the list of items per page. This means that we will need to perform the queries ourselves in the handler, which starts to bloat the code, so we go from the route above, to the 🍝 route below:
module.exports = {
  method: 'GET',
  path: '/todos',
  options: {
    id: 'findTodos'
  },
  handler: async (request, h) => {
    const { skip, limit } = request.query
    const { db } = h.mongo

    try {
      // Fetch the total count of todos
      const totalTodos = await db.collection('todos').countDocuments()

      // Fetch the paginated todos
      const todos = await db.collection('todos')
        .find()
        .skip(parseInt(skip, 10))
        .limit(parseInt(limit, 10))
        .project({ _id: 1, title: 1, completed: 1 })
        .toArray()

      // Return the result
      return {
        totalTodos,
        todos
      }
    } catch (error) {
      console.error(error)
      return h.response({ error: 'Failed to fetch todos' }).code(500)
    }
  }
}

Not literally a spaghetti route, but it does get bloated, and we can soon loose control of the complexity here. This is where the aggregation pipeline shines, since we can aggregate queries into a single operation, and also update the returning data anyway we would like.
The new route
By using the new operation implemented in the proposal, we could move from a bloated route like the one above, to a more streamlined version, which follows Mongocruise pattern which you can see below:
const paginatedTodosPipeline = require('./pipeline')

module.exports = {
  method: 'GET',
  path: '/todos',
  options: {
    id: 'findTodos',
  },
  handler: {
    mongocruise: {
      collection: 'todos',
      operation: 'aggregate',
      pipeline: paginatedTodosPipeline
    }
  }
}

This gives us a clean pattern for route definition, and we also have freedom to update our queries and even filter out the results in any way we'd like, for example, we could GET all todos filtering by author:
// todos/pipeline.js
const buildPipeline = (request) => {
  const { skip, limit, author } = request.query;

  return [
    {
      $match: { author },
      $facet: {
        totalTodos: [{ $count: "count" }],
        todos: [
          { $skip: parseInt(skip, 10) },
          { $limit: parseInt(limit, 10) },
          { $project: { _id: 1, title: 1, completed: 1 } }
        ]
      }
    },
    {
      $project: {
        totalTodos: { $arrayElemAt: ["$totalTodos.count", 0] },
        todos: 1
      }
    }
  ]
}

In this example we are using a complex pipeline with $facet where we are able to run multiple pipelines at once, and return a single value.
Error handling
I've decided to handle errors related to the structure of the operation, which means we deal with errors that are related to how mongocruise expects the payload, and leave Mongo to return the errors in case the pipeline has a wrong syntax or anything like that.
The reason for that is that I don't believe that mongocruise should accomodate to all possible scenarios where a pipeline may fail, and instead, we rely on Mongo's internal "knowledge" of the pipeline to return the appropriate response.
Conclusion
I believe this can be a nice approach to leverage MongoDB to it's full potential, and bring mongocruise to another level in regards to where it is currently, as well as giving users more freedom to the type of operations that are made in the API level.

@afgallo thanks! Just added the README updates in the latest commit.

Great feature and looks good to me.
Just a question. Is this mean, aggregation can't be done alongside other existing operations like find? find operation has its own query builder. Would be nice if we can still use it.


Expose job backoffLimit to users

Fixes: https://github.com/spotify/flink-on-k8s-operator/issues/677

Exposes backoffLimit in jobSpec giving users the ability to set it themselves.
Keeping the default value as 0 since it is the current default and sensible for batch jobs.

Closing this in favour of https://github.com/spotify/flink-on-k8s-operator/pull/676