Parsing strings containing variable expansion

Hi,
I'm having difficulties with parsing strings that contain variable expansions like in Bash. "Hello, $name!".
(So this is either a newbie question, or a feature request.)
When I run this example, each character in the string is processed as a separate terminal. It makes sense why it happens but I don't want it to happen. It also seems to decimate performance on a larger input.
import lark

parser = lark.Lark(r'''
IDENTIFIER: /[A-Za-z_][A-Za-z_0-9]*/
string    : "\"" ( CHAR | ESCAPE | expansion ) * "\""
ESCAPE    : "\\" ( "$" | "\"" | CHAR )
expansion : "$" IDENTIFIER
CHAR      : /[^$"\n]/
''', start='string')

tree = parser.parse('"Hello, $name! That will be \$9.95"')
print(tree.pretty())

string
  H
  e
  l
  l
  o
  ,

  $name
  !

  T
  h
  a
  t

  w
  i
  l
  l

  b
  e

  \$
  9
  .
  9
  5

I've tried changing /[^$"\n]/ to /[^$"\n]+/ but that causes an error.
Existing suboptimal options I have:

Accept the poor performance and concatenate characters
Call a separate string parser recursively during traversal

Note that this is the simplest possible scenario. What about expressions nested in a string, like Ruby's "Hello, #{arbitrary + expression}!" or Python's new f'Hello, {arbitrary + expression}!'? python3.lark doesn't seem to have these, anyway...

That happens because you've defined string as a rule, and not a terminal.
Try this:
STRING    : "\"" ( CHAR | ESCAPE | expansion ) * "\""

A terminal cannot contain a rule, last I checked.

See the edit

Also, if you want to keep it as a rule, so that you can observe the escape / expansion in the tree, try changing it to:
string    : "\"" ( WORD | ESCAPE | expansion ) * "\""

WORD: CHAR+

I cannot just change everything to terminals, my actual rules are more complicated with expressions nested in them. (see also the bottom of my original post)
About keeping as a rule:
import lark

parser = lark.Lark(r'''
IDENTIFIER: ("A" .. "Z" | "a" .. "z") ("A" .. "Z" | "a" .. "z" | "0" .. "9") *
string    : "\"" ( WORD | ESCAPE | expansion ) * "\""
ESCAPE    : "\\" ( "$" | "\"" | CHAR )
expansion : "$" IDENTIFIER
CHAR      : /[^$"\n]/
WORD      : CHAR +
''', start='string')

tree = parser.parse('"Hello, $name! That will be \\$9.95"')
print(tree.pretty())

lark.exceptions.UnexpectedCharacters: No terminal defined for '9' at line 1 col 31

"Hello, $name! That will be \$9.95"
                              ^

Expecting: {Terminal('IDENTIFIER')}

You make it sound like your bug is my fault.
Try excluding \ from CHAR:
CHAR      : /[^$"\n\\]/

Sorry about that, and thanks.
That really was the reason why everything I tried  failed.
import lark

parser = lark.Lark(r'''
IDENTIFIER: ("A" .. "Z" | "a" .. "z") ("A" .. "Z" | "a" .. "z" | "0" .. "9") *
string    : "\"" ( WORD | ESCAPE | expansion ) * "\""
ESCAPE    : "\\" ( "$" | "\"" | CHAR )
expansion : "$" IDENTIFIER
CHAR      : /[^$"\n\\]/
WORD      : CHAR +
''', start='string')

tree = parser.parse('"Hello, $name! That will be \\$9.95"')
print(tree.pretty())

string
  Hello,
  expansion	name
  ! That will be
  \$
  9.95


Why?

What's the difference between this and Godot's internal translation system?

There are two differences. In principle, it is a wrapper of the translation server anyway.
If you don't want to do too much in gdscript like tr("key"..... the script does it automatically based on the node name, so for the lazier ones. Furthermore, Cyrillic and Asian or other characters are not supplied directly in Godot. The script loads the corresponding fonts directly and includes the necessary noto fonts from google for Chinese, Japanese, Cyrillic, Thai, Arabic, etc. in the asset. When changing languages, the necessary fonts are then also loaded directly.


Large positive prompts trigger 'Error in function: AITemplateModelContainerRun'

This is great, gives about a 40% speed boost for me when it works, but oddly going above above some upper limit of characters in the positive prompt throws a 'Error in function: AITemplateModelContainerRun' when executing.  Syntax nor number of tokens doesn't seem to affect it.  Nor does the same happen for negative prompt.  And the limit is different depending on the nodes that are loaded, model used, etc but I don't notice a pattern there necessarily.  With the default workflow with AITemplateLoader and AITemplateVAEDecode subbed/chained in, basev1.5pruned model, the character limit appears to be ~590 for instance.
Traceback attached.  Any clue what's going on?
stack.txt

#102
This commit increased the size of the max clip chunks enabling 2,310 tokens.


Update imageio.imsave -> imageio.v3.imwrite

This PR updates documentation and code to use imageio's new v3.imwrite rather than the deprecated imsave.  It uses the import, import imageio.v3 as iio, as recommended in imageio's narrative documentation.
Fixes #132.

Thanks @letmaik for the ping.  I've now updated every use of imageio in the repo to use imageio.v3 -> iio.  I also bumped the version of imageio required in dev-requirements.txt so we no longer need to do version checking.  That eliminates the need for separate import imageio and import imageio.v3 as iio lines.


Less copying during dist installation

Per #904 copying the contents of dists out of the extracted staging
directory and then later deleting that same staging directory consumes
60s out of a total of 200s on Windows.
Wall clock testing shows this patch reduces
rustup toolchain install nightly from 3m45 to 2m23 for me - including
download times etc.
I'm sure there is more that can be done, thus I'm not marking this as
a closing merge for #904.

I can confirm that this branch has been working fine for me in local testing for 2 days.


GroupState: check if provided ip is valid

Raise a ValueError if the provided ip address is not a multicast ipv6.

Another great PR!!
Thank you @leoplo :trophy:


Cop idea: ExampleStatementsCount

In my experience, RSpec/ExampleLength is somewhat useful cop which, though, frequently misses a point: it constantly flag statements like this (especially in some JSON API testing):
it {
  is_expected.to match(
    # ....40 lines of nested response specification...
  )
}

I argue that for testing deeply nested structures the code above is the most useful way of writing it :)
When rubocop-rspec flags it, people just move the matcher part into lets, making readability and debuggability worse, not better.
I thought that maybe what we really want is to limit the number of top-level statements inside an example.
It is not the same as limiting the number of expectations -- the statements might prepare some data before expecting (which, in my book, is a sin on itself, so I'll probably set ExampleStatementsCount strictly to 1... But that's just me :)

Agree. Even for a non-nested structure, e.g.:
it_expected.to have_attributes(
  a: 1,
  b: 2,
  c: 3,
  d: 4,
  e: 5
)

move the matcher part into lets

Extracting a part of the matcher into a let is an offence as well to my taste, and is an idea for a cop as well.
Do you think setting
# spec/.rubocop.yml
Metrics/BlockLength:
  IgnoredMethods:
    - describe
    - context
   CountAsOne:
     - hash
     - array

would do?

How's Metrics/BlockLength related here? :thinking:
If you've meant that ExampleLength should have similar settings, I don't believe it will work... nested matchers with hash_including(...) or contain_exactly(...), chains of .and ..., have_attributes(...) and so on.
I believe that just literal counting of top-level statement in example block is 100% enough. If this one statement uses 300-line data structure to compare -- let it be.

Metrics/BlockLength's Max is 25, but you're right, its folding (CountAsOne) capabilities are quite limited.
Another option would be RSpec/MultipleExpectations with e.g. Max: 5 (or 1).
Since it's possible to define rules on a directory basis, ExampleLength could be disabled for such specs, and MultipleExpectations enabled.
Do you think it makes sense to count other statements towards the limit as well?

Do you think it makes sense to count other statements towards the limit as well?

I do! But YMMV. In my book, this is bad:
it 'does blah blah' do
  create(:something)
  create(:something_else)

  get(:foo)

  body = last_response.body
  data = JSON.parse(body)

  expect(data).to now_we_are_talking
end

So, ideally, it should be exactly one statement always :) One exception is:
it 'sends its messages' do
  do_something
  expect(something).to have_received(:something)
end

I solve it in saharspec with
its_block { is_expected.to send_message(something, :something) }

...but that's obviously not for everybody.
And actually, my "bad" example is a "typical" example in tutorials, and even on the main of https://rspec.info/ :shrug:

Related: #249

we 💯 should add support for CountAsOne in ExampleLength

Since ExampleLength supports the CountAsOne option, perhaps we can close this?

Fixed in https://github.com/rubocop/rubocop-rspec/pull/1139


Add list of community created projects

... and point to it from the README. This addresses #995, #1223. We'd like to link only to things in this repo from the README, but it's a good idea to add a place for projects using or enhancing TensorFlow.

Merged


Fix android zoom bug

Fixes https://github.com/d3/d3-zoom/issues/175, https://github.com/d3/d3-zoom/issues/195, https://github.com/d3/d3-zoom/issues/172

Thanks! The situation would be clearer if we had a test case somewhere, an a page with the fixed code. I've been trying to reproduce the problem and see if this fixed it, but still no success.

I see some sort of bug on (my daughter's phone) Android with this block : after zooming the page (natively), the chart is frozen (the d3 zoom doesn't work).
However this bug also happens with the patched version of d3-zoom @ this fixed block.

@Fil what is model of your daughter's phone?
I got problem on OnePlus, but it's

Huawei P Smart; Android 10.0.0

@Fil can be useful for you https://github.com/d3/d3-zoom/issues/172#issuecomment-716205243


admin123

Hello,
I just installed the software and I am testing it... I am definitely impressed and will leave a review once I have had time to thoroughly test it. I am now wondering if the admin URL can be named something other than admin123... in general practice I never use the name admin for anything.
Thanks

Lookup the wiki. There it is explained step by step
Op ma 4 feb. 2019 13:05 schreef Compstuff<EMAIL_ADDRESS>
Hello,
I just installed the software and I am testing it... I am definitely
impressed and will leave a review once I have had time to thoroughly test
it. I am now wondering if the admin URL can be named something other than
admin123... in general practice I never use the name admin for anything.
Thanks
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/pH7Software/pH7-Social-Dating-CMS/issues/431, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AcIBCQpsyBA8WwtXNHvObUOtUMHVtCAbks5vKCH6gaJpZM4ahEQX
.

