How can I use XLSR-53 with Transformers?

Hi,
is it possible to use the multilingual wav2vec model called "XLSR-53" with transformers?
Thanks
Philip

My question as well.

+1 Is it possible to use them for ASR? And if they need fine tuning how hard is it? how do we do it?

you might want to open this issue in the transformers github
@patrickvonplaten


YARN-9934. avoid submitting aggregator when app dir creation fail

Before submiting a log aggreation runnable, LogAggregationService  will try to create the aggreated log dir.
In some case, it may fail(e.g dir num exceed max limit)
When it did failed and submitted to LogAggregationService, the runnable may run forever if some app statue flip misbehavior(e.g not handling application complete event rightfully,thus keeping appFinishing of AppLogAggregatorImpl be always true).
In our production(Version 2.7.3), this cause huge number of dangling aggregator(~400+ LogAggregationService threads alive for some node, in which nodemanager configured only 50+ vCPUs).
The patch try to early throw the creation exception, avoiding starting unnecessary log polling.
Jira:YARN-9934

:broken_heart: -1 overall

Vote
Subsystem
Runtime
Comment

0
reexec
37
Docker mode activated.

_ Prechecks _

+1
dupname
0
No case conflicting files found.

+1
@author
0
The patch does not contain any @author tags.

-1
test4tests
0
The patch doesn't appear to include any new or modified tests.  Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.

_ trunk Compile Tests _

+1
mvninstall
1097
trunk passed

+1
compile
64
trunk passed

+1
checkstyle
31
trunk passed

+1
mvnsite
41
trunk passed

+1
shadedclient
823
branch has no errors when building and testing our client artifacts.

+1
javadoc
32
trunk passed

0
spotbugs
75
Used deprecated FindBugs config; considering switching to SpotBugs.

+1
findbugs
72
trunk passed

_ Patch Compile Tests _

+1
mvninstall
34
the patch passed

+1
compile
57
the patch passed

+1
javac
57
the patch passed

+1
checkstyle
23
the patch passed

+1
mvnsite
34
the patch passed

+1
whitespace
0
The patch has no whitespace issues.

+1
shadedclient
784
patch has no errors when building and testing our client artifacts.

+1
javadoc
28
the patch passed

+1
findbugs
79
the patch passed

_ Other Tests _

-1
unit
1306
hadoop-yarn-server-nodemanager in the patch failed.

+1
asflicense
33
The patch does not generate ASF License warnings.

4666

Reason
Tests

Failed junit tests
hadoop.yarn.server.nodemanager.containermanager.logaggregation.TestLogAggregationService

Subsystem
Report/Notes

Docker
Client=19.03.4 Server=19.03.4 base: https://builds.apache.org/job/hadoop-multibranch/job/PR-1677/2/artifact/out/Dockerfile

GITHUB PR
https://github.com/apache/hadoop/pull/1677

Optional Tests
dupname asflicense compile javac javadoc mvninstall mvnsite unit shadedclient findbugs checkstyle

uname
Linux f588fbcac233 4.15.0-58-generic #64-Ubuntu SMP Tue Aug 6 11:12:41 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

Build tool
maven

Personality
personality/hadoop.sh

git revision
trunk / 8625265

Default Java
1.8.0_222

unit
https://builds.apache.org/job/hadoop-multibranch/job/PR-1677/2/artifact/out/patch-unit-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt

Test Results
https://builds.apache.org/job/hadoop-multibranch/job/PR-1677/2/testReport/

Max. process+thread count
411 (vs. ulimit of 5500)

modules
C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager

Console output
https://builds.apache.org/job/hadoop-multibranch/job/PR-1677/2/console

versions
git=2.7.4 maven=3.3.9 findbugs=3.1.0-RC1

Powered by
Apache Yetus 0.10.0 http://yetus.apache.org

This message was automatically generated.

duplicated YARN-4984


Fix bottom padding for responsive() SLC

WHAT
Fix bottom padding for SLC.
WHY
Bottom item if larger than a Chip, such as a Card will be obscured.
AutoCenteringParams doesn't allow adjusting the bottom item, and with Anchor = Start will only ensure the start of the final item can get to the center, which is not enough.
HOW
Checklist :clipboard:

[ ] Add explicit visibility modifier and explicit return types for public declarations
[ ] Run spotless check
[ ] Run tests
[ ] Update metalava's signature text files

Can you please add more details what exactly this change fixes?

cc @garanj


use 2022 for linux test

Hi @lowlydba, I'm trying to use tSQLt Installer for the automatic execution of the units test in my sp_alter_column project. Could you so kind to describe how to get the value of the "Container id" after the "docker create" command? Thanks

@segovoni I don't think this is on topic for this pull request, or even this repository. My action doesn't have any outputs - but you should check out something like this issue for getting the id of a container.

@lowlydba sorry my message here and thanks for the issue link.


6853 allow search user with custom fields

Resolves: #6853
Follow-up from  #6915.
With this PR, you can search users by custom fields using search_fields.

Add the search_fields to the custom user for use in the tests.
Add the tests to verify the functionality.
Add the code to search using search_fields

Some tests seem to fail due to adding the user model to be indexed. Need to look into that.
https://github.com/pcraciunoiu/wagtail/actions/runs/7757515089/job/21157145835
Also I'm unclear if this warning is concerning, but changing it to group doesn't work. Thoughts?
customuser.CustomUser: (wagtailsearch.W004) CustomUser.search_fields contains non-existent field 'group_id'

