#5858 Ray normalise origin vector after set methods

create a new pr after closing https://github.com/libgdx/libgdx/pull/5859 with push force on my fork.
So :

Add javadocs for direction vector must be normalized
public Ray set (Vector3 origin, Vector3 direction)

Add nor on direction vector3 in method public Ray set (float x, float y, float z, float dx, float dy, float dz)

thx for reading.

what i suggested was to remove normalization and update javadoc at all place where user code can set direction.
note that it's a breaking change, CHANGES.md should be updated as well.
It was a suggestion for discussion, there are pros and cons with this change.

I agree with your suggestion except for set (float x, float y, float z, float dx, float dy, float dz)
cause dx, dy ,dz can easly give an bad direction vector.
changes.md updated too.
The only cons i see to don't normalize vector direction at each set is the error risk for novice user.
gdx users aren't automatically familiar with math and vector normalization.
Normalize each time include a loss of performance.
Its possibly to duplicate method with nor() or not , but it is really usefull  ?
Thanks for your feedback

about CHANGES.md, breaking change is normalization removal in constructor, not added normalization .
the only cons i see is the breaking change actually, but i'm in favor to it.
i'm not fan of half normalization : either normalize everywhere or normalize nowhere. I think we can assume libgdx users knows what are unit vectors and normalization.
I let maintainers state on this subject now.
Thanks for your contribution BTW :-)

I think better than changing the existing method which might result in performance loss for developers that already normalized a vector, how about adding 1-2 additional methods setAndNormalize(...) instead? Maybe there is a better method name than what I suggested.

Imo, constructor equivalent methods should produce the same values as the constructor. Is there a specific reason why constructor is normalized and set is not?

@PokeMMO is for performance, if you re-use same direction vector on public Ray set (Vector3 origin, Vector3 direction) its useless to normalise again the vector.
I think its needed on set(float x,y....) cause its hard to be sure that 3 float give a normalised vector.

@noblemaster why not create more method, but its really efficient ?
I  think if nobody got same vision, this pr is bad.

Having the normalization on set(Vector2) but not on set(float, float) would probably lead to a lot of confusion. (This issue has been opened because constructor and setter have different behavior!)
I personally think that either all methods should normalize or that none should normalize.  A simple struct if you will, with no behavior.
Normalizing everywhere - we treat Ray as a representation of a mathematical ray. If someone wants to set the direction without normalization, the direction variable is public. This leads to no confusion as it is obvious that setting a random Vector3 will not normalize it.

I initially preferred the first variant, because I like to keep things simple. But after writing this out, I like the second option better, as it has a smaller chance to break existing code and confuse people. It also follows the libGDX pattern of "methods are high level API which does what you expect, fields are low level API, don't touch unless you know what you are doing" (for example Array behaves this way).

I think we all agree that the current implementation is inconsistent. Constructor and set(...) methods all normalizing or not.
I think @Darkyenus's solution (1) makes probably the most sense. We do not normalization by default. In addition we should add another constructor and additional methods e.g. setNormalize(...) or so that do the work for people that don't want to calculate it themselves. Also, obviously the documentation should be updated.

re !
I apply your suggestion .
So all base method and constructor dont normalize the direction vector.
And one new contructor public Ray (Vector3 origin, Vector3 direction, boolean normalizeDirection)
And new methods setAndNormalizeDirection.
Changeslog files updated too.
Thanks for your feedback. and check it too 👍

Thanks for the update. That looks fine! However, I would definitely change this.direction.set(direction.nor()) into direction.nor(). Calling set(...) isn't needed.
Other than that, the only thing is probably the method name setAndNormalizeDirection(...). I somewhat suggested it and it's rather long. We can commit it this way. Otherwise, maybe someone has a better suggestion before we finalize things?

ok done !
for direction.nor()) into direction.nor() my bad, i dont go on final method to see my error !
thx for review

That should settle it. Thanks for the hard works :)

Sorry to comment too late but shouldn't the API enforce the direction normalization? The class is supposed to encapsulate a unit length direction ray (and is treated as such in other classes such as Intersector).
I agree both constructor and setters should normalize, but why is it an option now? Performance wise, if an already normalized Vector3 is provided, it won't evaluate the sqrt, what do you mean by "Normalize each time include a loss of performance." @fabiitch? Do you mean if you instantiate it and then set it again with same direction passed in the constructor?

i think this change both over complexify API and breaks backward compatibility. I have some doubts about javadoc wording and method names as well.
I'm in favor to Darkyenus "tradeoff" solution : normalize in all methods and let advanced users setting public field to bypass unnecessary normalization.
@noblemaster : commits wasn't squashed and makes history hard to read (is it too late to revert?)

@obigu

Do you mean if you instantiate it and then set it again with same direction passed in the constructor?

yes, the nor() operation was applied each time, if you give a normalized vector on set() .its a little loss of performance.
The original version don't apply nor() on set() methods. But it was the issues #5858.
I totally agree with you, Ray class should be autonom. Let advanced user set by public field is a good solution. (its a rollback to first version  of this pr^^).
at least as @mgsx-dev said, revert it !

@fabiitch If you pass a normalized version to Vector3#nor() it won't execute the sqrt (please check implementation https://libgdx.badlogicgames.com/ci/nightlies/docs/api/com/badlogic/gdx/math/Vector3.html) so performance wise it won't make a difference.
I agree we should revert it to just make the setters to apply normalization.

yes but it calcule lenght of vector and check size. Its not a lot, but useless if v3 is already normalized.

yes but it calcule lenght of vector and check size. Its not a lot, but useless if v3 is already normalized.

Useless optimization, len2 is immediate.


Issue at Fault simulation step

hi @donn
i am just trying out the usage steps given in wiki, but i am facing this issue as shown in the image, any idea how to fix it and move ahead?

i am using ubuntu 20.04.5
and have installed all packages too.
please do help me resolve this error.
thank you!

issue has been fixed, when removed iverilog and reinstalled.


Non lfs picknik_accessories

Instead of telling users how git doesn't support subtrees and LFS, and how to work around it, we can just stop using LFS for this repo.
To test:

Delete moveit_pro_example_ws
Clone it

git clone -b non-lfs-name https://github.com/PickNikRobotics/picknik_accessories_non_lfs.git

Switch workspaces using moveit_pro configure
moviet_pro build
moveit_pro run -c lab_sim

Resolves #9504

I don't know enough about what picknik_accessories is, how big the file size is, and what the repercussion is of removing LFS. Can someone else review?


[ISSUE] Error creating Databricks workspace using terraform in AWS Databricks

Description
A clear and concise description of what the bug is.
Error creating Databricks workspace using terraform in AWS Databricks.
Error: cannot create mws workspaces: unexpected error handling request: invalid character 'M' looking for beginning of value. This is likely a bug in the Databricks SDK for Go or the underlying REST API.
Reproduction

resource "databricks_mws_workspaces" "workspace" {

account_id               = (sensitive value)
aws_region               = "us-east-1"
cloud                    = (known after apply)
creation_time            = (known after apply)
credentials_id           = xxxxxx
id                       = (known after apply)
is_no_public_ip_enabled  = true
network_id               = "b6afe7bb-69f1-42be-b2a6-1ecc5d2b3d97/cc4ef48a-db4b-48ce-802b-372d81adae6e"
pricing_tier             = (known after apply)
storage_configuration_id = "b6afe7bb-69f1-42be-b2a6-1ecc5d2b3d97/d7273a90-c17d-416d-b66f-e83b0e6e7e18"
workspace_id             = (known after apply)
workspace_name           = "databricks-staging"
workspace_status         = (known after apply)
workspace_status_message = (known after apply)
workspace_url            = (known after apply)
}

Expected behavior
The Databricks workspace should be created
Is it a regression?
To my knowledge, this has never worked before, and other users are also reporting the same issue.
Debug Logs
POST /api/2.0/accounts/xxxxxxxxx/workspaces

