fix to dependent path separation in new conjugacy checking

Fix to new conjugacy "dependent paths" processing, that was added by @perrydv .
Removed dependentNodePaths that have length = 0.
@perrydv please take a look at this one-line change, and merge into newNodeFxns if you approve.  It seems to work just fine, but I suggest you take a look at the email I sent with subject "Error in conjugacy checking", and the attached model and data file (which triggered the previous error), since I'm not sure why this error never showed up before.
@perrydv I leave it to you to merge this change in.

@danielturek nice catch.  I think I follow and it makes sense.  FWIW I think the error may be triggered by a somewhat more rare circumstance that it may at first appear.  I think a node that has no dependencies would return NULL from getDependencyPaths, and that case was stripped out in checkConjugacy2.  I think the case that makes getDependencyPaths return list() instead of NULL (cause of the bug) is if there are deterministic dependencies that do not lead to a stochastic dependency.  That would mean the stochastic node being checked is posterior predictive, with some deterministic calculation being made from it as well.
Looking at this example also made me want to check with you if mean() is handled correctly in the linearity checking of dependencies.  But that's a different topic.  I'll merge this pull request.


🐛 FIX: CLI option callbacks with --config

These option value should be unprocessed.
This also fixes a bug with the directive data caching.

@goxberry I believe this is better alternative to #52 😅

@chrisjsewell Agreed.


Fixes in validator CLI when serializing dictionary with tuple keys to JSON

Summary
This PR includes:

Fixes error in validator CLI when serializing a Python dictionary with tuples as keys into JSON format.
Refactored class interfaces and error messages
Fixed an error in validator when input dataset does not have LabelCategories

How to test
python -m unittest -v tests/test_validator.py
Checklist

[x] I submit my changes into the develop branch
[ ] I have added description of my changes into CHANGELOG
[ ] I have updated the documentation accordingly
[ ] I have added tests to cover my changes
[ ] I have linked related issues)

License

[x] I submit my code changes under the same MIT License that covers the project.
Feel free to contact the maintainers if that's a concern.
[x] I have updated the license header for each file (see an example below)

# Copyright (C) 2020 Intel Corporation
#
# SPDX-License-Identifier: MIT

Please check the updates.

Fixed the things @jihyeonyi pointed out in the latest commit. Otherwise, the other updates look good to me!

@maksimvlasov You changed list(d.items()) to d.items() in one of your commits. I changed it back to list(d.items()). The function won't work with d.items() because the .pop() operation changes the length of d.items() dynamically. Casting it as a list solves the problem because it fixes the initial d.items() as a list.

Right, thanks.


Advertising topics assisted by ticketing

Closing this PR as the protocol it implements has been replaced as of Devconnect Amsterdam 2022.


Crashes when you delete a role

So, while the bot was on, i tried to delete a role.

fixed in https://github.com/NaamloosDT/DSharpPlus/commit/54169809291e4325ba94c9cbb94f40275b7dc60c


Clean up breaking news

Breaking news currently outputs as such:
BREAKING NEWS ALERT MESSAGE
article title
[random giphy gif]
Often times multiple news articles are uploaded at once so we get bursts of 5 alerts all at once. When this happens it should look like this:
BREAKING NEWS ALERT MESSAGE
[random giphy gif]
article title
article title
article title
article title
If nothing has been posted for the past 5 minutes it should report the news alert message and the gif. I also think the title should be a link to the article.

#7 addresses this


Add Synonyms to dropdown autocomplete search (Feature Request)

Feature Request:
When supplying the data for a dropdown, it would be very helpful to be able to include a synonym array that could be used to filter items when using the autocomplete feature. For instance, an entry in a countries list might be:
{"id":"US","name":"United States of America","synonym":["USA","US","America","USofA"]}

Sounds interesting, we are going to include that in the next release. Thanks for your suggestion.

It has been done, it is available on v4.4.4+


Show allocation bytes in Call Stack Tree

The view currently shows the allocation count and percentage per row, but not the actual value in bytes. A column for that would be more useful for us.  If that is difficult to add, a tooltip showing the bytes could be an initial way to expose that information.

Feel free to implement it and make a pull request. Meahnwhile, please stop posting feature requests as 'issues'


README: update to make juttle-engine more prominent

Since the more complete installation of juttle will want to use
juttle-engine and not just the CLI, change the introduction and
installation instructions to refer to both options.

@dmajda @dmehra @mccanne What do you guys think about this change as an overall direction. I know it seems a bit strange to refer to juttle-engine here but it is the path we expect many users to go down so it seems appropriate to me.

Referring to Juttle Engine makes total sense to me.

+1 on making Juttle Engine prominent. When looking at the whole README, i noticed that we already had a section at the end "Visualizations with Juttle Engine", that has more detail. Let's link from the new upfront intro of Juttle Engine to that section for more info, so it's not kicking it there disconnected.

@dmajda @dmehra @mccanne I updated again, incorporating feedback from the first round. Please take another look.

+1


Expanding the code of an element snippet raises exception

Same as https://github.com/feenkcom/gtoolkit/issues/3194


prune: Handle --max-repack-size=0 as expected

What does this PR change? What problem does it solve?
Previously the flag was ignored and --max-repack-size=1 had to be
used instead.
Was the change previously discussed in an issue or on the forum?
Mentioned in #1153.
Checklist

[x] I have read the contribution guidelines.
[x] I have enabled maintainer edits.
[ ] I have added tests for all code changes.
[ ] I have added documentation for relevant changes (in the manual).
[ ] There's a new file in changelog/unreleased/ that describes the changes for our users (see template).
[x] I have run gofmt on the code in all commits.
[x] All commit messages are formatted in the same style as the other commits in the repo.
[ ] I'm done! This pull request is ready for review.

LGTM.


"Kubeflow on Kubernetes" refers to file not yet in master

https://www.kubeflow.org/docs/started/getting-started-k8s/
The page refers to a file that is not yet in master, but in a PR that is still in heavy debate.
export CONFIG="https://github.com/kubeflow/kubeflow/tree/master/bootstrap/config/kfctl_platform_existing.yaml"

@yanniszark can you update this to a config file that's in production, or should we revert PR https://github.com/kubeflow/website/pull/833?
/assign @yanniszark

Hi @sarahmaddox thanks for the heads-up!
I forgot to add /hold to the PR.
Given that PR https://github.com/kubeflow/kubeflow/pull/3538 will be in 0.6 and 0.6 will be released very soon, we can either revert it or keep it for a little bit longer until the PR is merged.

Hallo @yanniszark I think we should revert PR https://github.com/kubeflow/website/pull/833 until the change is ready for use in 0.6. The "master" version of the docs does describe v0.6 (we've already archived a branch for v0.5) but even so the docs should describe the available functionality, not future functionality.
Will you revert the PR, or let me know if you'd like me to revert it? Then you can submit it again for review and merge when the software update is ready.

/assign
Fixed by PR https://github.com/kubeflow/website/pull/848 (reverts previous PR). @yanniszark Please do resubmit the original PR when the software is available for use.
/close


HWKBTM-110 Enable btxn reporting level to be defined and propagated. …

…Currently only support levels All, None and Ignore.

Travis CI hook did not report back, but job #462 passed.


Bing Search not working.

Since Microsoft stoped supporting DataMarket (Dec 31st, 2016) and moved to Cognitive Services, the Bing Search in the project not working anymore. I've found the solution here. But my bing_search.py working only on python3, that's why i didn't commited it. Attaching this file below. Maybe it'll help.
new_bing_search.zip

Just finished this great book! Thanks, guys!
My solution do not working in PythonAnyware. I simly decided to disable it.

Continue history. Guys from PythonAnywhere Forum updated api's whitelist for users with free accounts. I've updated again bing_search.py module based on StackOwerflow article. Now it works on local machine and on pythonanywhere server. You can try)


yii serve require php 8.1

 ./yii.bat serve
In Command.php line 360:
  syntax error, unexpected token ")"

In \Symfony\Component\Console\Command\Command

Additional info

Q
A

Version
1.0.?

PHP version
8.0.24

Operating system
Win11

I guess it could be fixed by adding LTS of https://github.com/yiisoft/demo/blob/master/composer.json#L36


Some points I found while reviewing

I don't think this check is required, because we're just extracting transaction sender address using ContextMixin.msgSender(), which getting passed in _burn().
You can also make it _msgSender().
Your work also adds support for meta transactions, this is really good, but all these functions need not to be implemented for successfully enabling assets transfer in between Ethereum & Matic Network. Rather you just need to implement

deposit
withdraw

You can check this implementation, where I tried to keep things little shorter & contained.
Thanking you :wink:

This is wrong.
ChildChainManagerProxy address needs to be used. ( referenced link is for Matic Mumbai Network )

Thanks, @itzmeanjan!
I've addressed some of your comments in :

Override LinkToken _onCreate hook
Improve deployment script to read static Matic Network config

The first check you mentioned, is part of the @openzeppelin ERC20 implementation, so I would say let's leave it like that even if it's not necessary.
@itzmeanjan, could you please take another look?

Yes I checked updated implementation.

Looks better now
And it looks awesome now

And other thing, as you mentioned, we can stay with that, no harm in keeping that address check.

Thanks, @itzmeanjan! Closing this issue.


[Settings] In admin mode the "color settings link" is not working

ℹ Computer information

PowerToys version: 0.25.0
PowerToy Utility: Settings
Running PowerToys as Admin: yes
Windows build number: 20H2 (19042.572)

📝 Provide detailed reproduction steps (if any)

Open Settings (In admin mode!!)
Click on link "Windows color settings"

✔ Expected result
Windows settings app opens and shows color settings.
❌ Actual result
Nothing happens.
📷 Screenshots
Not necessary!

in non-admin mode, we get a 'Application switching to Settings' prompt too

@crutkas That would be expected UWP behavior, right? The dialog itself. "Applications" is a weird title, not sure where that comes from. I'd expect there PT Settings is listed in the Settings manifest?

@crutkas, @niels9001
i have opened a issue for the "app switching" message

This is blocked by https://github.com/microsoft/microsoft-ui-xaml/issues/2357

This is blocked by microsoft/microsoft-ui-xaml#2357

@crutkas I've been looking at that issue, and that one is about opening a file via a HyperlinkButton.

@Jay-o-Way
this issue is already fixed, microsoft/microsoft-ui-xaml#2357 is irrelevant now.

Great news!  This was resolved in the newly released 0.33 version of PowerToys!  Head to https://aka.ms/installpowertoys to grab latest.