Like what @zeerprettiggestoord said :),
Yes, it's explained in the doc, here: https://ph7cms.com/doc/en/rename-the-admin-folder
Finally, since v12.1, all URL lookups are cached for optimization purpose.
Because of that, you will also have to to remove /_protected/data/cache/pH7_cache/str/uri/ folder. This folder will be regenerated and the URIs cached recreated.
All the best

Is it still an issue @Compstuff
Everything working fine now?

Please close this ticket if the problem is solved. Let me know if this isn't the case.
Thank you @Compstuff


Unpin dependencies to support old version of Django

There are a number of requirements that were pinned to work with Django 1.9, these can mostly be unpinned now. A few of them are:

DRF
Allauth
django-filter
django-taggit

We have an open PR for this https://github.com/rtfd/readthedocs.org/pull/4792


License discussion

Hi! Let's discuss the license we will use :) These are the instructions for milestone

Examine the license for your project and consider whether this is the choice you want to make, or whether you want to change the license. Discuss and reason the license choice in an issue in your package repository. All team members should make meaningful contributions to this discussion in the GitHub issue.

I think based on the notes we should not be using a Creative Commons License, since our package is mainly code. What do you guys think?

I totally agree with you. We should be using the most common license. I am pretty ok with MIT license

Yeah good idea, I think the MIT license makes sense for our purposes! I checked https://choosealicense.com/ and according to their description, it seems that the MIT license is quite suitable, since we want it to be simple in permissive. What do we think of the GNU GPL v3 though - I think it seems a bit too open but I may just be too conservative I guess.

I guess a key differentiating scenario is when someone would want to use our package in proprietary software without the obligation to share improvements. If it doesn't bother us, then the MIT License is a great choice. On the other hand, if we strongly believe in the ethos of free software and want all derivatives of your work to also contribute to the open-source community, then the GNU GPL v3 would be more suitable.

After going through the terms of GNU GPL, I think it has issues with copyleft provisions which imposes restrictions on derivative works. While MIT license as we know is quite permissive and imposes fewer restriction on how the code can used, modified or distributed. Since ours is a package I think we need to have this flexibility for further work to be done using our package.

It seems both four of us are in favor of the MIT License on the basis of the open source spirit~ Shall we make the final decision to stick to our current MIT license then?

Yes, that sounds great! Thank you for the discussion everyone, I think you all brought up cool and insightful comments which I did not think of before this discussion :) Let's go ahead with that then! :)


[cli] cli broken

It seems the cli is broken since a few commits.
The error I get running echo .exit | cargo cli is thread 'main' panicked at 'No option 'key' defined', /home/maweki/.cargo/registry/src/github.com-1ecc6299db9ec823/getopts-0.2.17/src/lib.rs:767:21
I used git bisect and identified commit 6a1a2658942b29f as the first one where that happens.

I've addressed this locally, and will push a fix for you to test.  Thanks for filing!

I've addressed this locally, and will push a fix for you to test. Thanks for filing!

@maweki could you cherry-pick https://github.com/ncalexan/mentat/commit/0e6e58edea38409f525164cad28a620d88378cc8 and verify that it fixes the issue for you?  If you could push back a PR for merging that I would appreciate -- my local tree is in the middle of other work.

@ncalexan yes, this works. A Pull-request is attached (#753)


Unexpected normals when colliding with Tilemap

Tested versions

Reproduced in 4.3 Dev 5
Reproduced in 4.2.1 Stable

System information
Godot v4.2.1.stable - Windows 10.0.19045 - Vulkan (Mobile) - dedicated AMD Radeon RX 6600 XT (Advanced Micro Devices, Inc.; 31.0.22023.1014) - AMD Ryzen 5 5600X 6-Core Processor (12 Threads)
Issue description
While creating a node to monitor contacts on a CharacterBody2D I've noticed that raycasts that are going downward are sometimes being reported as having a horizontal normal. This should not be possible, the tilemap is a flat surface with many boxes, but with no gaps between the tiles. This happens in every direction, but for simplicity i'll focus on when it happens moving downwards.
I think the raycast is clipping through the corner of one tile, and into the wall of a surrounding tile somehow.

In the above snippet of the repro project, the white arrows show the general direction of the raycasts.
And on some frames the following normal occurs sometimes. (the direction of the red arrow shows the normal, which shouldn't be possible with a circle colliding on a flat surface.)

Sorry, wish I could explain it a bit better but I hope the images and project help to realize the issue here.
I've isolated the contact checker script and made a reproduction of the issue.
(Also, is there no way to get contacts for Characterbody2D nodes? It feels like getting contacts on these nodes would be a very common usecase, with no obvious solution. And its even more confusing considering the tilemap tutorial mentions adding data to tiles that would need to be accessed through querying contacts.)
Here is a screenshot of the issue occurring at runtime.

Steps to reproduce
Rub a colliding body against a flat tilemap's surface and shoot a raycast at the colliding points. Occasionally a completely incorrect normal will be reported.
Minimal reproduction project (MRP)
reproduction_normalissue.zip

This should not be possible, the tilemap is a solid surface, with no gaps between the tiles.

This isn't true, it's made up of many individual collider shapes, they are not combined into one

This should not be possible, the tilemap is a solid surface, with no gaps between the tiles.

This isn't true, it's made up of many individual collider shapes, they are not combined into one

I appreciate the technical correction, is there a setting or an approach to collision regarding tilemaps that would prevent the issue?
Asking to be sure if this was pointing out the technical distinction between one large rectangle and many tightly aligned boxes, or if there is something I could do that would make this an avoidable issue.
Corrected my mistake.

I'm just explaining why you might be seeing this and why the results might not be what you're expecting, I haven't tested your specific case so can't tell exactly what might happening of if there's a bug necessarily, if the down ray points straight down it will hit the side with some chance I'd say

See https://github.com/godotengine/godot/issues/89458
Includes a potential workaround down in the comments.


[2pt]  Display joined missions in My profile - Filters

Render a list of all joined missions (use filter()) on the "My profile" page.

Pull request for this task


Delete field from JsonPath

Sometimes the response of a request might contain some timestamp or id or any other request specific fields.
These fields shall be either ignored from comparison or deleted from the JsonPath.
Probably deleting the field is more suitable.
Example:
Suppose we have a String str =  {  "resources" : [ {        "objectId"  :  12,         "timestamp" : "651564"      } , {        "objectId" : 121,         "timestamp" : "651564" }     ],    "timestamp" : "6515622" }
After running the code below:
JsonPath j = JsonPath.from(str)
j.remove("resources.timestamp")
j.remove("timestamp")
We get
 {  "resources" : [ {        "objectId"  :  12      } , {        "objectId" : 121   }     ]}
What do you think @johanhaleby ?
I think I might help with Merge Request if you are up to this

Why we want to delete the field. We can set values to null in those cases.. Will it work? Or we can use JsonPath from com.jayway.jsonpath.JsonPath and then use
JsonPath.parse(json).delete("$.timestamp");


mkcert now provides a version command

Issue #191 solved by this PR.

@rfay: I refactored travis script too.

It might be reasonable to fiddle with the .travis.yml to use make for the builds of OS-specific versions.

Done ;)

Thank you, I'll land something similar but a little more limited, we don't need a lot of the extras in the Makefile and I like to keep builds consistent.


Modal focus management

The modal can be improved with better focus management to help keyboard users to access content more logically.

[ ] When opening a modal, focus should always move to the modal title (also with wizards)
[ ] When closing a modal, focus should always return to the previous location

This should already be happening with our focus trap, but it was reported to have some problems with wizards so perhaps there is a problem only in how wizards are using it. Need to verify the behavior fully in modals and wizards.

I replicated the issue. The focus trap works in Chrome but does not work in Safari. Going to do some more browser testing as well.

There are no modal trapping issues reported at http://cx-guidelines.vmware.com/clarityTesting/.
But Cory and I did discuss issue #117 at http://cx-guidelines.vmware.com/clarityTesting/ about screen readers being able read content outside of modal dialogs. Due to the lack of support for aria-modal,
the ideal solution is to hide the rest of the application from assistive technologies using aria-hidden="true" while the modal is in view but this is probably not possible unless the the modal is a sibling element to the rest of the application.
So the best we can do is:

use aria-modal="true" on the dialog and wait for support to improve
add textual boundaries i.e, "beginning of edit dialog" "end of edit dialog" to tell the user if that they are reading a dialog and where its boundaries are.


[Idea] replace json property names with ordinals to reduce bandwidth

Just a thought, so we already have query -> id mapping. Would it then not be possible to extend that concept to the JSON payload property names?
I.e.
{
   orders: [
       id: "",
       customer: {...}
   ]
}

to
{
   1: [
       2: "",
       3: {...}
   ]
}

and then have apollo restore the property names?

Does this result in a significant reduction in bundle size post-gzipping?

Will test tomorrow. Presumably largest benefit would be for non gzip responses

Interesting Idea. I will give it a try on Monday.

A quick and dirty test on a large json file that I had.

output.json is a large json array with redundant keys
output.optimised.json re-names all keys from strings, into single/double character pseudo keys (as per OP)


Add error messages

Error messages for adding empty skills or werte.

And a warning if you want to change the template and would loose your progress that way.

And error Message for saving a Character with the wrong amount of points used or no name

Splendid, Splendid. Maybe one should be able to force a character with the wrong number of points.


fix(signing): remove duplicate timezone information from SigningTime

Fixes https://github.com/XML-Security/signxml/issues/265

Thanks for finding and fixing this!


Make default parameter overloads binary compatible

This changes all overloads from https://github.com/microsoft/OpenAPI.NET/commit/f00c27cc0e104dd67ae26f85323950a7ae44e5d4 to be binary compatible for not having 1.2.0 break 1.1.4 upgrades

@darrelmiller any idea if there were more of these around? Then I can get them all in the PR

Found one more in https://github.com/microsoft/OpenAPI.NET/commit/f00c27cc0e104dd67ae26f85323950a7ae44e5d4

I'm hunting also

I had hoped https://github.com/PublicApiGenerator/PublicApiGenerator/issues/199 would've helped me find them.
But the only diffs it gave me is these new types in 1.2.1:
namespace Microsoft.OpenApi.Writers
{
    public class OpenApiWriterSettings { }
    public enum ReferenceInlineSetting
    {
        DoNotInlineReferences = 0,
        InlineLocalReferences = 1,
        InlineAllReferences = 2,
    }
}

And the removal of
namespace Microsoft.OpenApi.Services
{
    public static class OpenApiComparer { }
    public class OpenApiDifference { }
}

But no indication about the default params

Gotcha! Diffed the XML comments between 2 packages:
New in 1.2.1:
        <member name="M:Microsoft.OpenApi.Any.OpenApiString.#ctor(System.String,System.Boolean)">
            <summary>
            Initializes the <see cref="T:Microsoft.OpenApi.Any.OpenApiString"/> class.
            </summary>
            <param name="value"></param>
            <param name="isExplicit">Used to indicate if a string is quoted.</param>
        </member>

We solved that one.
        <member name="M:Microsoft.OpenApi.Any.OpenApiString.IsExplicit">
            <summary>
            True if string was specified explicitly by the means of double quotes, single quotes, or literal or folded style.
            </summary>
        </member>
        <member name="M:Microsoft.OpenApi.OpenAPIWriterExtensions.GetSettings(Microsoft.OpenApi.Writers.IOpenApiWriter)">
            <summary>
            Temporary extension method until we add Settings property to IOpenApiWriter in next major version
            </summary>
            <param name="openApiWriter"></param>
            <returns></returns>
        </member>
        <member name="P:Microsoft.OpenApi.Writers.OpenApiWriterBase.Settings">
            <summary>
            Settings for controlling how the OpenAPI document will be written out.
            </summary>
        </member>
        <member name="M:Microsoft.OpenApi.Writers.OpenApiWriterExtensions.WriteRequiredProperty(Microsoft.OpenApi.Writers.IOpenApiWriter,System.String,System.String)">
            <summary>
            Write required string property.
            </summary>
            <param name="writer">The writer.</param>
            <param name="name">The property name.</param>
            <param name="value">The property value.</param>
        </member>
        <member name="T:Microsoft.OpenApi.Writers.ReferenceInlineSetting">
            <summary>
            Indicates if and when the reader should convert references into complete object renderings
            </summary>
        </member>
        <member name="F:Microsoft.OpenApi.Writers.ReferenceInlineSetting.DoNotInlineReferences">
            <summary>
            Create placeholder objects with an OpenApiReference instance and UnresolvedReference set to true.
            </summary>
        </member>
        <member name="F:Microsoft.OpenApi.Writers.ReferenceInlineSetting.InlineLocalReferences">
            <summary>
            Convert local references to references of valid domain objects.
            </summary>
        </member>
        <member name="F:Microsoft.OpenApi.Writers.ReferenceInlineSetting.InlineAllReferences">
            <summary>
            Convert all references to references of valid domain objects.
            </summary>
        </member>
        <member name="T:Microsoft.OpenApi.Writers.OpenApiWriterSettings">
            <summary>
            Configuration settings to control how OpenAPI documents are written
            </summary>
        </member>
        <member name="P:Microsoft.OpenApi.Writers.OpenApiWriterSettings.ReferenceInline">
            <summary>
            Indicates how references in the source document should be handled.
            </summary>
        </member>

Harmless.
        <member name="M:Microsoft.OpenApi.Extensions.OpenApiSerializableExtensions.Serialize``1(``0,System.IO.Stream,Microsoft.OpenApi.OpenApiSpecVersion,Microsoft.OpenApi.OpenApiFormat,Microsoft.OpenApi.Writers.OpenApiWriterSettings)">

        <member name="M:Microsoft.OpenApi.Writers.OpenApiJsonWriter.#ctor(System.IO.TextWriter,Microsoft.OpenApi.Writers.OpenApiWriterSettings)">

        <member name="M:Microsoft.OpenApi.Writers.OpenApiWriterBase.#ctor(System.IO.TextWriter,Microsoft.OpenApi.Writers.OpenApiWriterSettings)">
            <summary>
            Initializes a new instance of the <see cref="T:Microsoft.OpenApi.Writers.OpenApiWriterBase"/> class.
            </summary>
            <param name="textWriter"></param>
            <param name="settings"></param>
        </member>

        <member name="M:Microsoft.OpenApi.Writers.OpenApiYamlWriter.#ctor(System.IO.TextWriter,Microsoft.OpenApi.Writers.OpenApiWriterSettings)">

A new default param!

Ok, seems I got them all in this PR, all yours now @darrelmiller :)


