[BUG] - numpy overflow encountered in reduce

Thanks for sharing this package, I'm loving it!
I did run into a bug today. When I try to run dist_plot on my dataset, I get the following message:
\numpy\core_methods.py:160: RuntimeWarning:
overflow encountered in reduce
I isolated it down to one particular series in my dataframe. It's not one I really care about, but maybe someone else will run into it for a series they DO care about. Here's a describe() after running it through klib's data_cleaning function:
df.created_at.describe()
count    5.213400e+04
mean     1.610795e+12
std      4.225043e+08
min      1.609891e+12
25%      1.610552e+12
50%      1.610838e+12
75%      1.611198e+12
max      1.611274e+12
Name: created_at, dtype: float64
Meanwhile, info() reports something different:
df.info()
...
2   created_at       52134 non-null  float32
...
Notice one reports float32 while the other says float64... Seems fishy.
I'm using miniconda on Windows 10.
conda v4.9.2
numpy v1.19.5
klib v0.1.0
If you need me to provide my dataset, I can do so.

@Zalfrin I'm glad you like it and thank you for the detailed description of your issue.
Regarding the error: Try upgrading klib. v0.1.0 is pretty old and usually found on systems running python <3.7
If it doesn't work with the latest version (klib 0.1.5) please let me know and i'll look into it in detail :)

Whoops, I had some pretty messy dependencies going. You're right, that environment was back on python 3.6.
I set up a new minimal environment, package versions are now:
python 3.9.2
klib 0.1.5
numpy 1.20.1
Still seems to be a problem in the latest klib:

numpy\core_methods.py:178: RuntimeWarning: overflow encountered in reduce
ret = umr_sum(arr, axis, dtype, out, keepdims, where=where)

print(df.created_at.describe())
print(type(df.created_at[0]))
df.info()

Name: created_at, dtype: float64
<class 'numpy.float32'>
<class 'pandas.core.frame.DataFrame'>
Int64Index: 52134 entries, 0 to 52133
Data columns (total 32 columns):
Column           Non-Null Count  Dtype

2   created_at       52134 non-null  float32
Seems like the series thinks its a float64 while the dataframe and the numpy element itself think they're float32. 😕

Thanks for the update @Zalfrin, I can't immediately think of a reason why that behavior would be the case.
Could you make the relevant parts of your data available to me? From what I understand so far you're using klib.data_cleaning() and then klib.dist_plot() and the column "created_at" seems to contain UNIX timestamps that lead to an overflow when float32 dtype is used.
I'll try to reproduce it as soon as I find the time. :)


Use setImmediate when process.nextTick is undefined.

Hi, await-semaphone is cool :)
I want to use on ReactNative. ReactNative's JavaScript Runtime (JavaScriptCore on iOS, Android) is not define process.nextTick. but setImmediate is defined.

Thanks for the PR! I will merge and publish the updated package.

Thank you!


How can I create a new Azure Function app in monorepo

When I select the folder for the new app, it creates a new node_modules folder and a new package-lock.json even though the folder is within an npm workspace monorepo.
How should I correctly use the Azure Functions extension to create a new app within a monorepo?
// root file and folder view
./.git
./.devcontainer
./package.json --> workspace property is set to  "packages/*"
./package-lock.json
./packages/api --> new Azure Functions

@ggailey777
@glaucia86

Hi @dfberry,
Creating a monorepo Azure Function app isn't possible today, but is currently part of our backlog. https://github.com/microsoft/vscode-azurefunctions/issues/2521

Duplicate of https://github.com/microsoft/vscode-azurefunctions/issues/2521


Fix Routing's misuse of PathString

PathString is meant to be used with unencoded text. So in our case, we
should only be responsible for encoding slashes we don't want to
roundtrip.
This is working fine in 2.2 but it's inefficient so I'm targeting this
at 3.0

I also expect a nasty reaction PR from MVC 😢 - I think this pattern with TestEncoder was used in lots of places in MVC.

@natemcmaster - this will require cross-repo testing. Since this isn't urgent I'm going to pick this up after the Razor and MVC repos get merged.

Thanks for the heads up.

Closing as this repo is merging to aspnet/AspNetCore today.


Better Format Selection parameter to accommodate vertical/square video

Checklist

[x] I'm reporting a feature request
[x] I've verified that I'm running youtube-dl version 2021.06.06
[x] I've searched the bugtracker for similar feature requests including closed ones

Description

Summary

Addition of long edge/short edge instead of width/height, and bringing resolution note (tiny, 144p, 240p...) from --list-formats to FORMAT SELECTION (-f) would be a great update to accommodate increasingly popular vertical/square video formats.

Type of properties you can bring up in FORMAT SELECTION (-f) are: filesize, width, height, tbr, abr, vbr, asr fps. However width and height are swapped from usual when dealing with a vertical video which makes it harder to narrow down the resolution we want.

Example: what if I wanted to download up to 1080p videos in avc1(h264), but after that switch to av01, then vp9?
The intention here is to download the best quality video, but not end up with something stupid like a 720p av01 video,  squeezing the most out of avc1(h264) before moving to next codecs. Here's what I had come up with. (audio track omitted for readability)
-f "bestvideo[vcodec^=av01][width>1920]/bestvideo[vcodec^=vp9][width>1920]/bestvideo[vcodec^=avc1]"
It works pretty well for landscape videos. 720p video downloads in avc1(h264), 4K video downloads in av01, and when it's not available it fails back to 4K vp9. However once start throwing vertical videos at the script, things tend to get pretty messy quickly.
Vertical 1080p video example: https://youtu.be/quastuF2_7k

1080x1920 vp9 video available
fails [width>1920]
resorts to 810x1440 avc1(h264) video.

Programs that regularly handle both horizontal and vertical contents (such as Adobe Lightroom CC) deals with this problem with "Short Edge" and "Long Edge" parameters. It compares the width and height and assigns larger one to "long edge" and vice versa. Also simply bringing "note" property from --list-formats would be a much simpler and nicer solution to this problem as well.

Presumably you mean -f "bestvideo[vcodec^=av01][width>=1920]/bestvideo[vcodec^=vp9][width>=1920]/bestvideo[vcodec^=avc1]" or both 1080x1920 and 1920x1080 would have fallen back to avc1?
If you are looking for the resolution string displayed for -F, that's separate from the note, which is dynamically formatted from the format_note and various other properties of the format.
Currently the resolution property of a format is only available if it has been set by the extractor; a fallback value is generated and displayed in the format list if not (as in your 9:16 example linked above). It might be better if it were set for all formats with either the original or the fallback value.
Apparently YT sets a qualityLabel from which the format_note is created: eg, 1080p for format 313

You can make both vertical and landscape videos work using [height<=1080][width>=1080]/[width<=1080] instead of [height>1080] everywhere. Not a simple solution, but it works


List the tickets available under an event

Working on it :+1:

You can add ticket model and API till then

Sure :+1:


Adds dbm move

The module "anydbm" has been moved to "dbm" in Python 3.
Defines the "dbm" move from "anydbm".
[1] https://docs.python.org/2/library/anydbm.html

Hi, thanks for the PR. Could you please add this to the table in document/index.rst, please?

I think this branch has it backwards. This module moved from anydbm to dbm, not the other way around. https://docs.python.org/2.7/library/anydbm.html#module-anydbm

Closing as a duplicate of #299.


add a setting to avoid adding the namespace to method segments

The current conversion systematically adds the namespace of the method to the path segment.
While it might be desired in some contexts, most of the time it only makes URIs (and namespacing in code gen) longer.
I'm suggesting to add a convert setting to go from this for actions and functions
.../me/microsoft.graph.foo()

to that
.../me/foo()

The setting name would be something like "AppenNamespaceToMethodPathSegment` default true. When true the behaviour would stay the same as now, when false it'd be the new one.

actually @irvinesunday please hold any work on that. Looking into this week's generation result we have excel count functions conflicting with raw $count endpoints.
Assuming we leave the prefixes in place, and that we merge the kiota fix I linked, we'd get any method prefixed, which would solve the conflict. The only drawback is that it'd make for an uglier dev experience (client.Me.Drive.Item["foo"].Workbook.Worksheet["bar"].Tables.MicrosoftGraphCount.GetAsync() for the OData function)

actually @irvinesunday please hold any work on that. Looking into this week's generation result we have excel count functions conflicting with raw $count endpoints. Assuming we leave the prefixes in place, and that we merge the kiota fix I linked, we'd get any method prefixed, which would solve the conflict. The only drawback is that it'd make for an uglier dev experience (client.Me.Drive.Item["foo"].Workbook.Worksheet["bar"].Tables.MicrosoftGraphCount.GetAsync() for the OData function)

Noted!

Hey @baywet,
The MicrosoftGraphCount segment makes for a not-so-great dev experience which may not be worth it for the sake of what can be considered as an edge case.
Would it be possible to let this go on and detect duplicate segments after sanitization and try to disambiguate them from Kiota. From this library's perspective '/drives/{drive-id}/items/{driveItem-id}/workbook/tables/{workbookTable-id}/columns/count()' and
'/drives/{drive-id}/items/{driveItem-id}/workbook/tables/{workbookTable-id}/columns/$count' would still be two unique paths and technically the collision is caused by Kiota sanitizing the segment as https://github.com/microsoft/kiota/issues/2234 also needs to be fixed.

Thanks for reverting on this. I agree, the more I think about it, the more I think the fix lies within Kiota and not here.
With microsoft/kiota#2213 we've made a step in the right direction, but I missed one thing as you outline in microsoft/kiota#2234.
What will be left to fix after that is when path segments only differ in special characters, this one will be interesting as kiota is not parsing the tree in a deterministic reason for performance reasons. But that's probably an edge case of an edge case that can be sorted out when we get feedback about that.
Closing this here. No changes required for the conversion library. Thanks everyone.


add PreConnectExtensions, PreConnectHook

Some extensions such as VFSes need to be loaded before opening db file.
In the other languages' sqlite3 binding, this can be done by

opening temporary db
loading extension
connecting actual db file

, though this seems to be tricky.
I have checked in rust and python.
For example in rust, we can write it like the below
let conn_empty = Connection::open_in_memory()?;
conn_empty.load_extension("./vfsext", Some("sqlite3_vfsext_init"));
let conn = Connection::open(TARGET)?;