Without the FilterField("group_id"):
  File "/home/paul/wagtail/.venv/lib/python3.11/site-packages/django/views/generic/list.py", line 154, in get
    self.object_list = self.get_queryset()
                       ^^^^^^^^^^^^^^^^^^^
  File "/home/paul/wagtail/wagtail/users/views/users.py", line 140, in get_queryset
    users = search_backend.search(
            ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/paul/wagtail/wagtail/search/backends/base.py", line 476, in search
    return self._search(
           ^^^^^^^^^^^^^
  File "/home/paul/wagtail/wagtail/search/backends/base.py", line 464, in _search
    search_query_compiler.check()
  File "/home/paul/wagtail/wagtail/search/backends/base.py", line 262, in check
    self._get_filters_from_where_node(self.queryset.query.where, check_only=True)
  File "/home/paul/wagtail/wagtail/search/backends/base.py", line 190, in _get_filters_from_where_node
    child_filters = [
                    ^
  File "/home/paul/wagtail/wagtail/search/backends/base.py", line 191, in <listcomp>
    self._get_filters_from_where_node(child)
  File "/home/paul/wagtail/wagtail/search/backends/base.py", line 178, in _get_filters_from_where_node
    return self._process_filter(
           ^^^^^^^^^^^^^^^^^^^^^
  File "/home/paul/wagtail/wagtail/search/backends/base.py", line 80, in _process_filter
    raise FilterFieldError(
wagtail.search.backends.base.FilterFieldError: Cannot filter search results with field "group_id". Please add index.FilterField('group_id') to CustomUser.search_fields.

I need to figure out the above issue, it's related to elastic search failing too. Maybe someone more familiar has pointers to help me narrow this down, it seems like this line is failing to find a value:
https://github.com/wagtail/wagtail/blob/9c0a93f9c58f5c9f0cba99d6497bc7cb45de897b/wagtail/search/backends/elasticsearch7.py#L102

Looks like this is one reason the filtering by user.groups doesn't work, it's not yet supported in Wagtail:
https://docs.wagtail.org/en/stable/topics/search/indexing.html#filtering-on-index-relatedfields
Could use some guidance here. Perhaps when there is a group filter, we can't use the search backend, or you can suggest elasticsearch code to run it manually? I'm not familiar with the best way to approach this.

Pushed a workaround and I think this is ready now.

Thanks @pcraciunoiu I will flag this for a review.


patch and prompt improvements

PR Type
Enhancement, Documentation

Description

Enhanced the logic for processing new and old hunks in convert_to_hunks_with_lines_numbers function in git_patch_processing.py.
Updated the Docker base image from Python 3.10 to Python 3.12 in Dockerfile.
Improved clarity and added detailed instructions in code suggestion prompts, reflection prompts, and reviewer prompts in respective TOML files.

Changes walkthrough 📝
Relevant filesEnhancement

git_patch_processing.pyEnhance hunk processing logic and code readability

pr_agent/algo/git_patch_processing.py
Improved handling of new and old hunks in patch processing.  Added checks for presence of '+' and '-' lines before appending hunks.  Fixed formatting issues and improved code readability.

+26/-19

Dependencies

DockerfileUpdate Docker base image to Python 3.12

docker/Dockerfile

Updated base image from Python 3.10 to Python 3.12.

+1/-1

Documentation

pr_code_suggestions_prompts.tomlImprove code suggestion prompts and field descriptions

pr_agent/settings/pr_code_suggestions_prompts.toml
Improved clarity of code suggestion prompts.  Added instructions for handling hunks with no new or removed code.  Enhanced field descriptions for better understanding.

+13/-11

pr_code_suggestions_reflect_prompts.tomlEnhance code suggestion reflection prompts

pr_agent/settings/pr_code_suggestions_reflect_prompts.toml
Improved clarity of code suggestion reflection prompts.  Added instructions for handling hunks with no new or removed code.

+3/-3

pr_reviewer_prompts.tomlImprove PR reviewer prompts and instructions

pr_agent/settings/pr_reviewer_prompts.toml
Improved clarity of PR reviewer prompts.  Added instructions for handling hunks with no new or removed code.

+3/-2

💡 PR-Agent usage:
Comment /help on the PR to get a list of all available PR-Agent tools and their descriptions

Generating PR code suggestions
Work in progress ...

@mrT23 can we get a new docker image published with these changes? this would address https://github.com/Codium-ai/pr-agent/issues/1086

Generating PR code suggestions
Work in progress ...

Generating PR code suggestions
Work in progress ...


connect error

A connection error occurs when the password ends with "."
i sure my password were right i copy it from my config,it works in another rcon manager.

Hmm, I'll have to do some testing on this, potentially an issue from how the packets are framed for Rcon.


Update default path from src to cwd

Describe the bug
Many developers may not intend to have src as their default path  and also most of the frameworks don't have src folder entirely. So update the default path to the current working directory.
If the users intend to have default path for all the components they can tweak the defaultPath property in the arclix.config.json , they can also specify path for the individual component using --path or -p flag.
Reproduction
https://github.com/arclix/core
Steps to reproduce
No response
System Info
System:
    OS: Windows 10 10.0.22621
    CPU: (4) x64 Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
    Memory: 1.93 GB / 7.90 GB
  Binaries:
    Node: 18.14.2 - C:\Program Files\nodejs\node.EXE
    Yarn: 3.5.0 - C:\Program Files\nodejs\yarn.CMD
    npm: 9.5.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.22621.1255.0), Chromium (112.0.1722.48)

Used Package Manager
npm
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Arclix issue and not a React specific issue.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion.
[X] Please follow minimal reproducible example of the bug and Refer the example issue

[Tiraged] Good to start the development 👍🏻


Finalize Modes

Games

Fighter
Platformer
QBert (?)
Racer (??)

Tools

Colorchord
Gamepad
Something instrumenty (?)
Something tunery (?)

Light dances
Ports of old games/modes

and yes, I need to get to porting Tunernome lol

My preference is new stuff over ports, but yes, tunernome makes the cut.

@jt-moriarty what are the odds you'll make your racer?


Broken llm publishJson in 2.7.15

When calling openai as per the example here https://upstash.com/docs/qstash/integrations/llm, openai returns a 400 error:
{ "error": { "message": "you must provide a model parameter", "type": "invalid_request_error", "param": null, "code": null } }

It works fine when rolled back to v2.7.14.
Looking at the qstash events log, it seems the content-type of the request to openai is set to text/plain;charset=UTF-8 when it should be application/json.
Which is set correctly in 2.7.14.

Yep perfect! Thanks


How to log out ? and How can I check if user is login ?

Hello
It is nice libraray  , I want to ask about
How can  I  log out ? and How can I check if user is login ?
Thank you

Hi @iosworkjo, Thank you.
These features are not included in the library since the aim behind it is only to facilitate the callback style of the facebook sdk. when checking for user status or logging him out, facebook sdk did it instantly with no callbacks.


108 update copy

For #108
Updates copy, replaces link for Nexer digital with the correct one, updates button radius to look a little nicer :)

Closes https://github.com/neontribe/UK-Charity-Camp/issues/108


Lyceum support?

@adubredu nice package! Do you have plans to maintain/extend this package going forward?
What are your thoughts on the Lyceum wrapper from @klowrey and crew?
My experience using the Lyceum wrapper in the past was great (the code is written super well) and seems like there could be a great opportunity to join forces on these two MuJoCo + Julia projects, see the MuJoCo discussion here.

Thanks @thowell!
Unfortunately,  I don't have plans to maintain/extend this package at the moment.  The main benefit of this package was that,  since it's mainly just a Julia wrapper of the Python bindings,  I was able to use the cool features in  dm_control.
Lyceum's is certainly the better option for performance-critical uses.

Jumping in here, as mentioned in https://github.com/deepmind/mujoco/issues/964 I'm pretty keen on using updated Julia bindings for MuJoCo so would be happy to help out!

hi @nic-barbara! my bandwidth is a bit limited at the moment, but if someone can take the lead on this I am happy to pitch in a bit

@thowell sorry for the delay, I've moved discussion to https://github.com/Lyceum/MuJoCo.jl/issues/24 if you're interested!


IOError: write error

Hi,
After upgrading Raven from 5.3.1 to 5.10.2 we started getting these errors. It is only happening in Django projects (we have one Twisted and it works fine). No traceback available.

got the same error with a project that has raven 5.8.1
but not in another using 5.6... so the window of version is smaller :)

Do you also happen to be using uWSGI?

yes on both projects...
<IP_ADDRESS> on the one that has errors and uWSGI==2.0.4 on the one that doesn't

Ah, so you'll want a few uwsgi options here. :) Likely, we weren't capturing the logging from uWSGI, and now we are.
But uWSGI logs these things for misbehaving clients. A write error would happen if the upstream got disconnected, but the backend process was still attempting to write to the closed socket.
You can add:
ignore-sigpipe = true
ignore-write-errors = true
disable-write-exceptions = true

This is what we run for Sentry to hush all of that noise.

@mattrobenolt: thanks!

@mattrobenolt Your solution silenced uwsgi errors but IOError still appears, is there anyway to ignore it on raven-python side?

@Nihn: we hade the same problem as you but found out that there was a typo above.
disable-write-exceptions = true

should be
disable-write-exception = true

without the last s (see uWSGI documentation).

Oh my. :( I've edited my comment to reflect the correct answer. Sorry about that!


org.websbrew.custom-screensaver: the killer webosbrew app

lol a good one

oh dammit, almost managed to fix a typo in commit message :laughing:


how to fix to sides

Reading the documentation says it can be done, quote: "This jQuery plugin is used to fix elements on the page (top, bottom, anywhere);"
So anywhere should include left or right also. But I can't see in the examples how to scroll fix something to the sides, only the top. Looking at some of the other issues suggests that this feature hasn't been done yet. If that's the case then it's not anywhere like the first line of the README implies.

Left or right is handled using css.


FAQ: Mention UI

I think it could be good as a follow-up to add a note in Flux docs somewhere for people asking about a UI, since it is a common question. This way not only the current Flux UIs we know about (Weave GitOps) would be listed, but also others could list themselves there too, to continue ensuring vendor neutrality. We could then link to that page from this README even. But for now, we have no such page so IMO this makes sense.
Originally posted by @scottrigby in https://github.com/fluxcd/webui/pull/65#pullrequestreview-1020596359

#1015 adds it to the ecosystem page. Maybe we add an entry to the FAQ as well, just to be sure?


Can't have leading dollar-sign in documents

The following fails on real MongoDB instances, but succeeds in mongomock.
>>> import mongomock
>>> mongomock.MongoClient().db.temporary.insert({"$foo": "bar"})
ObjectId('58cd310ecd23ff0534b5fd83')
>>> import pymongo
>>> pymongo.MongoClient().db.temporary.insert({"$foo": "bar"})
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "build/bdist.linux-x86_64/egg/pymongo/collection.py", line 1926, in insert
  File "build/bdist.linux-x86_64/egg/pymongo/collection.py", line 436, in _insert
bson.errors.InvalidDocument: key '$foo' must not start with '$'

Same for other invalid types, actually. The document should probably be validated.
>>> import pymongo
>>> import mongomock
>>> mongomock.MongoClient().db.temporary.insert({"a": {"b"}})
ObjectId('58cd322fcd23ff76de522fce')
>>> pymongo.MongoClient().db.temporary.insert({"a": {"b"}})
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "build/bdist.linux-x86_64/egg/pymongo/collection.py", line 1926, in insert
  File "build/bdist.linux-x86_64/egg/pymongo/collection.py", line 436, in _insert
bson.errors.InvalidDocument: Cannot encode object: set(['b'])

@mdomke I think it will be much easier to add the bson package to the project and do all these checks.


When I want to export hand-static model as onnx

model_id = 'damo/cv_mobileface_hand-static'
model = Model.from_pretrained(model_id)
output_files = Exporter.from_model(model).export_onnx(shape=(1, 310,310,3), opset=13, output_dir='/tmp')
print(output_files)
Traceback (most recent call last):
File "/home/luolab/yin/modelscope/test_modelscope.py", line 15, in
output_files = Exporter.from_model(model).export_onnx(shape=(1, 310,310,3), opset=13, output_dir='/tmp')
File "/home/luolab/anaconda3/envs/modelscope/lib/python3.8/site-packages/modelscope/exporters/base.py", line 39, in from_model
exporter = build_exporter(export_cfg, task_name, kwargs)
File "/home/luolab/anaconda3/envs/modelscope/lib/python3.8/site-packages/modelscope/exporters/builder.py", line 20, in build_exporter
return build_from_cfg(
File "/home/luolab/anaconda3/envs/modelscope/lib/python3.8/site-packages/modelscope/utils/registry.py", line 197, in build_from_cfg
raise KeyError(
KeyError: 'hand-static is not in the exporters registry group hand-static. Please make sure the correct version of ModelScope library is used.'

this particular model is only integrated into pipeline, without specific model abstraction. you may use the pipeline with the folllowing sample code (as shown in the model card)
`from modelscope.outputs import OutputKeys
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks
hand_static = pipeline(Tasks.hand_static, model='damo/cv_mobileface_hand-static')
result_status = hand_static({'img_path': 'data/test/images/hand_static.jpg'})
result = result_status[OutputKeys.OUTPUT]`

model

Thx，I had use it with pipeline. But I want to use it in embedded sys. Maybe it is not a right time. Thx again!


feat: add bun support

This should detect usage of bun as package manager and add support for installing shadcn-ui components.

Hi @mjaroszek have you tested this on your machine? I do not have bun installed so I can not check that.

Hey. Didn't expect a fast response cuz it looks like a nieche plugin. I have bun installed and will test it once I get back to my machine. However it should work, it's just a command invocation. I will confirm it tho.

Cool, in that case if the bun install command is working it should be fine.


Fixes validations.py expanding first character checks on usernames. Closes: #1

Updated validations.py python script.
Fixed the behavior of validate_user function in validations.py.
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[x] Tests pass
[x] Appropriate changes to README are included in PR

All good and not required anymore.


Workspaces at a volume root show as blank in the recent workspaces of the Windows menu

If you create a VS Code workspace at the top of a volume on Windows the 'Recent Workspaces' will show blank.

Hover will show the volume name.
VS Code 1.18.0
OS Windows 7

@draeger-charles-wilson I cannot reproduce, I tried by saving a workspace to C:. Is that what you did?

I created a new workspace at the root of a volume.

@draeger-charles-wilson ah, so that is a folder at the root? or is it a multi-root-workspace file (*.code-workspace)?

I opened the volume root using (Open Folder) from a session of Code launched using the New Window selection in recent.


nginx: add VOD-related modules from Kaltura

Motivation for this change
Add a collection of useful modules for video on demand distribution via nginx. I added one commit for each module.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Ensured that relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

secure-token also has a recent release, akamai-token-validate-module however does not.

secure-token also has a recent release, akamai-token-validate-module however does not.

Unfortunately, even though there are some recent releases for two of the three modules, some bugfixes and performance improvements didn't make into a release yet. See:

https://github.com/kaltura/nginx-secure-token-module/commit/e0f5fa410b0784d8783f8c0db74020540155cab9 (only in master)
https://github.com/kaltura/nginx-vod-module/commit/a5c6825c9ae595d81c143515d3c02e2202abaebe (only in master)

Unfortunately, even though there are some recent releases for two of the three modules, some bugfixes and performance improvements didn't make into a release yet. See:

https://github.com/kaltura/nginx-secure-token-module/commit/e0f5fa410b0784d8783f8c0db74020540155cab9 (only in master)
https://github.com/kaltura/nginx-vod-module/commit/a5c6825c9ae595d81c143515d3c02e2202abaebe (only in master)

Possibly rename to nginxModules.: init at ..., like as in other PR? - https://github.com/NixOS/nixpkgs/commits/master/pkgs/servers/http/nginx/modules.nix

Possibly rename to nginxModules.: init at ..., like as in other PR? - https://github.com/NixOS/nixpkgs/commits/master/pkgs/servers/http/nginx/modules.nix

@Izorkin done.

@Izorkin done.

cc @Mic92 @bhipple


[#2433] Initial email module

This fixes #2433.

@elichad I prepared this initial PR for the new email module. Please take a look. If the design doesn't make sense, let me know - I can explain.
I also marked a few places that still need tests. I will be working on them next.
This is, in my opinion, a good start for the new system. It contains 1 email action (for persons merged) and some basic views. I will be working on next steps (stories and functions we need) in upcoming days.

Small update: I was able to pretty easily fix tests related to persons merging, but there are 2 tests still failing. They relate to running a job that calculates 42 / 0 and make sure it fails. Unfortunately it looks like there was an update either to rq or fakeredis which breaks these tests. I'm going to continue investigating in the following days.

@elichad Ready for your review.

@elichad thank you for the review! I changed almost everything as you suggested. Please re-review.

@elichad Please take a look when you have a chance. Thanks in advance!


How should I perform supercluster based on an example code？

https://github.com/drprojects/superpoint_transformer/issues/136#issuecomment -2229942164
Hello, I have used this example program to predict and classify my point cloud very well, but it only has superpoint. How should I do panoramic classification based on this example? Thank you.

Hi @yulongheart, I do not see anything from you in #136, please provide the "example program" here, in the dedicated issue. Please clarify "it only has superpoint". Finally, I assume you mean "panoptic segmentation" and not "panoramic classification" ?
If you ❤ or use this project, don't forget to give it a ⭐, it means a lot to us !

Hi @yulongheart, I do not see anything from you in #136, please provide the "example program" here, in the dedicated issue. Please clarify "it only has superpoint". Finally, I assume you mean "panoptic segmentation" and not "panoramic classification" ?
If you ❤ or use this project, don't forget to give it a ⭐, it means a lot to us !

Hello, sorry, it was my unclear description that confused you. It is indeed a panoptic segmentation. I run it using this example code. I would like to ask, how can I obtain the results of supercluster?
`import os
import sys
Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(file)))  # for .py script
file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)
Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)
import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.kitti360 import CLASS_NAMES, CLASS_COLORS, read_kitti360_window
from src.datasets.kitti360 import KITTI360_NUM_CLASSES as NUM_CLASSES
from src.transforms import *
Parse the configs using hydra
cfg = init_config(overrides=[
"experiment=kitti360",
"ckpt_path=./media/spt-2_kitti360.ckpt"
])
Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")
path = "/media/shi/projects/superpoint_transformer/data/kitti360/raw/data_3d_semantics/2013_05_28_drive_0008_sync/static/0000002769_0000003002.ply"
data = read_kitti360_window(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")
Apply pre-transforms
nag = datamodule.pre_transform(data)
Simulate the behavior of the dataset's I/O behavior with only
point_load_keys and segment_load_keys loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)
Move to device
nag = nag.cuda()
Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)
Instantiate the model
model = hydra.utils.instantiate(cfg.model)
Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()
Inference
logits = model(nag)
If the model outputs multi-stage predictions, we take the first one,
corresponding to level-1 predictions
if model.multi_stage_loss:
logits = logits[0]
Compute the level-0 (pointwise) predictions based on the predictions
on level-1 superpoints
l1_preds = torch.argmax(logits, dim=1).detach()
l0_preds = l1_preds[nag[0].super_index]
print(f"number of pred: {l0_preds.shape[0]}")
Save predictions for visualization in the level-0 Data attributes
nag[0].pred = l0_preds`

Hi @yulongheart, I do not see anything from you in #136, please provide the "example program" here, in the dedicated issue. Please clarify "it only has superpoint". Finally, I assume you mean "panoptic segmentation" and not "panoramic classification" ?
If you ❤ or use this project, don't forget to give it a ⭐, it means a lot to us !

Hello, sorry, it was my unclear description that confused you. It is indeed a panoptic segmentation. I run it using this example code. I would like to ask, how can I obtain the results of supercluster?
import os
import sys
Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(file)))  # for .py script
file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)
Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)
import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.kitti360 import CLASS_NAMES, CLASS_COLORS, read_kitti360_window
from src.datasets.kitti360 import KITTI360_NUM_CLASSES as NUM_CLASSES
from src.transforms import *
Parse the configs using hydra
cfg = init_config(overrides=[
"experiment=kitti360",
"ckpt_path=./media/spt-2_kitti360.ckpt"
])
Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")
path = "/media/shi/projects/superpoint_transformer/data/kitti360/raw/data_3d_semantics/2013_05_28_drive_0008_sync/static/0000002769_0000003002.ply"
data = read_kitti360_window(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")
Apply pre-transforms
nag = datamodule.pre_transform(data)
Simulate the behavior of the dataset's I/O behavior with only
point_load_keys and segment_load_keys loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)
Move to device
nag = nag.cuda()
Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)
Instantiate the model
model = hydra.utils.instantiate(cfg.model)
Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()
Inference
logits = model(nag)
If the model outputs multi-stage predictions, we take the first one,
corresponding to level-1 predictions
if model.multi_stage_loss:
logits = logits[0]
Compute the level-0 (pointwise) predictions based on the predictions
on level-1 superpoints
l1_preds = torch.argmax(logits, dim=1).detach()
l0_preds = l1_preds[nag[0].super_index]
print(f"number of pred: {l0_preds.shape[0]}")
Save predictions for visualization in the level-0 Data attributes
nag[0].pred = l0_preds

Hi @yulongheart, I do not see anything from you in #136, please provide the "example program" here, in the dedicated issue. Please clarify "it only has superpoint". Finally, I assume you mean "panoptic segmentation" and not "panoramic classification" ?
If you ❤ or use this project, don't forget to give it a ⭐, it means a lot to us !

Hello, sorry, it was my unclear description that confused you. It is indeed a panoptic segmentation. I ran it using this example code. I would like to ask, how can I obtain the results of supercluster?
import os
import sys

# Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))  # for .py script
# file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)

# Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)

import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.kitti360 import CLASS_NAMES, CLASS_COLORS, read_kitti360_window
from src.datasets.kitti360 import KITTI360_NUM_CLASSES as NUM_CLASSES
from src.transforms import *

# Parse the configs using hydra
cfg = init_config(overrides=[
    "experiment=kitti360",
    "ckpt_path=./media/spt-2_kitti360.ckpt"
])

# Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")

path = "/media/shi/projects/superpoint_transformer/data/kitti360/raw/data_3d_semantics/2013_05_28_drive_0008_sync/static/0000002769_0000003002.ply"
data = read_kitti360_window(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")

# Apply pre-transforms
nag = datamodule.pre_transform(data)
# Simulate the behavior of the dataset's I/O behavior with only
# `point_load_keys` and `segment_load_keys` loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)

# Move to device
nag = nag.cuda()

# Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)

# Instantiate the model
model = hydra.utils.instantiate(cfg.model)

# Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()

# Inference
logits = model(nag)

# If the model outputs multi-stage predictions, we take the first one,
# corresponding to level-1 predictions
if model.multi_stage_loss:
    logits = logits[0]

# Compute the level-0 (pointwise) predictions based on the predictions
# on level-1 superpoints
l1_preds = torch.argmax(logits, dim=1).detach()
l0_preds = l1_preds[nag[0].super_index]

print(f"number of pred: {l0_preds.shape[0]}")

# Save predictions for visualization in the level-0 Data attributes
nag[0].pred = l0_preds

The script you wrote seems to be applying Superpoint Transformer (SPT) pretrained on KITTI-360 on a new point cloud. SPT is for semantic segmentation. To do panoptic segmentation, you should use SuperCluster. Please see the README and our papers   for more on this.
The configs you want are in configs/experiment/panoptic rather than configs/experiment/semantic:
cfg = init_config(overrides=[f"experiment=panoptic/dales"])

As already stated in the README, the pretrained  SuperCluster weights can be downloaded from .
For manipulating the the PanopticSegmentationOutput returned by SuperCluster, and possibly converting it to voxel-level or full-resolution labels, refer to the demo.ipynb notebook.
Finally, I notice you are using an actual cloud from KITTI-360 in your script. If you are simply trying to run the inference on KITTI-360 val, you could:
If you ❤ or use this project, don't forget to give it a ⭐, it means a lot to us !

能将其转换为体素级或全分辨率标签

Hello, thank you for your outstanding contribution and response. This is the result I obtained using supercluster_st3dis_fold5. ckpt prediction. I feel that there are still many color blocks instead of the effect shown in the example. I don't know if my calling method is correct or if this will be an expected result.

'''
import os
import sys
import time
Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(file)))  # for .py script
file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)
Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)
import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.s3dis import CLASS_NAMES, CLASS_COLORS, read_s3dis_room
from src.datasets.s3dis import S3DIS_NUM_CLASSES as NUM_CLASSES
from src.transforms import *
import multiprocessing
import numpy as np
start_time = time.time()
Parse the configs using hydra
cfg = init_config(overrides=[
"experiment=panoptic/s3dis",
"ckpt_path=/home/workspace2/SupPointTrans_ws/superpoint_transformer/media/s3dis/supercluster_s3dis_fold5.ckpt"
])
Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")
path = "/home/workspace2/SupPointTrans_ws/superpoint_transformer/data"
data = read_s3dis_room(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")
Apply pre-transforms
nag = datamodule.pre_transform(data)
Simulate the behavior of the dataset's I/O behavior with only
point_load_keys and segment_load_keys loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)
Move to device
nag = nag.cuda()
Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)
Instantiate the model
model = hydra.utils.instantiate(cfg.model)
Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()
Inference, returns a task-specific ouput object carrying predictions
with torch.no_grad():
output = model.forward(nag)
show(nag, cmap=CLASS_COLORS, labels_to_names=CLASS_NAMES)
pred = output.semantic_pred
lab = pred.cpu().numpy()
pos = nag[0].pos[:].cpu().numpy()
super_index = nag[0].super_index.cpu().numpy()
labels = lab[super_index]
data = np.concatenate((pos,labels.reshape(-1,1)),axis=1)
np.savetxt("data/lidar_spc_s3dis.txt",data)
end_time = time.time()
print(f"Total time: {end_time - start_time:.2f} seconds")
'''

The script you wrote seems to be applying Superpoint Transformer (SPT) pretrained on KITTI-360 on a new point cloud. SPT is for semantic segmentation. To do panoptic segmentation, you should use SuperCluster. Please see the README and our papers   for more on this.
The configs you want are in configs/experiment/panoptic rather than configs/experiment/semantic:
cfg = init_config(overrides=[f"experiment=panoptic/dales"])

As already stated in the README, the pretrained SuperCluster weights can be downloaded from .
For manipulating the the PanopticSegmentationOutput returned by SuperCluster, and possibly converting it to voxel-level or full-resolution labels, refer to the demo.ipynb notebook.
Finally, I notice you are using an actual cloud from KITTI-360 in your script. If you are simply trying to run the inference on KITTI-360 val, you could:
If you ❤ or use this project, don't forget to give it a ⭐, it means a lot to us !

Hello, thank you for your outstanding contribution and response. This is the result I obtained using supercluster_st3dis_fold5. ckpt prediction. I feel that there are still many color blocks instead of the effect shown in the example. I don't know if my calling method is correct or if this will be an expected result.

‘‘‘
import os
import sys
import time
Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(file)))  # for .py script
file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)
Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)
import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.s3dis import CLASS_NAMES, CLASS_COLORS, read_s3dis_room
from src.datasets.s3dis import S3DIS_NUM_CLASSES as NUM_CLASSES
from src.transforms import *
import multiprocessing
import numpy as np
start_time = time.time()
Parse the configs using hydra
cfg = init_config(overrides=[
"experiment=panoptic/s3dis",
"ckpt_path=/home/workspace2/SupPointTrans_ws/superpoint_transformer/media/s3dis/supercluster_s3dis_fold5.ckpt"
])
Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")
path = "/home/workspace2/SupPointTrans_ws/superpoint_transformer/data"
data = read_s3dis_room(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")
Apply pre-transforms
nag = datamodule.pre_transform(data)
Simulate the behavior of the dataset's I/O behavior with only
point_load_keys and segment_load_keys loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)
Move to device
nag = nag.cuda()
Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)
Instantiate the model
model = hydra.utils.instantiate(cfg.model)
Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()
Inference, returns a task-specific ouput object carrying predictions
with torch.no_grad():
output = model.forward(nag)
show(nag, cmap=CLASS_COLORS, labels_to_names=CLASS_NAMES)
pred = output.semantic_pred
lab = pred.cpu().numpy()
pos = nag[0].pos[:].cpu().numpy()
super_index = nag[0].super_index.cpu().numpy()
labels = lab[super_index]
data = np.concatenate((pos,labels.reshape(-1,1)),axis=1)
np.savetxt("data/lidar_spc_s3dis.txt",data)
end_time = time.time()
print(f"Total time: {end_time - start_time:.2f} seconds")
’’’