(mkdocs-material) Add case for dependency versioning change

Description
Fixes the update script to account for compatible version dependency in requirements.txt
https://packaging.python.org/en/latest/specifications/version-specifiers/#version-specifiers
Motivation and Context
Fixes #2408
How Has this Been Tested?
Update script ran on Windows 10, package tested in Chocolatey test env.
Screenshot (if appropriate, usually isn't needed):
Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Migrated package (a package has been migrated from another repository)

Checklist:

[x] My code follows the code style of this repository.
[ ] My change requires a change to documentation (this usually means the notes in the description of a package).
[ ] I have updated the documentation accordingly (this usually means the notes in the description of a package).
[ ] I have updated the package description and it is less than 4000 characters.
[x] All files are up to date with the latest Contributing Guidelines
[x] The added/modified package passed install/uninstall in the chocolatey test environment.
[x] The changes only affect a single package (not including meta package).

:white_check_mark: Package verification completed without issues. PR is now pending human review

:white_check_mark: Package verification completed without issues. PR is now pending human review


rados: Operation not supported

I am trying to get a basic version working on my local ceph installation. However, I keep getting operation not supported, however it seems luminous is supported by this library. Any help would be greatly appreciated.
Go code:
package main

import (
	"fmt"
	"flag"
	rados "github.com/ceph/go-ceph/rados"
)

var addr *string = flag.String("addr", "", "a string")

func main(){

	flag.Parse()
	fmt.Println("Starting")
	conn, err := rados.NewConn(); if err != nil {
		panic( err )
	}
	fmt.Println("Connection created")
	err = conn.ParseCmdLineArgs( []string{ "--mon-host", *addr } ); if err != nil {
		panic( err )
	}
	err = conn.ReadDefaultConfigFile(); if err != nil {
		panic( err )
	}
	fmt.Println("Read Default Config")
	err = conn.Connect(); if err != nil {
		panic( err )
	}
	fmt.Println("Connected")

	pools, _ := conn.ListPools()
	fmt.Println(pools)

}

Build Script:
#/bin/bash
export CGO_CPPFLAGS="-I/ceph/src/include"
export CGO_LDFLAGS="-L/ceph/build/lib"
go build .

Ceph Versions:
$ ceph osd versions
{
    "ceph version 12.2.1 (3e7492b9ada8bdc9a5cd0feafd42fbca27f9c38e) luminous (stable)": 63
}
$ ceph mon versions
{
    "ceph version 12.2.2 (cf0baeeeeba3b47f9427c6c97e2144b094b7e5ba) luminous (stable)": 3
}

Application output:
Starting
Connection created
Read Default Config
panic: rados: Operation not supported

goroutine 1 [running]:
main.main()
	/go/src/github.com/org/repo/main.go:29 +0x3b1

Bump? Is there any additional information I can provide to help add context around the issue?

@qrpike this is a little strange. can you find out what version of the rados library you are linking to?

@noahdesu  Sure, here is the output:
$ apt show libcephfs-dev librados-dev librbd-dev
Package: libcephfs-dev
Version: 12.2.12-1xenial
Priority: optional
Section: libdevel
Source: ceph
Maintainer: Ceph Maintainers<EMAIL_ADDRESS>Installed-Size: 89.1 kB
Depends: libcephfs2 (= 12.2.12-1xenial)
Conflicts: libceph-dev, libceph1-dev, libcephfs2-dev
Replaces: libceph-dev, libceph1-dev, libcephfs2-dev
Homepage: http://ceph.com/
Download-Size: 18.3 kB
APT-Manual-Installed: yes
APT-Sources: https://download.ceph.com/debian-luminous xenial/main amd64 Packages
Description: Ceph distributed file system client library (development files)
 Ceph is a massively scalable, open-source, distributed
 storage system that runs on commodity hardware and delivers object,
 block and file system storage.  This is a
 shared library allowing applications to access a Ceph distributed
 file system via a POSIX-like interface.
 .
 This package contains development files needed for building applications that
 link against libcephfs.

Package: librados-dev
Version: 12.2.12-1xenial
Priority: optional
Section: libdevel
Source: ceph
Maintainer: Ceph Maintainers<EMAIL_ADDRESS>Installed-Size: 2623 kB
Depends: librados2 (= 12.2.12-1xenial), libc6 (>= 2.16), libgcc1 (>= 1:3.0), libstdc++6 (>= 5.2)
Conflicts: librados1-dev, librados2-dev
Replaces: librados1-dev, librados2-dev
Homepage: http://ceph.com/
Download-Size: 578 kB
APT-Manual-Installed: yes
APT-Sources: https://download.ceph.com/debian-luminous xenial/main amd64 Packages
Description: RADOS distributed object store client library (development files)
 RADOS is a reliable, autonomic distributed object storage cluster
 developed as part of the Ceph distributed storage system.  This is a
 shared library allowing applications to access the distributed object
 store using a simple file-like interface.
 .
 This package contains development files needed for building applications that
 link against librados.

Package: librbd-dev
Version: 12.2.12-1xenial
Priority: optional
Section: libdevel
Source: ceph
Maintainer: Ceph Maintainers<EMAIL_ADDRESS>Installed-Size: 78.8 kB
Depends: librados-dev (= 12.2.12-1xenial), librbd1 (= 12.2.12-1xenial)
Conflicts: librbd1-dev
Replaces: librbd1-dev
Homepage: http://ceph.com/
Download-Size: 16.3 kB
APT-Manual-Installed: yes
APT-Sources: https://download.ceph.com/debian-luminous xenial/main amd64 Packages
Description: RADOS block device client library (development files)

N: There are 3 additional records. Please use the '-a' switch to see them.

Also, here is the Docker file I'm using to build this image:
FROM golang:1.12.7

RUN apt-get update && apt-get install -y \
  apt-transport-https \
  git \
  software-properties-common \
  uuid-runtime \
  wget

ARG CEPH_REPO_URL=https://download.ceph.com/debian-luminous/
RUN wget -q -O- 'https://download.ceph.com/keys/release.asc' | apt-key add -
RUN apt-add-repository "deb ${CEPH_REPO_URL} xenial main"

RUN apt-get update
RUN apt-get install libcephfs-dev librados-dev librbd-dev -y

RUN go get github.com/ceph/go-ceph

what happens if you remove the ParseCmdLineArgs line and get the monitor address from the default ceph.conf file? does the local rados cli tool work for you on the same node by reading the default ceph.conf?

I'm also having troubles (same error msg = "Operation not supported") trying to establish a connection while passing one of the MON ip addr:
client, err := NewCephClient(cephConfig.MonHost, cephConfig.MonPort)
	if err != nil {
		fmt.Printf("[ERROR] While trying to establish the connection to the ceph cluster %s\n", err.Error())
	}

	defer client.Destroy()

any ideas?, basically I want to establish a connection to get some space info from the cluster


Infinite scroll layout

First thanks for this awesome stuff.
I want to achieve an infinite scroll layout using savvior. There're some "append/prepend" methods like in Masonry or Salvattore?

Thanks for opening this.
Having append/prepend methods has always been planned although these aren't implemented yet. Do you fancy sending in a PR? :)

+1 on this.

+1

Did some work on this, now there is a PR open (https://github.com/attila/savvior/pull/23). Please check out that branch and feed back on that PR with any of your findings.


Update sbt-dotty to 0.4.4

Updates ch.epfl.lamp:sbt-dotty from 0.4.2 to 0.4.4.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "ch.epfl.lamp", artifactId = "sbt-dotty" } ]