Unfortunately, this approach does not work with go-sqlite3.
I am not sure but this may be because of requirements as driver of database/sql.
Thus, PreConnectExtensions and PreConnectHook are added in the similar to rust example.

I don't understand why this would be a hook. If you need to do something before connecting to the database, you can just do it prior to calling sql.Open or sql.OpenDB. I wouldn't think you'd want to re-register a VFS every time a new connection is going to be opened.
Note that the existing ConnectHook is needed to configure the new connection each time a new one is established, since database/sql is really modeling a connection pool. For example, prior to the introduction of the _fk DSN option, the only way to ensure foreign keys got enabled on all connections was to do so via a hook.

thanks @rittneje

Note that the existing ConnectHook is needed to configure the new connection each time a new one is established, since database/sql is really modeling a connection pool. For example, prior to the introduction of the _fk DSN option, the only way to ensure foreign keys got enabled on all connections was to do so via a hook.

I see.
I added PreConnectHook for users who would like to use the optional second argument of loadExtension (entry name),
referring this example.
In most cases, we have chance to edit entry name of extension in c file directly.
So I do not hesitate to remove PreConnecHook .

@satotake If I understand correctly, these are the problems you are trying to address:

You have a custom extension that itself registers a custom VFS. Because of how SQLite itself (the C library) works, you basically need a dummy connection to load the extension to register the VFS, so you can then use that custom VFS for your real connection.
SQLiteDriver.Extensions is just a list of strings, so there's no way for you to specify a custom entrypoint to sqlite3_load_extension.

This "dummy connection" logic appears to be a standard mechanism for registering custom VFS. For example, this very process is described here: https://www.sqlite.org/cksumvfs.html In that case would it make more sense to add a specific function to this library to allow you to load an extension exclusively for its side effects? Internally it could just make some dummy connection but the client need not care about this. This also prevents your extension from getting reloaded/re-registered whenever a new connection is established via database/sql.

@rittneje

If I understand correctly, these are the problems you are trying to address:

Your understanding is right.

This "dummy connection" logic appears to be a standard mechanism for registering custom VFS.

I was trying to find any other better ways for a long time. Thanks.

In that case would it make more sense to add a specific function to this library to allow you to load an extension exclusively for its side effects?

If it is possible, it will be neat.
I suspect that this might be impossible because database/sql may prepares separated processes for some reasons (thread safety?) and we, in golang and sqlite, have to create fresh dummy db every time when sql.Open.
Anyway, I am trying what you said.

I suspect that this might be impossible because database/sql may prepares separated processes for some reasons (thread safety?) and we, in golang and sqlite, have to create fresh dummy db every time when sql.Open .

database/sql does not make separate processes. It can establish multiple connections, but they will all be from your single process. That is why having the driver treat this as a normal connection hook would be a problem.

Walking through sql/database code, I may be understanding what you said finally.
You are suggesting to implement Connector interface and etc, right?

No. Everything in the database/sql/driver package pertains to opening a single connection within the pool. You are trying to do something once globally (not once per connection), so the abstractions provided by database/sql will not help you.

hmm, confused again.

(not once per connection)

It is ideal that we can configure extensions per connection. But how to do it before opening connection?
I admit that Connector is more global than connection but less global than sql.Register.

It is ideal that we can configure extensions per connection.

You aren't trying to configure extensions per connection. When you register a VFS, it gets registered globally, not per connection. See https://www.sqlite.org/c3ref/vfs_find.html.
Under normal circumstances, you would just call sqlite3_vfs_register. However, instead this VFS has chosen to bundle itself as an extension, which internally calls sqlite3_vfs_register for you. But SQLite requires some connection in to call sqlite3_load_extension. This connection is totally irrelevant to your VFS extensions, because it is just using it as a means to an end. That is why the docs say to create a dummy in-memory database connection that gets thrown away.
So, you need to first load your extension once per run of your application, solely for the side effect of it calling sqlite3_vfs_register. Once that happens, you can use that VFS for your actual connections. You can still open other connections that choose not to use that VFS.
To do this, you don't need to use database/sql at all. For example, it might look like this:
package sqlite3

func LoadExtensionForSideEffects(string path) error {
    c, err := &Driver{Extensions: []string{path}}.Open(":memory:")
    if err != nil {
        return err
    }
    c.Close()
    return nil
}

Note: That function name is just for demonstration purposes.
To be clear, this hypothetical new function is just for client convenience. Nothing stops you from writing similar code in your own main.go right now (the extension entrypoint name issue aside).

It works !
I can not understand why go code similar to the previous rust example does not have any effect while this is valid side effect.
anyway thanks. I learned a lot from you.

I can not understand why go code similar to the previous rust example does not have any effect

Can you post the Go code that you were trying with that didn't work?

Of cource
package main

import (
	"database/sql"
	"fmt"
	"log"
	"net/url"

	"github.com/mattn/go-sqlite3"
)

func init() {
	sql.Register("sqlite3-ext", &sqlite3.SQLiteDriver{
		Extensions: []string{"./extension"},
	})
}

func main() {
	sql.Open("sqlite3-ext", "memory")

	uri := "some uri"
	db, err := sql.Open("sqlite3-ext", uri)
	if err != nil {
		log.Fatal(err)
	}

	rows, err := db.Query("select tbl_name from sqlite_master;")
	if err != nil {
		log.Fatal(err)
	}

	for rows.Next() {
		var name string
		err = rows.Scan(&name)
		if err != nil {
			log.Fatal(err)
		}
		fmt.Println(name)

	}
	err = rows.Close()
	if err != nil {
		log.Fatal(err)
	}
}

Ah, the reason that didn't work is because database/sql is lazy and doesn't open a connection until it has to. If you change it to this, then it should work.
dummy, err := sql.Open("sqlite3-ext", "memory")
if err != nil {
    ...
}
// Ping forces database/sql to actually open a driver connection.
if err  := dummy.Ping(); err != nil {
    ...
}
dummy.Close()

// This doesn't need to use your "sqlite3-ext" driver
// since the dummy connection has already registered
// the custom VFS.
db, err := sql.Open("sqlite3", uri)
...

Ah, the reason that didn't work is because database/sql is lazy

Totally clear!
This was my misunderstanding...
Current examples is misleading somehow in my opnion.
This registers it as another name but this does not matter because this affects globally (if my understanding is correct)

To be clear, this hypothetical new function is just for client convenience. Nothing stops you from writing similar code in your own main.go right now (the extension entrypoint name issue aside).

I think it is better to add the hypothetical functions as top-level one to clarify what happens here and improve the example
It seems that some developers have similar misunderstanding to mine.

Edit: previous comment
It depends on extensions that it has global effect or not. So this example is right and I was wrong again.
I appreciate @rittneje 's effort here.


Is it possible to switch to django default auth ?

Hello, a newbie here. Is it possible to switch back to default django authentication and how ?

@porosenoq Yes, you should check python-social-auth documentation on how to enable default Django Athorization Backend.


[ci skip] adding user @mbercx

Hi! This is the friendly automated conda-forge-webservice.
I've added user @mbercx as instructed in #3.
Merge this PR to add the user. Please do not rerender this PR or change it in any way. It has [ci skip] in the commit message to avoid pushing a new build and so the build configuration in the feedstock should not be changed.
Please contact conda-forge/core to have this PR merged, if the maintainer is unresponsive.
Fixes #3

@chrisjsewell forgot about the dependencies. 🙄

@chrisjsewell 😭😭😭😭😭

forgot about the dependencies. 🙄

and now think how long it took to get all these on conda forge 😉


polymorphism for entity's filed

Hello open api experts,  i meet some issue and want some help from you.
It is about polymorphism. i find some example here : https://github.com/OAI/OpenAPI-Specification/issues/2116.  want to reuse the pet scenario as example.
I define Pet, Cat, Dog. 3 yaml files.
Also, I have a entity Person ,  the yaml file like below.
description: Structure of person.
type: object
properties:
  name:
    type: string
  pet:
    $ref: 'pet.yaml'
required:
  - name
  - pet

what i find is, if i use above yaml,  Pet.java can be generated, but there is no cat.java and dog.java generated.
Then i update the Person.yaml file like blew :
description: Structure of person.
type: object
properties:
  name:
    type: string
  pet:
    oneOf:
        - $ref: '#/components/schemas/Dog'
        - $ref: '#/components/schemas/Cat'
required:
  - name
  - pet

The generated Person.java file has some error,   the filed "pet" 's.  type is "OneOfDogCat", and then it complain the "OneOfDogCat" class with complier error.
I think 1st approach seems better, but not sure why client not generate the Dog.java and Cat.java file.  Do you have any ideas on this problem,  any suggestion is appreciate.

What does pet.yaml contain?
As to the codegen/compiler errors, please raise tooling-related issues on the relevant repository. This repository is for the OpenAPI specification itself. You may also receive more answers on a general support forum such as StackOverflow. Thanks.

Closing due to inactivity - but please feel free to reopen the issue if necessary.


Removed Docker related files

Remove Docker related files as the official repositories are not using Docker to test the provider implementations. Let's follow the way the testing is done in official repositories.

Docker was not used for testing but for running & deploying the provider through a job scheduler. It's no longer needed since Terraform provides their own official containers.


AutoLayout prevents ListView child from scrolling

Current behavior

The ListView control cannot scroll by itself like it normally should because it's parent is an AutoLayout.
(Left is a ListView in a Grid, right is a ListView in an AutoLayout)

Expected behavior

Both should scroll correctly like the example on the left in the gif.
How to reproduce it (as minimally and precisely as possible)

Open the sample App, try to scroll both ListViews with your scroll wheel.
Sample App: https://github.com/thierry-fortin1/ListViewScrollingBug
Environment

Nuget Package:
PackageReference Include="Uno.WinUI" Version="4.4.13"
PackageReference Include="Microsoft.Extensions.Logging" Version="6.0.0"
PackageReference Include="Microsoft.WindowsAppSDK" Version="1.1.0"
PackageReference Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.22000.197"
PackageReference Include="Microsoft.Extensions.Logging.Console" Version="6.0.0"
PackageReference Include="Uno.Core.Extensions.Logging.Singleton" Version="4.0.1"
PackageReference Include="Uno.Extensions.Navigation.Toolkit.WinUI" Version="2.0.0"
PackageReference Include="Uno.Extensions.Reactive" Version="2.0.0"
PackageReference Include="Uno.Extensions.Reactive.WinUI" Version="2.0.0"
PackageReference Include="Uno.Toolkit.WinUI" Version="2.0.0"
PackageReference Include="Uno.Toolkit.WinUI.Material" Version="2.0.0"
Package Version(s):
Affected platform(s):

