Widgets

[ ] Checking the recent ipywidgets changes with the current hack in the notebook to make sure the framework still works well
[ ] Make an easy way to transform from backbone views to phosphor views that are displayed. Perhaps at the WidgetManager displaying logic level.
[ ] Clean up each view, removing jquery and bootstrap dependencies

Widget output system

[ ] JASON email the list for comments on changing how widgets are displayed
[ ] Output area widget working well (ping Jon)
[ ] Creating an output display class that takes in the widget mimetype and displays the correct model in the appropriate place in the output area.

CCing @jdfreder, @SylvainCorlay @sccolbert @dwillmer @blink1073 @afshin

Ref: https://github.com/jupyter/jupyter-js-plugins/pull/89, which demonstrated a functioning slider using<EMAIL_ADDRESS>

@jdfreder, @SylvainCorlay - is that a current-enough version of jupyter-js-widgets to build on?  Or are there unreleased changes that we should test? Sylvain was mentioning that maybe we should bump the jupyter-js-widgets version to have the latest...

Sylvain pointed out that ipywidgets needs an update to deal with the most recent jupyter-js-services: https://github.com/ipython/ipywidgets/issues/381

Actually, that issue may not impact us, because we handle hooking the widget manager up to comm targets ourselves.

That may actually be closed by #382 .  I pinged the author

/cc @lbustelo

please cc @fperez and myself on this stuff...

Also, I am concerned about "getting the notebook working in JupyterLab" becoming a much larger "completely redesign the notebook" that delays JupyterLab too much. I would prefer to first get the same (features, design, UX, etc) notebook (but refactored code) working in JupyterLab so users have full feature parity and then begin to evolve it in subsequent major releases.

Please keep in mind that these changes for widgets are to "refactor" the widget code to finally complete the separation we couldn't quite do because of hardcoded hacks in the current notebook. It also makes it play in the current notebook infrastructure a lot better.
I also am trying to be conservative about the changes in this initial release. I think finally being able to clean out the widget code out of the main notebook is a good thing and will make things easier and better in the short and long run.

I think this work will also improve the lives of other people using widgets outside of the context of the notebook already, like our friends at IBM.

@jdfreder, @blink1073:
I just realized a big problem with having a global renderer for display_data messages that is supposed to render notebook-specific widgets - of course the global renderer does not have access to notebook-specific state, so you can't just say "render widget model id blah" and have it know what to do, because all it gets is the message and nothing else.
Some workarounds:

put all widget state in the display_data message, a la react. Then the widget renderer doesn't ever need notebook state to render a widget. Widget state is automatically stored in the notebook format.
We could have a notebook extension service. A plugin can register a callback with the notebook extension service. When a new notebook is created, the callback is called with extension points for the specific notebook (e.g., functions to register comm targets, notebook-specific mime renderers, etc.). The callback returns a disposable object. When the notebook is destroyed, it disposes the object.

@jasongrout By "global renderer" and "notebook-specific widgets", do you mean that there is one display_data function in the app container that handles rendering for multiple notebook document views? I ask because I'm curious what problem you hit that we haven't yet hit in the dashboard_server where we have one display_data function ...

Right - with the current design, there is one application-wide renderer, but to render widgets, they depend on state that is tied to a single notebook's state.

Got it. We haven't hit it in dashboard_server because there's a 1:1 mapping there between dashboard-notebook and page (at the moment).

It seems like 1) is cleaner and provides a straight path to serialization/deserialization.

Agreed, 1 makes more sense.  It's a little awkward to think that the widget state for redisplayed items will be duplicated across cells, but apart from having document level state I see no way around that.

I think 2 makes more sense given our current architecture. Sounds like a
good discussion for next week!
On Fri, Mar 25, 2016, 11:16 Jonathan Frederic<EMAIL_ADDRESS>wrote:

Agreed, 1 makes more sense. It's a little awkward to think that the widget
state for redisplayed items will be duplicated across cells, but apart from
having document level state I see no way around that.
—
You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
https://github.com/jupyter/jupyter-js-notebook/issues/34#issuecomment-201328438

Interested in hearing you out, see you Monday!

@dwillmer, @sccolbert, and I had a long conversation today about the output area widget. Here are some takeaways from our discussion:

It's very tricky and we have a lot of not very nice smelling alternatives for rendering arbitrary output in a widget container.
The basic idea is to let the user create UIs with widgets, but also provid the full power of the IPython display protocol/ecosystem.
One way to do this is to set up a generic output redirection mechanism on the browser side. When an output is rendered, there is a way to redirect the output to some other DOM node. This is effectively what is done by the current ProxyWidget in ipywidgets, and is similar to how the Sage cell server provided addressable output. A nice thing is that all output messages still go through the same pipeline to the browser.
If instead we redirect output messages on the kernel-side, another way to do have an output widget is for the widget manager to provide to the output widget some contextual rendermime. The output widget uses this rendermime as a black box. One question is what this rendermime would return. If we insist that it must return a DOM node, then the widget manager could adapt the notebook-level rendermime to return a DOM node. For example, it could take a rendermime returning a phosphor widget and rip the DOM node out (ugly and bad). The widget manager could also take the notebook-level rendermime and attach its output to a DOM node (better, but leads to having a phosphor widget inside of a DOM node inside of a Backbone view inside of a phosphor widget, since the current widgets are built on Backbone Views). Also, should the widget manager provide this rendermime to all widgets, or just some with certain metadata?
More generically, the widget manager could provide widgets (some or all) with just the render callback function that would take a mimebundle and return (a DOM node?).

@sccolbert, @dwillmer - feel free to comment more.

Another idea on the output widget: perhaps a minimal stub implementation can be defined in ipywidgets (perhaps that just displays plain/text or something), but the widget manager can override that stub implementation to define a richer output widget. Then the widget manager can pass the environment information (i.e., the environment rendermime) through a closure, rather than making it available to all plugins.
We still have the issue that the environment rendermime's output needs to be converted to a backbone view. Presumably the widget manager knows how to do this since it knows what kind of rendermime it is registering for.

It seems weird that output-area is tied to widgets. Isn't the output-area a general purpose location for all cell output?

@lbustelo There's a bit of overlapping terminology here. The "output area" is the output portion of a cell which renders the arbitrary mime bundle content, some of which may be ipy widgets. The "output widget" is an ipy widget that can render the content of an arbitrary "output area" by intercepting the output messages for that area. The use case for this is assembling app-like interfaces which contain sliders and buttons and what-not, but also the content for selected output messages. This is naturally a recursive relationship since those output messages may themselves render widgets. It is definitely a bit wonky, and we haven't yet come up with a good pattern for expressing this.

It is definitely a bit wonky, and we haven't yet come up with a good pattern for expressing this.

Facing similar issues in dashboard server.

@parente - can you elaborate on the relevant issues you've faced in the dashboard server?

Much simpler than what you're facing with the output widget for sure: https://github.com/jupyter-incubator/dashboards_server/issues/188


Showing version of VNM

It will be good to show somewhere in the GUI the version of the VNM the user is using. Will be very useful for debugging.
Maybe we should have in the menu an "about" window that display credits (our names, our institution names) and version.

Implemented by @aswinnarayanan :) Version number is now part of the terminal prompt


Bugfix: don't allow closing last tab with middle click

Also add a few of the TODOs for similar areas. This change will do for now until we decide on a better story for closing the last tab.

TODOs reference #627. Just preventing closing the last tab, for now.


Remove development packages from Pulsar's docker images

Fixes #14092
Motivation
There's a lot of unnecessary tooling that gets installed in the Pulsar docker images.
Modifications

remove dev packages
use python3-pip package for installing pip

For reference, I was wondering why we had these dependencies in the first place. It looks like they were needed because at one point we were building python from source: https://github.com/apache/pulsar/pull/4754. We don't do that now, so we definitely don't need these dependencies.

Note that the RUN apt-get docker image layer is 1 gigabyte in 2.9.1. I am hopeful that this will help cut down on our docker image size.

@merlimat I pushed changes to omit installing GCC when python3-pip package gets installed. Let's see if the build and tests continue to pass.

Just adding a link to a blog post which explains the need to use --no-install-recommends when creating docker images: https://ubuntu.com/blog/we-reduced-our-docker-images-by-60-with-no-install-recommends


Building using a custom command (not a method, but a script)

Context
I'm interested in using the unity-builder images + github action, but instead of building my project from a static method, I need to call a rather overly complicated build script (legacy...). Is there any way to override the entrypoint.sh that calls unity, and instead, call my own script (which will eventually call unity itself)
Suggested solution
A generic "command line" option
Considered alternatives
I could build my own image and/or action, but I want to leverage the packaging and activation code from game-ci
Additional details

Sure. You can specify the buildMethod without doing all kinds of customisations.

I'm experimenting with that now, but buildMethod means I'm already going into Unity, etc; is there any way to just call a shell script / python script instead? Ideally, I'd like to do this before touching any of the actual sources.

