Fix schema generation for type aliases

Change Summary
Fix schema generation for type aliases by tracking down to the built-in types that the aliases point to.
The idea is to find the base type of aliases and generate schemas using those base types for the aliases. I think of aliases as a directed graphs, something like
type A:             ---->   type B:              ---->   type C:
  is_alias: true    |         is_alias: true     |         is_alias: false
  __value__: B   ---|         __value__: C    ---|         __value__: list[int]

The actual type of a type alias can be found in attribute __value__ (ref). Since this value is lazy evaluated, we just need to traverse the graph and find types that this alias actually represents. Type aliases are allowed to reference themselves, e.g. as an implementation for some grammar rules. For schema generation, it is fine if the alias graph is cyclic -- schemas can reference themselves as long as they are not the only references in the schemas. The main problem is circular definitions -- there is no base type to resolve to -- and this is addressed in this PR.
The implementation might not be that straightforward and I haven't found a good generalisation (the new type resolution implemented does not really work with python version < 3.11,) so I'm guarding the implementation with sys.version_info for now.
Note that for test cases test_circular_type_aliasing and test_cyclic_type_aliasing, there is a difference in the time when errors are raised. The cyclic case is detected only when schema validation is being executed, which means pydantic is okay with creating such a schema. This might not be that good in terms of user experience since from a user's perspective, both typing issues are the same (having nonsense definitions) and both should have been identified when schemas are being defined, i.e. having eager checks. We might want to change the code for cycle detection later on so that the recursion loop validation error is raised at schema definition time.
Related issue number
#8984
#9782
Checklist

[x] The pull request title is a good summary of the changes - it will be used in the changelog
[x] Unit tests for the changes exist
[x] Tests pass on CI
[x] Documentation reflects the changes where applicable
[x] My PR is ready to review, please add a comment including the phrase "please review" to assign reviewers

Selected Reviewer: @sydney-runkle

please review

I'll add some test cases for generics. I've been trying to compile a list of things that pydantic should cover for #9782 including generics

Thanks for taking a look at this. However, before looking at #9782, we'd like to have our namespace handling refactor done as this will most likely get in conflict. I'll mark the issue as blocked in the meanwhile.

Hi @sydney-runkle, I've added two test cases for generics taken from #8984, one with the old syntax and the other with the type statement. Please let me know if they are sufficient.
Regarding

I'm not too concerned about the separate branch for 3.12+, though perhaps we should consider cases where old syntax is used in 3.12+ - does this branch still work?

I think it does work. Please correct me if I'm wrong, but based on what I know so far, the syntax or way of defining type aliases before 3.12 includes

TypeAlias, e.g. MyList: TypeAlias = list[int]
TypeAliasType, e.g. TypeAliasType('MyType', int)
NewType, e.g. T4 = NewType('T4', T3)
Direct assignment without annotation, e.g. MyInt = int

All of them work. They are covered by existing test cases in different test suites. I've created two test cases that include all of them just for clarity. I'm just not sure if the test cases are comprehensive enough. Now I place them in test_type_alias_type.py. Please let me know if they belong elsewhere.

I don't really know if this is the good approach. I mean, looking at the existing _type_alias_type_schema implementation, it should already be able to handle such use cases? Taking a simple example that currently crashes:
type A = int
type B = A

class Model(BaseModel):
    b: B

Here's what happening during schema generation:

_type_alias_type_schema is called for B
we call self.generate_schema for B.__value__ (= A)

_type_alias_type_schema is called (again), this time for A
we call self.generate_schema for A.__value__ (=int). We end up with the core schema {'type': 'int'}

we should end up with the core schema {'type': 'int'} for B

So the logic to recursively iterate over the inner TypeAliasTypes of a TypeAliasType is already implemented. It is also supposed to work with the following:
type A = int
type B = A | str

Which is not handled in this PR.

It seems that the issue comes from the fact that whenever a TypeAliasType schema is created, it is saved in the definitions:
https://github.com/pydantic/pydantic/blob/f76f254b962eee0f2f8ef016f412ae519f0c70e5/pydantic/_internal/_generate_schema.py#L1413-L1420
When this is called for A, schema is {'type': 'int'}, ref is __main__.A:128443720348784.
When this is called for B, self.generate_schema(annotation) is the returned value on line 1420 for A: {'type': 'definition-ref', 'schema_ref': '__main__.A:130340573344880'}.
When end up setting the key ref to the resulting schema:
{'type': 'definition-ref', 'schema_ref': '__main__.A:130340573344880', 'ref': '__main__.B:130340573339520'}

Which I believe is unexpected.

@Viicos Thank you for your comment. I have to admit that I'm not completely sure if this is the actual solution to the problem, mostly because the logic in pydantic/_internal is a bit complicated and thus I'm not sure if I missed out anything. Let me try to recall what I found when I was debugging this issue two weeks ago.
By the way, from what I see locally, the cases you mentioned are working fine with main (f76f254b962eee0f2f8ef016f412ae519f0c70e5). Adding one more layer of aliasing fails the code, i.e.
type A = int
type B = A | str
type C = B

class Model(BaseModel):
    v: C

Model(v='a')  # SchemaError

The model first checks C. It sees that C points to an unknown type, assuming that a definition will come up later, so it simply adds a reference to B in C. Then it checks B. What happens at B is that pydantic knows that B references two types, and it also sees that A essentially resolves to a built-in type, so it does not create a new definition for B. The reference at C therefore points to nothing, which is why we see the
Definitions error: definition `__main__.B:...` was never filled

error.
Perhaps we just need to create a definition for B to fill the gap in definitions, but I wasn't sure how much more code I would have had to look into, so I implemented this solution -- just resolve each alias until it can be interpreted as some built-in type. There's probably going to be some performance issue when a model is big and there are multiple layers of aliasing, but since schema building is a one-off thing, I think the impact is limited. I can definitely keep looking for a better solution.

Thanks for doing the additional investigation. Core schema generation is definitely complicated, and schema cleaning (where the KeyError happens) is even more complicated in some cases. I can also take a look this afternoon, trying to investigate more on my findings from my previous comment. I'll make sure to give updates here

Going to be tracked in https://github.com/pydantic/pydantic/pull/10624.


SQL GUI query shows changes incorrectly

VS Code Version:

  - Version: 1.88.1 (Universal)
  - Commit: e170252f762678dec6ca2cc69aba1570769a5d39
  - Date: 2024-04-10T17:42:52.765Z
  - Electron: 28.2.8
  - ElectronBuildId: 27744544
  - Chromium: 120.0.6099.291
  - Node.js: 18.18.2
  - V8: 12.0.267.19-electron.0
  - OS: Darwin arm64 23.4.0

Extension Version: 1.0.2 (disabled)
Operating System: macOS 14.4.1 (23E224)
Retool Version: 3.48.0

Expected Behavior:

this "new changes banner" shouldn't show (because I've never edited it, and you can't edit GUI queries)