Line break in table cells

Are line breaks in table cells supported? I have tried all kinds of characters that come to mind for line breaks but nothing seems to work (.e.g. \n, , , ) Any help is highly appreciated.

Line breaks in table cells are not supported by this library.
Maybe you can look around for a plugin that does this, but I can't suggest any.

Ok, thanks a lot! I appreciate your quick response!

Known workaround is enable html and use <br>. But in general, multiline content not supported in current table implementation (it should be equal to github)

Duplicate of #308


Debug docs build

xref https://github.com/dask/dask/issues/11519

Okay, adding the User-Agent did the trick. I'll open up a PR for that over in our sphinx theme

I had weird errors on xarray ci too, something changed for some reason
James Bourbeau @.***> schrieb am Do. 14. Nov. 2024 um
18:19:

@.**** commented on this pull request.
Okay, so this is weird one. As part of the docs build, we use requests to
download dask and distributed config files. That works for me locally, but
things are failing at that stage in the readthedocs build. We're getting
this response saying "Access to this site has been restricted"

Forbidden · GitHub

Access to this site has been restricted.

    If you believe this is an error,
    please contact Support.

    GitHub Status —
    <a<EMAIL_ADDRESS>

After Googling around it looks like setting a custom User-Agent header
for the request might help this page not get blocked. I'll try that and see
if that helps
—
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/pull/11522#pullrequestreview-2436751141,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOYQZGDFLWKBJAIAYEDDMNT2ATLTBAVCNFSM6AAAAABRZIFDS6VHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDIMZWG42TCMJUGE
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

I had weird errors on xarray ci too

Can you point me to the PR, etc?

https://github.com/pydata/xarray/pull/9770
James Bourbeau @.***> schrieb am Do. 14. Nov. 2024 um
18:36:

Related thread on RTD readthedocs/readthedocs.org#11763
https://github.com/readthedocs/readthedocs.org/issues/11763
—
Reply to this email directly, view it on GitHub
https://github.com/dask/dask/pull/11522#issuecomment-2477030943, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AOYQZGE5MRQYRFUSPOTZN4T2ATNSNAVCNFSM6AAAAABRZIFDS6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINZXGAZTAOJUGM
.
You are receiving this because you commented.Message ID:
@.***>

Alright, there's a new dask-sphinx-theme release out with the fix. Let's confirm things are working here now with the current main


Clearly link to the hub page

Linking the word ghost is ambiguous. The readme says to go read the hub page, so it's nice and friendly if it is extremely clear how to find that hub page.  Your mileage may vary.

This file is actually generated by a script in the docs repo when we create a git repo for an image.  This change should probably there so that it can be easily applies to all docker-library repos.


Traffic Manager deployment guideline for AWS/Azure

Dinusha Senanayaka reported as follows:
Can we include official docs for Traffic Manager deployment guideline for AWS/Azure ? Since TM is different from other components, it's good to document things like; how to include TM into auto scaling groups (for HA only), how to address not having static IP like concerns on both AWS, Azure. At the moment, we don't have any reference docs in this regard.
Also do we have a plan to include this doc [1] to the latest APIM versions too ?
[1] https://docs.wso2.com/display/CLUSTER44x/Clustering+API+Manager+in+Amazon+Web+Services

@bhathiya / @tgtshanika , pls allocate someone who can provide provide the documentation team with the required content


docs: renamed hello state to name in hero section demo

The demo in the hero section contains the state for handling the input field. The state variables for that are hello and setHello; for storing the name of the user it would be better to rename them to name and setName.

Thanks for the suggestion!
This is a good occasion to highlight something important with URL state: migrations like this can (and will) break existing URLs.
I don't mind merging the change in variable name, but the query key should remain the same to ensure existing URLs are still valid. But doing so, the variable name would be decoupled from its key.
So what's the best way to handle such migrations? One way is to rewrite the query string with middleware. It may break locality of behaviour, but it also centralises the migration code.

Closing as not planned: this would need a migration step, which we (currently) don't have an API for.
See also: #665.


docs(faq): Add instructions to install in Apple M1 processor (ARM-based)

Description of the installation process for Apple M1 processors.

@RafaelAPB FYI


coroutine decorator is missing call to @wraps

Thanks for this really useful lib! Here is my little contribution:
coroutine() decorator at utils.py module is missing wraps decorator. Reference here.
Proposed fix (using python 2.7):
from functools import wraps

def coroutine(func):
    """
    Skips to the first yield when the generator is created.
    Used as decorator, @coroutine
    :param func: function (generator) with yield.
    :return: generator
    """

    @wraps(func)  # <== Added @wraps here
    def start(*args, **kwargs):
        try:
            cr = func(*args, **kwargs)
            try:
                next(cr)
            except NameError:  # not defined, python 2
                cr.next()
            return cr
        except StopIteration:
            return
        except KeyboardInterrupt:
            raise StopIteration

    return start

Without the ability to test code on my vacations, I am not quite sure what happens there...
The coroutine docstring will replace the functions docstring where the decorator is applied to?
Anyway, feel free to submit a pull request yourself.

I believe I rewrote that code part, and lost the overview of what was the issue here.
If this is still is an issue, reopen this issue please.


Maintain hostname when requesting from upstream host

This PR fixes #404
Add host header literal rewrite to overcome issues with accessing IP directly such as with cloudflare. This ensures there is a host header value present once Envoy has performed the DNS lookup and forwards the request onto the returned IP when simply proxying the request upstream
Changes

Add HostRewriteSpecifier to Route in parser when handling a request proxy to upstream

Fixes

Error 1003 Direct IP access not allowed when accessing upstream services fronted by CloudFlare

Checklist

[x] tested locally
[ ] added new dependencies
[ ] updated the docs
[ ] added a test

Here is the API spec you can test it with
apiVersion: gateway.kusk.io/v1alpha1
kind: API
metadata:
  name: jsonplaceholder
  namespace: default
spec:
  fleet:
    name: default
    namespace: default
  spec: |
    swagger: '2.0'
    info:
      title: httpbin.org
      description: API Management facade for a very handy and free online HTTP tool.
      version: '1.0'
    host: jsonplaceholder.typicode.com
    schemes:
    - http
    - https
    x-kusk:
      upstream:
        host:
          hostname: "jsonplaceholder.typicode.com"
          port: 80
    paths:
      /:
        get: {}

and then you can curl with curl -v $ENVOY_IP/posts/1


Pass/Fail Communications

Learndot doesn't enable sending different emails to users who pass v. fail the final exam. As a workaround, we are sending a generic email to both groups upon completion, with a follow-up email to passing learners including their certificate. The better solution would be to have one email sent to each group: for failed learners, a notice that they didn't pass the exam (ideally including what their final score was so they know how close they were/weren't) and encouragement to take it again at any time; for passed learners a message of congratulations, their certificate, and instructions to add the cert to their socials. Both learners should be asked to fill in feedback forms (ideally in-email forms so they don't have to open another page)

Training issues are now in Jira. Closing this.


Re: Clarification on conversion/quantization of Floating Point Numbers to 2-bit Binary

Let's take JSC-S in particular, so the input bit-width as well as the output bit-width is 2. So, how do you convert or rather quantize the Floating Point Numbers in the dataset into 2-bit Binary numbers to feed them as inputs. (Image Attached for further clarification).

How do you convert/quantize FP Numbers on the left side to Binary Numbers on the right side?

(Image Attached for further clarification).

How have you generated these files?

So, how do you convert or rather quantise the Floating Point Numbers in the dataset into 2-bit Binary numbers to feed them as inputs.

What exactly do you mean by "how"? There are many ways to answer this question. Do you want to know where the code is? Do you want to understand the mathematical expression?
During training, we leverage the quantisers from brevitas to learn a quantizer which is optimised for the problem at hand. So the parameters of the input quantization are a property of the model themselves, but effectively, each model performs a uniform-spaced quantization (to integers) equivalent to the formula:
x_quant = clip(round(x/s + b), -2, 1)

where x is the input vector and  s / b are vectors of learnt scales / biases for the dataset during training.

The left side file (in the ref. image) I saved the entire numpy array onto a .txt file from 'dataset.py' after you save the input in 'X_train_val' and output in 'y_train_val' respectively.
As to the right one, I ran 'dataset_dump.py' and got those files.
I just wanna know the mathematics behind the conversion, like how are you converting a FP Number into a 2-bit binary, that info is sufficient for me.
If you can point me to the code for it, that's even better.

They need to be calculated from all the modules in the pre_transform list (BatchNorm & ScalarScaleBias). You can look at their parameters directly and from there calculate s & b. They are not pre-calculated anywhere.


Add SqlCommand.UsePositionalParameters Feature

fixes https://github.com/dotnet/SqlClient/issues/974
This PR adds a new property to SqlCommand called UsePositionalParameters. When set to true parameters names will not be sent to the sql server when the command is executed. This behaviour has been show to increase performance for commands with very large numbers of parameters which are used in bulk operations.
This is a draft because:

This adds public surface area. The external name is open to debate.
This needs documenting.
This needs tests adding.

@KristianWedberg would you mind running your perf tests with the artifacts from this PR to ensure that this small change still has the performance changes observed in the investigation we did in your original issue?

Hiya @Wraith2, can you make a package available like previously?

@KristianWedberg You can download for the azure DevOps CI-BuildNPack pipeline here: https://dev.azure.com/sqlclientdrivers-ci/sqlclient/_build/results?buildId=29463&view=artifacts&pathAsName=false&type=publishedArtifacts

Yup, this new PR (Microsoft.Data.SqlClient.2.1.0-pull-049c895.21108.1.nupkg) also has great performance, scaling to 2048 parameters with about 10% better performance vs. ODBC:

UsePositionalParameters
provider
RPS
CPR
Parameters
Throughput [params/s]

true
Microsoft
4
8
32
143,034

true
Microsoft
8
8
64
257,235

true
Microsoft
16
8
128
409,405

true
Microsoft
32
8
256
630,407

true
Microsoft
32
16
512
846,929

true
Microsoft
32
32
1024
1,120,485

true
Microsoft
32
64
2048
1,343,983

Odbc
4
8
32
133,329

Odbc
8
8
64
239,711

Odbc
16
8
128
378,298

Odbc
32
8
256
549,672

Odbc
32
16
512
755,040

Odbc
32
32
1024
984,802

Odbc
32
64
2048
1,120,003

So all good so far!

Excellent. So, fancy helping write some tests? 😁