The script you wrote seems to be applying Superpoint Transformer (SPT) pretrained on KITTI-360 on a new point cloud. SPT is for semantic segmentation. To do panoptic segmentation, you should use SuperCluster. Please see the README and our papers   for more on this.
The configs you want are in configs/experiment/panoptic rather than configs/experiment/semantic:
cfg = init_config(overrides=[f"experiment=panoptic/dales"])

As already stated in the README, the pretrained SuperCluster weights can be downloaded from .
For manipulating the the PanopticSegmentationOutput returned by SuperCluster, and possibly converting it to voxel-level or full-resolution labels, refer to the demo.ipynb notebook.
Finally, I notice you are using an actual cloud from KITTI-360 in your script. If you are simply trying to run the inference on KITTI-360 val, you could:
If you ❤ or use this project, don't forget to give it a ⭐, it means a lot to us !

Hello, thank you for your outstanding contribution and response. This is the result I obtained using supercluster_st3dis_fold5. ckpt prediction. I feel that there are still many color blocks instead of the effect shown in the example. I don't know if my calling method is correct or if this will be an expected result.

import os
import sys
import time

# Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))  # for .py script
# file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)

# Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)

import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.s3dis import CLASS_NAMES, CLASS_COLORS, read_s3dis_room
from src.datasets.s3dis import S3DIS_NUM_CLASSES as NUM_CLASSES
from src.transforms import *
import multiprocessing
import numpy as np