labels: sbt-plugin-update, semver-patch

Codecov Report

Merging #1555 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1555   +/-   ##
=======================================
  Coverage   85.53%   85.53%
=======================================
  Files          58       58
  Lines        2206     2206
  Branches      107      107
=======================================
  Hits         1887     1887
  Misses        319      319

Impacted Files
Coverage Δ

...les/core/shared/src/main/scala/io/circe/Json.scala
78.77% <0.00%> (-1.68%)
:arrow_down:

...re/shared/src/main/scala/io/circe/JsonNumber.scala
96.38% <0.00%> (-1.21%)
:arrow_down:

.../core/shared/src/main/scala/io/circe/Decoder.scala
85.32% <0.00%> (+0.27%)
:arrow_up:

...rc/main/scala/io/circe/numbers/BiggerDecimal.scala
85.38% <0.00%> (+0.58%)
:arrow_up:

...rc/main/scala/io/circe/shapes/SizedInstances.scala
92.85% <0.00%> (+14.28%)
:arrow_up:

Continue to review full report at Codecov.

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


AzureML Designer integration with SAR

Description

One end 2 end example of Designer integration with SAR
Related Issues

Checklist:

[ ] I have followed the contribution guidelines and code style for this project.
[ ] I have added tests covering my contributions.
[ ] I have updated the documentation accordingly.
[ ] This PR is being made to staging and not master.

Nitpicking: when you say pip install azureml-designer-tools==0.1.18 is 0.1.18 the latest version? We probably don't want to update this file whenever there is a new release of azureml-designer-tools.

this notebook is focused on that version, which is the one it was tested (in fact also 0.1.10), since designer is still under strong development, we pinned the version. When it is more stable, we can revisit this rule


Rename [[dependencies]] to [[constraint]]

related issue #509

@sdboyer done!

Gotta chase the conflicts :/
FYI, I'm planning on merging this into a feature branch. Hopefully a short-lived one - I'm aiming for only until Monday.

Hello, what's the status of this? I can fix the conflict and willing to take it forward on getting merge.

Bleh, yeah, the conflict will need fixing.
The status is that this is waiting to be merged simultaneously with a number of other issues that will be the last backwards-compatibility break with Gopkg.toml and Gopkg.lock. Unfortunately, they weren't all quite ready last week, so the merging of this was delayed.
At present, all that's left is #225 and a small addition to #584 that incorporates #421 - that, and, I need to write up some release notes + caveat emptor.

FYI, this has been incorporated into the stabilize-files branch, which we'll merge all at once when everything in #277 is ready.


Bitcoin rank

Description
i have used coinpaprika API to show the current rank of bitcoin in crypto market
Screenshot
Optional

Checklist

[X] API used in this PR was not used in just-calling-random-api before.
[X] API used in this PR is Public or I have permission to use it.
[X] My contribution is working.
[X] My contribution doesn't expose any API keys.
[X] My changes don't generate any new warnings.
[X] My changes don't affect any work done by other developers.

To tick a box, replace [ ] with [x].

Thanks, this is a unique contribution.


When will you update the code?

Is the code available now?

Sorry for the delay!
We have been a bit busy lately. We plan to release the code shortly after EMNLP.
Thank you for your patience.

I am waiting too. Hope to see it soon.

The code has been uploaded.
Thank you for your patience!


Add gradient as background for images

Gradient of top 3 dominant colors is added as background

When Cloud Vision API fails to return dominant colors

Looks amazing! :D great work 👍

Do we need background for text now?

Do we need background for text now?

yes, because we still don't know where text would appear on image. So if image size is more in height, then we would need it.


Webview does not take the keyboard focus

Steps to reproduce

Create a flutter app with a Scaffold, AppBar, Drawer and/or AppBar actions and of cause a WebView as body
Click on an input field or textarea within the webview
Open the drawer with a bluetooth keyboard and close it
Try to type "Hello World" with a connected bluetooth keyboard

Expected results
The text field should have the value "Hello World"
Actual results
The text field has the value "Hello" and a more or less random AppBar interaction was executed like the drawer has opened or the app bar action was executed.
Code sample
Code sample
import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const WebViewPage(),
    );
  }
}

class WebViewPage extends StatefulWidget {
  const WebViewPage({super.key});

  @override
  State<WebViewPage> createState() => _WebViewPageState();
}

class _WebViewPageState extends State<WebViewPage> {
  late final webViewController = WebViewController()
    ..setJavaScriptMode(JavaScriptMode.unrestricted)
    ..loadRequest(Uri.parse('https://www.w3schools.com/tags/tryit.asp?filename=tryhtml_textarea'));

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        // TRY THIS: Try changing the color here to a specific color (to
        // Colors.amber, perhaps?) and trigger a hot reload to see the AppBar
        // change color while the other colors stay the same.
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: const Text('Demo'),
        actions: [
          IconButton(onPressed: () {
            ScaffoldMessenger.of(context).showSnackBar(const SnackBar(content: Text('Yep you used the action')));
          }, icon: const Icon(Icons.developer_mode))
        ],
      ),
      drawer: const Drawer(
        child: Text('Demo Drawer'),
      ),
      body: WebViewWidget(controller: webViewController),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
https://github.com/flutter/flutter/assets/4619618/51e98f63-2a14-490f-9119-372e8d3d1611

Logs
Logs
I see nothing helpful here

Flutter Doctor output
Doctor output
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.19.6, on macOS 14.4.1 23E224 darwin-arm64, locale de-DE)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2023.2)
[✓] Connected device (3 available)
[✓] Network resources

• No issues found!

Same behavior on Windows

FYI: My current workaround is that I put the AppBar in a ExcludeFocus widget, since there is that (IMHO annoying) PreferredSizeWidget you need to write a lot of boilerplate of it:
UnfocusableAppBar
class UnfocusableAppBar extends StatelessWidget implements PreferredSizeWidget {
  final AppBar _appBar;
  UnfocusableAppBar({
    super.key,
    Widget? leading,
    bool automaticallyImplyLeading = true,
    Widget? title,
    List<Widget>? actions,
    Widget? flexibleSpace,
    PreferredSizeWidget? bottom,
    double? elevation,
    double? scrolledUnderElevation,
    ScrollNotificationPredicate notificationPredicate = defaultScrollNotificationPredicate,
    Color? shadowColor,
    Color? surfaceTintColor,
    ShapeBorder? shape,
    Color? backgroundColor,
    Color? foregroundColor,
    IconThemeData? iconTheme,
    IconThemeData? actionsIconTheme,
    bool primary = true,
    bool? centerTitle,
    bool excludeHeaderSemantics = false,
    double? titleSpacing,
    double toolbarOpacity = 1.0,
    double bottomOpacity = 1.0,
    double? toolbarHeight,
    double? leadingWidth,
    TextStyle? toolbarTextStyle,
    TextStyle? titleTextStyle,
  }): _appBar = AppBar(
    leading: leading,
    automaticallyImplyLeading: automaticallyImplyLeading,
    title: title,
    actions: actions,
    flexibleSpace: flexibleSpace,
    bottom: bottom,
    elevation: elevation,
    scrolledUnderElevation: scrolledUnderElevation,
    notificationPredicate: notificationPredicate,
    shadowColor: shadowColor,
    surfaceTintColor: surfaceTintColor,
    shape: shape,
    backgroundColor: backgroundColor,
    foregroundColor: foregroundColor,
    iconTheme: iconTheme,
    actionsIconTheme: actionsIconTheme,
    primary: primary,
    centerTitle: centerTitle,
    excludeHeaderSemantics: excludeHeaderSemantics,
    titleSpacing: titleSpacing,
    toolbarOpacity: toolbarOpacity,
    bottomOpacity: bottomOpacity,
    toolbarHeight: toolbarHeight,
    leadingWidth: leadingWidth,
    toolbarTextStyle: toolbarTextStyle,
    titleTextStyle: titleTextStyle,
  );

  @override
  Widget build(BuildContext context) => ExcludeFocus(child: _appBar);

  @override
  Size get preferredSize => _appBar.preferredSize;
}

Please be aware that this breaks the usage of the app bar with the keyboard. For my usecase this is acceptable.

I want to type text into the WebView without accidentally executing any other actions. When you used the native UI and use then the WebView the AppBar has the keyboard focus, but you can type text into the input fields. Since the letters "h", "e", "l" and "o" are not handled the AppBar the WebView can consume it, but enter and space is consumed by the other widgets. If the key pressed would not be handled by the WebView it would be less confusing for the customer

Since the letters "h", "e", "l" and "o" are not handled the AppBar the WebView can consume it, but enter and space is consumed by the other widgets.

Do you mean the issue is the Drawer is auto opened when you enter Enter or Space key? I tried with these keys but the input field on WebView consumes them as expected, please see deme below. The Drawer is only opened when I navigate to DrawerButton by pressing Tab key (a way to navigate out the WebView).

Demo
https://github.com/flutter/flutter/assets/104349824/f020fa91-fcd2-4ed6-ba16-7301c41e88c2

Your video shows the expected behavior, which I do not have. I got this report from multiple devices on Android and iOS (also for multiple apps). When I see the highlighted circle the action is always executed by pressing space and enter. However the fact that it is highlighted is also an indicator of a wrong keyboard focus.
Out of curiosity which device and android version did you use for testing? That is not the emulator right? If I remember correctly then those strange keyboard focus bugs do not happen there. I opened in the past another bug for that, but it was closed since there was a simple workaround.