[X] iOS
[X] Android
[ ] WebAssembly
[ ] WebAssembly renders for Xamarin.Forms
[X] Windows
[ ] Build tasks

Visual Studio:

[ ] 2017 (version: )
[ ] 2019 (version: )
[ ] for Mac (version: )
[X] 2022 Preview (version: 17.3.0 Preview 3.0)

Relevant plugins:

[ ] Resharper (version: )

Anything else we need to know?

This is not a bug. Explanation: the <ScrollViewer /> NEEDS to be set with its alignment to Stretch to be able to scroll. That's not an issue, it's a spec.
Where it's hurting, it's because the default value of the attached property utu:AutoLayout.PrimaryAlignment is Auto, not Stretch, which gives the <ListView /> a non-stretch alignment.
Demonstration: https://playground.platform.uno/#00a406ba

@carldebilly but if we wrap a ScrollViewer around a ListView, don't we lose virtualization? Which could cost us performance wise with a lot of items. https://platform.uno/docs/articles/controls/ListViewBase.html#internal-implementation


Layout error in RMarkdown sheet

Hi.
Found a tiny error in the RMarkdown sheet. A newline is missing from the "Customize output with sub-options" section, html_document: should be on the next line.

Thanks! Fixed.


compilation for windows (msys64)

just to let you know, in order to get yue to compile on windows msys64, I had to do the following...
add to linenoise.hpp:
#include <strings.h>
change in makefile:
-std=c++17 to -std=gnu++17
(someone also suggested this will work for cmake: CMAKE_CXX_EXTENSIONS ON)
relevant errors:
Compiling: src/yue.cpp -> build/release/yue.o
In file included from src/yue.cpp:31:
./src/3rdParty/linenoise.hpp: In function ‘bool linenoise::isUnsupportedTerm()’:
./src/3rdParty/linenoise.hpp:1590:14: error: ‘strcasecmp’ was not declared in this scope; did you mean ‘strncmp’?
 1590 |         if (!strcasecmp(term,unsupported_term[j])) return true;
      |              ^~~~~~~~~~
      |              strncmp

Compiling: src/3rdParty/efsw/FileInfo.cpp -> build/release/3rdParty/efsw/FileInfo.o
src/3rdParty/efsw/FileInfo.cpp: In member function ‘std::string efsw::FileInfo::linksTo()’:
src/3rdParty/efsw/FileInfo.cpp:188:28: error: ‘realpath’ was not declared in this scope
  188 |                 char* ch = realpath( Filepath.c_str(), NULL );
      |                            ^~~~~~~~

I finally got it working with msvc 2022, cause msys64 was nothing but problems (I also installed scoop as a replacement).


lib: os: make snprintk fns generally available

The intention of disabling CONFIG_PRINTK is that all
invocations of it will compile to nothing, saving a lot
of runtime overhead and footprint since all the format
strings are completely dropped; instances of printk()
and related functions are no-ops.
However, some subsystems need snprintk() for string
processing, since the snprintf() implementations in even
minimal C library are too costly in text footprint or
stack usage for some applications. This processing is
required for the application to even function.
This patch continues to have disabling  CONFIG_PRINTK to
cause the non snprintk functions to become no-ops, but
now we always compile the necessary bits for snprintk(),
relying on gc-sections to discard them if unused.
z_vprintk() is now unconditionally defined in the header
since it is not tied to any particular output sink and
is intended for users who know exactly what they are
doing (it's in zephyr private scope).
Relates to: #21564
Signed-off-by: Andrew Boie<EMAIL_ADDRESS>

Tested this by building samples/subsys/ipc/ipm_mcux/remote on lpcxpresso54114_m0, this sample disables CONFIG_PRINTK.
Footprint totals were the same with/without this patch. 5486/9931 ROM/RAM.

In our build, the footprint is the same. If I define CONFIG_BT_SETTINGS_USE_PRINTK in host/settings.c, then program memory size is increased by 1.4K - this seems fair.

I have just tried to build the peripheral_hids sample with the configuration slightly modified to be able to disable CONFIG_PRINTK. I then tried to use the "printk version" of bt_settings_encode_key and it ended up being smaller than the "non-printk open coded" version by 156 bytes. I therefore wonder if the the CONFIG_BT_SETTINGS_USE_PRINTK option should be simply dropped.
@kimsekkelund can you try this in your config?

@aurel32

@kimsekkelund can you try this in your config?
I did try that with our build (not the sample code), and it takes up 1.4K more program memory.


fix: generate ts file for newly added proto & fix ci

I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
git diff doesn't check untracked files. If someone adds a new .proto file and forgets to gen-proto, CI will not fail.
Checklist

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Refer to a related PR or issue link (optional)

Actually not a big deal because nothing will break, but nice catch 🤣


Add specificity and example to preferred pronouns section

:3

Prettier is so damn opinionated... could you run npm run format and push the changes? ^^


add eslint-config-prettier

If I left something out or messed things up, please let me know!

I think that's right. Did you try it out?

The reason I ask is that I might have expected some more additions to the yarn.lock file around eslint version pinning.

I think that's right. Did you try it out?

The reason I ask is that I might have expected some more additions to the yarn.lock file around eslint version pinning.

I've since bumped up eslint and the libram plugin and let the yarn.lock file update appropriately. Just now tested it locally and itgenerated a new script with eslint-config-prettier included as expected, the script built and linted as expected as well.

So the key thing here is that we want a first install not to change the
yarn.lock, that's sort of the point of the file
On Mon, 24 Oct 2022, 20:59 JamesDowney, @.***> wrote:

I think that's right. Did you try it out?
The reason I ask is that I might have expected some more additions to the
yarn.lock file around eslint version pinning.
I've since bumped up eslint and the libram plugin and let the yarn.lock
file update appropriately. Just now tested it locally and itgenerated a new
script with eslint-config-prettier included as expected, the script built
and linted as expected as well.
—
Reply to this email directly, view it on GitHub
https://github.com/loathers/create-kolmafia-script/pull/1#issuecomment-1289530919,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABL4LQ74XI2VOE7YC6OPXLWE3TCHANCNFSM6AAAAAARMLMQ4E
.
You are receiving this because you commented.Message ID:
@.***>


Add Slack Integration for Tickets

See : #20
What in the world...
This PR provides the basic Slack integration as described in #20 which:
(1) Allows users to create/cancel/get tickets via Slack
(2) Posts status changes into a "mentor" Slack channel
Uh, why?
We (the ops team) used this at Swamphacks 2017 with reasonable success; a little over 50% of our tickets were created via Slack. We (the mentors) really appreciated having a feed of new tickets come in. It was very easy to discuss them and tag those who could help out with them.
Oh, ok, well, uh, how do I test this?
You can test this by following the new instructions in the README to set this code up. Then, go ahead and do the following while verifying the incoming webhook works:

Create a ticket via Slack (should succeed)
Cancel a ticket via Slack (should succeed)
Get a ticket via Slack (should fail; no ticket open!)
Cancel a ticket via Slack (should fail; no ticket open!)
Create a ticket via Slack (should succeed)
Claim the ticket via HELPq & test releasing and completing it
Create a ticket via HELPq and do (6) again

Oh snap, this is cool, but I'd love for you to do [x]
Just ask! More than happy to add more functionality if you'd like. This is (notably) missing the ability for (1) users to rate tickets and (2) mentors to manage tickets.
Addressing (1), I couldn't really find a good way to force users to have users rate tickets like HELPq does. Also, I'm not too keen on rating mentors since they're volunteering their time, but that's less of an excuse. :)
Addressing (2), I figured that mentors would be expected to have HELPq open so building them slash commands seemed like kind of a waste.
Wait, do you even know how to use Meteor?
No. No I do not. If there's any coding standards I'm violating I'm very sorry! I just learned the minimum needed to do this. Just let me know what needs to be changed and I'll be more than happy to do it!

@andrewjkerr awesome! Thanks for the PR!
I'm a bit swamped (hah) with work right now - I'll see about reviewing this soon. I'd also be interested in talking a bit further about usability and whether or not adding slack integrations hurt/help the experience.
Do you have any metrics you'd be willing to share? Either those from the dashboard (ex response times) or just general things like number of total mentors/hackers at the event, etc.
I'd also be interested in any pitfalls you noticed during the event - you mention 'reasonable success' - what do you mean by that? What didn't work? What did work? What was the layout of the hackathon logistically? How did mentors communicate with one another?
Sorry if this is a barrage of questions - not a lot of people take the time to follow up afterwards so it's always good to hear how things went, good or bad :)

Hey @ehzhang, just letting you know that I'm planning on gathering some metrics/data/thoughts for you, but it's going to take a little bit of time since I already destroyed the instance everything was running on. I have the logs and the DB, but I just need to figure out what kind of data I want to extract 😅. Hopefully I'll find some free time in the near future to dig a little deeper!
Until there, here are the metrics from the dashboard:

Anything regarding a "user" number is probably a little skewed since creating a ticket via Slack technically didn't associate it with a user. However, anything regarding "mentors" should be accurate as all mentors had to manage tickets via HELPq.
As far as metrics around the event, I think there were about 10 mentors (a couple mentors never responded to tickets, but were lurking around trying to help) with ~350 hackers (yikes). The event ran Friday night through Sunday morning and, of course, the most tickets came in on Saturday night/Sunday morning when most mentors were gone. I guess the lesson learned there is to put mentors on a schedule like volunteers, but organizers are already asking a lot from mentors and... yeah, idk. Just a brain dump. :)
Anyway, let me tackle your questions with what I remember off the top of my head, heh.

you mention 'reasonable success' - what do you mean by that?

Well, heh. Last year, I wrote a Slackbot that crashed every few tickets so it was mainly "hey, come over and talk to a mentor or drop a note in the #mentor channel on Slack". HELPq definitely helped with managing kind of the chaos with having very few mentors and so many hackers.
Slack integration also helped because it was a very easy way of being like "hey, can you create a ticket for this with /ticket create <topic> so we can track it?" instead of relying on them to go to HELPq and sign up for an account. Pretty much everyone was on the Slack so it was a super simple way to get tickets filed that would have never been filed without Slack.
The webhook for tickets also helped the mentors as we were able to monitor the tickets and be like "^ @someone" if that was their area of expertise. With such few mentors, it was really nice to have a central place where all of the conversation took place that was also showing the status updates to tickets.