Host:
Accept: application/json
Authorization: REDACTED
Content-Type: application/json
User-Agent: databricks-tf-provider/1.38.0 databricks-sdk-go/0.33.0 go/1.21.7 os/linux terraform/1.4.2 resource/mws_workspaces auth/oauth-m2m cicd/github
{
"account_id": "xxxxxxx",
"aws_region": "us-east-1",
"credentials_id": "xxxxxx",
"is_no_public_ip_enabled": true,
"network_id": "b6afe7bb-69f1-42be-b2a6-1ecc5d2b3d97/cc4ef48a-db4b-48ce-802b-372d81adae6e",
"storage_configuration_id": "b6afe7bb-69f1-42be-b2a6-1ecc5d2b3d97/d7273a90-c17d-416d-b66f-e83b0e6e7e18",
"workspace_name": "databricks-staging"
}
< HTTP/2.0 400 Bad Request
< * Content-Type: text/plain; charset=utf-8
< * Date: Tue, 03 Sep 2024 22:50:44 GMT
< * Server: databricks
< * Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
< * Vary: Accept-Encoding
< * X-Content-Type-Options: nosniff
< * X-Request-Id: 2e402f44-4cd9-4184-a5db-3f6bb70b6d92
< MALFORMED_REQUEST: Cannot parse request body: {"account_id":"xxxxxxxx","workspace_name":"databricks-staging","aws_region":"us-east-1","credentials_id":"xxxxxxx","storage_configuration_id":"b6afe7bb-69f1-42be-b2a6-1ecc5d2b3d97/d7273a90-c17d-416d-b66f-e83b0e6e7e18","network_id":"b6afe7bb-69f1-42be-b2a6-1ecc5d2b3d97/cc4ef48a-db4b-48ce-802b-372d81adae6e","is_no_public_ip_enabled":true}

Other Information

OS: macOS
Version: 14.6.1

I experienced the same issue. It was caused by retrieving wrong mws credentials id from the databricks_mws_credentials resource.
The databricks_mws_credentials has 2 ID attributes: id and credentials_id which are easily mixed up. Check if you are using the correct one in the creation of the workspace.
Example from the documentation:
resource "databricks_mws_workspaces" "this" {
  provider       = databricks.mws
  account_id     = var.databricks_account_id
  aws_region     = var.aws_region
  workspace_name = local.prefix

  credentials_id           = databricks_mws_credentials.this.credentials_id
  storage_configuration_id = databricks_mws_storage_configurations.this.storage_configuration_id
  network_id               = databricks_mws_networks.this.network_id

  token {
    comment = "Terraform"
  }
}

or if you did like me and created the databricks_mws_credentials in a submodule, check if you are outputing it correctly:
output "databricks_mws_credentials_id" {
  value = databricks_mws_credentials.this.credentials_id
}

Thank you @samuelberntzen. That resolved my issue!


'scanHexInt32' was deprecated in macOS 10.15

Describe the bug
I get these warning during flutter build macos
/Users/xxxxxxxxx/.puro/shared/pub_cache/hosted/pub.dev/pdfx-2.6.0/macos/Classes/Hooks.swift:31:30: warning: 'scanHexInt32' was deprecated in macOS 10.15
Scanner(string: hex).scanHexInt32(&int)
^
/Users/xxxxxxxxx/.puro/shared/pub_cache/hosted/pub.dev/pdfx-2.6.0/macos/Classes/Hooks.swift:31:30: warning: 'scanHexInt32' was deprecated in macOS 10.15
Scanner(string: hex).scanHexInt32(&int)
^
/Users/xxxxxxxxx/.puro/shared/pub_cache/hosted/pub.dev/pdfx-2.6.0/macos/Classes/messages.m:598:47: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
NSObject *PdfxApiGetCodec() {
^
void
1 warning generated.
/Users/xxxxxxxxx/.puro/shared/pub_cache/hosted/pub.dev/pdfx-2.6.0/macos/Classes/messages.m:598:47: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes]
NSObject *PdfxApiGetCodec() {
^
void
this is my flutter doctor:
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.0, on macOS 14.5 23F79 darwin-x64, locale it-IT)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.0.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.3)
[✓] VS Code (version 1.92.2)
[✓] VS Code (version 1.84.2)
[✓] Connected device (2 available)
[✓] Network resources
I use   pdfrx: 1.0.82
To Reproduce
Steps to reproduce the behavior:

Run flutter build macos

Expected behavior
No warnings i read somewhere that the HexInt32 should be changed with the 64 version

Is there any timeline for solving this?


Add project to Code Shelter

Maintenance on this project seems to have slowed down a bit. If you need some help, please consider adding the project to Code Shelter so volunteers can help maintain it.
Thanks!

On a small and trivial project ts like django-fsm, usual volunteer  "help" requires more efforts and time for improvements than just do the things.

And generally django-fsm looks complete. There is nothing to add, and everything works like expected.
If someone would like to go through the tickets and write answers on user questions + no permission from my side required


Thermosolar IV overreporting

Mod source
Factorio Mod Portal
Operating system

=Windows 10

What kind of issue is this?

[ ] Compatibility
[ ] Locale (names, descriptions, unknown keys)
[ ] Graphical
[ ] Crash
[ ] Progression
[X] Balance
[ ] Pypostprocessing failure
[ ] Other

What is the problem?

As visible in this ingame image, the interface for thermosolar 4 says one heliostat provides 250 MW, and with 19, this exemple mini tower should provide 4.7 GW. Reality disagrees somewhat, with total power generation being a 4rth of that (which is on par with what the codex says, 119 GW peak total for a full tower).
So there's a x4 somewhere.
Steps to reproduce
No response
Additional context
No response
Log file
No response

Fixed. Thanks for the report.

Reopening.

Fixed by re-placing the megastructure.


Sqlite: Translate DateTime.Millisecond

Fixes #10523.

Get milliseconds by using substr and casting them to INTEGER

Merged to release/2.1 branch via 3c12434e20dd34bf12d63e6dd578e37ad532a4e4

@raol - Thank you for contribution.


Replace unidecode with text-unidecode.

This PR addresses "Unidecode has a problematic OSS license #1508".

Hi @jonatankawalek :wave:,
Thanks for the PR i agree with the license mismatch, but text-unidecode seems not to get any updates anymore. Maybe https://github.com/anyascii/anyascii is a better alternative wdyt ?

Hi @felixdittrich92,
You're right - text-unidecode seems stale. Anyascii looks to be a better choice. Let me replace it with that.

@jonatankawalek
Please a anyascii.* to
pyprojet.toml L147
[[tool.mypy.overrides]]
module = [

And run make style afterwards to fix formating issues :)
You can use make quality to check that all typings are correct from your code changes (If there is listed something you haven't changed ignore it)

@felixdittrich92
Ran make style and fixed flags for my code chages (there were other style issues too, but not to do with my changes).
Make quality doesn't flag anythin for my code changes


WIP backend streaming

I've been investigating how we might implement streaming for this datasource plugin, and it's become a bit larger/more confusing than I expected so sharing a not-quite-working WIP for now. (feel free to ignore git commits, I tried a few different methods to getting here and most of them are not useful)
Here's a flow chart of how I'm thinking this could work:

I still need to learn more about the relationship between Grafana Live and streaming, I mostly based this work off of what I've seen us do with twinmaker, but I also took a look at https://github.com/grafana/grafana-plugin-examples/tree/main/examples/datasource-streaming-backend-websocket
In it's current state I have more than a few bugs that I'm trying to track down (for example when I switch to streaming, I get the wrong data back sometimes?) So if you see where I've gone wrong, feedback is very appreciated!
I also wonder at a higher level, if any of this is necessary, it looks like we have attempted to implement streaming on the frontend in a way? and I while I do think that communication over websockets is generally faster than making http requests repeatedly, but I wonder if the problems users with large amounts of data are seeing will be solved by this? Interested if others have thoughts with the overall approach.

I'm interested in learning more about this approach, if you can help me understand the followings 🙏

how does streaming help with performance?
would streaming improve other quality of the plugin? e.g. cost saving as a side product of the storing SiteWise responses


Add missing dependencies

:tada: This PR is included in version 1.1.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


SEPA: pay

Implemented the operation pay (pending-debit) for SEPA.

introduced entity Mandate
PaymentMethodConfig: added specific properties so that we can configure creditor ID for SEPA

Example includes:

IBAN only
IBAN & BIC

Questions:
PaymentMethodConfig contains a method addSpecificProperty(string, string) at the moment.
Another possibility would be: addSpecificProperties(array)

Coverage remained the same at 100.0% when pulling 3dc8279c7aa7649333734a03200bf00e17fa8338 on reka:sepa-pay into 44388a22c601c3fd780fd28739d2a5a5fed3c5dc on wirecard:59-sepa.

Coverage remained the same at 100.0% when pulling ae3f131fdb97e9a0c35a8f49b48ac9654baf474c on reka:sepa-pay into 44388a22c601c3fd780fd28739d2a5a5fed3c5dc on wirecard:59-sepa.

Coverage remained the same at 100.0% when pulling 98317b0306f9f90898641437f7a41afabf06641a on reka:sepa-pay into 44388a22c601c3fd780fd28739d2a5a5fed3c5dc on wirecard:59-sepa.


feat: spotify audio features loader

Add fetching audio features using spotify api

Hey @dqbd, Could you have a look at this one? lmk anything you want to add.

@jacoblee93 Could you have a look at this one :)