I've added some simple tests which examine the behaviour of parameters with this setting enabled and they surprised me a bit.

Input and InputOutput parameters don't work because the names can't be bound, seems sane enough.
All parameters named in the query still have to be specified correctly so you can't just omit parameter names and you can't make them up, they've still got to match in the same way as using named parameters.
Parameters can be re-used by name, so you can use an input parameter multiple times

So it seems that on input there is still a name-value map generated but it's populated by position not name match and then the engine proceeds normally requiring names to exist once the query is parsed etc. On output there is no name-value map so you can't use named outputs at all.

Out of curiosity... Is a new flag on SqlCommand really needed? Is there any reason you can't simply check if the command's parameters have their names set or not (i.e. ParameterName is null)? I'm raising this because I'm planning a similar change in Npgsql.

Ideally I'd use a new flag in the CommandBehavior enum. That's a breaking change though and it's in /runtime and since I thought this was going to be SqlClient specific it didn't seem to be the right solution to the problem. If you could use the same value in npqsql then perhaps it's worth considering. I don't know if mysql or sqlite (or firebird?) would be able to or want to make use of it. It might be worth a wider discussion.
It does have to be at DbCommand level. Even though the parameter values aren't sent with names the RPC request still contains a list of parameter names and types and those get checked. It's peculiar but I'm finding from the tests that the only thing this changes is that the parameters are matched up to names in the order provided, you can still use a named parameter multiple times and you still have to name each parameter correctly and provide values for each named parameter.

Thanks @Wraith2, so you're saying users have to specify SqlParameter.ParameterName regardless of this option, right?
That's peculiar indeed... The concept of positional parameter usually means that placeholders themselves are positional: either via numeric placeholders like in PostgreSQL ($1, $2), or with implicit positioning (?). I doubt a CommandBehavior would make sense across multiple providers here.

If there is a way to suppose true placeholder positional style I don't know what it is. ? isn't valid syntax and using @ fails with Must declare the scalar variable "@" from the server, so we sent it but it isn't acceptable. I'm working from the way RPC are executed in this driver. It may be that if I didn't send the parameter list string it would change how things work. I'm not aware of a T-SQL spec that tells me whether an unnamed parameter would be acceptable. I do know I've never seen anything other than stored procedure invocations use positional parameters with SQL Server.
If there is a use for the positional option in other drivers the enum flag is a better approach and the limitations of how Sql Server implements it would be something to cover in the documentation or provider.

We could do this without the formal extension to CommandBehavior by simply oring in a new flag value
const int PositionalParameters = 64;
CommandBehavior behavior = (CommandBehavior )((int)CommandBehavior.Default | PositionalParameters);
command.ExecuteNonQuery(behavior);

but that looks like a horrible hackjob and if I found that as an official answer to I'd be suspicious about why the people who own the api felt the need to provide such a weird way to access it when they're capable of changing the api surface.
It would need some internal plumbing to make sure validation of command behavior didn't trip up on it but i can handle that.

... I agree this looks... not ideal :) There's also a risk of conflict in case CommandBehavior ever does get extended.
Is there any real downside to introducing a flag on SqlCommand as this PR currently does?

The only danger I can think of it is that people will see and use it without understanding it.

If I understand the new functionality and limitations correctly, from the users' perspective this is not positional parameters. Rather it's an Input only (or InputAndReturn only?) optimization for >64 parameters.
I think a different property name would reduce any incorrect usage, e.g. UseInputOnlyParameters (or UseInputReturnOnlyParameters), and doc the performance advantage.
Thoughts?

If I understand the new functionality and limitations correctly, from the users' perspective this is not positional parameters. Rather it's an Input only (or InputAndReturn only?) optimization for >64 parameters.

Not quite, consider this (passing) test:
[Fact]
private static void PositionalParameters_ParametersAreUsedByPosition()
{
    using (var connection = new SqlConnection(DataTestUtility.TCPConnectionString))
    {
        connection.Open();

        using (var command = new SqlCommand("SELECT @Second, @First", connection))
        {
            command.UsePositionalParameters = true;
            command.Parameters.AddWithValue("@First", 1);
            command.Parameters.AddWithValue("@Second", 2);

            using (SqlDataReader reader = command.ExecuteReader())
            {
                reader.Read();

                int firstOutput = reader.GetInt32(0);
                int secondOutput = reader.GetInt32(1);

                Assert.Equal(1, secondOutput);
                Assert.Equal(2, firstOutput);
            }
        }
    }
}

On input: Names must all be declared. Names can be reused without taking an additional value. Names and values are associated at first encounter of the name by taking the next value from the list of values.
On output: Names don't exist.

OK. How about UsePositionalOutputParameters then?
And are Return parameters affected or not (i.e. should they be referenced in the name or not)?

OK. How about UsePositionalOutputParameters then?

Capturing all the complexity in the name is virtually impossible unless we use an absurd name. We're going to have to rely on the docs to inform people what it changes and what it doesn't.

And are Return parameters affected or not (i.e. should they be referenced in the name or not)?

Return parameter names aren't really important because nothing in the driver cares about the name. They work as the did before because their names aren't relevant. There is only one return value it has no name and it has type int32, in the absence of explicitly returned value it has default value 0.

Given what you  said about Return values, I'd certainly vote for UsePositionalOutputParameters over UsePositionalParameters to reduce incorrect usage...

It also affects input parameters as I showed in that test so using the word Output with the attendant implication that it only affects output parameters seems misleading. Perhaps UseAnonymousParameters or SendAnonymousParameters would be closer but as I said you're still going to need people to read the docs.

@Wraith2 I'm probably missing something, but in this example, would the code work any different if UsePositionalParameters isn't set? It just looks like regular named parameter code to me...

@Wraith2 I'm probably missing something, but in this example, would the code work any different if UsePositionalParameters isn't set? It just looks like regular named parameter code to me...

Yes, The returned values would be reversed and would match the names.
Note the order of the @First and @Second parameters in the query is reversed from the order they're supplied. @Second occurs first in the query and is bound to the first value in the parameter list, which was added with the name @First. So the overall result is that @First returns the @Second parameter value and @Second returns the @First parameter value.

Ok. It's fun. The server side seems to be using the rpc parameter order to match values to names so as long as the build of the parameter list parameter isn't screwed up in some way then the order will be preserved.
What happens when you do a query is that it executes an rcp request which can have a variable number of system parameters (depends on batch, sproc, text) and then those parameters are followed by the user parameters. So in the case of that test what you get is a param array like this:
rpc.params[0] = ("", "SELECT @Second, @First, @Second", nvarchar(255)) // system param query
rpc.params[1] = ("", "@First int, @Second", nvarchar(255)) // system param params list
rpc.params[2] = ("", 1, int) // user param
rpc.params[3] = ("", 2, int) // user param

So the server is matching up the index of the parameter name in the parameterList ( index1 in the rpc) text with the following user params and because they're in order it works. If you found a way to make the order difference then it'd fail but since we build and send in a single operation it'll always work if rpc are built this way.
In which case calling it DisableOutputParameters is probably accurate since that's the only effect you'll see. I think more tests might be a good idea to cover the edges of this to make sure we understand it completely.

DisableOutputParameters sounds like you're simply disabling output parameters from the command, whereas that's not the case. Since it's strictly related to "named parameters", I have a few suggestions shared below. I understand the complex behavior this property introduces, we can continue the discussion to pick the best option:

"SendOutputParameterNames" (default true)
"DisableOutputParameterNames" (default false)
"SendRPCParameterNames" (default true)
"DisableRPCParameterNames" (default false)

We don't really expose users to the word RPC so I'm not a fan of using that in the name.
I'd prefer a negative default value because that way any code like designer code will be unchanged by the appearance of a new member. Which leaves DisableOutputParameterNames, seems reasonable.
What would you expect the behaviour to be if the name were DisableOutputParameters without the Name suffix? Perhaps it's worth adding in client side code to make it behave that way.

From my understanding this flag is essentially changing what the RPC is sending to the server from:
exec sp_executeSql N'select @','@ int',@=2

to the following:
exec sp_executeSql N'select @','@ int',2

So perhaps DisableParameterNameBinding? It's a bit of a mouthful but it's clear as to what it's doing.

I'll vote for clarity over terseness, seems like a reasonable name to me.

Don't want to bikeshed too much, but an API name should generally express why a user would use it. If I understand correctly, the point of this flag would be to get better performance, whereas the current naming makes it sound like users would use it in order to DisableOutputParameters, which doesn't really make sense; disabling output parameters is a side-effect of the more efficient transfer technique, no?
So my proposal would be to call this something more like UseOptimizedParameterTransfer or similar. If this is incompatible with output parameters, I'd detect that and throw NotSupportedException with a clear message to the user.

Even documented I think UseOptimizedParameterTransfer sounds so good to the user it will get significantly more erroneous uses compared to DisableParameterNameBinding.

Even documented I think UseOptimizedParameterTransfer sounds so good to the user it will get significantly more erroneous uses compared to DisableParameterNameBinding.

I agree. If I see that name without context I'll set it to true because of course I want optimized things because they're just better than non-optimized things. So really we want to call it UseOptimizedParameterTransferByDisablingOutputParameters but I don't think we will.

Well, it does sound like we want users to use this in all cases except when they have output parameters :rofl: Hopefully proper documentation and a clear exception would be enough to dispel any confusion. Am just not used to APIs being named by features which they happened to not support!
But feel free to ignore me on this if there's a consensus on the other name.

Ok. So if I add in some code to detect Input and InoutOutput parameters and throw an exception at command execution time (because until that time you can change the parameters) are we at a consensus that we name it something to do with output parameters not working or binding? I'm not opposed to the word binding but it isn't terminology that's already used to describe how the parameters match up, so far there doesn't seem to be any real terminology for it.

UseOptimizedParameterBinding ?

Well, it does sound like we want users to use this in all cases except when they have output parameters 🤣

If this is 100% true, can it instead be automatically enabled for all non-output cases, and have the flag (DisableOptimizedParameterBinding?) to allow disabling it? Riskier of course, but maybe OK if it's certain there is no other pesky corner cases?

If this is 100% true,

If we can definitively prove that sure, I'm not confident so I'd rather leave users in a known good state and let people with the time to research and change their code with the option to turn it on. In the 90% use case of <32 parameters it makes no performance difference.

EnableOptimizedParameterBinding - making the new behaviour default would most likely be too much breaking change.