I have that wrong behavior just on real devices, I didn't test it on emulators. I used the same webview version for the test case and the video above. However the production apps are using an older ones.
I tried it now again and it behaved like in your video. But I found a variation which works now again:

Start the app
Click into the text area
Press tab once
Type "hello world"

The visual text focus is after pressing tab on the hamburger menu and still the text area. "hello" will be typed, but the space is consumed by the button in the app bar.
The bug I am referring is https://github.com/flutter/flutter/issues/135811
Oh wow you provided me the workaround 😁

The visual text focus is after pressing tab on the hamburger menu and still the text area. "hello" will be typed, but the space is consumed by the button in the app bar.

Strangely, I couldn't reproduce this. Once I focus on the text area on web, it can consume space or enter key as desired. The app only triggers buttons on app bar when I tab out of webview

The bug I am referring is https://github.com/flutter/flutter/issues/135811 Oh wow you provided me the workaround 😁

Glad it helps :-). But that issue is about on focus of framework widget (button) rather than platformview relates.
If you found that https://github.com/flutter/flutter/issues/102505 can assemble this case, I would recommend centralizing on that one. Please also share your case there.

I'm using US Keyboard Layout (Keychron K1). I looked at German keyboard layout, and it seems there are no differences between Space and Enter keys on these two layouts.
I think the difference between my and your results may come from steps that we haven't found yet as you said it works for you by following steps above.
I have made a pure platform view sample here, could you check it on your end? repro-147844-keyboard-focus . Instead of using webview plugin, I created Android native layout with EditText inside; Flutter's widget components (AppBar and Drawer) wrap platform view as your original example. Through this test, we may narrow the scope of the bug.

I checked your sample, but out of my view it does not make sense. Those sample has just a TextView which is just well plain text. I'll fork it and change it so that there is at least an EditText widget so that something can be entered. I will also add a scaffold and AppBar to match those parts.

Thanks for checking the pure platform example. I just checked the issue with iPhone 7, iOS 15.8, the issue appears now whilst it doesn't occur on my Android device as I mentioned above.
With your result on Android device and pure platform views test, marking this as a webview issue. Thanks for your patience.

flutter doctor -v (stable and master)
[✓] Flutter (Channel stable, 3.19.6, on macOS 14.1 23B74 darwin-x64, locale en-VN)
    • Flutter version 3.19.6 on channel stable at /Users/huynq/Documents/GitHub/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 54e66469a9 (31 hours ago), 2024-04-17 13:08:03 -0700
    • Engine revision c4cd48e186
    • Dart version 3.3.4
    • DevTools version 2.31.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode15.3.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • android-studio-dir = /Applications/Android Studio.app/
    • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874)

