docs: [vision-os-sample-app][2/n] App State Storage

docs: [vision-os-sample-app][2/n] App State Storage
Context
This is a PR in a series of PRs to build sample app that runs Identify and Track in VisionPro
PR Summary
In this PR I added storage utilities to persiste/restore the app satate as well as few payloads that will be used for SDK initialization, profile, and events
Test plan

Open VisionOs.xcproject
Hit CMD+R to run the project and make sure you have VisionOS simulator installed and selected

Stack created with Sapling. Best reviewed with ReviewStack.

#586
#585
#581
#580
#579
-> #578
#577
#576

Thank you Levi for the reviews and for giving a shot to ReviewStack. I agree it was acting up for a bit; it should be working now and if you use ReviewStack you will see only the relevant change for each PR


Update php-csfixer rules to address problem in 2.7 & new multiline rule

What

Configure to ignore processing of yoda_style rules
Explicitly set multiline comment mode
Update comment syntax for multiline // prefix
Explicitly run PHP-5.3 Travis tests on precise

Why

yoda_style in 2.7 is dangerous and may result in logic errors. In some cases, it also results in invalid syntax.

multiline comments prefixed with // now seem to be misaligned, and this cannot be disabled, so have changed the relevant comment.

trusty is now the default PHP testing distro on Travis, and it does not support PHP-5.3.

LGTM


Response schema not validated

Context

10.0.0
(also previous versions)

What are you trying to achieve or the steps to reproduce?
My response schema isn't validated.
    auth: false,
    tags: ['api', 'users', 'auth'],
    description: `Credential-based authentication`,
    response: {
      schema: Joi.object({
        equals: Joi.number().required()
      }).label('Result')
    },
    validate: {
      payload: {
        email: Joi.string().required().description('E-mail address'),
        password: Joi.string().required().description('Password')
      }
    }
  }

What result did you get?
Http 200 result OK even when my response does not contain the "equals" property
What did you expect?
A validation failed error.
Is there anything we need to configure so that response output objects are validated to the schema configuration?

Please see https://hapijs.com/tutorials/validation#output. If hapi-swagger is not building the right swagger definition then reopen.


add mutli-langs

https://github.com/cheeaun/repokemon/issues/31

Demo here https://its-just-nans.github.io/repokemon/


Fix Gradle build, using bootWar

See https://github.com/jhipster/generator-jhipster/commit/edcf0529bd444f9c4d03fc002bcb78642efaf731

Thx.


add preloader in index.html

@arghadipmanna101 I have added the preloader.html in the header.html.

There have a conflict check it once and then you can create a new PR. ok


feat: add the cookie setting for golang code generator

Solved this issue: #360 .

And there is a bug in the same file main.ho.tpl,  on line 19, The comma used to separate parameters was placed outside of the quotation marks. Since they are in one file, I don't think it's necessary to create a separate pull request just for this bug.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

When I lay in bed, ready to fall asleep, I realized I hadn't added unit tests. I plan to complete it tomorrow.😂

Thanks for clearing that up. I get it now

Here is my personal experience. Please feel free to read it if you are interested in it.
https://github.com/LinuxSuRen/open-source-best-practice


alembic set song id nullable everytime

I followed this post , everything is fine until I add "year" item in "SongBase", and when I execute
python -m alembic revision --autogenerate -m "add year in SongBase"
the autogenerated migration file is not the same as yours, it's like
def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.add_column('song', sa.Column('year', sa.Integer(), nullable=True))
    op.alter_column('song', 'id',
               existing_type=sa.INTEGER(),
               nullable=True,
               autoincrement=True)
    op.create_index(op.f('ix_song_year'), 'song', ['year'], unique=False)
    # ### end Alembic commands ###

def downgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.drop_index(op.f('ix_song_year'), table_name='song')
    op.alter_column('song', 'id',
               existing_type=sa.INTEGER(),
               nullable=False,
               autoincrement=True)
    op.drop_column('song', 'year')
    # ### end Alembic commands ###

and of course fail to execute "python -m alembic upgrade head", because db id cannot be null.
Even if I didn't change anything and execute autogenerate again, the migration file still have
op.alter_column('song', 'id',
               existing_type=sa.INTEGER(),
               nullable=True,
               autoincrement=True)

Could you help me find out why does it happen?
Environment:
Ubuntu 20.04 wsl2
Python 3.9.7
models.py
from typing import Optional

from sqlmodel import Field, SQLModel

class SongBase(SQLModel):
    name: str
    artist: str
    year: Optional[int] = None

class Song(SongBase, table=True):
    id: int = Field(default=None, primary_key=True)

class SongCreate(SongBase):
    pass

Solved after explicitly  nullable=False to id field


Tracking code not included with component snippet

I've added the details in the settings, all seems OK.
However the tracking code ID isn't being output in the generated Google tracking JS from the plugin component, there's literally a pair of empty quote marks.
Any thoughts? I think I may remove the component snippet and add manually until I hear a reply (swift response would be much appreciated). Thanks

My bad, I hadn't copied DB to live. Sorry!


Alternative proposal for parent/child relationships

Proposal #61 suggests some solution to simplify "parent/child relationships". I'm trying to understand how conceptually we are selling this solution to the end user. We are telling that user should "connect" parent and child tags, but maybe user does not need child tags? Maybe he just needs a way to express complex input object using declarative markup.
If we step back and overview tags again, we can say that tag is a function with the following signature:
var customTag = function(input, out) {
    // ...
};

Instead of calling it directly in the code, we found a way to "call" it declaratively with the following markup:
<custom-tag title="Hello" href="/some/url" />

Naive equivalent of the above declarative "call" is the following function call:
customTag({ title: "Hello", href: "/some/url", renderBody: function() {} });