It's a tough call. I'll vote for ErikEJ's final suggestion: EnableOptimizedParameterBinding
Be sure put in some good API docs to make it obvious that output parameters are not supported, when enabled.

I thought of a way to do this without additional surface area. When preparing the RPC we have to count and characterize the parameters so I can count and determine if there are out parameters, if there are >32 and no outs I can enable this mode transparently to the user. If we do that I want to be able to turn it on and off with an appcontext switch to allow/disallow the option. If that's a better choice because it requires no naming then should the it be enabled or disabled by default? I'd say disabled and force knowledgeable users to opt in to the new way.
Or, do you prefer the additional surface area?
This is a draft because I wanted to prove the performance and talk through the best way to expose the functionality.

if there are >32 and no outs

">32" is when the issue impacts run times. It might consume excessive CPU on the server even with fewer parameters (and hitting a one thread bottleneck at >32), so being able to enable the new functionality explicitly would be good (and maybe lower the threshold?).

Or, do you prefer the additional surface area?

I'd say either just the new API, or API + AppContext. With only AppContext available, it would be risky to enable on a large application where I can't predict all the type of uses it will get.

Should I add checks for the feature being enabled on the command and throw if any output or inputoutput parameters are set on the command?

I vote for new API/ option, and throwing with a clear error message.

Renamed to EnableOptimizedParameterBinding and direction checks added at the same location other parameter validation is done. Tests changed to cover new behaviour. The exception message is:

Parameter '{0}' cannot have Direction Output or InputOutput when EnableOptimizedParameterBinding is enabled on the parent command.

I'll think about how to document it. Any help there would be appreciated.

Proposed docs:
Remarks
You must set the value for this property before the command is executed for it to take effect.
When a command is submitted to the server with parameters a list of the parameter names is sent as part of the submission. The list is used on the server to match Output and InputOutput parameters to the results of the query execution so that the values can be returned to the caller. This option disables the construction and submission of the parameter name list and as a consequence disables the use of Output and InputOutput parameters. Return parameters are not affected by this option.
When a command with large numbers of parameters is sent with this option changes the way parameters are handled on the server because there is no need to maintain an output parameter map. The result of this change is that queries with large numbers of input parameters may execute much faster.
The fewest number of parameters where this will take effect depends on the individual situation and should be detected by measuring query duration with and without the option enabled. Any query with more than 24 parameters may show lower overall query duration. Queries with parameter counts lower than 24 are unlikely to show a difference.

[!NOTE]
If the option is enabled and a parameter with Direction Output or InputOutput is present in the Parameters collection an InvalidOperationException will be thrown when the command is executed.

Return parameters are not affected by this option.

The return parameter is not affected by this option.

When a command with large numbers of parameters is sent with this option changes the way parameters are handled on the server because there is no need to maintain an output parameter map. The result of this change is that queries with large numbers of input parameters may execute much faster.

A command sent with this option changes the way parameters are handled on the server,  because there is no need to maintain an output parameter map. The result of this change is that queries with large numbers of input parameters may execute much faster.

The fewest number of parameters where this will take effect depends on the individual situation and should be detected by measuring query duration with and without the option enabled. Any query with more than 24 parameters may show lower overall query duration. Queries with parameter counts lower than 24 are unlikely to show a difference.

The fewest number of parameters where this will take effect depends on the individual situation and should be detected by measuring query duration with and without the option enabled.

Anyone looking to use this option even if they read the docs should have somewhere to start with the decision. If it were me I'd go googling for a hint about how many parameters it would need before I should consider it. So I do think that giving a number, even a conservative one, is better than not doing so.

As an average user it's hard to follow and understand the implications from the change in the inner workings. I suggest the below start of the doc (and maybe only this doc unless the more detailed description is actually needed).
======
Queries with a large number of parameters can hit a performance bottleneck on the server, making queries progressively slower the more parameters they use. The slow-down has been noticed with 32 or more parameters, and enabling this property will completely avoid this slow-down. You should however perform your own testing to verify the suitability of using this property.
Typical use cases include inserting many values into very wide rows, and using multi-row batch insert queries. Any return parameter is not affected by this option.
NOTE: This property cannot be used with queries that contain any Output or InputOutput parameters (and an InvalidOperationException would be thrown when the command was executed).

@KristianWedberg As an average user who is reading through these PRs for fun, I find that description to be clear 🙂

Could you include the new InvalidOperationException conditions in the Exceptions section of the SqlCommand related functions, please?

In the docs?

Sorry, I didn't point it. Yes, please.

Documentation added.

cc @David-Engel
Docs review

That's my first surface area addition to the library. Everything I've done before has been invisible to users. Woo!

@Wraith2 Congrats!  And my first time naming one!
Do you have a benchmarking suite, would be interesting to test 1.0 against 3.0?

I've been relying on the benchmarks that @KristianWedberg posted in the original issue and has kindly been running on the interim builds to verify the changes https://github.com/KristianWedberg/sql-batch-insert-performance

@Wraith2 I meant general benchmarks that could highlight the general performance improvements made over time, not related to this PR.

Ah, no. The closest i've got to that is the https://github.com/aspnet/DataAccessPerformance benchmark which recreates the TE Fortunes benchmark. Everything else has been highly situational and micro benched. In general my focus has been memory usage on common paths like opening connections, executing a reader, reading valuetypes etc.

@ErikEJ looks like 4.0.0 has been released so your new api is public, let loose the blog post! ;)

Yay!

@KristianWedberg i also had some followup thoughts on this. Do you re-use SqlParameter classes a lot when inserting data? And if so does the object boxing overhead of valuetypes show up in profiles?

It'd be nice if there was a way to avoid it, but I doubt it matters too
much compared to IO overheads. I regularly use SqlBulkCopy with large
number of wide rows of mostly doubles and the only thing that tends to show
up on my profiling is WriteToServerAsync()
On Fri, Nov 19, 2021 at 7:55 AM Wraith @.***> wrote:

@KristianWedberg https://github.com/KristianWedberg i also had some
followup thoughts on this. Do you re-use SqlParameter classes a lot when
inserting data? And if so does the object boxing overhead of valuetypes
show up in profiles?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/dotnet/SqlClient/pull/1041#issuecomment-974048061,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABUB4J36TJLYA7WGX33UGLUMZCNVANCNFSM43DUEDRQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

I think there is a way that the boxing could be avoided but it's only profitable with with repeated uses of the same parameter. If you're seeing WriteToServerAsync you're probably running a cpu profile in which case you'd see boxing as GC time.

@Wraith2 Yes, the SqlParameters get heavily reused. I pre-create a few batch insert statements (e.g. 1, 32, and 1024 rows) with associated SqlParameters, and generate a function to quickly and repeatedly set the parameters with new values for each new batch.
As you noted during the investigation, value types will be boxed and generates GC pressure. This didn't affect the performance in any of my benchmarks (I also tested with pre-boxed value types), but if bottlenecked on client CPU cycles this could of course matter to some degree. The amount of boxing is simply one per value type inserted per inserted row, and I'm guessing all generation 0, so the impact should be easy to estimate.
I could implement this pre-boxing also in my production code, but that's currently on a fairly low priority. How were you thinking  of addressing this from your end?

I've got an experimental branch which allows SqlParameter to detect and use StrongBox<T> : where T is [a supported value type]  in the Value field. As long as you keep hold of the StrongBox you can read and write from it's Value field without boxing. Obviously that's only beneficial if you re-use the parameter value multiple times since the StrongBox is a heap allocation.

Gotcha. In my scenario I'm guessing I would store the StrongBox<T> instances in one array per column in the insert batch (since they would be of the same type), and then generate the code to assign these instances instead of the parameters.
Bit of work, but certainly doable. There is however nothing SqlClient specific with this improvement - it would be really sweet if this was an optional API on DbParameter so that any provider could implement it - any chance of that?

Other providers wouldn't need it, most of them have a DbParameter<T> construct of their own or no need for it. In SqlClient we can't replace SqlParameter easily or make it generic without large changes. Since the DbParameter is largely abstract every provider has it's own logic to deal with the values so there's no common mechanism we could usefully expose.
Being able to quietly understand a generic argument container like would be backwards compatible and perform better when opted into. There's a small amount of complexity around nulls but as long as it's properly documented it wouldn't be difficult for anyone who has used direct ADO in the past to deal with.

Even so, why not design it so that it (optionally) can be reused across providers, even if it means they might have both their own API and the portable API?
I might not be able to justify implementing this for a non-portable API, since I'm generating the parameter setting code with expression trees, and doing that differently for different providers could be more complexity than it's worth...

That would need runtime implementation planning and work and then pushing out to all providers. So far that level of co-operation hasn't been possible. We can see what @roji thinks but I expect it would be a no-go for a general provider feature because as i said other providers can handle it better already.

Other providers wouldn't need it, most of them have a DbParameter construct of their own or no need for it. In SqlClient we can't replace SqlParameter easily or make it generic without large changes.

FWIW I'm not aware of another provider apart from Npgsql which has DbParameter<T>. https://github.com/dotnet/runtime/issues/17446 is about adding a generic parameter API to ADO.NET; I'm planning to maybe take a stab at this for 7.0, ideally there would be a default implementation which delegates to non-generic DbParameter and which therefore boxes (but could providers could implement it without boxing).

SqlClient we can't replace SqlParameter easily or make it generic without large changes.

Note that at least in the current Npgsql implementation, NpgsqlParameter<T> doesn't replace the non-generic NpgsqlParameter - it's just there alongside it. So there wouldn't be any breaking changes or anything to do the same in SqlClient. You can look at what I did in Npgsql for inspiration, though it would be good to lock down a good design at the ADO.NET level first before implementing.

Even so, why not design it so that it (optionally) can be reused across providers, even if it means they might have both their own API and the portable API?

Well, first of all, what would there actually be here to design across providers, in System.Data? SqlClient can simply support writing when  SqlParameter.Value is set to StrongBox<T> - this wouldn't require any additional API surface here, right? Or am I missing something?
Furthermore, if SqlClient does implement this, then it seems like a generic SqlParameter<T> could easily be implemented on top of it... In other words, when somebody sets SqlParameter<T>.Value (which would be of type T), that could simply set the value on an internally-managed StrongBox<T>, no?
I guess what I'm saying, is that if SqlClient can support writing StrongBox<T>, then it's a bit hard to see why it couldn't also just add a SqlParameter<T> implementation directly, which is a better API to expose to users... There may be some details here that I'm missing though.