Indeed. Currently there is no way to call a custom shell script inside the container.
Could you please describe your use case for this?

Mostly it relates to a build system that's implemented either outside of C# completely (including a bit of pre-processing, the unity invocation, and then a bunch of packaging / rearranging tasks) or one that's in C# but not in a single function (i.e., there's a menu option added with a custom function that reads a bunch of other config data and then invokes the eventual build). The "standard" unity options are not all used, and there's also some other packaging code that still needs to be added to our single build function. Rather than rewrite this all, I was hoping to be able to just invoke our script, and leverage the unity-builder simply for the authentication code and the actual packaging of unity itself.

I don't know what "a build system" does for you and I'm not sure if i'm getting a great idea of your use case from your comment above.
Are you able to run your original script from a build preprocessor

Possibly; honestly, I'm kind of new to Unity development in general, and still figuring out what's what. I'm trying to avoid duplication where possible; I probably could wrap everything into a single function, but I was hoping not to need to. That said, I don't really have the experience to make a persuasive argument as to whether my case is common or atypical. For now, I'll probably do the best I can do put the important parts in C#, and hope that's enough (production releases will still be built locally for licensing reasons; this is mostly for testing PRs).
Thanks

Just to be clear, I'm not suggesting to rebuild a legacy build step in C# per se.
You may also consider invoking python from within mentioned preprocessor and wait for some trigger that happens after its completion.


Minor bugfixes for 3.5

made "view on site" links close the sideframe (and removed bunch on unused code)
fixed a bug where welcome page (and wizard) wouldn't respect toolbar language but instead would use the page language

Coverage decreased (-0.08%) to 79.028% when pulling c184738d6bbd0dfa14054957d9ff9c4d518a56f8 on vxsx:bugfix/3.5.x/minor-bugfixes into 47c71409bc54619e81766056f8d2d06edb8717af on divio:develop.

Coverage decreased (-0.08%) to 79.028% when pulling 1ce9c4b5e25c1e32d86a51ea4374371e969b04ee on vxsx:bugfix/3.5.x/minor-bugfixes into 47c71409bc54619e81766056f8d2d06edb8717af on divio:develop.

Coverage decreased (-0.08%) to 79.028% when pulling 59ac6487a5aab7093a3f7c06532c1f69ff89d804 on vxsx:bugfix/3.5.x/minor-bugfixes into a970819be8f78627a9499fa51cd849924d3f33a4 on divio:develop.

Coverage decreased (-0.06%) to 79.048% when pulling f62da5f206560249eac3a93819a8d69d38a82fdd on vxsx:bugfix/3.5.x/minor-bugfixes into a970819be8f78627a9499fa51cd849924d3f33a4 on divio:develop.

Coverage decreased (-0.06%) to 79.048% when pulling 1daf082b5d1b451bc743fba70e670c6b056c5bd6 on vxsx:bugfix/3.5.x/minor-bugfixes into a970819be8f78627a9499fa51cd849924d3f33a4 on divio:develop.

Coverage decreased (-0.06%) to 79.048% when pulling 2c77bc17aee3dd47158d51b339f9eea2b25e87bc on vxsx:bugfix/3.5.x/minor-bugfixes into a970819be8f78627a9499fa51cd849924d3f33a4 on divio:develop.

Coverage decreased (-0.04%) to 79.068% when pulling cb8fd3c30857118e92e22ed04ce6911d0ba1f947 on vxsx:bugfix/3.5.x/minor-bugfixes into a970819be8f78627a9499fa51cd849924d3f33a4 on divio:develop.

Coverage decreased (-0.04%) to 79.068% when pulling 6edd618927b04181ef47634c893efccc830876d1 on vxsx:bugfix/3.5.x/minor-bugfixes into 19804319f83bd9baacdf6093554559b9743adc7a on divio:develop.

Coverage decreased (-0.04%) to 79.068% when pulling 4aaaf51edb6d222eecc74df77718342acc693ed6 on vxsx:bugfix/3.5.x/minor-bugfixes into ba16eb9a1d097007c0d16345bf014250da5e2c09 on divio:develop.


Use framework::Client everywhere.

This switches all gRPC method invocation to using framework::Client. After this change we can remove the gRPC proto compiler from the build files.
RFC=0002

Merge requested by authorized user cschuet. Merge queue now has a length of 1.


Check if CVM has updated csv file

Download file from CVM every time rapina get is executed and compare the checksum with the current file. If files are different, remove all values on DB for that year and statement type and reinsert the updated values.

Implemented on 75e48d813a52b781981d3e7c95753b4104d50087 and 7438eb5517039e5cab42e856e534201d3172b18d


Key names are formatted in the target language, and not the source language

This is more of a request than an issue, but almost in all of my use case scenarios (at least in python) I've noticed that the classes being made are using python naming scheme (snake case) rather than the import JSON's scheme, which makes me unable to use the models generated without lots of modifications.
Example:
{
    "userName": "User1"
}

This would generate the following class:
class UserName(Enum):
    USER1 = "User1"

class Root:
    user_name: UserName

    def __init__(...)

This would not allow me to use the above model to reference the request response's JSON object, as user_name is not the right field. It is also worth noting that most code I've seen that deals with data models also rely on PyDantic / TypedDict, therefore inherting from TypedDict would also be optimal.
Therefore, is it possible to set a flag that would enable TypedDict + Original Naming Convention instead of using whatever is native to that language?

I'm dealing with the same problem. In my JSON samples, some fields are camelCase, and others are snake_case. It's impossible to have only the types with the original names.


Switch to websocket-driver gem

This is inspired by #110. I'm not sure that I'm doing everything in the correct Celluloid way, but I'm able to use it with reel-rack, so I think it's a good start. I welcome any comments/changes.

I can't get this to work: the tests pass but websocket clients lock it up. I have an example here that works if you change the Gemfile to pull normal reel. I tried with a rebase from master as well. I also tried putting the call to Reel::WebSocket#start_listening in a reactor task, since it seems to block there, to no avail. I'm not trying to read messages from the client yet, just send a few messages to it.

Unfortunately this patch has lingered for awhile. It's great you're looking at it though.
cc @digitalextremist @jcoglan

Checking into this again also. I've been using both driver and parser. I worked around the locking issue recently and have that code working in production. Some time I will compare both implementations and revisit this PR.

Alright, so the news is not so good. As the fact that the specs were changed indicates, this PR breaks the  external api. Instead of wrapping the Ruby driver in a way that makes it compatible with the Websocket API there was before it simply exposes it.
The reason the new code works in the specs but not in @kenichi's code is that in the specs the WebSocket is ran in a new thread each time. To make the real example work its worker has to be extracted into a proper Actor.
Another issue with the PR is that the hijacking and detaching of the socket is done in the initialize, but the listen loop is also. This makes it that you want to run the initialize in a new thread as is done in the specs, but I suspect hijacking and detaching in a new thread is I think open to a race condition.
I am afraid my recommendation would be to rewrite this PR from scratch.

I just noticed #110, in my opinion that one is cleaner and much more promising. I'll look into that one next (somewhere this week).

I tried to base my work on #110, so it should be pretty similar. I'm not very experienced with Celluloid, so it makes sense that my implementation isn't correct.

Fixed in #166


Fixed code on Wallet main screen that crashed when token row was swiped to delete

Fixes #3537.
Prerequisites
You need some items to display on the Wallet main screen. Add some if you have none.
Testing

Swipe left on a token displayed in the Wallet main screen.
Expects delete icon "X" appears.
Tap on "X".
Expects deleted token disappears from Wallet main screen.

Side note:
The token rows displayed on the view controller consists of an array of TokenObjectOrRpcServerPair objects. TokenObject is used to represent a token while RpcServerPair is used to represent the header. We need to consider a minimum of 3 rows (previous to the swiped row, the swiped row, next to the swiped row) in order to determine the outcome. If a row does not exist, it is treated as Not removable. If the row is a RpcServerPair, the row is treated as Not removable. If the row is a TokenObject, it is treated as removable for this case,

Previous
Current
Next
Outcome
Notes

Not removable
Not removable
Not removable
Don't remove
Possibly an error condition but we do some defensive programming

Not removable
Not removable
Removable
Don't remove
Possibly an error condition but we do some defensive programming

Not removable
Removable
Not removable
Remove Previous and Current
The only token row in the section

Not removable
Removable
Removable
Remove Current
First row in a section with two or more token rows

Removable
Not removable
Not removable
Don't remove
Possibly an error condition but we do some defensive programming

Removable
Not removable
Removable
Don't remove
Possibly an error condition but we do some defensive programming

Removable
Removable
Not removable
Remove Current
Last row in a section with two or more token rows

Removable
Removable
Removable
Remove Current
Not the first or last row in a section with two or more token rows

We cannot use 2 rows to determine the outcome. A not removable followed by a removable row can indicate one of two outcomes (remove current row or remove previous and current row) as you can see in the table above.