Actual Behavior:

I've signed out of VS Code
I've turned off the Beta setting
I've recreated the query from scratch (with a new name)
It still shows this error
It doesn't matter if I click either of those buttons, nothing changes

Hey @mikhuang,
Any idea on timelines for maintenance on this? It it worth me trying to make a PR?
Thank you! It's great for a Beta!

I am now seeing that even after I turn off the setting in Beta, it turns back on 🤦♂

I finally managed to get the setting turned off, and we seem to be stable


Load reviewer before sending notification (#27063)

Backport #27063
The
template uses the Reviewer.Name property - this was not loaded.
Fixes #27035

Please check the following:

Make sure you are targeting the main branch, pull requests on release branches are only allowed for backports.
Make sure you have read contributing guidelines: https://github.com/go-gitea/gitea/blob/main/CONTRIBUTING.md .
Describe what your pull request does and which issue you're targeting (if any).
It is recommended to enable "Allow edits by maintainers", so maintainers can help more easily.
Your input here will be included in the commit message when this PR has been merged. If you don't want some content to be included, please separate them with a line like ---.
Delete all these tips before posting.

i couldn't test the change cause my local db is already 1.21 - but i'll now test the changes


Revert "dep: Use released versions of libraries (#383)"

This reverts commit c0b527fd7cfdc9ec9670a906b3ec6870ac563a68.
This doesn't work in anubis because its still on k8s 1.14.

Going with a ping.


Some question about code and paper

@keenan-burnett Hi, thank you for your code and paper. I have some question about code and paper.

I have test hero, and val metric is t_err: 2.031, r_err: 6.329. But when test UnderTheRadar, the best val metric is t_err: 3.712, r_err:10.96. This result is quite different from hero paper. I use default config in radar.json. What causes this?
In steam solver cpp code, i can find measurement factor code.
https://github.com/utiasASRL/hero_radar_odometry/blob/04bd6717db57d1f003066f5318be7fd213d50afc/cpp/SteamSolver.cpp#L175
But i can't find motion prior factors, the only thing about this is :
https://github.com/utiasASRL/hero_radar_odometry/blob/04bd6717db57d1f003066f5318be7fd213d50afc/cpp/SteamSolver.cpp#L82
Could you tell me more about the code of motion prior factor?
In steam config, "zero_vel_prior" and "vel_prior" means what? I can't understand this code in SteamSolver.cpp.

I wasn't able to replicate the performance of the UnderTheRadar implementation. Note that their paper does not include an open-source implementation, this was simply my best effort at replicating their results. If I had to guess, I think it is important to improve the rotation augmentation during training so that one starts with the road at $\theta$ degrees offset from the default and then add another smaller perturbation to the matched radar image $\delta\theta$. This is different from how I did the rotation augmentation in this repo, but may improve the results. Also, it's quite possible that I simply didn't train the model for long enough. Try training it with larger batch sizes and for many more epochs and see if that improves results.

The motion prior factors are added to the costTerms object at this line of code:

https://github.com/utiasASRL/hero_radar_odometry/blob/04bd6717db57d1f003066f5318be7fd213d50afc/cpp/SteamSolver.cpp#L108
The mathematical details of which are contained in this paper:
https://ieeexplore.ieee.org/abstract/document/7353368/
Have a look at equation (15) in that paper.

The zero_vel_prior is used to ensure that the dimensions outside of SE(2) remain zero. In theory this shouldn't be needed, however there was some concern that mathematical rounding errors in the computer could lead to small velocities in the dimensions outside of SE(2) which would lead to a bias. This prior then encourages the velocities outside of SE(2) to stay close to zero. It shouldn't have much of an impact whether it is turned on or not.

vel_prior adds a cost term to the estimation so that we penalize a velocity estimate which differs from the previously estimated velocity:
$$
\mathbf{e}{\text{vel prior}} = \boldsymbol{\varpi} - \boldsymbol{\varpi}{\text{prev}}
$$

Sorry for late reply.


Delay causeed by Notification

After change the date in Schedular, It need wait for 'notification time' to  make the change happen, Schedular card close and the date shown in SingleItem change.
THE CHANGE SHOULD HAPPEN IMMEDIATELY. Only the notification should wait for the time, not the Schedular and SingleItem.
Plz fix.
@zli213

Another question:
When I at a Project page, and  edit a task, it will notify that add a task in this project. But it already in it. So the notification is not needed.

Another question:
While I am adding new task, I click the schedular, it will have notification and close the TaskEditor.
I can not add task

I see you are currently posting "fix this issue". Do I still need to continue looking into these bugs, or have you already resolved them?

I solved these today, so you do not need to looking them.


FixCheck bounding of expression in analyze process

Probleam:
Dead loop cause of keep pushing analyze tasks into job stack. When doing analyze process and generate new operators, the same analyze rule would be pushed again, so it cause dead loop. And analyze process generate new operators when trying to bound order by key and aggregate function.
Solve:
We need to make it throw exception before complex analyze and rewrite process, so checking whether all expressions being bound should be done twice. One is done after bounding all expression, another is done after all analyze process in case of generate new expressions and new operators.
Example:
Cases were put in file: regression-test/suites/nereids_p0/except/test_bound_exception.groovy
Proposed changes
Issue Number: close #xxx
Problem summary
Describe your changes.
Checklist(Required)

[ ] Does it affect the original behavior
[x] Has unit tests been added
[ ] Has document been added or modified
[ ] Does it need to update dependencies
[ ] Is this PR support rollback (If NO, please explain WHY)

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run buildall

run buildall

run clickbench

run buildall

TeamCity pipeline, clickbench performance test result:
the sum of best hot time: 34.16 seconds
stream load tsv:          425 seconds loaded<PHONE_NUMBER>9 Bytes, about 167 MB/s
stream load json:         21 seconds loaded<PHONE_NUMBER> Bytes, about 107 MB/s
stream load orc:          59 seconds loaded<PHONE_NUMBER> Bytes, about 17 MB/s
stream load parquet:          30 seconds loaded 861443392 Bytes, about 27 MB/s
https://doris-community-test-1308700295.cos.ap-hongkong.myqcloud.com/tmp/20230419153856_clickbench_pr_131210.html


[noob] How to declare a kind of pyclass using [de]pythonize?

Hi, and sorry in advance because I think I just don't get it 😅
I have a whole and pretty big model that includes numerous complex enums and that is finely tuned using serde, and I ended up here looking for a solution to use this configuration to expose this model in my pyo3 generated module.
Is such a thing possible?
I tried FromPyObject and IntoPyObject implementations that call depythonize() and pythonize().
impl<'source> FromPyObject<'source> for GameState {
    fn extract(ob: &'source PyAny) -> PyResult<Self> {
        match depythonize(ob) {
            Ok(game_state) => Ok(game_state),
            Err(error) => Err(PyErr::new::<GameState, String>(error.to_string()))
        }
    }
}

impl ToPyObject for GameState {
    fn to_object(&self, py: Python<'_>) -> PyObject {
        pythonize(py, &self).expect("Unable to convert GameState to python object")
    }
}

#[cfg(test)]
mod tests {
    use pyo3::Python;
    use pyo3::prelude::*;
    use crate::state::GameState;

    #[test]
    fn test_thing() {
        pyo3::prepare_freethreaded_python();
        let gil = Python::with_gil(|py| {
            assert_eq!(GameState::default().to_object(py).extract(py), GameState::default())
        });
    }
}

Of course I've got a compilation error:
the trait `PyTypeInfo` is not implemented for `GameState`

on the line  Err(error) => Err(PyErr::new::<GameState, String>(error.to_string())).
Fair enough! But I'm not sure where to go from there, it doesn't seem appropriate (or maybe I'm not brave enough) to try to fill the PyTypeInfo by hand.
I first thought pythonize was designed to replace pyclass for pyo3 use when serde was in place, but it seems I'm a bit off. I guess the produced and parsed Py* are used otherwise to interface with python? Or maybe I'm missing something?
Thanks for your guidance!

You're close, I think you're just constructing the error wrong. Try this:
Err(PyValueError::new_err(error.to_string()))

Wow, it just worked.
Thanks, I went too far based on a misinterpretation of the generics..!
Now for my use case :
#[pymodule]
fn tmp(_py: Python, m: &PyModule) -> PyResult<()> {
    m.add_class::<GameState>()?;
    Ok(())
}

is of course not ok because my GameState is no PyClass.
Do you know how could I expose my struct to pyo3 ?
Thanks a lot for your help :)

In case any other noob wonders, you can:

directly use PyAny as input and PyObject as output in pyfunction

#[pymodule]
fn antique_engine(_py: Python, m: &PyModule) -> PyResult<()> {
    m.add_class::<PyAction>()?;
    m.add_function(wrap_pyfunction!(create, m)?)?;
    m.add_function(wrap_pyfunction!(handle, m)?)?;
    Ok(())
}

#[pyfunction]
fn create() -> PyResult<PyObject> {
    let obj = MyObj::new();
    pyo3::prepare_freethreaded_python();
    let py_obj = Python::with_gil(|py|
        pythonize(py, &obj).unwrap()
    );
    Ok(py_obj)
}

#[pyfunction]
fn handle(obj: &PyAny) {
    let obj: MyObj = depythonize(&obj).unwrap();
}

expose PyObject in pyclass

#[pyclass]
pub struct Wrapper{
    #[pyo3(get, set)]
    pub content: PyObject
}

So as expected you won't get all the benefits from pyclass, but you'll be able to pass anything Serializable / Deserializable from one side to the other.
Very nice work :)