start_time = time.time()

# Parse the configs using hydra
cfg = init_config(overrides=[
    "experiment=panoptic/s3dis",
   "ckpt_path=/home/workspace2/SupPointTrans_ws/superpoint_transformer/media/s3dis/supercluster_s3dis_fold5.ckpt"
])

# Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")

path = "/home/workspace2/SupPointTrans_ws/superpoint_transformer/data"
data = read_s3dis_room(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")

# Apply pre-transforms
nag = datamodule.pre_transform(data)
# Simulate the behavior of the dataset's I/O behavior with only
# `point_load_keys` and `segment_load_keys` loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)

# Move to device
nag = nag.cuda()

# Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)

# Instantiate the model
model = hydra.utils.instantiate(cfg.model)

# Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()

# Inference, returns a task-specific ouput object carrying predictions
with torch.no_grad():
    output = model.forward(nag)
    show(nag, cmap=CLASS_COLORS, labels_to_names=CLASS_NAMES)

pred = output.semantic_pred
lab = pred.cpu().numpy()
pos = nag[0].pos[:].cpu().numpy()
super_index = nag[0].super_index.cpu().numpy()
labels = lab[super_index]
data = np.concatenate((pos,labels.reshape(-1,1)),axis=1)

np.savetxt("data/lidar_spc_s3dis.txt",data)
end_time = time.time()
print(f"Total time: {end_time - start_time:.2f} seconds")

Your lines
pred = output.semantic_pred
lab = pred.cpu().numpy()
pos = nag[0].pos[:].cpu().numpy()
super_index = nag[0].super_index.cpu().numpy()
labels = lab[super_index]
data = np.concatenate((pos,labels.reshape(-1,1)),axis=1)

are for computing the predicted semantic segmentation for each voxel of $P_0$. Since you are doing panoptic segmentation, you should rather use something similar to what I put in the demo.ipynb to recover the voxel-wise panoptic predictions:
vox_y, vox_index, vox_obj_pred = output.voxel_panoptic_pred(super_index=nag[0].super_index)
nag[0].obj_pred = vox_obj_pred

Now, your illustration suggests you have neither floor nor ceiling in your data. An S3DIS-pretrained model will probably not like this, because it has been trained to see these classes in every room. So I think you may want to train a model from scratch on your data if you have annotations. Another trick would be to manually add "fake" floor and ceiling points to your data. This should be relatively easy. Note that if you used a ScanNet-pretrained model, you would only need to add floor points, since ScanNet rooms do not have ceilings.
That being said, due to the large number of requests I receive, I only provide support for issues relative to code I wrote and released, and I cannot provide support for tuning Superpoint Transformer or SuperCluster on individual use cases.

Okay, sorry to bother you. Thank you very much. I will adjust the test myself. Finally, I would like to express my gratitude

Hello, sorry, it was my unclear description that confused you. It is indeed a panoptic segmentation. I ran it using this example code. I would like to ask, how can I obtain the results of supercluster?
import os
import sys

# Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))  # for .py script
# file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)

# Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)

import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.kitti360 import CLASS_NAMES, CLASS_COLORS, read_kitti360_window
from src.datasets.kitti360 import KITTI360_NUM_CLASSES as NUM_CLASSES
from src.transforms import *

# Parse the configs using hydra
cfg = init_config(overrides=[
    "experiment=kitti360",
    "ckpt_path=./media/spt-2_kitti360.ckpt"
])

# Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")

path = "/media/shi/projects/superpoint_transformer/data/kitti360/raw/data_3d_semantics/2013_05_28_drive_0008_sync/static/0000002769_0000003002.ply"
data = read_kitti360_window(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")

# Apply pre-transforms
nag = datamodule.pre_transform(data)
# Simulate the behavior of the dataset's I/O behavior with only
# `point_load_keys` and `segment_load_keys` loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)

# Move to device
nag = nag.cuda()

# Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)

# Instantiate the model
model = hydra.utils.instantiate(cfg.model)

# Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()

# Inference
logits = model(nag)

# If the model outputs multi-stage predictions, we take the first one,
# corresponding to level-1 predictions
if model.multi_stage_loss:
    logits = logits[0]

# Compute the level-0 (pointwise) predictions based on the predictions
# on level-1 superpoints
l1_preds = torch.argmax(logits, dim=1).detach()
l0_preds = l1_preds[nag[0].super_index]

print(f"number of pred: {l0_preds.shape[0]}")

# Save predictions for visualization in the level-0 Data attributes
nag[0].pred = l0_preds

Helllo, I would like to ask you if you could provide me with your email adress, because I'm stuck in a step of visualization.

Hello, thank you for your outstanding contribution and response. This is the result I obtained using supercluster_st3dis_fold5. ckpt prediction. I feel that there are still many color blocks instead of the effect shown in the example. I don't know if my calling method is correct or if this will be an expected result.

import os
import sys
import time

# Add the project's files to the python path
file_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))  # for .py script
# file_path = os.path.dirname(os.path.abspath(''))  # for .ipynb notebook
sys.path.append(file_path)

# Necessary for advanced config parsing with hydra and omegaconf
from omegaconf import OmegaConf
OmegaConf.register_new_resolver("eval", eval)

import hydra
from src.utils import init_config
import torch
from src.visualization import show
from src.datasets.s3dis import CLASS_NAMES, CLASS_COLORS, read_s3dis_room
from src.datasets.s3dis import S3DIS_NUM_CLASSES as NUM_CLASSES
from src.transforms import *
import multiprocessing
import numpy as np

start_time = time.time()

# Parse the configs using hydra
cfg = init_config(overrides=[
    "experiment=panoptic/s3dis",
   "ckpt_path=/home/workspace2/SupPointTrans_ws/superpoint_transformer/media/s3dis/supercluster_s3dis_fold5.ckpt"
])

# Instantiate the datamodule
datamodule = hydra.utils.instantiate(cfg.datamodule)
print(f"Data transorms : {datamodule}")

path = "/home/workspace2/SupPointTrans_ws/superpoint_transformer/data"
data = read_s3dis_room(path)
print(f"number of points: {data.num_points}\n keys: {data.keys}")

# Apply pre-transforms
nag = datamodule.pre_transform(data)
# Simulate the behavior of the dataset's I/O behavior with only
# `point_load_keys` and `segment_load_keys` loaded from disk
from src.transforms import NAGRemoveKeys
nag = NAGRemoveKeys(level=0, keys=[k for k in nag[0].keys if k not in cfg.datamodule.point_load_keys])(nag)
nag = NAGRemoveKeys(level='1+', keys=[k for k in nag[1].keys if k not in cfg.datamodule.segment_load_keys])(nag)