[✓] VS Code (version 1.88.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.86.0

[✓] Connected device (3 available)
    • RMX2001 (mobile) • EUYTFEUSQSRGDA6D • android-arm64  • Android 11 (API 30)
    • macOS (desktop)  • macos            • darwin-x64     • macOS 14.1 23B74 darwin-x64
    • Chrome (web)     • chrome           • web-javascript • Google Chrome 123.0.6312.124

[✓] Network resources
    • All expected network resources are available.

• No issues found!

[!] Flutter (Channel master, 3.22.0-28.0.pre.17, on macOS 14.1 23B74 darwin-x64, locale en-VN)
    • Flutter version 3.22.0-28.0.pre.17 on channel master at /Users/huynq/Documents/GitHub/flutter_master
    ! Warning: `flutter` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/huynq/Documents/GitHub/flutter/bin/dart, which is not inside your current Flutter SDK checkout at /Users/huynq/Documents/GitHub/flutter_master. Consider adding /Users/huynq/Documents/GitHub/flutter_master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 972dcd7c65 (23 minutes ago), 2024-05-08 22:41:26 -0400
    • Engine revision 69f2d9610a
    • Dart version 3.5.0 (build 3.5.0-138.0.dev)
    • DevTools version 2.36.0-dev.5
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/huynq/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/huynq/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode15.3.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • android-studio-dir = /Applications/Android Studio.app/
    • Java version OpenJDK Runtime Environment (build 17.0.9+0-17.0.9b1087.7-11185874)

[✓] VS Code (version 1.89.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.88.0

[✓] Connected device (3 available)
    • iPhone (mobile) • d9a94afe2b649fef56ba0bfeb052f0f2a7dae95e • ios            • iOS 15.8 19H370
    • macOS (desktop) • macos                                    • darwin-x64     • macOS 14.1 23B74 darwin-x64
    • Chrome (web)    • chrome                                   • web-javascript • Google Chrome 124.0.6367.119

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.


Extra packets received with Real-Time HR request

After requesting heart rate, I am getting some unhandled packets which don't seem to correspond to anything I've seen in the documentation. Have you encountered these before?
Got readings: [84, 84, 84, 84, 84, 83, 83]
Write to characteristic successful
Received packet with command: 106
Full packet: 6a01000000000000000000000000006b
Unhandled packet type: 106
Received packet with command: 67
Full packet: 43f0070100000000000000000000003b
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>0007a5052801ce00000049
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>0107fd016f004900000063
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>0207af00250019000000a3
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>03071c13b003bb0200005a
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>0407f0017e004700000076
Unhandled packet type: 67
Received packet with command: 67
Full packet: 432411053c05076c068401eb000000a7
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>0607e403e1008e00000020
Unhandled packet type: 67
Received packet with command: 67
Full packet: 43f00a0100000000000000000000003e
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>000a4803bc007800000029
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>010ae60b5902b4010000b0
Unhandled packet type: 67
Received packet with command: 67
Full packet: 432411042c020a46142b04e402000023
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>030a4e0fd4022f0200001d
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>040a4915f1030a0300001d
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>050a381b1b05e20300001b
Unhandled packet type: 67
Received packet with command: 67
Full packet: 432411043c060a22181c05740300009a
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>070a6d03bc007d00000086
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>080a3704ea009a000000a1
Unhandled packet type: 67
Received packet with command: 67
Full packet:<PHONE_NUMBER>090a2d03b400740000003f
Unhandled packet type: 67
Received packet with command: 72
Full packet: 4800084f000000018cca0005ab0035db
Unhandled packet type: 72

me too, my device is recognized as R02_6501
asyncio: Exception in callback PeripheralDelegate.did_update_value_for_characteristic()
handle: <Handle PeripheralDelegate.did_update_value_for_characteristic()>
Traceback (most recent call last):
  File<EMAIL_ADDRESS>line 89, in _run
    self._context.run(self._callback, *self._args)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/felixdev/.local/pipx/venvs/colmi-r02-client/lib/python3.13/site-packages/bleak/backends/corebluetooth/PeripheralDelegate.py", line 381, in did_update_value_for_characteristic
    notify_callback(bytearray(value))
    ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^
  File "/Users/felixdev/.local/pipx/venvs/colmi-r02-client/lib/python3.13/site-packages/colmi_r02_client/client.py", line 106, in _handle_tx
    assert packet_type < 127, f"Packet has error bit set {packet}"
           ^^^^^^^^^^^^^^^^^
AssertionError: Packet has error bit set bytearray(b'\x9e\xee\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c')

[93, 93, 93, 92, 92, 91]


BUG-110663 Knox does not support Livy in HDP 2.6 and earlier versions

Make sure that we have junit coverge for the new lines


First text is always English

When input Korean text in object, First text is always English.

os: windows 10
browser: chrome v68.0.3440.106

it's same in macOS, and chinese.

What input source do I use to test this?

When a shape is selected and text is typed, the first letter is English but when you double click a shape, see a cursor and start typing, all letters are Korean.
Win 10, Chrome Version 74.0.3729.131 (Official Build) (64-bit) and draw.io 11.1.2

https://github.com/jgraph/drawio/assets/734818/daa10a10-0698-4ae6-9d8e-c910cde77247
I met the same problem. I use Microsoft Pinyin IME to input Chinese, the first time I try to write shi , but it only show hi. Then I clean the input characters and try again, it works OK.


[Question] How to override/disable compiler flags added by Zephyr

These flags are added when compiling with west build -b stm32f4_disco .:
-Os -fcheck-new -std=c++11 -Wno-register -fno-exceptions -fno-rtti -nostdinc -g -Wall
-Wformat -Wformat-security -Wno-format-zero-length
-imacros home/kyb/myproj/build/zephyr/include/generated/autoconf.h -ffreestanding -Wno-main
-fno-common -mthumb -mcpu=cortex-m4 -fno-asynchronous-unwind-tables
-fno-pie -fno-pic -fno-strict-overflow -Wno-pointer-sign -Wno-unused-but-set-variable
-fno-reorder-functions -fno-defer-pop -Werror=implicit-int -Wpointer-arith
-ffunction-sections -fdata-sections -mabi=aapcs -march=armv7e-m -MD -MT
CMakeFiles/app.dir/src/main.cpp.obj -MF CMakeFiles/app.dir/src/main.cpp.obj.d
-o CMakeFiles/app.dir/src/main.cpp.obj -c ../src/main.cpp

Flags set in project root CMakeLists.txt
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
set(CMAKE_CXX_FLAGS  "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wno-unused-variable -Wno-comment")

appear before flags added by Zephyr.
I also tried
set_target_properties( app PROPERTIES COMPILE_FLAGS "-Wno-unused-variable -Wno-comment" )

Zephyr flags still "win".
I need at least disable -nostdinc and set -std=c++17 and also may be others.
How to override flags added by Zephyr?
Thanks for your attention

@nikooikono

For which C files do you need to override the flags? Just the app, or all files?

Try
zephyr_library_compile_options(-std=c++17 -Wall -Wextra -Wno-unused-variable -Wno-comment)
from the app CMakeListst.txt after boilerplate.cmake.

@SebastianBoe  I need to override GCC flags only for files of my project, no sense to touch zephyr's files.
zephyr_library_compile_options works fine. Thanks.


Support batch in framework

Update blockchain interfaces and txns count calculation to support batch
Update sawtooth code to follow linting rules

@Ram-srini @feihujiang
I've updated the code to correct the method of calculating txns count for batch.
Please note now in case of batch, the txNumb as well as tps in configuration file are also used to represent txn's count (rather than batch's count) as in no-batch case.
I also update the Sawtooth code to obey eslint rules.

@haojun
Is it requires any changes to simple benchmark config file? As it is not having multiple transactions in a batch. Is simple benchmark use case works as expected with you changes?

@Ram-srini
Nothing to change for simple benchmark, the current code is compatible with no-batch case

@haojun if we specify txNumber and tps in terms of transactions then how caliper will submit the transaction rate? For example suppose txNumber=1000, tps=100 and if i choose txnPerBatch=10, will caliper submits at a rate 10batches/sec? And what if change txnPerBatch=20, whether rate change to 5batches/sec?

@Ram-srini yes, the rate is 10 and 5 batches/sec for your cases. Actually, rate controllers have no idea about batch, they only control the speed according to the configured value as well as the number of txns that have already been submitted.
You can find a submitCallback which is added in the context and used to count the number of txns once new txns are submitted (in case of batch, multiple txns will be counted).

@feihujiang  Fixed


Sendable conformance and strict concurrency

Opening this issue to check-in on your plans for concurrency support. Instances like Variant are currently open classes and don't conform to Sendable. This will lead to warnings, and potentially even failures when Swift 6 arrives.
See: https://www.avanderlee.com/concurrency/swift-6-preparing-your-xcode-projects/
Are you working on concurrency support already?

Hi @AvdLee Thanks for bringing this up. We do plan on supporting Sendable protocols on our classes where possible.


Decouple cgo dependencies

When wasmd is used as a library, the project won't compile without cgo enabled:
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:195:2: undefined: GasMeter
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:196:20: undefined: Gas
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:200:11: undefined: Gas
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:201:11: undefined: Gas
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:205:28: undefined: Gas
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:212:38: undefined: Gas
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:216:32: undefined: Gas
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:230:42: undefined: Gas
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:329:7: undefined: KVStore
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mock_failure.go:15:27: undefined: GoAPI
../../../go/pkg/mod/github.com/!cosm!wasm/wasmvm@v1.1.1/internal/api/mocks.go:329:7: too many errors

With this PR, I added build flags and decoupled the types to make the compiler happy.

Implemented as part of #377. Thanks for bringing this up.


Add a team script for an easier way to see differences between bootstrapped environments

This script will cd into the terraform/environments/bootstrap folder, get a list of workspaces, and run terraform plan in all of them synchronously.
Previously you would have had to do this manually for each terraform workspace, whereas this does it for you so you can start running it and leave it until it's finished. It outputs something similar to the below in your shell:
Running terraform validate for prepare_terraform, in the bootstrap directory
Switched to workspace "default".
Switched to workspace "bichard7-dev-current".
Running terraform refresh for bichard7-dev-current (this may take a while)
Running terraform plan for bichard7-dev-current (this may take a while)

No changes. Infrastructure is up-to-date.

This means that Terraform did not detect any differences between your
configuration and real physical resources that exist. As a result, no
actions need to be performed.

Switched to workspace "bichard7-dev-next".
Running terraform refresh for bichard7-dev-next (this may take a while)

etc.
This doesn't actually apply any changes, and shouldn't be run as part of a CI/CD process as the terraform plan may contain secrets that are output to shell.

Looks good, quick question about language choice for my own learning:
Why did you choose to name the variable called_function rather than something like calling_function ? Is this a convention? It just seems more logical to me to pass the name of the function that called it to the called function, rather than it's own name? Just curious!

Good spot - using called_function was totally arbitrary and I should change it to calling_function as it makes more sense - I'll submit a separate PR for those changes 👍🏼


Map generation

Map generation is conceptually complete (i.e. the mazes are pleasing to the eye).
However, the following functional requirements remain:

[x] place the cities (required: near water AND plains)
[x] place the treasures (required: near plains/desert, at dead ends or corners)
[x] place the enemies (required: near plains, prefer: near treasures + within tunnels)
[x] place signs (required: near plains/desert/water, prefer: nooks/inlets, then corners)
[x] place fixed access points (there are exactly two)
[x] grow mountain ranges (before the treasures or even before the cities if it clears more plains)
[x] convert treasures to hiring locations, wormhole entrances and wonders of the world
[x] select unique 5x5 screens and place the Golden Key
[ ] gracefully reshuffle if any of the stages fails

See also #7


authStore not saving sate on React Native.

I have the following code to handle a login form being submitted:
const onSubmit: SubmitHandler<FormValues> = async (values) => {
	login({ email: values.email, pass: values.password });

	while (!pb.authStore.isValid) {
		console.log("Waiting for login");
	}

	// await waitFor(() => pb.authStore.isValid);

	console.log("Logged in");

	reset();
	router.replace("/");
}

(Screenshot from dev tools connected to my phone running the app)

The authStore.isValid is never set to true. If I do this in the web on the other hand using Expo Web, it successfully validates. I can tell it is actually making the web request because in the network tab it is returning with a 200 status code and a token is provided.

This is not a PocketBase issue.
It was recently reported in https://github.com/pocketbase/pocketbase/discussions/4787#discussioncomment-9575109.
TLDR; React Native 0.17+ and Expo 51 ships with native atob function that behaves differently compared to the browser implementation. As mentioned in one of my replies this is already fixed in the hermes repo but waits to be chery-picked for release - https://github.com/reactwg/react-native-releases/issues/287.
For now the options are to downgrade until the above fix get released. If the RN team ended up taking too long to merge it I'll consider applying a workaround from our end.

Thank you for the quick reply.
How can I go about solving/working around this this then? I have changed my Expo version to v50 and React Native to 0.73.8 but now Expo Go (I don't own a Macbook). Simply changing to React Native 0.73.8 did not help and changing to v50 made it no longer work with Expo Go.
If not, could you advise me on how to migrate to the hermes branch with the patch applied?

I've pushed a minor JS SDK v0.21.3 release that will temporary enforce the atob polyfill when using React Native. This should "fix" pb.authStore.isValid to report the correct value under Android and iOS.


Dose paddle paddle support python 3 ? Is there a way to import paddle package with python 3 in anaconda in docker?

Currently, Python 3 is not supported, only Python 2 is supported.
Is there any package you want to use in python 3?

Yes， i want to use aiohttp

@reyoung How about we list the reasons that we don't support Python 3 somewhere, and paste a link here, so that the community knows the status and might contribute?

Python 2 currently is the most widely used version of python now. And Paddle is embedded a Python interpreter inside C++ part. See PythonUtil, PyDataProvider2. So Paddle is heavily depends on CPython API which might be changed in Python 3.
To support Python 3, we need rewrite some C++ code in Paddle to make sure it support both Python 2 and 3. It currently not in our plan, but if this feature is needed very widely, we will consider to add this support to our recently milestones.
And @kitianFresh , the aiohttp package, I just google and found that it is used for async http client, which tornado might be able to do the same thing, but support python 2.

@reyoung Thanks for the answer ! I am new for python. I only used aiohttp for async but no other framework experience, so i just want to save my time to focus on  machine learning! I wish you will support python 3 soon because tensorflow have supported it ! I will research for tornado! thanks!


Feast Detail page - pagination weird when feast has no associated chants

http://<IP_ADDRESS>/feast/4554

we should just hide the pagination summary if there are no chants. Or just say "Displaying N chant/chants" if there are 1 or 0 pages of chants.

Old cantus just hides the pagination, it seems. Also, "Holweck" shows up underneath "Notes", which is more like the other fields and tidier, I think.

Actually, it appears we don't have pagination implemented at all: look at Agathae http://<IP_ADDRESS>/feast/2183
We should probably implement pagination, at least for the "Sources containing this feast" - the title indicates people should be able to see all of the sources. We could probably just cut off "Most frequent chants" at 50 or 100 or something.
nice catch with the "Notes:" bit - I'm not sure why it's not wrapping onto a second line. Another thing to fix.

Currently, these tables are hidden when there are no results. Renaming this issue to reflect that working pagination would be nice to have, and changing its label to "enhancement"


Remove Requires.jl usage

https://github.com/JuliaSIMD/LoopVectorization.jl/blob/v0.12.99/src/LoopVectorization.jl#L123-L129
Those are some of the most used packages in the Julia ecosystem. I would assume that like 99% of users have those packages, yet they all get a startup time from it. Separate module? I don't know, but having that be Requires.jl usage is a bit suspect given the prevalence of those packages.

This is a breaking change, so would require a bump to 0.13. Too bad, I was hoping to hit 0.12.100.

Feel free to make a PR that strips it out.


Document Functions, Combination Function, Troubleshooting guide

Fixes Issue
fixes #795
Changes proposed
[x] - what Functions are
[x] - Provide examples
[x] - #803
Check List (Check all the applicable boxes)

[ ] My change requires changes to the documentation.

Changes have been completed.

@whitingjr please can you squash commits

@johnaohara squashed


Fix Reveal Controller Indexing

Implement Auto Indexer.
User auto indexer to add proper sequence to .AddAttribute of Reveal Controller Render Fragment Attributes.

Available in 3.3.0


new  maskable icon

fixes #2013

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 99.444%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
10555

Relevant Lines:
10560

💛  - Coveralls


Evaluation Metrics

❓ Questions & Help
Details

For next-item prediction task, when we do evaluation on test dataset, I noticed the label for each sequence is the last time, how can we get the recall@k with only 1 target?

Thanks a lot for your reply @sararb. When I am trying to evaluate the model, I am using following script and the screenshot is "response".
model.eval()
response = model(batch, training=False)

So the batch_size = 32 and we see the labels is a tensor with shape [32]. Then for each sequence in this batch, the target is only one item which is the exactly the last item of each sequence in this batch.
When we calculate metric for example recall, with the first sequence, the target is only 57, it is not a sequence, so recall will be either 0 or 1. Is this a problem? Or I misunderstand the calculation part of recall?

@liguo88 thank you for your clarification! So in your example, we got 32 targets and a predictions tensor of shape [32, vocab_size]. Meaning for each target (57 for example) the model returns scores over all items in the catalog (shape: [1, vocab_size]).
So to compute the recall@k of the target "57":  we will first extract the top-k ids with the highest scores from the prediction scores. Then, we use this list of ids to compute the recall (i.e. check if "57" is in this list of ids or not)
Hope it answers your question?

@sararb Thanks a lot for your answer. Yes I understand. Just to be confirm, for one example, the recall will be 0 or 1 since it has only one target, correct?
Also for precision@10 will be 0 or 1/10, so the highest value will be 0.1 for precision, even for the average the highest should be 0.1. But what I got is avg_precision_at_10 = 0.3691472113132477, how could this be possible?

closed


Parent module group can't be set in custom areas/groups

Describe the Bug
In a custom group it is not possible to select the created module groups as parent, so hierachy is not possible.
Tested in Berufskolleg Technik Siegen instance
Steps to Reproduce

Go to create module group. Create a module group, save and publish it.
Create a second module group. Try to use the dropdown to select "Parent module group"

Expected Behavior
You can select the other module groups in "Parent Module Group"
Actual Behavior
The dropdown is empty.
Additional Information

I can only reproduce this if there already exists a module that is assigned to that parent module group. And I thought it would be the expected behavior that only module groups which do not have modules for themselves can have child module groups (don't ask me for the reason, but the way it's implemented pretty much indicates that this is not accidentally).

Okay so if a module group is empty, it is selectable in the dropdown in your test?

Yes, exactly. If you find an empty module group that is not selectable, please provide the link/id/name etc. then I can further investigate this.

As long as this bug cannot be reproduced, I'll close this ticket. Feel free to reopen if the bug reappears.


Add ultrasound-money extension

Description
New extension - a dashboard that serves automatically updated statistics from Ultrasound.money
Screencast

Checklist

[X] I read the extension guidelines
[X] I read the documentation about publishing
[X] I ran npm run build and tested this distribution build in Raycast
[X] I checked that files in the assets folder are used by the extension itself
[X] I checked that assets used by the README are placed outside of the metadata folder

Happy to address the undefined, it just means the API doesn't have that contract labeled so I'll change it to Unknown.

Not personally interested in forking other extensions which don't leverage the "Dashbord" type functionality I'm aiming for. If that is an issue please let me know so I can save my time/effort


Introduce value balance commitments

Motivation
This PR introduces the concept of value balance commitments for value conservation. The scheme was derived from Zcash's redDSA binding signatures.

All of these to_bytes_le() calls are incredibly inefficient. The next step is to unify types to mitigate usage of ToBytes

@raychu86 update the circuit implementation to match the native version

@raychu86 study the Network changes carefully

@raychu86 the Pedersen commitment gadget is missing its tests

@raychu86 is using zero as the randomness for the value commitment correct?

@raychu86 study the Network changes carefully

In particular, I still am not confident on the window sizes. Note that changing from (4, 350) -> (8, 125) doesn't seem to work despite the same size.

LGTM, I've moved the remaining issues to #695


Remove image prefix to match upstream branch

Same as openshift/knative-eventing#1593

/cherry-pick release-v1.2

/cherry-pick release-v1.1

/cherry-pick release-v1.0


IMU and GPS data corrupted?

I'm testing IMU-based localization (pure integration) and GPS-based trajectory in ROS2 for the WAM-V robot, but I'm noticing that the two generated trajectories do not match the ground-truth odometry, as if there's some scaling issue?
I've set both the bias and noise parameters to zero in the wamv_imu.xacro file to simulate an ideal IMU. After this, I ran colcon build --merge-install to ensure the changes took effect. But the GPS is still pristine (didn't modify its noise).
This has left me questioning whether the IMU data and GPS data themselves might be corrupted or if there’s another issue at play. Please help me why the trajectories differ
To provide more context, I'm attaching a few plots comparing the trajectories with the ground-truth odometry.

I'm closing this issue because the reason for the IMU derived trajectory being underscaled is inconsistent time between consecutive IMU messages. And the GPS is overscaled because the conversion from GPS coordinates to x-y positions was incorrect (I forgot to account for the Earth's shape and instead did a 2D projection)