It means that declarative <custom-tag /> is used to define the shape of the input object for customTag function. Nothing new here, this is just an introduction.
But you can notice, that declaratively you can define only first-level properties or functions of the input object.
Alternative definition of the problem
In proposal #61 idea was to simplify parent/child relationship. But maybe we can solve the same problem if declarative "call" would support definition of complex input objects. Actually, the notion of the target-property suggests us that we are really looking to support complex input object, not just single-level attributes.
Sometimes we really would like to call our tag function with complex input object. In JavaScript this is really simple and straightforward:
appTabs({
    orientation: "vertical",
    tabs : [
        { label: "Tab 1", renderBody: function() { return "Content for Tab 1" } },
        { label: "Tab 2", renderBody: function() { return "Content for Tab 2" } }
    ],
    renderBody: function() { ... }
};

Today we cannot easily do the same declaratively. We can pass orientation attribute, but we cannot pass tabs[] array. Proposal #61 tries to solve this, but conceptually it is a bit complex, because it requires to introduce another tag that is defined separately from the attributes attribute in marko-taglib.json, while still attaching to the input object with the help of target-property. I see mismatch here: from one side we have independent child tag, from other side we are trying to embed it to our parent's input object.
What if the problem can be defined as the following: how can we make declarative "call" of tag function that accepts complex input objects? This definition of the problem is differ from the current problem: how can we simplify parent/child relationships?
Proposal for marko-taglib.json syntax
If our tag function can accept complex input objects then shape of such object should be defined inside attributes, where we currently have support for only first-level attributes. Here is a possible definition of app-tabs taglib:
{
    "attributes": {
        "orientation": "string",
        "tabs": {
            "type": "object[]",
            "implicit": true,    // only one attribute can be implicit (more about this below)
            "attributes": {
                "label": "string"
            }
    }
}

Nested tags vs. nested attributes
Nested tag is a complete Marko tag which is nested to another tag and can be reused. Nested attributes can look like ordinary Marko tags, but they cannot be reused outside of the root tag.
In the following example, <app-panel /> is a nested tag, while <app-tab /> is a nested attribute of <app-tabs />:
<app-tabs orientation="vertical">
    <app-tab label="Tab 1">
        <app-panel title="Title" />
    </app-tab>
    <app-tab label="Tab 2">
        Content for Tab 2
    </app-tab>
</app-tabs>

We cannot reuse <app-tab /> outside of the root <app-tabs />. That is why this is a nested attribute. But we can reuse <app-panel />, because this is a nested tag.
Important part of this proposal is a proposal to treat nested tags differently from the nested attributes.
Proposal for the syntax of nested attributes
There are several possible ways to express nested attributes. First possible way is to use tag-name.property notation:
<app-tabs orientation="vertical">
    <app-tabs.tab label="Tab 1">
        <app-panel title="Title" />
    </app-tabs.tab>
    <app-tabs.tab label="Tab 2">
        Content for Tab 2
    </app-tabs.tab>
</app-tabs>

The following input object will be created (renderBody etc. are omitted):
{
    "orientation": "vertical",
    "tabs": [
        { "label": "Tab 1" },
        { "label": "Tab 2" },
    ]

I saw such notation in the XAML language:
<Button Text="Save">
  <Button.ContextMenu>   <!-- nested attribute -->
    <ContextMenu>     <!-- nested tag -->
      <MenuItem Header="1">First item</MenuItem>
      <MenuItem Header="2">Second item</MenuItem>
    </ContextMenu>
  </Button.ContextMenu>
  Right-click me!
</Button>

Second possible way is to use some special param tag, like in Google Closure Templates:
{template <template_name>}
  {@param <param_name>: <param_type>}
  {@param? <optional_param_name>: <param_type>}
  ...
{/template}

In case of Marko it can be <@param attribute1="value" attribute2="value" />, although I also don't like special symbols (maybe simple <param ... /> is enough):
<app-tabs orientation="vertical">
    <@tab label="Tab 1">
        <app-panel title="Title" />
    </@tab>
    <@tab label="Tab 2">
        Content for Tab 2
    </@tab>
</app-tabs>

Marko already has special syntax for string interpolation: ${value}, $!{value} and ${value}. Maybe it still worth to add another special syntax for nested attributes: <@name /> or any other.
I'm not voting for any particular syntax, my idea is to evaluate problem that we are trying to solve from different angle (from declarative definition of complex input objects). I'm sure that together we can find a better syntax.

In my comment to #61 I asked about support for more than one level of nested tags with the following use case:
<sidebar-navigation>
    <sidebar-navigation-section title="Software">
        <sidebar-navigation-item href="/linux" title="linux"/>
        <sidebar-navigation-item href="/windows" title="Windows"/>
    </sidebar-navigation-section>
    <sidebar-navigation-section title="Devices">
        <sidebar-navigation-item href="/ipad" title="iPad"/>
        <sidebar-navigation-item href="/xbox" title="Xbox"/>
    </sidebar-navigation-section>
</sidebar-navigation>

When looking on this template, can you answer on what tags are "nested tags" and what are just "nested attributes"? It is hard to answer on this question without reading marko-taglib.json. If we can find a way to differentiate tags from attributes, it can be expressed in the following way (using some of the proposed syntax):
<sidebar-navigation>
    <@section title="Software">
        <@item href="/linux" title="linux"/>
        <@item href="/windows" title="Windows"/>
    </@section>
    <@section title="Devices">
        <@item href="/ipad" title="iPad"/>
        <@item href="/xbox" title="Xbox"/>
    </@section>
</sidebar-navigation>

Definition of this tag in marko-taglib.json:
{
    "attributes": {
        "orientation": "string",
        "sections": {
            "type": "object[]",
            "implicit": true,    // only one attribute on the same level can be implicit
            "attributes": {
                "title": "string",
                "items": {
                    "type": "object[]",
                    "implicit": true,   // only one attribute on the same level can be implicit
                    "attributes": {
                        "title": "string",
                        "href": "string"
                    }
                }
            }
        }
    }
}

implicit flag means that we can assign value to this property using shorter notation. Instead of this (technically valid):
<sidebar-navigation>
    <@sections>
        <@section title="Software" />
    </@sections>
<sidebar-navigation>

We can write it in the shorter form:
<sidebar-navigation>
    <@section title="Software" />
<sidebar-navigation>

In XAML this flag is named ContentProperty.
Conclusion
This is just a proposal. You probably see much more corner stones than I am.
Thank you!

@schetnikovich Excellent proposal! You did a great job capturing the disconnect between nested tags and how their values are actually used by the parent widget. I think you're exactly right that they're more like attributes since the complex values for the nested tag get stored the same way as attributes (based on the proposals we have so far).
We need to make sure that this remains valid HTML. I don't think the HTML parser will allow . and @ in the tag names (haven't verified this yet), and for that reason we could try to use XML namespaces instead of a new syntax. For example:
<app-tabs>
    <app-tabs:tab label="Tab 1">
        Content for Tab 1
    </app-tabs:tab>
    <app-tabs:tab label="Tab 2">
        Content for Tab 1
    </app-tabs:tab>
</app-tabs>

At one name every tag could be put into a namespace but then we decided to require that all tags be named uniquely. For example, instead of creating a namespace with name "app" and using <app:tabs> we moved toward <app-tabs>. I think we need to completely remove that namespace code.
If the HTML parser will allow @ and . in an HTML tag then it might be worth considering that notation as well. We could fork the HTML parser that we are using. There is a precedence of using @ to indicate attributes. If we could interpret @ to mean "this tag belongs to the closest parent tag" then we could automatically bind nested tags as attributes to parent tag. If the nested tag is not the direct descending then maybe we could support a qualifier. Also, if we go this route then we'll need to enhance the Marko syntax highlighter for Atom (and possibly create one for other editors such as Sublime Text).
For example, simple case that doesn't require qualifiers:
<app-tabs>
    <@tab>
        <@label>Tab 1</@label>
        Content for Tab 1
    </@tab>
    <@tab>
        <@label>Tab 2</@label>
        Content for Tab 1
    </@tab>
</app-tabs>

For example, less simple case that does require qualifiers:
<app-tabs>
    <if test="data.readOnly">
<EMAIL_ADDRESS>            <@label>Tab 1</@label>
            Content for Tab 1
<EMAIL_ADDRESS>    </if>
    <@tab>
        <@label>Tab 2</@label>
        Content for Tab 1
    </@tab>
</app-tabs>

Also, I wonder if we can support nested tags within nested tags. For example, using the namespace notation:
<app-tabs>
    <app-tabs:tab>
        <app-tabs:tab:label>Tab 1</app-tabs:tab:label>
        Content for Tab 1
    </app-tabs:tab>
    <app-tabs:tab>
        <app-tabs:tab:label>Tab 2</app-tabs:tab:label>
        Content for Tab 1
    </app-tabs:tab>
</app-tabs>

If we hit limitations with the HTML parser that we're using then maybe we should consider writing our own because that would provide some other niceties.
I've been interested in doing this:
<app-button size={data.buttonSize}></app-button>

I'm definitely going to think about this some more!

It might be possible sidestep the tag-name issues and instead define a new marko-tag like <attribute name="X">value</attribute>, which would set an attribute on the parent tag.  In this use-case the markup for the tabs might look something like:
<app-tabs>
    <attribute name="tab">
        <attribute name="label">Tab 1</attribute>
        Content for Tab 1
    </attribute>
    <attribute name="tab">
        <attribute name="label">Tab 2</attribute>
        Content for Tab 1
    </attribute>
</app-tabs>

This scheme could potentially be used for defining attributes on regular html tags as well as on our custom taglib tags too, though I have no idea how much complexity that would add to the parser.

Thanks for the proposal, @DanCech. I like the idea of having a shorthand for nested tags.
Technically, HTML 5 does allow any character for the tag name but the first character must match[a-zA-Z]. This only made clear if you look at the tokenization spec:
http://www.w3.org/TR/2011/WD-html5-20110113/tokenization.html#tag-open-state
http://www.w3.org/TR/2011/WD-html5-20110113/tokenization.html#tag-name-state
Therefore, unless we fork the parser that we are using and are willing to break syntax highlight in all HTML editors then we should conform to the HTML spec.
I don't consider <attribute> as a replacement for repeatable nested tags for two reasons:

Marko already supports nested <attr> tags that can be used to add HTML attributes to the parent element (not documented, but here is a relevant test)
Real attributes cannot be repeated

Just to be clear, the following is already supported:
<app-tabs>
    <app-tab>
        <attr name="label">Tab 1</attr>
        Content for Tab 1
    </app-tab>
    <app-tab>
        <attr name="label">Tab 2</attr>
        Content for Tab 2
    </app-tab>
</app-tabs>

Regarding nested tags, I think we should consider the following options:
Option 1: Use a colon to namespace nested tags:
<app-tabs>
    <app-tabs:tab label="Tab 1">
        Content for Tab 1
    </app-tabs:tab>
    <app-tabs:tab label="Tab 2">
        Content for Tab 2
    </app-tabs:tab>
</app-tabs>

Pros:

The colon character is already associated with namespacing and a nested tag is namespaced within a parent element.
In the future, we may want to support a short-hand by dropping the parent namespace part (e.g., <app-tabs:tab> → <:tab>
Most HTML editors should not have a problem with a colon character in a tag name

Cons:

Looks like XML namespaces (can be a turn off to some people)
Colon character is harder to type (requires the SHIFT key)
More typing

Option 2: use a period to namespace nested tags:
<app-tabs>
    <app-tabs.tab label="Tab 1">
        Content for Tab 1
    </app-tabs.tab>
    <app-tabs.tab label="Tab 2">
        Content for Tab 2
    </app-tabs.tab>
</app-tabs>

Pros

Same as Option 1 plus the period character is easier to type (no SHIFT key)

Cons

Not sure how most HTML editors, parsers and linters will feel about a period character in the tag name
More typing

Option 3: Use a dash separator for the nested tag name:
<app-tabs>
    <app-tabs-tab label="Tab 1">
        Content for Tab 1
    </app-tabs-tab>
    <app-tabs-tab label="Tab 2">
        Content for Tab 2
    </app-tabs-tab>
</app-tabs>

Option 4: Use no explicit namespacing and just rely on a unique tag name:
<app-tabs>
    <app-tab label="Tab 1">
        Content for Tab 1
    </app-tab>
    <app-tab label="Tab 2">
        Content for Tab 2
    </app-tab>
</app-tabs>

Thoughts on which option is best? I'm leaning towards Option 2 (using a period as a separator), but I think we need to see how various tools feel about a period in the tag name.

Interesting, I didn't know about .  Is that something that's intended to be documented and officially supported?
I think the colon approach will result confusion since the app-tabs "namespace" wouldn't actually be declared, and could cause problems for people trying to use marko to generate xml.
The . or - separated syntax seems cleanest, if a little repetitive.  The ability to just declare arbitrary subtag names in the taglib definition could result in some interesting use-cases and has the potential to make the template markup more "semantic", which is a pretty big pro in my book.

@schetnikovich I think I missed the main purpose of your proposal. Your goal was to normalize attributes and nested tags and I think that is a good idea. What do you think of the following variation?:
app-tabs/marko-taglib.json:
{
    "attributes": {
        "orientation": "string",
        "tabs": {
            "type": "object[]",
            "nested-tag": {
                "name": "tab",
                "attributes": {
                    "label": "string",
                    "body": "string"
                }
            }
        }
    }
}

You would then have two options for passing in the array of tabs:
Using the tabs attribute:
<app-tabs tabs="[ { label: 'Foo', body: 'Content for Foo' }, { label: 'Bar', body: 'Content for Bar' }, ... ]"/>

Using the nested tab tag:
<app-tabs>
    <app-tabs.tab label="Tab 1">
        Content for Tab 1
    </app-tabs.tab>
    <app-tabs.tab label="Tab 2">
        Content for Tab 2
    </app-tabs.tab>
</app-tabs>

Also, there is no right answer on whether or an attribute is more appropriate then a nested tag for passing input to a custom tag. Key differences between attributes and nested tags is that attributes cannot be repeated and attributes cannot contain complex markup. Nested tags do not have those limitations. I believe we need to support both attributes and nested tags.

Completely agree with your comments @DanCech. Even if it is more typing, I think it is better to have some concept of explicit namespacing and I think it is better to avoid the colon character. I could go either way on <app-tabs.tab> vs <app-tabs-tab>, but I am leaning towards <app-tabs.tab> because the syntax makes it clear that it is a nested tag (i.e. not a top-level tag) and that will hint to the user where the nested tag is defined.
As for <attr>, yes that feature is officially supported. It is an oversight that the documentation does not mention <attr> tag. Pull requests welcome :)

I'm in favor of supporting the dot-notation for using nested tags in your HTML. A short-hand of only using something like <.tab> would be great too if we can tweak the HTML parser.
I have a new proposal for marko-tag.json that should reduce the characters via a short-hand notation.
I propose that we use "@" as a property prefix to identify attributes instead of having to nest them under a attributes property.
For example:
{
    "@orientation": "string",
    "@tabs <tab>[]": {
        "@label": "string",
        "@body": "string"
    }
}

The @tabs <tab>[] portion of the example above would be interpreted as:
"tabs can also be provided via one or more nested tab tags"
Thoughts?

Great suggestion @philidem! I really like the much flatter and more concise structure and I think it allows us to capture all of the same information. I do have a few minor concerns:

Symbols have meaning (slightly higher learning curve)
The fact that the tabs attribute is an expression type would be implicit instead of explicit

We can mitigate the first concern by first introducing developers to the long-hand form (that we would always need to support) and then provide the equivalent short-hand syntax.
:+1: for the following:
{
    "@orientation": "string",
    "@tabs <tab>[]": {
        "@label": "string",
        "@body": "string"
    }
}

I'm in favor of supporting the dot-notation for using nested tags in your HTML.
A short-hand of only using something like <.tab> would be great too if we can
tweak the HTML parser.

Because you are already planning to use @ symbol for attributes, maybe it makes sense to introduce @<nested-tag /> notation, instead of <.nested-tag /> and <@nested-tag />:
<app-tabs>
    @<tab label="Tab 1">
        Content for Tab 1
    </tab>
    @<tab label="Tab 2">
        Content for Tab 2
    </tab>
</app-tabs>

It seems that in this case we shouldn't worry about HTML parsers and all editors will work fine with this syntax.
As a side note, we also can continue to use $ symbol for this and do not introduce new symbol:
<app-tabs>
    $<tab label="Tab 1">
        Content for Tab 1
    </tab>
    $<tab label="Tab 2">
        Content for Tab 2
    </tab>
</app-tabs>

Mnemonic is the following: when $ is in front of open curly bracket ({), you are going to evaluate JavaScript expression. When $ is in front of open tag (<tag>), you are going to decoratively define  sub-property.

Just an update. Based on the feedback shared in this Github issue (and the related Github issue of #61) we have made changes to support the following:

Better support for tags with a parent/child relationship
Shorthand syntax for defining tags and attributes

The Pull Request is still being reviewed, but you can find the details in the CHANGELOG for the upcoming<EMAIL_ADDRESS>https://github.com/patrick-steele-idem/marko/blob/parent-child/CHANGELOG.md#240
Here's the Pull Request with the changes: #68
Feedback on this Pull Request is greatly appreciated. Thanks!

Support for parent/child relationships has been completed. Closing issue.


Mirrored menu in "Euro Truck Simulator 2" and "American Truck Simulator" -> not usable

I use OpenXR in conjunction with Virtual Desktop on my Meta Quest 3 to play "Euro Truck Simulator 2" and "American Truck Simulator". Fortunately, since the latest Virtual Desktop update this week, this prevents SteamVR from opening. However, the OpenXR menu ingame can only be seen in mirror image, so I cannot read it.
XR_APILAYER_MBUCCHIA_toolkit.log
XR_APILAYER_NOVENDOR_toolkit.log
Environment

Application/Game and version:  ETS2 (1.48.5) und ATS (1.48.5), Virtual Desktop (1.29.8)
Make and model of VR device:  Meta Quest 3

To Reproduce
Steps to reproduce the behavior:

Installed OpenXR Toolkit 1.3.2
Copied openvr_api.dll (64) from here to gamefolder
Start the game via Steam in Virtual Desktop
Game runs fine without SteamVR but i can not use the OpenXR menu ingame because it is displayed mirrored

Expected behavior
OpenXR menu ingame can only be seen in mirror image

These are OpenVR games.
We don't support OpenComposite.


feat: check for NOC and max skew

Description of your changes

Fixes #
I have:

[ ] Run make reviewable to ensure this PR is ready for review.

How has this code been tested

Special notes for your reviewer

Closing PR as we decided it's not necessary at this point


Removed material ui from progress bar component

Removed material
Updated test
Closes #1190

Fixed bug:
When progress bar doesn't have helper text, it is still having margin-bottom: 8px;.

Added a fix to remove this margin when no helper text defined.

Found bug with showValue and value props: #1215


can I use this with piwik pro cloud offering?

Hi all,
I would like to use this one with the piwik pro offering (their dart package has some issues and little to zero maintenance ...... )
Can i use it with piwik? in particular, how can I track the ecommerce stats? (see the field ec_products of https://developers.piwik.pro/en/latest/data_collection/api/http_api.html#/paths/~1ppms.php/get )
thanks for any help or hint
Luigi

Let me answer my own question: it seems to be working fine with
await MatomoTracker.instance.initialize(
      siteId: kSfPiwikSiteId,
      url: 'https://<yoursite>.piwik.pro/ppms.php',
    );

and using https://pub.dev/documentation/matomo_tracker/latest/matomo_tracker/MatomoTracker/trackOrder.html to track orders


Initial encoder layout support

Adds a new option to use encoder layouts on dials for Stream Deck Plus devices:

When enabled, entities will be displayed using one of two layouts:

Indicator Layout
This will be used to display the volume level on media_player entities, or the brightness on light entities that support brightness levels:

Value Layout
This will be used to display all entities that don't otherwise have support for another specialized layout. The value will be set to the entity's state value:

Hi and thank you very much for your great work! I try to review and test this as soon as I can.
I am currently working on a complete overhaul of the way the icons are generated. I hope I can integrate your changes there painlessly :)
https://github.com/cgiesche/streamdeck-homeassistant/tree/feature/254_Improve_display_image_rendering

Spoiler:

I merged your changes with mine and after some brainf***, is looks promising.


OutputCreator connects output filenames to inputs coming from one or multiple files/dirs

Hello! Here is a first take. See the tests to get an idea! Let's talk soon :)

Works well! Seems to cover the cases we will need covered.
Do you want to merge this first then do another PR to include it in workflows or do you want to do it all at once?

Merge this PR and don't wait for me go ahead with any quick fixes needed and what we discussed yesterday. I will continue with the rest with another PR. Then when we have some progress with the specific workflows we start making the PRs in DIPY. Hopefully starting next week. Sounds good?


fix(list-key-manager): don't handle home and end keys unless the user is interacting with the element

Refactors the ListKeyManager to only handle the home and end keys after the user has interacted. A list becomes interactive if the previous keypress, that occurred inside it, was handled by the key manager. This allows us to continue supporting skipping to the first/last items with home/end, while also not blocking the default behavior in cases like the autocomplete where it can be useful when editing text.
Reworks the Autocomplete, ListKeyManager and ChipList tests to use the createKeyboardEvent, instead of making their own fake keyboard events.
Adds a target parameter to the createKeyboardEvent function, allowing us to define the event target.

Fixes #3496.

I did a quick survey of Google Search, GMail, Drive, and this accessible autocomplete for US government web sites. For all of them, the home/end keys always apply to the text input no mater what state you're in. I think we should just follow this pattern, since it will be simpler and follow conventions.

Done @jelbourn. I removed it from the ListKeyManager and re-added it only to MdSelect since the native select does handle home and end.


Mac binaries

The zip of the mac binaries just include a file named "protection-v0.2" - did I miss any information, or is this a failure?
BR, Zappo

refer to this README: https://github.com/Shawn-Shan/fawkes/blob/master/fawkes/README.md

This did help, many thanks!


Crash addresses may be mistakenly attributed to RAII destructors

In bug 1837205, we noticed a large number of crashes in JS::Rooted<T>::~Rooted, the destructor for an RAII type we use to root garbage-collected objects on the stack. Digging into the crashes, I noticed that ~30% of the crashes had the same two functions in their proto signature (js::Lambda and CloneFunctionReuseScript). Looking at a dozen or so minidumps, though, there was no consistent pattern in the instructions at the crash site. This is weird, because ~Rooted is (in release builds) a simple one-line function:
  ~Rooted() {
    MOZ_ASSERT(*this->stack == this);
    *this->stack = this->prev;
  }

Looking at the crash reports, it looks like many of them (and in particular most/all of the Lambda/CloneFunctionReuseScript reports) have stacks that look like this:
0  None     @0x00000001cf43041c               context
1  xul.dll  JS::Rooted<JSObject*>::~Rooted()  inlined
1  xul.dll  js::Lambda(...)                   scan

It seems plausible that we are getting crash addresses, scanning backwards through the address space until we find a known function, and then attributing them to that function. This might explain why ~Rooted shows up so frequently: it is usually inlined as the very last thing in a function, so any crash address after that point looks like it is part of the destructor.
This may be a problem in the stackwalker?

Can we detect these cases / filter them out somehow? If we knew how big each function was, we could detect when stack scanning started outside the bounds of the function we're reporting.

Is that top frame JIT code? We've struggled with walking out of JIT frames since Spidermonkey grew a JIT. I'm not sure if anything has improved on that front.


An example for dialect interface: BudInlinerInterface

Overview:
An example for dialect interface.
Detail:

Inline interface is a kind of dialect interfaces, which may be used in transformations & analyses(mlir-opt --inline).

This PR intended to show how to create an inline interface(and what ever kinds of dialect interfaces), as well as how to use it(buddy-opt --inline).

Path: buddy-mlir/examples/BudDialect/TestInlineInterface.mlir.

Use "make bud-inline-interface-run" to try it out.

The makefile target have changed to bud-inline-interface-lower.
The conflict have solved.


[COM-26] [Feature Request] localstack support

Is this issue related to an issue?.
I don't like to see an AWS account, in which costs can arise, as a development environment if I can also map the whole thing locally.
Basically, I want to be able to work locally - isolated - independently of AWS.
Describe the outcome you'd like from us
In order to be able to map a completely local development environment - i.e. to be independent of an AWS account - the integration of localstack  at API endpoints would be very helpful.
Describe alternatives you've considered
I believe the alternative to localstack would be the AWS API itself.
Possibly a dry run based on a terraform plan without actually generating the resources.
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Additional context
No response
COM-26

Hey @Wolfsrudel, thanks for the request!
It looks like we have an initial implementation of this support added. See #2882 and let us know if you give it a try.


Type Inference Issue: fetch Response Data Typed as unknown When Using @cloudflare/workers-types with Orval Fetch Client

What are the steps to reproduce this issue?

Install the npm package @cloudflare/workers-types in your project.
Configure orval.config.ts with the following:

import { defineConfig } from "orval";

export default defineConfig({
  auth: {
    input: "./openapi.json",
    output: {
      mode: "single",
      target: "./output.ts",
      indexFiles: false,
      client: "fetch",
    },
  },
});

3.Run the orval command to generate the client.
What happens?
When the client is generated, the line const data = await res.json(); results in data being typed as unknown, causing type errors in TypeScript when trying to use the response data.

In @cloudflare/workers-types, the type definition of fetch is overridden, and when fetch does not take type parameters, data is treated as unknown, which causes this issue.
I have prepared a repository that reproduces the issue. You can find it here: Reproduction Repository.
What were you expecting to happen?
The expected result is that data should have a defined type, like const data: RootGetIndexResponse = await res.json();, which would resolve this issue.
What versions are you using?

Node.js: 22.11.0
DevDependencies:

@cloudflare/workers-types: ^4.20241205.0
orval: ^7.3.0
typescript: ^5.7.2

Thanks you for made this report.
Certainly, it would be preferable to use a type declaration instead of as 👍
- const data = await res.json();
- data as Pet;

+ const data: Pets = await res.json();
+ return data;


AppCache fix for slow updates

related to #241 and #210
This patch simply prevents unregistering of the Application Cache event handlers after 5 seconds - only the timer is still being stopped after 5 seconds (the timer is used as a workaround should events not work).
This fixes offline-plugin for iPhone/iPad/Safari (tested) and IE/Edge (probably) when 5 seconds are not enough to check for updates and download assets.
IMHO this shouldn't break anything as the timer-workaround will behave like before. The 5-seconds problem will continue to exist for situations where the timer is really needed (when events don't work due to browser bugs).
I don't know which browsers really need the timer hack, but events seem to work fine on iOS/Webkit and also IE10 & Edge, where this patch makes a huge difference, because application get the chance to update immediately.

This is most likely good to merge, I just don't have time right now to make a new release, but I'll do eventually. Thanks for the PR!

@NekR great! I hope you find some time very soon, as this is causing some trouble right now...

@jampy I'll release it this week. Also if Apple isn't going to ship ServiceWorker this year then I probably should improve AppCache events and make them all work correctly.

@NekR It's unlikely that we'll see SW on Safari soon, unfortunately. :-(
Also note that Service Workers are still unsupported on IE/Edge, too.

Edge is shipping this year. Apple actively participates in SW specification, you have to look between lines ;-)
IE.. well, I don't care very much.

If anyone is interested, I've published a patched version of this module (based on v4.8.1 plus the changes discussed here) - simply because this discussion is taking too long for our real-world problem:
https://www.npmjs.com/package/offline-plugin-patched
It will hopefully become obsolete soon once this PR is accepted or another solution is available.


Increase rocksdb parallelism to recommended value

By default, RocksDB uses only one background thread for flush and compaction. Calling this function will set it up such that total of total_threads is used. Good value for total_threads is the number of cores according to rocksdb recommendation

We do run many rocksdb instances in a machine. And there are other work that are parallelized, e.g. executing Sui transactions. How about changing this to 2~4 or num_cpu() / 8 (I believer there were 5~6 rocksdb in sui).


In Fedora 21 io-usb fails to find libusb

I am trying to run the list_devices_example.nim in Fedora 21 64bit, and after compiling successfully with nimble, when I try to run I get:
could not load: libusb.so

This is what I get from "dnf provides libusb":
Using metadata from Fri Mar 20 07:43:51 2015
libusb-1:0.1.5-5.fc21.x86_64 : A library which allows userspace access to USB devices
Repo        : @System

libusb-1:0.1.5-5.fc21.i686 : A library which allows userspace access to USB devices
Repo        : @System

libusb-1:0.1.5-5.fc21.i686 : A library which allows userspace access to USB devices
Repo        : fedora

libusb-1:0.1.5-5.fc21.x86_64 : A library which allows userspace access to USB devices
Repo        : fedora

And then "dnf install libusb" gives this:
Using metadata from Fri Mar 20 07:43:51 2015
Package libusb-1:0.1.5-5.fc21.x86_64 is already installed, skipping.
Package libusb-1:0.1.5-5.fc21.i686 is already installed, skipping.
Package libusb-1:0.1.5-5.fc21.x86_64 is already installed, skipping.
Package libusb-1:0.1.5-5.fc21.i686 is already installed, skipping.
Package libusb-1:0.1.5-5.fc21.x86_64 is already installed, skipping.
Package libusb-1:0.1.5-5.fc21.i686 is already installed, skipping.
Package libusb-1:0.1.5-5.fc21.x86_64 is already installed, skipping.
Package libusb-1:0.1.5-5.fc21.i686 is already installed, skipping.
Dependencies resolved.
Nothing to do.

Sorry for the delay - I was super slammed. I have tested io-usb with libusb 1.0.19 on ArchLinux. I can't help with Fedora right now, but will try Ubuntu as well. Could you try acquiring a newer version of the library?

I solved it by changing
when defined(linux):   const dllname = "libusb.so"
to
when defined(linux): const dllname = "libusb-1.0.so.0"
Now this is a bit of a "hack" to make it work, I don't know how to solve it properly.

Oh, I see. It looks like you're missing a symlink then. On Arch I have a symbolic link from /usr/lib/libusb.so to /installation/directory/libusb-x.x.so.x  (whatever the currently installed version is).
If Fedora doesn't create this link for you, then you have to create it yourself. It is also possible that you already have the link somewhere, but it may not be in a location that is in the search path.

Annoying thing is that there are already 2 links in there:
lrwxrwxrwx   1 root root       19 Aug 17  2014 libusb-0.1.so.4 -> libusb-0.1.so.4.4.4
-rwxr-xr-x   1 root root    26512 Aug 17  2014 libusb-0.1.so.4.4.4
lrwxrwxrwx   1 root root       19 Aug 17  2014 libusb-1.0.so.0 -> libusb-1.0.so.0.1.0
-rwxr-xr-x   1 root root   102088 Aug 17  2014 libusb-1.0.so.0.1.0

I'll investigate a little more and I will open a issue with redhat if needed.
Thanks.

Yes, this is normal. I have several links as well. It's a whole chain that includes more and more parts of the version number. Just add one for libusb.so that points to libusb-1.0.so.0

Haven't heard from you in a while, so I assume you figured it out. Please reopen this issue if the problem persists. Thanks!

Sorry I was in vacation.
Well it works if I do all the OS hacks, but if I distribute the software to someone else it will not work.


Fix post mortem location after exception inside load

After https://github.com/ruby/ruby/commit/1998039ea4f867583d7e37ce200a88490707c330, our post mortem debugging partially broke, because ruby started emitting two :raise events when an exception would happen during a load call. In this situation, the second :raise event would overwrite the first one, and the context location would be incorrect, leaving the user in an unexpected location.
We fix the issue by watching for the case where we have already saved the context to the raised exception, and avoiding the overwrite.
Fixes #165.

Build against ruby-head seems broken, but it seems unrelated to this PR. I'll investigate it.

ruby-head build was fixed in #563.

Posted a ticket and potential fix to ruby-core: https://bugs.ruby-lang.org/issues/15885

Even if this is fixed in core, we'll want to workaround this until the fix is included in all supported rubies, so merging.


Support rebalancing Deployments across Clusters

Instead of only creating leaf Deployments, also update and delete
existing leafs. This means that as Clusters are added and become Ready,
Deployments' replicas will be rebalanced across ready clusters, and as
they get deleted or become un-Ready, they'll rebalance across ready
clusters.
This is incomplete: cluster creations/deletions/changes won't trigger
root deployment reconciliations as of this change.
This also adds unit tests and configures CI to run tests.
(Also fix some lint errors and style nits)
edit: This PR has also grown to include DaemonSet and Pod scheduling, not hooked up to any controller, to demonstrate how they'd work in unit tests. These are examples of different scheduling strategies we'd like to generalize and apply to other arbitrary types.

@imjasonh is this something we want to carry forward and eventually merge?

@imjasonh is this something we want to carry forward and eventually merge?

Nope, I think we can drop this. The namespace scheduler will take over as the way to move deployments (and anything) around, and eventually deployment-splitter can just be deleted.


docs(snap): Remove outdated build instructions

Remove outdated build instructions
Improve installation and interface connection instructions
Update links

Signed-off-by: Farshid Tavakolizadeh<EMAIL_ADDRESS>

If your build fails  due to your commit message not passing the build checks, please review the guidelines here: https://github.com/edgexfoundry/edgex-go/blob/main/.github/Contributing.md
PR Checklist
Please check if your PR fulfills the following requirements:

[x] I am not introducing a breaking change (if you are, flag in conventional commit message with BREAKING CHANGE: describing the break)
[x] I am not introducing a new dependency (add notes below if you are)
[ ] I have added unit tests for the new feature or bug fix (if not, why?)
[ ] I have fully tested (add details below) this the new feature or bug fix (if not, why?)
[ ] I have opened a PR for the related docs change (if not, why?)

Testing Instructions

New Dependency Instructions (If applicable)

recheck


Failed to execute 'open' on 'CacheStorage': Unexpected internal error - while turning on the node preview

Discord username
No response
What type of issue is this?
Intermittent – Occurring irregularly
Is this issue blocking you from using Enso?

[ ] Yes, I can't use Enso because of this issue.

Is this a regression?

[ ] Yes, previous version of Enso did not have this issue.

What issue are you facing?
I have accidently broken connection between two nodes then undo this missclick and when I have pressed space on the node to view the node preview this error occurred.
https://github.com/enso-org/enso/assets/108271897/caedd6e8-8b17-4424-9350-361e6eca3049
I was working on a project in the cloud.
Expected behaviour
No errors on node preview action
How we can reproduce it?
No response
Screenshots or screencasts
No response
Enso Version
2023.5.17 nightly
Browser or standalone distribution
Standalone distribution
Browser Version or standalone distribution
standalone
Operating System
Windows
Operating System Version
Win11pro 22H2 22621.1555
Hardware you are using
12th Gen Intel(R) Core(TM) i9-12900HK / RTX3060 Laptop / Nvidia Drivers 531.68

I have seen this error message previously once and was very puzzled by it, but I wasn't able to reproduce it since. At least it didn't seem to have any negative effect on the application itself.
I don't think that we are using CacheStorage anywhare in the IDE by ourselves, so it looks like an error from within some dependency. The devtools application tab shows one cache storage is used by mapbox:

The error is also a little wierd, as it is an undocumented exception from within the browser implementation. The reason it is thrown is also not exactly clear to me, but looks like a mismatch between number of received bytes vs actual data size somewhere deep within the storage implementation: https://source.chromium.org/chromium/chromium/src/+/main:content/browser/cache_storage/cache_storage_cache.cc;l=1691-1696?q=kErrorStorage&ss=chromium%2Fchromium%2Fsrc
I even found a comment expressing confusion about it within the chromium source tree (in this case it's in perfetto - one of the devtools):
https://source.chromium.org/chromiumos/chromiumos/codesearch/+/main:src/aosp/external/perfetto/ui/src/common/errors.ts;l=53-63
// Occasionally operations using the cache API throw:
// 'UnknownError: Unexpected internal error. {}'
// It's not clear under which circumstances this can occur. A dive of
// the Chromium code didn't shed much light

A stackoverflow answer related to this exact error message suggests that it might be caused by a serviceworker being terminated too quicky, before the cache had a chance to finish opening: https://stackoverflow.com/a/64359684
I suspect that in some scenarios we might be incorrectly activating mapbox visualization for a very brief moment when the node preview is opened, or something like that. I don't think though that this error has any effect on the application as a whole, nor it is in any way actionable by us.
I'm going to consider it as wontfix. If any actual detremental effect of this error is found, we will then need to investigate it further.


Toggle Menu Bar on macOS does not work

VSCode Version: 1.29.1 (1.29.1)
OS Version: macOS 10.14.1 (18B75)

Steps to Reproduce:

Open VSCode
Click on View
Hover over Apperance
Click on Toggle Menu Bar

Error pops up.
Does this issue occur when all extensions are disabled?: Yes

This is a duplicate of a separate issue that is resolved in insiders.  Will be fixed in next release.


formating html bug in  tag

VSCode Version: Code 1.18.1 (929bacba01ef658b873545e26034d1a8067445e9, 2017-11-16T18:32:36.023Z)
OS Version: Windows_NT x64 10.0.16299
Extensions:

Extension
Author (truncated)
Version

python
ms-
0.8.0

cpptools
ms-
0.14.3

vetur
oct
0.11.3

Steps to Reproduce:

Add a <script> tag with both "src" attr and a few space as inner text, like
<script src="test.js">        </script>. Make sure they are all in one line.
Format the html.
Then you would see that the <script src="test.js"> is gone. Only </script> left.

Reproduces without extensions: Yes.
By the way, I made a gif to show this bug.

duplicate of #36574, fixed in 1.19


Make use of package extras in setup.py

🚀 Feature

Right now, to install testing dependencies, you must follow the steps in Contributing.md:
python -m pip install -r requirements/devel.txt
python -m pip install -r requirements/examples.txt
python -m pip install pre-commit

If we make use of the extras_require kwarg of setup() in setup.py, we can install these extras like this:
pip install -e ".[testing]"
# or
pip install -e ".[dev]"

Motivation

I would rather run one command to setup my dev/testing environment than having to run multiple.
Pitch

All we have to do is construct a dictionary in setup.py that collects arguments for different 'extra' options.
extras = dict()
extras['dev'] = ['numpy>=1.16.4', 'torch>=1.3', 'tensorboard>=1.14', ...]
extras['test'] = extras['dev'] + ['codecov>=2.1', 'pytest>=3.0.5', ...]
...

setup(
    ...
    extras_require=extras,
)

Alternatives

We could get rid of requirements/ folder entirely and let setup.py explicitly define the extra requirements
We could probably populate the extras dict from the requirements/ folder's files if we wanted to, but I think this makes things a touch more confusing (and I'm not sure if you'd have to include the requirements folder when you build the artifact to avoid setup.py from breaking on missing files).

Additional context

I can submit PR for this if we're interested in doing it. 😄

we shall use the requirements listed in folder requirements as we do with the base requirements anyway
the question is if we want to have extras as default option? @PyTorchLightning/core-contributors

@Borda I have done something like this before and I really think we should not use it as a default, but instead document what is installed when and really make sure to keep those up to date.

no defaults... this is not a common thing people know/do (i have never used it actually).
We are not re-inventing how installs are done today with PL. We need to keep it simple as it is right now.
If users want a package they can install it separately

Borda I have done something like this before and I really think we should not use it as a default, but instead document what is installed when and really make sure to keep those up to date.

just check the docs and it is very simple, just add this one dict, which would be loaded from our existing requirements

is it for development only or for all users?

This would be available for all users then


Status error 301

C:\Users\17041758\SafariBooks-Downloader>safaribooks-downloader -b<PHONE_NUMBER>427 -u nicohaenggi -p MySuperSecurePassword -o /Users/nicohanggi/Desktop/testbook.epub
[safari-downloader] starting application...
[safari-downloader] StatusCodeError: 301 - undefined
This is the error I am getting. Does anyone know how to fix this? Thanks

In index,js
Change
this.baseUrl = "https://www.safaribooksonline.com";
to
this.baseUrl = "https://learning.oreilly.com";

In lib/safari/index.js change
this.baseUrl = "https://www.safaribooksonline.com";
to
this.baseUrl = "https://learning.oreilly.com";

This solves the error. @nicohaenggi you may want to consider closing this issue.
Thanks for the work!! 💯


strawberry-fastapi integration:  context['response'].background = BackgroundTask(calback) not invoked

#### gq types ####

@strawberry.type(description="mutations")
class Mutation:
    task_create = strawberry.mutation(
        resolver=task.create, description="New Task"
    )

#### deco  4 resolver  fns ####

async def user_action_audit(response):
     ...some stuff ...

def with_audit(gql_resolver: Callable[[Any], Awaitable[Any]]):
    @wraps(gql_resolver)
    async def wrapper(*args, **kwargs):
        response = await gql_resolver(*args, **kwargs)

        # https://strawberry.rocks/docs/integrations/asgi#setting-response-headers
        kwargs["info"].context["response"].set_cookie(key="kuka", value='puka')    - this WORK

        # https://strawberry.rocks/docs/integrations/asgi#setting-background-tasks  - NOT WORK(bg task NOT invoked)
        kwargs["info"].context["response"].background = BackgroundTask(user_action_audit, response)

        # was discovered myself   - WORK(bg task invoked)
        kwargs['info'].context['background_tasks'].tasks.append(BackgroundTask(user_action_audit, response))

        return response
    return wrapper

#### resolver fn ####

@with_audit
async def create(
    info: Info,
    user_id: Annotated[
        UUID, strawberry.argument(description="user id")
    ],
) -> Task:
    data = crud.task.create_for_user(info.context["db"], user_id=user_id)
    return cast(Task, data)

the problem is that no background task is called in the described here way(see comments in code)
Ubuntu 20.04
python = "~3.8"
strawberry-graphql = {extras = ["fastapi"], version = "^0.108.0"}
fastapi = "^0.75.2"

I think this is a case of out-of-date documentation as your workaround appears to be the intended functionality.
Looking at this and this, it seems impossible to achieve the functionality as described in the documentation since info.context["response"] has no attribute background. Instead, info.context has background_tasks as a field (if a dictionary) or an attribute (if inheriting from BaseContext).
I will amend the documentation to better describe this situation and so hopefully resolve this issue :D

it seems like it has, but not work(not handle), but in other case(for ex FileResponse) it works

i check - this(2) will work, but (1) in case of context['response'].background - will not

Ahh okay, interesting. I see what you're driving at! You may be mixing up the different Strawberry integrations.
You initially linked here, which actually applies to the Strawberry-ASGI integration and not the Strawberry-FastAPI integration. If you go here then you will see the correct FastAPI functionality that allows for adding background tasks to the context object, which is the functionality you desire.
Since these are different integrations, it's important that you use the correct functionality for the integration that you choose. You chose FastAPI, so you should follow these docs.

u right!
i was only google by "Setting background tasks"  )))
Thx for your time!

Great! :D If you feel that this is resolved could you please close the issue, thanks!


Noise gibberish window when I plot bars

Question
I am plotting 3k bars. When the mouse is outside the window the candles are shown as expected. But as soon as I move the cursor in the window, the candles turn to noise and gibberish.

Code example
No response

The issue gets resolved when I double click on the title bar. When I click on the title bar (the top of the window), it becomes maximized and the candles get drawn properly.


fixing cache file path, mistyped method name

I found out that the pictures were being saved in a strange path, so I fixed them.

Merged.


What is the correct Redirect URI to pass to Discord's configs

Noob here, just wanting to host the bot in my spare raspberry pi 3, everything is fine execpt i can't invite my bot due to MISSING RETURN URI, but in Setup section of the wiki nothing is said about this.
What is the correct URI to pass, given i dont have any webserver installed on my pi?

There is no redirect URI. If you followed the instructions exactly, there should be no issues.

Well, perharps i messed up checking "Require OAuth2 Code grant" on bot settings of discord.
But just for information, what is the required permissions i need to check on the add link generator for the bot join correctly?

You can give it whatever permission you want/all of them if you want - it's your hosted bot on your own server

I mean, i only need to give the bot read/write messages? Idk if the bot does other moderation functions on background.
Anyway, the issue is fixed, i was able to make the bot join the server, just need to know why it wont boot via pm2 (let's leave this for another issue).


Getting filesize(): stat failed isse while upoading video on youtube

Hi, I've followed your entire guide to setup this package but when i try to upload video, following error came up.
filesize(): stat failed for http://localhost/youtubelaravel/public/test.mp4

Following is my code:
use Dawson\Youtube\Facades\Youtube as Youtube;

  public function index() {
    $fullPathToVideo = asset('') . 'test.mp4';
    $video = Youtube::upload($fullPathToVideo, [
                'title' => 'My Awesome Video',
                'description' => 'You can also specify your video description here.',
                'tags' => ['foo', 'bar', 'baz'],
                'category_id' => 10
    ]);
    echo 'here<pre>';
    print_r($video->getVideoId());
    exit;
}

Also I didn't found how can I disable route for authentication as you mentioned:

You will also want to disable the routes used for authorization as they will no longer be required since you are now autheticated.

Hi @malik-umair,
It looks like the path you're passing is not the correct path to the video.
http://localhost/youtubelaravel/public/test.mp4

You could try using the public_path() helper.
public_path('test.mp4')


Laravel v8 Support

Hi,
when installing this package I run into this problem:

Package is incompatible with laravel v8, with package guzzlehttp/guzzle
Any suggestions how to solve this?

@ben182!

Is this package still alive or is there an alternative for Laravel 8? Very keen on having this functionality in my project.

Found a better package with Web Interface which works with Laravel 8+ and has auto translations: https://packagist.org/packages/barryvdh/laravel-translation-manager

Found a better package with Web Interface which works with Laravel 8+ and has auto translations: https://packagist.org/packages/barryvdh/laravel-translation-manager

but this package required google api key where in this it was not

Hi guys, sorry for not responding. The problem with updating this package (not compatible with Laravel 6, 7 and 8) is that it heavily depends on https://github.com/themsaid/laravel-langman, which is not being updated since 2017. Problematically, I have chosen it as a base for the heavy lifting of manipulating the language files. But because it is not being maintained anymore, we are basically blocked. Again, this all is not new and already came up in 2017 (https://github.com/ben182/laravel-auto-translate/issues/30). The only solution to this issue is getting rid of laravel-langman and replacing the corresponding service calls with own implementations. An even quicker solution is to just copy the Manager class from themsaid and replace the bindings. The funny thing is that this package is actually compatible with Laravel 8 it just not being maintained. I will look into this and keep you updated.

@ben182  is there any updates  ??


Update helm charts with deployment support

for #40 and #87.

Codecov Report
Patch and project coverage have no change.

Comparison is base (bed9ba5) 49.36% compared to head (539b2d1) 49.36%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main      #90   +/-   ##
=======================================
  Coverage   49.36%   49.36%
=======================================
  Files          15       15
  Lines        1493     1493
=======================================
  Hits          737      737
  Misses        657      657
  Partials       99       99

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

Can you add a ServiceMonitor to the chart

LGTM!
Waiting for https://github.com/yonahd/kor/pull/87 before merging


feat: Onboard NIH GUDID Historic data dataset

Description
Dataset: nih_gudid pipeline: nih_gudid
Checklist

[x] (Required) This pull request is appropriately labeled
[x]  Please merge this pull request after it's approved

Data Onboarding

[x] I'm adding a dataset
[x] The Google Cloud Datasets team is aware of the proposed dataset
[x] I put all my code inside datasets/nih_gudid and nothing outside of that directory

@nlarge-google @adlersantos Kindly review this PR


C# GlobalClass icons (using IconAttribute) no longer allow relative paths

Tested versions
Reproducable starting: 4.3 (mono) dev [5815d1c] (this is the exact commit that introduced the bug)
System information
All systems
Issue description
A custom node/resource icon, in C#, used to accept relative paths (to the script file), but now all icon paths are treated as absolute (from res://). Relative paths still work in GDScript.
Notes: The code for resolving relative paths used to be in modules/mono/csharp_script.cpp, in the CSharpLanguage::get_global_class_name method, but has been deleted without replacement.
Steps to reproduce
Create a GlobalClass Node or Resource with an Icon attribute with a relative path. Move this script to a sub-directory of res://, and place the icon file relative to the script (according to the path). This will fail to resolve the icon, and try to find it starting from res://, rather than the script file path.
Minimal reproduction project (MRP)
With the following script in a file res://scripts/MyNode.cs:
using Godot;

[GlobalClass]
[Icon("./MyNode.svg")]
public partial class MyNode : Node { /* code */ }

The icon path now resolves to res://MyNode.svg, whereas it used to resolve to res://scripts/MyNode.svg.

Upvote!

@sirjoehighton Please don't bump issues without contributing significant new information. Use the :+1: reaction button on the first post instead.


How to upload an extension to the web store?

I see that in the README it's written about the public option, but I couldn't found any other reference in the readme nor the code for such thing.
Does it exist?
If so, how it's being used?
Thanks

@arieljannai This tool can create zip files that can be used to upload to the Chrome web store, but it itself does not upload to the chrome web store, it just creates the zip file for you. See https://github.com/c301/grunt-webstore-upload for something that is capable of submitting packages to the web store.

Somehow I understood it can also upload to the webstore :sweat_smile:
Eventually I forked c301's project so I could use it as a node module.
Here's my project: webstore-upload :grin:


How to make a rule to check the yaml content conforms to a type

Hi, I'd like to validate Yaml documents and your plugin looks amazing.  I took the Playground example and started working with it.
I'd like to take a document like this and validate it against a schema - preferably a typescript type:
apiVersion: v1
kind: Service
metadata:
  name: auth-service
  labels:
    app: auth
spec:
  ports:
    - port: 80
      targetPort: 3001
  selector:
    app: auth

Do you have any suggestions on how to make a set of rules like this?  Thank you!

Hi! @MichaelJCole
You can use JSON Schema to validate using eslint-plugin-json-schema-validator. You can see it in the DEMO.
I don't know how to validate using typescript.

Awesome, this is a great suggestion.  There are Typescript->JsonSchema converters.  Thank you!


Latex support Tinymce

Latex code integration is a subject that's already discussed a few times, I think i found a nice way to integrate this although I am not very familiar with the code structure of this project. If I'm right the tinymce editor is used in the project.
This link links to a project which integrates equations and formulas. I tried to connect it with my version but I can't find it to work.
Would it be possible to integrate this? I think it would be a handy feature instead of using the drawio method.

Thanks for the recommendation @brechtgijsens. It appears the official repository for the linked code can be found here.
Ultimately, while we could quickly add a plugin to tinyMCE, the hard part is considering all other areas of the application. How the syntax is rendered elsewhere, how it's used in the MarkDown editor, how usable the stored format is used if people want to migrate away from BookStack etc...
Additionally, we may be looking to move away from TinyMCE depending on a future evaluation of available editors.
My review of fully implementing such a feature can be found here: https://github.com/BookStackApp/BookStack/issues/495#issuecomment-628919106
I'm going to close off this issue since there are already various other issues open for latex or similar support.


refactor: streamline filename creation and context preparation for assets in SourceMapDevToolPlugin

Summary

Maximize performance by parallelizing tasks wherever possible.
Test Plan

Require Documentation?

[x] No
[ ] Yes, the corresponding rspack-website PR is __

!bench

!bench

!bench

Would you please make the title more specific?

@h-a-n-a I've updated the title to be more specific.


Support parallel execution of integration tests

Hi,
we have added a new task fly:integration_parallel that supports parallel execution of fly exec tasks similar to what happens in the concourse pipeline. It runs all one-offs on the fly-integration worker. Console output is interlaced, but to have a look what is actually happening one can look on concourse. Using this task execution time is reduced to ca. 30 min.
Signed-off-by: Mauro Morales<EMAIL_ADDRESS>

Great idea! But... I don't think it's working as expected. We tried this out locally and it seems like all three builds are running the last group of tests. Does this happen in your environment, or do you have suggestions on what other changes might be required?
build1: bundle exec parallel_test 'spec/integration' -n 24 --only-group 3,6,9,12,15,18,21,24 --group-by filesize --type rspec -o '--format documentation'
build2: bundle exec parallel_test 'spec/integration' -n 24 --only-group 3,6,9,12,15,18,21,24 --group-by filesize --type rspec -o '--format documentation'
build3: bundle exec parallel_test 'spec/integration' -n 24 --only-group 3,6,9,12,15,18,21,24 --group-by filesize --type rspec -o '--format documentation'

Good catch! We have made the env vars an explicit argument. The unit task was missing the DB env var, we fixed that, too.


Correction in update_case usage

Request Type
Bug
Work Environment

Question
Answer

OS version (server)
Debian, Ubuntu, CentOS, RedHat, ...

OS version (client)
XP, Seven, 10, Ubuntu, ...

TheHive4py version / git hash
1.4.2

Problem Description
Describe the problem/bug as clearly as possible.
The current update_case method take an object which contains case id and other fields that need to be updated.
The line shows that you create a case object which unnecessarily update the defaults of the case.
Steps to Reproduce
try to use the update method to update only a particular field of the case.
Possible Solutions
either change the update_case method parameter to accept case_id and attributes of case to update as **kwargs or create a pojo for the update_case.

The solution we will implement to make sure the changes will not break the existing tools that use this library, we will add an optional parameter to the update_case method, to list the fields we want to update, example:
api.update_case(case, ['status', 'resolutionStatus', 'impactStatus', 'tags', 'summary'])


refactor: transform test/integration/server-rendering => ts

transform test/integration/server-rendering => ts
ref: #1737

Thanks!


Application code review pipeline fails on dockerbuild-verify due to absence of a build step/task

Describe the bug
Some Code Review pipelines do not contain a separate Build step, for example:

gerrit-maven-java11-app-review
gerrit-maven-java8-app-review
gerrit-npm-react-app-review

Which causes a failure on the dockerbuild-verify step due to the absence of the artifacts to be copied or added with a corresponding instruction in Dockerfile.
Steps To Reproduce
What did you do?

Create a sample JavaScript / NPM project in EDP Headlamp with the Create strategy.
Clone the Gerrit repository of the new project and change directory into the cloned folder.
In the package.json file within scripts section set build:clean command to a more appropriate:
npm install && npm cache clean --force && npm ci.
Save the file, stage, commit, and start a code review for the change.

What did you expect to see?
A successfully executed Code Review pipeline.
What did you see instead? Under which circumstances?
Failure on the dockerbuild-verify step.
Versions
EDP: v3.2.1
Git Provider: Gerrit
Kubernetes: AWS EKS v1.24.11
Screenshots

Additional context

Hi @n-g-work!
Thanks for the detailed description of the case, we plan to fix this issue soon.

Hi @n-g-work!
We have revised the approach and made changes to our review pipelines.
In the NPM framework, the logic has been changed and a build step has been added after the initialization step. A build step has been added to maven pipelines.
All changes can be seen in the commit [EPMDEDP-11927]


Bring Python current in Travis

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

I'll need to take a closer look at this. The Spark tests are failing due to the Java version I think.

@jborchma might need to move up to Pyspark 3.x for Python 3.8+


Fingerzeig is outdated

rework, provide multiple solution paths, ...

postpone, I really don't want to touch this challenge right now, I don't now why, there is so much in motion here ...


Request you to integrate this with Streamlit. It will be great help if we have frontend of this amazing application

Request you to integrate this with Streamlit. It will be great help if we have frontend of this amazing application


Integrate latest truffle version in monorepo

Upgrade the truffle version used in monorepo, particularly in the protocol package where we expect the most work, and make the current tests run in the new environment.
Ask @bowd for support if needed.

Dupe #9969


New problem for 14.4

May I ask if there is no sound when making phone calls with Airpods Pro 2, how to solve this situation;)

I'm not sure with that, how was it without the tweak?

This same exact issue has been happening for me on iOS 14.2 since the day I got my AirPods Pro 2. It happens even when not jailbroken.

It seems that this problem has always existed, even without the tweak

I never tried without the tweak but seemed to work fine on call with tweak on 14.8
(fortunately I found podsgrant right after I got my new AirPods)

Can confirm that this is still an issue on 14.2 with the tweak installed


Mention IPFS_PATH

Related to #230.

IPFS_PATH isn't actually necessary unless your repo is in a non-standard location (in which case you will have already set IPFS_PATH somewhere).

"may be necessary" is too dubious?

To vague, IMO. We could say something like:

If your IPFS repo is in a non-standard location, remember to set $IPFS_PATH. Alternatively, you can explicitly set $IPFS_API to $IPFS_API_IPADDR:$PORT.

Yeah it's much better.


How to get the id of a record that is created?

Introduction
After I've created a new record, i need to get id which is generated by the database.
According to the documentation the model should be updated automatically with the attributes that are presented in the database:

After a model is saved it will be populated with all the attributes that are present in the database, so you don't need to manually call refresh to update it. This will use two queries unless the database supports the RETURNING statement, in which case the model will be saved and its data fetched with a single query.

Even if the code seems to be okay, it still does not update the model. During debugging I can see that only one sql command is fired to the database: insert into user (email, first_name, last_name, password, role_id, user_salutation_id, username) values (?, ?, ?, ?, ?, ?, ?)
 User.forge({
      email<EMAIL_ADDRESS>      firstName: 'test',
      lastName: 'test',
      password: 'test',
      username: 'test',
      userSalutationId: 1,
      roleId: 1,
    })
      .save()
      .then(function (user) {
        res.json({ error: false, data: { id: user.get('id') } });
      })
      .catch(function (err) {
        res.status(500).json({ error: true, data: { message: err.message } });
      });

The response:
{
_events:Object {creating: }
_eventsCount:1
_knex:null
_previousAttributes:Object {}
attributes:Object {email<EMAIL_ADDRESS>firstName: "test", lastName: "test", …}
<EMAIL_ADDRESS>firstName:"test"
lastName:"test"
password:"$argon2i$v=19$m=4096,t=3,p=1$lKx0hWEPHFBYBlqV/++iGQ$QqIjH8a40pde95E/ikddP4aQnbLM32KOrz6R3ftS1qo"
roleId:1
username:"test"
userSalutationId:1
changed:Object {}
cid:"c1"
id: undefined
}
```

What's your database schema and User model definition?

@ricardograca
The User model
bookshelf.model('User', {
  tableName: 'user',
  hidden: ['password'],
  role() {
    return this.belongsTo('Role', 'roleId');
  },
  salutation() {
    return this.belongsTo('UserSalutation', 'userSalutationId');
  }
});

and the schema which is generated by knex:
 knex.schema.createTable(tableName, (table) => {
      table.increments();
  table.timestamp('created_at').notNullable().defaultTo(knex.fn.now());
  table
    .timestamp('updated_at')
    .defaultTo(knex.raw('NULL ON UPDATE CURRENT_TIMESTAMP'));
  table.timestamp('deleted_at');

      table.string('username', 50).notNullable();
      table.string('first_name', 50).notNullable();
      table.string('last_name', 50).notNullable();
      table.string('email', 100).notNullable();
      table.string('password').notNullable();
      table.boolean('active').default(true).notNullable();
      table.integer('user_salutation_id').unsigned().notNullable();
      table.integer('role_id').unsigned().notNullable();
    }),

Problem was caused by the plugin knex-case-converter-plugin (https://github.com/mkhanal/knex-case-converter-plugin). I'm using now the official plugin.


ImageTransform : Scaling by negative values doesn't flip/flop the image

I was trying to flop an image, and was using a scale.x of -1 in an ImageTransform node (with the pivot set to width/2), and discovered that this did absolutely nothing to the image. It appears that scale values are effectively being used as fabs( scale ).
I'm guessing that this is because of the Resample node that's being used first. I'm thinking that it could maybe do with having mirrorX and mirrorY plugs for this.
This script shows the issue:
import Gaffer
import GafferImage
import IECore

__children = {}

__children["ImageReader"] = GafferImage.ImageReader( "ImageReader" )
parent.addChild( __children["ImageReader"] )
__children["ImageReader"]["fileName"].setValue( '/Users/hughmacdonald/development/gaffer/python/GafferImageTest/images/rgb.100x100.exr' )
__children["ImageReader"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = IECore.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["ImageReader"]["__uiPosition"].setValue( IECore.V2f( 2.70000172, 4.14999962 ) )
__children["ImageTransform"] = GafferImage.ImageTransform( "ImageTransform" )
parent.addChild( __children["ImageTransform"] )
__children["ImageTransform"]["transform"]["scale"].setValue( IECore.V2f( -1, 1 ) )
__children["ImageTransform"]["transform"]["pivot"].setValue( IECore.V2f( 50, 50 ) )
__children["ImageTransform"].addChild( Gaffer.V2fPlug( "__uiPosition", defaultValue = IECore.V2f( 0, 0 ), flags = Gaffer.Plug.Flags.Default | Gaffer.Plug.Flags.Dynamic, ) )
__children["ImageTransform"]["__uiPosition"].setValue( IECore.V2f( 2.70084739, -5.01406288 ) )
__children["ImageTransform"]["in"].setInput( __children["ImageReader"]["out"] )

del __children

Thanks for catching that Hugh - that's a rather large oversight on my part. I don't think extra mirror plugs are the right approach to fixing it though - the real problem is that Resample uses a box to define the target image region, as discussed briefly here :
https://github.com/ImageEngine/gaffer/blob/master/src/GafferImage/Resample.cpp#L453
The proper fix is to just have Resample use a translate/scale pair to control its operation. An alternative short term fix would be to adjust for the unwanted Resample behaviour in the Transform node.

How about an additional node, which would be useful both as a stand-alone node and for internal use here. The Mirror node would just have options for horizontal and vertical mirroring. It could also have an option either for a point to mirror around (whole integer pixel value only) or a choice of mirroring inside the data window or display window.

Sure, that'd be handy. But we should address the underlying issue with Resample separately - Mirror isn't needed for this ticket.

The Mirror node would just have options for horizontal and vertical mirroring. It could also have an option either for a point to mirror around (whole integer pixel value only) or a choice of mirroring inside the data window or display window.

@HughMacdonald, I'm actually implementing this here Mirror node right now (as well as fixing the bug in this ticket), but I'm struggling to make sense of custom pivots. As you say, the pivot shouldn't be floating point, because one of the features of the Mirror is that it's a non-filtered operation, and ImageTransform exists for the fractional pivot case anyway. But imagine trying to use an integer pivot to specify reflection about the image center - I'm not sure you can in all cases.  So fractional pivots are actually valid, but only if they're N + 0.5.
Unless you have a strong use case for custom pivots that isn't met by the ImageTransform, my intention is to make a braindead simple Mirror node which always operates about the center of the image, rather than muddy the water with a floating point pivot that silently snaps to the closest 0.5.


'printraw' prints nothing

print("1")
printraw("2")
printraw("3")
This code should produce the following result:
1
23
However it produces this result instead:
1
[...]
I wish to have this option better organize through spacing the readability of my error and feedback messages. Thanks in advance for any fix.

printraw prints only to the OS output, not the editor built-in console.
As far as I know, this is because the built-in console only prints whole lines ending with newline in every singular call, so it can't fulfill the requirements of printraw.

Yep, I would like some kind of option to control the newlines in the editor's output. So that if I need to print later in the code, but it's all designed to list out horizontally, I can fit it without flooding new lines.

Yeah all the console API including debuggerand remote debugger  is based on lines, printraw will not work. This is impossible to support given that lack of EOL markers requires complex buffering schemes that never really work as one would expect.
Having this limitation makes everything much simpler.

Oh okay. I guess I should just concatenate it all before printing it new lines then. Thanks for the info.

Hey, I know that it is closed issue, but solution to problem like this for someone who is trying to do this is simply use vaiadable, and print full lines normally using print(). Like that:
var line_to_print = "" line_to_print += "first part" line_to_print +=" second part" ... print(line_to_print)
This would work in editor console output.


fix: Abort meltano state commands when confirmation rejected

Fixes #8115

@ReubenFrankel I think @edgarrmondragon is addressing this in:

https://github.com/meltano/meltano/pull/8115

Duplicate of #8115


Adding Anita Charles as contributor

This PR fixes  #309
Signed-off-by: Will Calcote<EMAIL_ADDRESS>

This is looking good.
Nice work 👍🏽
@willcalcote


Occasional "failed to flush outgoing items" from parsers when deploying new filteres

Very occasionally when deploying new filters to the parser nodes, one of them will throw the following errors during the restart sequence:
{:timestamp=>"2015-08-01T07:24:57.382000+0000", :message=>"Failed to flush outgoing items", :outgoing_count=>147, :exception=>#<Manticore::SocketException: Connection refused>, :backtrace=>… snip…
  {:timestamp=>"2015-08-01T07:24:58.401000+0000", :message=>"Got error to send bulk of actions: Connection refused", :level=>:error}

This seems to be a timing issue where the local elasticsearch process shuts down before logstash process  -
https://github.com/logsearch/logsearch-boshrelease/blob/develop/jobs/parser/monit
We should be able to fix it using a monit depends on directive to ensure that the elasticsearch process is only stopped after the logstash process

@dpb587 That was a lot simpler than I expected.  :+1: for monit's comprehensive handling of dependancies, and :+1: to you for using them :)


Bot Testing Issue

@test-my-patience-bot

@test-my-patience-bot

@gitmate-test-user-2

Greetings! I'm the koafile bot and I'm here to get your coafile ready. Sit Tight!

[default]
bears = LineCountBear, InvalidLinkBear, FilenameBear
files = **.html, **.md, **.markdown, **.scss, **.css, **.yml, **.xml, **.svg
[markdown]
bears = LicenseCheckBear, MarkdownBear, LineLengthBear, coalaBear, DuplicateFileBear, KeywordBear, SpaceConsistencyBear
files = **.md, **.markdown
[yaml]
bears = YAMLLintBear, LicenseCheckBear, LineLengthBear, coalaBear, DuplicateFileBear, KeywordBear, SpaceConsistencyBear
files = **.yml
[html]
bears = LicenseCheckBear, LineLengthBear, BootLintBear, coalaBear, HTMLLintBear, DuplicateFileBear, KeywordBear, SpaceConsistencyBear
files = **.html
[xml]
bears = LicenseCheckBear, XMLBear, LineLengthBear, coalaBear, DuplicateFileBear, KeywordBear, SpaceConsistencyBear
files = **.xml, **.svg
[css]
bears = CSSLintBear, SpaceConsistencyBear
files = **.css
[scss]
bears = LicenseCheckBear, StyleLintBear, SCSSLintBear, LineLengthBear, coalaBear, DuplicateFileBear, KeywordBear, SpaceConsistencyBear
files = **.scss

coafile creation process Successful! :tada: :tada: :tada:
Next Steps:
Step 1: Merge the Pull Request https://github.com/hemangsk/DevJournal/pull/7 having the .coafile.
Step 2: Turn on GitMate Integration on this repository.
Step 3: Turn on code analysis for automated code reviews on your PRs.
Happy Linting! :tada:


[Bug] Maybe Singapore (asia-southeast1) missed?

At https://github.com/GoogleCloudPlatform/firebase-extensions/blob/4539343fa535c3cbbb21fdbdcfd24a8796fbb0c8/storage-reverse-image-search/extension.yaml#L629
I have selected location Singapore for my deploy but value is set to value: asia-south1 . Is this missed setting?

Thanks for raising! This might be a typo, it should be asia-southeast1, looking into it. I think many extensions are affected by this.

thanks for your reply, please fix that.


Replace concurrent-ruby with MonitorMixin

I don't think concurrent-ruby is needed just to do thread safe hashes. Prompted by this memory profile where including the gem is adding almost 6MB at startup:
stoplight: 5.8203 MiB
    stoplight/data_store/memory: 5.293 MiB
      concurrent: 5.2383 MiB
        concurrent/executors: 1.3906 MiB
          concurrent/executor/timer_set: 0.6953 MiB
            concurrent/scheduled_task: 0.4844 MiB (Also required by: concurrent, concurrent/timer_task)
              concurrent/ivar: 0.3047 MiB (Also required by: concurrent/async, concurrent/future, and 2 others)
        concurrent/configuration: 1.3203 MiB (Also required by: concurrent/scheduled_task, concurrent/options, and 2 others)
          concurrent/delay: 0.8789 MiB (Also required by: concurrent/utility/processor_counter, concurrent)
            concurrent/concern/obligation: 0.7031 MiB (Also required by: concurrent/ivar)
              concurrent/atomic/event: 0.6094 MiB (Also required by: concurrent/executor/immediate_executor, concurrent/atomics, and 3 others)
                concurrent/synchronization: 0.5703 MiB (Also required by: concurrent/executor/abstract_executor_service, concurrent/utility/at_exit, and 29 others)
        concurrent/atomics: 0.7422 MiB (Also required by: concurrent/executor/simple_executor_service)

Not sure why coverage dropped 3%...


XML first line missing

When creating a program with Python, the first line necessary for all documents is missing:
<?xml version="1.0" encoding="UTF-8"?>

I tried to create a new program with
bookExamples/patterns/handshake/handshake-program.py

I manually added the line of code to the handshake-program.xml file.

added fix to main swiML.py file

tested and okay


Can't map left and up analog sticks

Godot version:
a2f26a96dc6a09eaba796c89f3bd17b9e73848a4
OS/device including version:
Linux 4.15.15
Issue description:
I can't map Left and Up stick axis. Probabily this issue was introduced here #16902
Steps to reproduce:

Minimal reproduction project:

Just create a new project

CC @groud


Scrapbook result update doesn't percolate to appropriate document(s)

The reason being we create new MongoDocumentNodes and MongoCollectionNodes in the executeCommandFromActiveEditor method.
Fix : Find the appropriate collection and documents, and use those nodes.
Glitch : The document(s) returned may not exist on the viewtree yet. In which case we'll have to create an adhoc node anyway.

@PrashanthCorp this is an issue for 0.2.2, but it's not worth blocking the release. It's also already been fixed on the master branch (as a part of my shared tree provider work here) so I'll close this issue

I didn't know it was fixed. I just put it down for documentation. Good to know. :)

Yep sounds good - better safe than sorry


Number of testcases different in Command Line and CSV file/Workbook

About You:
Name: Rafsan Mazumder
Company: ByteDance / Tiktok
Your question:
The total number of TDVT testcases that are shown in command line is 841 testcases, whereas csv_results_combined / Tableau workbook shows 783 testcases. Which number is correct and what is the reason behind showing 2 different test results count?

Hi Rafsan,
csv_results_combined has the accurate number of test cases. The discrepancy in the workbook is likely due to a join issue with the workbook, as the test_metadata.csv file may not have been updated when new tests were added to TDVT (or when existing tests were ). I'm opening an internal story to refresh that workbook, and the metadata it relies on.

Tracking ID W-12315436, assigned to @lukewrites


startup failed due to configuration

配置出了问题，但不知道如何解决，麻烦大大帮忙看下
配置如下
if AZURE, check https://github.com/openai/openai-cookbook/blob/main/examples/azure/chat.ipynb
OPENAI_API_TYPE: "azure"
OPENAI_BASE_URL: "https://xxx.openai.azure.com"
OPENAI_API_KEY: "xxx"
OPENAI_API_VERSION: "0613"
DEPLOYMENT_NAME: "aiplus"
启动后出现如下错误
$ metagpt "create a 2048 game in python"
2024-01-06 22:06:50.647 | INFO     | metagpt.const:get_metagpt_package_root:32 - Package root set to xxx
2024-01-06 22:06:54.998 | INFO     | metagpt.config:get_default_llm_provider_enum:89 - OpenAI API Model: gpt-3.5-turbo-16k
2024-01-06 22:06:55.310 | INFO     | metagpt.config:get_default_llm_provider_enum:89 - OpenAI API Model: gpt-3.5-turbo-16k
2024-01-06 22:06:55.600 | INFO     | metagpt.config:get_default_llm_provider_enum:89 - OpenAI API Model: gpt-3.5-turbo-16k
2024-01-06 22:06:55.892 | INFO     | metagpt.config:get_default_llm_provider_enum:89 - OpenAI API Model: gpt-3.5-turbo-16k
2024-01-06 22:06:56.194 | INFO     | metagpt.team:invest:91 - Investment: $3.0.
2024-01-06 22:06:56.196 | INFO     | metagpt.roles.role:_act:392 - Alice(Product Manager): to do PrepareDocuments()
2024-01-06 22:06:56.337 | INFO     | metagpt.utils.file_repository:save:60 - save to: xxx
2024-01-06 22:06:56.346 | INFO     | metagpt.roles.role:_act:392 - Alice(Product Manager): to do WritePRD()
2024-01-06 22:06:57.722 | ERROR    | metagpt.utils.common:log_it:433 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 1.373(s), this was the 1st time calling it. exp: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
2024-01-06 22:06:58.331 | ERROR    | metagpt.utils.common:log_it:433 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 1.981(s), this was the 2nd time calling it. exp: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
2024-01-06 22:06:59.662 | ERROR    | metagpt.utils.common:log_it:433 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 3.313(s), this was the 3rd time calling it. exp: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
2024-01-06 22:07:00.591 | ERROR    | metagpt.utils.common:log_it:433 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 4.241(s), this was the 4th time calling it. exp: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
2024-01-06 22:07:04.722 | ERROR    | metagpt.utils.common:log_it:433 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 8.373(s), this was the 5th time calling it. exp: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
2024-01-06 22:07:18.922 | ERROR    | metagpt.utils.common:log_it:433 - Finished call to 'metagpt.actions.action_node.ActionNode._aask_v1' after 22.572(s), this was the 6th time calling it. exp: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
2024-01-06 22:07:18.922 | WARNING  | metagpt.utils.common:wrapper:505 - There is a exception in role's execution, in order to resume, we delete the newest role communication message in the role's memory.
2024-01-06 22:07:18.950 | ERROR    | metagpt.utils.common:wrapper:487 - Exception occurs, start to serialize the project, exp:
Traceback (most recent call last):
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/_asyncio.py", line 50, in call
result = await fn(*args, **kwargs)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/actions/action_node.py", line 265, in _aask_v1
content = await self.llm.aask(prompt, system_msgs)
openai.NotFoundError: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/utils/common.py", line 496, in wrapper
return await func(self, *args, **kwargs)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/roles/role.py", line 542, in run
rsp = await self.react()
tenacity.RetryError: RetryError[<Future at 0x7fb7ee069cc0 state=finished raised NotFoundError>]
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/utils/common.py", line 482, in wrapper
result = await func(self, *args, **kwargs)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/team.py", line 134, in run
await self.env.run()
Exception: Traceback (most recent call last):
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/_asyncio.py", line 50, in call
result = await fn(*args, **kwargs)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/actions/action_node.py", line 265, in _aask_v1
content = await self.llm.aask(prompt, system_msgs)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/provider/base_gpt_api.py", line 53, in aask
rsp = await self.acompletion_text(message, stream=stream)
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/_asyncio.py", line 88, in async_wrapped
return await fn(*args, **kwargs)
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/_asyncio.py", line 47, in call
do = self.iter(retry_state=retry_state)
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/init.py", line 314, in iter
return fut.result()
File "/Users/xxx/anaconda3/lib/python3.10/concurrent/futures/_base.py", line 451, in result
return self.__get_result()
File "/Users/xxx/anaconda3/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
raise self._exception
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/_asyncio.py", line 50, in call
result = await fn(*args, **kwargs)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/provider/openai_api.py", line 274, in acompletion_text
return await self._achat_completion_stream(messages)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/provider/openai_api.py", line 211, in _achat_completion_stream
response: AsyncStream[ChatCompletionChunk] = await self.async_client.chat.completions.create(
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/openai/resources/chat/completions.py", line 1295, in create
return await self._post(
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/openai/_base_client.py", line 1536, in post
return await self.request(cast_to, opts, stream=stream, stream_cls=stream_cls)
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/openai/_base_client.py", line 1315, in request
return await self._request(
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/openai/_base_client.py", line 1392, in _request
raise self._make_status_error_from_response(err.response) from None
openai.NotFoundError: Error code: 404 - {'error': {'code': '404', 'message': 'Resource not found'}}
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/utils/common.py", line 496, in wrapper
return await func(self, *args, **kwargs)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/roles/role.py", line 542, in run
rsp = await self.react()
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/roles/role.py", line 493, in react
rsp = await self._react()
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/roles/role.py", line 472, in _react
rsp = await self._act()  # 这个rsp是否需要publish_message？
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/roles/role.py", line 393, in _act
response = await self._rc.todo.run(self._rc.history)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/actions/write_prd.py", line 105, in run
prd_doc = await self._update_prd(
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/actions/write_prd.py", line 146, in _update_prd
prd = await self._run_new_requirement(
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/actions/write_prd.py", line 126, in _run_new_requirement
node = await WRITE_PRD_NODE.fill(context=context, llm=self.llm, schema=schema)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/actions/action_node.py", line 331, in fill
return await self.simple_fill(schema=schema, mode=mode)
File "/Users/xxx/AIWorkspace/MetaGPT/metagpt/actions/action_node.py", line 298, in simple_fill
content, scontent = await self._aask_v1(prompt, class_name, mapping, schema=schema)
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/_asyncio.py", line 88, in async_wrapped
return await fn(*args, **kwargs)
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/_asyncio.py", line 47, in call
do = self.iter(retry_state=retry_state)
File "/Users/xxx/anaconda3/lib/python3.10/site-packages/tenacity/init.py", line 326, in iter
raise retry_exc from fut.exception()
tenacity.RetryError: RetryError[<Future at 0x7fb7ee069cc0 state=finished raised NotFoundError>]

报错404，Resource not found
请检查确认下 azure 配置，尤其是 OPENAI_API_VERSION 和 DEPLOYMENT_NAME 是否存在。


amarok: set MY_BASEDIR_VERSION to avoid DEFAULT_MYSQL_HOME /not/a/rea…

Motivation for this change
This fixes #15264.
Things done

[ ] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] OS X
[ ] Linux

[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

The 1st CI failure here is spurious, due to a full disk.  I think the second one is too -- it failed almost right away, not anywhere in the amarok build -- but I can't really make any sense of it.

do you still want to merge this following the further discussion in #15264 ?

I think it's worthwhile to have this interim solution, yes.  Once there's a permanent fix in #15264 (or elsewhere), it can be rolled back.

As far as I know this has been solved by #17413. Closing.

I think I agree, though it's hard to say for sure since #16588 still blocks using amarok at all for me.  At least, I can say that running with the debug flags from that issue, I don't see the error reported in #15264, but instead see:
amarok:           [CollectionManager] initializing "amarok_collection-mysqlecollection"
amarok:           [MySqlStorage] Connected to MySQL server 10.1.21-MariaDB-embedded
amarok:           Connected to MySQL server 10.1.21-MariaDB-embedded
amarok:           [MySqlStorage] Initialized thread, count== 1

... which looks right.


improve numerical precision of negbin loglik

Per my comments in https://github.com/weecology/sad-comparison/issues/93
If I did things correctly (and didn't just re-run the unit tests for the master branch), this should give the same answer when things are numerically stable. The fact that we're not calculating log(1-p) manually anymore should improve the precision when most of the probability mass is at zero.

Oh, maybe there aren't unit tests for this? So passing might not mean much....

Okay, I confirmed manually that I get the same answer both ways.

Looks great. Thanks @davharris !