# Move to device
nag = nag.cuda()

# Apply on-device transforms
nag = datamodule.on_device_test_transform(nag)

# Instantiate the model
model = hydra.utils.instantiate(cfg.model)

# Load pretrained weights from a checkpoint file
model = model._load_from_checkpoint(cfg.ckpt_path)
model = model.eval().cuda()

# Inference, returns a task-specific ouput object carrying predictions
with torch.no_grad():
    output = model.forward(nag)
    show(nag, cmap=CLASS_COLORS, labels_to_names=CLASS_NAMES)

pred = output.semantic_pred
lab = pred.cpu().numpy()
pos = nag[0].pos[:].cpu().numpy()
super_index = nag[0].super_index.cpu().numpy()
labels = lab[super_index]
data = np.concatenate((pos,labels.reshape(-1,1)),axis=1)

np.savetxt("data/lidar_spc_s3dis.txt",data)
end_time = time.time()
print(f"Total time: {end_time - start_time:.2f} seconds")

Hello, I applied this code of visualisation on dales dataset, but the the file of predictions that was saved contains only XYZ columns  and doesn't contain the columns of semantic and instance, so I would like to know if this awkwerd to you.


chore(*): 🤖 allow deps-dev as a commit scope

Codecov Report

Merging #31 (7e01adc) into master (5541b09) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master      #31   +/-   ##
=======================================
  Coverage   84.78%   84.78%
=======================================
  Files          29       29
  Lines         309      309
  Branches       49       49
=======================================
  Hits          262      262
  Misses         47       47

Continue to review full report at Codecov.

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


Update PGbench to use run_snafu

In order to reduce duplicate indexing functionality PGbench-wrapper should be updated to use run_snafu.

Already fixed


xref should not be escaped

As mentioned in https://github.com/ZotPlus/zotero-better-bibtex/issues/245 I have the following problem with customized export: If I want, for example, define a xref entry and put
bibtex[xref=welker_andreas_1999]

into the extra field of Zotero, the output is translated into correct LaTeX with a backslash before each underscore:
xref = {welker\_andreas\_1999}

Since this value should be a BibTeX key, and not to be translated to LaTeX, it doesn't link to the right key with the backslashes before the underscores.

This is not hard to fix, but wouldn't you rather use the Zotero-native "related" feature?

I use the xref for articles from collections: If there are two or more articles from the same book, it does not need to cite the full title of the collected volume for a second time; then the short title of the collection is enough. it looks like this (for german footnotes):

�Michael Maaser: Andreas Riems literarisches Werk, in: Karl H. L. Welker [Hrsg.]: Andreas Riem. Ein Europäer aus der Pfalz (Schriften der Siebenpfeiffer-Stiftung 6), Stuttgart 1999, S. 37–49.
�
Johannes Süssmann: Andreas Riem und die Französische Revolution, in: Welker [Hrsg.]: Andreas Riem (wie Anm. 1), S. 107–118.

The relate-feature in Zotero doesn't support this sort of relation – and I use it in Zotero to connect primary literature/historical sources with related research literature, not the articles from the same collection... But if one doesn't need the short title collection-feature of xref, the native feature should be enough.

Alright, good to know. Both work now in any case. Enjoy, and thanks for your reports!

no. doesn't work. HIM54E48-XSGUUNT9

Progress. Can you try zotero-better-bibtex-1.0.6-2015-07-14@21:51:22.xpi ?


package error

I just reinstalled the package in a clean session and I have a package-related error:
#PEPTIDE SUMMARIZATION - Start

 + Summarization input:
  - A total number of 806459 peptides is proceed for summarization.
  - Unique peptide IDs are generated.
  - Isoleucine substitution to leucine is done.
  - Peptide groups are generated.
Error in peptides %>% dplyr::summarise(Peptide = list(Peptide), Start = list(Start),  :
  could not find function "%>%"

seems to be fixed when I run
library('dplyr')

and start again.

Yes, struggling still with that one :-)

Should be fine.


Can not handle "delete" type

Initial checklist

[X] I read the support docs
[X] I read the contributing guide
[X] I agree to follow the code of conduct
[X] I searched issues and couldn’t find anything (or linked relevant results below)

Affected packages and versions
1.0.1
Link to runnable example
No response
Steps to reproduce
https://codesandbox.io/s/friendly-leftpad-1lcrc?file=/src/index.js
Expected behavior
The same behavior that strong or emphasis have
Actual behavior

Runtime
No response
Package manager
No response
OS
No response
Build and bundle tools
No response

https://github.com/syntax-tree/mdast-util-gfm-strikethrough


Rules framework not working with newer versions of FluentValidation

Recently when installing the Rules-Framework on services that are using recent versions of FluentValidation, we are having these kinds of exceptions
{"Method not found: 'System.Collections.Generic.IList'1<FluentValidation.Results.ValidationFailure> FluentValidation.Results.ValidationResult.get_Errors()'."}
In the case above, the version used is FluentValidation 10.3.6

related issue already opened on fluent validation side

@sergioamribeiro this seems to be an intentional breaking change, they changed the Errors property type from IList<ValidationFailure> to List<ValidationFailure>, hence why the exception is thrown.
We can consider custom-made logic to replace it.

As we talk in the meeting we will upgrade the FluentValidation package by now.


Support tile-less IIIF as per LegacyTileSource