fix(plugins/plugin-kubectl): Eventing Components guidebook

Description of what you did:
Created the first draft of the Knative Sources, Brokers, Triggers, and Sinks guidebook.

My PR is a:

[ ] 💥 Breaking change
[ ] 🐛 Bug fix
[x] 💅 Enhancement
[ ] 🚀 New feature

Please confirm that your PR fulfills these requirements

[x] Multiple commits are squashed into one commit.
[x] The commit message follows Conventional Commits, which allows us to autogenerate release notes; e.g. fix(plugins/plugin-k8s): fixed annoying bugs
[x] All npm dependencies are pinned.

/lgtm
/approve
we will have fixes for some of the rendering glitches in subsequent PRs. these aren't bugs in this PR.


Vim mode escape do not work as expected - you need to type it twice

Check for existing issues

[x] Completed

Steps to reproduce the issue:
Go in visual block mode with shift + v
select some line with k or j
trying to escape vim mode with escape
it don't work you need to type escape twice to exist
The is the same issue with other kind of vim mode.
Trouble with
{
  "context": "Editor",
  "bindings": {
      // "escape": "editor::Cancel",
      "..."
  }
}

From default keybindings config.
If I comment out this binding - it's working.
Environment
Zed: v0.117.0
OS: macOS 14.2.1 (Sonoma)
Memory: 16 GiB
Architecture: aarch64
If applicable, add mockups / screenshots to help explain present your vision of the feature
Video showing the issue: https://share.cleanshot.com/bsCBLLKc

Very weird! Thank you for following up.
I'm going to close this for now, but if you get into this state again, let's take a look in that folder together.

Originally posted by @ConradIrwin in https://github.com/zed-industries/community/issues/2127#issuecomment-1771198220

@websmithcode do you have any custom keybindings bound to escape? It should work with the keybindings that ship with zed by default (as the vim binding takes priority over the default escape you call out here).

I think I understand what’s going on)
I copied the default config to mine and changed it there.
In theory, it has even higher priority and should be used as a top layer for reassignment...
Right?)

That seems likely; the way that keybindings are selected in ambiguous contexts is not super well defined (but it is guaranteed to be consistent).
going to close this for now, and suggest deleting the "esc" binding as you have done.


No double booking

Another escapee from the email scheduling sprint.

Time slots created for one event shouldn't be available to other events
Time slots reserved by a person shouldn't be available to other invited people
If responding to an outdated invitation and selecting a reserved time slot, person should see an error explaining what happened, and the page refreshed with the remaining available slots

If responding to an outdated invitation and selecting a reserved time slot, person should receive an email explaining what happened, and showing the remaining available slots

Why would the person receive an email explaining the error? Isn't the situation that the person goes to the website where we render the available time slots and then before the person selects a time slot and submits the form another person reserves that time slot so that submitting the form will fail as the time slot is no longer available? In this case we'd just display an error on the page.

Hmm, you're right, I think I had the SMS scheduling in mind when writing this :) updating

A key component here is that time slots that are booked for a user shouldn't be made available to other persons to book.
The exclusion looks something like this:
validates :start_time, :end_time, overlap: { exclude_edges: %w(start_time end_time), scope: 'person_id' }
validates :start_time, :end_time, overlap: { exclude_edges: %w(start_time end_time), scope: 'user_id' }

This is using the validates_overlap gem.

We were discussing exactly that. Didn't know about the gem. Thanks! :+1:


Is 'instagram-scraper' have any documentation translated in Korean?

Hi. I'm Korean student.
Korean people ( especially  20~30) uses instagram a lot of time. I think Korean uses instagram more than Facebook.
So, I am interested in your repository cause, it's really useful to Korean and wonder if i translate documents and commit for Korean.
Thanks for reading :)

If you know English then it's all good my friend, the code works very well all you need is Google translator.


configure: Work on NetBSD

We need to link to libintl to get dgettext.
We need to link to curses to get refresh.
test == is not portable, test = is.
Signed-off-by: Roy Marples<EMAIL_ADDRESS>

Thanks very much. This has been merged!

Thanks very much. This has been merged!


TwoPassWindowSum image extraction crash using ctapipe 0.9.0

Example
simtel file = gamma_20deg_180deg_run100___cta-prod3-demo-2147m-LaPalma-baseline.simtel.gz
EVENT # 2385
EVENT_ID # 2441402
TEL # 1
Error
  File "/Users/michele/Applications/miniconda3/envs/protopipe/lib/python3.7/site-packages/ctapipe/calib/camera/calibrator.py", line 154, in __call__
    self._calibrate_dl1(event, telid)
  File "/Users/michele/Applications/miniconda3/envs/protopipe/lib/python3.7/site-packages/ctapipe/calib/camera/calibrator.py", line 126, in _calibrate_dl1
    waveforms, telid=telid, selected_gain_channel=selected_gain_channel
  File "/Users/michele/Applications/miniconda3/envs/protopipe/lib/python3.7/site-packages/ctapipe/image/extractor.py", line 1060, in __call__
    waveforms, telid, selected_gain_channel, charge1, pulse_time1, correction1
  File "/Users/michele/Applications/miniconda3/envs/protopipe/lib/python3.7/site-packages/ctapipe/image/extractor.py", line 900, in _apply_second_pass
    timing = timing_parameters(camera_geometry, image_2, pulse_time_1stpass, hillas)
  File "/Users/michele/Applications/miniconda3/envs/protopipe/lib/python3.7/site-packages/ctapipe/image/timing.py", line 74, in timing_parameters
    beta, error = lts_linear_regression(x=longi, y=peak_time, samples=5)
  File "/Users/michele/Applications/miniconda3/envs/protopipe/lib/python3.7/site-packages/numba/np/linalg.py", line 825, in _inv_err_handler
    "Matrix is singular to machine precision.")
numpy.linalg.LinAlgError: Matrix is singular to machine precision.

Can you check to see what these bad images look like? (I suspect few pixels survive so the time slope is not easy to define)
The solution will be to either:

catch this exception and just return NaN for the slope for those images (if they are really not measureable)
use SVD to invert the matrix (but I just tested that an it is 8x slower than np.linalg.inv, even when numba jitted)

So let's hope that case 1 is ok.

Fix in #1439
I suspect that this happens in the loop over the pairs of points for the initial fit. So probably, the result of lts_fit should still be non-nan for the data.
But a test dataset would be great for that.

Okay, I added test cases for this in #1439.
I think with this, it should be really, really rare to get nan back from the fit, but it might happen and should be handled gracefully by the pipeline.

This is fixed now.


[android] Mark link test in TestFileManager as failing for Android.

Implement support for marking test as expected to fail in Android
similar to what Windows has already. Use the helper function to mark
the tests that were already disabled in Android (there are some others
with extra checks that should be done more carefully).
Additionally, mark one of the tests of TestFileManager as failing in
Android. Android doesn't allow normal programs to use the link syscall,
and it always fails with insuficient permissions. The test will never
work. Disable the test in Android completely. Users should deal with the
always failing API, since errors are always possible for other reason.
Also, remove a disabled test in TestURLSession because I cannot make it
fail in my setup. It might have fail before, but it not longer fails.

@swift-ci please test Linux platform

Sounds like a good idea to me.  @millenomi any concerns?


创建租户的时候报错/create tenant error

when i create a tenant, it shows "create tenant error"  i just set up the environment