Android release mode sign and align the generated APK file

+1

+1

Reroll in response to @privat and @Morriar.

re+1


Installation of Flash-Attention Stalls During Wheel Building on Windows

Initial DeepSpeed Issue
I encountered an issue with DeepSpeed during its installation using python setup.py install. Specifically:

The build process stalled while constructing certain modules (cpu_adam, aio.lib).
I resolved this by modifying the setup.py file to force DS_BUILD_OPS=0.
2. Flash-Attention Issue
When attempting to install Flash-Attention, the build process stalled at the following step:
Building wheel for flash-attn (setup.py) ...
3. Troubleshooting Steps
Reinstalled Ninja: Installed Ninja (version <IP_ADDRESS>) successfully. However, the problem persists.
Disabled Multi-Core Compilation: Set the environment variable USE_NINJA=OFF to limit the compilation to a single core. The issue remains unresolved.
Verified Dependencies: Confirmed that PyTorch (matching CUDA version) and other dependencies like nvidia-ml-py and torch-optimi are installed.
Tried Different Python Environments: Attempted installation on both Python 3.10 and 3.12 environments but encountered the same issue.

@hl2dm
same issue with wsl2
I downloaded whl file and manually install it .
https://github.com/Dao-AILab/flash-attention/releases

I hope this can helps you.
https://www.deepspeed.ai/tutorials/advanced-install/
To use it correctly in Python 312, you must correspond to all package environment versions.

I just gave up and executed it on WSL. Now there is no problem at all. Thank you.


Mute() results in error - TypeError: 'bool' object is not callable

from soco import SoCo
sonos=SoCo('<IP_ADDRESS>')
sonos.mute()
Traceback (most recent call last):
File "", line 1, in
TypeError: 'bool' object is not callable

Should return 0 or 1 for the current mute state.

Hi,
mute is a property you therefore need to set it:
sonos.mute = True
(or False)
Cheers David

Thanks!  That works.
Docs on main page are wrong :)

You should have a close issue button below where you type text to comment.
Only you can close it....
Cheers Daivd

I fixed the doc. Thanks for reporting this.


[Documentation] Update MPA page to specify version of mkdocs-material

The local preview documentation part of the MPA page doesn't say which version of mkdocs-material theme should be installed locally in order to test the site documentation.
The latest version of the theme is 7.2.8, but the actual documentation is based on version 4.x.
It would be nice to indicate that mkdocs-material should be installed in version 4.6.3 (latest 4.x major version) and not higher.
Furthermore, maybe provide a simple installation guide with pip install mkdocs and pip install mkdocs-material==4.6.3, for example?

We have an issue created to track the different aspects of the upgrade to the latest version of MkDocs: https://github.com/pnp/cli-microsoft365/issues/2498

Good to know!
I can suggest to update the current page as long as the v4 is still WIP, or closing this issue since the site's MkDocs version is supposed to be updated.

We won't update the MkDocs version just yet, so for the time being it would be a good addition to the docs.

Awesome! We appreciate your help 👏

Thanks @michaelmaillot, we'll add it to the Wiki shortly

Done! Once again, we appreciate your help 👏


Implementing Add to Cart functionality #142

With reference to issue #142, the requirements have been satisified.
When the order now button is pressed on menu.html, the corresponding item is added to the cart. The same can be seen on cart.html. The total bill amount is displayed and an order now button has been included.
The website screenshot is attached for reference.

@khushi-joshi-05 kindly merge the PR

@A-b-i-r-a-m-i-G-S  thanks for working on cart functionality


How to copy all the credentials from an Android device to our node server?

I have an another app(not my app) which is running on my phone, and this app's fcm server is sending notifications to my phone. I know the senderId and apiKey of the app and also my phone's pushNotificationId which is set by the app's server.
Can I get the notifications on my node server with this project? I thought I have to copy the credentials that created when the app opened first time and registered to the fcm server of the app to my nodejs push-receiver and start listening with those credentials.
Does it possible to get them from an Android device?

Seems like a great use case !
You'll need all the credentials required by push-receiver to listen to incoming notifications:

the androidId returned by GCM during registration
the securityToken returned by GCM during registration
the privateKey to use to decrypt the notifications. The corresponding publicKey was sent to FCM during registration.
the authSecret which was generated & sent to FCM during registration