@munkhorgil going to close due to merge conflicts. If you'd still like to get this merged in, please open off of an up-to-date main branch, and I'll review. Thank you!


update NodeJS version used in CI

As the version we request is already deprecated:

The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (development@6c7d5b6). Click here to learn what that means.

:exclamation: Current head 3f9a58a differs from pull request most recent head 2f491c9. Consider uploading reports for the commit 2f491c9 to get more accurate results

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@              Coverage Diff               @@
##             development     #533   +/-   ##
==============================================
  Coverage               ?   53.19%
==============================================
  Files                  ?      188
  Lines                  ?     4824
  Branches               ?      793
==============================================
  Hits                   ?     2566
  Misses                 ?     2020
  Partials               ?      238

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

cc @kanej for review.


Error: disk is full

Keybase GUI Version: 1.0.15-20160412203450+95be805
I can't copy a 61 KB PDF into my public folder. I consistently receive the message The operation can't be completed because the disk is full disconcertingly leaving a 0 KB file.  Any tricks?

Hmm, we don't actually enforce quotas right now, so this may be a local issue.  but I've never seen it before.  Would you mind sharing your logs with keybase log send, and reporting the log ID here, so we can take a look?

my log id: c470650b9bc238d9ec8f421c

The only error I can find in your log is a timeout error when your client was performing a ton of writes, which is currently expected under certain bulk write/copy conditions.  That would indeed leave a 0-byte file.  My best guess is that whatever program you were using for copying files (forklift?) misintepreted the error code we sent (for timeouts, we send an "I/O error" error code, usually) and showed you a misleading error message.
Until we get around to fixing bulk write performance, you should just be able to retry failures like that.  Sorry for the inconvenience.

It was actually Finder that produced that message. I also attempted it with both Forklift and their GUI for rsync with different errors regarding timeouts. I'm literally trying to write a single 61 KB PDF 😓

It's still happening consistently?

It was as of this morning but I just attempted successfully. I deleted the empty ones first and copied each of two one at a time in Finder.

Hmm, this morning in your logs I'm seeing a lot of internet connectivity errors trying to reach our servers.  As far as I know we didn't have downtime.  I wonder if the other failures were just general network crankiness?

That was my feel. I'd be beyond glad to provide any information possible! I love the service except for that sticking point.

Well if you happen to know exactly what time (by your computer's local clock) you encountered each of the various errors, that would be helpful.  You can also check the OSX notification center to see what Keybase popup notifications you received.

Checking Console but I've cleared NC since then.

Ok, well keep an eye on it please.  If it happens again let us know and send in new logs.  But yeah, timeouts during bad network conditions or during bulk write/copies are known and will be fixed someday.  Sorry for the frustration in the meantime.

Version 1.0.20 has architectural changes that should greatly improve the large write experience.  If you're still seeing problems, please open a new issue.


Generation of changelog.md

I'd like this feature as well, it would be nice if PSR could generate CHANGELOG.md on its own every version. I'm quite liking this library, good job!

I would also like to add support to actually autogenerate the changelog.md file and I think the best option we have is to add a flag for that. What do you think?
I think this could be a good command:
$ # Output the changes to stdout:
$ semantic-release changelog --format=markdown --output=stdout
$ # Output the changes to the changelog file:
$ semantic-release changelog --format=markdown --output=file

As a first step, I think we should make it possible to get the output from semantic-release changelog in a markdown format.

I am not sure what you mean by this. The output is currently valid markdown.

As a first step, I think we should make it possible to get the output from semantic-release changelog in a markdown format.

I am not sure what you mean by this. The output is currently valid markdown.

I realize that I was wrong about this. After some research I realize that it's github flavored markdown I'm asking for.
But what I don't understand is why there are two different "generate changelog"-functions in the package. When running semantic-release publish a different markdown format is used compared to the output from the command semantic-release changelog.

If I'm not mistaken, it can currently generate the changelog now, right?
That said, it would be nice to be able to customize the format a bit.
I like the format from Node semantic-release / conventional-changelog, so I build ours this way:
npx conventional-changelog -p angular -i CHANGELOG.md -s -r 0
There's no plugin arch or way to trigger a shell command on successful release with this project, right?

I use PSR as Github action, and I'm also interested in this feature. Currently, I run another action for that in the same workflow, however it means I need to either run it before or after, which are both suboptimal:

If I run the changelog action before PSR, I don't know the new version yet.
If I run the changelog action after PSR, the changelog.md included in the versioned documentation for the release made by PSR isn't up to date

Ideally I'd like to update the changelog file after I knowing the new version, but before tagging the new release. That's my use case, wondering if others share the same? Is it the main use case?
Right now, the steps are:

Check if a new version is required, if not, stop here
Set the new version
Commit
Tag the new version
Push changes
Push tags
Build dists
Publish to PyPI
Create release with changelog

So we get the changelog content at step 9 but we would need to update the changelog file between steps 1 and 2.
Also step 1, 2 and 3 are all happening in the version() command, I think it would make sense to break this up to achieve this.
Do people agree with the suggested approach? Is there some aspects that I'm missing?
I've started a draft PR #266 for that, but still a long way to go.

@browniebroke that sums up my problem pretty well too. We ended up taking the approach where we publish off the tag that’s cut, so we don’t have the right changelog in the release.
Not a dealbreaker for our internal use, but still not ideal.


TextInput is not displaying the value react native

Hi in my componentWillMount i set my states like this
componentWillMount(){
this.timeSheetData().then((timeSheetResponse)=>{
this.setState({comments:timeSheetResponse.comments});
this.setState({spentHours:parseInt(timeSheetResponse.hours)});
alert(this.state.spentHours);
});
});
In my view
I have the TextInput like this. I can't display the value on the TextInput but
i can display the value on Text i don't know why it's happening
<TextInput onChangeText={(spentHours) =>this.setState({spentHours})}
value={this.state.spentHours} />

Hey @vikiesakki
This is unrelated to your question but generally you would not do two setStates right in a row like that... you can combine them
this.setState({     comments: timeSheetResponse.comments,     spentHours: parseInt(timeSheetResponse.hours) });
To your actual question: this type of question is generally suited better on Stack Overflow. The issue tracker here is meant to track bugs within React Native which I am going to guess this particular issue is not a bug. I would recommend posting this over on Stack Overflow. When you do I would recommend giving more code in the example as that will help get you a solution.
Closing this since this isn't a bug in React Native

@facebook-github-bot stack-overflow

@vikiesakki Please use Stack Overflow for questions like these as @rmevans9 mentioned earlier.


Update create_grid_input.py

TypeError in create_grid_input.py
Description of the Issue
When running the script, the following error occurs:
File "/Users/i_manav.gupta/VGT_V4/VGT/object_detection/create_grid_input.py", line 215, in <module>
    save_pkl_file(grid, args.output, f"page_{page}", page, args.model)
TypeError: save_pkl_file() takes from 3 to 4 positional arguments but 5 were given

This error suggests that the save_pkl_file() function is being called with more arguments than it can accept.
Proposed Solution
Update the save_pkl_file() function in VGT/object_detection/create_grid_input.py to accept the correct number of arguments:
def save_pkl_file(grid, output_dir, filename, model):
    os.makedirs(output_dir, exist_ok=True)
    if model == 'doclaynet':
        with open(os.path.join(output_dir, f"{filename}.pkl"), 'wb') as f:
            pickle.dump(grid, f)
    else:
        with open(os.path.join(output_dir, f"{filename}.pdf.pkl"), 'wb') as f:
            pickle.dump(grid, f)

Also, update the function call to match the new signature:
save_pkl_file(grid, args.output, f"page_{page}", args.model)

Steps to Reproduce

Navigate to the VGT/object_detection/ directory
Run the create_grid_input.py script
Observe the TypeError

Expected Behavior
The script should run without errors and save the pickle file as intended.
Additional Context
This issue appears to be caused by a mismatch between the function definition and its usage. The proposed solution adjusts both to ensure they are consistent.

 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.You have signed the CLA already but the status is still pending? Let us recheck it.


Allow null TextEditorComponent::domNode during visibility check

...and use atom.assert to verify that the constructor was run before the exception.
Ref.: #8762
/cc: @nathansobo @izuzak

Thanks for tackling this, @as-cii :zap:
In https://github.com/atom/atom/issues/8762#issuecomment-142209322 you said:

A package is setting the variable to null. This seems a bit unlikely, though.

