Add MLJ compliant doc-strings - take II

Replaces #22
@pazzo83 I have a reviewed the original PR, to ensure compliance with the new MLJ standard, but have also made some changes of my own (which involve some paring down of your original strings).  Would you have time in the next few weeks to do a final review?
I suggest one begins by looking over the final docstrings generated by a julia> ? query, as some of the interpolation magic makes it hard to catch all mistakes by just reading code.
cc @JosephsDavid

Codecov Report

Merging #23 (84d7584) into dev (c37e01c) will decrease coverage by 1.94%.
The diff coverage is 66.66%.

@@            Coverage Diff             @@
##              dev      #23      +/-   ##
==========================================
- Coverage   88.04%   86.09%   -1.95%
==========================================
  Files           7        7
  Lines         184      187       +3
==========================================
- Hits          162      161       -1
- Misses         22       26       +4

Impacted Files
Coverage Δ

src/docstring_helpers.jl
0.00% <0.00%> (ø)

src/bm25_transformer.jl
87.80% <100.00%> (ø)

src/count_transformer.jl
88.00% <100.00%> (ø)

src/tfidf_transformer.jl
87.50% <100.00%> (ø)

src/MLJText.jl

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Yes I will take a look this week!  Thanks!

@pazzo83 Do you still have some time to look over this?

I am going to try to look at it this weekend!
On Thu, Sep 22, 2022 at 12:16 AM Anthony Blaom, PhD <
@.***> wrote:

@pazzo83 https://github.com/pazzo83 Do you still have some time to look
over this?
—
Reply to this email directly, view it on GitHub
https://github.com/JuliaAI/MLJText.jl/pull/23#issuecomment-1254504106,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACDUZUJYSCFXOHDA6UN36Q3V7PMSVANCNFSM6AAAAAAQETMVAA
.
You are receiving this because you were mentioned.Message ID:
@.***>

Again sorry for the delay here!  This looks good!  Should I merge?

We might need to update some of the package versions in requirements?

I've kicked CompatHelper out of hibernation and all looks good.


Use Datastore to load and store comments

use datastore to store comments on post
use datastore to load comments on get

My additional commits addressed your commit suggestions. Thank you!


SetFocusMode doesn't work

Hi,
I tested the example augmented-images and added the config.setFocusMode(Config.FocusMode.AUTO) on the method setupSession(), and the focus doesn't work.

Config.FocusMode.AUTO is used by default.
Please use the setOnSessionConfigurationListener instead of setOnSessionInitializationListener.
Augmented Images Sample has been updated. Clone the latest version to see changes.


[Help Wanted] sealer 0.9.1 push 镜像不支持http仓库

What happen?
sealer 0.9.1 push 镜像不支持http仓库
Relevant log output?
2023-02-02 16:18:06 [ERROR] [root.go:75] sealer-v0.9.1: error pushing image "<IP_ADDRESS>/sealer/kubernetes:1.22.15" to "docker://<IP_ADDRESS>/sealer/kubernetes:1.22.15": trying to reuse blob sha256:1198e5b5cf360abd6dcc8db290d1a67bc5d087cd072f0bead6d18ee191476169 at destination: pinging container registry <IP_ADDRESS>: Get "https://<IP_ADDRESS>/v2/": dial tcp <IP_ADDRESS>:443: connect: connection refused

What you expected to happen?
No response
How to reproduce it (as minimally and precisely as possible)?
No response
Anything else we need to know?
No response
What is the version of Sealer you using?
{"gitVersion":"v0.9.1","gitCommit":"9934e11","buildDate":"2023-01-17 11:30:38","goVersion":"go1.17.13","compiler":"gc","platform":"linux/amd64"}
What is your OS environment?
No response
What is the Kernel version?
No response
Other environment you want to tell us?

Cloud provider or hardware configuration:
Install tools:
Others:

@vinzol ，老哥，有么有更详细的一些日志，或者是操作流程，也方便我们复现下问题。

执行命令：sealer push <IP_ADDRESS>/sealer/kubernetes :1.22.15
镜像仓库信息：harbor，http地址

@vinzol ,https://github.com/sealerio/sealer/pull/2118 already fixed. pls have a try~~


Any consideration for clientside support?

I've been reading a lot into isomorphic javascript and was wondering if that was something that this project may eventually accomplish?
It would be very useful to hook into the history location api and be awesome for passing around state through a flux style architecture.
I found something similar here:
https://github.com/kentjs/koa-client

if you could provide concrete examples, we could consider it, though either way it would be a different module.
personally, i don't believe in isomorphic apps. you should maximize each environment's advantages vs. settling for the common denominator.

-1 from me personally, I'd rather keep it pristine and focused for the server, and I agree with @jonathanong – I've never found that sort of structure overly appealing. Hell technically even writing/directly consuming HTTP services makes little sense, HTTP is an implementation detail, RPC-ish is the way to go

@DylanPiercey is this what you're looking for? - https://github.com/yoshuawuyts/fax
I haven't used it in any projects yet, so there'll probably be plenty of bugs in there.
I agree with the sentiment that isomorphic applications are not the way to go; with CJS environments available in the browser the amount of modules you can reuse between the client and server is large even if glue code & frameworks aren't shared.

I also agree that a fork would probably be best, was just wondering if there was potential for this project to incorporate browser support.
Laying out middleware and routes is awesome with koa/co and I'm already starting to use generators client side. I've been messing around with it for a while now and have found that the mental model for isomorphic apps becomes a lot simpler if you treat server side rendering the exact same as client side rendering (no React-Router or anything) and redirects/middleware and other benefits come for free.

@DylanPiercey servers and clients have different purposes, so you'll end up with a different api regardless. Forking koa and then floating patches on top of it to maintain compat doesn't seem like the best solution to me, but if you want to try it then by all means go for it!

@yoshuawuyts Actually the way I am architecting the client and server are almost exactly the same. The kicker is that the (rest) api for the app is a completely separate and independent koa module. As such both the server and the client contact the api in the same way but I would like the server that hosts react also to isomorphically render and act the same way as the browser implementation.
Currently I'm creating a fork to test this architecture out further.

https://github.com/DylanPiercey/koa
If anyone is interested in helping that would be great. There are currently no extra tests and likely many bugs but it is able to handle URL changes in the browser and trigger a request through koa (handles forms and a tags). Also redirects should work.
The goals are:

Keep the exact same api as koa for the server.
Keep as much functionality as possible (without being pointless) for the browser.
Maintaining the exact same api in the browser.

Hopefully sometime next week I'll post an example react app that demonstrates the elegentness of this approach.


rplidar a2 error operation time out

Hello,
I was trying to get a map with a rplidar a2 in combination with hector_mapping in Ubuntu, however when killing the rplidar launchfile something went wrong, the lidar was still rotating. After this I restarted the launchfile which eventually stopped the lidar, but now I am not able to restart the lidar again. When I try to start the lidar I receive this error message:
Error, operation time out.
[rplidarNode-2] process has died [pid 3114, exit code 255, cmd /home/pim/catkin_ws/devel/lib/rplidar_ros/rplidarNode __name:=rplidarNode __log:=/home/pim/.ros/log/c4f67012-5370-11e8-bb7d-9
cd21e0c8747/rplidarNode-2.log].
log file: /home/pim/.ros/log/c4f67012-5370-11e8-bb7d-9cd21e0c8747/rplidarNode-2*.log
I found out that it had something to do with the serial port but I cannot find a solution for this, could you help me?

the port is still blocked , can you kill it again by id

you can stop motor  by service when rplidar_ros run ok .   re-plugin the usb when kill the mode


Bluetooth not working

I'm not edit anything on config.plist, except gmbios

Which macOS Version do you use?

right now i use version 11.4
i was solve this issue. remove airportitlwm and add itlwm.kext & heliport.
i update intelbluetooth too.


Bump manageiq-style minimum to 1.5.0

@jrafanie Please review.

Looks like the bot itself needs to be updated as well, but I think the TargetRubyVersion still works.


self-registration flow failed

After setting up google auth provider I got the error below
It fixed by removing the Expanded widget from core/auth/login_page.dart:324
════════ Exception caught by widgets library ═══════════════════════════════════
The following assertion was thrown building _OutlinedButtonWithIconChild(dependencies: [MediaQuery]):
'package:flutter/src/widgets/framework.dart': Failed assertion: line 5055 pos 16: 'child is! ParentDataElement<ParentData>': is not true.

Hi,
I'm getting the same error. Is there any update on this issue?

Hello @moshe-kabala,
I will close this issue since a significant amount of time has passed since your initial query. However, if the issue is still relevant, please feel free to reopen it and provide additional information, such as the mobile app console output.
Thanks!


Mark removed types as deprecated

Loop over the @types npm packages and mark any that no longer exist in HEAD (either in the types directory or in notNeededPackages.json) as deprecated.

I feel like this should be a periodic cleanup task rather than something that runs every publish. So maybe this should be a standalone scripty package like retag, or even a script in DT proper.

Done :heavy_check_mark:

I'm curious about the list of affected packages and their deprecation messages. Can you dump those here? I want to know what that looks like before taking this change.