I never did that so I don't know how to retrieve these credentials 😕
The heavy part of the registration process is done by the OS not the application.
The registration logic we use in push-receiver was inspired by the registration process in Chrome. You may have to deep dive into Android source code to find what you want.

All I had to do to receive FCM messages from my app (or another app I suppose) was to call register with my senderId which is in google-services.json.  This worked like a treat for me.


Resetting logic for our Xilinx FPGAs

Final slice of #571. Implements resetting logic for Xilinx FPGAs.
Closes #571. Closes #529.

@sampsyo one place to start exploration with the Xilinx backend is trying to stare at some of the files in this PR and divine what they do. Especially useful would be recognizing things that seem to be hardcoded and marking them as such.


Parallel.ForEachAsync not working in Debug mode within the WithParsed method

Describe the bug
Parallel.ForEachAsync not working in Debug mode within the WithParsed method in CommandLineParser 2.9.1
To Reproduce
Code sample - https://dotnetfiddle.net/sRLRbW
using CommandLine;
using System.Threading.Tasks;
using System;

args = new[] {"--connectionString=Server=...;"};
Parser.Default.ParseArguments<Options>(args)
    .WithParsed(async (options) =>
    {
        await Parallel.ForEachAsync(args, async (arg, _) =>
        {
            await Console.Out.WriteLineAsync(arg);
            await Console.Out.WriteLineAsync();
        });
    });

public class Options
{
    [Option('c', "connectionString", Required = true, HelpText = "Specify the connection string.")]
    public string ConnectionString { get; set; } = string.Empty;
}

Expected behavior
The same output is in the Debug/Release modes.
Actual behavior
No output in Debug mode.
Screenshots

Additional Info
Using Visual Studio 17.8.3

Not a bug. Rather, an error in your code.
The WithParsed is not meant for async methods, as it doesn't await them. What you observe is basically the program ending before Parallel.ForEachAsync manages to schedule and start the async iterations. Note that it is legal for the C# compiler to convert your anonymous function into an Action<Options>, thus not issuing a warning about this incorrect usage of the WithParsed method and silently discarding the returned value (the Task).
To fix your code, replace WithParsed with WithParsedAsync and await it.

Great explanation, thanks


[Bug]: Unnecessary scroll seen in  2nd step of Welcome tour, when we bind customer data

Is there an existing issue for this?

[X] I have searched the existing issues

Description
When we start welcome tour from home page, and in the 2nd step we are binding {{getCustomers.data}} in Table Data, the helper text is cut and there is an unnecessary scroll to the right.

Steps To Reproduce

Click on "Welcome tour" in home page
Click on "Start building"
Click on "Run" in the first step
Click on "Proceed to next step"
Click on "Customer Table" under the Widgets column
In the property pane of the Customer Table, click on the text box of Table data
Observe the helper text under the text box is but and there is a scroll

Public Sample App
No response
Version
Release

No longer valid.


Enables azd build command and with hooks

Adds azd build to azd help docs
Adds project & service hooks for build command and lifecycle hooks

@jongio , IIRC, one of the reasons we decided not to support azd build was because it becomes complicated to automatically re-use command's output artifacts.
For example, if you run azd build and then azd deploy, will you be expecting to use the output from your previous build as part of deploy?  or are you expecting to do build again?
For azd package for example, we had to add azd package --output FOO and azd deploy --from-package FOO as a way to tell deploy what artifact to use.
So, adding build comes with a few questions about it which we must add to the help/docs for users to know what they can and can not do with build command.
I am not against having azd build public, but I am concern about the confusion about defining what's the purpose of the command.  Why and when do I want to use that command?

@jongio , IIRC, one of the reasons we decided not to support azd build was because it becomes complicated to automatically re-use command's output artifacts. For example, if you run azd build and then azd deploy, will you be expecting to use the output from your previous build as part of deploy? or are you expecting to do build again?
For azd package for example, we had to add azd package --output FOO and azd deploy --from-package FOO as a way to tell deploy what artifact to use.
So, adding build comes with a few questions about it which we must add to the help/docs for users to know what they can and can not do with build command.
I am not against having azd build public, but I am concern about the confusion about defining what's the purpose of the command. Why and when do I want to use that command?

Scenario is the dev wants to build the entire solution to make sure everything builds, without having to wait for the packaging to complete.
We can expose it as-is now with some help docs and take feedback and modify it based on that feedback.

Scenario is the dev wants to build the entire solution to make sure everything builds, without having to wait for the packaging to complete.

Why does azd have to be the solution to this problem?  Is it because there is no good story for multi-language build orchestration here?  I assume if you were writing all of one language, you'd just use the build technology of that ecosystem?

Scenario is the dev wants to build the entire solution to make sure everything builds, without having to wait for the packaging to complete.

Why does azd have to be the solution to this problem? Is it because there is no good story for multi-language build orchestration here? I assume if you were writing all of one language, you'd just use the build technology of that ecosystem?

Why shouldn't azd help for the whole software development lifecycle?  As we move on to provide more local dev experiences a local build everything or build service foo is going to become very important in the day of the life of an azd developer.
azd should not be considered just a deployment tool.

Scenario is the dev wants to build the entire solution to make sure everything builds, without having to wait for the packaging to complete.
We can expose it as-is now with some help docs and take feedback and modify it based on that feedback.

@jongio , azd has an opinionated way of building projects. Even with azd build, you can't be sure everything builds as expected. What will you do for azd build for python services?
For js, azd is just running npm run build, regardless of what the actual nodejs is doing. It might be using a different script to build, or it might just be a backend server that runs with nodejs without having a build script.
For Docker, we have been adding fields to azure.yaml to support more and more docker build settings, like --secrets, --build-args, --env-vars.  This makes sense for the specific build command you want to use for pushing your image to a registry to deploy to Azure. But you might want to build your container different when calling azd build for local development.
And same for DotNet.  Azd uses Release arg by default.
What you would expect in a common DevOps world for -> build the entire solution to make sure everything builds  is to have a unique CI/CD pipeline for each project where you build and test the project as one alone.


Fixed python imports to work with 3.10

Scope & Purpose
Allow to compile with python 3.10.
Related Information

[X] GitHub issue: https://github.com/arangodb/arangodb/issues/15448

Testing & Verification

[X] This change is a trivial rework / code cleanup without any test coverage.

great, thanks!

Is this enough?

Is this enough?

It was for me.


Factor out ServeFD & systemd in server for Linux only (Not Windows)

Signed-off-by: John Howard<EMAIL_ADDRESS>

LGTM (not a maintainer)

LGTM


Bug report: Typinator cask gives a HTTP 403 error