@hboon I don't know how to add more items to this screen. Also, I'm trying to add a token from the Add / Hide Token menu and all I seem to get are "Add token failure" results.

Ok so I'm looking at the next issue and it dawns on me that there could be multiple items in each section. So this might take a bit more time.

Ok so I'm looking at the next issue and it dawns on me that there could be multiple items in each section. So this might take a bit more time.

I don't know how to add more items to this screen. When I try to add a token from the Add / Hide Token menu and all I seem to get are "Add token failure" results.

You can watch the wallet 0x983110309620d911731ac0932219af06091b6744 which has some tokens

@hboon ready for review

Based on last nights conversation, it appears that I’m solving the wrong problem. Do not merge this.

Just an update, I think this problem is due to the code allowing items on the wallet main screen to be deleted. Can @hboon or @colourfreak tell me what should happen on this screen when a user swipes to delete an item?

To the user, that token will disappear from the Wallet tab. And in Add / Hide Tokens (Wallet tab > … > Add / Hide Tokens), that token will no longer appear under Displayed Tokens and will appear in Hidden Tokens.
For the Wallet tab, let's keep it as the users being to swipe and hide all tokens except for the native token (i.e. address = Constants.nativeCryptoAddressInDatabase). It is still possible to hide those in Add / Hide Tokens screen, but not allowing that in Wallet tab guards against users accidentally swiping their native tokens and not being able to get it back.

To the user, that token will disappear from the Wallet tab. And in Add / Hide Tokens (Wallet tab > … > Add / Hide Tokens), that token will no longer appear under Displayed Tokens and will appear in Hidden Tokens.

Even if the user swipes on Ethereum, xDai, Polygon Mainnet? Is it possible for this screen to be empty? @hboon

No. Ethereum (the token), xDai etc are the native crypto token (their addresses are stores as that constant mentioned above) for their respective chains. Those can’t be swipe to hide in the Wallet tab. (We might change it later). But the user can still choose to hide them in the Add/Hide screen and thus, yes all the entries can end up being hidden in the Wallet tab

No. Ethereum (the token), xDai etc are the native crypto token (their addresses are stores as that constant mentioned above) for their respective chains. Those can’t be swipe to hide in the Wallet tab. (We might change it later). But the user can still choose to hide them in the Add/Hide screen and thus, yes all the entries can end up being hidden in the Wallet tab

Ok because currently the master branch does allow them to be swiped and deleted (which is the cause of this bug).

@eviltofu this waiting for me?

@eviltofu this waiting for me?

No, I just need to figure out what’s wrong.

The problem is that the current code allows native crypto currencies to be deleted. So the solution to this issue is to prevent that from happening. (Note to myself).

@hboon ready for review. Merge after #3721.

Pushed after rebase master


doc: update Digital Twin KIT

Minor updates to Digital Twin KIT

update some links
editorial changes

@florianrusch-zf Thanks for your careful review. I followed all of your suggestions. Now it should be fine.

@BirgitBoss @arnoweiss : is this PR still valid after the release? or can we close it?

All relevant changes were accepted by https://github.com/eclipse-tractusx/eclipse-tractusx.github.io/pull/654


Adopting ev3dev-lang-java at London Uni

Discussed in https://github.com/ev3dev-lang-java/ev3dev-lang-java/discussions/804

Originally posted by cyclingProfessor August 17, 2021
Hi.
ev3dev-lang-java and particularly the navigation stack - Brilliant work!  Thanks :-)
I have taught robotics for many years at London Uni (RHUL college) to CS first years.  We have always used Lejos, but ev3dev-lang-java is so nice that we are moving across.   Motor sychronization (not speed sync but starting and stopping at the same time) is the issue and we have been following your discussions.  We would really find it so useful to be able ask questions and share answers if you have time.  We are trying to determine where the delay in the system is.  Maybe it is in the Linux kernel?  But we think that it is in the Java side?
We are working on three things:

Motor synchronization
Adding support to more legacy sensors (because we have loads of these)
Making my two helper/example apps (one Android and one for Mapping) work seamlessly with ev3dev-lang-java

We would love to be able to ask you questions and maybe even help with answers.

I will ask the guys to run up that project.  The resampling for the particle filter in Lejos is not correct - but not fatally flawed.

"The resampling for the particle filter in Lejos is not correct"

It is interesting, that algorithm was implemented for NXT and the same implementation was used in EV3 generation.
In relation to the sync features, I would like to review when your team has a version stable.

It could be possible.

Great! Can you please send your discord tag so I can add you? (or provide some contact info where I can send the discord server invitation) Thank you

Closing the issue. The Users doesn’t have activity in github