Would it make sense to try and confirm or refute that theory as well (if you still think that's a possibility)? I'm not sure, but just wondering if it's possible to add another assert which would catch @domNode being set to null (e.g. would it be possible to wrap it somehow)?

Thanks for the feedback! :sparkles:
I still feel like a package is not arbitrarily setting ::domNode to null, but the assertion code is quite straightforward so the tradeoff seems reasonable. :+1:
Please, have a last :eyes: and :ship: at will. Thanks!

Thanks!


Scripts: move masternode.sh to separate repository

Masternode install / update script is now maintained in it's own repository at: https://github.com/velescore/veles-installer

Need to rebase first.


Advanced filtering limitation for some data.claims properties

In the document is missing (in the limitations section) a limitation of the advanced filtering for some properties of the data.claims object.
There is no way to filter for some claims properties where their name is represented by JWT specification, for instance:
we can not filtered it based on the emailaddress, name, etc., the reason is the name of the properties, which is a uri format, for instance:
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
Question:
Is there some undocumented workaround to use these properties in the advanced filtering or it will be fixed in the next version?
Thanks
Roman

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 1b572f63-312f-4567-5f06-d09bcccf303e
Version Independent ID: df817c5f-24e4-bdc7-511c-141d07a53d15
Content: Event filtering for Azure Event Grid
Content Source: articles/event-grid/event-filtering.md
Service: event-grid
GitHub Login: @spelluru
Microsoft Alias: spelluru

Hi @romankiss Thanks for reaching out. We will review and update as appropriate.

@spelluru Any inputs in this ?

@banisadr - could you please take a look at it when you get a chance? Thanks

@banisadr Just following up again in case missed the previous communication.

@romankiss I have assigned this to content author for further review and update as appropriate.

Oh, interesting question @romankiss, thanks for bringing it up. I actually don't know if we have a way of doing this at the moment. Let me get back to you shortly.

@romankiss unfortunately we do not have an escape character built into key definitions for advanced filters and barring that, this is not possible today. I've added it to our backlog for consideration during future improvements of filtering.
So that I can include it, are there any other details of your use case you can share and what is being blocked from a functional standpoint?

Thanks Bahram,

have a look at the following https://stackoverflow.com/questions/60611974/azure-event-grid-resource-write-success-filter-by-email-address

Email based filtering would be more accurate than that of name based filter. It would be great if there is a way to get this implemented.

@ajomathew what do you mean by that? Is there a technical difference in what string ==<EMAIL_ADDRESS>and email ==<EMAIL_ADDRESS>accomplishes?

@banisadr Sorry for the confusion, it would be great to have a filter work with email address.
Right now only
data.claims.http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress data.claims.http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
has email address as a value. These notations is not working with filter.

As @banisadr mentioned, this request has been added to the backlog.
#please-close

As @banisadr mentioned, this request has been added to the backlog.
#please-close


Fix: Implement Web Api protection

Current implementation doesn't provide authentication on API.
Only the frontend is authenticated.
Should implement also API Authorization based on Bearer token that should be provided by the WebAssembly

Web Api protection is blocked since there is an issue on dependent package.
See: https://github.com/dotnet/aspnetcore/issues/39311

See on https://www.nuget.org/packages/Microsoft.AspNetCore.Components.WebAssembly.Authentication/ when the package is available


Cannot find module 'vpk'

I am having Cannot find module 'vpk' error.
I also don't know how to set up to work. Can anyone help me?

This is very generic, did you npm install?

@iDefineHD
I installed it.

C:\Users\1\Desktop\node-csgo-cdn-master\index.js
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:957:15)
at Function.Module._load (internal/modules/cjs/loader.js:840:27)
at Module.require (internal/modules/cjs/loader.js:1019:19)
at require (internal/modules/cjs/helpers.js:77:18)
at Object. (C:\Users\1\Desktop\node-csgo-cdn-master\index.js:4:13)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
at Module.load (internal/modules/cjs/loader.js:977:32)
at Function.Module._load (internal/modules/cjs/loader.js:877:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:74:12)
at internal/main/run_main_module.js:18:47 {
code: 'MODULE_NOT_FOUND',
requireStack: [ 'C:\Users\1\Desktop\node-csgo-cdn-master\index.js' ]
}
This is the information I received.

This is likely user error. You'll want to npm install this (add as a dependency to your package.json).

This is likely user error. You'll want to npm install this (add as a dependency to your package.json).


useKeyboardAnimation doesn't work on Samsung Galaxy Note 20

Describe the bug
I suppose the keyboard height values aren't exposed to the hook correctly on Samsung Galaxy Note 20. Something's probably wrong with keyboard height events there
Repo for reproducing
Simply use the example app from this repo - the key is running the app on a Samsung Galaxy Note 20.
Expected behavior
Keyboard height values should be correctly exposed to the useKeyboardAnimation hook on Samsung Galaxy Note 20
Screenshots
 Under the keyboard - there are two inputs. The keyboard height values are being correctly returned for other Samsung Galaxy devices, like the Galaxy S21. It's the Galaxy Note 20 that is problematic.
Smartphone (please complete the following information):

Desktop OS: MacOS Ventura
Device: Samsung Galaxy Note 20
OS: Android 10 & Android 12
JS engine Hermes
Library version Latest

Additional context:
It seems its something specific to Galaxy Note 20 (since it works on other Samsung devices), but I'm not sure what that would be.

Hi @fobos531
It's really interesting why it doesn't work on Galaxy Note 20 🤔
Anyway, I will try to reproduce the problem using Samsung Remote Test Lab - I don't have a physical device, so I have to rely only on it.
Hopefully it will be reproducible there and I can figure out what's the problem.
If you could reproduce it on any simulators (Android Studio/Genymotion) - let me know :)

Hey, thank you very much for looking into it! Yeah, unfortunately I also don't have this device so I had to rely on Browserstack's service to reproduce this bug - but if there's anything else I can do, let me know, I'm happy to help!

@fobos531 never heard about Browserstack🤔 Is it publicly available (i. e. I can sign up and get a remote device for testing?). And if yes - is it free?

@fobos531 never heard about Browserstack🤔 Is it publicly available (i. e. I can sign up and get a remote device for testing?). And if yes - is it free?

Their remote device testing service is called App Live. Unfortunately it doesn't looks there is a fully free plan: https://www.browserstack.com/accounts/subscriptions?product=app-live

Hi @fobos531
Just letting you know, that I've tested example app on Note 20 (Android 11) and it works good:
https://user-images.githubusercontent.com/22820318/185419741-ee6c16b5-8946-4115-9c70-61ee5974e36b.mov
I know, that you've tested it on Android 10 & 12, so it may be the issue. Anyway I will try to catch a time point where more devices will be available (and hopefully I can reproduce the problem) 🤞

Note 20 (with Android 10/12) is still not available so I decided to test it on Note 20 Ultra (Android 12) - still works good:
https://user-images.githubusercontent.com/22820318/185568361-83c5bd33-a6c7-4621-ae63-a048e6573bd2.mov

@fobos531 just tested it on Note20 Android 12 - still, everything works fine 🤷♂
https://user-images.githubusercontent.com/22820318/186109058-245fc79e-7e8d-475f-8163-9725ae5a1ff6.mov
I ran app from main branch (it uses RN 0.69). Would you mind to run example app from main branch on your device?
Because I can not reproduce the issue and I don't understand where the problem is 😔

Hmm, if it works fine for you, maybe it's something related to my setup - I'll hopefully check it out when I have some time to do so, I'm currently swamped with work. Until then, I'll close this issue. Once again, thank you for the effort put into this issue! 🙌


Transcription factor

Hi,
Thank you for your excellent work. In Figure 2 (E), you mentioned that in this classification heatmap, the columns annotate the five different transcription factor pairs used to generate each iN profile. My question is, how did you define these five transcription factor pairs? Could you please elaborate on that?
Thanks

The columns that are referred to in the caption of Fig 2E of PMID: 31377170 are the broad groups of columns indicated by the color band at the top of the heatmap. Each group of columns or cells, was converted to an iN with a different set of TFs, as indicated by the legend, for example the first group of cells was induced with Ascl2 and Nr4a2. These pairs of TFs were identified and experimentally tested as described in PMID: 29743677. Thank you.

Thanks for your clarification.


Adding specific script for IE legacy versions

Adding specific script for IE legacy versions which allows us to remove legacy code for scripts.
Additions

Adding specific script for IE legacy versions.

Removals

Removed conditional class-list check from various files.

Testing

Browse site on IE9 virtual machine.

Review

@anselmbradford
@KimberlyMunoz
@jimmynotjim