HTTP 403 error when trying to install Typinator
While the URL is correct, brew gets a 403 error when attempting to download the Typinator dmg. The URL works in a browser, and I suspect it gives the error based on the referrer (i.e. curl/wget vs actual browser).
Output of `brew cask  --verbose`
$ brew cask install typinator --verbose
==> Downloading http://www.ergonis.com/downloads/typinator-install.dmg
/usr/bin/curl --remote-time --location --user-agent Homebrew/1.1.10-3217-gef024148 (Macintosh; Intel macOS 10.12.3) curl/7.51.0 --fail http://www.ergonis.com/downloads/typinator-install.dmg -C 0 -o /Users/coaxial/Library/Caches/Homebrew/Cask/typinator--latest.dmg.incomplete
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
curl: (22) The requested URL returned error: 403 Forbidden
Error: Download failed on Cask 'typinator' with message: Download failed: http://www.ergonis.com/downloads/typinator-install.dmg
The incomplete download is cached at /Users/coaxial/Library/Caches/Homebrew/Cask/typinator--latest.dmg.incomplete
Error: nothing to install
Error: Kernel.exit

Output of `brew doctor`
$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: Putting non-prefixed coreutils in your path can cause gmp builds to fail.

Output of `brew cask doctor`
$ brew cask doctor
==> Homebrew-Cask Version
Homebrew-Cask 1.1.10-3217-gef024148
caskroom/homebrew-cask (git revision 1b15; last commit 2017-03-08)
==> Homebrew-Cask Install Location
<NONE>
==> Homebrew-Cask Staging Location
/usr/local/Caskroom
==> Homebrew-Cask Cached Downloads
~/Library/Caches/Homebrew/Cask (1 files, 0B)
==> Homebrew-Cask Taps:
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask (3588 casks)
==> Contents of $LOAD_PATH
/usr/local/Homebrew/Library/Homebrew/cask/lib
/usr/local/Homebrew/Library/Homebrew
/Library/Ruby/Site/2.0.0
/Library/Ruby/Site/2.0.0/x86_64-darwin16
/Library/Ruby/Site/2.0.0/universal-darwin16
/Library/Ruby/Site
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/vendor_ruby/2.0.0
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/vendor_ruby/2.0.0/x86_64-darwin16
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/vendor_ruby/2.0.0/universal-darwin16
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/vendor_ruby
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/x86_64-darwin16
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin16
==> Environment Variables
LANG="en_US"
LC_ALL="en_US.UTF-8"
PATH="~/.rvm/gems/ruby-2.4.0/bin:~/.rvm/gems/ruby-2.4.0@global/bin:~/.rvm/rubies/ruby-2.4.0/bin:/usr/local/sbin:/usr/local/bin:~/bin:~/.nvm/versions/node/v7.7.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/usr/local/MacGPG2/bin:/usr/local/opt/coreutils/libexec/gnubin:~/.rvm/bin:/usr/local/Homebrew/Library/Taps/homebrew/homebrew-bundle/cmd:/usr/local/Homebrew/Library/Taps/telemachus/homebrew-desc/cmd:/usr/local/Homebrew/Library/Homebrew/shims/scm"
SHELL="/bin/bash"

https://github.com/caskroom/homebrew-cask/pull/30718


Update WebSocket API interface link

Looks like the user_interface folder was called user_interfaces at one point. The documentation hasn't been updated since.

Thanks!
BTW the new developer docs sits at https://developers.volumio.com/


[dv/ast] Speed up clocks enabled

In top-level tests the ast seems to add a large number of cycles before clocks are stable and units can start really working. This causes tests to start after a random time duration, and to take longer to complete. The impact of this is particularly large for tests that reset multiple times, as many tests do.
The ask is to have some way to make this wait be predictable and small, ideally with some plusargs so it won't require a different compilation.

Added @tjaychen as an interested party, not a real assignee.

@matutem I am not sure it is the clocks... It might be the power supply that only after that the oschilator get activated.
Can you send me a wave file with one of the clocks.

@matutem another part about the clock stabilization is that it depends on on ROM initializing the calibration constants. So even if we fix something in AST, that part will still need to wait though.

ah so there are multiple things here.
The ast starts off with uncalibrated clocks, and I believe @Jacob-Levy set this up such that frequency is within a random range.
That's why we get variable time until the rom begins to execute.
Before the rom executes though, the pwrmgr has to go through its power up FSM and that takes some time. Eventually the pwrmgr fsm will request the clocks to turn on, and that's when ast actually turns on the clocks.  So we can probably shorten some time on the ast side, but you will still be bound by the design itself though.. which goes through both life cycle control initialization and otp initialization before it lets the rom execute.
I think an even faster approach might just be to disable dumping until the later in the sim.

The ast por_ni input goes inactive at after 10 microseconds, and the next relevant change is ast's ast_pwst_o output, which asserts aon_pok and main_pok at about 905 micros. This seems to be due to dly_cnt in rglts_pdm_3p3v, which counts down from LC2HCOC[8:0] down to zero on the aon clock. These are the 102 cycles you mention above, but the AON clock frequency starts uncalibrated, and in the particular case I am looking at it is 117633 Hz, which explains why it is not 520 us, but closer to 900 us.
So the starting of the pwrmgr is determined by both the increase of aon cycle time early on, and the hi start value of Lc2HcTrCyc.
Changing either or both of these (under plusargs) could help speed things up.

@matutem The 102 was derived from the fastest AON clock which is the calibrated one for the switching back from PD. The AON clock does not loose calibration unless VCC is lost.
I will add a plusargs to accelerate only the Cold Power-up case.

Thanks Jacob.

The code is done. Will test it and PR it next.

All changes done and awaits for PR approval & merge...

I believe this has been implemented in https://github.com/lowRISC/opentitan/pull/15701 which is now merged. Can we close this issue?

yeah let's close.


github: workflow reorg

@tomponline I'm now wondering if we should skip running the log tests once PRs are merged. That feels unwarranted and and burns like 49 hours of CI.

@tomponline I'm now wondering if we should skip running the tests job once PRs are merged. That feels unwarranted and and burns like 49 hours of CI.

yeah makes sense


Getting Error "Your chart rendered a  node which isn't supported by  yet"

First of all, thank you for your work. This library has the potential to solve my current problem.
I'm trying to render your example in the  component but I'm getting the "Your chart rendered a  node which isn't supported by  yet" error.
I have the last version of recharts and react-pdf. What could be a problem? How can we solve it?

Hmm, how are you running the examples?

I basically copied your example and try to load it inside the  component of the @react-pdf/renderer library.
I have React application based on create-react-app with React 18.2
I'm also getting this JSX error.

The original version only supported server-side rendering. I just published v0.0.4 with support for client-side rendering too. Can you please try it?
Here's how it should work: https://stackblitz.com/edit/react-starter-typescript-wt7dfb?file=index.tsx


await and async needs to be gone over.

We have had severe stability issues regarding crashes due to unkept promises. This is detremental to stability and we need to go over the entire codebase to check wether all used functions are asynchronous or not.

Has mostly been fixed as part of other bugfixes.


about mali gpu opencl coding skill