I guess what I'm saying, is that if SqlClient can support writing StrongBox, then it's a bit hard to see why it couldn't also just add a SqlParameter implementation directly, which is a better API to expose to users... There may be some details here that I'm missing though.

In technical terms there is some difference but it could be worked out. The SqlParameter implementation leans heavily on reflection to identify the type so a lot of internal logic would need to change if we no longer have the field. The hack i've done sort of sidesteps it but still needs the object value internal field it just contains the strongbox so setting it has no downside.
In practical terms getting the interface prototyped, approved, implemented in the BCL, implemented in SqlClient and then available to consumers is a multi-year effort and so far we've been unable to get The batching Api more than halfway through that process in SqlClient despite the other major providers having completed it.
Hacks in this one library that don't affect the external interface are much "easier" to get implemented than trying to change api surface. Here it might only take a year.

In practical terms getting the interface prototyped, approved, implemented in the BCL, implemented in SqlClient and then available to consumers is a multi-year effort and so far we've been unable to get The batching Api more than halfway through that process in SqlClient despite the other major providers having completed it.

The batching API was delivered in .NET 6.0. I wouldn't estimate that a generic DbParameter<T> in System.Data is a multi-year effort (though it may slip due to prioritization considerations).
If you feel that eliminating parameter boxing is urgent/high-value enough, then you can indeed go ahead and add support for StrongBox. Given that there's an intention to solve this at the System.Data level, I personally don't see a reason to rush this - it's been this way since forever, it's an optimization that probably isn't terribly important in the SqlClient context (because of the other perf issues), and importantly, when the System.Data API is done you'd be stuck maintaining both the standard DbParameter<T> and the SqlClient-specific StrongBox support (which at that point would be obsolete). So I personally wouldn't do this - there's enough other important work - but this would of course be a SqlClient decision.


DF Flag Editor: Easier way to open Flag Editor on specific Document

Is your feature request related to a problem? Please describe.
Add a way to open the Flag Editor from within the Document, such as a Header button and/or with the Sidebar context menu.
Describe the solution you'd like
The button (wherever it is located), would simply need to open the Flag Editor with the text box pre-filled with the Document's ID.

A way to drag and drop a Document into the Flag Editor would be neat as well


Crash at startup

The game crashes immediately when you start it with the mod, even without other mods.
Fabric version 0.13.3 and mod version 4.1.18. Everything else should be in the crash log.

I haven't encountered the crash (maybe because I'm testing in a development environment),
but If you don't mind testing with the newer alpha version of the mod and seeing if it no longer crashes.

Still the same crash with 4.2.2

With the 4.2.9 the game no longer crashes 👍


Introduce yaml standard library module

Purpose

Related to https://github.com/ballerina-platform/ballerina-standard-library/issues/4288

Did we use any tools such as grammerly to validate the text?

Did we use any tools such as grammerly to validate the text?

Validated through Grammarly and updated in 352e0f5


show help if there is not exactly one argument for info, create, down…

…load, add and seed, fix #567

Nice, thanks!

Released as webtorrent 0.73.0.


Search Button on Website

A Search button is needed on the website.. which allows easy and comfortable for the user to find commands than to scroll over all day long! Also this the functionality must be of competition with the local (CTRL + F) tag.. Please someone take over this issue.. Thanks :)

hey @EshanTrivedi21  Can you Please assign me this issue?

Yes @Abhay5855, you can work on this issue with @riteshsoni123

@riteshsoni123 plz take charge!

@riteshsoni123  I have also assigned the issue I guess we can work it out together , @EshanTrivedi21  thanks for assigning

Any progress @riteshsoni123 @Abhay5855 ?

Yes Started working on it Kindly provide some more time

what's the progress?? @Abhay5855

I have Implemented that need some time to add a search icon and functionality @EshanTrivedi21

@EshanTrivedi21  I have added the search bar and the search icon as well it is responsive too, and when user scrolls down and clicks ctrl + f  , it goes to the custom search bar and focus on it , Is there anything to add more or the issue was this much

Great work buddy!!! Keep up.
 @Abhay5855

Hello @EshanTrivedi21 Can you assign me as well, I have already created search feature for it.

@Abhay5855 please look into the matter and review the changes made by @MSamiDev once, since you're already working on this issue.. I have reviewed these changes and they same to be fine.. please review the changes once so that I can accept it and you can further make the changes you want
Great job guys with this @Abhay5855 @MSamiDev

@EshanTrivedi21 Sure I will check once with @MSamiDev  and let you know

@Abhay5855 do I merge the pr and then you can make tje necessary changes?

@EshanTrivedi21 Sure you can do that as well no problem I have also created a PR for the same
https://github.com/EshanTrivedi21/Git-CheatSheet/pull/77

which on do i accept? @Abhay5855

There are alot of conflicts coming in your pull request @Abhay5855 , sorting which would take like an hour, what i can do is merge @MSamiDev's pr and then you can change the things you want? this would minimize everyone's work

Hello @Abhay5855 and @EshanTrivedi21,
@Abhay5855  do you have some suggested changes that you can make in my PR(Design, Functionality), Then  @EshanTrivedi21  You can merge the PR and then @Abhay5855  can do the necessary changes.

yup i will go on with that @MSamiDev, @Abhay5855 plz make the changes you feel like.. great going guys 🚀🚀

@MSamiDev Sure man

@EshanTrivedi21 Sure you can go with @MSamiDev PR I will make the necessary changes in there if required.

@Abhay5855 I have merged @MSamiDev 's pr, please take a look and add a pr making the necessary changes

@EshanTrivedi21 Yes sure I will do that

@EshanTrivedi21 i have refactored the search bar and add some styling can you check once please
https://github.com/EshanTrivedi21/Git-CheatSheet/pull/84


Facing test issues on PPC64LE for the version v2.50.0

What happened?
tox -c tox.ini run -e py311
.pkg: _optional_hooks> python /usr/local/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta legacy
.pkg: get_requires_for_build_sdist> python /usr/local/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta legacy
.pkg: get_requires_for_build_wheel> python /usr/local/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta legacy
.pkg: prepare_metadata_for_build_wheel> python /usr/local/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta legacy
.pkg: build_sdist> python /usr/local/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta legacy
py311: install_package> target/.tox/py311/bin/python /script/beam/sdks/python/target/.tox/py311/bin/pip install --retries 10 --pre --force-reinstall --no-deps /script/beam/sdks/python/target/.tox/.tmp/package/42/apache-beam-2.50.0.tar.gz
py311: commands_pre[0]> python --version
Python 3.11.2
py311: commands_pre[1]> pip --version
pip 23.2.1 from /script/beam/sdks/python/target/.tox/py311/lib/python3.11/site-packages/pip (python 3.11)
py311: commands_pre[2]> pip check
No broken requirements found.
py311: commands_pre[3]> bash /script/beam/sdks/python/scripts/run_tox_cleanup.sh
py311: commands[0]> python apache_beam/examples/complete/autocomplete_test.py
Traceback (most recent call last):
File "/script/beam/sdks/python/apache_beam/examples/complete/autocomplete_test.py", line 26, in
import apache_beam as beam
File "/script/beam/sdks/python/target/.tox/py311/lib/python3.11/site-packages/apache_beam/init.py", line 88, in
from apache_beam import io
File "/script/beam/sdks/python/target/.tox/py311/lib/python3.11/site-packages/apache_beam/io/init.py", line 28, in
from apache_beam.io.parquetio import *
File "/script/beam/sdks/python/target/.tox/py311/lib/python3.11/site-packages/apache_beam/io/parquetio.py", line 679, in
class _ParquetSink(filebasedsink.FileBasedSink):
File "/script/beam/sdks/python/target/.tox/py311/lib/python3.11/site-packages/apache_beam/io/parquetio.py", line 733, in _ParquetSink
def write_record(self, writer, table: pa.Table):
^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'Table'
py311: exit 1 (1.32 seconds) /script/beam/sdks/python> python apache_beam/examples/complete/autocomplete_test.py pid=116863
py311: commands_post[0]> bash /script/beam/sdks/python/scripts/run_tox_cleanup.sh
.pkg: _exit> python /usr/local/lib/python3.11/site-packages/pyproject_api/_backend.py True setuptools.build_meta legacy
py311: FAIL code 1 (13.44=setup[10.19]+cmd[0.00,0.41,1.46,0.03,1.32,0.03] seconds)
evaluation failed :( (13.64 seconds)
Issue Failure
Failure: Test is continually failing
Issue Priority
Priority: 0 (outage / failing precommit test impacting development)
Issue Components

[X] Component: Python SDK
[ ] Component: Java SDK
[ ] Component: Go SDK
[ ] Component: Typescript SDK
[ ] Component: IO connector
[ ] Component: Beam examples
[ ] Component: Beam playground
[ ] Component: Beam katas
[ ] Component: Website
[ ] Component: Spark Runner
[ ] Component: Flink Runner
[ ] Component: Samza Runner
[ ] Component: Twister2 Runner
[ ] Component: Hazelcast Jet Runner
[ ] Component: Google Cloud Dataflow Runner

I suggest we  track this in https://github.com/apache/beam/issues/28410. let me know if you have any concerns.


Integration Tests

Hi
Please have a look at this and let me know what do you think about it. I hope this saves us all the time we spend on manually testing our work.
Integration Tests
Integration tests are meant to test the project with real data. This is a semi-automated test and a tester needs to interact with bot for some cases during the test execution. However, tester can select specific test(s) and run them.

Code is available in tests branch of this repo: https://github.com/TelegramBots/Telegram.Bot.Core/tree/dev

For testing, a .NET Core xUnit project is used. Test project could be run in VS, CLI, or a CI hosting.
See sample output on Travis-CI here: https://travis-ci.org/TelegramBots/Telegram.Bot.Core/builds/251359910
And this is what bot posted in Telegram chat while running those tests:

Those arrows indicate the test cases that tester needs to interact with bot.

Test Setup
A Telegram bot, of course, is needed and its token should be provided to the runner in appsettings.json file or from environment variable prefixed by TelegramBot_.
Other optional parameters such as the UserId and ChatId could be used to send output to a specific chat/user.
Test Initiation
Bot needs to know the chat it should post to. There are 2 ways to tell it.
/test Command
When test project starts, bot waits for 2 minutes to receive a /test command update from any chat. Once gets that, starts the process and outputs to that chat.
Specific Chat ID
If Chat id is specified in the configurations, bot doesn't wait for any initiation command and sends the output to that chat.

I like this very much, always wanted some tests 👍

@pouladpld I like them, I have tried them, but for some reason, it shows they all failed when I finish. Every single one was terminated by a TaskCancelledException or sth xD
Though I saw that everything worked fine during execution, that seems a little bit strange to me :)