To create a tenant, you need to configure hdfs. Please check if the hdfs configuration is set.
Error details can be viewed in api logs

Thanks.  I have settled it
| |
chn_cjw
|
|
<EMAIL_ADDRESS>|
Signature is customized by Netease Mail Master
在2020年07月07日 22:17，samz406 写道：
To create a tenant, you need to configure hdfs. Please check if the hdfs configuration is set.
Error details can be viewed in api logs
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

ok ,i closed


User Extension causes 500 Internal Server Error

I'm seeing this trace while trying to use the User extension as described in the docs: tower_http::trace::on_failure: response failed classification=Status code: 500 Internal Server Error
I believe that auth_cx.current_user should only be inserted if it exists. I can create a pull request if this solution makes sense.

I’m not following here. Feel free to open a PR if it’ll help clarify the issue.

I created #70 which touches upon this issue. Instead of replacing the Option extension with a User extension like I originally proposed, I added a third extension at the cost of another clone. I'm not sure what the best solution is here but this is an option.


Add unique id for worker.

Please add a changelog entry, ideally that says why this data is added.  I'm guessing it's so logs can be used across multiple machines that might have the same pids.
workerPid and workerId kind of overlap.  How often, if ever, do we use workerPid to actually look up the process?  Another option would be to encode both ids in one string.  Like workerId = ${process.pid}:${uuid()}`.

Codecov Report

Merging #68 into master will increase coverage by 0.22%.
The diff coverage is 75.00%.

@@            Coverage Diff             @@
##           master      #68      +/-   ##
==========================================
+ Coverage   69.38%   69.60%   +0.22%
==========================================
  Files           5        5
  Lines         686      691       +5
==========================================
+ Hits          476      481       +5
  Misses        210      210

Impacted Files
Coverage Δ

lib/loggers.js
72.31% <75.00%> (+0.80%)
:arrow_up:

Continue to review full report at Codecov.

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


Add contributors

@all-contributors please add @takasumasakazu for promotion

@all-contributors please add @3110 for promotion


Make “Subscribe to more streams” link not sticky

At present, the “Subscribe to more streams” in the left sidebar is sticky, so that it's always shown. However, after a brief onboarding period, subscribing to additional streams is a rare action. Moreover, the "+" button next to the Streams heading offers another handy way to subscribe to streams.
To reduce distraction/clutter, we should experiment with making this link no longer sticky. It should simply be shown at the bottom of the list of streams, and therefore be off-screen if the user is subscribed to a large number of streams already.
We may want to do some new user testing before deploying this change.
CZO discussion

@alya , I've solved this issue in https://github.com/zulip/zulip/pull/20983
Please review and merge.

Fixed in https://github.com/zulip/zulip/pull/20983.


Set up CI with Azure Pipelines [skip ci]

Codecov Report

Merging #1 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master       #1   +/-   ##
=======================================
  Coverage   91.05%   91.05%
=======================================
  Files          34       34
  Lines        3599     3599
=======================================
  Hits         3277     3277
  Misses        322      322

Continue to review full report at Codecov.

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


Put an install/run combination in the docs that works.

I don't use npm, so it took me several attempts spread out over months to figure this out. The first few times I instead built from source since I didn't google for quite the right keywords.
It's kind of RTFMy so I understand if you don't want to merge it, but it would've saved me some time.

Sorry I didn't mean to drop this, I don't think I saw it!


Camps Migration

Migration for model: camp
add these columns:

accept_families (boolean)
facebook_page_url (text)
contact_person_id (a constraint of model: user)
each camp has contact person, his details (name, email) published in the website later.

@mtr574 - how is "contact_person_id" field different then the existing "main_contact" field?

@OriHoch main_contact can be camp owner/manager unlike contact_person who is the person you contact if you'd like to join the camp, for example.

cool, then issue is done once #84 is merged


Clarify use of language codes

There does not appear to be a consistent method for naming casks in alternative languages. Mozilla and Tor use IETF language tags, occasionally including region codes when distributing their software. In casks, these have been inconsistently shortened to two characters. See for example:

firefox-cn.rb
firefox-tw.rb
torbrowser-zh.rb

In the first two, the region code was selected for the two letters. In most other language casks, letters indicating language were chosen instead.
We should define a consistent standard for handling language codes and rename existing casks as required.

We should define a consistent standard for language codes and rename existing casks as required.

Agreed. What do you suggest such standard to be?

If adding another dash to the name is acceptable, always using full names such as "firefox-zh-cn", "firefox-ja-jp" and "firefox-en-gb" allows for both codes. It may be troublesome if an application does not declare a specific region, however.

Per the rule suggested above, I believe these are the changes that should be made to existing casks:

adobe-reader-pt -> adobe-reader-pt-br
battle-net-cn -> battle-net-zh-cn
firefox-beta-cn -> firefox-beta-zh-cn
firefox-beta-gb -> firefox-beta-en-gb
firefox-cn -> firefox-zh-cn
firefox-esr-cn -> firefox-esr-zh-cn
firefox-pt -> firefox-pt-br
firefox-tw -> firefox-zh-tw
hearthstone-eu -> hearthstone-en-gb
openoffice-pt -> openoffice-pt-pt
thunderbird-cn -> thunderbird-zh-cn
thunderbird-pt -> thunderbird-pt-br
torbrowser-zh -> torbrowser-cn

Other casks which only exist in one version at the host have will be left untouched with just their language code.

Sounds good. Just those, though? Is every other one already correct according to those rules?
Care to draft a PR so we can also discuss with the other maintainers? I doubt there will be objections. Make it one commit per cask, please.

Just those, though?

I think so, but I would not mind a check being performed by second pair of eyes. Most casks were already using ISO-639-1 letters and only a few languages seem to warrant different versions.
I'll get the PR done later this week.

I've noted that the documentation added in caskroom/homebrew-cask#16221 mentions that both codes should be added when available, but I believe this is unnecessary. In my pull request I have added both codes only when regional versions within the same language are distributed at the host. Provided that we choose this solution, the documentation ought to be updated to reflect this.
When double-checking the proposed changes, I noticed that adobe-reader-pt seems to be the download made available for both regions, and therefore left it unchanged despite the download url which contains "pt_BR".

mentions that both codes should be added when available, but I believe this is unnecessary.

The problem with making such judgement is different users will make different assumptions. Since maintainers do not know everything about every app, we’ll invariably merge inconsistencies.
This is why strict rules are set, so we have something to measure correctness against.

When double-checking the proposed changes, I noticed that the current adobe-reader-pt seems to be the only download available for this language despite the "pt_BR" in the download url. For this reason I left it unchanged.

Which is why it must be pt_BR in this case. For one, it already prepares for an eventual pt_PT, but more importantly it is consistent and makes the rule easily understandable to someone that comes later.

Closing since https://github.com/caskroom/homebrew-cask/pull/16221.


Make a GitHub page for this

http://burntfen.com/open-source-metatags/
Now I should get a bette URL for it.


Error when compiling with declaration flag on because of alias inlining

TypeScript Version:  nightly (2.3.0-dev.20170406)
Code
tsconfig.json
{
    "compilerOptions": {
        "noUnusedLocals": true
    },

    "include": [
        "*.ts"
    ]
}

A.ts

export { Either, Fail, Magic, Inliner, InlinedMagic }

type Either<L, R> = { tag: 'left',  value: L }
                  | { tag: 'right', value: R }

interface Fail {
    message: string;
}

type Magic<T> = (x: T) => Either<Fail, T>

type Inliner<T> = T

type InlinedMagic<T> = Inliner<Magic<T>>

B.ts
import {
    // if `Fail` is uncommented, the compiler complains because of `noUnusedLocals`
    InlinedMagic /*, Fail */
} from './A'

export { repro }

function repro() {
//       ~~~~~
// B.ts(9,10): error TS4058: Return type of exported function has or is using name 'Fail'
//             from external module "/projects/repro/A" but cannot be named.

    return <T>(): InlinedMagic<T> => x => ({ tag: 'right', value: x });
}

Prerequisites for reproduction:

Fail must be an interface, if it is an alias it gets inlined and no error is raised
the return type of the inner function must be inlined for the issue to surface - double alias indirection triggers inlining
the return type of the outer function must be inferred. User annotations are used as is in the declaration file otherwise.

Expected behavior:
Either noUnusedLocals should recognise that Fail is used because of inlining, or the type inferencer shouldn't inline the type of the returned inner function.
Actual behavior:
B.ts(9,10): error TS4058: Return type of exported function has or is using name 'Fail' from external module "/projects/repro/A" but cannot be named.

this is a duplicate of https://github.com/Microsoft/TypeScript/issues/9944.
you need to 1. import Fail and 2. use it in the type annotation of repro

Yes, I figured the solution out and then went on with reducing the problem into a repro. Although the linked issue is relevant and will fix this one as well, I think the most obvious and correct resolution in this specific case to use the InlineMagic alias as is, rather than inlining it.


Combination with print styles ?

Hi there,
I've seen a particular case: a website in made in mobile-first, and it would need for printing output to have desktop styles applied for print.
Would it be possible to generate something like
@media (min-width: 20em), print {

with sass-mq ?
Thanks for your advice,
Nico

Thank you for the question!
With sass-mq the way to serve desktop styles to print would be to output a print-specific stylesheet with responsive mode turned off.
If this is something that you'd rather do with the syntax you suggested, feel free to fork sass-mq and add this feature to it, it should be pretty straightforward.

Closing this as there was no activity for a month.


[bn] Update links microservice > microservice-architecture

Describe your changes
Updates all links that points /microservices/ to point /microservices-architecture/ in all English files.
Related PR
Related PR: #3009
Related issue
Tracking Issue: #410
Checklist before opening this PR (put x in the checkboxes)

[ ] This PR does not contain plagiarism

don’t copy other people’s work unless you are quoting and contributing it to them.

[ ] I have signed off on all commits

signing off (ex: git commit -s) is to affirm that commits comply DCO. If you are working locally, you could add an alias to your gitconfig by running git config --global alias.ci "commit -s".

There are some unintentional commits and file changes in this PR. So I am closing this PR.


Python - handle exception when get top of empty stack

Need to check if the stack is empty before getting top of stack

GitMate.io thinks a possibly related issue is https://github.com/NITSkmOS/Algorithms/issues/37 ([DataStructure] Stack [Python]).


Contact Information

Include a contact information section with:
-school address and office number
-email

Created a contact information section within the index template.


fix typo in architecture names list

Issue #14 , got the training start after fixing that.

fixed in ec0f21a