What didn't work? What did work?

Other than the mentor availability mentioned wayyyyy up above, I think Slack really saved our butts as far as making it super simple to submit tickets. Without Slack, HELPq probably wouldn't have worked as well since it's got a somewhat higher bar to entry. Some people didn't want to "give up their Github/Facebook logins" (/shrug) so we just told them to use Slack instead.
As far as other specifics... I mean, everything seemed to go pretty well. The idea of "submitting tickets for mentorship" worked pretty well except for those who didn't know about the system, but, again, /shrug. Um, yeah, that's all I can think of heh.

What was the layout of the hackathon logistically?

I'm... not sure if you mean like physically? That might be 2am me thinking, but, meh. Physically, we were in the basement of a library [1] that had a very large open space with varying table types as well as group study rooms (~26 of them). We also had the "first" floor (basement != 1st floor apparently), but there weren't really too many people up there as it was also partially open to non-hacking students.

How did mentors communicate with one another?

Most of the communication was through Slack. We had a mentor area where a lot of people would come up and ask questions independently of filing tickets, but most of mentor to mentor comms was through Slack.

Cool, I think I hit all of your questions. More than happy to expand on anything I talked about above. I'll also (hopefully be able to) pull some more metrics with regards to tickets created via Slack and tickets created via HELPq as well as possibly get more opinions on how well Slack integrated into it.
Thanks for taking the time to look at this PR! 🎉

[1] Sounds dark and dreary, but is actually pretty dope: http://www.alligator.org/news/campus/article_8d671014-2c11-11e4-9d7d-0019bb2963f4.html

The event ran Friday night through Sunday morning and, of course, the most tickets came in on Saturday night/Sunday morning when most mentors were gone.

Haha yeah that seems to be a pretty standard thing (http://ehz.io/HELPq-data/)

I think Slack really saved our butts as far as making it super simple to submit tickets. Without Slack, HELPq probably wouldn't have worked as well since it's got a somewhat higher bar to entry. Some people didn't want to "give up their Github/Facebook logins" (/shrug) so we just told them to use Slack instead.

This makes a lot of sense, and is something that we have run into in the past. I will admit that I'm a bit hesitant to add slack integration though because there is the potential to lose a lot of the key features that rely on the interface - things like rating tickets, knowing how many mentors are online, and knowing when your ticket gets claimed.
At larger hackathons (1000+) where there are lots of mentors (100+), slack unfortunately doesn't scale very well, and I'm afraid that other organizers will opt for slack integration because it's the new hotness and have a worse experience because of it. The way we solve this issue is that we effectively "force" users to sign in - which is of course not the ideal, but hey, we have the power :P Adding slack messages to post to a channel for mentors would also defeat the one core "Pull, don't Push" experience which has helped scale quality mentorship, since we want mentors to be pulling from a queue actively rather than waiting to get pinged. Again, this is something that is more effective at larger hackathons or one centered around mentorship (like Blueprint) where tickets are coming in very frequently.
I asked about the logistical setup (probably should've gone with physical, so kudos to you for guessing what I meant!) because it affects us slightly. For HackMIT and Blueprint, where we've used this extensively, we had rotating projector slides and an arena-style layout that projected the link every few minutes, so hackers were generally very aware. For more "decentralized" hackathons, slack may make a bit more sense for acting as that central 'hub'.
Whew sorry for the wall of text.
What I would like to say is 🎉 thank you 🎉 for the PR and especially for the feedback! Since this stuff is pretty tightly wound into some of the core code I would like to take a bit more time to review/spin up your slackbot as well to get a real sense of how it all works together. I'll follow up with more comments related to that later :)
I think this would be a really useful change and would love to see it get merged. I hope you're not taken aback by my need to vet this thoroughly :P

Hah, walls of texts are fine; I seem to write essays when talking about pull requests. :)

slack unfortunately doesn't scale very well, and I'm afraid that other organizers will opt for slack integration because it's the new hotness and have a worse experience because of it

Yeaaaaah. That's definitely a downside. But, I think that if the organizers go through the effort to set up Slack to work with HELPq, they'll also have time to think about the downsides and (hopefully) have enough information in order to see if it'll hinder the experience of improve it. In Swamphack's case, I think it improved it. :)
But, anyway, give it a shot and let me know what you think! I definitely appreciate the thoughtful responses and understand the thorough vetting.
Thanks again for making such a dope project! :tada:


Has problem with GriefPrevention while reading meta value with '0'

griefprevention command /playerinfo may could not get the player's meta value which set to 0, this situation appeared when using storage-method="yaml".
I have test this for several times, it goes well if using the h2 storage method by default, but when I change the storage-method to yaml, the meta with value which set to 0 would not work in gp /playerinfo, I'm sure that the gp and luckperm was the latest version, and no error in console, so if possible please have a test with this issue.
using luckperm : 4.1.43(from jenkins)
griefprevention : <IP_ADDRESS>8
Spongeapi: 7
steps:
1.set storage-method to yaml
2.restart server
3.run /lp group default meta set griefprevention.max-accrued-claim-blocks 0 and /lp group default meta set griefprevention.blocks-accrued-per-hour 0
4.run /gpreload then executing /playerinfo(make sure the player was in the default group)
5.then we can notice that max accrued blocks was still 80000(even we restart the server it still 80000)
6.then set storage-method to h2
7.do as 2-4
8.max accrued blocks was change to 0
that seems like 0 was regard as false?
and is that goes as expect?  QwQ

I've ran the command example you gave, it seems to be working ok?
The file shows:
name: default
meta:
- griefprevention.max-accrued-claim-blocks:
    value: '0'

and the command output for /lp group default meta info shows

If this isn't being read by GP correctly, then there's nothing I can do about that. You'll need to report it to blood.

thx I'll update lp now


[FEATURE] Enhance Listener functionality with ordering and execution control

Is your feature request related to a problem? Please describe.
Listeners provide a flexible solution to  intercept, modify, and enhance requests, responses and errors.
Abstracting reusable patterns into individual listeners can provide flexibility and portability across multiple models.
Ex.: request/response observability, PII data masking, implementing security guardrails for harmful content, enhancing request/response with data from a custom datasource.
The following two items would provide significant benefits to production applications

Ordering: retaining the ability to assign an order of execution key to each listener would provide the ability to set the desired order of execution of listeners.
Ex.: a request followed by an enhancement listener to the request would want to add and run safety guardrails as the last listener before making the LLM call, and conversely validate the response as the first operation in a list of listeners upon receiving a response

Current ChatModelListener interface allows the override of onRequest(), onResponse() and onError(), intercepting the model calls before, after and on error.
It would be beneficial to allow an aroundModelCall() model, which would allow the developer to control the execution of the LLM call.
Ex.: In case the safety guardrail fails, the code in aroundModelCall() (or a more suitable name) would allow the developer to make the decision of not proceeding with the LLM call.

Describe the solution you'd like

add a getOrder() method to the ChatModelListener, with an integral value allowing an evaluation of [0..N] in increasing order
add an aroundModelCall(), suggested in a ChatAroundModelListener interface, and allowing the ChatModelListener to remain unchanged

Agreed, @langchain4j
A clean separation of listeners for observability/logging (Read/only) from cross-cutting concerns for PII/Safety/etc (Read/Modify) would work well, and ordering would be beneficial for the latter.


BUG: Mweb - Amount digit in send money page is not aligned with currency text when any digit is entered reported by @aneequeahmad

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Action Performed:

Open app in IOS mWeb (Google chrome).
Click on + icon (green) > split bill.
Enter any digit(enter 0 for clear effect).

Expected Result:
Amount digit should be aligned with currency text
Actual Result:
Amount digit is a not aligned with the currency text.
Workaround:
unknown
Platform:

Where is this issue occurring?

Mobile Web - Chrome (iPhone 11 pro OS 16.0.2)

Version Number:
Reproducible in staging?: Need reproduction
Reproducible in production?: Need reproduction
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:
https://user-images.githubusercontent.com/43996225/196320809-2db6244e-1bd2-4738-9bcc-5d3cc4585f13.MP4
Expensify/Expensify Issue URL:
Issue reported by: @aneequeahmad
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1665613033013319
View all open jobs on GitHub

Reproducible in staging?: Need reproduction
Reproducible in production?: Need reproduction

I am confused, is this issue reproducible or not?

@iwiznia Not reproducible by applause team. So added "Need reproduction" label

ok let's close for now

@muttmuure can you please attempt to reproduce and provide your results? Updated the SO so the steps are

If you’re unable to determine the reproduction steps, add the Needs reproduction label, comment on the issue with your results and tag the issue reporter and the Applause QA member who created the issue, if applicable. After commenting you can, using your best judgement:

Close the issue
Check back tomorrow to see if you can reproduce
Add the Engineering label and ask the engineer if they're able to reproduce as part of their triage.

Dang - sorry for the mistake here. I watched the video and thought it was a clearly reproducible issue - this is the only time I've done it that way.

I opened staging.new.expensify.com
I opened a new Send Money
Tapped currency symbol
Changed to PKR
Typed 0

The amount is in line with the currency.

This issue is reproducible on Android on latest main branch version <IP_ADDRESS>
PROPOSAL:
Problem:

The height of  IOU text label andIOU text input` are different that's why this edge case happens on some devices like IOS 11pro or android Redmi Note 10.

The IOU text has 47 lineheight and IOU text input has 50 lineHeight as shown in screenshot below.

Solution:
Add line  iouAmountLineHeight: getValueUsingPixelRatio(50, 72), here below line # 60
https://github.com/Expensify/App/blob/cb256f93b4a72a7f06561fb52d0745bf5daa580a/src/styles/variables.js#L60-L61
And this will be added as lineHeight in text https://github.com/Expensify/App/blob/3a3a9fd7954a8891e40e47a60be84e7db1aae224/src/styles/styles.js#L2138-L2144
lineHeight: variables.iouAmountLineHeight it will fix the issue as will make lineHeight of both 50.


XPDY0050 when running generate-tests-utils.xspec for XQuery

Execute test/generate-tests-utils.xspec for XQuery (-q option). It terminates:
P:\xspec\test>..\bin\xspec.bat -q generate-tests-utils.xspec
Saxon script not found, invoking JVM directly instead.

Creating Test Stylesheet...

Running Tests...
Source document ignored - query does not access the context item
Error on line 256 column 211 of generate-tests-utils.xq:
  XPDY0050: The root of the tree containing the context item is not a document node
Query failed with dynamic error: The root of the tree containing the context item is not a document node

*** Error running the test suite

Tested on the latest master.
Looks like the error didn't happen until 86e9bbf676d027e14234338224977dc75b65d6b1

@AirQuick : Is this now fixed by the merge in #83 (commit https://github.com/xspec/xspec/commit/120b3316aef2c1106287dc7c5270f3ed49062c68)? When I run it with the shell script, I now get all the XQuery tests passing:
bin/xspec.sh -q test/generate-x-utils.xspec

Saxon script not found, invoking JVM directly instead.

Creating Test Stylesheet...

Running Tests...
Source document ignored - query does not access the context item

Formatting Report...
passed: 8 / pending: 0 / failed: 0 / total: 8
Report available at test/xspec/generate-x-utils-result.html
Done.

Not fixed actually. But #83 has isolated the issue. Now we can run generate-x-utils.xspec on XQuery and we have an explicit comment for the current limitation. So I think we can close this issue for now.

Thanks for checking. I'll close this ticket for now, we will address the TODO comments for XQuery at some point in the future.


iosevka: 27.2.1 -> 27.3.0

Description of changes
Diff: https://github.com/be5invis/iosevka/compare/v27.2.1...v27.3.0

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

#263219


Lib - Update constants datatype

Instead of having all constants exist as strings that must be interpreted into the appropriate datatype for comparison within each subgraph, store the constants as the appropriate type.

Staging deployments have indexed, and I have verified that the underlying data matches between current deployed subgraphs and staging via subgrounds.


Why enforcing content-type?

First of all, congratz for the amazing lib.
Ive been trying it in a new project using play framework as the backend, the problem is, with the current gateways i cant send any post data because Mappersmith always concatenate "application/x-www-form-urlencoded; charset=UTF-8;" on the request, this way play cant understand that im trying to send an application/json (even if i put it in the headers rule).
So i basically had to copy/paste the gateway to make it stop enforcing the form content-type. This is obviously a bad solution, so do you have plans to stop  enforcing this content-type? You may first check the user header options and only the user didnt add a Content-type then you can put it.
I can even do a PR if you dont have the time to do this.
Thanks

Hi @ericholiveira, thanks for opening this issue. I agree with you, Mappersmith should always follow the user defined content-type. Currently, you can prevent Mappersmith from guessing the content type by setting the body attribute to something different than an object, example:
Client.Photo.save({
  category: 'family',
  body: JSON.stringify({year: 2015, tags: ['party', 'family']})
})

I will fix this and release a new version. Thanks for your input!

Great... ive tried like you said before opening this issue and what i got was a request with content-type "application/x-www-form-urlencoded; charset=UTF-8; application/json" , the body was sent correctly, as a json string, but the server could read because this wasnt an explicit application/json header.
Anyway, thx for the help :)

I released version 0.13.2 with this fix. Thanks for your input.


Add a getter for Toxiproxy exposed port

Hello!
I used Toxiproxy container to simulate a connection cut between two different Docker containers. It was a bit hard to determine what exposed port of the proxy corresponds to the exposed port of the target container. The code I ended up with did toxiproxy.getExposedPorts().get(1) which is not very intuitive because toxiproxy.getExposedPorts().get(0) is the proxy control port. Thus this PR. Hope it makes sense :)
Before this change, there only existed a getter for the mapped port which is useful for accessing the container from the host. A new getter can be useful when a Toxiproxy is setup between two different Docker containers to simulate network instabilities.

This is a good idea, but I just want to have a think about naming - I think that getExposedProxyPort() could be improved upon. It definitely deserves some inline Javadocs and a general documentation update to explain what this is for and when to use it 😄

Hi @rnorth, I agree, the name could be improved. What do you think about getDockerProxyPort or getContainerProxyPort?

@rnorth soft ping :)

Sorry - naming this is hard! I think personally I'd prefer getOriginalProxyPort or getDirectProxyPort. We should also have really solid documentation for when you should and shouldn't use this, both in the form of Javadocs and in the published markdown docs.
I think we should probably skip this for today's release - sorry that my delay in  getting back slowed things down.

Thanks, getOriginalProxyPort sounds good to me. I'll change the PR and add docs this week.

Hi @rnorth, this PR is now updated:

changed getter name from getExposedProxyPort to getOriginalProxyPort
added Javadocs and markdown docs for Toxyproxy port-related methods
attempted to fix flaky Toxiproxy tests by increasing the default Jedis timeout

Please re-review, thanks in advance :)

@rnorth thanks a lot! I committed all suggestions and squashed them into one commit


Manual rekor upload with cosign public key

There was a previous issue opened (#1573 ) asking about a manual Rekor upload of an artifact signed with a cosign public key. However, the proposed solution (using the --pki-format x509 flag) did not work when I tried it.
The same artifact, public key, and signature that verify correctly with cosign do not seem to verify correctly with the rekor-cli:
[lily@fedora cosign]$ cosign verify-blob --key keys/cosign.pub --signature blob_sig generated_payload --insecure-ignore-tlog=true
WARNING: Skipping tlog verification is an insecure practice that lacks of transparency and auditability verification for the blob.
Verified OK

[lily@fedora cosign]$ rekor-cli upload --artifact generated_payload --public-key keys/cosign.pub --pki-format x509 --signature blob_sig
error: error retrieving external entities: invalid signature when validating ASN.1 encoded signature

Is this expected? What am I missing from the command? Or is there a bug?

My guess is that blob_sig cannot be base64 encoded. Try cat blob_sig | base64 -d > decoded_blob_sig and see if you can upload that with the same key and artifact. If that works, then we can add a feature to rekor-cli to support decoding base64 encoded sigs.

Thanks @haydentherapper , base64 decoding worked! I can make a PR for base64 support.


Feat/bch addresses formats

better support for different bch address formats

ACK

Coverage decreased (-0.6%) to 82.369% when pulling 01bedc939f3f12265edf6abb3d35bd5327d8d98f on matiu:feat/bch-addresses-formats into 0f0d605a3f312d2b5613a5bd08973fda60a73a79 on bitpay:master.


Fix memory leak when importing multiple models

This PR prevents Grails/Hibernate from loading the securableResourceGroupRoles association on UserGroups when UserSecurityPolicyManager::addSecurityForSecurableResource is called, which was causing a memory leak because the old SecurableResourceGroupRole objects were staying in memory after requests completed.
If code that calls addSecurityForSecurableResource later tries to check the same permissions on a UserGroup in the same request, the new security role might not appear there yet, but I think this is unlikely to be an issue.
I've tested in a local instance that the memory usage isn't increasing when importing multiple models with a script.
Resolves #420.

Failure on PR merge is a StaleStateException and I don't think it's related.


npm repository url

npm show connect-modrewrite | grep repository -A 2

Current Output
repository:
   { type: 'git',
     url: 'git://github.com/%3Atinganho/connect-modrewrite.git' },

Expected Output
repository:
   { type: 'git',
     url: 'https://github.com/tinganho/connect-modrewrite.git' },

fix typo in url
HTTP protocol allows users without SSH key (added to their GitHub account) to install this repository

According to that the repository URL in package.json may also be modified.

@gronke Thanks for reporting this. I will have it fixed.


Figure out how to scrape school info from https://scuoladigitale.axioscloud.it/

The school of one of my kids is using https://scuoladigitale.axioscloud.it and I want to automate checking information like grades and messages from the school.
I am planning to scrape data with Playwright and Python.

Here's a spot on use of Playwright and Python at https://www.youtube.com/watch?v=H2-5ecFwHHQ


Allow the sandbox container to run seperately

Summary
The sandbox container should be allowed to run outside of the OpenDevin container, and communication between them can be handled by an exposed port.
Motivation
This would help avoid SSH connection errors, and more advanced users could choose where they want to run their sandbox.
Technical Design
The sandbox hostname is passed in as an environment variable, so no access to the Docker socket is neeeded.

Thanks @JamDon2 ! We have now deprecated SSH-based communication so SSH socket errors should be fixed on the latest main branch. But if you're still having issues please tell us and we can look into it.


Create product details page for private cloud products

The private cloud products page has been redesigned, these pages need to be implemented:

Dod:
The above is implemented

Hey team! Please add your planning poker estimate with Zenhub @alexandralloyd @funtigr @okanji

Not doing as we do not need this UI.


Register Nominate Restore as a Critical Project System Task

To block the build while a restore operation is happening.
Fixes #654: A deadlock can occur if the user builds while a restore operation is happening
Requires change from NuGet
/cc @alpaix @dotnet/project-system @rrelyea
/cc @MattGertz

Approved to bring.

Oops, actually I thought this was signed off already.  I'll withdraw the label and wait.

/cc @lifengl

Scenario
If the user kicks off a build while auto-restore is happening in the background (for example after project creation) VS will deadlock all the time.
Bug
#654
Workarounds
Wait for restore to complete before building.
Risk
Low risk - using a supported CPS mechanism to block the build..
Performance Impact
None
Regression Analysis
Not a regression. Unfinished work in the original implementation.


Add proactive messaging sample

Q
A

Bug fix?
no

New feature?
no

New sample?
yes

Related issues?

What's in this Pull Request?
I see a lot of proactive messaging questions on Stack Overflow, but I've struggled to point people to a good sample, for various reasons (happy to elaborate if required) so I thought it would be good to put a -really- barebones example together, showing only the main parameters people need to send a proactive message, and showing how to do the sending from outside of the bot. As before, submitting it in two languages so it's more accessible.

Wow great job on this one @HiltonGiesenow - excellent tutorial value and detail along with a solid sample. Thanks!

Wow great job on this one @HiltonGiesenow - excellent tutorial value and detail along with a solid sample. Thanks!

Thanks, very glad to hear!

Thanks, very glad to hear!


The path is not of a legal form.

I get this error when trying to run the MSBuild task in an Azure Devops pipeline.
The version of Advanced Installer that was defined in the Installation Task is 16.1.
The Advanced Installer installation on the Agent worked correctly, but the Solution Build process failed with the above message.
VS 2019.
The solution typically compiles in Visual Studio 2019 on development machines.
Any tips?

Configure to build the project (.aip) instead of the Solution, and this error has stopped.


fix(tooltip): Remove unnecessary inline style

Description
Removes unnecessary inline style (cursor: default) in TooltipTrigger
Related Issue
#258
Motivation and Context
Prevents cursor styles from child elements from being overridden
How Has This Been Tested?

Screenshots (if appropriate):

thanks!!!


Footer path corrections and adding logo link

[x] Correct paths (../)
[x] Add link on logo to index.html

The issue was a missing closing tag. It should be fixed now :)

That's strange, it works for me


[Feature Request] Add "force mobile view" for custom frames

It would be nice to have a force frame to mobile dimensions for our custom frames. this would avoid us to have to put in the mobile url of the websites. Some websites dont have simple mobile urls

hi @Ellpeck ! i think at the time i was asking for a way to have the plugin to force a mobile view for all urls. some websites dont have simple mobile urls and you have to personally know them or look for them.
so yes the chromium dev tools to emulate a mobile device for the urls
this would help the side panels to be used for custom iframes

This can be combined into one feature using #26


[ZeRO] non-MoE stage 1 requires CG disabled

MoE w. stage 1 requires contiguous gradients (CG) is enabled, which was fixed in https://github.com/microsoft/DeepSpeed/pull/2250. However, this introduces a performance regression when not using MoE. This PR reverts the non-MoE case to ensure CG is disabled.
/cc @siddharth9820, @tjruwase

looks good to me


resize login button

Is your feature request related to a problem? Please describe.
The login button and Logo text looks too small
Describe the solution you'd like
increase the font size of the logo text and resize the button
Describe alternatives you've considered
,
Additional context
No response

Can you please assign this to me? I am new to open source.


Show location of mixing of imports and code

From the forums

since I have got lots of mixes in more than one notebooks, and the warning does not tell me where those mixes come from, I wonder whether you could add the info on where those mixes are from or much better if nbdev could automatically separate the import into a separate cell?

This will require access to the filename in ipynb-filter.

I was trying to migrate ghtop to nbdev v2 for a demo I'm having with Will soon and encountered this
You can repro this on this repo https://github.com/fastai/ghtop-docs by running nbdev_prepare
 nbdev_prepare                                                                                (master)ghtop-docs
Success.
NB: From v1.2 `_quarto.yml` is no longer auto-updated. Please remove the `custom_quarto_yml` line from `settings.ini`
/Users/hamel/github/nbdev/nbdev/processors.py:182: UserWarning: Found cells containing imports and other code. See FAQ.
---
from time import sleep
def _randwait(): yield from (sleep(random.random()/200) for _ in range(100))

c = EventTimer(store=5, span=0.03)
for o in _randwait(): c.add(1)
---

  warn(f'Found cells containing imports and other code. See FAQ.\n---\n{cell.source}\n---\n')
pandoc -o README.md
  to: gfm+footnotes+tex_math_dollars-yaml_metadata_block
  output-file: index.html
  standalone: true
  default-image-extension: png

metadata
  description: See what's happening on GitHub in real time (also helpful if you need to use up your API quota as quickly as possible).
  title: ghtop

Output created: _docs/README.md


[OpenTelemetry Exporter] Export Metrics Min/Max values

Upgraded to latest OpenTelemetry Metric package dependencies.

API change check
API changes are not detected in this pull request.


feat: refactoring (944110 PL1)

Rule 944110 is matching same variables in both main and chained rules. This is:

Not required.
Ineffective.
Possible creating more FPs.

The list of variables in the chained rule should be replaced with a MATCHED_VARS variable as we only need to match against variables matched by the main rule. Also, the current behavior may create more FPs as main rule may match variable1 and the chained rule may match variable2 (which wasn't matched by main rule).
Also, the chained rule was missing t:lowercase so it was possible to bypass this check.

Failing tests are including keywords in multiple XML attributes. I found only one exploits which is splitted accross multiple XML elements/attributes and it is going to be catched also after my modification to the rule.
Was not able to find a non-XML exploit which is splitted into multiple variables.
Solutions:

Remove failing tests.
Include XML:/*|XML://@* in chained rule (togather with t:lowercase).
Close this PR.

I would go with 2.

After reading (and re-reading) this one, and the exploit you mentioned there, idk if just going with 1) instead, and just document it. But 2) sounds good also, if you think it adds value.

@fzipi Can you look at it now? Thnx.


WARN CommitIterator: missing object

Expected Behavior
I have been accessing siva files and get WARN messages. The question is whether it happens due to corrupted data or tools? Are these warnings expected to be reproducible for the same repo? Because for now I get different number of entries for each run.
Current Behavior
WARN CommitIterator: missing object
and another one is
Missing Commit
Your Environment (for bugs)

Spark version: 2.2.1
PySpark version (if using PySpark): 2.2.1
jgit-spark-connector version: 1.0.0
Operating System and version: CentOS 7
Some needed resources to reproduce the problem:

@sakalouski sorry for dropping this for so long 😱

is it happens due to corrupted data or tools

Usually, in my experience this is the case of corrupted data.

Are these warnings expected to be reproducible for the same repo

I belive they are. Is there a chance you could share the repo that triggers it?
What I did before to validate this, is to extract the .pack files from the .siva and use git plumbing commands like
siva unpack 9279be3cf07fb3cca4fc964b27acea57e0af461b.siva .
git verify-pack -v objects/pack/<>.pack
git cat-file -p <sha>


support for 24-bit wav files

The current scipy wavio module doesn't support 24-bit wav files, which is the default bit-depth for some of the recording software we use. It looks like this functionality was requested for scipy, but hasn't been incorporated yet (https://github.com/scipy/scipy/issues/1930).
As a quick fix, I dropped this 'enhanced' version of wavfile.py -- https://gist.github.com/josephernest/3f22c5ed5dabf1815f16efa8fa53d476 -- into the hvc utils directory, and hackily modified the read function to just return (rate, data) to make compatible with hvc's current use.

Thanks @bradleycolquitt the links are helpful.
Looks like there's a PR in progress but it's stalled: https://github.com/scipy/scipy/pull/6852
Any chance you could submit a pull request where you add a subdirectory to hybrid-vocal-classifer/tests/ that includes a couple of 24-bit wav songs and if possible annotation, like .not.mat files? That way I can write tests for the wav loader. I'd be happy to walk you through submitting a PR if you haven't done that before.


Enable chemist-friendly depiction of R-groups

Added two MolDrawOptions (mappedDummiesAreRGroups, isotopeDummiesAreRGroups) to enable conveniently depicting R group labels in more chemist-friendly fashion (i.e., as R# rather than #* or *:#)
Added relevant C++, Python and JS tests
Added a noFreeType JSON parameter to enable generating non-FreeType SVGs in MinimalLib, mostly to make testing easier

Current status
RDKit stores R group labels as either atomMapNum or isotope number. This results in a representation which is not very pretty, unless some post-procesing is applied.
For example, an R group decomposition currently looks like this in PandasTools:
from rdkit import Chem
from rdkit.Chem import PandasTools
from rdkit.Chem.Draw import IPythonConsole, rdDepictor
from rdkit.Chem import rdRGroupDecomposition

rdDepictor.SetPreferCoordGen(True)
mols = [Chem.MolFromSmiles(smi) for smi in 'c1c(F)cccn1 c1c(Cl)c(C)ccn1 c1c(F)cncn1 c1c(F)c(C)ccn1'.split()]
sma_scaffold = Chem.MolFromSmarts('c:1:c(-[*:1]):c(-[*:2]):*:c:n:1')
groups, unmatched = rdRGroupDecomposition.RGroupDecompose([sma_scaffold], mols, asSmiles=False, asRows=False)
df = PandasTools.RGroupDecompositionToFrame(groups, mols, include_core=True)
PandasTools.ChangeMoleculeRendering(df)
df

This becomes even less chemist-friendly when R group decomposition results are generated from SMILES:
groups, unmatched = rdRGroupDecomposition.RGroupDecompose([sma_scaffold], mols, asSmiles=True, asRows=False)
df = PandasTools.RGroupDecompositionToFrame({k: [Chem.MolFromSmiles(smi) for smi in v] for k, v in groups.items()}, mols, include_core=True)
PandasTools.ChangeMoleculeRendering(df)
df

After this PR
This PR adds two MolDrawOptions to enable a more chemistry-friendly depiction with a single setting, e.g.:
IPythonConsole.drawOptions.mappedDummiesAreRGroups = True

groups, unmatched = rdRGroupDecomposition.RGroupDecompose([sma_scaffold], mols, asSmiles=False, asRows=False)
df = PandasTools.RGroupDecompositionToFrame(groups, mols, include_core=True)
PandasTools.ChangeMoleculeRendering(df)
df

groups, unmatched = rdRGroupDecomposition.RGroupDecompose([sma_scaffold], mols, asSmiles=True, asRows=False)
df = PandasTools.RGroupDecompositionToFrame({k: [Chem.MolFromSmiles(smi) for smi in v] for k, v in groups.items()}, mols, include_core=True)
PandasTools.ChangeMoleculeRendering(df)
df

@ptosco given that this can already be done relatively easily in code, and that it's pretty specific to the RGD code, I'm reluctant to add yet another drawing option for it.
What about adding a free function in the RGD library that makes the appropriate changes to the molecules add adds atom labels?

@greglandrum I respectfully disagree :-). I know that can be done (relatively) easily in code, but

That does not apply to MInimalLib, where currently this would require regex-based hackery on CXSMILES
That requires making another copy of the molecule just for visualization, and one normally already makes one with prepareMoleculeForDrawing
The free function would be even less discoverable than a visualization option, and would need to be exposed on JS side, where currently R group decomposition support is optional and not part of the standard build
In a Jupyter Notebook or in a web app that visualizes SAR tables it is way easier to set a global drawing option once and for all and always get the desired visualization than having to remember to tweak the molecule - there would easily be the odd place where the molecule pops up with the original *:# labels

After our conversation last week, looking more at what this PR does, and spending some time investigating the options which are already available, I'm even more convinced that the PR itself is not necessary.
Users/developers who want R group labels in the output of the RGD code can ask for that using the rgroupLabelling parameter:
ps = rdRGroupDecomposition.RGroupDecompositionParameters()
ps.rgroupLabelling = rdRGroupDecomposition.RGroupLabelling.MDLRGroup
rg = RGroupDecomposition(core,ps)

The results of this RGroup decomposition have atomLabels on the dummy atoms; that leads to the RGroups being drawn as follows without needing any special code:

If you generate CXSmiles for that RGD output, then you end up with the atomLabel properties in the CXSMILES, so the values can even be stored:

and, fortunately, reading those SMILES back in preserves the labels:

What does this miss?

@greglandrum It does not miss anything. I already knew about CXSMILES, and to be honest we had already mentioned it in our discussion. Still, given rdRGroupDecomposition.RGroupDecompose does not support CXSMILES output, I think the additional visualization option wouldn't have hurt. Anyway, I'll close this.


Multiple target patterns on Windows 10

I encountered an error while installing this plugin on Windows 10 using the vagrant (1.9.1) native ruby (2.2.5p319 (2016-04-26 revision 54774) [i386-mingw32]). The plugin has never been installed before.
On the Windows version:
Major  Minor  Build  Revision
-----  -----  -----  --------
10     0      14393  0

ERROR: Failed to build gem native extension.

    "C:/Program Files (x86)/Vagrant/embedded/bin/ruby.exe" -r ./siteconf20161228-6168-1elpv5f.rb extconf.rb
checking for main() in -lssleay32... no
checking for main() in -lssleay32... no
checking for main() in -lssleay32... no
checking for main() in -lssleay32... no
checking for rb_trap_immediate in ruby.h,rubysig.h... no
checking for rb_thread_blocking_region()... no
checking for ruby/thread.h... yes
checking for rb_thread_call_without_gvl() in ruby/thread.h... yes
checking for inotify_init() in sys/inotify.h... no
checking for __NR_inotify_init in sys/syscall.h... no
checking for writev() in sys/uio.h... no
checking for rb_thread_fd_select()... yes
checking for rb_fdset_t in ruby/intern.h... yes
checking for pipe2() in unistd.h... no
checking for accept4() in sys/socket.h... no
checking for SOCK_CLOEXEC in sys/socket.h... no
checking for rb_wait_for_single_fd()... yes
checking for rb_enable_interrupt()... no
checking for rb_time_new()... yes
checking for windows.h... yes
checking for winsock.h... yes
checking for main() in -lkernel32... yes
checking for main() in -lrpcrt4... yes
checking for main() in -lgdi32... yes
checking for clock_gettime()... yes
checking for CLOCK_MONOTONIC_RAW in time.h... no
checking for CLOCK_MONOTONIC in time.h... yes
CXXFLAGS=$(cxxflags) -Wall -Wextra -Wno-deprecated-declarations -Wno-ignored-qualifiers -Wno-unused-result -Wno-address
creating Makefile

make "DESTDIR=" clean
Makefile:263: *** multiple target patterns.  Stop.

make "DESTDIR="
Makefile:263: *** multiple target patterns.  Stop.

make failed, exit code 2

The path of makefile contains spaces. Maybe reinstalling ruby with its dev kit in a directory without spaces can avoid the error.
It's always annoying to begin ruby with Windows.


Fixing Duplicate Tipbot Account Issue

Misunderstood the use of GuildMember in Discord.js due to vague documentation, resulting in tipbot accounts being created accidentally due to getting the wrong Snowflake for the user. The function now takes the user.id of the recipient, preformated to match the tipper, with appropriately adjusted references to the user.
Hopefully this should fix the issues being had though manual recovery of the currency in the accidentally created accounts will still be required. Sorry for the trouble.

Also forgot that I included the code that patches the private tipping mode to actually only message the user once if they tip themselves. Did it without thinking, so sorry for any confusion there


href nodes hidden by header

e.g. go to https://kristofferc.github.io/LazilyInitializedFields.jl/#use_a_reft_field you see that the header containing the href are hidden by the header.

A bit similar to #37 in that the base one has the proper behaviour (see eg: https://tlienart.github.io/PkgPage.jl/#getting_started)
But it's just a CSS class if the headers are done manually: https://stackoverflow.com/questions/10732690/offsetting-an-html-anchor-to-adjust-for-fixed-header

Okay, sorry for spamming you instead of @KristofferC with issues :D

Bruh, I didn't change almost anything in the config!

haha no worries, ok so here the issue is with sub-headers; I would suggest not making them links that will be the easiest fix (and given the page is quite short I think that's not really an issue). For this just replace the ### ...  by ~~~
TITLE
~~~
It's a bit hacky but it will also solve the blue look and might just look better. Also maybe add me as a contributor to the repo and I can do some light CSS touches to help out

I think the problem was actually a missing \end{:section} in the end of the document.

☝ for the footer thing yes, for the headers that when you click on them get hidden by the navbar, I think it's likely still an issue (but if it magically also fixed itself then great :joy:) also in a near future these "begin-end" things will be better supported by Franklin and it will tell you when you forget stuff.

I changed to
 and seems to work great now. Thanks.

Oh, but code quoting doesn't work inside
.

can you try using  ...  in the title.?

Seems this is all fixed in https://kristofferc.github.io/LazilyInitializedFields.jl/#other_methods , closing (feel free to reopen this or open another issue if there's still something to fix I might have missed)


Create custodial account using Parity Signer to sign transactions

Would it ever be possible to add and manage an account thats keys are stored on an air gapped device like Parity Signer and sign transactions through QR codes? sorry if this is the wrong place to ask.

Hi! Yes, we have this feature in our plans. However no ETA.


Indicator Bars Dont Always Work

I think it's related to issues with updating the color of text labels. Pretty sure there are other ways to do it, but I'm not sure how to implement them. Maybe create my own widget that's the size and shape I want it to be and change it's color? Maybe try updating button colors instead? dunno rn

I've taken a lot of approaches to try to fix this. At this point I'm using .setVisible() to show the indicators when appropriate. Apparently the main issue was hardware related, see Issue #2

Gonna go ahead and close this because I'm fairly certain it was a hardware problem which has been resolved.


Fix warning 'Header build phase contains duplicate references' when using cocoapods

It's a bug in CocoaPods, multiple subspecs request the same headers and it adds them multiple times. Can't fix! Thanks.


Feature Request : Implement ObservableSetEventProtocol to provide a "bind(to: )" method for MutableObservableSet

Currently MutableObservableArray can be bound to a tableView because it conforms to ObservableArrayEventProtocol via the SignalProtocol extension.
But this is currently the only datasource that seems to implement that. MutableObservableSet should provide the same functionality so that it can be bound to a tableView with bind(to: ) -- the same could be said for an observable Dictionary as well.

ObservableSet conforms to SignalProtocol with elements of type ObservableSetEvent. Table and collection view bindings work only with ObservabeArrayEvent.
What would be required here is to implement an operator that maps ObservableSetEvent into ObservabeArrayEvent. It would probably be a sort operator that sorts the set elements into an array.
Set has elements in an undefined order. When a new element is added, to order is usually completely shuffled so bindings would only make sense if there were some kind of a sort operator on set.
Same applies for ObservableDictionary.
This is not a trivial work and I do not have the time to implement that, but I'll leave the ticket open as a possible future enhancement.

Bond 7 introduces sortedCollection operator on ObservableSet and ObservableDictionary which enables their binding to table or collection views.


Update dotnet pack command to not use -b option

We had a regression on dotnet pack where -o and -b together cause pack to not compile the project. Removed the -b option for now to have the project build.

cc @KrzysztofCwalina @bleroy

looks good.


Comms view shouldn't reorder while it's open

I'm not actually sure how much sense this makes. You presumably do want new seamails to appear, for example. And if you're staring at the list for an hour because you have your phone open, it'd silly for the updated threads to not appear at the top.

If you're staring at it, sure, you want updates. But if you're scrolling through it and about to click on something? One of the most aggravating things a UI can do is change such that you end up clicking the wrong thing.
How about preventing re-ordering if you've interacted with the page in the last 15s? Opened the page (after the initial load), scrolled, exited a thread, etc..
Or at least put up a loading warning 2s before re-ordering?

Technically there's already a loading warning, top right corner of the screen.
Making interaction stop updates is reasonable. I wonder how we could do that...

I made this update less often, rather than making it actually freeze for a few seconds. Making it freeze is non-trivial because there could be an update incoming just as the user touches the screen, and then I would have to maintain two copies of the state (the frozen version and the real version), which would be very bug prone.


Fix a typo

Fix a typo: protio -> proto

[ ] Configuration Infrastructure

[ ] Docs

[ ] Installation

[ ] Networking

[ ] Performance and Scalability

[ ] Policies and Telemetry

[ ] Security

[ ] Test and Release

[ ] User Experience

[ ] Developer Infrastructure

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

Hi @victory460. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

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

@ericvn @fisherxu @howardjohn @kebe7jun   Can you review and approve ? Thanks a lot!

/ok-to-test

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

Test name
Commit
Details
Required
Rerun command

release-notes_istio
1e65edce21286e2ab743de554d27a7248ea7a99b
link
true
/test release-notes_istio

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

/test release-notes_istio


Sound interrupted while playing an audio file

I applied it to my music program, but MediaPlayer-Extended is lighter than the built-in MediaPlayer,
but the sound is often cut off. Is there a workaround to increase thread priority or buffer size?
My program address. Please try. For MediaPlayer-Extended, please check the "setting / Use custom media play".
https://play.google.com/store/apps/details?id=winvibe.musicplayerfree4

Cannot reproduce on Nexus 4 & Nexus 5X. Please let me know the exact details of the device(s) (make, model, Android version) and post a sample media file to make this issue reproducible.


config file ignored

As of https://github.com/instructlab/instructlab/pull/1749
if the version isn't present, the config file fails to load with no warning I could see)
and a default  is instead loaded
we should version be defaulted or inform users to update their config file

fixed by #1834


Minor cleanups

what
Minor fixes to several SCPs

DenyLambdaWithoutVpc was previously invalid. It is now valid, but has not been thoroughly tested to ensure it does what it promises.
DenyRDSUnencrypted was fixed to deny rds:RestoreDBClusterFromSnapshot when not encrypted. Previously this action was not denied, and instead the nonexistent RestoreDBClusterFromDBSnapshot was denied
The DenyS3BucketsPublicAccess policy was cleaned up by eliminating the nonexistent s3:DeletePublicAccessBlock action. Note that it still is probably not something you want to use, because it denies enabling a public access block as well as removing one. We hope to have a better policy in the future.
The Region Restriction Templates DenyRegions and RestrictToSpecifiedRegions were updated to exclude the account, artifact, and supportplans services from region restrictions, since they are global services. The obsolete awsbillingconsole service was removed.
DenyS3InNonSelectedRegion was fixed to allow users to allow S3 bucket creation in us-east-1. Previously us-east-1 was always prohibited even when expressly allowed, due to quirks in S3.

why

Restore intended behavior

references

Closes #33

LGTM
for what it's worth, DeletePublicAccessBlock does require PUT permissions so you don't need to keep it in the deny policy, but you can always leave it in the policy to help folks know that it's denied.

DeletePublicAccessBlock is not a valid action and, when given the opportunity, policy validators complain about it, which is why I removed it.


Specification: wrong definition of super closurization equality

Dart Language Specification (3-rd Edition / June 2015) reads (16.18.10 Super Closurization):
"Except that iff two closurizations were created by code declared in the same class with identical bindings of this then super1#m == super2#m, super1.m == super2.m, super1#m == super2.m and super1.m == super2#m."
First, it is unclear what "...with identical bindings..." means. Specification should be more clear on that.
Second, consider the following program:
class A {
  int m() => 1;
}

class B extends A {
  getClosurization() {
    return super.m;
  }
}

class C extends B {
  void test() {
    print(super.m == super.getClosurization()); // prints true
  }
}

main() {
  C o = new C();
  o.test();
}

The current Dart implementation (Dart VM version: 1.13.0-dev.6.0 (Wed Oct  7 08:09:59 2015) on "linux_x64") prints true. And it is what I expect. But in this example closurizations were not created by code declared in the same class and therefore, according the spec, should not be equal.
Either specification either implementation is wrong. I think spec should be changed.

The "identical bindings of this" means that the this value in the methods are identical - i.e., it's methods in the same class and on the same instance.

Generalized tear-offs are being removed (#27518) so I don't think we have to worry about this.


HyperHDR - WLED - Screen capture no longer working

Bug report, debug log and your config file (FULL LOGS ARE MANDATORY)

Steps to reproduce
Start HyperLED. Observe boot effect. Leds then turn off. Screen capture is enabled in settings.
What is expected?
LEDs should be on
What is actually happening?
Leds turn off.
System

HyperHDR Server:

Build:           (HEAD detached at b8c7f04) (Awawa-3141e80/b8c7f04-1676222403)
Build time:      Feb 12 2023 17:25:03
Git Remote:      https://github.com/awawa-dev/HyperHDR
Version:         <IP_ADDRESS>
UI Lang:         en (BrowserLang: en-US)
UI Access:       expert
Avail Capt:      Windows (Microsoft Media Foundation)
Database:        read/write

HyperHDR Server OS:

Distribution:   Windows 11 Version 2009
Architecture:   x86_64
Kernel:         winnt (10.0.22621 (WS: 64))
Qt Version:     6.2.4
Browser:        Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/117.0

The issue template mentions about mandatory full logs no without the reason and I dont' know any HyperLED that I can help with either. Please respect our time.


Unable to delete Mesh app or parent resource group

I have an app that appears to be stuck in an "Updating" provisioning state with a status of "Invalid".  I am unable to delete the app using the az mesh app delete Azure CLI command (error is "Max retries exceeded with url: /subscriptions/xxxxxx/resourceGroups/coazure-sfmesh-helloworld/providers/Microsoft.ServiceFabric/applications/helloWorldAppWindows?api-version=2018-03-01-privatepreview (Caused by ResponseError('too many 504 error responses',))"
Using the Azure Portal and Azure CLI, I have tried to delete the resource group for this application.  Both seem to attempt to start to delete the resource group, but never complete (the group is never deleted).

@mcollier  - did you end up deleting the RG ?

@mcollier - we are closing this issue for now. If you do run in to it, please feel free to reopen.


Etag validation for S3 Compatible storage / clients

Some of S3 compatible storage / clients use different part size that are hard coded in this lib.
I my case we use Min IO and sometimes client split files to part that don't follow 1m factor.
For example i get part size 16777728 and last part size is 13911034
Is there any option too disable etag validation or change logic to use head request to get first part size and use it for etag validation?

As a hack, you might be able to disable etag checking by specifying a range request (e.g. start=0, end=None). The head trick is a very good tip. I may look into implementing that.


Handling unused props in the render method

Issue Description

We have some components that have props not used inside the render method. We should be consistent on how we handle them.
Issue Type

[ ] New Feature
[x] Enhancement
[ ] Bug
[ ] Other

Expected Behavior
Method 1: delete the props so they are not spread
  render() {
    const { children, ...customProps } = this.props;
    const clonedChilItems = this.clonedChildItems(children);
    if ('onClick' in customProps) {
      delete customProps.onClick;
    }
    if ('onKeyDown' in customProps) {
      delete customProps.onKeyDown;
    }
    return (
      <TableRows {...customProps}>
        {clonedChilItems}
      </TableRows>
    );
  }

}

Method 2: ignore the eslint rule
  render() {
    /* eslint-disable no-unused-vars */
    const { defaultElement, tiny, small, medium, large, huge, responsiveTo, ...customProps } = this.props;

    return (
      <div {...customProps} ref={this.setContainer}>
        {this.props[this.state.element]}
      </div>
    );
  }
}

Current Behavior

Here is some interesting discussion on an issue logged in the babel-eslint repo. One comment referenced to this proposal which suggested the use of _ for unused variables.

It seems eslint #7968 PR fixes this issue. If there are unused props and ...customProps(remainder props), it's not considered to be unused props. As those props will affect the value in remainder props. So it won't get lint error.

Let's go with option 1 but take a look at the following
Need to:

Check what version this fix landed in eslint
Check what airbnb config to see if it took this rule

https://github.com/airbnb/javascript/blob/d48083796c3a1442e44c86b050cc65a353f9bf43/packages/eslint-config-airbnb-base/CHANGELOG.md#1111--2017-03-03

As this CHANGELOG mentioned, airbnb base 11.1.1 enables ignoreRestSiblings no-unused-vars, which removes of the no-unused-vars eslint error. This removes the need to delete props that should not be spread.


Minor issues in overlord

This is just some comments from an initial general review
Package structure
Packages should be named after their functions but the directory tree should reflect dependencies. The overlord/interests package is used by packages outside overlord. Since it is a shared util it might be worth considering moving it one level up to highlight what is shared across packages.
Overlord
Naming convention
File: ./overlord/overlord_test.go: underscores in names are discouraged.
Implement a deadline
Line: ./overlord/overlord.go:116:		// TODO(paradoxengine): most likely, a deadline here?
A dummy code (untested) to do it
	var interests []*mappedInterest
	for name, m := range minions {
		// TODO(paradoxengine): most likely, a deadline here?
		var intResp *pb.ListInitialInterestsResponse
		var err error
		done := make(chan struct{})
		go func(){
			intResp, err = m.ListInitialInterests(ctx, &mpb.ListInitialInterestsRequest{})
			close(done)
		}()
		select {
			case <- time.After(5*time.Second):
				// handle timeout
				continue
			case <- done:
		}
		if err != nil {
			return nil, err
		}
		for _, v := range intResp.GetInterests() {
			interests = append(interests, &mappedInterest{
				interest: v,
				minion:   name,
			})
		}
	}
	return interests, nil

copy is a shallow copy
Line: ./overlord/overlord.go:143:	copy(scanState.interests, s.initialInterests)
Beware this is a shallow copy and might behave weirdly if the copied slice elements are then modified
Potential race condition
grpc.Serve might spawn several goroutines at the same time, so it might be worth to protect some calls with a mutex (add a --gotsan or --race flag during tests to enable the race detector)
For example the following field is both written and read after server initialization:
Line: ./overlord/overlord.go:34:	scans            map[string]state
Reads:
overlord/overlord.go:161:	scan, ok := s.scans[req.GetScanId()]
overlord/overlord.go:176:	scan, ok := s.scans[req.GetScanId()]
Write:
overlord/overlord.go:150:	s.scans[scan.ScanId] = scanState
Native go maps are not concurrent safe, maybe protect it with a sync.RWMutex or use a sync.Map instead.
Nits:
Line:./overlord/overlord_test.go:90:// TOOD(paradoxengine): the overlord still needs plenty of unit tests typo on TODO.
Line:./overlord/overlord_test.go:90:// TOOD(paradoxengine): the overlord still needs plenty of unit tests maybe take a look at the cover tool.

@paradoxengine you might want to take a look at this and close it as this is due to a misunderstanding.

This is actually pretty awesome and I'm going to address the stuff in it. Thanks!

Looking at the notes:
0) Good point. I'll do it.

I believe the _test.go syntax is pretty standard? Seems to be what gazelle uses to know what is a test for the bazel test targets.
deadline. UHM. Shouldn't I just be able to derive a deadline from the context, by extending the ctx (which is background at this point)? I'd expect everything to be automagically handled then.
copy shallow - yep, that's WAI, i'm ok having more interests added/removed if we change the ones in the overlord. Is that uberconfusing?
I'm holding off on this because state is being fully revamped (there is a pull request out now).
Ah! Fixed. Yep, aware of the coverage instrumentation.

for filenames, not for function names that are in that file.
If you derive a deadline from context you still have to use a select statement to listen for timeout just use <- ctx.Done() as a case.
As long as that's what you intended to do that's fine.
ack

Oh so this is actually about the names of the test functions. What's the practice there? I really like to have methodundertest_condition_expectedResults. Please don't tell me the convention is to just have a single name like testStuff.
2- Ah good point. Let me work on it.
ack.

The convention is TestFunctionBeingTestedCondition for tests and BenchmarkFunctionBeingBenchmarkedSizeOfTheBenchmark, e.g. TestDoMyStuffHeavyLoad, TestMyFuncCanCrash, TestMyFuncConcurrently, BenchmarkDoTheThing1000, BenchmarkDoTheThingConcurrently10


update values

What has changed and why?
Updated benefit schedule values
How to test this change
Compare values in the code with the values in the benefit schedule for 2018
Test the app on the front-end
important: supported living has a value for parents with 1 child, ensure to test this by entering 1 dependant
closes #484

[ ] has automated tests
[ ] at least one a reviewer ran the code
[ ] tested in small screen
[ ] tested in Chrome
[ ] tested in Firefox
[ ] tested in IE
[ ] tested in Safari
[ ] i18n
[ ] tested in screen reader/contrast <-- remove this if no UX change

@Br3nda this is ready for review