@Olfi01 This is unusual! There is a timeout of mostly 2 minutes that tests wait for tester to interact. Passing that, async operation tokens are going to be cancelled.
Make sure your test bot has the followings:

Inline Query
Payment Provider

Unfortunately, it is easy to miss some settings so verify that the configuration values are read correctly in tests. Just put some breakpoints and check values such as PaymentProviderToken.

@pouladpld I have done all of that, the test executed perfectly fine and even showed a success status, but after i finished all, the errors came up. Probably it's just a bug of visual studio and not your fault :)

@Olfi01 Try running them from dotnet core CLI. Does it behave the same?

@pouladpld err im busy with sth els rn i will do that later

@pouladpld sorry had to delete the core repo to Transfer the main repo (I have a local copy)
would you like to create a branch for developing the test Project?

That's fine. I pushed them here: https://github.com/pouladpld/telegram.bot/tree/dev
I am merging them right now. Too bad I didn't make a copy of notes in Project section of Core repo 😞 .

I merged them and all test cases are passing.
https://github.com/TelegramBots/telegram.bot/blob/integ-tests/docs/wikis/tests/integ-tests.md


scoring correction - points awarded on death

Synchronizing scoring mechanism with the description - when a player dies, they only gets as many points as many players dies before them (themselves excluded).
This correction also avoids surviving players getting the same amount of points as the player that dies last before the game ends.
Example scenario:
Alice, Bob and Charlie are the players. In an unusually boring party, Alice destroys Bob's only base, killing Bob, and then nothing happens in the rest of the game.
How the scoring works without the fix:
Alice gets 1 point for destroying Bob's base.
Bob gets 1 point upon his death.
Alice and Charlie both get 1 point for survival at the end of the match.
Total: Alice 2, Bob 1, Charlie 1
How the scoring works without the fix:
Alice gets 1 point for destroying Bob's base.
Bob does not get any points upon his death (as there was no player dying before him).
Alice and Charlie both get 1 point for survival at the end of the match.
Total: Alice 2, Bob 0, Charlie 1

Absolutely correct, Bob should get 0 points. Thanks!


fixes the docker-compose & git clone errors

Hi @frankh
Great work. I fixed some minor things and updated Roundcube to the tag 1.1.4.
See this for why.

Thanks @zstarer!
Haven't tried building it in a while - I should switch it to using images from docker hub i guess


use 3 sentinel instances in unit testing

Signed-off-by: Dmitry Shmulevich<EMAIL_ADDRESS>

Thanks! I guess you are trying to fix the build... I am not sure bug I guess it is related to recent change in SingleConnPool - I will give it a try too...

Thanks @vmihailenco. Yes, I've been debugging sentinel test. I noticed that single sentinel instance constantly alternates the slaves when it tries to elect a new master. With three sentinel instances that doesn't happen.
However, I'm still getting net.OpError("use of closed network connection") when connecting to the newly elected master.
I will keep troubleshooting when I have spare cycles.


Set up CircleCI to publish a -SNAPSHOT to maven central when master builds is successful

the only thing I'd be worried about here is pushing our Sonatype credentials to CircleCI so that it can upload....


lib/bmc_network_security_utils.robot   *** Keywords *** header missing

Several tests in security/test_bmc_network_security.robot had been working until recent changes to lib/bmc_network_security_utils.robot. After the changes several formerly passing tests failed with the message:
No keyword with name 'Send Network Packets And Get Packet Loss'
I found that the *** Keywords *** header was missing in lib/bmc_network_security_utils.robot and added it.
Subsequently, the aforementioned error disappeared.

The upstream has the resource added https://github.com/openbmc/openbmc-test-automation/blob/master/security/test_bmc_network_security.robot#L10
Resource                ../lib/resource.robot
Resource                ../lib/bmc_redfish_resource.robot
Resource                ../lib/ipmi_client.robot
Resource                ../lib/bmc_network_security_utils.robot

so probably you level is bit lower where the recent changes were made, Please rebase


Remove unused C2DM permission

This declaration can cause problems if used in multiple apps, since the permission name must be unique.
Since we aren't actually using this permission (and in fact this isn't the modern way to use GCM), let's just remove it.
@BenjiLee

👍  merge away


install_data.py requires more than 30 GiB of memory

It seems like install_data.py -- in particular https://github.com/davek44/Basset/blob/6ae86b88a8df8607c58590ee84a3702662ac33dc/install_data.py#L113 and https://github.com/davek44/Basset/blob/master/src/seq_hdf5.py#L73 -- requires a lot of memory. It deterministically runs OOM on a GCE instance with 30 GiB of memory. After changing https://github.com/davek44/Basset/blob/6ae86b88a8df8607c58590ee84a3702662ac33dc/install_data.py#L113 to
seq_hdf5.py \
  -c \
  -t 71886 \
  -v 70000 \
  encode_roadmap.fa encode_roadmap_act.txt encode_roadmap.h5

install_data.py passes on the same machine. If the "-r" option is not required, then perhaps disable it by default and make it an option at the top. Otherwise, please document the memory requirements. Thank you
Additional details:

GCE machine type: n1-standard-8 instance
GCE image: c1-deeplearning-common-cu100-20200422

Thanks for pointing this out. The DNA sequences stored as float16's are responsible for the high memory usage. I originally made that choice to allow for storing N's as 0.25 vectors, but I haven't found that to be very helpful in the years since. I just pushed a new commit to store them as booleans, which cuts the memory usage in half. (Python unfortunately uses 8 bits for a boolean.)
I also removed the "-r" option, which permutes the sequences before dividing into train/valid/test according to the current order. I believe the script should always permute, since input BED files will often be nonrandomly ordered. I recommend that you regenerate your training dataset with the new commit.

Thank you, @davek44 ! Let me play around with the new commit


GrpcCommandService - UNIMPLEMENTED: HTTP status code 404

[X] I have checked the FAQ, and issues and found no answer.

What version of pinpoint are you using?
2.3.0 etc.
Describe the bug
I observe these error logs when my application call an url that respond with HTTP 404:
09-30 23:49:07.007 [-Executor(12-0)] WARN  c.n.p.p.r.g.GrpcCommandService           -- Failed to command stream, cause=UNIMPLEMENTED: HTTP status code 404
invalid content-type: text/plain; charset=utf-8
headers: Metadata(:status=404,content-type=text/plain; charset=utf-8,x-content-type-options=nosniff,content-length=19,date=Thu, 30 Sep 2021 21:49:07 GMT)
DATA-----------------------------
404 page not found

io.grpc.StatusRuntimeException: UNIMPLEMENTED: HTTP status code 404
invalid content-type: text/plain; charset=utf-8
headers: Metadata(:status=404,content-type=text/plain; charset=utf-8,x-content-type-options=nosniff,content-length=19,date=Thu, 30 Sep 2021 21:49:07 GMT)
DATA-----------------------------
404 page not found

        at io.grpc.Status.asRuntimeException(Status.java:535) ~[grpc-api-1.36.2.jar:1.36.2]
        at io.grpc.stub.ClientCalls$StreamObserverToCallListenerAdapter.onClose(ClientCalls.java:478) [grpc-stub-1.36.2.jar:1.36.2]
        at io.grpc.internal.ClientCallImpl.closeObserver(ClientCallImpl.java:553) [grpc-core-1.36.2.jar:2.3.0]
        at io.grpc.internal.ClientCallImpl.access$300(ClientCallImpl.java:68) [grpc-core-1.36.2.jar:2.3.0]
        at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInternal(ClientCallImpl.java:739) [grpc-core-1.36.2.jar:2.3.0]
        at io.grpc.internal.ClientCallImpl$ClientStreamListenerImpl$1StreamClosed.runInContext(ClientCallImpl.java:718) [grpc-core-1.36.2.jar:2.3.0]
        at io.grpc.internal.ContextRunnable.run(ContextRunnable.java:37) [grpc-core-1.36.2.jar:2.3.0]
        at io.grpc.internal.SerializingExecutor.run(SerializingExecutor.java:123) [grpc-core-1.36.2.jar:2.3.0]