Hi:
I have a opencl kernel coding skill question for mali gpu.
ACL uses buffer memory object when coding opencl kernel, I wonder whether it is much faster using buffer objects than using image objects？
by the way, Qualcomm Adreno GPU suggest that it is much faster using image memory objects for L1 cache. Is there any suggestion for choosing opencl memory objects when coding kernels?
and what's the reasons?
Thanks, hope for your reply~

Hi @bitxsw93
and many thanks for using ACL.
Regarding your question, we have one patch under review in our development branch (https://review.mlplatform.org/c/ml/ComputeLibrary/+/3329) that is going to exploit the image object in GEMM. The patch still requires few more to change the heuristic but the goal is to use the image object to improve the performance.
Unfortunately we do not have documentation about that but we are in a process to provide one to give more information.
Once again many thanks for your question. Do not hesitate to write if you need any further information.
Regards,
Gian Marco

Hello @bitxsw93,
Building on @gmiodice comment, GPUs usually have texture mapping pipelines which have an internal texture cache (e.g. https://www.anandtech.com/show/14385/arm-announces-malig77-gpu/3)
Having an extra cache means that you can utilize this pipeline and increase you effective memory bandwidth. Texture caches usually have restrictions though, for example they are usually designed to be kept coherent to global writes, and are usually optimized for different type of locality compared to the your regular  ones.
So if you have const memory objects and depending on your nature of your algorithm utilizing the texture pipe capabilities could be beneficial.
Hope this helps,
George

Hi @bitxsw93
and many thanks for using ACL.
Regarding your question, we have one patch under review in our development branch (https://review.mlplatform.org/c/ml/ComputeLibrary/+/3329) that is going to exploit the image object in GEMM. The patch still requires few more to change the heuristic but the goal is to use the image object to improve the performance.
Unfortunately we do not have documentation about that but we are in a process to provide one to give more information.
Once again many thanks for your question. Do not hesitate to write if you need any further information.
Regards,
Gian Marco

Hello Gian Marco:
Thanks for your reply firstly.
So you are exploiting to use image memory object on ARM Mali GPU?  just considering the  performance, I wonder which memory object is preferred for Mali GPU, cl_buffer or cl_image?
Do your team have the conclusion? and why~
Thanks, Hope for your reply~

I am try to do some algorithm utilizing on Mali GPU, and wonder which memory object should be choosen for better performance?

@bitxsw93 can you provide any insight in the type of algorithm?

Hi George:
Compute Vision algorithm, such as convolution, kinds of filter algorithm. to utilize on Mali GPU


Define pre-compute tasks

[x] Review the requirements and system designs and determine what tasks may be done by a periodic pre-compute process

Possible examples:

[x] ID replication, when a new ID for a record is detected and needs to propagate to other event records

This was done here https://docs.google.com/document/d/1aa02icZyr6a-qtD6pxR-lw7BMCjL4kgU84p2yLHlYAY/edit


createimagewizard: clear subscription data

Clear subscription data when centos release is selected. Fixes #787

The last force push doesn't include any changes: https://github.com/RedHatInsights/image-builder-frontend/compare/12099ea43660c9a220ef07b51a57e0b9c519c0d5..5e709eae167d9eb372b391eafe1d8043cdabf034


Added integration tests and fixed returning an array from case

This adds some integration test helpers that can help compile an Elixirscript function and assert the return value from the compiled JS. It does this by compiling the Elixirscript module, sending the output into the node CLI, and using Poison to parse the JS output returned from the node CLI. It will also write an HTML file to ./tmp which can be more easily interactively debugged with Chrome dev tools.
I found this to be a lot easier to test/debug issues, but since it's new infrastructure I'm happy to discuss whether this should be in this project or alternative ways to achieve friendlier testing/debugging like this.

@craigspaeth cool! I'm not sure how the args will work though. For instance, tuples and functions may not work as well. What do you think?
If that's answered I think this can work.

Or maybe for now just accept that those types can't be used as args and place them in the function directly for compilation if needed?

Thanks for the comments. Agreed! I'll make updates and reopen when I get a chance.


chore: add icons

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#157
#156
#155  👈
#154
#153
#152
#151
#150
#149
#148
#147
#146
#145
#144
#143
#142
#141
#140
#139
#138
#137
#136
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @NathanFlurry and the rest of your teammates on  Graphite


Is this project deprecated ? [question]

at the docs site - the elements look amazing. coming to the repo - the last modified date seem a long time ago plus there is flow which has almost passed on in favor of typescript.
(i know the vue version has version 3 which is new but i'm looking for react lib)

@orenmizr
Do you have a conclusion? I am also looking for element ui to react


Proposed changes for demo server

Motivation
Update README file to not include any specific information and have duplication with our documentation. We going that path as this readme is currently used in some many places (static templates, upstream, and development)
I'm going to also move all removed information to the documentation.

Changes Unknown when pulling 105b64fd24a7fd3eade14b0d196d42da7900fad6 on RAINCATCH-1191 into ** on master**.


Add rohd package

Would love to see support for importing the ROHD package in dart pad!
https://pub.dev/packages/rohd

Can you please supply a single page sample showing how to use ROHD in a useful way?
We need a proof of life script to make sure it is working as part of an implementation change.

Sure, here's a slightly modified example from the repo that should work well!
/// Copyright (C) 2021-2022 Intel Corporation
/// SPDX-License-Identifier: BSD-3-Clause
///
/// example.dart
/// A very basic example of a counter module.
///
/// 2021 September 17
/// Author: Max Korbel<EMAIL_ADDRESS>///

// Import the ROHD package
import 'package:rohd/rohd.dart';

// Define a class Counter that extends ROHD's abstract Module class
class Counter extends Module {
  // For convenience, map interesting outputs to short variable names for consumers of this module
  Logic get val => output('val');

  // This counter supports any width, determined at run-time
  final int width;
  Counter(Logic en, Logic reset, Logic clk,
      {this.width = 8, String name = 'counter'})
      : super(name: name) {
    // Register inputs and outputs of the module in the constructor.
    // Module logic must consume registered inputs and output to registered outputs.
    en = addInput('en', en);
    reset = addInput('reset', reset);
    clk = addInput('clk', clk);

    var val = addOutput('val', width: width);

    // A local signal named 'nextVal'
    var nextVal = Logic(name: 'nextVal', width: width);

    // Assignment statement of nextVal to be val+1 (<= is the assignment operator)
    nextVal <= val + 1;

    // `Sequential` is like SystemVerilog's always_ff, in this case trigger on the positive edge of clk
    Sequential(clk, [
      // `If` is a conditional if statement, like `if` in SystemVerilog always blocks
      If(reset, then: [
        // the '<' operator is a conditional assignment
        val < 0
      ], orElse: [
        If(en, then: [val < nextVal])
      ])
    ]);
  }
}

// Let's simulate with this counter a little, monitor the output, and take a look at generated SystemVerilog.
Future<void> main() async {
  // Define some local signals.
  var en = Logic(name: 'en'), reset = Logic(name: 'reset');

  // Generate a simple clock.  This will run along by itself as the Simulator goes.
  var clk = SimpleClockGenerator(10).clk;

  // Build a counter.
  var counter = Counter(en, reset, clk);

  // Before we can simulate or generate code with the counter, we need to build it.
  await counter.build();

  // Let's see what this module looks like as SystemVerilog, so we can pass it to other tools.
  var systemVerilogCode = counter.generateSynth(SystemVerilogSynthesizer());
  print('///// Generated SystemVerilog code /////');
  print(systemVerilogCode);
  print('////////////////////////////////////////');

  // Now let's try simulating!

  // Let's start off with a disabled counter and asserting reset.
  en.inject(0);
  reset.inject(1);

  // Drop reset at time 25.
  Simulator.registerAction(25, () => reset.put(0));

  // Raise enable at time 45.
  Simulator.registerAction(45, () => en.put(1));

  // Add a print message triggered when the output changes
  counter.val.changed.listen((event) {
    print('Counter value changed @${Simulator.time}: $event');
  });

  // Print a message when we're done with the simulation!
  Simulator.registerAction(100, () {
    print('Simulation completed!');
  });

  // Set a maximum time for the simulation so it doesn't keep running forever.
  Simulator.setMaxSimTime(100);

  // Kick off the simulation.
  await Simulator.run();
}

Closed in #995

Actually, this isn't shipped to production, so I'm re-opening this issue. This package has been shipped to our hidden testing instance https://dartpad.dev/?channel=dev
Please exercise your suggested package on this instance and confirm here that it works as intended. If you do confirm this as working I'll ship it to stable, beta, master, and old channels on dartpad.dev. If you don't confirm, I won't ship it.

Verified with the above sample code.
///// Generated SystemVerilog code /////
/**
 * Generated by ROHD - www.github.com/intel/rohd
 * Generation time: 2023-01-16 17:47:17.686
 * ROHD Version: 0.4.1
 */

module Counter(
input logic en,
input logic reset,
input logic clk,
output logic [7:0] val
);
logic [7:0] nextVal;
//  sequential
always_ff @(posedge clk) begin
  if(reset) begin
      val <= 8'h0;
  end else begin
      if(en) begin
          val <= nextVal;
      end

  end

end

assign nextVal = val + 8'h1;  // add
endmodule : Counter
////////////////////////////////////////
Counter value changed @5: 8'bzzzzzzzz  -->  8'h0
Counter value changed @45: 8'h0  -->  8'h1
Counter value changed @55: 8'h1  -->  8'h2
Counter value changed @65: 8'h2  -->  8'h3
Counter value changed @75: 8'h3  -->  8'h4
Counter value changed @85: 8'h4  -->  8'h5
Counter value changed @95: 8'h5  -->  8'h6
Simulation completed!

I just tried it out and it appears to be working!  Thank you!!


Contact  missing from the F&F list after the wallet recovery

I had a contact in the F&F list. I restored the wallet to level 1 with cloud backup and that contact was missing from the F&F list. I tried to send from another device to the same contact. Send was successful, I also saw that transaction on the account but still the contact missing.
F&F request accepted notification were also there in notification drawer.
Tested on android dev app v2.0.75(471)

With Seed backup:

I restored the wallet with seed backup but in this case the contact was there in F&F list but contact's display picture was missing and also the there were no notification in notification list after recovery.

Verified this issue on dev app v2.0.80(488)


feat: add form contact

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


1.0 timeline, need help?

I'm using credential in a personal project and really like the focused approach you've taken. Are you still planning on moving ahead to 1.0? Are any contributions are needed from a non-security expert, open source novice?

As soon as we clear a couple open issues, I'm good to push 1.0.
See https://github.com/ericelliott/credential/issues/27 if you want to pitch in.

Closing all stale issues and PRs. Please update, ensure all tests pass, and reopen if you really want this in.


launchpad PRO

does anyone know if an update for compatibility with the Launchpad Pro is planned soon? If it is not i really hope it will come true one day

I dont think this tool is maintened so i started my own project
i need someone that owns a pro to support it so if you're interested hit me up on discord
https://discord.gg/4Ys9TRR

is it coming?

Hey, I'm pretty sure the compatibility is already there.

it doesn't work for me. is it tested?

I personally don't have the Pro, but I remember seeing users on the Discord talking about it.
If you're looking for more assistance, you're better off visiting the Discord :)
https://discord.gg/QsGkbe5xyz

thank you very much


Font Size slider is ignored

Before you open a bug report
Disable plugins and snippets that could be causing a conflict. Update to the latest versions of the following, and restart Obsidian:

Minimal Theme
Minimal Theme Settings plugin
Contextual Typography plugin

Confirm that the bug is not present when Minimal theme is off
Confirmed
Describe the bug
The font size does not change if I adjust the slider under Appearance -> Font size
To reproduce
Install obsidian. Install minimal design. Change font size.
Expected behavior
The font size changes with the slider.
Screenshots
Font Size minimal:
Font Size maximal:

Debug info (required):
SYSTEM INFO:
Obsidian version: v0.14.6
Installer version: v0.14.2
Operating system: Windows 10 Pro 10.0.22000
Login status: not logged in
Insider build toggle: off
Live preview: on
Legacy editor: off
Base theme: dark
Community theme: Minimal
Snippets enabled: 0
Safe mode: on
RECOMMENDATIONS:
Custom theme: for cosmetic issues, please first try updating your theme to latest. If still not fixed, please try to make the issue happen in the help vault or disable community theme and snippets.

Does anyone know what the reverse Command is for: CTRL _
It decreased the font size with no way to increase it. This is how I noticed the slider bug.

Fonts are set via the plugin
Please see documentation:
https://minimal.guide/Plugins/Minimal+Theme+Settings

This is now fixed as of 5.2.6, so you can set font size without Minimal Theme Settings
It sounds like you also probably changed the overall zoom level of the app. You can change this with CTRL - and CTRL +


Games not showing

When i open steam achievement manager it only shows a game called "space wars"

fixed


JAVA_HOME is set to an invalid directory

Steps to reproduce
A friend of mine is having trouble configuring his java correctly/making the very same app I am regularly working on able to run on his system. I am writing this issue because he is new to programming.
He started out using Java 23 (because I recommended him to, because its the latest version, I later knew better), I asked him to downgrade to 21 or 17 though because of gradle compatibility etc. He keeps receiving the message "ERROR: JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk-23" though, and that even though he not only tried to uninstall and completely removed Java 23 but also when he uninstalled all Java versions available on his system until the terminal did not recognize the keyword "java" anymore.
Printing out the current Java version with ´java --version´ shows Java 21 instead of Java 23. Only ´flutter doctor´ and Visual Studio Code (when he tries to run his app) seem to be stuck with Java 23 (like as if we forgot to delete the browsers cache or so). Having a look at the registry (regedit command) was not helpful neither.
Helping him to troubleshoot this problem, I found a few issues from the past mentioning the very same problem:
July 2022: https://github.com/flutter/flutter/issues/108618
July 2023: https://github.com/flutter/flutter/issues/130635
Jan 2024: https://github.com/flutter/flutter/issues/140848
Thats why I do not neccesarrily think we are speaking about a bug but also can not exclude this possibility from troubleshooting.
We both run the same/latest Flutter version 3.28, the same version of Android Studio and the same version of Visual Studio Code.
Actual results
My friend receives the error message "ERROR: JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk-23" even though Java 23 is not installed anymore, the path does no longer exist and his environment variable is set correctly.
Logs
No response
Flutter Doctor output
I need to request this from him but already gave you the information about the current Flutter and Java version.

Helping him to troubleshoot this problem, I found a few issues from the past mentioning the very same problem:
July 2022: #108618

@theSonGoku1991
the issue you mentioned is still open
and as you mentioned it addresses the same problem
wouldn't be better to keep the conversation in that issue?

@theSonGoku1991
You may try to set the jdk version you have / using currently to set it via flutter config --jdk-dir "your path to current jdk" to see if it helps to resolve the issue or not.

@darshankawar
This solved out problem we have been trying to fix for days!
Can you tell me why? Is it possible the old jdk/java version was stuck in the flutter "cache" and the command you posted overwrote it?

The command description is as below:
 --jdk-dir                               The Java Development Kit (JDK)
                                            installation directory. If unset,
                                            flutter will search for one in the
                                            following order:
                                            1) the JDK bundled with the latest
                                            installation of Android Studio,
                                            2) the JDK found at the directory
                                            found in the JAVA_HOME environment
                                            variable, and
                                            3) the directory containing the java
                                            binary found in the user's path.