Failing test case: call variadic functions

  1) Integration tests (rollup-plugin-zigar, Debug)
       Function calling
         should call variadic functions:
     RuntimeError: table index is out of bounds
      at call-variadic-functions.wasm.variadic.call__anon_4226 (wasm://wasm/call-variadic-functions.wasm-0045e39a:wasm-function[568]:0x2c40f)
      at call-variadic-functions.wasm.thunk-zig.createThunk__anon_3715.ns_variadic.invokeFunction (wasm://wasm/call-variadic-functions.wasm-0045e39a:wasm-function[436]:0x2369f)
      at call-variadic-functions.wasm.runVariadicThunk (wasm://wasm/call-variadic-functions.wasm-0045e39a:wasm-function[42]:0x276a)
      at constructor.runVariadicThunk (file:///tmp/rollup-integration-test/Debug/4125e55965f7acdd58ced9025d3be862.mjs:1815:27)
      at constructor.invokeThunk (file:///tmp/rollup-integration-test/Debug/4125e55965f7acdd58ced9025d3be862.mjs:1223:12)
      at printIntegers (file:///tmp/rollup-integration-test/Debug/4125e55965f7acdd58ced9025d3be862.mjs:1143:17)
      at file:///home/cleong/zigar/zigar-compiler/test/integration/function-calling/tests.js:556:42
      at capture (file:///home/cleong/zigar/zigar-compiler/test/integration/test-utils.js:11:11)
      at Context.<anonymous> (file:///home/cleong/zigar/zigar-compiler/test/integration/function-calling/tests.js:556:28)

Crashing in Node as well.

Still crashing in Node on MacOS.

Closed by accident.


feat: add --watch flag to ape test (and associated options)

What I did
Allows users to run a continuous watch loop using watchdog file change events, and re-trigger the test suite until the user exits.
How I did it
Copied pytest-watcher
How to verify it
Run it in a project
Checklist

[x] All changes are completed
[ ] New test cases have been added
[x] Documentation has been updated

Not sure what the test failure is about, it works locally

It seems to work, at my first pass!
I mostly would like some docs, I don't see this code changing much so I am okay with skipping tests for now, also due to the complicated nature of it.
I know it is testable though so if you are feeling motivated there, that'd be a nice extra!

see 4b2a1a7

OK - the issues I described in my resolved comments seem to only happen during specifying a single file (and make sures to that file).
This is what I am doing:
ape test --watch-paths contracts/None.vy --watch

Yes, I have a Vyper contract called None.vy (QA!).
Then I make changes to None.vy and The Watcher never notices.

The test does not stop until I force stop Ctrl-C. So it work as intended.
(ape) chris@DESKTOP-ID4V0R6 ~/demo/ape-nft-project (main)$ ape test --watch
WARNING: Found 2 packages named 'eth-ape'.
Installation paths:
        /home/chris/virtualenvs/ape/lib/python3.8/site-packages/eth_ape-0.5.3.dev9+g0a91b3e2.dist-info,
        /home/chris/ape/src/eth_ape.egg-info
WARNING: Found 2 packages named 'eth-ape'.
Installation paths:
        /home/chris/virtualenvs/ape/lib/python3.8/site-packages/eth_ape-0.5.3.dev9+g0a91b3e2.dist-info,
        /home/chris/ape/src/eth_ape.egg-info
================================================ test session starts ================================================
platform linux -- Python 3.8.10, pytest-6.2.5, py-1.11.0, pluggy-1.0.0
rootdir: /home/chris/demo/ape-nft-project
plugins: eth-ape-0.5.3.dev9+g0a91b3e2, web3-6.0.0b6, forked-1.4.0, cov-3.0.0, mock-3.7.0, xdist-2.5.0, hypothesis-6.39.0, asyncio-0.18.3, typeguard-2.13.3
asyncio: mode=legacy
collected 9 items

tests/test_token.py .........                                                                                [100%]

================================================= warnings summary ==================================================
../../virtualenvs/ape/lib/python3.8/site-packages/pytest_asyncio/plugin.py:191
  /home/chris/virtualenvs/ape/lib/python3.8/site-packages/pytest_asyncio/plugin.py:191: DeprecationWarning: The 'asyncio_mode' default value will change to 'strict' in future, please explicitly use 'asyncio_mode=strict' or 'asyncio_mode=auto' in pytest configuration file.
    config.issue_config_time_warning(LEGACY_MODE, stacklevel=2)

tests/test_token.py::test_incorrect_signer_minter
  /home/chris/virtualenvs/ape/lib/python3.8/site-packages/eth_abi/codec.py:166: DeprecationWarning: abi.decode_single() is deprecated and will be removed in version 4.0.0 in favor of abi.decode()
    warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/warnings.html
=========================================== 9 passed, 2 warnings in 2.14s ===========================================

Why do we want to keep the test suspended?

it also works with
ape test -I -s --watch ❤

Why do we want to keep the test suspended?

The idea is that you make changes to some of the files incontracts/ or tests/ and then it auto-runs the tests.
Try changing the --watch-delay and --watch-folders options and see what happens!

LGTM :)


Is Caching documented?

I cannot find documentation for how the query cache works.

After searching the code, I think the cache logic is not implemented in the refactored version, at least in the Remote Model.

Oh, caching is gone now. I didn't realize that. Is it likely to reappear or should I layer caching on top in my specific solution?


gpio:set_int(Gpio, Pin, none) -> error

Somebody struggled and posted this in the Discord. Reading the docs, it seems this code should work

Available triggers are none (which is the same as disabling an interrupt), rising, falling, both (rising or falling), low, and high.

https://www.atomvm.net/doc/main/apidocs/erlang/eavmlib/gpio.html#set-int-3

In my code I want to enable and disable interrupts but get an error when diabling the interrupts.

start() ->
    start(undefined, undefined).

start(_StartType, _StartArgs) ->
    Int_pin = 33,
    Gpio = gpio:open(),
    gpio:set_direction(Gpio, Int_pin, input),
    ok = gpio:set_int(Gpio, Int_pin, rising),
    ok = gpio:set_int(Gpio, Int_pin, none),
    wait_forever().

I get an error on the second gpio:set_int/3 call:

CRASH
======
pid: <0.1.0>

Stacktrace:
[{mpu6050_app,start,2,[{file,"/home/username/mpu6050/src/mpu6050_app.erl"},{line,21}]}]

cp: #CP<module: 4, label: 4, offset: 64>

x[0]: error
x[1]: {badmatch,error}
x[2]: {1,1,39,1,[{4,105}],error}

Problem solved by using:
ok = gpio:remove_int(Gpio, Int_pin)

But there may be a (doc?)/code issue.

This looks like a bug, I will try to look into this over the weekend. You already found the workaround. Thanks for reporting this!

I looked at our handling of gpio interrupts and we do not have a special case necessary to make none remove any interrupts set on the given pin. Since we have a dedicated function to disable the interrupts I think updating the docs makes more sense than making the code more complicated.

I thought about this a bit more, and after thinking of all the situations where using the none trigger would be preferable, I looked harder and found that it could be supported with minimal changes. See #1399.


Add support for clang-tidy fixes

Is your feature request related to a problem? Please describe.
It would be nice if we could get an option to use the clang-tidy --fix option when using xmake check clang.tidy.
Describe the solution you'd like
An option in xmake check clang.tidy to fix the source files.
Describe alternatives you've considered
Perhaps having an optional list of arguments that we pass could work better.
Additional context
No response

you can open a pr. https://github.com/xmake-io/xmake/blob/master/xmake/modules/private/check/checkers/clang/tidy.lua

done. xmake update -s dev
xmake check clang.tidy --fix
xmake check clang.tidy --fix_errors
xmake check clang.tidy --fix_notes


Can't access WSL2 directory. Have VHDX instead of folder after moving

Environment
Windows build number: Microsoft Windows [Version 10.0.19041.572]
Your Distribution version: 20.04
Whether the issue is on WSL 2 and/or WSL 1: WSL2

Steps to reproduce

In fresh W10 install:

Install WSL2 Ubuntu following usual protocol
wsl.exe --export Ubuntu-20.04 ubuntu.tar
wsl.exe --import Ubuntu <my home directory> ubuntu.tar

WSL logs:
Expected behavior
A folder called C:\\Users\me\Ubuntu is created that has a subfolder called rootfs with the WSL files

Actual behavior
A file called C:\\Users\me\Ext3.vhdx is created. This is not accessable

On my previous laptop I could access my WSL2 distribution from Windows 10 by AppData/Local/Packages.... or \\swl$ on initial install.  Ithen moved the distro to C:\Ubuntu, and could access files there directly.

rootfs is for WSL1 only, so it's expected that there is no rootfs in your folder.
You can launch Ubuntu first by wsl -d Ubuntu, then type \wsl$ in file explorer, then you should be able to access the linux.

@licanhua  -- that's the problem. \\wsl$ doesn't work.

If I recall, on my previous laptop (with wsl2), I used lxrunoffline and that allowed me to still access the filesytem. Using the wsl commands in the command prompt seems to have messed things up.

Is there a way I can start over and use the .vhdx to create a new wsl instance that will be sure to allow me to access the files via \\wsl$?

Please check the 9p service on linux

Thank you for the suggestion. That does not seem to be the problem.
(base) balter@ORLT1072346:/mnt/c$ dmesg |grep 9p
[    0.918488] 9p: Installing v9fs 9p2000 file system support
[    0.918511] FS-Cache: Netfs '9p' registered for caching
[    0.964115] 9pnet: Installing 9P2000 support

What's the error when you access \\wsl$? How about \\wsl$\Ubuntu?
Because you are still in old version of Windows, \\wsl$ only list active distros, so you may try:

wsl --shutdown to shutdown wsl
wsl -d Ubuntu to launch Ubuntu
access \\wsl$\Ubuntu from File Explorer.

I am running wsl2, and I have the May 2020 update.
C:\Users\eacriadmin>wsl -l -v
  NAME            STATE           VERSION
* Ubuntu-20.04    Running         2
  Ubuntu          Stopped         2

Here is the error I get:

I get the same error with both of my distros using \\wsl$\Ubuntu-20.04 or \\wsl$\Ubuntu.
I have turning it off and turning it on again.

@SvenGroot Any idea? I can't think of a reason why it doesn't work

I understand your problem perfectly : - ((
I Need to think about how to help You.
I recommend watching the MobaXterm program.
I recently discovered it for myself - I'm excited !!
The free Portable version works great.
Read the description of MobaXterm CAREFULLY on the site.
The program has a LOT of features and everything works.
I highly recommend the MobaXterm program.
Best regards, Nikolay - Moscow.

I believe that u wanted to do this because you wanted to share files or dev resources between Os. Well for WSL 2, the workflow is better and make sense. Instead of accessing the drive from Windows, you could access the drive from Linux with 'mnt' command. e.g. /mnt/d
Besides you have better option to open your VSCode from linux command line. So much options in WSL 2 and do not need to use '\wsl$' to access linux folder which I think not a proper integration flow.
Search google: Scott Hanselman, WSL 2 Development

the problem is you need \$wsl$\Ubuntu-20.04  (the full name)


chore(main): release 2.0.0

:robot: I have created a release beep boop
2.0.0 (2024-05-08)
⚠ BREAKING CHANGES

Added new dashboard section

Features

Added new dashboard section (4cfda38)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/ai4os/ai4-dashboard/releases/tag/v2.0.0 :sunflower:


TypeScript syntax highlighting is going to wrong in case import { type syntax

Steps to reproduce

`vim -u NONE Test.ts
Write import { type Foo } from './foo' at top
:syntax on

Expected behaviour
TypeScript syntax highlighting is not broken.
Version of Vim
version 9.0.985
Environment
Operating System: Windows11 WSL2
Terminal: wsltty
Logs and stack traces
No response

ping @HerringtonDarkholme

@HerringtonDarkholme could you make an update for the Vim files, the flattened way?


token error

hello, I have a question: Consul starts ACL and passes token.
conn, err = grpc.Dial(
    fmt.Sprintf("consul://%s:%d/%s?token=%s&wait=14s&tag=%s", consulHost, consulPort, srvName, token, srvTag),
    grpc.WithTransportCredentials(insecure.NewCredentials()),
    grpc.WithDefaultServiceConfig(`{"loadBalancingPolicy": "round_robin"}`),
)

error message：
"error": "rpc error: code = Unavailable desc = last resolver error: produced zero addresses"
Thanks!

Hm. Let me reproduce that locally
Could you please provide version for the library and consul ?
Thanks


PG-1120: Add a new SQL interface pg_tde_alter_principal_key_keyring

Description
Add a new SQL interface pg_tde_alter_principal_key_keyring that allows the user to change the key provider for the principal key without changing or rotating the actual key
Links
https://perconadev.atlassian.net/browse/PG-1120

Tap tests has to be added into season builds but overall LGTM

Will you take care of that in a new PR?


set_on_dblklick _listener not implemented yet?

I can see in the widget documentation the existance of an ondblclick event,
Bit there doesn't seems an implementation of this.
Is a dblklick function usable at the moment, or should I implement it somehow?
Thanks.

This is because of an incompatiblity with other events. In particular (if I remebmer right) it couldn't coexist with on_click event. You can however get the double click by the onclick, just considering a timeout.


Implement Automatic Sign-in Using Refresh Token

Issue : #44
Description:
This pull request aims to enhance user experience by implementing automatic sign-in functionality using refresh tokens. Instead of navigating to the traditional login page when the user clicks the login button, this feature enables the application to automatically sign in the user using their refresh token.
Changes Made:

Modified the behavior of the login button to trigger automatic sign-in using the user's refresh token upon click.
Implemented logic to securely retrieve the refresh token from storage and use it to request a new access token from the authentication server.
Implemented error handling mechanisms to gracefully handle cases where automatic sign-in fails due to various reasons, such as expired or invalid refresh tokens, network issues, or server errors.
Provided visual feedback to users to indicate the progress of the automatic sign-in process, ensuring transparency and user awareness of the authentication status.

Testing:

Conducted thorough testing of the automatic sign-in functionality to validate its reliability and performance across different scenarios.
Tested various scenarios, including valid and invalid refresh tokens, network failures, and edge cases, to ensure robustness and responsiveness.

This enhancement aims to streamline the authentication process and provide users with a seamless login experience while maintaining security and reliability. Feedback and suggestions for further improvement are welcome.

Hey @sayan404 Sir Please Check My PR.


⚠ Bofrost.be has degraded performance

In b860d2d, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 890 ms

Resolved: Bofrost.be performance has improved in 7933ee0.


Source documentation very unhelpful in describing return values

I refer to the documentation on AnnotateImageResponse::getTextAnnotations. Your documentation provides only the barest and unhelpful description of the return results:

getTextAnnotations
If present, text (OCR) detection has completed successfully.
Generated from protobuf field repeated .google.cloud.vision.v1.EntityAnnotation
text_annotations = 5;
Returns
Google\Protobuf\Internal\RepeatedField
More Information
Source Code

It looks like one is going to receive an array or some object of the iterable pseudotype, but we have no idea what class these objects might be, what properties/methods they might have, or how we might deal with them in a foreach loop. This documentation really leaves a lot to be desired. An alternative might be better javadoc comments documenting the source itself so our IDE can give us come code hinting.

@sneakyimp This is a really great point. I agree we can do better here. For our handwritten classes we used a syntax akin to generics in order to document the type of class returned from an iterable: https://googleapis.github.io/google-cloud-php/#/docs/google-cloud/v0.116.0/bigquery/dataset?method=tables
Google\Cloud\Core\Iterator\ItemIterator<Google\Cloud\BigQuery\Table>

Would you be on board with us doing something similar in protobuf as well?

@dwsupplee What you suggest sounds helpful. Any additional detail at all would be an improvement. I'd strongly suggest code examples. There's also quite a bit of additional detail you could provide:

the returned set is an array of EntityAnnotation objects (is this the case??)
the first (i.e., 0th) annotation contains the entire text scanned from the image, with lines separated by \n characters
each individual annotation after the first (0th) annotation appears to be a single "word" -- i.e., there is no whitespace in it.

All this sort of information would be extremely useful if it is in fact the case. The spartan information you have now is not really of any use at all.
I would hold up as a beautiful example the PHP documentation at https://php.net -- the kind of detail those docs offers has been instrumental in making PHP as widespread as it is.

Good news! We've released new reference documentation for PHP! However, your feature request is still not there (these files are generated by protobuf, so we'll have to add this over there). I've created a PR in the protobuf repo to add support for this: https://github.com/protocolbuffers/protobuf/pull/11734


[WIP] Bugfix release 0.9.2

DO NOT MERGE
This PR was created in order to trigger depending builds (e.g. vavr-gwt).

Codecov Report

Merging #2173 into master will increase coverage by 0.17%.
The diff coverage is 96.23%.

@@             Coverage Diff              @@
##             master    #2173      +/-   ##
============================================
+ Coverage     97.44%   97.62%   +0.17%
+ Complexity     5260     5165      -95
============================================
  Files            92       91       -1
  Lines         12063    11912     -151
  Branches       1596     1592       -4
============================================
- Hits          11755    11629     -126
+ Misses          151      132      -19
+ Partials        157      151       -6

Impacted Files
Coverage Δ
Complexity Δ

...c/main/java/io/vavr/collection/SortedMultimap.java
0% <ø> (ø)
0 <0> (ø)
:arrow_down:

...vr/src-gen/main/java/io/vavr/CheckedFunction3.java
96.66% <ø> (ø)
14 <0> (ø)
:arrow_down:

vavr/src-gen/main/java/io/vavr/Tuple3.java
100% <ø> (ø)
33 <0> (ø)
:arrow_down:

...rc-gen/main/java/io/vavr/collection/ArrayType.java
100% <ø> (ø)
26 <0> (ø)
:arrow_down:

vavr/src-gen/main/java/io/vavr/Function4.java
95% <ø> (ø)
11 <0> (ø)
:arrow_down:

...src/main/java/io/vavr/collection/HashMultimap.java
96.49% <ø> (ø)
9 <0> (ø)
:arrow_down:

vavr/src-gen/main/java/io/vavr/Tuple4.java
100% <ø> (ø)
39 <0> (ø)
:arrow_down:

...vr/src-gen/main/java/io/vavr/CheckedFunction1.java
96.77% <ø> (ø)
18 <0> (ø)
:arrow_down:

vavr/src/main/java/io/vavr/control/Try.java
95.84% <ø> (+0.21%)
92 <0> (-3)
:arrow_down:

vavr/src-gen/main/java/io/vavr/Function6.java
95.45% <ø> (ø)
11 <0> (ø)
:arrow_down:

... and 172 more

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 f124b20...d84e0dd. Read the comment docs.

Tagged and released to Maven Central.
It will take a while until it appears on http://search.maven.org
Release notes and official (Twitter) announcement will follow today.


when will this work with selectors?

i see there is no implementation in the API for selectors, please add the same

currently setRecoil does not accept selectors, only atoms, i wonder if there's a way to pass in a settable selectors

By definitions selectors are read-only since they represent a piece of derived state.
Here you can find an updated Sandbox where I highlighted you can successfully retrieve the selectors value using Recoil Nexus - but again, this is read only.
Hope this helps,
L

I think I have actually understood now what you are looking for.
You are looking for a way to read the selectors' setter so you can use it.
Sounds interesting and I might be trying to figure a way to make it work!

Hi, your library is awesome and I wish to use selector too.

Now supported in v0.5.0.
Updated the loader example as well with a simple selector.
Thanks @ha-sash for your helpful contribution!


[WIP] Tutorial notebook to demonstrate downloading/loading dataset

[X] Fix weird CUDA error

Update: This was just a pytorch cuda version mismatch from my side. nvm.

[x] @kaushikravichandran can you help me figure how to run pytest on notebooks.
[ ] Need to fix "Overflow error" when executing a load CSV command. Issue #470

@aavhad1910 knows about pytest best

Resolved in #647


disable detekt:formatting warnings

really...?  this is so annoying... ;-)

removed, to many useless warnings


Comprehensive specimen digitization card - "previous" and "next" inconsistent

Describe the bug
In the comprehensive specimen digitization card the previous and next buttons don't work as expected.
To Reproduce
-When using the Comprehensive specimen digitization card, click the "next" button and it will take you (I believe) to the collection object that was created directly after the one you were just viewing. This works fine when continuing to only press the "next" button.
Example in video: Started on PSUC_FEM 10029922, "next" to 10029932, "next" to 10029923, "next" to 10029933 etc. This is expected as this is the order from which these collection objects were uploaded from the grid digitizer.
-After clicking through next for a while, click the "previous" button. It seems to take you away from this string of collection objects you were just browsing to a very different collection object, no matter what you were just viewing.
Example in video: Jumped to PSUC_FEM 10033258
-If you then click "previous" repeatedly, it will take you to one more slide, but then after this the "next" and "previous" buttons only lead to a loop between these 2 slides.
Example in video: From PSUC_FEM 10033258, "previous" to 10033248, after this you can see the buttons "previous" and "next" stop working as they should and only toggle between these two collection objects.
Expected behavior
I'd expected the 'next' button to continuously move the user to the next collection object in the list, and I'd expect the 'previous' button to continuously move the user to the previous collection object in the list.
Screenshots
Video of problem attached.
https://user-images.githubusercontent.com/62353864/107989332-143e2680-6fa0-11eb-935b-bbd49196df0b.mov
Environment
Chrome on Macbook

I also experience this bug.


Cache layer extents

Description
This PR supersedes #1950 by caching layer extents and then clearing cache only when the dims get updated. The _update_dims method needs to get called whenever the data or transforms change, which is precisely when the layer extents need to get recalculated. Putting the clearing of the cache here ensures nothing will get out of sync.
This PR still needs tests.
Thoughts @Czaki @andy-sweet @tlambert03 on this approach?

Type of change

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

References

How has this been tested?

[ ] example: the test suite for my feature covers cases x, y, and z
[ ] example: all tests pass with my change

Final checklist:

[ ] My PR is the minimum possible work for the desired functionality
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] If I included new strings, I have used trans. to make them localizable.
For more information see our translations guide.

If you are sure that _update_disms is called on every such case I will be happy with this. But this PR should contain also review and refactor codebase for places where _update_dims is called after event execution like here (the only one which I found):
https://github.com/napari/napari/blob/d9da2a9f827632c72eca92f444578a6b9a15acc0/napari/layers/tracks/tracks.py#L381-L383
to protect taha event executed function will use old extent.
IS there any possibility to protect from the wrong order of calls in future?

(the only one which I found):

Fixed

Is there any possibility to protect from the wrong order of calls in the future?

We could put the call inside a data setter on the base layer and then have each layer provide an _set_data method themselves. That would be the safest, but might lead to some breaking changes for people creating their own layers. I think we can do in a followup PR

The _update_dims method needs to get called whenever the data or transforms change, which is precisely when the layer extents need to get recalculated.

Yep, like @Czaki, I prefer this PR to #1950, given this is true. I'd be OK with this PR after checking for any cases similar to those @Czaki found and adding a least a little code coverage.
I guess converting the Layers to EventedModels (or similar) could help protect against some ordering problems in the sense that the event associated with a setter is only emitted after the setter finishes.

I guess converting the Layers to EventedModels (or similar) could help protect against some ordering problems in the sense that the event associated with a setter is only emitted after the setter finishes.

Yes, that would be the hope too

I'd be OK with this PR after checking for any cases similar to those @Czaki found and adding a least a little test coverage.

Ok I can add some tests now

I have incorporated the suggestion from @andy-sweet on reducing calls to _extent_data https://github.com/napari/napari/pull/1950#discussion_r747698274
I have added a minimal test from https://github.com/napari/napari/pull/1950#discussion_r747705728 at the suggestion of @Czaki
@andy-sweet please let me know if you'd like to see more tests here. What i've done barely scratches the surface I feel. If you'd like to submit those tests as a PR to this PR feel free. Or if it looks good to you as it is now then that's fine too. Thanks!!

@andy-sweet please let me know if you'd like to see more tests here. What i've done barely scratches the surface I feel. If you'd like to submit those tests as a PR to this PR feel free. Or if it looks good to you as it is now then that's fine too. Thanks!!

I see you have tested a change to the layer's transform. To cover a case modifying the data, perhaps adding new points to a points layer would be a good one to have

I still have to improve tests, but @tlambert03 is this what you were expecting to see with the vendored cached_property?
If i used del i got the following
  File "/Users/nsofroniew/GitHub/napari/napari/layers/base/base.py", line 643, in _update_dims
    del self.extent
AttributeError: extent

so i had to look inside self.__dict__ (base on this SO post

I still have to improve tests, but @tlambert03 is this what you were expecting to see with the vendored cached_property?

        Parameters
        ----------
        layer : napari.layers.Layer
            Layer to be tested.
        extent : array, shape (2, D)
            Extent of data in layer.
        scale : array, shape (D,)
            Scale to be applied to layer.
        translate : array, shape (D,)
            Translation to be applied to layer.
        """
        np.testing.assert_almost_equal(layer.extent.data, extent)
        world_extent = extent - 0.5 if pixels else extent
>       np.testing.assert_almost_equal(layer.extent.world, world_extent)
E       AssertionError:
E       Arrays are not almost equal to 7 decimals
E
E       Mismatched elements: 6 / 6 (100%)
E       Max absolute difference: 0.5
E       Max relative difference: 1.
E        x: array([[ 0.,  0.,  0.],
E              [ 6., 10., 15.]])
E        y: array([[-0.5, -0.5, -0.5],
E              [ 5.5,  9.5, 14.5]])

napari/_tests/utils.py:198: AssertionError

Does @grlee77 or @andy-sweet understand why? It's not clear to me looking at the diff what I changed that would cause this.
I've tried to improve the tests a little, but i totally agree with @andy-sweet they aren't perfect

Does @grlee77 or @andy-sweet understand why?

Looks like ImageBase overrode _get_extent_world, but that's no longer defined on the base Layer and therefore isn't used any more. But it handles that 0.5 offset that the test is looking for. So we'll either have bring it back into the base layer or do some other refactoring.
It would kind of nice to have something like Java's @Override decorator to flag these kinds of errors. Fortunately, we had tests to catch this one, but we might not always be so lucky. Not sure if something standard like that exists for Python or if we could easily roll our own.

Looks like ImageBase overrode _get_extent_world, but that's no longer defined on the base Layer and therefore isn't used any more. But it handles that 0.5 offset that the test is looking for. So we'll either have bring it back into the base layer or do some other refactoring.

Ah nice, good catch!! I was really puzzled last night, that's the only thing that makes sense!
I have fixed this now by adding an _array_like attribute. I thought we used to have one, but we must have gotten rid of it. This might not be the cleanest solution but it gets the job done.
Maybe @andy-sweet you can take one more look. If you're good with changes and tests are passing I can then merge. Thanks!!

I would like to see "this function should be called before emit signal informing about parameter changein docstring of_update_dims`

I have updated the doc string

I would like to see the test for all parameters (to be sure that some overwritten does not ommits calling of _update_dims. And also check if _update_dims is called before the signal call.

That's a good idea, but I think can come in a follow up PR. I think also more important to test the actual behavior is what we want rather than an explicit call to a private method, which is definitely an implementation detail. Ideally we'd move over to using our evented models for layers and we could find a way to trigger the update more automatically.
I will merge this once tests are passing. Thanks!!


Dataset using preliminary_test_gpt4.py

Dear authors,
I'm using gpt4o run the preliminary_test_gpt4.py script，but can't find this data file ./vagueness_augmented_test.jsonl' in the repo, how can I get it?

You can refer to the file here. Thanks for pointing out!


Add logarithm function for general real base.

Add convenience logarithm function for all valid real bases and all valid real numbers.

@RubyTheRoobster please reopen this PR(or any of the other PRs that you opened) when you're ready, instead of opening a new one again. The general workflow is that you use git (not GitHub) to make changes to your branch as needed (add new commits, amend them, clean up the history with git rebase, etc.) and keep only a single PR open.


💡 Disallow connection of wallet connected to different than GovTool network

Area
Wrapper
Is there new design needed?
Yes
What?
Disallow connecting wallet that connects to different than GovTool network.
Why?
As described in this comment in discussion.
How?

(Optional) User Story with acceptance criteria
As any user, I want to be informed that I am trying to connect to GovTool with the wallet connected to a different network.

@Ryun1 Do you think this issue makes sense? Having wallet connected than GovTool network makes GovTool displaying wrong values, which without any warning might only bring the confusion.
That is also my candidate for the issue reported here

The problem is that via the CIP-30 wallet connection
The DApp cannot differentiate between testnets via the api.getNetworkId()
This is a longstanding issue
I suppose one hack around this is;

compare the UTxOs reported by the wallet to UTxOs reported by GovTool backend?
Would have to be UTxOs as these are unique across networks, unlike credentials and addresses.


"Events","Contribute","Learn" and "Contact Us" are not active when they are clicked

Bug Report
Issue Summary
"Events","Contribute","Learn" and "Contact Us" menu items are not active when they are clicked
Expected Behavior
"Events","Contribute","Learn" and "Contact Us" should be active when they are clicked
Observed Behavior
"Events","Contribute","Learn" and "Contact Us" menu items are not active when they are clicked
Steps to Reproduce

Go to https://elevate-lab.github.io/elevate-lab-website/index.html
Click on "Events","Contribute","Learn" and "Contact Us" menu items

Screenshots (if any)

Can I work on this?


Upgrade to Camel 2.16.2

http://camel.apache.org/2016/01/27/apache-camel-2162-released.html

Thanks!


Use $ as delimiters in Katex

I'm a newbie with katex, so I don't know how to use katex with exists my data.
Now I display math data with mathjax in website with config:
<script type="text/x-mathjax-config">
  MathJax.Hub.Config({tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}});
</script>

How to I setup katex with similar config to display my exist data by flutter_math_fork.
Below is my test codes:
import 'package:flutter/material.dart';
import 'package:flutter_math_fork/flutter_math.dart';

class Demome extends StatelessWidget {
  const Demome({
    Key? key,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    final expression =
        "\\({{\\left( x-2 \\right)}^{2}}+{{\\left( y-1 \\right)}^{2}}+{{\\left( z+3 \\right)}^{2}}=13.\\)";
    return Column(
      crossAxisAlignment: CrossAxisAlignment.center,
      mainAxisSize: MainAxisSize.min,
      mainAxisAlignment: MainAxisAlignment.start,
      children: <Widget>[
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(expression, softWrap: true),
        ),
        Divider(
          thickness: 1.0,
          height: 1.0,
        ),
        Expanded(
          child: Center(
            child: Math.tex(
              expression,
              mathStyle: MathStyle.textCramped,
              settings: TexParserSettings(
                strict: Strict.ignore,
                displayMode: true,
              ),
            ),
          ),
        )
      ],
    );
  }
}

And I have received an error message: "Parse error: Can't use '\(' in math mode".
I have tried to read documents, test codes and  sample codes many times but I can't find any solution for my situation.

Hi,
Actually when you require $\TeX$ code to be rendered on the web in math mode, you enclose them as $...$ or $$...$$.
The MathJax pre-processor you've mentioned above actually changes the above delimiters to the custom one you need, here $...$ is replaced by \(...\)
In case of this plugin, the code you pass is rendered in math mode and thus, you don't need the delimiters \(...\)

Hello, can this plugin allow text and mathematical formulas to be displayed in one line?
Below is test codes:`import 'package:flutter/material.dart';
import 'package:flutter_math_fork/flutter_math.dart';
class Demome extends StatelessWidget {
const Demome({
Key? key,
}) : super(key: key);
@override
Widget build(BuildContext context) {
final expression =
r'''Calculus is a branch of mathematics that deals with the derivatives and integrals of functions. Here is an example calculus:
Example: Find the derivative of the function $f(x)=x^3$at $x=2$.
Solution: Using the derivation formula, we can find the derivation of $f'(x)$:
$$f'(x) = 3x^2$$
Then, put $x=2$into $f'(x)$to get:
$$f'(2) = 3(2)^2 = 12$$
Thus, the derivative of the function $f(x)$at $x=2$is $12$.''',
;
return Column(
crossAxisAlignment: CrossAxisAlignment.center,
mainAxisSize: MainAxisSize.min,
mainAxisAlignment: MainAxisAlignment.start,
children: [
Padding(
padding: const EdgeInsets.all(8.0),
child: Text(expression, softWrap: true),
),
Divider(
thickness: 1.0,
height: 1.0,
),
Expanded(
child: Center(
child: Math.tex(
expression,
mathStyle: MathStyle.textCramped,
settings: TexParserSettings(
strict: Strict.ignore,
displayMode: true,
),
),
),
)
],
);
}
}`

Hello, can this plugin allow text and mathematical formulas to be displayed in one line?
Below is test codes:
import 'package:flutter/material.dart';
import 'package:flutter_math_fork/flutter_math.dart';

class Demome extends StatelessWidget {
  const Demome({
    Key? key,
  }) : super(key: key);

  @override
  Widget build(BuildContext context) {
    final expression =
        "Calculus is a branch of mathematics that deals with the derivatives and integrals of functions. Here is an example calculus:
Example: Find the derivative of the function $f(x)=x^3$at $x=2$.
Solution: Using the derivation formula, we can find the derivation of $f'(x)$:
$$f'(x) = 3x^2$$
Then, put $x=2$into $f'(x)$to get:
$$f'(2) = 3(2)^2 = 12$$
Thus, the derivative of the function $f(x)$at $x=2$is $12$.";
    return Column(
      crossAxisAlignment: CrossAxisAlignment.center,
      mainAxisSize: MainAxisSize.min,
      mainAxisAlignment: MainAxisAlignment.start,
      children: <Widget>[
        Padding(
          padding: const EdgeInsets.all(8.0),
          child: Text(expression, softWrap: true),
        ),
        Divider(
          thickness: 1.0,
          height: 1.0,
        ),
        Expanded(
          child: Center(
            child: Math.tex(
              expression,
              mathStyle: MathStyle.textCramped,
              settings: TexParserSettings(
                strict: Strict.ignore,
                displayMode: true,
              ),
            ),
          ),
        )
      ],
    );
  }
}


Fix the Alignment of Employees tile in HR working staff

Describe the task
The Alignment of the Highlighted box as shown below is not look good. The text and buttons are not vertically aligned.

Expected behavior
The Alignment should be correct and equal. They should be vertically centre aligned
References
Specify any reference material / links

Not needed as design team will work on portal designs and propose new designs


Bluetooth: Audio: samples: Add multi subgroup support

Add multi subgroup support for the broadcast sink sample

@jthm-ot as per https://docs.zephyrproject.org/latest/contribute/contributor_expectations.html#workflow-suggestions-that-help-reviewers please do not resolve comments unless they are applied exactly :)


ampinstmgr reactivation fails

Bug Report
System Information

Operating System: Ubuntu 18.04 LTS
AMP version and build date: <IP_ADDRESS>
Which AMP release stream you're using: Mainline

I confirm:

[X] that I have searched for an existing bug report for this issue.
[X] that I am using the latest available version of AMP.
[X] that my operating system is up-to-date.

Symptoms

What are you trying to do?
Reactivate an instance that deactivated due to a hardware change
What are you expecting to happen?
The instance to contact the licensing server and reactivate
What is actually happening? ('Nothing' is not an acceptable answer!)
The instance is failing to connect to the activation server.  Creating a new instance in ADS with the proper license key assigned in new instance defaults successfully activates.  It appears only the reactivate command is affected.

Reproduction

Create an AMP instance.  Trip the licensing by changing hardware and attempt to reactivate through ampinstmgr reactivate, This was the output of the command

[Info] Checking licence key...
[Error] IM was unable to execute there requested command.
[Error] TimeoutException
[Error] [0] (TimeoutException) : The operation has timed out.
[Error]   at ServiceModel.Channels.HttpRequestChannel+HttpChannelRequestAsyncRes                                                                                ult.WaitEnd ()
at ServiceModel.Channels.HttpRequestChannel.EndRequest (IAsyncResult result)
at ServiceModel.Channels.HttpRequestChannel.Request (ServiceModel.Channels.Mes                                                                                sage message, TimeSpan timeout)
at ServiceModel.FrameworkInternal.ClientRuntimeChannel.Request (ServiceModel.C                                                                                hannels.Message msg, TimeSpan timeout)
at ServiceModel.FrameworkInternal.ClientRuntimeChannel.Request (ServiceModel.D                                                                                escription.OperationDescription od, Boolean isAsync, Object[]& parameters, Servi                                                                                ceModel.OperationContext context)
at ServiceModel.ClientRealProxy.DoInvoke (Runtime.Remoting.Messaging.IMessage                                                                                inputMessage)
at ServiceModel.ClientRealProxy.Invoke (Runtime.Remoting.Messaging.IMessage in                                                                                putMessage)
at Runtime.Remoting.Proxies.RealProxy.PrivateInvoke (Runtime.Remoting.Proxies.                                                                                RealProxy rp, Runtime.Remoting.Messaging.IMessage msg, Exception& exc, Object[]&                                                                                out_args)
at (wrapper managed-to-native) Object.__icall_wrapper_mono_remoting_wrapper(in                                                                                tptr,intptr)
at (wrapper remoting-invoke) CCLClient45.LicencingClient.IService.GetLicenceSu                                                                                mmary(Guid)
at CCLClient45.LicencingClient.ServiceClient.GetLicenceSummary (Guid LicenceKe                                                                                y)
at CCLClient45.Licencing+<>c__DisplayClass21_0.b__0 ()
at CCLClient45.Licencing.GetLicenceInfo (String LicenceKey)
at InstanceManagerCLI.Core.ReactivateInstance (String InstanceName, String Lic                                                                                enceKey)
at InstanceManagerCLI.Core.ExecuteCommand (Collections.Generic.List1[T] Param                                                                                s, Collections.Generic.Dictionary2[TKey,TValue] Args)

Steps taken
I verified DNS was not at fault checking lookups, this was returned

AMP@amp01:~$ nslookup auth.cubecoders.com
Server:         <IP_ADDRESS>
Address:        <IP_ADDRESS>#53
Non-authoritative answer:
Name:   auth.cubecoders.com
Address: <IP_ADDRESS>

I verified connectivity to the server on IPv4

AMP@amp01:~$ wget -4 cubecoders.com
URL transformed to HTTPS due to an HSTS policy
--2019-11-30 18:46:47--  https://cubecoders.com/
Resolving cubecoders.com (cubecoders.com)... <IP_ADDRESS>
Connecting to cubecoders.com (cubecoders.com)|<IP_ADDRESS>|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 3590 (3.5K) [text/html]
Saving to: ‘index.html’
index.html                                                  100%[========================================================================================================================================>]   3.51K  --.-KB/s    in 0s
2019-11-30 18:46:48 (276 MB/s) - ‘index.html’ saved [3590/3590]
AMP@amp01:~$

What happens if you reactivate an instance the old way?
./AMP_Linux_x86_64 +Core.AMP.LicenceKey YOURKEYHERE -configonly

It times out.  Here is the full output

AMP@amp01:~/.ampdata/instances/Minecraft02$ ./AMP_Linux_x86_64 +Core.AMP.LicenceKey LICENSEKEY -configonly
[18:53:15] [Core Info]            : Starting AMP version <IP_ADDRESS> (Lapetus), built 25/11/2019 12:05
[18:53:15] [Core Info]            : Stream: Mainline (Release) - built by CUBECODERS/buildbot on CCL-DEV
[18:53:16] [Core Info]            : Running in a VMware environment.
[18:53:16] [Core Info]            : OS: Linux / x86_64
[18:53:16] [Core Info]            : CPU: Intel(R) Xeon(R) CPU X5650 @ 2.67GHz (2C/2T)
[18:53:16] [Core Info]            : AMP Instance ID: e08c9032-0445-4929-badf-e62d8e134da6
[18:53:17] [Core Info]            : Checking for AMP updates...
[18:53:17] [ModuleLoader Info]    : Loaded MinecraftModule version <IP_ADDRESS> by CubeCoders Limited
[18:53:17] [ModuleLoader Info]    : Loaded FileManager version <IP_ADDRESS> by CubeCoders Limited
[18:53:17] [ModuleLoader Info]    : Loaded EmailSender version <IP_ADDRESS> by CubeCoders Limited
[18:53:17] [ModuleLoader Info]    : Loaded WebRequestPlugin version <IP_ADDRESS> by CubeCoders Limited
[18:53:17] [ModuleLoader Info]    : Loaded LocalFileBackupPlugin version <IP_ADDRESS> by CubeCoders Limited
[18:53:17] [Core Info]            : Performing activation, please wait...
[18:53:47] [Core:Activation Error] : Couldn't activate: The operation has timed out.
[18:53:47] [Core Info]            : Failed to activate: Success
[18:53:47] [Core Info]            : -configonly specified or activation performed. Saving settings and shutting down. This is perfectly normal.

This sounds like what @deadlysnek was running into...

But creating a new instance works fine?

Yes, To get my server back up I had to make a new instance and copy the data over into it

What's your default IP binding set to in ADS?

I think you figured it out.  Licensing fails when I have my instances bound to ::.  ADS is set to default bind to <IP_ADDRESS> because when I set it to a v6 address I get The specified IP address could not be found on this machine. Please check that it shows up when you run ip addr. despite it being a valid address

Righto, I'll take a look into it on Monday.

Thread Bump. Paging Dr. @PhonicUK

This should be addressed in the Nightlies.

Addressed in 1910.


updated the Literal import error

Hello @shrenik-jain, first of all, thank you for pointing out this!
And I also checked whether other files have the same issue, and I found some as listed below:

comvex/efficientnet_v2/config.py
comvex/efficientdet/model.py
comvex/efficientdet/config.py

comvex/aft/model.py

comvex/aft/config.py

Could you fix those as well to resolve these issues throughout the library?
Thanks again for your contribution!


Can't get option "i18n-ally.ignoreFiles" to work

Describe the bug
I'm using the following option and other variations to ignore the folder "src-capacitor" without much success:
"i18n-ally.ignoreFiles": [     "src-capacitor/**/*.js"   ],
But it still detects missing keys in several files like "src-capacitor/android/app/build/out/public/js/1.js", is it a faulty configuration or am i understanding the option wrong?
Extension Version
"^8.18.2"
Framework/i18n package you are using
Quasar framework with capacitor
To Reproduce
Steps to reproduce the behavior:

Enter theignoreFiles option
Check the report

Device Infomation

OS: Windows
Version: 10
VS Code Version: 1.48

Extension Log
🚀 Initializing loader "d:\proyects"
📂 Directory structure: file
🗃 Path Matcher Regex: /^(?[\w-_]+).(?m?js|ts)$/
📂 Loading locales under d:\proyects\src\i18n
📑 Loading (index) index.ts [1591314898948.0176]
👀 Watching change on d:\proyects\src\i18n
✅ Loading finished

Can you share a minimal reproduce repo? Thanks

Sure, here is an example repo, https://github.com/AaronHernandezPerez/i18n-ally-test, hopefully you can see in the "usage report" section there are several reported missing keys

I think what you ask for this to ignore the scanning,
  "i18n-ally.usage.scanningIgnore": [
    "src-capacitor",
    "src-capacitor/**/*.js",
    "src-capacitor/android/app/build/intermediates/merged_assets/release/out/public/js/vendor.js"
  ]

i18n-ally.ignoreFiles is for ignoring the locale files and the name was set at the very beginning of this project (at that time we don't have usage reports). Sorry for the misunderstanding naming. Thanks.

Oh all right, that explains it, thanks for clearing the confusion.


Improve Godot Android plugin methods registration

This PR introduces a @UsedByGodot annotation which is used by Godot Android plugins to annotate methods that should be registered and made available to the scripting logic.

Thanks!


Could not find a declaration file for module '@highlightjs/vue-plugin'

Could not find a declaration file for module '@highlightjs/vue-plugin'. <EMAIL_ADDRESS>implicitly has an 'any' type.
Try npm i --save-dev @types/highlightjs__vue-plugin if it exists or add a new declaration (.d.ts) file containing declare module '@highlightjs/vue-plugin';ts(7016)
tsconfig.sjon:
{
  "compilerOptions": {
    "target": "esnext",
    "module": "esnext",
    "moduleResolution": "node",
    "strict": true,
    "jsx": "preserve",
    "sourceMap": true,
    "resolveJsonModule": true,
    "esModuleInterop": true,
    "lib": ["esnext", "dom"],
    "types": [
      "vite/client",
      "@intlify/vite-plugin-vue-i18n/client"
    ],
    "paths": {
      "@/*": ["./src/*"]
    }
  },
  "include": ["./src/**/*.ts", "./src/**/*.d.ts", "./src/**/*.tsx", "./src/**/*.vue"]
}

package.json:
"dependencies": {
    "@highlightjs/vue-plugin": "^2.0.0",
    "@vueuse/core": "^4.11.1",
    "@vueuse/head": "^0.5.1",
    "axios": "^0.21.1",
    "highlight.js": "^11.0.0",
    "vue": "^3.0.11",
    "vue-i18n": "^9.1.6",
    "vue-router": "^4.0.8"
  },
  "devDependencies": {
    "@iconify/json": "^1.1.348",
    "@intlify/vite-plugin-vue-i18n": "^2.1.2",
    "@types/node": "^15.3.1",
    "@typescript-eslint/eslint-plugin": "^4.25.0",
    "@typescript-eslint/parser": "^4.25.0",
    "@vitejs/plugin-vue": "^1.2.2",
    "@vue/compiler-sfc": "^3.0.11",
    "@vue/eslint-config-typescript": "^7.0.0",
    "eslint": "^7.27.0",
    "eslint-plugin-vue": "^7.9.0",
    "sass": "^1.32.12",
    "typescript": "^4.2.4",
    "vite": "^2.3.4",
    "vite-plugin-components": "^0.10.2",
    "vite-plugin-icons": "^0.5.1",
    "vite-plugin-windicss": "^0.16.0"
  }

Someone from TS land may have to jump in here... there is a vue.ts.d file and package.json has a types key... or is the problem again perhaps just the pesky files key?

That's my fault, I copy&pasted the filenames in package.json but forgot tsc generates vue.d.ts instead of highlightjs-vue.d.ts

tsc generates vue.d.ts instead of highlightjs-vue.d.ts

Why the naming discrepancy, that seems a bit strange, no?

tsc generates based on the source file name (vud.ts) whereas the js file is named by rollup
Maybe the source file should be renamed?

If that's the only way to do it... I think optimally I'd prefer to just tell it "hey rename this type file when you output it" however that is done, if that is possible. :)

Don't think it's possible because tsc needs to generate a 1:1 mapping with the source files
Want me to update the current open PR with the filename change?

That's my fault, I copy&pasted the filenames in package.json but forgot tsc generates vue.d.ts instead of highlightjs-vue.d.ts

yes it's all fixed, thanks)

Want me to update the current open PR with the filename change?

Not sure that's necessary if we just update the reference... lets see how that holds up.  After your PR should I use a 2.0.1 probably? @Trinovantes

Yes, please release a 2.0.1 with the corrected type filename

Done.


Benchmark script with k8s yaml

Validated:

Benchmarking from a notebook (paste defined functions into cell, manually construct calls from main()
Correct outputs.

Todo:

Verify k8s job works
Add GCS uploading of results?


Refactor the Keptn project status

Describe the bug

I see on the Keptn website, that "We are a CNCF Sandbox Project", while Keptn is one of the CNCF Incubating projects now!
Snapshot from keptn.sh:

To Reproduce

Replace this sentence with, "We are a CNCF Incubating project".
Snapshot from CNCF landscape:

Those who pick up, please submit a PR to https://github.com/keptn/keptn.github.io repo. Thank you 🙂


rvv-0.9 spec vlxseg indexed-unordered

how is the assemble representation of the vlxseg indexed-unordered instructions? vlxuseg3ei8?

Those instructions do not exist: "Only ordered indexed segment stores are provided. The segments must appear to be written in element order."

emmm, is there unsigned segment load/store instruction?

The concept of signed/unsigned loads no longer exists in RVV 0.9, because loads always fill an entire element.

Closing this as there is no issue here now.