What did you do to trigger the bug?
My application call an url that respond with HTTP 404
Expected behavior
No erreor logs with `UNIMPLEMENTED: HTTP status code 404``

Hi @philippe-granet
Please let me know your whole Pinpoint environment.
Ex)
Agent 2.2.0
Collector 2.3.0
Web 2.2.0

Thanks :)

@koo-taejin all in version 2.3.0

Hi @koo-taejin I have the exactly same issue.
I explain you the context. We installed pinpoint on a cluster swarm. We have a DNS to access to pinpoint. The traffic pass by traefik for the routing on cluster swarm. We have multiple applications with the agent. All application are on windows VM. Agent and server use the same version 2.3.0 . Always work perfectly except we had an issue on the cluster Swarm and we need to stop and restart with a 24 hours of delays between the stop and the restart. After the restart all agent doesn't succes to reconnect to the agent with the same error than @philippe-granet .
If we restart each application with agent, the agent succeed to reconnect to the server.
Do you have an idea ?
Reagard


Port across TouchHandler from osu-stable to disable common windows touch handling

                    Native.SetProp(windowHandle, pressAndHoldAtomStr,
                        Native.TABLET_DISABLE_PRESSANDHOLD |
                        Native.TABLET_DISABLE_PENTAPFEEDBACK |
                        Native.TABLET_DISABLE_PENBARRELFEEDBACK |
                        Native.TABLET_DISABLE_FLICKS |
                        Native.TABLET_DISABLE_SMOOTHSCROLLING |
                        Native.TABLET_DISABLE_FLICKFALLBACKKEYS |
                        Native.TABLET_ENABLE_MULTITOUCHDATA);

I believe we want these disabled automatically so the user doesn't need to turn them off at a system level.

Looks like SDL already sets this (in a different way): https://github.com/libsdl-org/SDL/blob/7e15ad2fc4f610482c2f7b23a6fb2838c8759f93/src/video/windows/SDL_windowsevents.c#L1297-L1310.
(Noticed the SDL code while looking at something else, have not tested if any of this actually disables as advertised.)

Nice find. Will close this for now.
The remaining issues with touch input are being tracked via https://github.com/ppy/osu-framework/issues/5033.


Create "Installation" icon

Issue to track the design of an Installation icon for the sidebar.
Context

https://github.com/daytonaio/docs/pull/25#issuecomment-2136798065
Icon exists but needs some changes before merging.

cc: @mikimih @filipvecek - feel free to open a PR

@osslate can you share option from the icon family that work here?

Fixed in #25


pyproject.toml config not respected when run with pre-commit (but pyrightconfig.json works if created)

I'm having issues with pyright-python where the settings under [tool.pyright] are not being picked up when run via pre-commit. Works fine if i add a pyrightconfig.json, but when using pyproject.toml it is unable to find my pyright configuration.
My .pre-commit-config.yaml looks like this:
repos:
  - repo: https://github.com/astral-sh/ruff-pre-commit
    rev: v0.4.10
    hooks:
      - id: ruff
        exclude: some_dir
      - id: ruff-format
        exclude: some_dir

  - repo: https://github.com/RobertCraigie/pyright-python
    rev: v1.1.369
    hooks:
      - id: pyright
        # args: ["--project=/home/REDACTEDNAME/src/REDACTED", "--verbose"] # changes nothing
        args: ["--verbose"]

Output from poetry run pyright --verbose with PYRIGHT_PYTHON_DEBUG env var set (correct, respects my settings in pyproject.toml and ignores errors in some_dir):
2024-06-27 12:18:01,835 - DEBUG - pyright.utils - Latest pyright-python version is: 1.1.369
2024-06-27 12:18:01,836 - DEBUG - pyright.node - Checking for global target binary: node
2024-06-27 12:18:01,837 - DEBUG - pyright.node - Found global binary at: /usr/local/bin/node
2024-06-27 12:18:01,838 - DEBUG - pyright.node - Global binary exists at: /usr/local/bin/node
2024-06-27 12:18:01,838 - DEBUG - pyright.node - Running node command with args: ['/usr/local/bin/node', '/home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/index.js', '--verbose']
Loading pyproject.toml file at /home/REDACTEDNAME/src/REDACTED/pyproject.toml
Assuming Python version 3.12.0.final.0
Search paths for file:///home/REDACTEDNAME/src/REDACTED
  /home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/dist/typeshed-fallback/stdlib
  /home/REDACTEDNAME/src/REDACTED
  /home/REDACTEDNAME/src/REDACTED/typings
  /home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/dist/typeshed-fallback/stubs/...
  /home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages
  /home/REDACTEDNAME/src/REDACTED
Found 90 source files
Could not import 'h2' in file '/home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages/httpx/_client.py'
  Looking in stubPath 'file:///home/REDACTEDNAME/src/REDACTED/typings'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED/typings'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED/typings'
  Looking in root directory of execution environment 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Looking for typeshed stdlib path
  Looking for typeshed stdlib path
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/dist/typeshed-fallback/stdlib'
  Typeshed path not found
  Finding python search paths
  Found path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib'; looking for site-packages
  Did not find 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/site-packages', so looking for python subdirectory
  Found path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Did not find 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib64'
  Did not find 'file:///home/REDACTEDNAME/src/REDACTED/.venv/Lib'
  Found the following 'site-packages' dirs
    file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages
    file:///home/REDACTEDNAME/src/REDACTED
  Looking in python search path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Looking in python search path 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Looking for typeshed third-party path
  Looking for typeshed stubs path
  Typeshed path not found
Could not import 'h2' in file '/home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages/httpx/_client.py'
  Looking in stubPath 'file:///home/REDACTEDNAME/src/REDACTED/typings'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED/typings'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED/typings'
  Looking in root directory of execution environment 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Looking for typeshed stdlib path
  Looking for typeshed stdlib path
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/dist/typeshed-fallback/stdlib'
  Typeshed path not found
  Finding python search paths
  Found path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib'; looking for site-packages
  Did not find 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/site-packages', so looking for python subdirectory
  Found path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Did not find 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib64'
  Did not find 'file:///home/REDACTEDNAME/src/REDACTED/.venv/Lib'
  Found the following 'site-packages' dirs
    file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages
    file:///home/REDACTEDNAME/src/REDACTED
  Looking in python search path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED/.venv/lib/python3.12/site-packages'
  Looking in python search path 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve stub package using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Attempting to resolve using root path 'file:///home/REDACTEDNAME/src/REDACTED'
  Looking for typeshed third-party path
  Looking for typeshed stubs path
  Typeshed path not found
Heap stats: total_heap_size=91MB, used_heap_size=59MB, cross_worker_used_heap_size=59MB, total_physical_size=91MB, total_available_size=2035MB, heap_size_limit=2096MB
Heap stats: total_heap_size=115MB, used_heap_size=95MB, cross_worker_used_heap_size=95MB, total_physical_size=115MB, total_available_size=1999MB, heap_size_limit=2096MB
pyright 1.1.369
0 errors, 0 warnings, 0 informations
Completed in 2.635sec

Output from poetry run pre-commit with PYRIGHT_PYTHON_DEBUG env var set (incorrect, does not ignore some_dir):
2024-06-27 12:19:40,088 - DEBUG - pyright.utils - Latest pyright-python version is: 1.1.369
2024-06-27 12:19:40,089 - DEBUG - pyright.node - Checking for global target binary: node
2024-06-27 12:19:40,090 - DEBUG - pyright.node - Found global binary at: /usr/local/bin/node
2024-06-27 12:19:40,091 - DEBUG - pyright.node - Global binary exists at: /usr/local/bin/node
2024-06-27 12:19:40,091 - DEBUG - pyright.node - Running node command with args: ['/usr/local/bin/node', '/home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/index.js', '--verbose', 'REDACTED/REDACTED.py']
Loading pyproject.toml file at /home/REDACTEDNAME/src/REDACTED/pyproject.toml
Assuming Python version 3.12.0.final.0
No include entries specified; assuming /home/REDACTEDNAME/src/REDACTED
Auto-excluding **/node_modules
Auto-excluding **/__pycache__
Auto-excluding **/.*
Search paths for file:///home/REDACTEDNAME/src/REDACTED
  /home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/dist/typeshed-fallback/stdlib
  /home/REDACTEDNAME/src/REDACTED
  /home/REDACTEDNAME/src/REDACTED/typings
  /home/REDACTEDNAME/.cache/pyright-python/1.1.369/node_modules/pyright/dist/typeshed-fallback/stubs/...
  /home/REDACTEDNAME/.pyenv/versions/3.12.0/lib/python3.12
  /home/REDACTEDNAME/.pyenv/versions/3.12.0/lib/python3.12/lib-dynload
  /home/REDACTEDNAME/.cache/pre-commit/repolk8y0b8c/py_env-python3.12/lib/python3.12/site-packages
Found 1 source file
Could not import 'httpx' in file '/home/REDACTEDNAME/src/REDACTED/REDACTED/some_dir/client.py'
  **...redacted**
Could not import 'attrs' in file '/home/REDACTEDNAME/src/REDACTED/REDACTED/some_dir/redacted1/redacted2.py'
  **...redacted**
  Looking for typeshed third-party path
  Looking for typeshed stubs path
  Typeshed path not found
pyright 1.1.369
/home/REDACTEDNAME/src/REDACTED/REDACTED/REDACTED.py
  /home/REDACTEDNAME/src/REDACTED/REDACTED/REDACTED.py:24:23 - error: Expected no arguments to "Redacted" constructor (reportCallIssue)
  /home/REDACTEDNAME/src/REDACTED/REDACTED/REDACTED.py:35:22 - error: Expected no arguments to "Redacted2" constructor (reportCallIssue)
  /home/REDACTEDNAME/src/REDACTED/REDACTED/REDACTED.py:66:22 - error: Expected no arguments to "Redacted3" constructor (reportCallIssue)
3 errors, 0 warnings, 0 informations
Completed in 0.726sec

I have a poetry.toml containing this:
[virtualenvs]
in-project = true

and my pyproject.toml contains this section:
[tool.pyright]
include = ["REDACTED"]
exclude = ["REDACTED/some_dir"]
venvPath = "."
venv = ".venv"

What could be the issue here? Again, if i move the config from pyproject.toml to a pyrightconfig.json everything works so this is my workaround, but i don't understand why the settings in pyproject.toml would be ignored only when through pre-commit

Funny thing is that it finds the pyproject.toml file according to:
Loading pyproject.toml file at /home/REDACTEDNAME/src/REDACTED/pyproject.toml
Assuming Python version 3.12.0.final.0
No include entries specified; assuming /home/REDACTEDNAME/src/REDACTED


Check if localstorage is supported

Description
Update is localstorage supported method
Check if it's supported before accessing localstorage
Fixes #3960
Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?

manually

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes

/ok-to-test sha=c854409

/ok-to-test sha=7cbea70


Remove unneeded hyperlink in CustomFoodList and RecipeList

What did you do and why?

Remove unneeded hyperlink in CustomFoodList and RecipeList

Resolves #90

Easy - done! Wait at least 5 minutes for it to be deployed and you'll be good to go :)


Add support for window.ai

Desciption
Chrome is adding window.ai for embedding the Gemini Nano Ai model in Chrome natively.This pr adds the kotlin/js external declerations  for AiManager so we can use it in kobweb apps. I've also added an example Ai Page in playground
Overview - https://developer.chrome.com/docs/ai/built-in
Playground Demo
https://github.com/varabyte/kobweb/assets/68665948/543459c1-2c1f-47ea-b131-72e4605c793e

Ah, sorry if I wasn't clear in the discord server. I don't think this change belongs in the official Kobweb codebase -- we only want to support widely supported, cross-browser features here. I don't think it would be a good precedent to support a chrome-only feature.
However, if you want to publish a library from your own github repository, I'll be happy to surface it somewhere near the top of the README!

Another option would be to create a template demo project. I'd be happy to include that in the kobweb-templates repo actually.

we only want to support widely supported, cross-browser features here.

That makes sense. Perhaps in the future, if the APIs become standardized and widely adopted across browsers, you might consider including them.
I'll open a pr in templates repository to include a demo


Engine: Try to use numpy
array for board

This would require an insane amount of work to implement, without even being sure that the performance payoff will be worth it. I wouldn't work on this for the next few milestones, probably not at all in the given time period of the project.

It might actually be that numpy arrays are not faster but slower. I only experimented a little bit with it, but it seemes like small numpy arrays (and especially string ndarrays) are much slower then simple lists. I will have to test to see if the same is true for integer arrays.

They are indeed slower. Using normal lists for the board backend is what we will settle for the time being.


PDL Download and View Links aren't the same

In the hackathon projects section, the links for the PDL project have a couple issues.
It looks like the first link is to the EDI.  It's fine for those to be different but it may help to articulate the difference between the two.
Also, for the view link, I'd recommend https://github.com/GSA/open.gsa.gov/blob/gh-pages/data.json instead and maybe http://open.gsa.gov/data.json for the Download Link.
Then you could perhaps use the salesforce link for a 3rd link, for the Enterprise Data Inventory.
cc @JSGGSA

Try this out - https://github.com/GSA/open.gsa.gov/pull/42

This is done - https://github.com/GSA/open.gsa.gov/pull/42


Flink 33386 review splited commits for ci

What is the purpose of the change
Only for checking the CI-validation for every independent commit.

@flinkbot run azure

@flinkbot run azure

@flinkbot run azure


[BUG] Robot Code crashes with a variables file containing a Dict[str, Callable]

Describe the bug
Given test.robot
*** Settings ***
Variables    variables.py

with variables.py
def is_valid_name():
    return True

pet = {"name": is_valid_name}

Robot Code crashes with "A process in the process pool was terminated abruptly while the future was running or pending"
To Reproduce
Steps to reproduce the behavior:

Create the above files
Open their parent directory in VS Code
Wait for Robot Code to finish loading
See the error

Expected behavior
Robot Code should not crash.
Screenshots/ Videos
None
Logs
Copy the messages from VSCode "Output" view for RobotCode and RobotCode Language Server for the specific folder/workspace.
RobotCode
Activate RobotCode Extension.
Try to activate python extension
Python Extension is active
create Language client: RobotCode Language Server mode=pipe for folder "test"
trying to start Language client: RobotCode Language Server mode=pipe for folder "test"
client for file:///c%3A/Users/mardukb/Desktop/test starting.
client for file:///c%3A/Users/mardukb/Desktop/test running.
client for file:///c%3A/Users/mardukb/Desktop/test started.
refresh uri file:///c%3A/Users/mardukb/Desktop/test/test.robot
refresh uri file:///c%3A/Users/mardukb/Desktop/test/test.robot
refresh uri file:///c%3A/Users/mardukb/Desktop/test/test.robot
refresh uri file:///c%3A/Users/mardukb/Desktop/test/test.robot
refresh uri file:///c%3A/Users/mardukb/Desktop/test/test.robot
refresh uri file:///c%3A/Users/mardukb/Desktop/test/test.robot
RobotCode Language Server
empty
Desktop (please complete the following information):

VS Code Version 1.76.0
RobotCode Version 0.27.1
OS: Windows
Python Version 3.8.10
RobotFramework Version 6.0.2
Additional tools like robocop, robotidy: None

Additional context
None

I cannot reproduce it, does this happens everytime?
It seems that this
pet = {"name": is_valid_name}

can be a problem, because the value is a function instance and you cannot serialize a function. Is that really supposed to be a function?

ok, did not read it correctly you want to have a function in a dict ;-)
but why?

When testing REST APIs it can be useful to define the specification for the response body using a dictionary of functions. The reason for using functions is composition of reusable abstractions. And yes, I took inspiration from clojure.spec :)
But anyway, the robot executable has no problem with such a dictionary in a variables file and as a user of Robot Code I expect that what is valid for robot is valid for Robot Code.
And in any case I definitely expect Robot Code to not crash ;)

Exactly ;-)
Or to remove not simple types like this for serialization. The main problem here is the caching mechanism. I will find a way  ;-)

After analysing this a bit deeper, I think the best solution at the moment, is to disable the values in hints for dicts and lists because I can't predict what types are in the dict and if a dict has a dict as an element and then another dict etc it gets complicated.
Maybe a better solution will be found in the future.
But it might be possible to show more type information about the variables, that's why I created an Enhancement Request #128.
Hope this fits for you?

Thanks a lot Daniel! I think that for dictionaries having auto-completion for the keys (as long as they are strings) would be more helpful than a tooltip. This can be used to navigate through nested dictionaries.
And I think that for both dicts and lists it would be useful to show the type in the tooltip (e.g. type(var)) so that you know how to access their elements.


Add a pseudo-count before drawing volcano plots

Hi
I noticed the main code of ANCOM2 did not add a pseudo-count of 1 to the feature table before drawing the volcano plot. Will you consider to add a pseudo-count of 1 before drawing the volcano plot? So that all low-abundance taxa can be positive.

Hi @yxia0125 ,
ANCOM automatically adds a pseudo-count of 1 in its function. For details, you can check line 139 here.
Best,
Huang


mpv: 0.20.0 -> 0.21.0

Motivation for this change
update mpv
changes see:
https://github.com/mpv-player/mpv/releases
or
https://git.srsfckn.biz/mpv/log/?qt=range&q=v0.20.0..v0.21.0
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.

Tested, thanks!


Didn’t find the right anime on request. How to fix it?

Didn’t find the right anime on request.
Original title: Aharen-san wa Hakarenai
Aharen Is Indecipherable

your image is flipped.

flipped again

How to fix it?

Before uploading your image, filp your search image using other image editing tool, like MS Paint


Reassess secureHardwareCheck

See if the method that returns the availability of Secure Hardware on devices does the job correctly, and if not see what the alternatives are.

Because there is no fail-safe way to detect if the device has secureHardware (SE or alternatives) the function has been removed from SecureStorage2.0 in the same manner as it was always in SecureStorage


Create example of user_defined_federate

Is this managed in a wiring_diagram.json or not? It seems unclear.

This is managed through https://github.com/openEDI/oedi-si-single-container/blob/main/runner/user_config.json. Added relevant info in commit e52d8e960a3a7de0d225b94e88fcdf3a078b3134


Suggested Pages

A list of additional pages that should be added in future. If anyone wishes to write them, please do so and make a PR.

[x] Installation guide

[ ] Maybe include vendor specific oddities such as the LGS/GHUB option for Logitech

[x] Importing/exporting guide
[ ] Basic troubleshooting/FAQ

[ ] How to diagnose errors
[ ] Mention high CPU usage (e.g. ambilight layers, bitmap accuracy etc.)
[ ] Adding startup delays

[ ] List of blocked games?

[ ] Pick visualizer layer audio device (virtual audio cable)

Add information about the new Razer layer + update https://wibble199.github.io/Aurora-Docs/docs/reference-layers/wrapper.html


City of Turku background maps

City of Turku has released it's map data in CC-BY 4.0 with an OSM waiver. The iD editor could include some maps from City of Turku as background maps.
Specifically, I would like to have two maps from this feed:

"Turun asemakaava" (Zoning plan of Turku)
"Turun maastokartta" (Terrain map of Turku).

Sounds great, @ilmaisin. iD gets its imagery from the editor-layer-index so you'll need to open this issue over there. Thanks!


Add ability to change between light and dark mode

Fixes #36
Added 2 commands to toggle between light and dark mode

Codecov Report

Merging #65 (e34cba8) into master (abea08e) will decrease coverage by 2.60%.
The diff coverage is 46.70%.

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


Slithering Snacks

mm

Fancy project! Documentation in README is great and also inside the files with function docstrings being filled in detail, but it would be nice if all functions could be documented.
Not sure about delegating the jobs off to ffprobe and if you are going to it I'd like to see some comments maybe explaining about what the different flags are for.
Overall code quality is pretty excellent, but you have used a mix of double and single quotes in places.

I think you are mistaken on the mixed single/double quotes. There is a flake8 plugin in place which would cause the linter to fail if that was the case. I double checked anyway and couldn't find any mixed quotes.

Oh yeah, indeed I was. Apologies about that one!


Rails 6.1 with Docker, error loading shared library ld-linux-x86-64.so

What version of gRPC and what language are you using?

gRPC Version: 1.59.2
Ruby: 3.03.

What operating system (Linux, Windows,...) and version?

OS: macOS Sonoma 14.0.
Chip: Apple M1 Pro.

What runtime / compiler are you using (e.g. python version or version of gcc)

Ruby on Rails version 6.1.
Docker: FROM ruby:3.0.3-alpine.

What did you do?

Added gem 'grpc' to a RoR (6.1) project's Gemfile.
Run docker compose up --build in a terminal (in the project's Dockerfile, bundle install is included).

What did you expect to see?
No error message, and gRPC is successfully added in the project, able to use gRPC in the project.
What did you see instead?
In the terminal, this error message is shown:

Anything else we should know about your project / environment?
EDIT: My workaround to solve this is changing the docker image to ruby:3.0.3.

You are running with Docker on M1 Mac, which should be aarch64 Linux, and for now you'll need to build GRPC from source.
However according to your log, you appears have a x86_64 grpc installed, which is why if failed to load. To solve this you can try either

check your docker file and make sure you are installing GRPC from source, or
run docker in x86 emulation by passing --platform linux/amd64 (could be very slow)

I think the problem is mainly that the image the OP says they were using is Alpine based, which is why the workaround was to use a non-alpine image.
There’s no glibc on alpine so these SOs and symlinks aren’t there. Even with the right architecture, that won’t work. While compatibility layers like gcompat sometimes work, and some folks add glibc into alpine against the alpine maintainers’ advice, generally this is unsupported. Would need to compile grpc from source against must libc (if supported by grpc) but probably more hassle than it’d be worth.
this ticket should probably be closed?

Ah right, I'll close this because it's resolved by changing the docker image.


docker-completion 1.12.2

Thank you for your contribution to Homebrew, @kongslund; we appreciate it! 🎉


Consider removing the pkl format option

[ ] Investigate the size difference between pkl and json

For my export of ~6k cards of content, the pkl is 107MB and the json is 304MB.
That's a significant enough difference that maybe it is worth it to keep it around, especially since it's not too much overhead to maintain.
Perhaps we just make json the default format (since it's easier to tweak and inspect) and document when you might use .pkl?

Crazy idea: encode embeddings the way they are encoded in a query: base64 float array. I wonder how much savings that would offer?

9b4f0543207c4e65eb77f9751efbe285080a5409 and c8002308e8875934eee6c58a08d2cbb66d325171 were part of moving to b64, and saving tons of space

[ ] Create a save_library(library, filename, format=None), which encapsulates the detection of filetype by the filename extension, falling back to format='json'. Now that the in-memory representation of libraries is no longer directly serializable there need to be a bit more logic.


Skip disabled faces when importing and exporting

Same as before, but now also exports. Box size info is kept even if there is only one face.

Still need to have the importer skip faces with "enabled": False