Currently the following five:
Deprecating fingerprintjs2
Deprecating @types/fingerprintjs2 with message: 🤖 Merge PR #48103 feat: add fingerprintjs__fingerprintjs types by @lb… (https://github.com/DefinitelyTyped/DefinitelyTyped/pull/48103)
Deprecating openapi-v3
Deprecating @types/openapi-v3 with message: Removed OpenApi-v3 types (#46819) (https://github.com/DefinitelyTyped/DefinitelyTyped/pull/46819)
Deprecating fingerprintjs
Deprecating @types/fingerprintjs with message: 🤖 Merge PR #48103 feat: add fingerprintjs__fingerprintjs types by @lb… (https://github.com/DefinitelyTyped/DefinitelyTyped/pull/48103)
Deprecating markerclustererplus
Deprecating @types/markerclustererplus with message: Change folder name to google__markerclustererplus to match scoped pac… (https://github.com/DefinitelyTyped/DefinitelyTyped/pull/42121)
Deprecating storybook__polymer
Deprecating @types/storybook__polymer with message: [storybook__polymer] Remove types (#48796) (https://github.com/DefinitelyTyped/DefinitelyTyped/pull/48796)

@andrewbranch I dusted off this PR and rebased it on https://github.com/microsoft/DefinitelyTyped-tools/pull/455 and https://github.com/microsoft/DefinitelyTyped-tools/pull/453. The dry run shows the deprecating it will do, currently.


Some review comments on records support

Update pom support to be Java 14+
Store Method references to avoid subsequent lookup
All test records should be public

I have changes in the works to replace the user of core reflection, in RecordUtils, with Method Handles. I'm still verifying the changes, but in general the use of method handles will be more performant than that of core reflection. Again, this should not be a blocker, and can be considered separately, on its own merit.

Use of MethodHandle may make sense and can be done (added in JDK7, right?), assuming they are usable on Android too.
Then again this particular use should never be on critical path as it's just on introspection and (de)serializers getting cached should mean it is one-off startup cost typically.
Not that I am against any and all performance improvements, esp. in cases where there may be other benefits (more readable code?).
But for actual property access MethodHandles might have performance benefits too; I think there were some mixed opinions whether there are or not but that should be easy enough to test as changes should be relatively isolated.


Explore not_suitable filter

Explore whether adding a 'not' wrapper to elastic search params would make it simple to proceed with a 'not_suitable' filter for the use case of removing observations from a project. If more complex than that probably not worth it.
This was originally discussed here #819

This is working in the API right now. I still need to allow the params into obs search. But, how will this work: http://staging.inaturalist.org:4000/observations?not_matching_project_rules_for=herps-of-texas&project_id=herps-of-texas ?
not_matching_project_rules_for just applies the inverse of the project rules, then you can apply any other params on top of that. I assume it would usually be combined with project_id

Ok - this seems to be working well - making me want a 'remove all unsuitable obs' button as I see how many obs in some of my projects are not suitable - but not necessary because those who care can do it manually

Closing since this seems resolved. Let me know if we need a link or button anywhere that links to this URL


Understand current user behaviour and usage of exhibitions and visual stories

What do we want to know?
We want to understand what user interaction with exhibitions and visual stories currently looks like. What can GA tell us?

How are people getting to the content we're interested in? (traffic acquisition, search terms, etc)
Are people finding the links to visual stories from exhibition pages? (Page views of visual stories as a % of page views of the exhibition it's related to?)
What devices are prevalent?
Return vs New users of the content?

We're interested in the following content:

any /exhibition
/access
and specific Visual stories
PDF outbound from In Plain Sight
PDF outbound from Milk
Being human visual story https://wellcomecollection.org/pages/Xeo6OREAAB8A3wTA

What research technique is required?
Google Analytics - usage analysis
Outputs
A slidedeck or GA4 Exploration
Deadline
Friday 12 May

Search Console reports only 5 users landed on the Visual Stories page after submitting a Google search. The rest of the users who arrived at the Visual Stories page did so after landing on other pages. Here are the queries submitted by those 5 users:

Looking at the page path analysis for the 63 users who viewed the Visual Story page, 21% come from Being Human and 14% come from the Accessibility page but the rest seem to view exhibition pages before looking at visiting info/opening times before arriving at the page. While it appears that users get to the page in the end, this is only because this graph was produced using the Visual Story page as an end point.

If we look at the paths taken by the 538,000 users during 1 April - 1 May, we see only 5 users take the most direct route of home/visit-us/accessibility/visual story:

Following on from the meeting on 15 May, we talked about how else we might find information about behaviour of returning visitors.

What more can we learn about returning users and page visits?
Can we use path exploration with a returning users segment for a fuller picture?

Here is what a backwards Path exploration to the Being Human visual story page looks like for the period 20/10/22 - 10/5/23:

Most users came to the Visual Story page from the Being Human exhibition page. Most of those users came from the Being Human captions page (https://wellcomecollection.org/pages/X3MY5hEAACQAoWCy)

Return users:
Given the context of visual stories, is there anything we can learn about return visitors specifically on the Being Human visual story? Can we identify whether return visitors return to that page?
Path exploration:
I'm a bit confused by this because the graphic isn't interactive and doesn't have the page names. Can you link to the exploration so we can delve a bit further? Screenshots of the path exploration are definitely not very legible.
But I can't see where there are links between the Being Human captions page and the Being Human visual story, so I'm not sure what you mean by this

Most users came to the Visual Story page from the Being Human exhibition page. Most of those users came from the Being Human captions page (https://wellcomecollection.org/pages/X3MY5hEAACQAoWCy)

Is it possible that the path exploration is not counting a return to previous page as a step?
Here's what I mean
Exhibition > Visual story - this is a legit path because there's a link from one to the other (but not back again!)
Exhibition > Visual story > Captions - this doesn't exist as a path because there are no links
Should we assume that what's actually happening is:
Exhibition > Visual story > back to Exhibition > Captions and the exploration doesn't count that second Exhibition page view as a step?
Is the path exploration accounting for users that return to

Path exploration:
I'm a bit confused by this because the graphic isn't interactive and doesn't have the page names. Can you link to the exploration so we can delve a bit further? Screenshots of the path exploration are definitely not very legible.

Here's the link to the path exploration.. If you make a copy of the Explore report it's in (Engagement, owner: Tacey), you can have a play around with it. The path exploration in the link will look different from the one pasted into the comment above because I have turned the toggle off that displays unique nodes only. This means that if someone visits the page, clicks away from the site (eg on the link for covid exemptions) and then comes back to the page, they are shown only once.
If someone viewed the Being Human visual story, went to another page and then returned to the visual story, because this is a backwards path exploration, the second view of the visual story would be the end point. The previous view of the visual story would appear among the numbers somewhere to the left of the end point. In fact, you can see 4 people did just that.


sync_ldap_user_data error

It seems that after switching to version 5.1, the LDAP_DEACTIVATE_NON_MATCHING_USERS setting stopped working correctly for me.
root@zserver:/home/zulip/deployments/current# ./scripts/get-django-setting LDAP_DEACTIVATE_NON_MATCHING_USERS
True

Sync command
root@zserver:/home/zulip/deployments/current# su zulip -c './manage.py sync_ldap_user_data'
ends with an error. I replaced the real username and domain for privacy reasons.
2022-04-06 17:11:01.106 DEBG [django_auth_ldap] search_s('OU=MyOU,DC=MyDC', 2, '(sAMAccountName=%(user)s)') returned 0 objects:
2022-04-06 17:11:01.317 ERR  [zulip.sync_ldap_user_data] LDAP sync failed
Traceback (most recent call last):
  File "/home/zulip/deployments/2022-04-03-15-35-19/zproject/backends.py", line 1099, in sync_user_from_ldap
    ldap_username = backend.django_to_ldap_username(user_profile.delivery_email)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zproject/backends.py", line 668, in django_to_ldap_username
    raise ZulipLDAPExceptionNoMatchingLDAPUser(
zproject.backends.ZulipLDAPExceptionNoMatchingLDAPUser: No LDAP user matching django_to_ldap_username result: myusername. Input username<EMAIL_ADDRESS>
During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/management/commands/sync_ldap_user_data.py", line 30, in sync_ldap_user_data
    sync_user_from_ldap(u, logger)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zproject/backends.py", line 1106, in sync_user_from_ldap
    do_deactivate_user(user_profile, acting_user=None)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/actions.py", line 1463, in do_deactivate_user
    delete_user_sessions(user_profile)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/sessions.py", line 47, in delete_user_sessions
    delete_session(session)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/sessions.py", line 41, in delete_session
    session_engine.SessionStore(session.session_key).delete()
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/safe_session_cached_db.py", line 24, in delete
    assert not get_connection().in_atomic_block
AssertionError
Traceback (most recent call last):
  File "/home/zulip/deployments/2022-04-03-15-35-19/zproject/backends.py", line 1099, in sync_user_from_ldap
    ldap_username = backend.django_to_ldap_username(user_profile.delivery_email)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zproject/backends.py", line 668, in django_to_ldap_username
    raise ZulipLDAPExceptionNoMatchingLDAPUser(
zproject.backends.ZulipLDAPExceptionNoMatchingLDAPUser: No LDAP user matching django_to_ldap_username result: myusername. Input username<EMAIL_ADDRESS>
During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "./manage.py", line 157, in <module>
    execute_from_command_line(sys.argv)
  File "./manage.py", line 122, in execute_from_command_line
    utility.execute()
  File "/srv/zulip-venv-cache/726c7d1d35d9cd61bb4b70e98167a1db7b0c524d/zulip-py3-venv/lib/python3.8/site-packages/django/core/management/__init__.py", line 413, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/srv/zulip-venv-cache/726c7d1d35d9cd61bb4b70e98167a1db7b0c524d/zulip-py3-venv/lib/python3.8/site-packages/django/core/management/base.py", line 354, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/srv/zulip-venv-cache/726c7d1d35d9cd61bb4b70e98167a1db7b0c524d/zulip-py3-venv/lib/python3.8/site-packages/django/core/management/base.py", line 398, in execute
    output = self.handle(*args, **options)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/management/commands/sync_ldap_user_data.py", line 80, in handle
    sync_ldap_user_data(user_profiles, not options["force"])
  File "/usr/lib/python3.8/contextlib.py", line 75, in inner
    return func(*args, **kwds)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/management/commands/sync_ldap_user_data.py", line 30, in sync_ldap_user_data
    sync_user_from_ldap(u, logger)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zproject/backends.py", line 1106, in sync_user_from_ldap
    do_deactivate_user(user_profile, acting_user=None)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/actions.py", line 1463, in do_deactivate_user
    delete_user_sessions(user_profile)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/sessions.py", line 47, in delete_user_sessions
    delete_session(session)
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/sessions.py", line 41, in delete_session
    session_engine.SessionStore(session.session_key).delete()
  File "/home/zulip/deployments/2022-04-03-15-35-19/zerver/lib/safe_session_cached_db.py", line 24, in delete
    assert not get_connection().in_atomic_block
AssertionError

As a result, the user remains active.

Thanks for the report! I posted this on chat.zulip.org for more interactive discussion.

We're hitting this as well on our production instance.
Happened on 4.11 and now on 5.1 as well.
sync_ldap_user_data never completes, same trace back in safe_session_cached_db.py", line 24
Happens regardless of LDAP_DEACTIVATE_NON_MATCHING_USERS true or false, both config settings trigger the same traceback.

Zulip chat has a workaround, documenting here so it's discoverable (Zulip chats are not indexed by search engines seemingly)
For a short-term fix, @Aggr, you can remove the @transaction.atomic line in zerver/management/commands/sync_ldap_user_data.py and re-run the import.


Idea: "enzo remove"

Remove common node modules from the package.json
So enzo remove webpack would uninstall all webpack dev dependencies.
@cjorda15 thoughts?

[ ] List options. For now, gulp, webpack, redux and maybe express.]
[ ] If an option is selected remove the files and dependencies
[ ] Add to "enzo help"
[ ] Add to website


Final Project update

Roger that.  I guess since you're only reflecting no milestones apply.  Either way, remember I'll be using a higher expectation of fit and finish for Sunday projects!


Add a env variable which take release tag otherwise date for creating the tarball folder

We need to add a env or argument to take the release tag info an then create the directory with that instead using the date and also the tarball.
like in case of v4.1.0-rc0 it should be crc_libvirt_v4.1.0-rc0 instead crc_libvirt_2019-04-28 and same for tarball.

This was fixed as part of #15 , though using a git tag rather than an env var.


Clarity on versions and ArdunoJson

can I get clarity re the versions and used of ArduinoJson 7.xx ?
I need to introduce a number of features in my Devices (ESP32 using the IDE 2.x ) as part of the Air Quality interface to things like Health services etc, and these need 7.xx
when I install the Thingsboard update.
Downloading<EMAIL_ADDRESS><EMAIL_ADDRESS>Installing<EMAIL_ADDRESS>Replacing<EMAIL_ADDRESS>with<EMAIL_ADDRESS>Installed<EMAIL_ADDRESS>Downloading<EMAIL_ADDRESS><EMAIL_ADDRESS>Installing<EMAIL_ADDRESS>Replacing<EMAIL_ADDRESS>with<EMAIL_ADDRESS>Installed<EMAIL_ADDRESS>I received an email couple weeks ago, Closed #186 as completed via #180.
or is the ver 7.xx not possible?
thanks..

If you use the newest version of the ThingsBoard library the issue with the RPC response you had should have been fixed. The problem was not the ArduinoJson library but the usage of it.
Therefore the update to v7.X.X is possible, but will not be done as written in my first inital message to that question. Because there is simply no need and the underlying problem with the library has not changed. As a user of this library you do not have to directly interact with ArduinoJson in any diffcult way. Instead all of that is handled by the library and the newest version does not allow to allocate on the stack, which is innacceptable. If you want to read more the inital response to that question still stands true.


IndexError: index 65655 is out of bounds for axis 0 with size 50176

Hi! I'm getting the following error from testing slam_segmentation/semanticKitti:
e015-i0183 => L=0.626 acc= 79% / t(ms):   0.6  42.7  49.2)
Traceback (most recent call last):
  File "train_SemanticKitti.py", line 324, in <module>
    trainer.train(net, training_loader, test_loader, config)
  File "/KPConv-PyTorch/utils/trainer.py", line 167, in train
    for batch in training_loader:
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 363, in __next__
    data = self._next_data()
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 971, in _next_data
    return self._process_data(data)
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 1014, in _process_data
    data.reraise()
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/_utils.py", line 395, in reraise
    raise self.exc_type(msg)
IndexError: Caught IndexError in DataLoader worker process 6.
Original Traceback (most recent call last):
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/worker.py", line 185, in _worker_loop
    data = fetcher.fetch(index)
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch
    data = [self.dataset[idx] for idx in possibly_batched_index]
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in <listcomp>
    data = [self.dataset[idx] for idx in possibly_batched_index]
  File "/KPConv-PyTorch/datasets/SemanticKitti.py", line 311, in __getitem__
    p0 = new_points[wanted_ind, :3]
IndexError: index 65655 is out of bounds for axis 0 with size 50176

Can you please help? Is it error in the data? I am trying to reproduce the results of semantic kitti. Thanks!

I dont recall seeing this error in my experiments. Did you use the code as is without any modification?

I only created a new datasets/config/dataloader of my custom datasets; I don't recall modifying any thing that may impact the available datasets;
I pulled a new copy and had an issue similar to this and been fixed as suggested in the comment issuecomment-662794917
But again the same error :-(
e012-i0369 => L=0.653 acc= 78% / t(ms):   0.5  42.5  49.7)
Traceback (most recent call last):
  File "train_SemanticKitti.py", line 324, in <module>
    trainer.train(net, training_loader, test_loader, config)
  File "/new/KPConv-PyTorch/utils/trainer.py", line 167, in train
    for batch in training_loader:
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 363, in __next__
    data = self._next_data()
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 971, in _next_data
    return self._process_data(data)
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/dataloader.py", line 1014, in _process_data
    data.reraise()
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/_utils.py", line 395, in reraise
    raise self.exc_type(msg)
IndexError: Caught IndexError in DataLoader worker process 6.
Original Traceback (most recent call last):
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/worker.py", line 185, in _worker_loop
    data = fetcher.fetch(index)
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in fetch
    data = [self.dataset[idx] for idx in possibly_batched_index]
  File "/anaconda3/envs/kpconv-pytorch/lib/python3.6/site-packages/torch/utils/data/_utils/fetch.py", line 44, in <listcomp>
    data = [self.dataset[idx] for idx in possibly_batched_index]
  File "/new/KPConv-PyTorch/datasets/SemanticKitti.py", line 311, in __getitem__
    p0 = new_points[wanted_ind, :3]
IndexError: index 81716 is out of bounds for axis 0 with size 50176

Ok let me try to help you debug the problem.
Could you print the variable self.balance_classes, I think the value is True. Then can you print the shape of sem_labels which should be a np.array.
I assume the length of sem_labels.shape will be larger than the one of new_points, hence the error. If thats the case, you'll have to track the changes made to this two arrays (sem_labels and new_points). They should come from the same frame and thus have the same length. Try to print the name of the file they are loaded from. If they come from the same frame, but still have different number of points, then you might have a issue with the files you downloaded from SemanticKitti dataset.

Thanks @HuguesTHOMAS! It looks like in sequence 10 - scan 24 don't contain the same number of points as label 24 ... I will double check SematicKitti data files ...

Thanks @HuguesTHOMAS! It looks like in sequence 10 - scan 24 doesn't contain the same number of points as label 24 ... I will double check SematicKitti data files ...

Any updates?

Hello,
I had the same issue when training with my own data. The dataset file I created was a copy of NPM3D with some changes made to .ply files prerpation function.
My dataset contains 17 labels, but I noticed that at I'm ignoring one class in this code:
self.ignored_labels = np.array([0])
.
.
.
config.num_classes = self.num_classes - len(self.ignored_labels)
config.dataset_task = self.dataset_task

Even my dataset has classes numbers from 1 to 17, len(self.ignored_labels) is equal to 1 which results in config.num_classes equal to 16. So, just change self.ignored_labels = np.array([])` if you aren't ignoring any class, or write the correct number of the class.
I hope this was helpful.
@JohanBergius


Create algorithm for plant growth

The most important factor is to detect connectivity and direction. Connectivity is important when removing plant square pixels

I think the best way to approach this is to have a singly linked list and have classes represent different parts of a plant. For example, there would be Stem(), Branches() and Leaves() classes, where Stem() is the parent of Branches(). The Leaves() class would just be a standalone class with not much detail (it would only need growth and what it provides for the plant overall.
This would all be under a Plant() class that would determine Stem, Branch, and Leaf behavior.
The Stem() would be a linked list where the nodes link to other parts of a stem such as Branches() or Leaves(), meaning each node would be a list. Branches() would be another linked list to contain other parts of a branch and Leaves() (again, nodes are a list).
Finally, each component of a Node will also contain a class called PlantPixels() with different colors to represent different parts of a plant. This will be the main component in the list within the Node and will just be drawn.


Update Dockerfile and run.sh

Changes related to issue #17 .

@aayushARM Thanks again for the PR. I incorporated some of the changes to fix the python/pip package versioning issues into a separate commit that also updates to ROS melodic and newer tensorflow. Did a quick test and all works well...
I decided that I didn't want to change the defaults for the paths. The reason being, I feel that encouraging the data files and output to exist within the same path structure as these scripts (by defaulting to pwd) and the dockerfile is not the correct approach. When building the docker images, the context sent to the docker daemon is the contents of the full current folder, that could be huge with the data files. The paths for input and output should not be tied to this repo, and they will vary for all users so I'm not sure there are sensible defaults...


[doc] Re-align IP checklist template with actual checklist

The IP checklist template got out of sync with the actual checklist. This PR re-aligns the template to the actual checklist.

Thanks for your input @sriyerg . I implemented your suggestions.


What is the benefit of using this over the unique device ID?

What is the benefit of using this over the unique device ID?
react-nativ-device-info returns a unique device ID for both iOS and Android:

iOS: This is IDFV or a random string if IDFV is unavaliable. Once UID is generated it is stored in iOS Keychain and NSUserDefaults. So it would stay the same even if you delete the app or reset IDFV. You can carefully consider it a persistent, cross-install unique ID. It can be changed only in case someone manually override values in Keychain/NSUserDefaults or if Apple would change Keychain and NSUserDefaults implementations. Beware: The IDFV is calculated using your bundle identifier and thus will be different in app extensions.
android: Prior to Oreo, this id (ANDROID_ID) will always be the same once you set up your phone.

https://github.com/react-native-device-info/react-native-device-info#getuniqueid
✅  = ID does not change
❌  = ID does change

Hello @SMJ93 !
Typically, one needs to use the identifier of the device in their server-side logic. It's quite common, tech-savvy users can tamper with your requests and identifiers. With this library and service, you can utilize our Webhooks or Server API functionality and verify if the provided data is consistent. Moreover, in the response's body, you can find additional valuable data such as IP, geolocation information, or timestamps that might be crucial for your antifraud decision making.
Regarding the specific implementation, for Android, we use stronger identifiers than the AndroidId. We use GSF_ID which is the same for all applications on the device.
Moreover, in the next minor version, we are going to add additional sources of entropy for even higher accuracy.  The same applies also to the iOS platform.
Last, but not least, we take care of privacy restrictions and we will provide the same quality identifiers even if Apple and Google will restrict access to IDFV and ANDROID_ID.

Hi @makma,
Thanks for getting back to me!
A tech-savvy user can also manipulate their IP, geolocation etc too.
The GSF_ID can be changed if a user factory resets their device, but also if the user messes with Google services. Which makes it weaker no?
Also more out of curiosity what happens if Google services isn't available on the device?
Cheers!

Hello @SMJ93 ! Let me help you with the question from the Android side.
Couple of words regarding GSF_ID:

It is generated when users first time (after last factory reset) set up Google Services. Every subsequent log out and login does not change it. You can check it with your own device.

On Huawei devices or any other device with ROM without Google Services (pure AOSP, LineageOS etc.) GSF_ID is not available, it's true, but we still have a lot of others ways for identification than ANDROID_ID. You can check out our native Android OSS library. Its signals – is a subset of signals from the PRO version.

ANDROID_ID depends on PackageName, so it's changed when the app is repackaged (e.g. with using this app). We use identifiers that are not. For example the ID that is extracted from MEDIA DRM API (available in the OSS version) – it's way more stable than ANDROID_ID, and it's safe to use it agains app cloners. But it has its own troubles though. In the PRO version we are using all signals with knowledge of their properties to get the most unique and stable ID.

Hope it makes things more clear!

Hey @Alexey-Verkhovsky can someone answer the questions from an iOS side please?

Hi @SMJ93,
Since IDFV is only one of several signals we collect and send to our backend that contributes to the ID, we get additional accuracy on top of it. Lower reliance on IDVF makes our solution less likely to break completely if Apple decides to change the API (as the other product mentions in their README).
Furthermore, there are benefits that go beyond the data we send to the backend that make it way harder for someone to spoof anything, especially combined with our zero trust mode that will be supported after we release our next major version of our native iOS library (which should be very soon).


[bug] Error: Could not resolve a module for a custom reporter.  Module name: jest-trx-results-processor

Describe the bug
First reported here: https://github.com/storybookjs/storybook/discussions/25003
I am unable to run storybook tests with a custom test runner.
Note: We use this reporter in our normal jest tests within the same project without problem
Following these instructions

you can add additional reporters by ejecting the configuration as explained above and overriding (or merging with) the reporters property.

I have ejected and modified the config as follows:
const { getJestConfig } = require('@storybook/test-runner');

/**
 * @type {import('@jest/types').Config.InitialOptions}
 */
module.exports = {
  // The default configuration comes from @storybook/test-runner
  ...getJestConfig(),
  /** Add your own overrides below
   * @see https://jestjs.io/docs/configuration
   */
  reporters: [
    "default",
    "jest-trx-results-processor"
  ],
};

But when running the tests, I get this error:
Error: Could not resolve a module for a custom reporter.
  Module name: jest-trx-results-processor
    at <Project Directory>\node_modules\@storybook\test-runner\node_modules\jest-config\build\normalize.js:523:15
    at Array.map (<anonymous>)
    at normalizeReporters (<Project Directory>\node_modules\@storybook\test-runner\node_modules\jest-config\build\normalize.js:505:20)
    at <Project Directory>\node_modules\@storybook\test-runner\node_modules\jest-config\build\normalize.js:883:17
    at Array.reduce (<anonymous>)
    at normalize (<Project Directory>\node_modules\@storybook\test-runner\node_modules\jest-config\build\normalize.js:732:14)
    at readConfig (<Project Directory>\node_modules\@storybook\test-runner\node_modules\jest-config\build\index.js:219:74)
    at async readConfigs (<Project Directory>\node_modules\@storybook\test-runner\node_modules\jest-config\build\index.js:404:26)
    at async runCLI (<Project Directory>\node_modules\@storybook\test-runner\node_modules\@jest\core\build\cli\index.js:140:59)
    at async Object.run (<Project Directory>\node_modules\@storybook\test-runner\node_modules\jest-cli\build\cli\index.js:155:37)

System
Please paste the results of npx storybook@latest info here.
System:
OS: Windows 11 10.0.22621
CPU: (8) x64 Intel(R) Core(TM) i7-10610U CPU @ 1.80GHz
Binaries:
Node: 16.14.0 - C:\Program Files\nodejs\node.EXE
npm: 8.3.1 - C:\Program Files\nodejs\npm.CMD <----- active
Browsers:
Edge: Chromium (119.0.2151.72)
npmPackages:
@storybook/addon-a11y: 6.5.16 => 6.5.16
@storybook/addon-actions: 6.5.16 => 6.5.16
@storybook/addon-essentials: 6.5.16 => 6.5.16
@storybook/addon-interactions: 6.5.16 => 6.5.16
@storybook/addon-links: 6.5.16 => 6.5.16
@storybook/addon-postcss: 2.0.0 => 2.0.0
@storybook/addon-storyshots: 6.5.16 => 6.5.16
@storybook/addon-storysource: 6.5.16 => 6.5.16
@storybook/builder-webpack5: 6.5.16 => 6.5.16
@storybook/jest: 0.2.2 => 0.2.2
@storybook/manager-webpack5: 6.5.16 => 6.5.16
@storybook/react: 6.5.16 => 6.5.16
@storybook/test-runner: 0.15.2 => 0.15.2
@storybook/testing-library: 0.2.2 => 0.2.2
storybook-addon-designs: 6.2.1 => 6.2.1
storybook-dark-mode: 1.0.8 => 1.0.8

To give some additional context, I tested this with a fresh install of the latest stable Storybook version and it's happening as well. @yannbf when you have a moment, can you provide some context on this and how best to address it? Thanks in advance.

same here
we are unable to use a custom reporter

I was also getting this error when I follow the instructions in the Readme of custom reporters. But I eventually found that you can workaround this issue by using the path to the custom reporter's index.js file instead of the package name. For example for the jest-html-reporter:
const { getJestConfig } = require('@storybook/test-runner');

/**
 * @type {import('@jest/types').Config.InitialOptions}
 */
module.exports = {
  // The default configuration comes from @storybook/test-runner
  ...getJestConfig(),
  /** Add your own overrides below
   * @see https://jestjs.io/docs/configuration
   */
  reporters: [
    "default",
    "<rootDir>/node_modules/jest-html-reporter/dist/index.js"
  ],
};

PS: If your .git folder is not located in the current directory, you'll have to add the parent directories to this path if the  is not your project's folder (This happens when your .git folder is located in a parent directory.)
Some more examples from this list of reporters https://github.com/jest-community/awesome-jest/blob/main/README.md#reporters
jest-allure --> <rootDir>/node_modules/jest-allure/dist/index.js
jest-silent-reporter --> <rootDir>/node_modules/jest-silent-reporter/index.js
jest-progress-bar-reporter --> <rootDir>/node_modules/jest-progress-bar-reporter/lib/index.js
jest-html-reporters --> <rootDir>/node_modules/jest-html-reporters/index.js
@jonniebigodes @yannbf It might be worth to add this extra step to these instructions.


Edns0 validity

quoting RFC6891, Section 6.1.1

When an OPT RR is included within any DNS message, it MUST be the
only OPT RR in that message.  If a query message with more than one
OPT RR is received, a FORMERR (RCODE=1) MUST be returned.

using Msg.IsEdns0() there is no way to know if this was the only OPT record in order to return FORMERR otherwise.
one idea is to add a method to Msg like
func (dns *Msg) IsValidEdns0() (*OPT, bool) {
	...
}

where they can be 3 return cases

nil, true -> no OPT record exists
nil, false -> more than one OPT record exists
OPT, true -> only one OPT record exists

in any case, if I really want to be compliant I can just validate the additional section after IsEdns0 has returned a record.
thoughts?

We can't change IsEdns0() now and it's probably also not it's job to check validity.
Better is I think to add (to your) MsgAcceptFunction https://github.com/miekg/dns/blob/4bd038eb7616bf9225289bdfb58f4de1e6f55751/acceptfunc.go#L29


[Do Not Merge] Add javascript client todoApp code with un-released emitter

Please close this one due to duplicated with https://github.com/allenjzhang/typespec-e2e-demo/pull/57,


Latest version (5.0.2) throws errors.

Just thought I'd flag.
I have rolled back to (v5.0.1), as Mix has stopped working on the latest version. (v5.0.2)
I'm running the latest versions of node and npm.
Throws the following error:
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: spawn node_modules/webpack/bin/webpack.js ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:240:19)
    at onErrorNT (internal/child_process.js:415:16)
    at process._tickCallback (internal/process/next_tick.js:63:19)
    at Function.Module.runMain (internal/modules/cjs/loader.js:834:11)
    at startup (internal/bootstrap/node.js:283:19)
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
Emitted 'error' event at:
    at Process.ChildProcess._handle.onexit (internal/child_process.js:246:12)
    at onErrorNT (internal/child_process.js:415:16)
    [... lines matching original stack trace ...]
    at bootstrapNodeJSCore (internal/bootstrap/node.js:622:3)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>development: `cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>development script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      /Users/***/.npm/_logs/2020-03-16T16_43_07_498Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>dev: `npm run development`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>dev script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!      /Users/***/.npm/_logs/2020-03-16T16_43_07_512Z-debug.log

I tried all of the usual methods, when this kind of error occurs. IE.
rm -rf node_modules
rm package-lock.json yarn.lock
npm cache clear --force
npm install

Nothing seemed to fix it. Rolling back worked fine though.
I'm using it standalone, not as part of a Laravel build.
My deps are
    "browser-sync": "^2.26.7",
    "browser-sync-webpack-plugin": "^2.2.2",
    "copy-webpack-plugin": "^5.1.1",
    "cross-env": "^7.0.2",
    "fontawesome": "^5.6.3",
    "imagemin-webpack-plugin": "^2.4.2",
    "laravel-mix": "5.0.1",
    "node-sass": "^4.13.1",
    "photo-sphere-viewer": "^3.6.0",
    "resolve-url-loader": "^3.1.1",
    "sass": "^1.26.3",
    "sass-loader": "^8.0.2",
    "vue": "^2.6.11",
    "vue-template-compiler": "^2.6.11"
    "@fortawesome/fontawesome-free": "^5.12.1",
    "laravel-mix-imagemin": "^1.0.3",
    "three": "^0.114.0",
    "uevent": "^2.0.0"

Same issue, totally blew away my node_modules tried cleaning npm cache, rm -rfing all, but no dice.

There a 5.0.4 now which works, so just run npm update.

Looks like it was a strange shrink-wrapping issue. All fixed now in 5.0.4.

I was facing the same issue on laravel-mix 5.0.2, the only way to solve the errors was upgrading to 5.0.4!


hover tooltip numeric showing too many decimals

tooltip needs to only show 3 decimals with ellipse. This is causing table row values to be too long when space is tight.
0.00001113
should show 0.000... as an example.

reviewed - looks correct - closing


[Question/Bug?] Seeds pop up when not using fresh water

MC 1.12.1
Forge 2460
AM 0.1.2beta
I wonder if it is intentional that seeds that are planted on AM Farmland pop up when not supplied with fresh water nearby. This happens whenever there is a block update, meaning when I plant a seed adjacent to another plant of if a growth tick is applied.

What config option did you pick for the farmland mode?

S:farmlandOverhaulType=fresh
But I thought this only affects growth speed and not popping off for seeds.

I will check out the exact details soon

When no fresh water is available the farmland will turn into dirt and then seeds will pop off. Is that what happens?

No, it is still Farmland. What I expect to be happening is, that when nothing is planted on Farmland and is not watered it gets turned into dirt, but when a seed is planted, it just grows very slowly. This is the same behavior as in vanilla when farmland is not provided with any water nearby.

I will investigate

Not sure if it helps but you can see it in action here: https://www.twitch.tv/videos/169003744 starting from 2:55:00
My assumption: Some seeds as Hemp cause a Block update which causes the seeds to pop off. As even the vanilla seeds pop off later (couldn't find the timeframe right now), I assume this is caused by a growth tick.

I'm working on Aqua Munda again but I cannot reproduce this problem in my dev env

Definitely happens wirh modded seeds, did you try with Hemp from IE?

Well perhaps the modded seeds cannot cope with the fact that Aqua Munda overrides farmland with a custom block. In any case there will be a config option next version to not do that (but with more limited Aqua Munda experience in that case)

Okay, I tested it, couldn't replicate with Hemp anymore for some weird reason, but could definitely replicate with vanilla beetroot. Can you investigate again?

Well that test I already did. Exactly what is your setup?

I can definitely replicate in 0,2 again. I just place 2 dirt, hoe them and place two beetroot seeds in both AM Farmland. As soon as I place the second seed, both pop off. I will test in an environment with only AM at a later time, but in my WIP pack it happens every time.

How much light does the farmland get?

I didn't check, will do, but I doubt that was the problem as I tested at day under open sky.

Well clueless... I cannot reproduce this at all

I created a new instance, Forge 2474.
I only added JEI, The One Probe, ImmersiveCraft, Aqua Munda and also Botania, Baubles and Primal Core because I tested also something else. But Botania, Baubles and Primal Core were not in the old instance, so that for certain doesn't matter. I created a new world, cheated in a hoe, hoed two grass next to each other, cheated in some beetroot seeds, planted them and they popped off. Light was 15.

I know you are busy with some awesome RFTools features, but were you able to investigate that further? Or do you need more info? I can replicate it constantly like described above.

At the moment no. I still was not able to reproduce it either

I would still like to get this fixed. Any updates on it? Still happening even with vanilla Beetroot.

I cannot fix problems I cannot replicate. I have no clue how to go further on this to be honest

Can you show some screenshots? Also what config are you using for Aqua Munda?

Config: https://pastebin.com/SzsyhVU7
Not sure how screenshots are better than the videos from above, but here you go: https://imgur.com/hRQMPlX
It confuses me how you are not able to reproduce it. I can replicate in a new world with only the few mods installed above. I am willing to help you with everything you need to know, just let me know what you want to have/know.

Let me test in a fresh world with only AM

And you have a fresh water source nearby?

No fresh water, but they still shouldn't pop off, right?

Can confirm in fresh world with only JEI, TOP, ImmersiveCraft and Aqua Munda
Forge 2556

Do they pop off if there is fresh water nearby? If not then that's the reason

Well, that is the whole point of the issue as you can see in the title. That they pop off without fresh water. Other vanilla plants don't do that, only Beetroot or some other modded seeds.

Anyway, they pop off even with Fresh Water fwiw

https://imgur.com/1JFrciy

Ok, I can reproduce it now. Seems it only happens if you plant seeds next to each other. If you give them room they don't pop off
Not sure why though

Yep exactly. I have no clue either. Has to be something Beetroot specific.

If it helps, not being next to each other is the cause as written in the initial post, but rather a block update causes it.

I know what's wrong. Just have to come up with a good solution for this

Awesome, thank you very much

Sorry for the slow response but this is fixed next release

Excellent, thanks very much


[CLI]: wandb sync won't upload offline runs

Describe the bug

wandb cli won't sync offline runs
when I use wandb sync path to upload a offline run, it will only sync online runs. It won't create a run for offline runs.

wandb sync /path/to/wandb/offline-run-aabb/
Find logs at: /path/to/wandb/debug-cli.xiongyi.cui.log
wandb: ERROR Error while calling W&B API: run "aabb" not found while updating run (<Response [404]>)
Syncing: https://wandb.ai/tri/ma_pred/runs/aabb ... done.

Additional Files
No response
Environment
WandB version: 0.17.4
OS: Ubuntu 20.04.6 LTS
Python version: 3.10
Versions of relevant libraries:
Additional Context
No response

Hi @vkrishnamurthy11 Good day and thank you for reaching out to us. Could you please try to use an alternative method to sync offline runs like this?
 wandb sync [PATH] -p <PROJECT_NAME> -e <ENTITY> --id new_run_id
Let me know if this works for you.
Regards,
Paulo

Hi @xiongyi-cui-TRI , since we have not heard back from you we are going to close this request. If you would like to re-open the conversation, please let us know!

I haven't got a chance to test it. But on another server with wandb=0.16, wandb sync is working fine.
In the worst case, I can downgrade it to 0.16


PoC: prompt for missing arguments & enum support

Adds a rescue for commands that got executed without arguments provided

Note: it's targeted towards io-refactor, but should really be target towards main after io-refactor gets merged

I'll need to read through this tomorrow or on Monday, but I like the idea 👍

I've got no idea why this was closed? Also can't reopen it?

Ok now I can reopen it

Still can't reopen it. So weird.

Neither can I :/ will create a separate PR later with your suggestions applied


Implement the glib integration

This seems to be required for gnome-shell to not crash at startup.
See https://www.freedesktop.org/software/pulseaudio/doxygen/glib-mainloop_8h.html for the documentation.

Just pushed aca334ffed1e476ca78dc207a8e6023a56aae40d...cf3d054d1aea87f1925dc5343352b320f5a83817 to the master branch. Somehow that almost empty implementation was sufficient for gnome-shell to start.

Recently saw a missing libpulse-mainloop-glib.so.0 on a binary app i tried, i guess this is related


SyntaxError: invalid syntax on line 61

Hi, I'm trying to use your package but I get the following error:
File "/usr/lib/python3.7/site-packages/ansible_parallel.py", line 61
    while line := (await process.stdout.readline()).decode():
                ^
SyntaxError: invalid syntax

Pyhton 3.7.7
Thanks

Hi @fasenderos, this is a Python 3.8 syntax, is it easy for you to get a Python 3.8 or would you like me to build a Python 3.7 compatible version?

Hi @fasenderos, this is a Python 3.8 syntax, is it easy for you to get a Python 3.8 or would you like me to build a Python 3.7 compatible version?

@JulienPalard I'll try with Python 3.8. Thanks

@JulienPalard I'll try with Python 3.8. Thanks

@fasenderos ok, tell if it it's OK for you. If yes I'll release with a python_requires = >= 3.8, else I'll rewrite this walrus to keep the project compatible with 3.6.

@fasenderos ok, tell if it it's OK for you. If yes I'll release with a python_requires = >= 3.8, else I'll rewrite this walrus to keep the project compatible with 3.6.

I released a version compatible with 3.7 :) I bet you're not alone with this version.

I released a version compatible with 3.7 :) I bet you're not alone with this version.


Need guidance on using pkg_resources / importlib

Currently, I am attempting dynamically load modules from a directory path. A similar approach is pluginbase. This involves using pkg_resources and importlib.
Please provide assistance getting module loading working with pyfakefs.
Unfortunately, the only available options are to either choose dynamic modules or pyfakefs.

Can you give a bit more context about your use case, please? From your description it is not clear to me what you are trying to achieve and how this is related to the fake filesystem, or to testing at all.
It would probably also help to show an example of what you are trying to do.

I figured out the issue. The pkgutil was the cause and had trouble narrowing it down. I needed to skip patching it.
@pytest.fixture(params=['fs', [[['pkgutil']]], {'indirect': True}])


Add support for Sacred

Details
Sacred is a tool to help you configure, organize, log and reproduce experiments. It is designed to do all the tedious overhead work that you need to do around your actual experiment. This PR adds support for wandbObserver class which enables native wandb logging in Sacred.
Here's a simple usage example:
from numpy.random import permutation
from sklearn import svm, datasets
from sacred import Experiment

ex = Experiment('iris_rbf_svm')
from wandb.sacred import WandbObserver
ex.observers.append(WandbObserver(project='sacred_test',
                                        name='test1'))
@ex.config
def cfg():
    C = 1.0
    gamma = 0.7
@ex.automain
def run(C, gamma, _run):
    iris = datasets.load_iris()
    per = permutation(iris.target.size)
    iris.data = iris.data[per]
    iris.target = iris.target[per]
    clf = svm.SVC(C, 'rbf', gamma=gamma)
    clf.fit(iris.data[:90],
            iris.target[:90])
    return clf.score(iris.data[90:],
                        iris.target[90:])

The run generated by the above function can be viewed here
A more detailed pytorch example and its dashboard can be viewed here

@AyushExel I'm merging now, can you also add this to https://github.com/wandb/client-ng?


Add frontend for search

[!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

Current dependencies on/for this PR:

main

PR #2

PR #3   👈

This stack of pull requests is managed by Graphite.

Merge activity

Jan 29, 2:06 PM: @mertcanbs started a stack merge that includes this pull request via Graphite.


fix(package): install using v58.0 PackageInstallRequest parameters

Summary generated by Reviewpad on 07 Aug 23 05:10 UTC
This pull request fixes the installation of packages using the v58.0 PackageInstallRequest parameters. It updates the securitytype flag options to ['Custom', 'Full', 'None'] and the default value to 'Full'. It also updates the upgradetype flag options to ['delete-only', 'deprecate-only', 'mixed-mode'] and the default value to 'mixed-mode'.

https://developer.salesforce.com/docs/atlas.en-us.api_tooling.meta/api_tooling/tooling_api_objects_packageinstallrequest.htm
Checklist
All items have to be completed before a PR is merged

[x] Adhere to Contribution Guidelines
[ ] Updates to Decision Records considered?
[ ] Updates to documentation at DX@Scale Guide considered?
[ ] Tested changes?
[ ] Unit Tests new and existing passing locally?

@ruslan-kurchenko  Does this have any dependency on updated packaging lib? As we do not use the cli, we need to check the compatibility

It is based on jsforce dependency.
Actual exception info:

Stack:
INVALID_OR_NULL_FOR_RESTRICTED_PICKLIST:
  Security Type: bad value for restricted picklist field: AdminsOnly\n
    at HttpApi.getError (/usr/local/lib/node_modules/@dxatscale/sfpowerscripts/node_modules/jsforce/lib/http-api.js:307:12)\n
    at processTicksAndRejections (node:internal/process/task_queues:96:5)\n
    at async /usr/local/lib/node_modules/@dxatscale/sfpowerscripts/node_modules/jsforce/lib/http-api.js:154:23\n
    at async Tooling.create (/usr/local/lib/node_modules/@dxatscale/sfpowerscripts/node_modules/jsforce/lib/connection.js:929:133)\n
    at async createPackageInstallRequest (/usr/local/lib/node_modules/@dxatscale/sfpowerscripts/node_modules/@salesforce/packaging/lib/package/packageInstall.js:50:20)\n
    at async SubscriberPackageVersion.install (/usr/local/lib/node_modules/@dxatscale/sfpowerscripts/node_modules/@salesforce/packaging/lib/package/subscriberPackageVersion.js:326:46)

jsforce place where it fails:

@azlam-abdulsalam, let me know if there is anything else I should do or if I should make it somehow backward compatible.

no @ruslan-kurchenko  just wondering why we dont have the same error in the orchestrator,  is it wired differently?

Good call, @azlam-abdulsalam. It might use different API version to create the PackageInstallRequest record. I will investigate more.

@ruslan-kurchenko  any updates on this?

The latest sf cli seems to be using the "old" parameters (I have not dug deeper in the library code).
-s, --security-type=<option>    [default: AdminsOnly] Security access type for the installed package. (deprecation notice: The default --security-type value will change from AllUsers to AdminsOnly in v47.0 or later.)
                                  <options: AllUsers|AdminsOnly>
  -t, --upgrade-type=<option>     [default: Mixed] Upgrade type for the package installation; available only for unlocked packages.

Is it a change only on v58 of the API?

@azlam-abdulsalam In orchestrator default values used: security type == 'none', upgrade type = 'mixed-mode'

I believe the changes in the MR are correct.


Use a custom cluster marker style

What does this change?

Before
After

How was this tested?
How have you tested your changes?

Locally with pnpm dev

Accessibility
If applicable to your changes, have you:

[ ] Tested with screen reader
[ ] Checked to see if navigable by keyboard
[X] Ensured that the colour contrast is passing

Documentation
If applicable to your changes, have you:

[ ] Added/edited the appropriate documentation
[ ] Added any component(s) to Storybook

I’ve accepted the Chromatic diffs as they were only changes to the OSM map updates – but there isn’t a story capturing the marker styles. Should I create one?

I’ve accepted the Chromatic diffs as they were only changes to the OSM map updates – but there isn’t a story capturing the marker styles. Should I create one?

If it’s not too much extra effort to chuck in an extra map story with a marker cluster on it there’s no harm IMO.
I’m not massively bothered though as it should be quite obvious very quickly when testing if clusters look off if we capture it in Chromatic or not as it’s so core to the experience. Happy either way :)

If it’s not too much extra effort to chuck in an extra map story with a marker cluster on it there’s no harm IMO.

I’ve tried a few things, but I’m not understanding how to add marker groups to a story, so I’d prefer getting this in first and possibly improving this as a follow up.

If it’s not too much extra effort to chuck in an extra map story with a marker cluster on it there’s no harm IMO.

I’ve tried a few things, but I’m not understanding how to add marker groups to a story, so I’d prefer getting this in first and possibly improving this as a follow up.

sounds good - let's merge it!
👏 first loo map contribution 🚽


Don't add unnecessary empty lines

Proposed changes
Strip the final newline from stout and stderr so that we don't add the empty line twice when logging.
Readiness checklist
In order to have this pull request merged, complete the following tasks.
Pull request author tasks

[x] I included all the needed documentation for this change.
[x] I provided the necessary tests.
[x] I squashed all the commits into a single commit.
[x] I followed the Conventional Commit v1.0.0 spec.
[x] I wrote the necessary upgrade instructions in the upgrade guide.
[x] If this pull request is about and existing issue,
I added the Fix #ISSUE_NUMBER label to the description of the pull request.

Super-linter maintainer tasks

[x] Label as breaking if this change breaks compatibility with the previous released version.
[x] Label as either: automation, bug, documentation, enhancement, infrastructure.

This was merged, but due to this GitHub incident, the merge operation stopped and didn't recover. When I rebased, the PR was marked as closed.


python: drop support for 3.6

Support for Python 3.6 ended 3 months ago.
Signed-off-by: Maciej Obuchowski<EMAIL_ADDRESS>

Codecov Report

Merging #625 (cc4a95a) into main (21b039b) will decrease coverage by 1.15%.
The diff coverage is n/a.

:exclamation: Current head cc4a95a differs from pull request most recent head 4e9f7d3. Consider uploading reports for the commit 4e9f7d3 to get more accurate results

@@            Coverage Diff             @@
##             main     #625      +/-   ##
==========================================
- Coverage   85.13%   83.98%   -1.16%
==========================================
  Files          41       36       -5
  Lines        2308     2142     -166
==========================================
- Hits         1965     1799     -166
  Misses        343      343

Impacted Files
Coverage Δ

integration/dagster/openlineage/dagster/utils.py

integration/dagster/openlineage/dagster/adapter.py

...ntegration/dagster/openlineage/dagster/__init__.py

integration/dagster/openlineage/dagster/cursor.py

integration/dagster/openlineage/dagster/sensor.py

:mega: Codecov can now indicate which changes are the most critical in Pull Requests. Learn more


/etc/subuid, id_map, shift, etc revisited

Last time I worked on this issue, was over a year ago, when the documentation wasn't quite as friendly.  Nice job guys on improving it.  It's allowing us to use all those great features you've added.  But one issue I could never get to work nicely, was initial creation of container with different ids.  My first go around, I would use a script, to sed the subuid/gid file to a new initial value, restart lxd service, launch my container with a matching lxc.id_map, sed the values back, restart lxd service again, and move on to the next container.  Works fine for one container at a time, but does not scale well and certainly doesn't work in parallel.  Since then, you have come out with security.isolated and a few other things, but for my use case, I use variations of the following simplified:
raw.lxc: |
lxc.id_map =
lxc.id_map = u 0 100000 200
lxc.id_map = g 0 100000 200
lxc.id_map = u<PHONE_NUMBER>
lxc.id_map = g<PHONE_NUMBER>
lxc.id_map = u 2000<PHONE_NUMBER>6
lxc.id_map = g 2000<PHONE_NUMBER>6
With the script, I can vary the first values:
containerX u  100000 200
containerY u 100200 200
containerZ u 100400 200
the idea, being that the first 200 uid, are typically id part of the base image, I create a uid/gid on the host named after the container/service, and can more easily view what is doing what.  While the isolated map provides security, from container to container, it's not predictable for creating the host user/group.  Would it be possible, to expose more of that LXC functionality to allow this type of use case in LXD.  FYI, I've tried a few work arounds, above mentioned script, uidmapshift, etc, but none really work when deploying a whole environment with IAC, aka terraform, etc.  Hopefully, I just didn't miss something obvious that already allows it.  BTW, https://github.com/sl1pm4t/terraform-provider-lxd has done a great job so far of making a provider for terraform to work with your lxd, in case you hadn't seen it yet.

If all you want is LXD to map 1800 uids/gids starting at uid/gid 200, you can do so with:
raw.idmap: |-
    both 200-2000 200-2000

Which will setup the kind of hole you're describing above. You may want to read:
 - https://stgraber.org/2017/06/15/custom-user-mappings-in-lxd-containers/
 - https://github.com/lxc/lxd/blob/master/doc/userns-idmap.md

Actually quite the opposite.  Creating the holes works no problem.  The above is a bit simplified for the map, but I map all kinds of UIDs between host and guest.  What I want, is when the container is created, for the UIDs, mainly 0-200 in the container, to be created starting with a different definable value, rather than just the number that is listed first under /etc/subuid.  As you know, the container is created with the value as follows:
root:100000:65536
root:200:4000000
Two ways I have found so far, are to edit subuid, restart service, create container, change subuid back, restart service, and repeat for each container with a different starting value or, init container, run uidmapshift, start container, repeat
Neither way is compatible with large environments or parallel creation
ie,
container x
lxc.id_map = u 0 100000 200
lxc.id_map = g 0 100000 200
lxc.id_map = u<PHONE_NUMBER>
lxc.id_map = g<PHONE_NUMBER>
container y
lxc.id_map = u 0 100200 200
lxc.id_map = g 0 100200 200
lxc.id_map = u<PHONE_NUMBER>
lxc.id_map = g<PHONE_NUMBER>
container z
lxc.id_map = u 0 100400 200
lxc.id_map = g 0 100400 200
lxc.id_map = u<PHONE_NUMBER>
lxc.id_map = g<PHONE_NUMBER>

Ok, so the above shows you mapping only up to uid/gid 2000, this makes the container POSIX incompatible and the lack of uid/gid 65534 may be a problem.
Anyway, to do what you're doing above but through LXD, you'd set:
security.idmap.isolated: true
security.idmap.size: 200
raw.idmap: |-
  both 200-2000 200-2000

root@vm02:~# lxc launch images:alpine/edge c1 -c security.idmap.isolated=true -c security.idmap.size=200 -c raw.idmap="both 200-1999 200-1999"
Creating c1
Starting c1
root@vm02:~# lxc launch images:alpine/edge c2 -c security.idmap.isolated=true -c security.idmap.size=200 -c raw.idmap="both 200-1999 200-1999"
Creating c2
Starting c2
root@vm02:~# lxc launch images:alpine/edge c3 -c security.idmap.isolated=true -c security.idmap.size=200 -c raw.idmap="both 200-1999 200-1999"
Creating c3
Starting c3

root@vm02:~# grep id_map /var/log/lxd/c1/lxc.conf
lxc.id_map = u 0 1065536 200
lxc.id_map = g 0 1065536 200
lxc.id_map = u<PHONE_NUMBER>
lxc.id_map = g<PHONE_NUMBER>
root@vm02:~# grep id_map /var/log/lxd/c2/lxc.conf
lxc.id_map = u 0 1065736 200
lxc.id_map = g 0 1065736 200
lxc.id_map = u<PHONE_NUMBER>
lxc.id_map = g<PHONE_NUMBER>
root@vm02:~# grep id_map /var/log/lxd/c3/lxc.conf
lxc.id_map = u 0 1065936 200
lxc.id_map = g 0 1065936 200
lxc.id_map = u<PHONE_NUMBER>
lxc.id_map = g<PHONE_NUMBER>
root@vm02:~#

I am mapping a whole range of 65536, as shown in the first post, so staying posix compatible.  I'm wanting the feature of isolated, but I want to statically pick the unique values are for each container, rather than just getting the next allocation.  I will probably switch to idmap, as the id_map is a hold over from before idmap existed.

FYI, the reason, as you may have seen in the first post, is I create users "container1-root:100000:100000" "container2:100200:100200" etc to match so that I get container and service names showing on the host and can see exactly which container, service, uid, etc is doing without having to track it down.  Hope that makes more sense.

Ah right, so yeah, someone who wants to do the same you do but without the need to pick the specific range, could use security.idmap.size=65536 and the rest of what I showed above.
In your case, it sounds like you're indeed stuck with manually setting up the maps.
That or you could have LXD do it for you, then extract the map from "lxc config get c1 volatile.idmap.base" and update subuid/subgid to match.
Closing this issue as it seems like we're offering the right options for this right now.

Not sure how LXD would do it for me.  If I do a lxc init with isolated, it'll pick the next range, and I can pull the config to see what it used, but if I recreate the same container, it'll most likely pick a different range the next time.  Would a security.idmap.start be possible, so that we could set where we want the range to begin in addition to how many ids we want?

It should be possible, yes. Obviously that'd let you stamp over an existing container as that'd bypass the code that checks for non-overlapping ranges.

I'm cool with that.  Thanks.


PTPusherEvent fails to return data if it is not in JSON format

When an event arrives, PTPusherEvent attempts to decode it as JSON. If the data is not JSON, it should just return the data as a string: https://github.com/lukeredpath/libPusher/blob/master/Library/PTPusherEvent.m#L34
When objectFromJSONString fails to parse the data, it returns nil. However, the check on line 30 isn't looking at _data at all, and is expecting an NSError (error), which is never created.
I was able to fix the issue by changing line 30 to if (_data == nil). Is there something I am missing here, or should I submit a pull request with a fix?
Adam

No, you are quite right. A pull request would be great.


Add version: DevelopedMethodsLLC.playit version 0.15.5

Pull request has been created with komac v2.5.0 :rocket:
Microsoft Reviewers: Open in CodeFlow

Automatic Validation ended with:

Executable C:\Program Files\playit_gg\bin\playit.exe returned exit code: -1073741515

Automated error analysis suggests -1073741515 may mean STATUS_DLL_NOT_FOUND - possibly due to a dependency on Microsoft.VCRedist.2015+.x64 (or .x86).
(Automated response - build 894.)

Automatic Validation ended with:

Executable C:\Program Files\playit_gg\bin\playit.exe returned exit code: -1073741515

Automated error analysis suggests -1073741515 may mean STATUS_DLL_NOT_FOUND - possibly due to a dependency on Microsoft.VCRedist.2015+.x64 (or .x86).
(Automated response - build 894.)


Building the docs creates temporary files

MCVE
Apologies if this has already been noted, but I can't find an open issue. When I create the docs from scratch, I see a couple temporary files and directories that appear to have been created by accident. If this is a legitimate issue, I'm happy to put together a PR.
Here is an MCVE:
(xarray-docs) gwg:doc gwg$ make clean
rm -rf _build/*
rm -rf generated/*
rm -rf auto_gallery/
(xarray-docs) gwg:doc gwg$ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
(xarray-docs) gwg:doc gwg$ make html
sphinx-build -b html -d _build/doctrees   . _build/html'

...

Build finished. The HTML pages are in _build/html.
(xarray-docs) gwg:doc gwg$ git status
On branch master
Your branch is up to date with 'origin/master'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)

	example-no-leap.nc
	foo.zarr/
	manipulated-example-data.nc
	path/

nothing added to commit but untracked files present (use "git add" to track)

Expected Output
I would expect no files to be created by make html in the doc directory.
Problem Description
It's not clear this will happen and may result in some people (me!) accidentally committing these files with git commit -A.

Yes, at the least we should add those to .gitignore without a more general solution (like a build path). I don't know the doc building well - anyone know if there's a general solution to these?

The files and directories that were not cleaned up by the make clean command are all artifacts of the code examples which run in the docs themselves. For example, the manipulated-example-data.nc is created in this section.
At leas one of these files is cleaned up at the end, see the ipython block.
I'd probably look into something like a temporary directory rather than trying to track down all the "example artifacts" created during a run. I'm not sure what sort of configuration the IPython blocks have, but there are also some tempdir utilities in IPython.

After doing some more research, I can't find an ipythonic way of doing this—even have a question with a bounty on StackOverflow. However, here are some options. My vote is for using the Makefile:
Remove via Makefile
It's not ideal, but it ensures the files get removed immediately after they get created or upon clean. Near the top of the file, put something like
...
TMP_FILES = example-no-leap.nc foo.zarr/ manipulated-example-data.nc path/
...

Then the clean and html commands are
.PHONY: clean
clean:
	rm -rf $(BUILDDIR)/*
	rm -rf generated/*
	rm -rf auto_gallery/
	rm -rf $(TMP_FILES)

.PHONY: html
html:
	$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
	rm -rf $(TMP_FILES)
	@echo
	@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."

Remove via more documentation
As @DocOtak points out, some of the documentation already cleans up after itself. Personally, I dislike this as it's not clear to the reader why these extra snippets exist.
Remove via .gitignore
Easy to do, but I dislike this as it leaves a bunch of temporary junk in my working directory. I'd rather have it cleaned up somehow.
Remove by writing to and ignoring temp directory
Every ipython directive that creates a file should place that file in tmp/ directory. Then we .gitignore this. This is a bit cleaner than the other .gitignore option. This is my second choice.
Remove using tempdir utilities
I dislike this for the same reason I dislike "Remove via more documentation": it clutters the documentation with utility snippets/code that are opaque to the reader.

Happy to create a PR for any of these, but does anyone have any preferences or a better way of doing this?

If I understand well, this is really just about the temporary files, right? In this case, a cleaning block with a :suppress: directive should be enough, yes.

Thanks for the explanation, @DocOtak. I didn't initially understand :suppress:, but I now agree that a cleaning block with :suppress: is straightforward. It also follows the current pattern in the docs—I noticed this other places once I knew what to look for.


Custom extensions

Check for existing issues

[X] Completed

Is your feature request related to a problem?
I want to see Cargo.lock content with highlights syntax’s.
Describe the solution you'd like
Add a setting to settings.json
If applicable, add mockups / screenshots to help present your vision of the feature
settings.json
{
    "files": {
        "associations": {
            "*.avsc": "json",
            "Cargo.lock": "toml"
        }
    }
}

I'm not sure if this qualifies as the same issue; however, I work on a project which for historic reasons is C++ code with .c file extensions. It would be nice if I could say "hey in this project (or even globally) treat .c as .cc/cpp"

I'm wondering if the suggested structure should be flipped so that a list could be used.  The structure would be saying "apply this language's syntax highlighting to the following languages":
{
    "files": {
        "associations": {
            "json": ["*.avsc"],
            "toml": ["Cargo.lock"],
        }
    }
}

I'm not sure.  This would reduce duplication, but maybe it feels a bit backwards?

This would be a great stop-gap for Svelte support, as Svelte users could associate their .svelte files with HTML

A million times, yes.

since there are already many many requests for language support it would make sense to allow custom languages and also to easily install language defs from others. really you would only need file extensions and lsps

I'm wondering if the suggested structure should be flipped so that a list could be used. The structure would be saying "apply this language's syntax highlighting to the following languages":
{
    "files": {
        "associations": {
            "json": ["*.avsc"],
            "toml": ["Cargo.lock"],
        }
    }
}

I'm not sure. This would reduce duplication, but maybe it feels a bit backwards?

+1 This seems easier and more practical. Simply list all associated filetypes per language.

In addition to adding this type of configuration, we should also populate some defaults, such as those suggested in:

https://github.com/zed-industries/community/issues/1822

This would be a huge step forward for Zed already. Currently, Zed becomes not useable for most of my projects, just because it lacks some languages (e.g. SCSS). But if I am able to map SCSS to the CSS engine (syntax highlighting, basic formatting/completion) it would be a huge step forward.


A button to end the roblox player process in tray context menu

this would be useful if it starts in the background. i dont want to have to open task manager every time it happens (https://discord.com/channels/1099468797410283540/1153324634624757831)

Eastern, you should know C#....


Duplicated async gaps in web stack traces

When pausing in a Flutter Web application in a debugger the stack traces often contain multiple async gaps in a row. To repro, pause in the middle of any build method in Flutter and scroll up the stack. Showing async gaps is useful but we should never show more than one async gap in a row.

Fyi @nshahan

cc @annagrin

Reproducible debugging Flutter web.

flutter doctor -v
[✓] Flutter (Channel master, 1.24.0-2.0.pre.86, on Mac OS X 10.15.7 19H2 darwin-x64, locale
    en)
    • Flutter version 1.24.0-2.0.pre.86 at /Users/pedromassango/dev/SDKs/flutter_master
    • Framework revision dde20448f7 (6 hours ago), 2020-10-20 00:59:56 -0400
    • Engine revision ea2aea1c61
    • Dart version 2.11.0 (build 2.11.0-234.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.1)
    • Android SDK at /Users/pedromassango/Library/Android/sdk
    • Platform android-30, build-tools 30.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 12.0.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.0.1, Build version 12A7300
    • CocoaPods version 1.9.3

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

[✓] Android Studio (version 4.0)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)

[✓] IntelliJ IDEA Community Edition (version 2020.2.3)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 50.0
    • Dart plugin version 202.7319.5

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

[✓] Connected device (4 available)
    • iPhone 11 Pro Max (mobile) • 913ADC1E-400E-4AA0-8302-D955869FF1C9 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-13-5 (simulator)
    • macOS (desktop)            • macos                                • darwin-x64     • Mac
      OS X 10.15.7 19H2 darwin-x64
    • Web Server (web)           • web-server                           • web-javascript •
      Flutter Tools
    • Chrome (web)               • chrome                               • web-javascript •
      Google Chrome 86.0.4240.80

• No issues found!

This should be fixed at head now. We have logic inside package:dwds to handle multiple async gaps:
https://github.com/dart-lang/webdev/blob/0036f4480dc069e041696452a04bd6e7528613f2/dwds/lib/src/debugging/frame_computer.dart#L88


[Event Request] T37 - OnValidateVATProdPostingGroupOnAfterCheckVATCalcType

I would like to request an event on Table 37 - VAT Prod. Posting Group - OnValidate():
Original:
IF SalesHeader."Prices Including VAT" AND (Type IN [Type::Item,Type::Resource]) THEN
 "Unit Price" :=
...
New:
IsHandled := FALSE;
OnValidateVATProdPostingGroupOnBeforeCheckVATCalcType(Rec,VATPostingSetup,IsHandled);
IF NOT IsHandled THEN
  IF SalesHeader."Prices Including VAT" AND (Type IN [Type::Item,Type::Resource]) THEN
    "Unit Price" :=
...
Thank you for your attention.

Event name could also be
OnValidateVATProdPostingGroupOnBeforeUpdateUnitPrice(Rec,VATPostingSetup,IsHandled);

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Misleading message:  "Key is not included in URL"

Great gem, but the error message "Key is not included in URL" seems misleading to me for some reasons.
I) It is not clear whar is meant by "key" (I would suggest "id").
II) The message references a concrete problem in the URL, a missing key, which might not be true (e.g. a wrong key might be the problem as well).
III) The error could have happened in the data section as well.
IV) This message is returned whenever something goes wrong with the id (e.g. wrong type of id field in the data section), see example
Example: The following patch request to the correct url (and id) might cause this error message due to an invalid data type (int) for id. It has nothing to do with a "not included" key in the url.
{
data: {
"type": "articles",
"id": 1,
"attributes": {
"title": "updated title"
}
}
}
The request is invalid because of the wrong type (int) for "id". It MUST be string (conforming to json api), and jsonapi-resources correctly refuses to process this request, but with this misleading error message.
Suggestion for this Message: "id field is invalid or does not match the id given in the URL."

Good catch. That error message is a remnant of an early draft of JSON API when a replace operation could target multiple resources. I think it would be most accurate to declare that the resource object does not match the request URL.
Looking at the code in parse_single_replace_operation it could also use some cleanup to reflect the more restrictive nature of the final spec.


[release-1.8] update apply logic for operator

This is an automated cherry-pick of #27924

@istio-testing: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

integ-multicluster-k8s-tests_istio_release-1.8
4cc2ad5212227820040beda303c248ae6f163cc7
link
/test integ-multicluster-k8s-tests_istio_release-1.8

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

/retest


Bake 'easeOutQuad' easing function into nag module.

https://github.com/Semantic-Org/Semantic-UI/issues/211#issuecomment-106290794
As mentioned above the nag module is missing the easing function to work properly. The normal jquery library only supports 'swing' and 'linear' easing functions. The added code is a copy from here:
https://github.com/Semantic-Org/Semantic-UI/blob/master/src/definitions/modules/accordion.js#L589-L593
Please merge and make people happy :tada:

Thanks for the fix.


Don't exit if icons are missing

Hi,
I have an issue where pmenu refuses to run (one-shot), when icons are specified, but not found in the filesystem. xmenu just prints a warning and ignores the icon for that option, while pmenu just exits after returning. It would be nice, if pmenu would act the same.
Let me know what you think of it...

Done. It should work now.
I fixed both your issues on xmenu and forgot to fix on πmenu...

Thanks a lot!


What does this do?

What does this do?

It's a hook system, similar to WordPress hook system for make core codebase pluggable. Read
the readme of the repo for docs and philosophy:)

I did. But I'm not clear on how it is useful

Can you show a real world example?


Don't start config daemon on unsupported platforms

The operator is only supported on Baremetal and OpenStack.
We should not start the config daemon elsewhere, as this is not
something we have tested.
On platform-agnostic deployments, there are a few unknowns that could
potentially be problematic especially for when running in virtualized
environments outside of the OpenStack platform type.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
5 unchanged lines in 2 files lost coverage.
Overall coverage decreased (-0.07%) to 25.868%

Files with Coverage Reduction
New Missed Lines
%

controllers/sriovnetwork_controller.go
2
65.71%

pkg/daemon/daemon.go
3
42.91%

Totals

Change from base Build<PHONE_NUMBER>:
-0.07%

Covered Lines:
1966

Relevant Lines:
7600

💛  - Coveralls

/hold
please wait with this PR

This is not always the case for example I deploy a kubernetes cluster with kubeadm on a baremetal node and it doesn't contain the providerID but everything still work as expected.
With this PR the operator will only run on platform that got deployed via supported provider like OpenStack or Metal3.
Instead I think the deamon should not do anything on the system if there are no policies on it. for example not try to configure Udev rules.

This is not always the case for example I deploy a kubernetes cluster with kubeadm on a baremetal node and it doesn't contain the providerID but everything still work as expected. With this PR the operator will only run on platform that got deployed via supported provider like OpenStack or Metal3.
Instead I think the deamon should not do anything on the system if there are no policies on it. for example not try to configure Udev rules.

I agree with @SchSeba. This patch breaks current support of vanilla k8s


Fire and Smoke Detection

Deep Learning Simplified Repository (Proposing new issue)
:red_circle: Project Title : Fire and Smoke Detection
:red_circle: Aim : The aim of this project is to detect the fire and smoke based on the dataset using deep learning methods.
:red_circle: Dataset : https://www.kaggle.com/datasets/dataclusterlabs/fire-and-smoke-dataset
:red_circle: Approach : Try to use 3-4 algorithms to implement the models and compare all the algorithms to find out the best fitted algorithm for the model by checking the accuracy scores. Also do not forget to do a exploratory data analysis before creating any model.

📍 Follow the Guidelines to Contribute in the Project :

You need to create a separate folder named as the Project Title.
Inside that folder, there will be four main components.

Images - To store the required images.
Dataset - To store the dataset or, information/source about the dataset.
Model - To store the machine learning model you've created using the dataset.
requirements.txt - This file will contain the required packages/libraries to run the project in other machines.

Inside the Model folder, the README.md file must be filled up properly, with proper visualizations and conclusions.

:red_circle::yellow_circle: Points to Note :

The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Follow Contributing Guidelines & Code of Conduct before start Contributing.

:white_check_mark: To be Mentioned while taking the issue :

Full name :
GitHub Profile Link :
Email ID :
Participant ID (if applicable):
Approach for this Project :
What is your participant role? (Mention the Open Source program)

Happy Contributing 🚀
All the best. Enjoy your open source journey ahead. 😎

Full name : Keshav Arora
GitHub Profile Link : www.github.com/CoderOMaster
Email ID<EMAIL_ADDRESS>Participant ID (if applicable):
Approach for this Project : image resizing,eda,various CNN models,resnet,vgg,imagenet
What is your participant role? (Mention the Open Source program) GSSOC contributor

Hi @CoderOMaster  wait for the induction session to complete by today evening, after that issues will be assigned to the contributors.

@abhisheks008 hi,can I get the issue?

Issue assigned to you @CoderOMaster


fix name of css file loaded in index.html

Just to be clear. The layout file head.html currently attempts to load /css/type-scale.css, but the file is named /css/typescale.css.
https://github.com/SciMLCon/www.scimlcon.org/blob/b69741f74088778721a43d054adf8edc1c075801/_layout/head.html#L34
This PR simply renames the file so it can be properly loaded.
Alternatively, one can change the name in head.html, but it seems the usual name for this file is indeed with a dash.


No files showing for a completed node in running workflow

This is also most likely related:
https://www.loom.com/share/b8b903cd202b4e9d84b5c9f15323b57b

Fix is in https://github.com/onepanelio/core-ui/pull/26
Needs external testing to confirm.


Templates tests require Sourcery.app in bin directory

@Antondomashnev running templates tests locally I noticed that they run Sourcery from bin folder as a build step, which is copied there only when building for release IIRC. Maybe we should adjust this to make it easier to run tests? Also I think it make sense to run templates tests together with unit tests during development, maybe through a separate scheme.

run templates tests together with unit tests during development, maybe through a separate scheme.

That's a good idea

Maybe we should adjust this to make it easier to run tests?

I think the way works fine, but probably we just need to add a build step to build sourcery app and copy it into the bin. I think that should fit out needs.


Feature:  HTML content hook

I'm using Lexical as a editable text framework for an app that ingests and exports html text blocks (p tags & spans), it would be great if there were an HTML content hook or plugin that allowed you to set the html content and automatically export it. The solutions i've found online usually have you insertingNodes after converting them but this can result in duplicative text to the point that if you mess up you'll cause an infinite loop when the app re-renders.

I'm not totally clear on what you're trying to achieve that can't already be trivially done with the html primitives we provide. Is generateHtmlFromNodes exports HTML, generateNodesFromDom imports it. Is it just about wrapping that in a hook for your specific use case?

Sorry let me provide more context into my use-case and the larger feature I was requesting.
BACKGROUND: I'm working on a headless cms for a project and i'm using Lexical as the conduit to display, edit, and update the text elements on the pages.
As such I'm trying to figure out the best way to load the html content dynamically in the editor, currently i'm doing it by creating a local copy of the string, converting it to nodes, and then inserting that into the editor using editor.update. However this has a couple of drawbacks:
a) anytime the app re-renders it adds the text again leading to duplicates
b) I'm also trying to house variants of the text for things like breakpoints and conditions and at the moment I can't swap out content without either destroying the instance and starting again or using the method above and getting other content.
As for the exporting that works fine, it's mostly a nice-to-have if we're ingesting to also have an export feature.
FEATURE DESCRIPTION:  Have a more user-friendly hook, service, or plugin to take an html string and use it as the editor content, likewise it would be great to be able to swap out the content in the case of having multiple values or having a value swap happen in the application.  For example, if i'm showing variant A of the text and I want to switch to variant B there should be a replaceContent function that work more seamlessly.

@acywatson Just wanted to confirm you saw this

I haven't worked with Lexical yet, I'm just investigating it for a potential use-case.
Isn't the basic functionality provided by setEditorState. Maybe I'm assigning it properties that it doesn't have, but it sounds like you should be able to swap the state with this. Doing so with HTML would involve bouncing it through a couple of functions, I'd assume.
I'm interested in the answer to this since it would definitely be a requirement to arbitrarily swap the editor content for what I have in mind.

Doing so with HTML would just involve bouncing it through a couple of functions, I'd assume.

@eneroth Basically, yes - $generateNodesFromHtml returns an array of LexicalNodes, but not a full EditorState. You'd probably just clear the RootNode and then append that array to the RootNode rather than creating a new state and calling setEditorState.

Hey @acywatson, what's the best way to clear the root node? I think that would solve my issue, currently i'm updating the editor once a new value comes in but i'm getting a duplicate so clearing the node between updates would probably clear that up.

Hey @acywatson, what's the best way to clear the root node? I think that would solve my issue, currently i'm updating the editor once a new value comes in but i'm getting a duplicate so clearing the node between updates would probably clear that up.
CODE FOR REFERENCE: ` useEffect(() => { if (!text) return;
    editor.update(() => {
        const parser = new DOMParser();
        const dom = parser.parseFromString(text, "text/html");

        const nodes = $generateNodesFromDOM(editor, dom);

        $getRoot().select();

        const selection = $getSelection();

        selection?.insertNodes(nodes);
    });
}, [editor, text]);

`

$getRoot.clear()
https://lexical.dev/docs/faq#how-do-i-clear-the-contents-of-the-editor

Thank you so much


Fixing errors when editing user input and making conditional flow work with elements w/ multiple values

This PR tries to fix #186 and also adds the capability for conditional flows to match against elements that supports multiple values (like Checkboxes, selects, radios).
I've also tried to make the developer experience a little bit easier by adding some scripts to package.json.

hey @m4n3z40 , am I understanding correctly? This PR solves this open issue?

Also, yes. It has a lot more features now... Lost the track of this PR. I think I'll close it because the subsequent commits are out of the scope of this PR. You you guys want some of the features I've implemented lemme know and I'll open a PR with the specific bits you want. Cheers.

@m4n3z40 would love to have just the conditional for multiple choice elements


podspec specifies iOS 10.0 as the minimum deployment target

Hello,
The podspec specifies iOS 10.0 as the minimum deployment target, while the readme specifies iOS 9.
Is this in error?

Hey @mauriciosantos I noticed that you fixed this issue on master and bumped the version -- thanks for that!
Did you notice that the CI job had failed?

Gotcha. Let me know if I can help

Noticed the same problem. Until its fixed, you can simply reference the SHA in your Podfile to pull in the updated version
pod 'Buckets', :git => 'https://github.com/mauriciosantos/Buckets-Swift.git', :commit => 'bb022bad2a3bd7921af47492124965687a9330e7'