Closing as this is resolved per your comment.


Dolthub Swiss Benchmark Comparision

We actively use Dolthub Swiss Map https://github.com/dolthub/swiss. Have you ever compared the performance and features with the swiss implementation of this library? Why should we switch to cockroachdb/swiss? According to a small benchmark test I did, cockroachdb/swiss makes less heap allocation.

Sorry for the (long) delay in responding. I haven't benchmarked the Dolthub Swiss Map implementation since the very earliest days of this project. There are some numbers in https://github.com/cockroachdb/swiss/commit/f0cdd7fac898ac3e7ad9effa9c9d0457d512cb65:
The inspiration behind writing a Go implementation of Swiss Tables came from
https://github.com/dolthub/swiss. That implementation is quite a bit slower
and does not follow the original design (the slots are divided into groups
which do not overlap).

name                        old time/op  new time/op  delta
StringMaps/n=16/map-10      11.2ns ±15%   7.3ns ± 1%  -34.24%  (p=0.000 n=10+8)
StringMaps/n=128/map-10     12.2ns ±10%   7.4ns ± 4%  -38.76%  (p=0.000 n=10+10)
StringMaps/n=1024/map-10    12.7ns ± 5%   7.5ns ± 2%  -40.65%  (p=0.000 n=10+10)
StringMaps/n=8192/map-10    14.3ns ± 3%   7.9ns ± 1%  -44.87%  (p=0.000 n=10+10)
StringMaps/n=131072/map-10  18.5ns ± 2%  13.9ns ± 2%  -24.86%  (p=0.000 n=10+8)
Int64Maps/n=16/map-10       6.26ns ±17%  4.85ns ± 1%  -22.47%  (p=0.000 n=10+8)
Int64Maps/n=128/map-10      6.76ns ± 4%  4.99ns ± 0%  -26.20%  (p=0.001 n=8+6)
Int64Maps/n=1024/map-10     7.07ns ± 3%  4.97ns ± 2%  -29.71%  (p=0.000 n=10+10)
Int64Maps/n=8192/map-10     8.52ns ± 5%  5.30ns ± 1%  -37.77%  (p=0.000 n=10+10)
Int64Maps/n=131072/map-10   12.0ns ± 2%   6.7ns ± 1%  -44.11%  (p=0.000 n=10+10)