It is possible to have a IIIF (http://iiif.io/) compliant system that does not support tiles, but instead uses the sizes list to give a set of complete images at different sizes.  This is practically identical to the Legacy Tile Source pattern (https://openseadragon.github.io/examples/tilesource-legacy/).  It would be great to have a fallback for the IIIF Tile Source to use the Legacy code when only sizes are available.
{
  "@context" : "http://iiif.io/api/image/2/context.json",
  "@id" : "http://www.example.org/image-service/img1234",
  "protocol" : "http://iiif.io/api/image",
  "width" : 6000,
  "height" : 4000,
  "sizes" : [
    {"width" : 150, "height" : 100},
    {"width" : 600, "height" : 400},
    {"width" : 3000, "height": 2000}
  ]
}

Would trivially map to:
{
    "type": "legacy-image-pyramid",
    "levels": [{
        "url": "http://www.example.org/image-service/img1234/full/3000,/0/default.jpg",
        "height": 2000,
        "width":  3000
    },{
        "url": "http://www.example.org/image-service/img1234/full/600,/0/default.jpg",
        "height": 400,
        "width":  600
    },{
        "url": "http://www.example.org/image-service/img1234/full/150,/0/default.jpg",
        "height": 100,
        "width":  150
    }]
}

Note in the example above width 6000 / height 4000 is intentionally left out of the sizes array as unavailable.  It should not be assumed that full/full is available without authentication, so only the entries in the sizes array should be used by the TileSource.
#enhancement #iiif #tilesource

@azaroth42 Is this a scenario that's not currently supported by the IIIFTileSource? In other words, if the current one got that result from the server, would it not know what to do?
I don't know that having the IIIFTileSource delegate to the LegacyTileSource would necessarily be the right way to go about it...it might be better to keep the IIIFTileSource self contained but also support this scenario.

Hi @iangilman.  Yes, it's not currently supported.  I'm not sure what the current implementation would do, but likely just error out.  I can try to look at how Legacy works and port the functionality over to the IIIFTileSource.  I'll post any questions as I get to the implementation on this issue?  (And if anyone else wants to have a go before I get to it, please feel free!)

@azaroth42 Sounds good!

Hi @iangilman - I have a possible solution to this that makes the IIIFTileSource emulate the legacyTileSource when only the sizes list is available in the IIIF info.json:
https://github.com/openseadragon/openseadragon/compare/master...tomcrane:iiif-sizes
All the changes are in IIIFTileSource.js, there's probably a more elegant way of combining the functionality of the two tilesources.

@tomcrane Excellent! Looks reasonable to me (assuming you'll remove all of the console.log calls). I love that you've added demos and tests!
@azaroth42 Would you mind taking a look at the patch?

I'll tidy this up and put in a pull request tomorrow. Do you want the large test images in the PR? If so I'll compress them some more.

Hi @azaroth42, @jpstroop - do you agree with that canBeTiled(..) function?
https://github.com/openseadragon/openseadragon/compare/master...tomcrane:iiif-sizes#diff-8687fada024051e6abce230abcacc2aaR385
I'd like to remove the hard coded profile.

@tomcrane I think you're going to need to hard-code more to support 1.0 and 1.1. :disappointed:
http://iiif.io/api/image/1.0/#info
http://iiif.io/api/image/1.1/#image-info-request
Specifically, I think you need to add more possible values (or not-values) to the profile condition.

@jpstroop Would it be too dirty to have a test for "is a URI" && "contains 'level0'" ? That or hard-code the three possible level0 profiles. The former assumes that vFuture level0 never supports tiles. There are currently no hard-coded profiles above 1.1 in the source.

That seems a little opaque to me. I think I'd prefer to see the two or
three disallowed URIs spelled out explicitly.
-Js
Sent via mobile. Please excuse typos, brevity, etc.

OK - maybe revisit at IIIF 7...

@tomcrane Yes, please include the images (assuming there are no rights issues).


feat: automatically run workflows on pull requests to main

When a pull-request is created, some tests should automatically be run/added to that request.
Pull requests from outside collaberators should require approval to run the workflows.
Currently i would suggest two workflows:

A workflow that runs a linter, to check that all classes match the Kotlin Coding convetions
A workflow that automatically runs the tests in src/test/kotlin/me/kject/test and ensures, that a code coverate of 90% is reached with those tests.

We can set the workflow target to pull_request, this way, said workflow runs in the fork. This would require complete independence in term of secrets, but in the case of PRs, for the crucial workflows (building, linting, etc) this is easily achievable imo.
Regarding the proposed workflows:

how strict do you plan on making it? Instant fail due to even the slightest issues?
what is the current coverage?

The current coverage is at 95%, but i will add two tests till the end of this week to get it to 100% (currently an test for object instances and one for an dispose fail is missing).
I think when an real error (like the project can't compile) is found, we should fail the pr. If it's an warning regarding style, we should send a warning or something if thats possible. All other warnings should fail the pr I think, as these usally are thinks like an unused import or method, witch either need to be suppressed (if there is a reason for it) or should be fixed.

All other warnings should fail the pr I think, as these usally are thinks like an unused import or method, witch either need to be suppressed (if there is a reason for it) or should be fixed.

For this use case, we can use CheckStyle, which allows you to configure both IDE integrations and your CI in a unified config file. Said tool has plenty of checks that can be customized, including changing the inspection level, which is exactly what we want here. In particular, we can set the UnusedImport inspection to the Error level to fail the CI.
I totally agree with your plan and will work on implementing this soon:tm:

All other warnings should fail the pr I think, as these usally are thinks like an unused import or method, witch either need to be suppressed (if there is a reason for it) or should be fixed.

For this use case, we can use CheckStyle, which allows you to configure both IDE integrations and your CI in a unified config file. Said tool has plenty of checks that can be customized, including changing the inspection level, which is exactly what we want here. In particular, we can set the UnusedImport inspection to the Error level to fail the CI.
I totally agree with your plan and will work on implementing this soon:tm:


Use progress bar for confirmation count

We don't currently have a way to track this with RPC pub sub APIs. This will require some RPC changes


Upgrade sourcify plugin to 0.8.0-beta

Updates version in sourcify profile.json. The URL is not modified in the file, but should point to ipfs://QmaMqVAW6r1AsUDT4WXkf8tx14MMVkvWbTLoBpHsfqiwds.
Changes:

https://github.com/sourcifyeth/remix-sourcify/pull/55
https://github.com/sourcifyeth/remix-sourcify/pull/57

Can you add the URL in the file please? Otherwise I have to make a new PR.

Ok, now it's done, sorry for the misunderstanding.


What exactly is the expected powershell output?

Do you have an Office 365/Microsoft 365 E5/G5 license? Y/N: Y
Would you like to investigate a certain application? Y/N: N
Skipping AppID investigation
VERBOSE: Searching for 'Set domain authentication' and 'Set federation settings on domain' operations in the UAL.
VERBOSE: Searching for 'Update application' and 'Update application ? Certificates and secrets management' in the UAL.
VERBOSE: Searching for 'Update service principal' and 'Add service principal credentials' in the UAL.
VERBOSE: Searching for 'Add app role assignment to service principal', 'Add app role assignment grant to user', and 'Add app role assignment to group' in the UAL.
VERBOSE: Searching for 'Add OAuth2PermissionGrant' and 'Consent to application' in the UAL.
VERBOSE: Searching for 16457 in UserLoggedIn and UserLoginFailed operations in the UAL.
VERBOSE: Searching for PowerShell logins into mailboxes in the UAL.
VERBOSE: Searching for PowerShell logins using known PS application ids in the UAL.
Once I make the selections above, all I receive are details of my personal account using the headers detailed below:
Account              Environment TenantId                             TenantDomain         AccountType

Hello,
I am running in to the same issue.

Hello,
I am running in to the same issue.

We are having similar issues.  Can someone from CISA gives us an expected output?  What if nothing was found?  What should the results look like?

We are having similar issues.  Can someone from CISA gives us an expected output?  What if nothing was found?  What should the results look like?

It tells you what it is it currently doing, The script will create a folder where you ran it called ExportDir and will contain all the data it found. Its up to you to find out if these actions have be done by people in your company or if they are malicious.

It tells you what it is it currently doing, The script will create a folder where you ran it called ExportDir and will contain all the data it found. Its up to you to find out if these actions have be done by people in your company or if they are malicious.

It tells you what it is it currently doing, The script will create a folder where you ran it called ExportDir and will contain all the data it found. Its up to you to find out if these actions have be done by people in your company or if they are malicious.

The script actually creates a folder in your Desktop, not in the folder you ran the script from.

It tells you what it is it currently doing, The script will create a folder where you ran it called ExportDir and will contain all the data it found. Its up to you to find out if these actions have be done by people in your company or if they are malicious.

The script actually creates a folder in your Desktop, not in the folder you ran the script from.

It tells you what it is it currently doing, The script will create a folder where you ran it called ExportDir and will contain all the data it found. Its up to you to find out if these actions have be done by people in your company or if they are malicious.

The script actually creates a folder in your Desktop, not in the folder you ran the script from.

Oh man...this was really helpful. I was executing the script like a 3times and just no output. This should be added to the Readme.

Roger that! I completely missed the folder creation but have found each of the directories and documents contained therein. Many thanks for that extra piece of information! It has proved to be invaluable in this procedure!

For how to interpret the results, the following alert will assist you: https://us-cert.cisa.gov/ncas/alerts/aa21-008a
The newly updated readme now states: The tool then outputs the data into multiple CSV files that are located in the user's default home directory in a folder called 'ExportDir' (ie: Desktop/ExportDir).


Make mapped claims configurable per issuer

This enables the issuer configuration to specify a unique mapping for a
given issuer. This allows us to have different mappings which would be
more relevant for a particular issuer.
Signed-off-by: Juan Antonio Osorio<EMAIL_ADDRESS>

I'm gonna abandon this change and wait for the work in #9 to land.


Fix table layout consistency

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: MinkiDev sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Get Fennel Protocol working with Polkadot.js/apps and document it

Turns out this just works perfectly based on current documentation.


September 2023 Topics

[bitcoin-dev] BIP-352 Silent Payments addresses should have an expiration time

CreditL Peter Todd

[bitcoin-dev] BIP for Serverless Payjoin

Credit: Dan Gould

KYC Mining Pools Have More Than 50% of Bitcoin Hashrate

Credit: No BS Bitcoin
“Mining pools that require miner identity verification now control more than 50% hashrate of the Bitcoin network.”

Expanding Transparency by Open-Sourcing Liquid's Functionary Code

Credit: Pablo Greco
"The Liquid Federation fulfills a long standing goal to open-source the functionary code, allowing anyone to audit the code and create their own Liquid-like network,"

OpenSats Issued Long-term Support Grant to Josi Baker

Credit: Opensats
"Josi will receive long-term support from OpenSats for his continued work on Bitcoin Core," as well as his contributions to the libbitcoinkernel project and BIP-352: Silent Payments

[Lightning-dev] Resumable channels using OP_CHECKSIGFROMSTACK

Credit: Thomas Voegtlin

Tornado Cash Developers Charged with Money Laundering and Sanctions Violations by US Govt

Credit: U.S. Department Of The Treasury
"While publicly claiming to offer a technically sophisticated privacy service, Storm and Semenov in fact knew that they were helping hackers and fraudsters conceal the fruits of their crimes. Today’s indictment is a reminder that money laundering through cryptocurrency transactions violates the law, and those who engage in such laundering will face prosecution," - U.S. Attorney Damien Williams.
“If a person, for example, had the ability to move any and all funds locked by that contract then it may be true that said person accepted those funds and was transmitting them on behalf of whoever put those funds into that contract, i.e. said person was a money transmitter. However, if a person merely had the ability to update certain logic relevant to the contract but insufficient to gain control over the funds and transmit the funds at their discretion then said person would not have what FinCEN in the guidance calls “independent control” over the funds being transmitted and would not therefore be a money transmitter. The indictment does not clearly state the manner of the defendant’s control and therefore does not sufficiently allege unlicensed money transmission.” - Peter Van Valkenburgh / Coin Center

Introducing Proof-of-Work Defense for Onion Services

Credit: Pavel / Tor Project
"Tor's PoW defense is a dynamic and reactive mechanism, remaining dormant under normal use conditions to ensure a seamless user experience, but when an onion service is under stress, the mechanism will prompt incoming client connections to perform a number of successively more complex operations. The onion service will then prioritize these connections based on the effort level demonstrated by the client."
"We believe that the introduction of a proof-of-work mechanism will disincentivize attackers by making large-scale attacks costly and impractical while giving priority to legitimate traffic."

Zaplocker.com: Non-Custodial Lightning Address Server with Base Layer Support

Credit: supertestnet
"Zaplocker is free and open source software. You can run it yourself to provide users of your service with a lightning address without taking custody of user funds. The zaplocker name as well as the software is fully released into the public domain, with no rights reserved."

[bitcoin-dev] Private Collaborative Custody with FROST

Credit: Nick Farrow
“With FROST, a private collaborative custodian can hold a key to a multisig while remaining unaware of the public key (and wallet) which they help control. By hiding this public key, we solve the issue of existing collaborative custodians who learn of all wallet transactions even if you never use them."
"Further, in the scenario that we do call upon a private collaborative custodian to help sign a transaction, this transaction could be signed blindly. Being blind to the transaction request itself and unknowing of past onchain behavior, these custodians have no practical information to enact censorship requests or non-cooperation. A stark contrast to today's non-private collaborative custodians who could very easily be coerced into not collaborating with users.”


pulled after removing the extra spaces from pages

:x: Validation status: errors

File
Status
Preview URL
Details

:x:Error

Details

[Error] Cannot sync git repo to specified state. Please make sure the pull request is mergeable. Details: Git merge results in conflict, repository remote url: https://github.com/MicrosoftDocs/patterns-practices, working directory: W:\ypk2-s, target branch: master, target branch commit: 165a95c0cff8f615c53c23a30b0feb44b0c7a5dc, source branch: 9c8de949203dfebb9159a956b934ddf0/master, source branch commit: .

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

patterns-practices/guide-Prism-4-201011_pandp_40/guide-Prism-4-201011_pandp_40_33514442.md
:white_check_mark:Succeeded

patterns-practices/guide-Prism-4-201011_pandp_40/guide-Prism-4-201011_pandp_40_33514443.md
:white_check_mark:Succeeded

patterns-practices/guide-Prism-4-201011_pandp_40/guide-Prism-4-201011_pandp_40_33514444.md
:white_check_mark:Succeeded

patterns-practices/guide-Prism-4-201011_pandp_40/guide-Prism-4-201011_pandp_40_33514447.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[UI] Unwanted click-through effect on connection chips in K8s context switcher

Current Behavior

Environment

Browser: Safari
Host OS: Mac
Meshery Server Version: stable-v0.7.2
Meshery Client Version: stable-v0.7.2

Contributor Guides and Handbook

🎨 Wireframes and designs for Meshery UI in Figma (open invite)
🖥 Contributing to Meshery UI
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

Hello @leecalcote I would like to work on this issue can you please assign it to me?

Thank you for volunteering, @MeenuyD

Hey @leecalcote i would like to work on this issue. Is it available?

Hello @xmayukx Thanks for your enthusiasm but I will create the pr on this week

@MeenuyD we haven't seen any movement here. Are you still working on this? If not, let's allow another contributor to move it forward.

Hey @leecalcote can u assign it to me if its open for grab?

@xmayukx sounds good. Have you built and run Meshery UI previously?

@leecalcote yes

@xmayukx excellent. Let's 👨🎤 and roll.

This issue is already solved. Thanks @xmayukx


[IDA-4463] Remove auth dialog provide properties

We will use these properties on SDK side and assign values from plist to them.

👍


[Swift 3.0] Mark MoyaProvider.request() as @discardableResult

😱

:100:

          1 Error

:no_entry_sign:
Any changes to library code need a summary in the Changelog.

SwiftLint found issues
Errors

File
Line
Reason

Endpoint.swift
97
Force tries should be avoided.

  Generated by :no_entry_sign: danger

Thanks a lot for contributing to Moya! I've invited you to join the Moya GitHub organization – no pressure to accept! If you'd like more information on what that means, check out our contributor guidelines and feel free to reach out with any questions.

@ashfurrow Sounds interesting, thanks!


Add title and alt attributes for iconbutton

this adds the little native popover with the label for iconbuttons

We already have ->tooltip(). Would this work as well? Or do you need the native version.
At least, this should only be applied if $tooltip is null. Otherwise they might collid.

sorry, I didn't know about tooltip().
My guess is that title is more accessible but I'm no expert here

Thanks

Why was @pxlrbt comment not addressed here for this? I'm surprised I just noticed this as well.. When using tooltip() on an Action, for example, both the title and the tooltip show, which doesn't look good.

I think the suggestion should have been applied

@danharrin Can I make a PR to have the title not applied when a user is using a tooltip?

For sure

Will do soon. Thanks.


Set default encoding to utf-8 to properly handle non-ascii in backups.

Signed-off-by: Josh Hudson<EMAIL_ADDRESS>

Thanks @itmustbejj - great addition!!


No $s-color-primary definition

But solar is using this variable. Was broken in https://github.com/stellar/solar/commit/40a267c7560683685ada2164c7af374926d9daad.

Fixed in this PR: https://github.com/stellar/interstellar-client/pull/2


Increment version for communication releases

Increment package version after release of azure-communication-phonenumbers

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-communication-phonenumbers


Extension must be installed on remote, otherwise it does not work

There is something wrong with extension kind. By default it does not work in WSL or SSH, actions does not shows up in panel. When i forcefully install on remote, when extension is fully operational. so the target should be changed to workspace i guess.

This was last changed in https://github.com/cschleiden/vscode-github-actions/pull/105, @leighmcculloch do you know more about this?

I have reverted extensionKind to workspace for now. Thanks for reporting 🙇

It looks like when I tested this my setting didn't stick and was using the default setting still. Apologies.


Problem Cross-Compiling for Windows (Windows Subsystem for Linux)

I attempted to cross-compile for windows  On Windows, using Windows
Subsystem for Linux (WSL) and the Mingw-w64 cross compiler tool chain.
It will not compile for me,
I followed steps mentioned in  doc\build-windows.md doc\build-cross.md depends\README.md
Describe the issue
Tried Build using below steps:

sudo apt update
sudo apt upgrade
sudo apt install build-essential libtool autotools-dev automake pkg-config bsdmainutils curl git python3
PATH=$(echo "$PATH" | sed -e 's/:/mnt.*//g') # strip out problematic Windows %PATH% imported var
cd depends
make HOST=x86_64-w64-mingw32
cd ..
./autogen.sh
CONFIG_SITE=$PWD/depends/x86_64-w64-mingw32/share/config.site ./configure --prefix=/
make

Expected behaviour
At step 10 I expected build to complete successfully
Actual behaviour
Below error
./sync.h:94:53: error: ‘recursive_mutex’ is not a member of ‘std’
./gen_context
CC       src/libsecp256k1_la-secp256k1.lo
CCLD     libsecp256k1.la
libtool: warning: undefined symbols not allowed in x86_64-w64-mingw32 shared libraries; building static only
/usr/bin/x86_64-w64-mingw32-ar: u' modifier ignored since D' is the default (see U') make[3]: Leaving directory '/home/vijay/dash/src/secp256k1'   CXXLD    libdashconsensus.la /usr/bin/x86_64-w64-mingw32-ar: u' modifier ignored since D' is the default (see U')
CXX      dashd-dashd.o
In file included from ./util.h:22:0,
from ./init.h:11,
from dashd.cpp:16:
./sync.h:94:53: error: ‘recursive_mutex’ is not a member of ‘std’
class CCriticalSection : public AnnotatedMixinstd::recursive_mutex
^~~~~~~~~~~~~~~
./sync.h:94:53: error: ‘recursive_mutex’ is not a member of ‘std’
./sync.h:94:68: error: template argument 1 is invalid
class CCriticalSection : public AnnotatedMixinstd::recursive_mutex
^
./sync.h:103:29: error: ‘mutex’ is not a member of ‘std’
typedef AnnotatedMixinstd::mutex CWaitableCriticalSection;
^~~~~
./sync.h:103:29: error: ‘mutex’ is not a member of ‘std’
./sync.h:103:34: error: template argument 1 is invalid
typedef AnnotatedMixinstd::mutex CWaitableCriticalSection;
^
./sync.h:106:14: error: ‘condition_variable’ in namespace ‘std’ does not name a type
typedef std::condition_variable CConditionVariable;
^~~~~~~~~~~~~~~~~~
./sync.h:109:31: error: ‘mutex’ is not a member of ‘std’
typedef std::unique_lockstd::mutex WaitableLock;
^~~~~
./sync.h:109:31: error: ‘mutex’ is not a member of ‘std’
./sync.h:109:36: error: template argument 1 is invalid
typedef std::unique_lockstd::mutex WaitableLock;
^
./sync.h:197:10: error: ‘condition_variable’ in namespace ‘std’ does not name a type
std::condition_variable condition;
^~~~~~~~~~~~~~~~~~
./sync.h:198:10: error: ‘mutex’ in namespace ‘std’ does not name a type
std::mutex mutex;
^~~~~
./sync.h: In member function ‘void CSemaphore::wait()’:
./sync.h:206:31: error: ‘mutex’ is not a member of ‘std’
std::unique_lockstd::mutex lock(mutex);
^~~~~
./sync.h:206:31: error: ‘mutex’ is not a member of ‘std’
./sync.h:206:36: error: template argument 1 is invalid
std::unique_lockstd::mutex lock(mutex);
^
./sync.h:206:43: error: ‘mutex’ was not declared in this scope
std::unique_lockstd::mutex lock(mutex);
^~~~~
./sync.h:206:43: note: suggested alternative: ‘putenv’
std::unique_lockstd::mutex lock(mutex);
^~~~~
putenv
./sync.h:207:9: error: ‘condition’ was not declared in this scope
condition.wait(lock, & { return value >= 1; });
^~~~~~~~~
./sync.h: In member function ‘bool CSemaphore::try_wait()’:
./sync.h:213:30: error: ‘mutex’ is not a member of ‘std’
std::lock_guardstd::mutex lock(mutex);
^~~~~
./sync.h:213:30: error: ‘mutex’ is not a member of ‘std’
./sync.h:213:35: error: template argument 1 is invalid
std::lock_guardstd::mutex lock(mutex);
^
./sync.h:213:42: error: ‘mutex’ was not declared in this scope
std::lock_guardstd::mutex lock(mutex);
^~~~~
./sync.h:213:42: note: suggested alternative: ‘putenv’
std::lock_guardstd::mutex lock(mutex);
^~~~~
putenv
./sync.h: In member function ‘void CSemaphore::post()’:
./sync.h:223:34: error: ‘mutex’ is not a member of ‘std’
std::lock_guardstd::mutex lock(mutex);
^~~~~
./sync.h:223:34: error: ‘mutex’ is not a member of ‘std’
./sync.h:223:39: error: template argument 1 is invalid
std::lock_guardstd::mutex lock(mutex);
^
./sync.h:223:46: error: ‘mutex’ was not declared in this scope
std::lock_guardstd::mutex lock(mutex);
^~~~~
./sync.h:223:46: note: suggested alternative: ‘putenv’
std::lock_guardstd::mutex lock(mutex);
^~~~~
putenv
./sync.h:226:9: error: ‘condition’ was not declared in this scope
condition.notify_one();
^~~~~~~~~
In file included from /usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/condition_variable:39:0,
from ./sync.h:11,
from ./util.h:22,
from ./init.h:11,
from dashd.cpp:16:
/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/bits/std_mutex.h: In instantiation of ‘void std::unique_lock<_Mutex>::lock() [with _Mutex = CCriticalSection]’:
./sync.h:128:23:   required from here
/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/bits/std_mutex.h:267:17: error: ‘std::unique_lock::mutex_type {aka class CCriticalSection}’ has no member named ‘lock’
_M_device->lock();
~~~~~~~~~^~
/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/bits/std_mutex.h: In instantiation of ‘bool std::unique_lock<_Mutex>::try_lock() [with _Mutex = CCriticalSection]’:
./sync.h:137:23:   required from here
/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/bits/std_mutex.h:281:27: error: ‘std::unique_lock::mutex_type {aka class CCriticalSection}’ has no member named ‘try_lock’
_M_owns = _M_device->try_lock();
~~~~~^~
/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/bits/std_mutex.h: In instantiation of ‘void std::unique_lock<_Mutex>::unlock() [with _Mutex = CCriticalSection]’:
/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/bits/std_mutex.h:232:10:   required from ‘std::unique_lock<_Mutex>::~unique_lock() [with _Mutex = CCriticalSection]’
./sync.h:144:183:   required from here
/usr/lib/gcc/x86_64-w64-mingw32/7.3-win32/include/c++/bits/std_mutex.h:323:17: error: ‘std::unique_lock::mutex_type {aka class CCriticalSection}’ has no member named ‘unlock’
_M_device->unlock();
~~~~~~~^~
Makefile:10515: recipe for target 'dashd-dashd.o' failed
make[2]: *** [dashd-dashd.o] Error 1
make[2]: Leaving directory '/home/vijay/dash/src'
Makefile:12049: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/vijay/dash/src'
Makefile:761: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
What version of Dash Core are you using?
I am trying to build the master version
Acquired the source in the usual way:
git clone https://github.com/dashpay/dash.git
cd dash
Machine specs:

OS: WIndows 10 Version 20H2 (OS Build 19042.1165)
CPU: Intel i5-10210U
RAM: 8 GB
Disk size:1 TB
Disk Type (HD/SDD): HD

Any extra information that might be useful in the debugging process.
This is normally the contents of a debug.log or config.log file. Raw text or a link to a pastebin type site are preferred.

@codablock  @PastaPastaPasta Please can you have a look at it

marking it as closed , Issue got resolved after couple of make clean and make

marking it as closed , Issue got resolved after couple of make clean and make


Established connection failed because connected host has failed to respond.

Describe the bug
ChatCompletion error of "A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond." when I built the go backend using gin and request the local endpoint from the frontend. I am currently in China, using VPN, and am able to access GPT on my browser well. Also, the key should be correct, and the account status is fine, I have tried two accounts, one with gpt4 and credit card, one without, doesn't make a difference.
To Reproduce
The code is below, really, just used the example in README, the code itself should be correct.
// from another place
package types

type RecommendationRequest struct {
	Prompt string `json:"prompt"`
}

// main()
func main() {
	r := gin.Default()
	config := cors.DefaultConfig()
	config.AllowAllOrigins = true                            // Allow all origins
	config.AllowMethods = []string{"GET", "POST"}            // Specify what methods should be allowed
	config.AllowHeaders = []string{"Origin", "Content-Type"} // Specify what headers should be allowed
	r.Use(cors.New(config))
	api := r.Group("/api")
	{
		api.GET("/recommendations", handlers.GetRecommendations)
	}
	r.Run() // listen and serve on <IP_ADDRESS>:8080
}

// heres the handler
func GetRecommendations(c *gin.Context) {
	var request types.RecommendationRequest

	// Append your request with specific instructions
	request.Prompt += " Please provide 9 recommendations in the following format: 'title: movie title, description: movie description and reason it matches my request, link: movie link'."

	client := openai.NewClient("sk-xxxxx")

	resp, err := client.CreateChatCompletion(
		context.Background(),
		openai.ChatCompletionRequest{
			Model: openai.GPT3Dot5Turbo,
			Messages: []openai.ChatCompletionMessage{
				{
					Role:    openai.ChatMessageRoleUser,
					Content: request.Prompt,
				},
			},
		},
	)

	if err != nil {
		fmt.Printf("ChatCompletion error: %v\n", err)
		c.JSON(http.StatusInternalServerError, gin.H{"error": "Error getting recommendation."})
		return
	}

	... // not important, error always caught above
}

Expected behavior
A 200 response, so no error.
Screenshots/Logs
[GIN-debug] Listening and serving HTTP on :8080
ChatCompletion error: Post "https://api.openai.com/v1/chat/completions": dial tcp <IP_ADDRESS>:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
[GIN] 2023/08/04 - 03:53:06 | 500 |    21.052114s |             ::1 | GET      "/api/recommendations"

Environment (please complete the following information):

go-openai version: just ran go get at the day of starting this issue.
Go version: go version go1.20.6 windows/amd64
OpenAI API version: [e.g. v1]](https://api.openai.com/v1/chat/completions)
OS: Windows 11

Additional context
I suspect it might be caused of VPN, but I could access the GPT from my browser with no problem, and no problem going on any website, hence I'm confused. I hope someone who experienced similar case or anyone could give any advice could help me.

If you use ss or v2ray, there will be some problems, unless you force a VPN tunnel for your IDE and operating environment. It is recommended to set the http client proxy as follows:
transport := &http.Transport{
	Proxy: http.ProxyURL(“PROXY_URL”),
}
config.HTTPClient = &http.Client{
	Transport: transport,
	Timeout:   time.Second * 60,
}
config.BaseURL = "OPENAI_API_URL"
client = openai.NewClientWithConfig(config)

I used this 👇 proxy and it worked, didn't use the library tho, look into my repo "movie-ai" if you need more detail.
https://api.openai-proxy.com/v1/chat/completions


NTR: subcellular compartment

We discussed this at the F2F workshop but I don't see any issue created.
I don't have the meeting notes handy, but the general idea was to have biological material entities divided into disjoint chunks at different levels of granularity
atom < molecular entity < macromolecular complex < subcellular compartment < cell < gross anatomical entity
Ideally core classes would be equivalent to existing OBO roots, but the challenge here is GO cellular component doesn't fit into the above scheme:

GO-cc includes cell
GO-cc includes protein complex

(hence the name 'subcellular compartment' rather than 'cell component' for the core class, since we want to avoid confusion with the GO class)
Note that these decisions may be more driven by annotation use case (lumping anything that can be used in a localization annotation into one ontology) rather than design. Within GO it may actually quite useful for us to have a 'subcellular compartment' along the lines of the core one: https://github.com/geneontology/go-ontology/issues/17696

The meeting notes are here: https://docs.google.com/document/d/1P8uMYDqWxJ4Qh6QKD6ZeYqziNTbxsMHuN-s8jn7soEk
We renamed 'cell component' to 'subcellular structure'. My understanding is captured in this paragraph from the notes:

Darren: … having the ability to ‘house’ things - things can be there that aren’t an integral part of that component. There are things inside the nucleus that aren’t necessarily part of the nucleus itself. Chromosomes and ribosomes would be ‘subcellular structures’ but other complexes would not be. Protein complexes would not be because there is no way for something that is not part of the complex to be there. A channel could be a ‘subcellular structure’ because something can be in it that is not an integral part. Darren and Chris M. will work on this location-based definition.

Anyone following this ticket should follow the GO issue and PR:
https://github.com/geneontology/go-ontology/issues/17696
https://github.com/geneontology/go-ontology/pull/17704


[BugFix] keep comments in sql when audit it

Fixes #issue
Clients may use comment to tag sql. So when record audit log, we should keep comment and just just remove redundant spaces, tabs and line separators.
What type of PR is this:

[x] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[x] Yes, this PR will result in a change in behavior.
[ ] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[x] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[ ] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.1
[x] 3.0
[x] 2.5
[ ] 2.4

[BE Incremental Coverage Report]
:heart_eyes: pass : 0 / 0 (0%)

[FE Incremental Coverage Report]
:heart_eyes: pass : 4 / 4 (100.00%)
file detail

path
covered_line
new_line
coverage
not_covered_line_detail

:large_blue_circle:
com/starrocks/common/util/LogUtil.java
3
3
100.00%
[]

:large_blue_circle:
com/starrocks/qe/ConnectProcessor.java
1
1
100.00%
[]

how to handle sql:
select *  -- just test
from t0;

how to handle sql?
select *  -- just test
from t0;

We remain the line sperator at the end of doble dash comment.
else if ((character == '-' && idx != length - 1 && origStmt.charAt(idx + 1) == '-') ||
                    character == '#') {
                // process comment style like '-- comment' or '# comment'
                while (idx < length - 1 && origStmt.charAt(idx) != '\n') {
                    appendChar(sb, origStmt.charAt(idx));
                    ++idx;
                }
                appendChar(sb, '\n');
            }

@Mergifyio backport branch-3.1

@Mergifyio backport branch-3.0

@Mergifyio backport branch-2.5


Update unixbench repository.

LGTM... the next set of changes in UnixBench will include what @meteorfox  did.  There are pull requests there I need to complete and then we can update the version here.
Thanks for doing this.


error while running the makefile train_gpt2 on windows machine.

When running  command makefile train_gpt2 on windows machine.
process_begin: CreateProcess(NULL, uname, ...) failed.
Makefile:13: pipe: No error
The system cannot find the path specified.
Makefile:32: OOPS Compiling without OpenMP support
cc -O3 -Ofast -Wno-unused-result   train_gpt2.c -lm -o train_gpt2
process_begin: CreateProcess(NULL, cc -O3 -Ofast -Wno-unused-result train_gpt2.c -lm -o train_gpt2, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [Makefile:43: train_gpt2] Error 2
PS C:\Users\ADMIN\Desktop\llm.c>

C++ version: g++.exe (GCC) 11.2.0
python version: 3.12.0
Windows 10

hi, bro, my computer is win11,and make.exe does not take effect because of lack of dll.
is there any solutions?


[INFRA] Disable K8s CI image GHA cache

Why are the changes needed?

The GHA cache engine-archives seems frequently to be evicted because of exceeding the project cache capacity(10GiB), and I found the K8s IT job produces large cache objects frequently, we should disable that to avoid missing engine-archives cache frequently.

How was this patch tested?

Monitor GHA after merging.
Was this patch authored or co-authored using generative AI tooling?

No.

The K8s CI has room to improve, will find time to refactor it later.

Thanks, merged to master/1.10/1.9, I will monitor the CI in the next few days.


SCPI ADC Measurement on ADC Ch 8 Causes System Fault

Channels 0, 1, 2 appear to work.  Channels 3+ appear to crash the mcu.
To reproduce:
SYSTem:POWer:STATe 1
ENAble:VOLTage:DC 3,1
MEASure:VOLTage:DC? 3
Causes crash...

Upon further investigation I found,
g_BoardData.AInLatest.Size is 3, so comparison against index 3 (line 81, in BoardData.c) fails and BoardData_Get returns NULL.
Thus pAInLatest (line 46 in SCPIADC.c) in function SCPI_ADCVoltageGet is NULL, so NULL pointer is passed as argument to  ADC_ConvertToVoltage(pAInLatest), which leads to hard fault

Yes, that makes sense.  I also tested and it works fine.
MAX_AIN_DATA_MOD is used to support multiple ADCs (ADC modules).  So, we can support the onboard ADC, and two external ADCs with MAX_AIN_DATA_MOD = 3.  For the Nq1, I think we should be able to set MAX_AIN_DATA_MOD = 1 since we are only using the internal ADC as defined in NQ1BoardConfig.c ln 36.  I'm not sure how best to reconcile the two - it would be nice to have it defined in one location...
MAX_AIN_CHANNEL is used to store all ADC channel data.  For Nq1, we are using 16 channels for user analog input and an additional 8 channels for internal measurements like rail voltages, temperature, etc.  So, this could be reduced to 24 instead of 48.  Again, it would be nice to have these defined in one location if possible.


Add a custom path for pruning

You use "Screenshot.capybara_root" all the time, but in my project screenshots are not in the root of my tests folder.
"capybara_root" method sets capybara_tmp_path = Capybara.save_and_open_page_path || '.', which is either makes me using deprecated "save_and_open_page_path" method or set it it '.'
Is there any chance you can add a support for a custom location I can provide instead of '.' ?

@lokki007 sure, feel free to create a PR if you need this functionality.


Extract mutations to a separate library.

We think that IRM is a good name (LLVM IR Mutation, libIRM).

Won't happen in the near future.


docs(ti): add using & troubleshooting sections

Add Using Embeddings and Troubleshooting sections clarifying issues I had when using TI for the first time.

Updated per @blessedcoolant 's feedback


added quotes from Wikipedia Legal Person def

Can you add an annotation or note please to contextualize what is relevant about the quote?


Update doc with the new API DOM.select(selector).events(eventType)

Hello,
Please find the update of the documentation in accordance of the new API (see https://github.com/cyclejs/cycle-dom/releases/tag/v5.1.0).
Hope this helps,
Cédric.

Sorry, fixed the missing onee

Thanks for the PR

You're welcome!