Notes

Wasn't sure if other scripts should be included in the legacy build.

Checklist

[ ] Changes are limited to a single goal (no scope creep)
[ ] Code can be automatically merged (no conflicts)
[ ] Code follows the standards laid out in the front end playbook
[ ] Passes all existing automated tests
[ ] New functions include new tests
[ ] New functions are documented (with a description, list of inputs, and expected output)
[ ] Placeholder code is flagged
[ ] Visually tested in supported browsers and devices
[ ] Project documentation has been updated (including the "Unreleased" section of the CHANGELOG)

Looks good!! :+1:
At some point we may want to isolate the tasks so that they fully work independently. So like spin out the modernizr build into its own task and have scripts:modern and scripts:ie both call it. It would have to handle not running the modernizr build twice though so that it runs once if each of the following tasks are run: scripts, scripts:modern, and scripts:ie.

:+1:


Chart do not update

When I change the datasets  send to Chartjs.vue, the Chart do not refresh.
It run the this.chart.update() line but that do nothing.
Thanks.

Need more details. Thanks.

I'm getting this problem when I'm using vuex to store the data and try to gat by this way:
computed: {
labels () {
return this.$store.state.data.locations.map(it => it.city)
},
data () {
return this.$store.state.data.locations.map(it => it.qty)
},
chartData () {
return {
labels: this.labels,
datasets: [{
data: this.data,
backgroundColor: [
'#F44336',
'#3F51B5',
'#4CAF50',
'#FF9800',
'#9E9E9E',
'#795548',
'#607D8B',
'#01579B'
]
}]
}
After mounted, the chart does not change when the store changes.

@danilo-drs
Well chart.js does not recognize changes itself. So if data changes, you have to add a watcher or event and update the chart instance yourself.
But it's important to notice, that chart.update() only works if data is changed. If you add a new dataset you have to create a new instance.

@asakurayoh but how can I call the method without any "chart" instance?

this issue is fixed. Now you can simply bind the data/options to chartjs from parent component.
Thanks!

I'm still experiencing this issue.


[BUG] Doing an upgrade from 1.8.4 to 1.10.1 breaks database flow

Describe the bug
We were running 1.8.4 and upgraded to 1.10.1 today. After doing so, new incidents can be created, but users cannot claim roles or resolve the incident. The following error occurs:
Column) column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n[SQL: SELECT incidents.incident_id AS incidents_incident_id, incidents.channel_id AS incidents_channel_id, incidents.channel_name AS incidents_channel_name, incidents.status AS incidents_status, incidents.severity AS incidents_severity, incidents.bp_message_ts AS incidents_bp_message_ts, incidents.dig_message_ts AS incidents_dig_message_ts, incidents.sp_message_ts AS incidents_sp_message_ts, incidents.sp_incident_id AS incidents_sp_incident_id, incidents.sp_incident_data AS incidents_sp_incident_data, incidents.created_at AS incidents_created_at, incidents.updated_at AS incidents_updated_at, incidents.last_update_sent AS incidents_last_update_sent, incidents.tags AS incidents_tags, incidents.roles AS incidents_roles, incidents.postmortem AS incidents_postmortem, incidents.is_security_incident AS incidents_is_security_incident, incidents.channel_description AS incidents_channel_description, incidents.conference_bridge AS incidents_conference_bridge, incidents.pagerduty_incidents AS incidents_pagerduty_incidents, incidents.jira_issues AS incidents_jira_issues \nFROM incidents \nWHERE incidents.incident_id = %(incident_id_1)s OR incidents.channel_id = %(channel_id_1)s]\n[parameters: {'incident_id_1': 'inc-202401262154-testing-incident-please-ignore', 'channel_id_1': ''}]\n(Background on this error at: https://sqlalche.me/e/14/f405)"}
{"name": "root", "asctime": "2024-01-26 21:54:07,354", "levelname": "ERROR", "filename": "incident.py", "message": "Incident lookup query failed for inc-202401262154-testing-incident-please-ignore: (psycopg2.errors.UndefinedColumn) column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n[SQL: SELECT incidents.incident_id AS incidents_incident_id, incidents.channel_id AS incidents_channel_id, incidents.channel_name AS incidents_channel_name, incidents.status AS incidents_status, incidents.severity AS incidents_severity, incidents.bp_message_ts AS incidents_bp_message_ts, incidents.dig_message_ts AS incidents_dig_message_ts, incidents.sp_message_ts AS incidents_sp_message_ts, incidents.sp_incident_id AS incidents_sp_incident_id, incidents.sp_incident_data AS incidents_sp_incident_data, incidents.created_at AS incidents_created_at, incidents.updated_at AS incidents_updated_at, incidents.last_update_sent AS incidents_last_update_sent, incidents.tags AS incidents_tags, incidents.roles AS incidents_roles, incidents.postmortem AS incidents_postmortem, incidents.is_security_incident AS incidents_is_security_incident, incidents.channel_description AS incidents_channel_description, incidents.conference_bridge AS incidents_conference_bridge, incidents.pagerduty_incidents AS incidents_pagerduty_incidents, incidents.jira_issues AS incidents_jira_issues \nFROM incidents \nWHERE incidents.incident_id = %(incident_id_1)s OR incidents.channel_id = %(channel_id_1)s]\n[parameters: {'incident_id_1': 'inc-202401262154-testing-incident-please-ignore', 'channel_id_1': ''}]\n(Background on this error at: https://sqlalche.me/e/14/f405)"}
{"name": "root", "asctime": "2024-01-26 21:54:07,355", "levelname": "ERROR", "filename": "incident.py", "message": "Error creating Jira incident for inc-202401262154-testing-incident-please-ignore: (psycopg2.errors.UndefinedColumn) column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n[SQL: SELECT incidents.incident_id AS incidents_incident_id, incidents.channel_id AS incidents_channel_id, incidents.channel_name AS incidents_channel_name, incidents.status AS incidents_status, incidents.severity AS incidents_severity, incidents.bp_message_ts AS incidents_bp_message_ts, incidents.dig_message_ts AS incidents_dig_message_ts, incidents.sp_message_ts AS incidents_sp_message_ts, incidents.sp_incident_id AS incidents_sp_incident_id, incidents.sp_incident_data AS incidents_sp_incident_data, incidents.created_at AS incidents_created_at, incidents.updated_at AS incidents_updated_at, incidents.last_update_sent AS incidents_last_update_sent, incidents.tags AS incidents_tags, incidents.roles AS incidents_roles, incidents.postmortem AS incidents_postmortem, incidents.is_security_incident AS incidents_is_security_incident, incidents.channel_description AS incidents_channel_description, incidents.conference_bridge AS incidents_conference_bridge, incidents.pagerduty_incidents AS incidents_pagerduty_incidents, incidents.jira_issues AS incidents_jira_issues \nFROM incidents \nWHERE incidents.incident_id = %(incident_id_1)s OR incidents.channel_id = %(channel_id_1)s]\n[parameters: {'incident_id_1': 'inc-202401262154-testing-incident-please-ignore', 'channel_id_1': ''}]\n(Background on this error at: https://sqlalche.me/e/14/f405)"}
{"name": "root", "asctime": "2024-01-26 21:54:07,624", "levelname": "INFO", "filename": "client.py", "message": "User already in channel or is one of ['api', 'web']. Skipping invite."}
{"name": "root", "asctime": "2024-01-26 21:54:17,111", "levelname": "ERROR", "filename": "incident.py", "message": "Incident lookup query failed when returning most recent incidents: (psycopg2.errors.UndefinedColumn) column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n[SQL: SELECT incidents.incident_id AS incidents_incident_id, incidents.channel_id AS incidents_channel_id, incidents.channel_name AS incidents_channel_name, incidents.status AS incidents_status, incidents.severity AS incidents_severity, incidents.bp_message_ts AS incidents_bp_message_ts, incidents.dig_message_ts AS incidents_dig_message_ts, incidents.sp_message_ts AS incidents_sp_message_ts, incidents.sp_incident_id AS incidents_sp_incident_id, incidents.sp_incident_data AS incidents_sp_incident_data, incidents.created_at AS incidents_created_at, incidents.updated_at AS incidents_updated_at, incidents.last_update_sent AS incidents_last_update_sent, incidents.tags AS incidents_tags, incidents.roles AS incidents_roles, incidents.postmortem AS incidents_postmortem, incidents.is_security_incident AS incidents_is_security_incident, incidents.channel_description AS incidents_channel_description, incidents.conference_bridge AS incidents_conference_bridge, incidents.pagerduty_incidents AS incidents_pagerduty_incidents, incidents.jira_issues AS incidents_jira_issues \nFROM incidents ORDER BY incidents.created_at]\n(Background on this error at: https://sqlalche.me/e/14/f405)"}
{"name": "slack_bolt.App", "asctime": "2024-01-26 21:54:17,112", "levelname": "ERROR", "filename": "handler.py", "message": "Error: object of type 'NoneType' has no len()", "exc_info": "Traceback (most recent call last):\n  File \"/usr/local/lib/python3.11/site-packages/slack_bolt/listener/thread_runner.py\", line 120, in run_ack_function_asynchronously\n    listener.run_ack_function(request=request, response=response)\n  File \"/usr/local/lib/python3.11/site-packages/slack_bolt/listener/custom_listener.py\", line 50, in run_ack_function\n    return self.ack_function(\n           ^^^^^^^^^^^^^^^^^^\n  File \"/incident-bot/bot/slack/modals.py\", line 134, in update_home_tab\n    open_incidents = incident_list_message(database_data, all=False)\n                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/incident-bot/bot/slack/messages.py\", line 86, in incident_list_message\n    if len(incidents) == 0:\n       ^^^^^^^^^^^^^^\nTypeError: object of type 'NoneType' has no len()"}
{"name": "root", "asctime": "2024-01-26 21:54:38,035", "levelname": "ERROR", "filename": "incident.py", "message": "Incident lookup query failed for : (psycopg2.errors.UndefinedColumn) column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n[SQL: SELECT incidents.incident_id AS incidents_incident_id, incidents.channel_id AS incidents_channel_id, incidents.channel_name AS incidents_channel_name, incidents.status AS incidents_status, incidents.severity AS incidents_severity, incidents.bp_message_ts AS incidents_bp_message_ts, incidents.dig_message_ts AS incidents_dig_message_ts, incidents.sp_message_ts AS incidents_sp_message_ts, incidents.sp_incident_id AS incidents_sp_incident_id, incidents.sp_incident_data AS incidents_sp_incident_data, incidents.created_at AS incidents_created_at, incidents.updated_at AS incidents_updated_at, incidents.last_update_sent AS incidents_last_update_sent, incidents.tags AS incidents_tags, incidents.roles AS incidents_roles, incidents.postmortem AS incidents_postmortem, incidents.is_security_incident AS incidents_is_security_incident, incidents.channel_description AS incidents_channel_description, incidents.conference_bridge AS incidents_conference_bridge, incidents.pagerduty_incidents AS incidents_pagerduty_incidents, incidents.jira_issues AS incidents_jira_issues \nFROM incidents \nWHERE incidents.incident_id = %(incident_id_1)s OR incidents.channel_id = %(channel_id_1)s]\n[parameters: {'incident_id_1': '', 'channel_id_1': 'C06FVJB1DV0'}]\n(Background on this error at: https://sqlalche.me/e/14/f405)"}
{"name": "slack_bolt.App", "asctime": "2024-01-26 21:54:38,036", "levelname": "ERROR", "filename": "handler.py", "message": "Error: (psycopg2.errors.UndefinedColumn) column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n[SQL: SELECT incidents.incident_id AS incidents_incident_id, incidents.channel_id AS incidents_channel_id, incidents.channel_name AS incidents_channel_name, incidents.status AS incidents_status, incidents.severity AS incidents_severity, incidents.bp_message_ts AS incidents_bp_message_ts, incidents.dig_message_ts AS incidents_dig_message_ts, incidents.sp_message_ts AS incidents_sp_message_ts, incidents.sp_incident_id AS incidents_sp_incident_id, incidents.sp_incident_data AS incidents_sp_incident_data, incidents.created_at AS incidents_created_at, incidents.updated_at AS incidents_updated_at, incidents.last_update_sent AS incidents_last_update_sent, incidents.tags AS incidents_tags, incidents.roles AS incidents_roles, incidents.postmortem AS incidents_postmortem, incidents.is_security_incident AS incidents_is_security_incident, incidents.channel_description AS incidents_channel_description, incidents.conference_bridge AS incidents_conference_bridge, incidents.pagerduty_incidents AS incidents_pagerduty_incidents, incidents.jira_issues AS incidents_jira_issues \nFROM incidents \nWHERE incidents.incident_id = %(incident_id_1)s OR incidents.channel_id = %(channel_id_1)s]\n[parameters: {'incident_id_1': '', 'channel_id_1': 'C06FVJB1DV0'}]\n(Background on this error at: https://sqlalche.me/e/14/f405)", "exc_info": "Traceback (most recent call last):\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py\", line 1910, in _execute_context\n    self.dialect.do_execute(\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py\", line 736, in do_execute\n    cursor.execute(statement, parameters)\npsycopg2.errors.UndefinedColumn: column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n\nThe above exception was the direct cause of the following exception:\n\nTraceback (most recent call last):\n  File \"/usr/local/lib/python3.11/site-packages/slack_bolt/listener/thread_runner.py\", line 120, in run_ack_function_asynchronously\n    listener.run_ack_function(request=request, response=response)\n  File \"/usr/local/lib/python3.11/site-packages/slack_bolt/listener/custom_listener.py\", line 50, in run_ack_function\n    return self.ack_function(\n           ^^^^^^^^^^^^^^^^^^\n  File \"/incident-bot/bot/slack/handler.py\", line 430, in handle_incident_claim_role\n    asyncio.run(inc_actions.claim_role(action_parameters=parse_action(body)))\n  File \"/usr/local/lib/python3.11/asyncio/runners.py\", line 190, in run\n    return runner.run(main)\n           ^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/asyncio/runners.py\", line 118, in run\n    return self._loop.run_until_complete(task)\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/asyncio/base_events.py\", line 653, in run_until_complete\n    return future.result()\n           ^^^^^^^^^^^^^^^\n  File \"/incident-bot/bot/incident/actions.py\", line 225, in claim_role\n    incident_data = db_read_incident(\n                    ^^^^^^^^^^^^^^^^^\n  File \"/incident-bot/bot/models/incident.py\", line 104, in db_read_incident\n    raise error\n  File \"/incident-bot/bot/models/incident.py\", line 94, in db_read_incident\n    .one()\n     ^^^^^\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py\", line 2870, in one\n    return self._iter().one()\n           ^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/query.py\", line 2916, in _iter\n    result = self.session.execute(\n             ^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/orm/session.py\", line 1717, in execute\n    result = conn._execute_20(statement, params or {}, execution_options)\n             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py\", line 1710, in _execute_20\n    return meth(self, args_10style, kwargs_10style, execution_options)\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/sql/elements.py\", line 334, in _execute_on_connection\n    return connection._execute_clauseelement(\n           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py\", line 1577, in _execute_clauseelement\n    ret = self._execute_context(\n          ^^^^^^^^^^^^^^^^^^^^^^\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py\", line 1953, in _execute_context\n    self._handle_dbapi_exception(\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py\", line 2134, in _handle_dbapi_exception\n    util.raise_(\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/util/compat.py\", line 211, in raise_\n    raise exception\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/base.py\", line 1910, in _execute_context\n    self.dialect.do_execute(\n  File \"/usr/local/lib/python3.11/site-packages/sqlalchemy/engine/default.py\", line 736, in do_execute\n    cursor.execute(statement, parameters)\nsqlalchemy.exc.ProgrammingError: (psycopg2.errors.UndefinedColumn) column incidents.postmortem does not exist\nLINE 1: ...cidents_tags, incidents.roles AS incidents_roles, incidents....\n                                                             ^\n\n[SQL: SELECT incidents.incident_id AS incidents_incident_id, incidents.channel_id AS incidents_channel_id, incidents.channel_name AS incidents_channel_name, incidents.status AS incidents_status, incidents.severity AS incidents_severity, incidents.bp_message_ts AS incidents_bp_message_ts, incidents.dig_message_ts AS incidents_dig_message_ts, incidents.sp_message_ts AS incidents_sp_message_ts, incidents.sp_incident_id AS incidents_sp_incident_id, incidents.sp_incident_data AS incidents_sp_incident_data, incidents.created_at AS incidents_created_at, incidents.updated_at AS incidents_updated_at, incidents.last_update_sent AS incidents_last_update_sent, incidents.tags AS incidents_tags, incidents.roles AS incidents_roles, incidents.postmortem AS incidents_postmortem, incidents.is_security_incident AS incidents_is_security_incident, incidents.channel_description AS incidents_channel_description, incidents.conference_bridge AS incidents_conference_bridge, incidents.pagerduty_incidents AS incidents_pagerduty_incidents, incidents.jira_issues AS incidents_jira_issues \nFROM incidents \nWHERE incidents.incident_id = %(incident_id_1)s OR incidents.channel_id = %(channel_id_1)s]\n[parameters: {'incident_id_1': '', 'channel_id_1': 'C06FVJB1DV0'}]\n(Background on this error at: https://sqlalche.me/e/14/f405)"}
{"name": "slack_bolt.App", "asctime": "2024-01-26 21:54:41,032", "levelname": "WARNING", "filename": "thread_runner.py", "message": "handle_incident_claim_role didn't call ack()"}
{"name": "slack_bolt.App", "asctime": "2024-01-26 21:54:41,032", "levelname": "WARNING", "filename": "app.py", "message": "Unhandled request ({'type': 'block_actions', 'block_id': 'claim_incident_commander', 'action_id': 'incident.claim_role'})\n---\n[Suggestion] You can handle this type of event with the following listener function:\n\n@app.action(\"incident.claim_role\")\ndef handle_some_action(ack, body, logger):\n    ack()\n    logger.info(body)\n"}
{"name": "slack_bolt.App", "asctime": "2024-01-26 21:54:41,033", "levelname": "INFO", "filename": "internals.py", "message": "Unsuccessful Bolt execution result (status: 404, body: {\"error\": \"unhandled request\"})"}

Version
1.10.1
To Reproduce
Steps to reproduce the behavior:

Run incident bot 1.8.4 to setup your database
Update to 1.10.1
Create an incident and attempt to create a role

Expected behavior
Bot should continue to work as expected, allowing for claiming roles and managing an incident
Environment (please complete the following information):

Platform: Kubernetes

Thanks. Posting here for reference https://github.com/echoboomer/incident-bot/pull/425


Use the new version of CK

... that I will release soon.

@Dahny, I just release CK 0.5.0. Feel free to update it in the project!
There might be a small breaking change. The subClass getter is now called innerClass. Should be an easy fix in our code. See https://github.com/mauricioaniche/ck/issues/38

@Dahny when can you add the new version of CK?
It would be great to integrate it, before running the first large scale test.

Most likely today


txtai Production Deployment

I’m trying to understand what a production deployment should look like when using txtai for embeddings and LLM integration.
We are currently running an app which utilizes a containerized deployment of txtai to Azure Kubernetes Service, using GPU supported nodes. The txtai app makes use of a workflow for performing the search and calling an LLM to improve the response. We also are using subindexes to support filtering of data. And we are using content storage.
With a default pod deployment when the pod is restarted, the embedding data is lost (as expected), so we’re trying to overcome that and provide a more available solution. Based on my research and testing, I believe the following to be true, through existing txtai configurations:

embedding and index data is stored locally on disk
content is stored in a local database (MySql)
In order to persist data, we need to externalize both the local storage and the database
We can persist local data using standard container/kubernetes mounting
We can persist content data using an external database like Postgres

We have been able to get this working with a more standard deployment, but not with our current design. We can add and index successfully, but receive an error when calling our search workflow.
Assuming the above is accurate, I’m wondering if there may be some issue with using subindexes, as we are not seeing data in the text column in the sessions table with this setup.
Any information you can provide would be greatly appreciated!!

Yup, i've seen those both, but might take a second look at the first article again.
One quick question, before digging deeper...is the SQLite database stored locally as well? And if so, where is that stored on disk? I assume there would be a .sqlite file somewhere. I'm wondering if I might be able to just make sure that this file is also mapped to an external storage mount, instead of using an full external database like postgres.
Ok, now to dig further. Do you have any idea if this setup should work with subindexes? Thats one of the main differences we have between our working and non-working instances. The reason i'm focusing on that is because our non-working instance database appears to be some missing data in the sections table. See below:
Working instance with just 1 index:

Not working, with subindexes:

And here is the main section of our config.yml:
writable: true
path: /mnt/data

embeddings:
  content: client
  defaults: false
  indexes:
    ds1:
      path: sentence-transformers/multi-qa-mpnet-base-dot-v1
      tokenize: true
      columns:
        text: ds1
    ds2:
      path: sentence-transformers/multi-qa-mpnet-base-dot-v1
      tokenize: true
      columns:
        text: ds2

Anything jump out as maybe an issue?

You don't need a text field at the top level. When you search you'll have to specify the index you want to search against (ds1 or ds2).

Ok, great. Sounds like we should be ok with our current configuration, just need to run down whats causing our specific issue. Thank you for the info!!

Glad you're on the right track.
Closing this issue. If there are further questions, please re-open or open a new issue.


box_utils.is_within_box_3d is not accurate?

Hi, waymo research.
I tried to get the point cloud inside each 3d box with 'box_utils.is_within_box_3d' function, and then project these points to image, here is what the image looked like:

We found that many points inside the 3d box are missing. Can you help me with that please?

I have a similar issue with the dataset even though I am using a different toolset from is_within_box_3d.
This is the code I have and the amount of points expected vs. found is different.
  point_cloud_0, _ = frame_utils.convert_range_image_to_point_cloud(
        frame, range_images, camera_projections, range_image_top_pose,
        ri_index=0)

  point_cloud_1, _ = frame_utils.convert_range_image_to_point_cloud(
        frame, range_images, camera_projections, range_image_top_pose,
        ri_index=1)

  points_all_0 = np.concatenate(point_cloud_0, axis=0)
  points_all_1 = np.concatenate(point_cloud_1, axis=0)

  points_all = np.concatenate((points_all_0, points_all_1))

  for label in frame.laser_labels:
    box = box_utils.box_to_tensor(label.box)[tf.newaxis, :]
    box_points = points_all[box_utils.is_within_box_3d(points_all, box)[:, 0]]

    print(f"Expected: {label.num_lidar_points_in_box}")
    print(f"Found: {box_points.shape[0]}")


how to use with sanic mutiple worker

I used this package to add request_id when i use logging to record the access log.  But i read the document, https://sanic.readthedocs.io/en/latest/sanic/deploying.html#asynchronous-support-and-sharing-the-loop,  is this mean that aiotask-context not support mutiprocess? My english is poor, hope that i describe clear enough.
when use:
asyncio.set_event_loop(uvloop.new_event_loop())
    server = app.create_server(host="<IP_ADDRESS>", port=8000, return_asyncio_server=True)
    loop = asyncio.get_event_loop()
    loop.set_task_factory(context.task_factory)
    task = asyncio.ensure_future(server)
    try:
        loop.run_forever()
    except:
        loop.stop()

can you give a example how to use sanic mutiple workers?

I get it:
app.register_listener(init_loop_context, "before_server_start")


Use TC linting rules

Related to https://github.com/trunkclub/tcweb-eslint-config/pull/2
This points the eslint-loader to our eslint configuration instead of the one that comes with react-scripts and makes warnings errors in the production builds.
@trunkclub/ui

I'm going to merge this and I'll continue to merge things without approval or comment until someone asks me not to. However, I will continue to create pull requests while working on features and tag @trunkclub/ui to make sure that the changes I am making are visible.
Please, if you would like for me to hold off on merges, comment here or DM me and I'll wait for two approvals before merging every PR. :v:


Fix issue with the tag used by tnf_image in changes that come from tnf PR

The thing is, this particular task is being affected: https://www.distributed-ci.io/jobs/a8cc248c-93e9-4b9e-b1eb-4543c2883ed5/jobStates?sort=date&task=204501a5-13ac-456b-8363-056a803251cf. When testing a tnf PR, due to the new break line included in the tnf_image variable, the value of the variable presents that break line.
We need to remove that break line.
Also, defining the tag in an auxiliary variable for a better reading.

Stable tnf version installation worked: https://www.distributed-ci.io/jobs/e67827d7-1861-4c03-b40e-12f14e880859/jobStates?sort=date
Also, custom tnf version where the commit is extracted from the refs is also working and does not need to be changed, example here: https://www.distributed-ci.io/jobs/61d088df-29fb-484c-9bbe-96aae81b9a66/jobStates?sort=date&task=7ab1c817-76da-4d3e-a5b4-e42cf865dbee
Testing the last case right now, which is a custom tnf version where the commit id is extracted from ORIG_HEAD, which is the case that is still failing

Now it is passing the task that was previously failing: https://www.distributed-ci.io/jobs/ed9c524e-b007-43a3-8c4a-95921e75cc87/jobStates?sort=date&task=2819e7c8-ef32-4a6e-b779-9ed0a5f15937, so this is ready for review.


Process VB project files when getting project references

If not desired, feel free to ignore this proposal. Used info found in this StackOverflow answer to include multiple filetypes: http://stackoverflow.com/a/18626464/945456
Also my first pull request ever FTW? 💃 :D

I thankfully don't have many VB projects that I work with, but a welcome contribution regardless.


auto-install phantomjs

auto-install phantomjs on Windows/Mac/Linux environment

Coverage remained the same at 90.065% when pulling 3fd7ca4ac39a9aca7e73b819955996ae9e8a0e3d on phantomjs-autoinstall into 3e1a53df2ae2361a70709db8c65adb0d7f838742 on master.

Coverage remained the same at 90.065% when pulling e0568861421a4e7809b5d3441823aabb8d27a22f on phantomjs-autoinstall into 3e1a53df2ae2361a70709db8c65adb0d7f838742 on master.

Coverage remained the same at 90.065% when pulling 0a84f9dbfb4e245973d7c9e369b82e0623aa8731 on phantomjs-autoinstall into 3e1a53df2ae2361a70709db8c65adb0d7f838742 on master.

Coverage remained the same at 90.065% when pulling 01d390e5c6561ced230da9a485aaf740c8baeaa5 on phantomjs-autoinstall into 3e1a53df2ae2361a70709db8c65adb0d7f838742 on master.

Coverage remained the same at 90.065% when pulling e244eb939bb8d7977724d04c4a2307bf95bd2b82 on phantomjs-autoinstall into 3e1a53df2ae2361a70709db8c65adb0d7f838742 on master.

👍


can find module @netbasal/content-loader

Hi !
First of all tks for this module.
But I am facing an issue since weeks.
After installing the module I am getting a cant find module error when I try to build with prod option.

Yeah it works. Tks @NetanelBasal for fast reponse


[SR-4109] Implement protocol-declaration in lib/Syntax

Previous ID
SR-4109

Radar
None

Original Reporter
@bitjammer

Type
Bug

Additional Detail from JIRA

Votes
0

Component/s
Compiler

Labels
Bug, Syntax

Assignee
@bitjammer

Priority
Medium

md5: 83b20d7fda538adfb4b86463fd4ba1d4

libSyntax was removed in #62145 and succeeded by swift-syntax.


suport raspbian

I try to install uptime on raspberrypi and raspbian but seems that debian repo deos not have minimum dependecy version
it is so cool , uptime will run on raspberrypi
best regards

pi@raspberrypi:~/uptime $ npm install
npm WARN package.json<EMAIL_ADDRESS>No README data
npm WARN package.json<EMAIL_ADDRESS>bugs.email field must be a string email. Deleted.
|
><EMAIL_ADDRESS>install /home/pi/uptime/node_modules/net-ping/node_modules/raw-socket
> node-gyp rebuild

/bin/sh: 1: node: not found
gyp: Call to 'node -e "require('nan')"' returned exit status 127. while trying to load binding.gyp
gyp ERR! configure error
gyp ERR! stack Error: `gyp` failed with exit code: 1
gyp ERR! stack     at ChildProcess.onCpExit (/usr/share/node-gyp/lib/configure.js:344:16)
gyp ERR! stack     at ChildProcess.emit (events.js:98:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:809:12)
gyp ERR! System Linux 4.4.38-v7+
gyp ERR! command "nodejs" "/usr/bin/node-gyp" "rebuild"
gyp ERR! cwd /home/pi/uptime/node_modules/net-ping/node_modules/raw-socket
gyp ERR! node -v v0.10.29
gyp ERR! node-gyp -v v0.12.2
gyp ERR! not ok
npm WARN This failure might be due to the use of legacy binary "node"
npm WARN For further explanations, please read
/usr/share/doc/nodejs/README.Debian

npm ERR<EMAIL_ADDRESS>install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is most likely a problem with the raw-socket package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get their info via:
npm ERR!     npm owner ls raw-socket
npm ERR! There is likely additional logging output above.

npm ERR! System Linux 4.4.38-v7+
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /home/pi/uptime
npm ERR! node -v v0.10.29
npm ERR! npm -v 1.4.21
npm ERR! code ELIFECYCLE
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/pi/uptime/npm-debug.log
npm ERR! not ok code 0

I think the problem is that you don't have Nodejs installed on your Raspberry Pi.

/bin/sh: 1: node: not found - here is your problem
Run below command, it will install nodejs for you.
Using Debian, as root
curl -sL https://deb.nodesource.com/setup_11.x | bash -
apt-get install -y nodejs


feat: policy service beta

- What I did

new BETA policy binary, npp_atserver: fetches its rules from atServer as persistent store
new BETA binary, np_admin: exposes an API via http for setting policy rules & seeing policy info, events etc
new BETA webapp bundled with np_admin to provide a simple illustrative UI

Note that this is still only alpha quality but the intention is that will be beta quality in our 5.7.0 release
- How I did it
See commits
- How to verify it

Tests pass
multibuild and dockerfile.package work as intended

TODO in subsequent PRs

take up an at_client.AtRpc enhancement
add concrete types for events, logs etc rather than json/map nonsense
add permitOpen to the NPAAuthCheckRequest so we can have policy be able to know if a request should be denied when no matching permitOpen found
refactor: rename all the NPA/npa classes/files/directories to NPP/npp
UI refactoring - split into pieces, reduce duplicate code
UI<->API enhancements re events, logs etc
Documentation
Postgres impl

Cutting a release (from trunk): https://github.com/atsign-foundation/noports/releases/tag/v5.7.0-alpha-5


AYN Loki Mini Pro Sound Issue

After flashing ChimeraOS，the device's sound gets breakdown.

We have a solution but need permission to distribute some firmware for the device. This won't work until then.

Is this still an active issue? Looking at installing on my device

Yes, we're very close to shipping a fix though.

Ah brilliant. Would you have an ETA?

It is a bit complicated, so I don't want to give a specific deadline. The goal is to ship the fix in v46, but we also need to fix a few other bugs in addition to this one.

Ah that's great, cheers

Just wondering if this one is still in the works?

The fix was shipped, but an additional config step is needed.

Oh I see! I will try it out


Error in readGistic

library(maftools)
r2=readGistic(gisticAllLesionsFile='all_lesions.conf_99.txt', gisticAmpGenesFile='amp_genes.conf_99.txt', gisticDelGenesFile='del_genes.conf_99.txt')
Processing Gistic files..

*** caught segfault ***
address 0x0, cause 'memory not mapped'
Traceback:
1: rbindlist(l, use.names, fill, idcol)
2: data.table::.rbind.data.table(...)
3: rbind(deparse.level, ...)
4: rbind(ampGenes, delGenes)
5: readGistic(gisticAllLesionsFile = "all_lesions.conf_99.txt",     gisticAmpGenesFile = "amp_genes.conf_99.txt", gisticDelGenesFile = "del_genes.conf_99.txt")

Hi,
Sorry for late reply. This seems to me an issue with low memory. Can you just try with only one of the file (either amp or del file) and see if it works ?
For e.g,
library(maftools)
r2=readGistic(gisticAllLesionsFile='all_lesions.conf_99.txt', gisticAmpGenesFile='amp_genes.conf_99.txt')

It works when either amp or del file provided.  I found this issue is related to
delGenes = suppressWarnings(data.table::melt(delGenes, id.vars = 'cytoband')) ## in readGistic.R

Replaced the above with the following, this issue was fixed.
data.table::setDF(delGenes)
delGenes = reshape2::melt(delGenes, id.vars = 'cytoband')
data.table::setDT(delGenes)

Hi,
Does it work if you use both files (amp and del) with the above fix ?

Yes, the above fix works for both amp and del files.

Hmm, that is weird. Thanks for reporting, I will look into it.


typo

In 26-more_than_two_samples_from_normal.Rmd, line 435, replace 'weel' with 'week'

Also chapter 26, line 488 "disributed"

15-prob2.Rmd, line 286, 'reach path' -> 'each path'


change the default ambient color to 0's

Addresses issue #836
Before:

After:

For comparison, the rendering from Preview.app:

@hersh Do you know of any issues with using all 0's for the RGB ambient values? I've seen other places in ROS code where very small values are used instead, but I don't get why that is the case.

I discussed this with some Gazebo people and it also renders fine. I'm gonna merge it for now.

@wjwwood: this probably won't be backported to Hydro?

@gavanderhoorn I wasn't planning on it, but if it does ok in Indigo, I would consider a pull request that back ported it to hydro.


Allow pf3 demo to work slightly more smoothly on Windows.

One must still do all the work required to set up SDL, but at least the compiler won't complain about jemalloc, and git won't ask you if you want to add whatever SDL dll you need to dump in the pathfinder folder?

Some of this is done now.