My recollection is that the Dolthub implementation did not adhere closely to the Abseil implementation. cockroachdb/swiss does. Note also that Go folks are experimenting with replacing the Go map implementation with one inspired by this Swiss table implementation. Follow along in https://github.com/golang/go/issues/54766. I'm not sure when that will land. Go 1.24? Go 1.25?


Check architecture when building

When building on linux-amd64 will build for linux-amd64 and not like before for linux-ia32...

merged with a little update at https://github.com/EragonJ/Kaku/commit/d61cd6d05fa055c6ee88822b0f303d8cf845808f


Data properties duplicated

See /testcases/owl2-primer/key-constraint-on-data-property.

Interestingly, for the 1 the domain is given as Person and for the other not. See below:

vs

There are two different properties in the OWL file:
 <owl:AnnotationProperty
rdf:about="http://www.ebi.ac.uk/testcases/owl2primer/key-constraint-on-data-property.owl#hasSSN"/>

and
<owl:DatatypeProperty
rdf:about="http://www.ebi.ac.uk/testcases/owl2primer/key-constraint-on-data-property#hasSSN">

Notice the IRIs are different (one has .owl in it and the other doesn't).


Applied fixes from SideCI

Applies code style fixes from an rubocop by SideCI.

Coverage increased (+0.07%) to 12.209% when pulling 549f000a21bc9b5fc7025e6c1db0c0531c85619d on sideci/20170615021652_rubocop into e3902f8508c083769c27634f9b0c71eebbed67db on discord.

Coverage increased (+0.07%) to 12.209% when pulling 549f000a21bc9b5fc7025e6c1db0c0531c85619d on sideci/20170615021652_rubocop into e3902f8508c083769c27634f9b0c71eebbed67db on discord.


Cleanup some things which shouldn't be components

Objective

Using Stopwatch and Timer as raw components is a footgun.

Solution

Stop them from being components

Timer shouldn't be a component because using it as a component has a high likelihood of colliding with another crate using it. That is, imagine module 1 uses a Timer component to mean 'when this entity should explode', but then module 2 uses a Timer component to mean 'when this entity's attack cooldown has finished'.
Using both module 1 and module 2 together would lead to your players exploding when they finish every attach, which would not be ideal.

Timer shouldn't be a component because using it as a component has a high likelihood of colliding with another crate using it. That is, imagine module 1 uses a Timer component to mean 'when this entity should explode', but then module 2 uses a Timer component to mean 'when this entity's attack cooldown has finished'.
Using both module 1 and module 2 together would lead to your players exploding when they finish every attach, which would not be ideal.

Ok, thanks for the explanation

I'm fine with making Timer a "non component" for the time being, as it is generally better to wrap it (for ease of querying). We might ultimately want to add some form of "generic timer component" that auto ticks / can be added to scenes in the Bevy Editor, as I've found that useful in Godot in the past. Thats why I initially made Timer an auto-ticking component. But yeah, we should build things as the need arises, not before.

bors r+