How to add supports_statement_cache=True to ray workers?

Hello,
I have a piece of code to read_sql with Modin on ray.
I would like to set supports_statement_cache to True like this
from pydruid.db.sqlalchemy import DruidDialect
DruidDialect.supports_statement_cache = True

But it doesn't work if I add that in the code for the client. So how can I initialize or set supports_statement_cache to True on all ray workers?
Thanks

@fbvdka I'm trying to investigate this further but posting the error logs that you're seeing will help me further. From what I see in the sqlalchemy code, it looks like supports_statement_cache is already being set to True by default here:https://github.com/sqlalchemy/sqlalchemy/blob/main/lib/sqlalchemy/engine/default.py#L123. It doesn't seem like pydruid is doing anything to change this to false.

Thanks @pyrito
Here the logs I received on a ray cluster with two workers (using docker-compose):
UserWarning: Defaulting to Modin core implementation
(deploy_ray_func pid=1138) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=364, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=366, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=365, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=419, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=367, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=1137) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=416, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=1234) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=417, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=450, ip=<IP_ADDRESS>) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)
(deploy_ray_func pid=1232) SAWarning: Dialect druid:rest will not make use of SQL compilation caching as it does not set the 'supports_statement_cache' attribute to ``True``.  This can have significant performance implications including some performance degradations in comparison to prior SQLAlchemy versions.  Dialect maintainers should seek to set this attribute to True after appropriate development and testing for SQLAlchemy 1.4 caching support.   Alternatively, this attribute may be set to False which will disable this warning. (Background on this error at: https://sqlalche.me/e/14/cprf)

@fbvdka I'm not sure if there's a clear resolution on our side or anything I can think off the top of my head. I was able to find this outstanding issue on Ray that seems somewhat similar: https://github.com/ray-project/ray/issues/11959.
@mvashishtha is there anything clever you could think for a workaround in Ray? One thought I had was to have a Ray function try and modify the class attribute, but I'm not sure if those changes would just be temporary.

@pyrito, I am wondering if it exists a way to pass parameters to DruidDialect when creating ModinDatabaseConnection?
Currently, I create ModinDatabaseConnection like that
conn = ModinDatabaseConnection('sqlalchemy', 'druid://user:pwd@<DruidHost>:<DruidPort>/druid/v2/sql?header=true')
df=pd.read_sql(sql=<mySQLquery>, con=conn, index_col=<mycol>)

I have seen that we can pass arguments kwargs to ModinDatabaseConnection, so may be some of them can concern DruidDialect.

@fbvdka any kwargs that you pass into ModinDatabaseConnection will get directly passed into the underlying sql engine's methods. In this case, it should be getting passed to sqlalchemy's create_engine method. You could try passing some stuff along that way?

@fbvdka as @pyrito said if there is some way to set supports_statement_cache=True via arguments to create_engine you can do it with ModinDatabaseConnection because each worker creates a separate connection with whatever args you want. However, if you can't do that, the best I can give you right now is a little hack to try to run a function on all workers:
import modin.pandas as pd
import numpy as np

from pydruid.db.sqlalchemy import DruidDialect

def set_flag(x):
	DruidDialect.supports_statement_cache = True

def check_flag(x):
    if DruidDialect.supports_statement_cache is not True:
        print('supports_statement_cache not true somwhere!')

# a fairly large dataframe will fill all partitions and therefore
# use all workers when you do `applymap`
df = pd.DataFrame(np.zeros((10_000, 10_000)))
_ = df.applymap(set_flag)
_ = df.applymap(check_flag)

Ray does have run_function_on_all_workers but it's unreliable and provides no guarantees.
I have seen a similar problem with writing to an identity column in a table on SQL server where each worker needed to execute an extra statement. We fixed that in a branch of modin by adding an identity_insert param to the connection object and executing the extra statement when it was true.
Maybe a more generic way to satisfy both this supports_statement_cache feature request and the identity_insert one, as well as hopefully similar needs that may appear later, is to have a parameter like pre_io_function(con) that takes as input the connection for the read or write and then does any arbitrary thing the user wants, possibly using the connection con. @fbvdka would that be a good feature for your use case?

Hi @mvashishtha,
I will try the hack you propose.
I think your proposal of pre_io_function(con) is a good idea. Thus, it will allow any pre-requirements we need for specific use cases.

@fbvdka thank you for your feedback. I filed #5248 for the pre_io_function feature request. Please let us know whether the hack to run the function all ray workers works.

Thanks @mvashishtha. I've tested the hack and it works.

Okay, I'll close this issue for now and we can follow #5248 for the more general solution.


:hasCreationLocation

Is this the same as hasLocation aka shooting location?

Should be discussed in our meeting

Solved


Double counting pairs in distance threshold calculation

In the file face_recognition.ipynb in the Distance threshold section, the creation of pairs for the f1 and accuracy calculations double count all embedding pairs and also include pairs of the same embeddings.
Instead of
for i in range(num - 1):
    for j in range(1, num):

it should be
for i in range(num - 1):
    for j in range(i + 1, num):

I would have liked to make a pull request myself, but cannot run the ipynb on my remote server to generate the new images required. Thank you!

Good catch @alexaorrico, that's definitely a bug. Thanks for reporting, will fix it soon ...


Safe Settings doesn't detect removed rules from repository rulesets

Problem Description
When one or more rules are manually removed from a ruleset or when required status checks are modified, Safe Settings doesn't detect any changes. Interestingly, it does detect changes when rules are added, ruleset name is changed or bypass actors are modified.
What is actually happening
The app doesn't recognise changes when rules are removed from a repository ruleset.
What is the expected behavior
If someone manually removes the rules the app should revert those changes and add the rules back in.
Error output, if available
{"level":20,"time":1720003088766,"pid":25,"hostname":"safe-settings-app","name":"probot","name":"probot","name":"event","id":"54ec46e4-3928-11ef-944d-baa8cbbf33a3","msg":"Results of comparing Rulesets diffable target [{\"id\":1071805,\"name\":\"Custom-Bypass\",\"target\":\"branch\",\"source_type\":\"Repository\",\"source\":\"<redacted>/test-data-product\",\"enforcement\":\"active\",\"conditions\":{\"ref_name\":{\"exclude\":[],\"include\":[\"~DEFAULT_BRANCH\"]}},\"rules\":[{\"type\":\"deletion\"}],\"node_id\":\"RRS_lACqUmVwb3NpdG9yec4ut6w-zgAQWr0\",\"created_at\":\"2024-07-01T15:18:56.620Z\",\"updated_at\":\"2024-07-01T15:18:56.620Z\",\"bypass_actors\":[],\"current_user_can_bypass\":\"never\",\"_links\":{\"self\":{\"href\":\"https://api.github.com/repos/<redacted>/test-data-product/rulesets/1071805\"},\"html\":{\"href\":\"https://github.com/<redacted>/test-data-product/rules/1071805\"}}}] with source [{\"name\":\"Custom-Bypass\",\"target\":\"branch\",\"enforcement\":\"active\",\"bypass_actors\":[],\"conditions\":{\"ref_name\":{\"include\":[\"~DEFAULT_BRANCH\"],\"exclude\":[]}},\"rules\":[{\"type\":\"non_fast_forward\"},{\"type\":\"deletion\"},{\"type\":\"required_linear_history\"},{\"type\":\"pull_request\",\"parameters\":{\"dismiss_stale_reviews_on_push\":true,\"require_code_owner_review\":true,\"require_last_push_approval\":true,\"required_approving_review_count\":1,\"required_review_thread_resolution\":true}},{\"type\":\"required_status_checks\",\"parameters\":{\"strict_required_status_checks_policy\":true,\"required_status_checks\":[{\"context\":\"run-lint\"}]}}]}] is [object Object]"}
{"level":20,"time":1720003088766,"pid":25,"hostname":"safe-settings-app","name":"probot","name":"probot","name":"event","id":"54ec46e4-3928-11ef-944d-baa8cbbf33a3","msg":"There are no changes for Rulesets for repo [object Object]. Skipping changes"}

Context
Tried both on suborg and repo level
rulesets:
  - name: Somename
    target: branch
    enforcement: active
    conditions:
        ref_name:
          include: ["~DEFAULT_BRANCH"]
          exclude: []
    rules:
      - type: non_fast_forward
      - type: deletion
      - type: required_linear_history
      - type: pull_request
        parameters:
          dismiss_stale_reviews_on_push: true
          require_code_owner_review: true
          require_last_push_approval: true
          required_approving_review_count: 1
          required_review_thread_resolution: true
      - type: required_status_checks
        parameters:
          strict_required_status_checks_policy: true
          required_status_checks:
            - context: run-lint

Are you using the hosted instance of probot/settings or running your own?
Own deployment running v2.1.10
If running your own instance, are you using it with github.com or GitHub Enterprise?
github.com
Version of probot/settings
2.1.10
Version of GitHub Enterprise
n/a

Thanks @luvsaxena1 It did fix the issue when rules are being removed but didn't fix the one with required status checks being changed.
Logs
{"level":20,"time":1724754180685,"pid":25,"hostname":"safe-settings-app","name":"probot","name":"probot","name":"event","id":"537f9070-645e-11ef-8f67-434e793c26ec","msg":"Results of comparing Rulesets diffable target [{\"id\":1515742,\"name\":\"Test ruleset\",\"target\":\"branch\",\"source_type\":\"Repository\",\"source\":\"test/test\",\"enforcement\":\"active\",\"conditions\":{\"ref_name\":{\"exclude\":[],\"include\":[\"~DEFAULT_BRANCH\"]}},\"rules\":[{\"type\":\"deletion\"},{\"type\":\"required_linear_history\"},{\"type\":\"pull_request\",\"parameters\":{\"required_approving_review_count\":1,\"dismiss_stale_reviews_on_push\":true,\"require_code_owner_review\":true,\"require_last_push_approval\":true,\"required_review_thread_resolution\":true}},{\"type\":\"merge_queue\",\"parameters\":{\"merge_method\":\"MERGE\",\"max_entries_to_build\":5,\"min_entries_to_merge\":1,\"max_entries_to_merge\":5,\"min_entries_to_merge_wait_minutes\":5,\"grouping_strategy\":\"ALLGREEN\",\"check_response_timeout_minutes\":60}},{\"type\":\"non_fast_forward\"},{\"type\":\"required_status_checks\",\"parameters\":{\"strict_required_status_checks_policy\":true,\"do_not_enforce_on_create\":false,\"required_status_checks\":[]}}],\"node_id\":\"RRS_lACqUmVwb3NpdG9yec4ut6w-zgAXIN4\",\"created_at\":\"2024-08-27T09:49:08.113Z\",\"updated_at\":\"2024-08-27T09:49:08.113Z\",\"bypass_actors\":[],\"current_user_can_bypass\":\"never\",\"_links\":{\"self\":{\"href\":\"https://api.github.com/repos/test/test/rulesets/1515742\"},\"html\":{\"href\":\"https://github.com/test/test/rules/1515742\"}}}] with source [{\"name\":\"Test ruleset\",\"target\":\"branch\",\"enforcement\":\"active\",\"conditions\":{\"ref_name\":{\"include\":[\"~DEFAULT_BRANCH\"],\"exclude\":[]}},\"rules\":[{\"type\":\"non_fast_forward\"},{\"type\":\"deletion\"},{\"type\":\"required_linear_history\"},{\"type\":\"pull_request\",\"parameters\":{\"dismiss_stale_reviews_on_push\":true,\"require_code_owner_review\":true,\"require_last_push_approval\":true,\"required_approving_review_count\":1,\"required_review_thread_resolution\":true}},{\"type\":\"merge_queue\",\"parameters\":{\"check_response_timeout_minutes\":60,\"grouping_strategy\":\"ALLGREEN\",\"max_entries_to_build\":5,\"max_entries_to_merge\":5,\"merge_method\":\"MERGE\",\"min_entries_to_merge\":1,\"min_entries_to_merge_wait_minutes\":5}},{\"type\":\"required_status_checks\",\"parameters\":{\"strict_required_status_checks_policy\":true,\"required_status_checks\":[{\"context\":\"run-lint\"}]}}]}] is [object Object]"}


Add support for anyhow

A useful feature could be the basic support for anyhow::Error
This way when prototyping, we can use anyhow::Error without caring for the actual kind of error.
The error could just be 500 Internal Error, with or without backtrace

Can you specific what part of the stack you are talking about? As there are mainly two different error handling design on different level of the framework:

For xitca-http's http library you must use a typed error. You can hook anyhow as your service error output easily.
For xitca-web's web framework you can do the same but not as easy. This is due to design choice that in xitca-web error handling is expanded on top of std::error::Error trait for maximized compat across the eco system. If you want a object oriented error type you can look into example like: https://github.com/HFQR/xitca-web/blob/7fc8fc43c8cfbdd6bbbe7faf86471f216a05212a/examples/error-handle/src/main.rs#L36 where objected error type will be treated exactly like you described. A Box<dyn std::error::Error> will generate a 500 response with whatever debug/format info you provided to it. That said if you specifically want aynhow as alternative it will not be straight forward as said crate does not offer an easy way to implement std::error::Error trait.

In general xitca tries to be lightweight and offload as much as possible with widely accepted public types and traits especially when std providing.
I get anyhow is popular and widely used right now and it has certain advantages over std's error handling in some case. But adding a feature for it is a no go for now.

BTW for converting anyhow::Error to Box<dyn std::error::Error> you can simply use From/Into traits. But there is still some limitation you can reference it's github repo for context.


Would it be possible to have a method to get value + reset at once?

I'm looking for a way to make an atomic counter that can return the current value + reset it to 0 in one function call. It looks like this library could make it relatively easily possible?

It's open source, go for it :-)

A standard atomic package seems to be easy enough to use.


Added explanation to setup local test !

The content is ok but don't replace the README.md file contents. You can create a new file named SETUP.md

Should i make a new pull request, I have created a different branch named  "local-test"

Sure


Added Note on loading files from /target

Using Windows the relative path from the cmd prompt was not working:
C:\Program Files (x86)\GNU Arm Embedded Toolchain\9 2020-q2-update\bin\arm-none-eabi-gdb.exe: warning: Couldn't determine a path for the index cache directory.
target/thumbv7em-none-eabihf/debug/led-roulette: No such file or directory.
(gdb) target remote :3333
Remote debugging using :3333
warning: No executable has been specified and target does not support
determining executable automatically.  Try using the "file" command.
0x08000c78 in ?? ()
(gdb) quit
A debugging session is active.
    Inferior 1 [Remote target] will be detached.

Quit anyway? (y or n) n
Not confirmed.
(gdb) quit
A debugging session is active.
    Inferior 1 [Remote target] will be detached.

Quit anyway? (y or n) y
Detaching from program: , Remote target
Ending remote debugging.
[Inferior 1 (Remote target) detached]

After going up a couple directories I was able to have it read the target files.

C:\Users\mike2\Documents\proging\Rust\embedded\discovery\src\05-led-roulette>cd ../..
C:\Users\mike2\Documents\proging\Rust\embedded\discovery>arm-none-eabi-gdb.exe  -q target/thumbv7em-none-eabihf/debug/led-roulette
C:\Program Files (x86)\GNU Arm Embedded Toolchain\9 2020-q2-update\bin\arm-none-eabi-gdb.exe: warning: Couldn't determine a path for the index cache directory.
Reading symbols from target/thumbv7em-none-eabihf/debug/led-roulette...

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @adamgreig (or someone else) soon.
If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.
Please see the contribution instructions for more information.

I’ve hit this issue as well, and it appears others have as well: https://github.com/rust-embedded/discovery/issues/495
I’m not sure what’s the process is for re-queueing for review, especially since there are conflicts now, but it’d be nice to see this note added.

https://github.com/rust-embedded/discovery/issues/511

@eldruin opened #519 that re-uses existing (and imo, better) solution. Let me know if you'd like to see a note added about why symlinks are there.

@arr-ee Does the symlinks still pose a problem for windows users like OP?

Good call, I was not paying attention to the OP’s platform.
It does not, in fact, work on Windows due to symlinks being a breaking new feature there apparently. I’ll see if we can solve this somehow without user intervention, or open a PR with a note otherwise.

@eldruin opened #520 with a note, should be easier than trying to be clever about it.


Fixes #248, pattern validation failure

Update "Subject Matter Expert" to "Subject_Matter_Expert" and add validation pattern to Editor class.
Per OpenAI's documentation, names should not contain spaces.

Thank you!

@hinthornw, I don't have write access to the repo to merge this PR. Can you please help with this?


Type classes supporting incomplete decoder derivation

Last week @mpilquist asked about adding the Complement type class from circe to Shapeless. I'd love to see this happen (and the idea has @milessabin's stamp of approval), but I have a couple of questions about how it should happen.
The motivation for the type class is to support "partial" decoding instances. I originally described the idea in this blog post, and we're currently using it in circe, some Finch examples, etc., and there are reports that it's being used in the wild outside of the context of circe as well.
The implementation uses two type classes, Insert and Complement. Insert is essentially just a variation of ops.hlist.Remove that supports the unlabeled selection of an element in a record:
import io.circe.generic.util._
import shapeless._, record.Record, labelled.FieldType

type Rec = Record.`'foo -> Int, 'bar -> String, 'baz -> Double`.T

val labelled = Insert[Rec, FieldType[Witness.`'foo`.T, Int]]
val unlabelled = Insert[Rec, Int]

This is necessary to support the desired usage provided by Complement.
Complement is similarly similar to ops.hlist.RemoveAll but with unlabeled selection.
I have two questions:

Where should these go? I'm inclined to say ops.record, and for my needs they only ever need to work on records, but the implementation is more generic and works just fine on non-record HLists.
What should they be named? If they go in ops.record they could just be called Remove and RemoveAll, but they don't really work the same as the other record type classes (in that they're not about selection by keys), and those names would make the relationship with ops.record.Remover kind of unclear. I like LabelAgnosticRemove(All), but that's a little unwieldy.

Any opinions? If nobody feels strongly I'll submit a PR with ops.record.Remove(All).

ops.record.Remove(All) works for me ... PR most welcome :-)

Closed in #480.


Node.js  uvwasi team Meeting 2024-09-25

Time
UTC Wed 25-Sep-2024 18:00 (06:00 PM):

Timezone
Date/Time

US / Pacific
Wed 25-Sep-2024 11:00 (11:00 AM)

US / Mountain
Wed 25-Sep-2024 12:00 (12:00 PM)

US / Central
Wed 25-Sep-2024 13:00 (01:00 PM)

US / Eastern
Wed 25-Sep-2024 14:00 (02:00 PM)

EU / Western
Wed 25-Sep-2024 19:00 (07:00 PM)

EU / Central
Wed 25-Sep-2024 20:00 (08:00 PM)

EU / Eastern
Wed 25-Sep-2024 21:00 (09:00 PM)

Moscow
Wed 25-Sep-2024 21:00 (09:00 PM)

Chennai
Wed 25-Sep-2024 23:30 (11:30 PM)

Hangzhou
Thu 26-Sep-2024 02:00 (02:00 AM)

Tokyo
Thu 26-Sep-2024 03:00 (03:00 AM)

Sydney
Thu 26-Sep-2024 04:00 (04:00 AM)

Or in your local time:

https://www.timeanddate.com/worldclock/fixedtime.html?msg=Node.js+Foundation+uvwasi team+Meeting+2024-09-25&iso=20240925T1800
or https://www.wolframalpha.com/input/?i=06PM+UTC%2C+Sep+25%2C+2024+in+local+time

Links

Minutes Google Doc: https://docs.google.com/document/d/1qNqHPYRwUWS4jtvBcieVHPyw1bnySImfygbRv3jdJmQ/edit

Agenda
Extracted from uvwasi-agenda labelled issues and pull requests from the nodejs org prior to the meeting.
nodejs/node

WASI preview 1: fd_readdir ignores cookie argument #47193

nodejs/uvwasi

What's new with uvwasi in 2023 #201
Changes to WASI spec in snapshot_preview2 #59

Invited

uvwasi team: @nodejs/wasi

Observers/Guests
Notes
The agenda comes from issues labelled with uvwasi-agenda across all of the repositories in the nodejs org. Please label any additional issues that should be on the agenda before the meeting starts.
Joining the meeting

link for participants: https://zoom.us/j/91612484369
For those who just want to watch:
youtube admin page: https://www.youtube.com/my_live_events?filter=scheduled

We decided to cancel this time as it was just me and Guy.


quarkus: update stack to set minimum requirements for Docker

Checklist:

[x] Read the Code of Conduct and Contributing Guidelines.

[x] Followed the commit message guidelines.

[x] Stack adheres to Appsody stack structure.

Modifying an existing stack:

[x] Updated the stack version in stack.yaml

Because this stack uses chown, set Docker requirement to >= 17.09.0 to avoid errors down the development line for users with lower versions of Docker.

Related Issues:
Related to: https://github.com/appsody/stacks/issues/493

Closing for now as this capability can not be fully utilised until the next release.


The application had a problem with some standard point cloud dataset testing.

Thank you for coming up with a very good algorithm.
When I applied the point cloud standard dataset test, I found that in some planar areas, the curvature color representation is not entirely correct. To make it easier for you to reproduce this phenomenon for reference, I submit the point cloud and effect I used for testing here. It can be seen that in the two planar and workpiece point cloud data, blue and red overlap in the planar area, and even the planar area point cloud is all red. I guessed if it was due to the poor Delaunay triangulation, so I imported this point cloud into meshlab and found that there were no serious structural errors in the point cloud.
I would appreciate it if you could give an answer to the curvature of this planar region, and thank you again for your interest and look forward to your reply.
0133_test.zip
two_plane_test.zip

I'm not sure if this is due to the direction of the normal vector, but I observed that the planes with completely red curvature were perpendicular to the X-axis of the point cloud's own coordinate system.

Thank you for sharing this observation. (1)Your concern about Delaunay triangulation is true for this data. This data is different from organic models like the cow or the bunny. It has planar surfaces and sharp edges, which could have co-linear case that cause Delaunay triangulation to fall apart. This has a easy fix though. To ensure the robustness for this kind of data, I recommend you add a pre-processing step, adding small Gaussian noise to point position values before calculating the curvature. (2) The confusing color problem you observed is not caused by Delaunay triangulation though. It is a visualization problem caused by numerical error. The result saved in text file is correct. At planar regions, your curvature should be 0. But the code would use a small float number to represent that, which could be positive or negative. If you observe the output txt file, you might see numbers like -2.62382e-13 or 2.95437e-14. They are all 0. When it's negative, it could mess up the colormap. The easy fix would be change line 150 in Draw.cpp from Eigen::VectorXd k_S_PCD_vis = k_S_PCD.array().pow(0.0425); to Eigen::VectorXd k_S_PCD_vis = k_S_PCD.array().abs().pow(0.0425);.  I tried that and got a visualization that seems reasonable. Therefore, updated that line in my codebase accordingly.


How to use scalar inputs

I'm trying to use a scalar input to resize a video, but can't figure out how to set the ndim parameter of external_source or the shape of the input in the client.
config.pbtxt
backend: "dali"
max_batch_size: 0

model_transaction_policy {
  decoupled: True
}

1/dali.py
import nvidia.dali as dali
from nvidia.dali.plugin.triton import autoserialize #must include

@dali.plugin.triton.autoserialize
@dali.pipeline_def(batch_size=32, num_threads=4, device_id=0, output_dtype=dali.types.FLOAT, output_ndim=3)
def pipeline():
    vid = dali.fn.experimental.inputs.video(name="INPUT", sequence_length=1, device='mixed')

    height = dali.fn.external_source(name="HEIGHT", ndim=1, dtype=dali.types.INT16, repeat_last=True)
    width = dali.fn.external_source(name="WIDTH", ndim=1, dtype=dali.types.INT16, repeat_last=True)

    vid = dali.fn.resize(vid, resize_x=width, resize_y=height, mode="not_larger") #resize
    vid = dali.fn.crop(vid, crop_w=width, crop_h=height, out_of_bounds_policy="pad") #pad
    vid = dali.fn.squeeze(vid, axes=0) #remove sequence dim
    vid = dali.fn.transpose(vid, perm=[2, 0, 1]) #HWC to CHW
    vid = dali.fn.cast(vid, dtype=dali.types.FLOAT, name="OUTPUT") #UINT8 to FP32
    return vid

client.py from video_decode_remap
...
        width = np.ones((1), dtype=np.int16)*640
        height = np.ones((1), dtype=np.int16)*360

        inputs = [
            tritonclient.grpc.InferInput("INPUT", video_raw.shape, "UINT8"),
            tritonclient.grpc.InferInput("WIDTH", width.shape, "INT16"),
            tritonclient.grpc.InferInput("HEIGHT", height.shape, "INT16"),
        ]
        inputs[0].set_data_from_numpy(video_raw)
        inputs[1].set_data_from_numpy(width)
        inputs[2].set_data_from_numpy(height)
...

If I run that, I get unexpected shape for input 'HEIGHT' for model 'resize_224'. Expected [-1,-1], got [1]. How do you properly set and get the scalar values in both client.py and dali.py?

Hey @wq9
I think this should work when you add the batch dimension to the height and width inputs. So, assuming the batch size is 32 in your pipeline, the client code would look like:
width = np.ones((32, 1), dtype=np.int16)*640
height = np.ones((32, 1), dtype=np.int16)*360

@banasraf Adding the batch dimension worked. Thanks!
However, when the input is a video (video_raw = np.expand_dims(np.fromfile(FLAGS.video, dtype=np.uint8), axis=0)), the last batch is not 32, so I get the error:
[/opt/dali/dali/pipeline/operator/operator.cc:43] Assert on "curr_batch_size == static_cast<decltype(curr_batch_size)>(arg.second.tvec->num_samples())" failed:
ArgumentInput has to have the same batch size as an input.

Is there a way to pad the batch dimension?

@wq9
Unfortunately this operator does not allow padding of the last batch. I don't see any workaround that would make your case work properly. The only options I see is hardcoding the width and height in the pipeline or if you know the number of frames in the sample, predicting when to send a partial width and height tensors.
I'll add a task to our backlog to extend the video input operator with the option to pad the last batch.


Implement jpegquality and outformat image filters

This pull request implements two new image filters:

outformat - This allows the developer to specify an output format to use in a placement (For example, outformat-png will force Wagtail to always output PNG files irrespective of the original format) (fixes #2472)
jpegquality -  This allows the developer to specifiy the amount of compression to apply JPEG files in an image placement (fixes #908 and #1847)

These are made possible by a new env argument that gets passed into image filter run methods. It's a mutable dictionary that can be used to pass messages along the filter chain and back to Wagtail.
The docs also fix #1205
TODO:

[ ] Tests

This looks good! Is there a precedent for calling the dictionary 'env'? It feels a bit generic for image filter configuration.

@tomdyson any suggestions for new names are welcome. It was deciding between env or props but decided on env as it's similar to Fabric's global env object.
I also considered context but thought this might be confused with template context (as the image operations are usually called from a template).
I went for something generic as I think this could be used for other things in the future, such as transforming the focal point whenver an image is resized/cropped

I'm thinking of shortening outformat to just format. Anyone against that?

Almost done, I'm just not sure how to test the jpeg quality filter.

Higher compression values should yield smaller images - can you test for that?

You might also be able to mock the save method used by Willow or Pillow, as appropriate, to check if the correct settings are sent in.

Tests added (by mocking PIL.Image.save). Ready for review!

@tomdyson all suggestions implemented, thanks!

Rebased!

Why do you use env variable?

Why do you use env variable?

That's a vague question. There's a lot of different ways I could answer it. Please be more specific and I'll happily provide an answer.

Merged in 534b5d1fd9ce15ac88056d692e18a0a5620765a2 + parents


Bert+Proto issue

I ran 5-way 1-shot and 5-way 5-shot classification on HuffPost and FewRel using BERT, embedding=proto. However, the obtained results are quite different from those in Table 2. Is this a common problem now?
If possible, can you share the commands of the two datasets when embedding=proto and bert=true? I would like to know what went wrong causing this result.
`Parameters:
AUXILIARY=[]
BERT=True
BERT_CACHE_DIR=~/.pytorch_pretrained_bert/
CLASSIFIER=proto
CLIP_GRAD=None
CNN_FILTER_SIZES=[3, 4, 5]
CNN_NUM_FILTERS=50
CUDA=0
DATA_PATH=data/huffpost_bert_uncase.json
DATASET=huffpost
DROPOUT=0.1
EMBEDDING=cnn
FINETUNE_EBD=False
FINETUNE_EPISODES=10
FINETUNE_LOSS_TYPE=softmax
FINETUNE_MAXEPOCHS=5000
FINETUNE_SPLIT=0.8
INDUCT_ATT_DIM=64
INDUCT_HIDDEN_DIM=100
INDUCT_ITER=3
INDUCT_RNN_DIM=128
LR=0.001
LRD2_NUM_ITERS=5
MAML=False
MODE=train
N_TEST_CLASS=16
N_TRAIN_CLASS=20
N_VAL_CLASS=5
N_WORKERS=10
NOTQDM=False
PATIENCE=20
PRETRAINED_BERT=bert-base-uncased
PROTO_HIDDEN=[300, 300]
QUERY=25
RESULT_PATH=
SAVE=False
SEED=330
SHOT=1
SNAPSHOT=
TEST_EPISODES=1000
TRAIN_EPISODES=100
TRAIN_EPOCHS=1000
VAL_EPISODES=100
WAY=5
WORD_VECTOR=wiki.en.vec
WV_PATH=./
(Credit: Maija Haavisto)                        /
                             _,.------....___,.' ',.-.
                          ,-'          _,.--'        |
                        ,'         _.-'              .
                       /   ,     ,'                   `
                      .   /     /                     ``.
                      |  |     .                       \.\
            ____      |___._.  |       __               \ `.
          .'    `---''       ``'-.--''`  \               .  \
         .  ,            __               `              |   .
         `,'         ,-''  .               \             |    L
        ,'          '    _.'                -._          /    |
       ,`-.    ,'.   `--'                      >.      ,'     |
      . .'\'   `-'       __    ,  ,-.         /  `.__.-      ,'
      ||:, .           ,'  ;  /  / \ `        `.    .      .'/
      j|:D  \          `--'  ' ,'_  . .         `.__, \   , /
     / L:_  |                 .  '' :_;                `.'.'
     .    '''                  ''''''                    V
      `.                                 .    `.   _,..  `
        `,_   .    .                _,-'/    .. `,'   __  `
         ) \`._        ___....----''  ,'   .'  \ |   '  \  .
        /   `. '`-.--''         _,' ,'     `---' |    `./  |
       .   _  `'''--.._____..--'   ,             '         |
       | .' `. `-.                /-.           /          ,
       | `._.'    `,_            ;  /         ,'          .
      .'          /| `-.        . ,'         ,           ,
      '-.__ __ _,','    '`-..___;-...__   ,.'\ ____.___.'
      `'^--'..'   '-`-^-''--    `-^-'`.'''''''`.,^.`.--' mh

22/09/30 08:49:09: Loading data
22/09/30 08:49:09: Class balance:
{19: 900, 4: 900, 5: 900, 8: 900, 1: 900, 13: 900, 31: 900, 16: 900, 36: 900, 39: 900, 14: 900, 11: 900, 23: 900, 17: 900, 7: 900, 21: 900, 26: 900, 12: 900, 18: 900, 37: 900, 6: 900, 22: 900, 40: 900, 15: 900, 29: 900, 10: 900, 35: 900, 38: 900, 9: 900, 25: 900, 30: 900, 20: 900, 3: 900, 27: 900, 24: 900, 34: 900, 33: 900, 32: 900, 0: 900, 2: 900, 28: 900}
22/09/30 08:49:09: Avg len: 13.077235772357724
22/09/30 08:49:09: Loading word vectors
22/09/30 08:49:15: Total num. of words: 9376, word vector dimension: 300
22/09/30 08:49:15: Num. of out-of-vocabulary words(they are initialized to zeros): 1586
22/09/30 08:49:15: #train 18000, #val 4500, #test 14400
22/09/30 08:49:18, Building embedding
22/09/30 08:49:18, Loading pretrained bert
Some weights of the model checkpoint at bert-base-uncased were not used when initializing BertModel: ['cls.predictions.bias', 'cls.predictions.transform.dense.weight', 'cls.seq_relationship.weight', 'cls.predictions.transform.LayerNorm.bias', 'cls.predictions.decoder.weight', 'cls.predictions.transform.LayerNorm.weight', 'cls.seq_relationship.bias', 'cls.predictions.transform.dense.bias']

This IS expected if you are initializing BertModel from the checkpoint of a model trained on another task or with another architecture (e.g. initializing a BertForSequenceClassification model from a BertForPreTraining model).
This IS NOT expected if you are initializing BertModel from the checkpoint of a model that you expect to be exactly identical (initializing a BertForSequenceClassification model from a BertForSequenceClassification model).
22/09/30 08:49:19, Building augmented embedding
22/09/30 08:49:19, Building embedding
22/09/30 08:49:55: Building classifier
22/09/30 08:49:55, Start training
22/09/30 08:57:11, ep  0, train acc: 0.4341 ± 0.0953
22/09/30 08:57:27, ep  0, val   acc: 0.2714 ± 0.0634, train stats ebd_grad: 1.9589, clf_grad: 0.9190
22/09/30 08:57:27, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/0
22/09/30 08:58:42, ep  1, val   acc: 0.2698 ± 0.0622, train stats ebd_grad: 2.0828, clf_grad: 1.0325
22/09/30 08:59:16, ep  2, val   acc: 0.2676 ± 0.0699, train stats ebd_grad: 2.0500, clf_grad: 1.1261
22/09/30 08:59:48, ep  3, val   acc: 0.2974 ± 0.0766, train stats ebd_grad: 1.9573, clf_grad: 1.1916
22/09/30 08:59:48, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/3
22/09/30 09:00:28, ep  4, val   acc: 0.2914 ± 0.0696, train stats ebd_grad: 2.0284, clf_grad: 1.1392
22/09/30 09:01:01, ep  5, val   acc: 0.2679 ± 0.0668, train stats ebd_grad: 2.0021, clf_grad: 1.1489
22/09/30 09:01:35, ep  6, val   acc: 0.2734 ± 0.0568, train stats ebd_grad: 1.9017, clf_grad: 1.2707
22/09/30 09:02:08, ep  7, val   acc: 0.2983 ± 0.0753, train stats ebd_grad: 1.9184, clf_grad: 1.2527
22/09/30 09:02:08, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/7
22/09/30 09:02:44, ep  8, val   acc: 0.2695 ± 0.0675, train stats ebd_grad: 2.1273, clf_grad: 1.3529
22/09/30 09:03:18, ep  9, val   acc: 0.2798 ± 0.0586, train stats ebd_grad: 1.8675, clf_grad: 1.2499
22/09/30 09:03:50, ep 10, train acc: 0.5097 ± 0.0868
22/09/30 09:04:05, ep 10, val   acc: 0.2934 ± 0.0724, train stats ebd_grad: 1.8899, clf_grad: 1.2466
22/09/30 09:04:39, ep 11, val   acc: 0.2918 ± 0.0671, train stats ebd_grad: 1.9833, clf_grad: 1.3883
22/09/30 09:05:12, ep 12, val   acc: 0.2914 ± 0.0594, train stats ebd_grad: 1.8807, clf_grad: 1.3514
22/09/30 09:05:45, ep 13, val   acc: 0.3014 ± 0.0702, train stats ebd_grad: 1.9133, clf_grad: 1.3311
22/09/30 09:05:45, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/13
22/09/30 09:06:23, ep 14, val   acc: 0.2865 ± 0.0739, train stats ebd_grad: 1.8475, clf_grad: 1.3508
22/09/30 09:06:56, ep 15, val   acc: 0.2998 ± 0.0621, train stats ebd_grad: 1.8047, clf_grad: 1.3193
22/09/30 09:07:30, ep 16, val   acc: 0.2822 ± 0.0617, train stats ebd_grad: 1.9600, clf_grad: 1.4966
22/09/30 09:08:03, ep 17, val   acc: 0.2902 ± 0.0709, train stats ebd_grad: 1.8314, clf_grad: 1.3447
22/09/30 09:08:36, ep 18, val   acc: 0.3108 ± 0.0674, train stats ebd_grad: 1.8355, clf_grad: 1.4554
22/09/30 09:08:36, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/18
22/09/30 09:09:11, ep 19, val   acc: 0.3003 ± 0.0697, train stats ebd_grad: 1.7887, clf_grad: 1.5113
22/09/30 09:09:44, ep 20, train acc: 0.5346 ± 0.1068
22/09/30 09:09:58, ep 20, val   acc: 0.2990 ± 0.0643, train stats ebd_grad: 1.8295, clf_grad: 1.3671
22/09/30 09:10:32, ep 21, val   acc: 0.3064 ± 0.0760, train stats ebd_grad: 1.7967, clf_grad: 1.3695
22/09/30 09:11:06, ep 22, val   acc: 0.3014 ± 0.0685, train stats ebd_grad: 1.7788, clf_grad: 1.3475
22/09/30 09:11:38, ep 23, val   acc: 0.2991 ± 0.0750, train stats ebd_grad: 1.9317, clf_grad: 1.3862
22/09/30 09:12:11, ep 24, val   acc: 0.3006 ± 0.0658, train stats ebd_grad: 1.8795, clf_grad: 1.4360
22/09/30 09:12:45, ep 25, val   acc: 0.2970 ± 0.0669, train stats ebd_grad: 1.8233, clf_grad: 1.5418
22/09/30 09:13:17, ep 26, val   acc: 0.3048 ± 0.0665, train stats ebd_grad: 1.7199, clf_grad: 1.4293
22/09/30 09:13:55, ep 27, val   acc: 0.2917 ± 0.0798, train stats ebd_grad: 1.8592, clf_grad: 1.5341
22/09/30 09:14:28, ep 28, val   acc: 0.2974 ± 0.0720, train stats ebd_grad: 1.8037, clf_grad: 1.5600
22/09/30 09:15:01, ep 29, val   acc: 0.2789 ± 0.0632, train stats ebd_grad: 1.8537, clf_grad: 1.4444
22/09/30 09:15:35, ep 30, train acc: 0.5600 ± 0.1043
22/09/30 09:15:49, ep 30, val   acc: 0.3014 ± 0.0681, train stats ebd_grad: 1.8087, clf_grad: 1.4938
22/09/30 09:16:23, ep 31, val   acc: 0.3167 ± 0.0844, train stats ebd_grad: 1.9157, clf_grad: 1.5915
22/09/30 09:16:23, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/31
22/09/30 09:17:02, ep 32, val   acc: 0.3246 ± 0.0780, train stats ebd_grad: 1.8063, clf_grad: 1.6246
22/09/30 09:17:02, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/32
22/09/30 09:17:37, ep 33, val   acc: 0.3207 ± 0.0732, train stats ebd_grad: 1.7146, clf_grad: 1.4753
22/09/30 09:18:11, ep 34, val   acc: 0.2996 ± 0.0670, train stats ebd_grad: 1.8184, clf_grad: 1.5294
22/09/30 09:18:43, ep 35, val   acc: 0.3086 ± 0.0701, train stats ebd_grad: 1.7069, clf_grad: 1.4476
22/09/30 09:19:17, ep 36, val   acc: 0.2926 ± 0.0648, train stats ebd_grad: 1.8122, clf_grad: 1.4456
22/09/30 09:19:50, ep 37, val   acc: 0.3006 ± 0.0678, train stats ebd_grad: 1.7452, clf_grad: 1.5329
22/09/30 09:20:23, ep 38, val   acc: 0.3358 ± 0.0666, train stats ebd_grad: 1.7331, clf_grad: 1.4756
22/09/30 09:20:23, Save cur best model to /work/home/yanling_1/experiments/dingshuo/recurrent/Distributional-Signatures-master/src/tmp-runs/16644989957515234/38
22/09/30 09:20:58, ep 39, val   acc: 0.2932 ± 0.0636, train stats ebd_grad: 1.7973, clf_grad: 1.6944
22/09/30 09:21:31, ep 40, train acc: 0.5589 ± 0.1190
22/09/30 09:21:46, ep 40, val   acc: 0.2854 ± 0.0679, train stats ebd_grad: 1.8996, clf_grad: 1.7858
22/09/30 09:22:19, ep 41, val   acc: 0.3073 ± 0.0719, train stats ebd_grad: 1.7938, clf_grad: 1.6191
22/09/30 09:22:51, ep 42, val   acc: 0.3002 ± 0.0802, train stats ebd_grad: 1.6891, clf_grad: 1.5818
22/09/30 09:23:24, ep 43, val   acc: 0.2862 ± 0.0643, train stats ebd_grad: 1.8131, clf_grad: 1.6790
22/09/30 09:23:58, ep 44, val   acc: 0.3187 ± 0.0674, train stats ebd_grad: 1.6642, clf_grad: 1.5563
22/09/30 09:24:30, ep 45, val   acc: 0.3042 ± 0.0756, train stats ebd_grad: 1.7754, clf_grad: 1.6751
22/09/30 09:25:04, ep 46, val   acc: 0.3151 ± 0.0712, train stats ebd_grad: 1.7468, clf_grad: 1.6247
22/09/30 09:25:37, ep 47, val   acc: 0.2917 ± 0.0763, train stats ebd_grad: 1.7025, clf_grad: 1.6211
22/09/30 09:26:10, ep 48, val   acc: 0.2995 ± 0.0713, train stats ebd_grad: 1.7485, clf_grad: 1.5730
22/09/30 09:26:44, ep 49, val   acc: 0.3090 ± 0.0742, train stats ebd_grad: 1.7462, clf_grad: 1.5936
22/09/30 09:27:18, ep 50, train acc: 0.5898 ± 0.1078
22/09/30 09:27:32, ep 50, val   acc: 0.3054 ± 0.0727, train stats ebd_grad: 1.7511, clf_grad: 1.6006
22/09/30 09:28:06, ep 51, val   acc: 0.3162 ± 0.0735, train stats ebd_grad: 1.6522, clf_grad: 1.5482
22/09/30 09:28:39, ep 52, val   acc: 0.3225 ± 0.0674, train stats ebd_grad: 1.6537, clf_grad: 1.6075
22/09/30 09:29:11, ep 53, val   acc: 0.3195 ± 0.0817, train stats ebd_grad: 1.7523, clf_grad: 1.7846
22/09/30 09:29:45, ep 54, val   acc: 0.2998 ± 0.0622, train stats ebd_grad: 1.7747, clf_grad: 1.6322
22/09/30 09:30:18, ep 55, val   acc: 0.3150 ± 0.0731, train stats ebd_grad: 1.7161, clf_grad: 1.8001
22/09/30 09:30:51, ep 56, val   acc: 0.3072 ± 0.0717, train stats ebd_grad: 1.7957, clf_grad: 1.6432
22/09/30 09:31:24, ep 57, val   acc: 0.3070 ± 0.0757, train stats ebd_grad: 1.6782, clf_grad: 1.6280
22/09/30 09:31:58, ep 58, val   acc: 0.2934 ± 0.0678, train stats ebd_grad: 1.7224, clf_grad: 1.5827
22/09/30 09:31:58, End of training. Restore the best weights
22/09/30 09:32:15, acc mean  0.3062, std  0.0801
22/09/30 09:34:48, acc mean  0.3079, std  0.0877   `

Your command looks right to me. We believe that the issue come from the fact that the tokenizations have been changed. See https://github.com/YujiaBao/Distributional-Signatures/issues/32

Thank you very much for your quick reply, I see the reason for the problem.


feat: respect iox::column_type::field metadata when mapping query

Closes #
Proposed Changes
Briefly describe your proposed changes:
Checklist

[x] CHANGELOG.md updated
[x] Rebased/mergeable
[x] A test has been added if appropriate
[x] Tests pass
[x] Commit messages are conventional
[ ] Sign CLA (if not already signed)

Hi @karel-rehor
Thank you for your review
I made some adjustments,
Please check when you have time

Tests pass locally with nodejs v1.21. N.B. there was a failing test with nodejs v1.22, however it is unrelated to this PR. A note has been added to the backlog.
Changes make sense.

Tests pass locally with nodejs v1.21. N.B. there was a failing test with nodejs v1.22, however it is unrelated to this PR. A note has been added to the backlog.
Changes make sense.

@karel-rehor
Thank you for your review
I made the PR for support node v22 here
https://github.com/InfluxCommunity/influxdb3-js/pull/492


Windows CI: Turn off failing unit test pkg\fileutils

Signed-off-by: John Howard<EMAIL_ADDRESS>Annotates the failing ones as need further work to port. This allows us to get closer to turning off the flag which ignores unit test failures on the Windows CI runs.

^^ Former GDB trainee 'Utah'

LGTM 🐩

LGTM


Performance enhancment on SaveChangesAsync

refers to issue #2483

ok improved optimization and changed unspent arguments signature, from IEnumerable to IList


Got useConfirm custom hook working

Outcome of pair programming session with @jincypjose @Joel-C-Johnson

This change is

code look good to me. Thankyou @mannycolon now i am good to go.

I'm glad I could help out. Please let me know if there's anything else I could help with.


The Replace[ComponentName] that I written don't work in Unique Component?

My code:
[Core]
[Unique]
public class BattleSceneComponent : IComponent
{
    public string stage_id;
    public GameObject cr_gameobj;
    public GameObject bg_gameobj;
    public GameObject ui_gameobj;
    public int if_win = 0; //win = 1 , fail = -1, not end = 0
}

public static partial class CoreEntityExtention
{
    public static void ReplaceBattleScene(string stage_id)
    {
        CoreContext e = Contexts.sharedInstance.core;
        if (e.hasBattleScene)
        {
            e.ReplaceBattleScene(stage_id, e.battleScene.cr_gameobj, e.battleScene.bg_gameobj, e.battleScene.ui_gameobj, e.battleScene.if_win);
        }
        else
        {
            e.ReplaceBattleScene(stage_id, null, null, null, 0);
        }
    }
}

When I write Contexts.sharedInstance.core.ReplaceBattleScene("st001"); , there is a error says

No overload for method ReplaceBattleScene' takes 1' arguments

So that I have to write things likeContexts.sharedInstance.core.ReplaceBattleScene("st001", null, null, null, 0);.
Is there a better way to write my own Replace[ComponentName] which component is [unique]?

You have to use correct C# extension method syntax:
public static partial class CoreEntityExtention
{
    public static void ReplaceBattleScene(this CoreContext context, string stage_id)
    {
        if (context.hasBattleScene){
            context.ReplaceBattleScene(
                stage_id,
                context.battleScene.cr_gameobj,
                context.battleScene.bg_gameobj,
                context.battleScene.ui_gameobj,
                context.battleScene.if_win);
        }
        else{
            context.ReplaceBattleScene(stage_id, null, null, null, 0);
        }
    }
}

It works!
ThX very much ヾ(@^▽^@)ノ

However, the component can also be wonderfully divided into several parts so that this "hack" would not be necessary at all. Especially the if_win gives me a headache :smile:

@StormRene
hahaha.
After learning the IGroup, Collector, Matcher things, I know you are right.
 And I think they are ugly now.
I will rewrite before I really mad at them.


fix manifest.json for linux

I've only just realized what this is after getting the app to run a little more,
please do not use pyautogui to send mac-only keyboard shortcuts to my whole computer!!! command does not exist on windows/linux (I'm not sure if pyautogui translates it to control or not, because for me it does nothing except crash the application on later code) and it does not send it to the browser if it is minimized.
There are better ways to do IPC!
I guess that makes this obsolete because hopefully that whole thing will be scrapped.

well it doesnt crash if i manually open up the panel, but i don't really see the point of this whole starter selenium thingy, the extension works just as well (and to me, better) when i just install it into my browser


including disconnect in react app

Hi, i found your library for Discocgs, but i have a problem including it in my app.
I tried many ways:
import Discogs from 'disconnect/lib/client'
import Discogs from 'disconnect';
var Discogs = require('disconnect').Client;
Every time i get this error:
ERROR in ./~/disconnect/package.json
Module parse failed: C:\WORK\budgies\node_modules\disconnect\package.json Unexpected token (2:8)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected token (2:8)
I googled and found and tried many things like: http://stackoverflow.com/questions/33469929/you-may-need-an-appropriate-loader-to-handle-this-file-type-with-webpack-and-b
My webpack.js is like this:
`var path = require('path')
var webpack = require('webpack')
module.exports = {
devtool: 'cheap-module-eval-source-map',
entry: [
'webpack-hot-middleware/client',
'./index'
],
output: {
path: path.join(__dirname, 'dist'),
filename: 'bundle.js',
publicPath: '/static/'
},
plugins: [
new webpack.optimize.OccurenceOrderPlugin(),
new webpack.HotModuleReplacementPlugin(),
new webpack.NoErrorsPlugin()
],
module: {
loaders: [
{
test: /.js$/,
loaders: [ 'babel' ],
exclude: /node_modules/,
include: __dirname
}
]
}
}
`
My package.json is like this:
{   "name": "redux-todomvc-example",   "version": "0.0.0",   "description": "Redux TodoMVC example",   "scripts": {     "start": "node server.js",     "test": "NODE_ENV=test mocha --recursive --compilers js:babel-core/register --require ./test/setup.js",     "test:watch": "npm test -- --watch"   },   "repository": {     "type": "git",     "url": "https://github.com/rackt/redux.git"   },   "license": "MIT",   "bugs": {     "url": "https://github.com/rackt/redux/issues"   },   "homepage": "http://rackt.github.io/redux",   "dependencies": {     "babel-polyfill": "^6.3.14",     "classnames": "^2.1.2",     "es6-promise": "^3.1.2",     "isomorphic-fetch": "^2.2.1",     "react": "^0.14.6",     "react-bootstrap": "^0.28.4",     "react-dom": "^0.14.6",     "react-redux": "^4.0.6",     "react-youtube": "^5.1.0",     "redux": "^3.0.6",     "redux-persist": "^4.0.0-alpha7",     "redux-sequence-action": "^0.2.0",     "redux-thunk": "^0.1.0",     "immutability-helper": "^2.0.0",     "disconnect": "^1.0.2"   },   "devDependencies": {     "babel-core": "^6.3.15",     "babel-loader": "^6.2.0",     "babel-preset-es2015": "^6.3.13",     "babel-preset-react": "^6.3.13",     "babel-preset-react-hmre": "^1.1.1",     "babel-register": "^6.3.13",     "expect": "^1.8.0",     "express": "^4.13.3",     "jsdom": "^5.6.1",     "json-loader": "^0.5.4",     "mocha": "^2.2.5",     "node-libs-browser": "^0.5.2",     "raw-loader": "^0.5.1",     "react-addons-test-utils": "^0.14.0",     "react-transform-hmr": "^1.0.0",     "style-loader": "^0.12.3",     "todomvc-app-css": "^2.0.1",     "webpack": "^1.9.11",     "webpack-dev-middleware": "^1.2.0",     "webpack-hot-middleware": "^2.2.0"   } }
I also have babelrc:
{   "presets": ["es2015", "react"],   "env": {     "development": {       "presets": ["react-hmre"]     }   } }
What is wrong? Cannot i use disconnect like this?

I'm sorry but I don't use React, nor do I have the desire to actively investigate client side use of disconnect as it's intended as a server side Node.js tool. I'm open to pull requests that don't break anything server-side though.


allow apps to create modmail notifications

Currently apps can send modmails and create Mod Discussions, but they can't create mod Notifications.

This should be resolved now. I introduced a function reddit.modmail.createModNotification() which builds on top of the logic used to create mod inbox conversations (from issue #89).


Constructor based java.util.Date throws Exception, expects java.sql.TimeStamp

MyBatis version
3.3.1
Database vendor and version
SQL Server 2014
Test case or example project
Immutable POJO's with java.util.Date variables which are initialized using constructors.
Steps to reproduce
Use constructors, select expects java.sql.TimeStamp and doesn't work with java.util.Date
Expected result
Create an object with valid dates
Actual result
Throws exception saying constructor not found with given signature.

Try adding the @AutomapConstructor annotation to the constructor.

@jeffgbutler Thanks for your comment!! @AutomapConstructor works fine!!

Sorry for the late reply -
While @AutomapConstructor does work, I cant edit class code.
So, for now I am using javaType="java.util.Date" typeHandler="org.apache.ibatis.type.DateTypeHandler"


The datagrid of categories doesn't work

Terms

[X] Before you open this issue, I have checked if the issue has already been reported.

UnoPim Version(s) affected
0.1.1
Issue Description
When you go on "categories" menu, nothing is showed in the datagrid. It looks like it is empty, even if you create one
Preconditions
nothing special
Steps to reproduce

Go to 'categories' menu

Expected Result
A datagrid with the category records if it exists
Actual Result
Empty datagrid
Screenshots

Additional Context
No response

Perhaps it's because no translation field is available when filling the name and description fields.

I found the problem. I think that the demo version use PostgreSQL, that's why it works on the demo version. But in the in the packages\Webkul\Admin\src\Datagrids\Settings\ChannelDataGrid.php file, the method prepareQueryBuilder() is written to work with PostgreSQL and not MariaDB.
In fact, sql in MariaDB don't recognize the Json SQL Syntax additional_data->'$.locale_specific.en_US.name' (for example) but use instead the syntax: json_extract(additional_data, '$.locale_specific.en_US.name').
The correction have to be done in the bold part of the method:
public function prepareQueryBuilder()
{
    $requestedLocaleCode = core()->getRequestedLocaleCode();

    $fallbackLocaleCode = app()->getFallbackLocale();

    $tablePrefix = DB::getTablePrefix();

    $queryBuilder = DB::table('channels')
        ->leftJoin('channel_translations as requested_channel_translation', function ($leftJoin) use ($requestedLocaleCode) {
            $leftJoin->on('requested_channel_translation.channel_id', '=', 'channels.id')
                ->where('requested_channel_translation.locale', $requestedLocaleCode);

        })
        ->leftJoin('channel_translations as fallback_channel_translation', function ($leftJoin) use ($fallbackLocaleCode) {
            $leftJoin->on('fallback_channel_translation.channel_id', '=', 'channels.id')
                ->where('fallback_channel_translation.locale', $fallbackLocaleCode);

        })
        ->leftJoin('categories', function ($leftJoin) {
            $leftJoin->on('categories.id', '=', 'channels.root_category_id');
        })
        ->select(
            'channels.id',
            'channels.code',
            'channels.root_category_id',
            **DB::raw('(CASE WHEN CHAR_LENGTH(TRIM('.$tablePrefix.'requested_channel_translation.name)) < 1 THEN '.$tablePrefix.'fallback_channel_translation.name ELSE '.$tablePrefix.'requested_channel_translation.name END) as translated_name'),**
            **DB::raw('(CASE WHEN '.$tablePrefix."categories.additional_data->'$.locale_specific.".$requestedLocaleCode.".name' IS NOT NULL THEN REPLACE(additional_data->'$.locale_specific.".$requestedLocaleCode.".name', '\"', '') ELSE CONCAT('[', ".$tablePrefix."categories.code, ']') END) as translated_category_name")**
        );

    $this->addFilter('id', 'channels.id');
    $this->addFilter('code', 'channels.code');
    $this->addFilter('translated_name', 'requested_channel_translation.name');
    **$this->addFilter('translated_category_name', DB::raw('(CASE WHEN '.$tablePrefix."categories.additional_data->'$.locale_specific.".$requestedLocaleCode.".name' IS NOT NULL THEN REPLACE(additional_data->'$.locale_specific.".$requestedLocaleCode.".name', '\"', '') ELSE ".$tablePrefix.'categories.code END)'));**

    return $queryBuilder;
}

Thank you in advance for fixing
Kind Regards

@helgvor-stoll, at this time, our project only supports MySQL databases. The issue you're encountering is likely due to the use of a MariaDB database. We will look into adding MariaDB support in future releases.

@helgvor-stoll
Thank you for the update! We appreciate your contribution to making Unopim compatible with MariaDB. We'll review the changes in the \Webkul\Admin\src\Datagrids\Settings\ChannelDataGrid.php and \Webkul\Admin\src\Datagrids\Catalog\CategoryDataGrid.php files to ensure compatibility and alignment with our project standards. Your efforts help improve the flexibility and accessibility of Unopim. We'll check the feasibility and update as necessary. Thanks again for your valuable input!

Added in v0.1.2


10

Issue Type: Feature Request
Context

Managed Dependencies: on
Cloud SDK Version: 393.0.0
Skaffold Version: v1.39.1
Minikube Version: 1.26.0

VS Code version: Code 1.69.1 (b06ae3b2d2dbfe28bca3134cc6be65935cdfea6a, 2022-07-12T08:21:24.514Z)
OS version: Windows_NT x64 10.0.19044
Restricted Mode: No

This issue has been closed automatically because it needs more information and has not had recent activity. See also our issue reporting guidelines.
Happy Coding!


On dashboard view of forum posts, make sure profile images fit properly

This one sort of escapes the boundaries of the forum title container section:

The new look is nice!

What are your thoughts about removing the small white border around the avatars? Remo mentioned this being related to the way that Bootstrap handles thumbnails. @krand7
The "thumbnail" effect is even more present (i.e. bigger border) on the forum index and forum threads.

I initially removed the border, but it looked odd and out of place. Went with the smaller border instead, which is why you can see it looks different than in the forums


Fix 'file or module does not exist' error

Problem: When running against remote host, the playbook failed with the following error:
TASK [cmacrae.sensu : Untar the ssl_certs tarball from sensuapp.org] ***********
fatal: [x.x.x.x]: FAILED! => {"failed": true, "msg": "file or module does not exist: /etc/sensu/ssl_generation/sensu_ssl_tool.tar"}

despite file being correctly placed by the previous task.
Explanation: By default Ansible's  unarchive module fetches the file from the local path: "If true, the file is copied from local 'master' to the target machine, otherwise, the plugin will look for src archive at the target machine."
Solution: Added copy: no argument to force Ansible to look where the file really is.

Fixed in #25


⚠ Fortnite has degraded performance

In 8daeec2, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1450 ms

Resolved: Fortnite performance has improved in bc54f38.


Simtest: decrease number of threads to 12

Description

Decrease the number of threads to 12
In case GH actions agent is crashing, always run notify on a different runner.

Test Plan
Testing via the branch

Moving this work into https://github.com/MystenLabs/sui/pull/9657


Introduce a buffer class

A lot of things would make sense to live in a buffer class, this is also a big step towards converting the rest of xterm.js to TypeScript.

Done :smiley:


Remote Send Continuous - Not working

Describe the bug
When pressing the send button on a saved capture, it says hold to send continuously. But once the signals are done, even when holding the button, it just changes the button to send and doesn't continuously send
To Reproduce
Steps to reproduce the behavior:

Open the App
Click a SubGhz capture
Click and hold send
Sends once, not continuously

Expected behavior
Sends continuously

Can you provide used software versions, device info(can be gathered throw cli device_info) and file that you trying to send

Open back up, please, when you provide the information


frontend cluster/Overview: Show only warnings by default

By default we should show only warnings. This wrong default has been
around since we added the related switch.

test snapshots need updating


Add ffmpeg and mp4decrypt path options

This is a small update adding ffmpeg and mp4decrypt paths to the cli.

@anijackich, could you take a look, please? :)

@anijackich Thanks!


[Pawn.CMD] File or function is not found in public OnPlayerCommandText(0, "/unban Ark_Jithu") - please note that the AMX error is not related with the plugin, but your script

[Pawn.CMD] File or function is not found in public OnPlayerCommandText(0, "/unban Ark_Jithu") - please note that the AMX error is not related with the plugin, but your script

As the report states, this error is not related to the Pawn.cmd plugin, but rather to your script.


What property we need to use to pass --volume-driver=nfs to the docker run

Cookbook version
i think its 2.5.9
Chef-client version
12.4.1
Platform Details
AWS Amazon linux
Scenario:
I'm trying to set --volume-driver=nfs to docker run. I can able to pass hostname,volumes,env,etc. Please help to pass nfs to the volume which i'm gonna mount it in container. I believe there should be property in our cookbook, kindly let me know what property i have to use?
Steps to Reproduce:
I would like to what property we need to use to pass value for --volume-driver=nfs
Expected Result:
Please help me soon and let me know if any info is missed
Actual Result:
I'm able to pass all other properties to docker run.

added in 088f636

released in v2.13.6


notifyAdapterItemChanged (with payload) not working after itemAdapter.withComparator

This is my code:
radioGroup.setOnClickedButtonListener(RadioRealButtonGroup.OnClickedButtonListener {
            button, position ->
            when(button){
                ratingButton -> {
                    playersInFastAdapter.itemAdapter.withComparator(compareBy({ it.player.overallScorePosition }), true)

                    for(i in 0 .. playersInFastAdapter.adapterItemCount){
                        playersInFastAdapter.notifyAdapterItemChanged(i, App.PAYLOAD_RANKING_RATING_LIST)
                    }
                }
                goalsButton -> {
                    playersInFastAdapter.itemAdapter.withComparator(compareBy({ it.player.goalsPosition }), true)

                    for (i in 0..playersInFastAdapter.adapterItemCount) {
                        playersInFastAdapter.notifyAdapterItemChanged(i, App.PAYLOAD_RANKING_GOALS_LIST)
                    }
                }
            }
        })

If I comment this line: playersInFastAdapter.itemAdapter.withComparator(compareBy({ it.player.overallScorePosition }), true), the notifyAdapterItemChanged with payload (inside for) works fine.
Any idea of what I may be missing?

@guuilp well withComparator sorts your items when added, and triggers a complete notify. The Adapter + RecyclerView of Android is clever enough to not execute the single notifies after this, because it's not necessary

https://github.com/mikepenz/FastAdapter/blob/develop/library-core/src/main/java/com/mikepenz/fastadapter/adapters/ItemAdapter.java#L103

Is there any way of know when this complete notify is triggered?

well you trigger it with the sort now.
no listener though I think

This is a necessity of my scenario... That's because, first I need to change the order of items on recycler view and after that, change the layout of my items.

well why not change the layout when the full notify is triggered?

You mean after I change the order, using the withComparator? If there's any way of knowing, inside my FastAdapterItem, when the notify came from a withComparator, it may be solve my problem.

well either you sort your list from the beginning and then you just notify.
if you have to change the comparator, you can somewhere define the type of the items.
or you do the sorting manually

Explaining a little better my scenario:
I have four buttons on the screen. When the user clicks in one them, it changes the order of the list and should change (just a textview value, actually) the items layout.
Now I'm sorting when the user clicks in one of the four buttons, as I showed in the first code block of this issue. The sorting with Fast Adapter has a smooth animation that I'd like to keep.
If I sort the list from the begining, I should have four lists actually, already sorted, and then change them in the fast adapter (maybe a clear and then addAll). This would cause a blink effect, and not a reordering, talking about animation.
If sorting manually is the only option, could you give me some advice of how could I achieve that, please?

Well or a better method. you extend the ItemAdapter (as the usecase you have is a bit special, usually you want it to notify the whole list) and override the withComparator method, and simply do not call the notifyAdapterDataSetChanged()
https://github.com/mikepenz/FastAdapter/blob/develop/library-core/src/main/java/com/mikepenz/fastadapter/adapters/ItemAdapter.java#L107

Wouldn't this be the same as sorting manually? Like:
                    Collections.sort(playersInFastAdapter.adapterItems, compareBy{ it.player.overallScorePosition })

                    for(i in 0 .. playersInFastAdapter.adapterItemCount){
                        playersInFastAdapter.notifyAdapterItemChanged(i, App.PAYLOAD_RANKING_RATING_LIST)
                    }

@guuilp well you could keep the same mechanisms but only notify then manually. yeah.

@mikepenz I thanks a lot your effort to help me, but I think my case it's too specific and no options seems to work. I don't blame you, it's my awkward usecase. I'm going to follow with fast adapter.clear and fastAdapter.add on the already sorted list... Unfortunately is not the most beautiful animation, but works. Anyway, thanks again for your library, it's awesome!

@guuilp in addition you might just want to disable the animation while doing this?
You might also just want to use a field which is accessible from the item from the adapter or so, defining how it should look like. so you handle it when the complete list is re-drawn


shell (bash) non-empty string test works without -n

The following warning is wrong:
https://code.google.com/p/google-styleguide/source/browse/trunk/shell.xml?r=112#
716

[[ "${my_var}" ]] is, when quoted, always exactly the same as [[ -n "${my_var}"
]] regardless of my_var contents, as far I've tested. Even with [ builtin. Can
you provide a counterexample?

Original issue reported on code.google.com by<EMAIL_ADDRESS>on 9 Nov 2013 at 3:37

this is likely obsolete.  the current shell style guide tells people to use explicit -z and -n for clarity purposes.  which is what we want.  implicit empty string tests are bad form.

To avoid confusion about what you're testing for, explicitly use -z or -n.


dynamic schedule / retry

Hi
Is it possible to pass in custom meta data when scheduling a job? This would allow me to decide if a retry should be attempted or not, allowing it to be set when scheduling gives control back to the callee.
response = await rateLimiter.schedule(         {           retry: false, //this is a custom piece of meta data           expiration: 15000,         },         () => fetch(requestWithHeaders, requestOptions)       );
`
rateLimiter.on('failed', async (error, jobInfo) => {
  logger.error(`FAILED: ${JSON.stringify(jobInfo)}`);

 if(jobInfo.retry) {
   if (jobInfo.retryCount < retries - 1) {
     logger.debug(`Retrying job ${id} in ${retriesIntervalMilliseconds}ms!`);

    return retriesIntervalMilliseconds;
  }

}
});
`

Or retry count is added as an advanced option -
https://www.npmjs.com/package/bottleneck#job-options

Would adding options to this line - https://github.com/SGrondin/bottleneck/blob/master/lib/Bottleneck.js#L543 enable this?

Closing


[1.15] Crash on Startup in modpack

Hi! I'm having an issue where my game crashes on startup when Apotheosis is added to my existing modlist. This does not occur in an instance with only Apotheosis, so it's gotta be a mod conflict, but I haven't had much luck figuring out what the issue is. The problem goes away when I remove Apotheosis. Placebo has been in the pack the whole time, without issue.
I am using 1.0.1 of this modpack: https://www.curseforge.com/minecraft/modpacks/rustic-wanderings
Apotheosis: 3.2.2
Forge: 31.2.30 and 31.2.31
Placebo: 3.1.0
Here's one of the crash reports I received: https://pastebin.com/cJaYamEL
The mods indicated in the lower half of the report (RandomPatches, Improved Stations) do not appear to actually be the issue. Removing them implicates random other mods, including shedaniel's other mod, Rare Ice. It also takes issue with Savage and Ravage's version of the Pillager Outpost, although it doesn't mention the mod by name, just the structure while that mod is loaded.
Let me know if I can provide any other information! Thanks for your time.

Welp, pastebin is dead, so hopefully I remember to check this later

I got you, boo: https://hastebin.com/nogepejono.makefile

Since that happens to be a caught FML loading exception, I'll need the entire debug.log to properly look into it.

I seem not to have debug.log enabled. Here's the latest.log in the meantime: https://paste.ee/p/fQMKE
Can I just enable it in fml.toml?

As far as I know it should just be there, so, uh, good question...

I just checked, and not only do I not have a debug.log for this modpack, I don't have it for ANY of the packs on this computer, some of which are 1.12.2. o-o I'm wondering if this is some Twitch launcher nonsense somehow...

Hm, might be, my MMC packs all have the debug logs present.

Ye that was the problem. I guess I missed the part where MultiMC decided to support forge past 1.13 after all, or I'd have been using that the whole time, lol. Anyway, that worked, and here's the debug.log for ya - https://paste.ee/p/fwPMQ

Well, that doesn't appear to contain the actual source either.  Which means it's probably a coremod conflict, but sourcing what that might be is basically impossible without just identifying the two conflicting mods.

Well, heck. Okay, I will get back to isolating the offending mod. I'll keep you posted, thank you!

For my reference: In an isolated instance, I gradually added all the mods listed in the "Forge CoreMods" section of the crash report, plus MixinBootstrap. Was unable to replicate the crash. Next step is to test various performance mods to see if it's one of them.

Well I have no idea what it is.  I don't think it's anything fixable on my end.

Yeah sorry, I have been meaning to do more testing but I'm dealing with
some health issues that have been limiting my time. I apologize for not
being more helpful. If I find anything useful I will reopen, otherwise I'll
just assume it's a weird mod conflict. Thanks for your help!
On Wed, Aug 5, 2020, 8:50 PM Brennan Ward<EMAIL_ADDRESS>wrote:

Well I have no idea what it is. I don't think it's anything fixable on my
end.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Shadows-of-Fire/Apotheosis/issues/191#issuecomment-669635327,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE7XE5UWELI3KBYCVSGT4MTR7ID6DANCNFSM4OXPRCHQ
.


Tracking issue for V10

As I understand it, V10 of Juno is pretty feature-heavy. Opening this so we can track what's happening.
cc @joeabbey / @faddat / @dimiandre
As far as possible, these should be done one branch per issue.

[x] Remove ignite CLI
[ ] SDK 46 https://github.com/CosmosContracts/juno/issues/232
[ ] Liquid staking

Commonwealth discussion on various options
Text prop (yes/no etc) based on outcome of that
PENDING VOTE PASSING: Iqlusion liquid staking https://github.com/CosmosContracts/juno/issues/234 OR another impl

[ ] Wasmd upgrade:

[ ] https://github.com/CosmWasm/wasmd/pull/912 -  intertx is disabled
[ ] https://github.com/CosmWasm/wasmd/pull/923

I am assuming ICQ will be v10 of Juno as there are at least two competing implementations and we will need to make a call on which makes most sense for Juno.
Probably also v11 of Juno:

[ ] Token Factory https://github.com/osmosis-labs/osmosis/tree/main/x/tokenfactory
[ ] ICA - need to revisit #215 once the above two things are done
[ ] ICS https://github.com/CosmosContracts/juno/issues/233

Related Pull requests:
Juno:

#207

IBC:

https://github.com/cosmos/ibc-go/pull/1418
https://github.com/cosmos/ibc-go/pull/1443
https://github.com/cosmos/ibc-go/pull/1653
https://github.com/cosmos/ibc-go/pull/1709
https://github.com/cosmos/ibc-go/pull/1734
https://github.com/cosmos/ibc-go/pull/1782

CW:

https://github.com/CosmWasm/wasmd/pull/912
https://github.com/CosmWasm/wasmd/pull/873
https://github.com/CosmWasm/wasmd/pull/863

Interchain Accounts:

https://github.com/cosmos/interchain-accounts-demo/pull/105

Hey, I'd like to propose this as v10:
https://github.com/CosmosContracts/juno/pull/262

Have updated to clarify that v10 will be 0.45.7 not 46

Note: #262 has been merged with non-mainline wasmd.
Before v10 is shipped, we need to wait for wasmd to be updated to work with our changes.


Added contact us in restaurant website

Title and Issue number

Title : Contact us
Issue No. : 1050
Code Stack : HTML,CSS
Close #1050

Video (mandatory)

https://github.com/user-attachments/assets/a46ca4fc-077b-42c9-ab2b-6669b9ec37c7
Checklist:

[X] I have mentioned the issue number in my Pull Request.
[X] I have commented my code, particularly in hard-to-understand areas
[X] I have created a helpful and easy to understand README.md
[X] I have gone through the  contributing.md file before contributing

Additional context (Mandatory )
Are you contributing under any Open-source programme?

[X] I'm a GSSOC'24 contributor
[ ] I'm a SSOC'24 contributor

@apu52 Please review my PR and merge it under gssoc


Completing a recurring task setting wrong status for new task [if the next custom status is not TODO]

Please check that this issue hasn't been reported before.

[X] I searched previous Bug Reports didn't find any similar reports.

Expected Behavior
When completing a recurring task, a new task will be made and the status of this new task will be set to type TODO.

Current behaviour

Steps to reproduce

Set task statuses as follows:

This is how it makes sense for me. Clicking once completes the task, clicking again cancels it. Clicking a third time "resets" it to To-do. Cancelled tasks are striked through, completed tasks are not.

Create a recurring task (copy and paste):
- [ ] Cook potatoes 🔁 every day 📅 2023-09-29

Complete the task by clicking the checkbox.

The original task will be finished and the newly created task will be cancelled.

Which Operating Systems are you using?

[ ] Android
[ ] iPhone/iPad
[ ] Linux
[ ] macOS
[X] Windows

Obsidian Version
1.4.14
Tasks Plugin Version
5.8.1
Checks

[X] I have tried it with all other plugins disabled and the error still occurs

Possible solution
In my case, my "toggle sequence" is:
Not done [ ] => Done [*] => Cancelled [x]
It seems that the new task takes the next status from the sequence, starting from the new status of the original task. I suggest instead taking the status before the new status.
This might not work for all users, so an alternative is to instead proceed through the sequence, until a status is found with type TODO.

Thanks for using Tasks.
There is content in your screenshots that is not provided as text for me to copy, so for reasons explained in the following post, I am unable to investigate:
https://publish.obsidian.md/tasks/Support+and+Help/Report+a+Bug
If you can provide full text, and full numbered steps for a reproduction, as per the above, I will willingly have a look when I have time.
Thank you.

@jwsteens Hi, I just want to make sure that you've seen the question above...

@claremacrae Hello Clare, sorry for my delay. I have edited my original post, hope this helps.

Thank you very much, I've been able to reproduce it now.
Please could you have a read of this:

https://github.com/obsidian-tasks-group/obsidian-tasks/issues/2089

I suspect that you have used the same unusual cycle of statuses. Could you kindly confirm please?

Here is a zipped copy of the Tasks settings for the custom statuses shown above, to save having to recreate them manually every time this is looked at:
data.json.zip

I believe the person from the other thread has a similar "cycle" as I do, but he has a different intention. He says that when he wants to cancel a task, no recoccuring task should be created. When I cancel the task, I do want a reoccuring task to be created. So far, that is already happening. I believe I am not requesting a feature request here.
The problem I have is that when I either finish or cancel a task, the new reoccurence will be cancelled, as the next status will be assumed.
Like the other person said, no one wants a reoccuring task (which is newly created after finishing or cancelling the current task) to have a status other than TODO.
I believe that no person has a status cycle that does not loop back to some TODO status eventually. If you have a task which is finished and you click the checkmark again, I think everyone wants it to be set back to TODO? I must say I am not an "advanced" user of this plugin, as in, I don't use 20 different statuses. So I can't say that this is the case for certain, of course.
If this is the case, however, I think it would suffice to keep "cycling" the status of the new reoccurence until it has a TODO status, whichever symbol may be connected to this.
If this does end up annoying people, perhaps a "default TODO status" setting would work? Users can set which (custom) status new tasks should have.
As obsidian by default only differentiates between three checkbox states (empty checkbox, checkbox checked but text not striked through and checkbox checked and text striked through) it makes sense to me to use only three statuses. I would like to flip to any of these three states by clicking two times at most.
I hope I am making some sense...

@jwsteens Many thanks for the reply. There's a lot unpack there, so I gave the following headings!
Same requests?

I believe the person from the other thread has a similar "cycle" as I do, but he has a different intention. He says that when he wants to cancel a task, no recoccuring task should be created. When I cancel the task, I do want a reoccuring task to be created. So far, that is already happening.

That's a shame. Thanks very much for checking.
The Tasks custom status and recurrence code was designed to work with recurring tasks where the user's custom statuses are loops, like in these two examples in the docs:

Todo -> In Progress -> Done
Separate cycle for Important tasks

So as I understand it, the only two users who have logged requests for changes in this area are both not using loops that go from DONE to TODO - but are asking for differing changes.
Bug or feature?

I believe I am not requesting a feature request here.

In a sense, it doesn't matter what we call it.
From your perspective, Tasks isn't doing what you want it to do. So I understand that it feels like a bug.
From my perspective, this issue is because Tasks is being used in a way it wasn't designed for, and the Tasks status code is behaving as designed, after careful thought and a month of development work and testing. So it's a feature request, because it's a request for a change from the designed behaviour.
Either way, the change is a non-trivial amount of work - coding, testing, documenting, and supporting the behaviour forever more.
Having recurrence make DONE always be followed by TODO

The problem I have is that when I either finish or cancel a task, the new reoccurence will be cancelled, as the next status will be assumed.
Like the other person said, no one wants a reoccuring task (which is newly created after finishing or cancelling the current task) to have a status other than TODO.

I do agree with that. It just never occurred to me that people would set up cycles where what followed DONE was not TODO.
no person has a status cycle that does not loop back to some

I believe that no person has a status cycle that does not loop back to some TODO status eventually. If you have a task which is finished and you click the checkmark again, I think everyone wants it to be set back to TODO? I must say I am not an "advanced" user of this plugin, as in, I don't use 20 different statuses. So I can't say that this is the case for certain, of course.

That situation is more frequent than the situation in this request.
Specifically, the most common thing is that users don't know that they need to set up custom statuses in the settings.
For example:

#1717

Changing the algorithm to detect next status

If this is the case, however, I think it would suffice to keep "cycling" the status of the new reoccurence until it has a TODO status, whichever symbol may be connected to this.

I have thought about that quite a lot, both with this request and with the one I linked to above.
It definitely seems appealing, as it would work for both the typical case of a standard loop, and your case of DONE not being followed by TODO.
I think it is more complicated than it seems. There are going to be corner cases to figure, like what happens when cycling the status of the new recurrence never reaches a TODO - in which case it would get stuck in an infinite loop.

If this does end up annoying people, perhaps a "default TODO status" setting would work? Users can set which (custom) status new tasks should have.

Is that one setting?
Or one setting on every custom status?
How would Tasks know when to use that new status?
Obsidian's 3 rendering options for checkboxes

As obsidian by default only differentiates between three checkbox states (empty checkbox, checkbox checked but text not striked through and checkbox checked and text striked through) it makes sense to me to use only three statuses. I would like to flip to any of these three states by clicking two times at most.

Huh, I never noticed that before.
## Checked

- [ ] space 🔁 every day ⏳ 2023-09-30

## Checked and struck out

- [x] x 🔁 every day ⏳ 2023-09-30
- [X] x 🔁 every day ⏳ 2023-09-30

## Checked, not struck out

- [-] hyphen 🔁 every day ⏳ 2023-09-30
- [y] y 🔁 every day ⏳ 2023-09-30
- [z] z 🔁 every day ⏳ 2023-09-30

Gives this:

What next

I hope I am making some sense...

Yes, I do now understand your request, and it is logical. Thanks for taking the time to explain it.
My concern is the amount of time it will take to implement and document, for what is a rare request.
There's already a lot of requests for new features and bug fixes...
I hope you understand.

If this is the case, however, I think it would suffice to keep "cycling" the status of the new reoccurence until it has a TODO status, whichever symbol may be connected to this.

A couple of people have suggested this.
However, I've been thinking about this, and I think that a new recurrence should be allowed to haves status type:

either TODO
or IN_PROGRESS

Specifically, it's the DONE and CANCELLED states that there is no value in using on a new recurrence...

This has been fixed by #2516.
There's more work to be done before release, but it will be included in the next tasks release.

Just to note that I'm updating the code for generating Mermaid status diagrams - as used in the "Check your Statuses" reports - to show any non-standard transitions for new recurrences of recurring tasks...
It will be shown like this:


Clarify when and why LearningRateScheduler is called

Clarify when and why LearningRateScheduler is called
Discussed here: https://pytorch-lightning.slack.com/archives/CRBLFHY79/p1654788931469689
Fixes #<issue_number>
Does your PR introduce any breaking changes? If yes, please list them.
None
Before submitting

[ ] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[ ] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure your PR does only one thing, instead of bundling different changes together?
[ ] Did you make sure to update the documentation with your changes? (if necessary)
[ ] Did you write any new necessary tests? (not for typos and docs)
[ ] Did you verify new and existing tests pass locally with your changes?
[ ] Did you list all the breaking changes introduced by this pull request?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or minor internal changes/refactors)

PR review
Anyone in the community is welcome to review the PR.
Before you start reviewing, make sure you have read the review guidelines. In short, see the following bullet-list:

[ ] Is this pull request ready for review? (if not, please submit in draft mode)
[ ] Check that all items from Before submitting are resolved
[ ] Make sure the title is self-explanatory and the description concisely explains the PR
[ ] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

I agree with your suggestions, it does make it clear!


get-logs --tail flag doesn't work when stats is on

Logs will only pull via stats for jobs that have been finished, so --tail makes no sense


[AMBARI-24197] Change Orchestrator for Lifecycle groupings

What changes were proposed in this pull request?
VERY initial commit to start orchestrating with lifecycle.
Also fixed issues with distribution of bits and creating repo files.
How was this patch tested?
No new tests at this time.  Automated tests are no worse than previous:
[ERROR] Tests run: 4810, Failures: 10, Errors: 62, Skipped: 97
[INFO]

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Github-PullRequest-Builder/2889/
Test FAILed.
Test FAILured.


Default layout and partial folders to views configuration.

Hi.
This code (in server.js file in the root of the project):
// setup code snipped

var express = require('express');
var expressHbs = require('express-handlebars');

var app = express();

app.set('views', PATH.resolve(__dirname, 'templates/layouts'));
app.engine('hbs', expressHbs({extname:'hbs', defaultLayout:'main.hbs'}));
app.set('view engine', 'hbs');

app.get('/', function(req, res){
  res.render('index');
});

app.listen(8080);

where templates is (and it is in the root folder, the same with the server.js above):
templates
└───layouts
│        └───main.hbs
└───index.hbs

produces this (abridged):
Error: ENOENT, open '<path-to-root-folder>/views/layouts/main.hbs'

The reason for that is this:
https://github.com/ericf/express-handlebars/blob/master/lib/express-handlebars.js#L27
where the path to layout is expected to be views/layouts without taking into consideration the actual placement of the views folder as configured by this:
app.set('views', __dirname + '/templates');

Current way to resolve such issues is to add an additional configuration using layoutsDir setting:
app.engine('hbs', HBS({
            extname:'hbs',
            defaultLayout:'main.hbs',
            layoutsDir: PATH.resolve(__dirname, 'templates/layouts')
        }));

I think the default shouldn't use views hard-coded, rather use app.get('views') in order to resolve the layouts and partials placement, while, perhaps, defaulting on layouts and partials folders' names.
I'd do PR, but I am a little stressed on time.

Looks like this is addressed by issue #147 and PR #148.


Define a data deletion policy

For the claim-tokens microservice, we're storing ip, timestamp, and email used. We need to define how and when these information can be removed once used for the purposes

Closing as no longer valid


Restore support for consul as a kvstore backend

Proposal
With the 1.11 release, support for consul as a kvstore backend has been documented as being deprecated. Mentions of consul were removed from the documentation and the reason for deprecation was listed as being "due to a lack of community interest".
The commit message (in https://github.com/cilium/cilium/pull/17993) provides a bit more detail:

Consul support has been primarily used for developer environments in
local testing, but we are not aware of any users running clusters
depending on Consul for Cilium control plane co-ordination. Deprecate it
in preparation to remove support in a future release, to minimize the
maintenance burden of this code.

I guess one (possibly intended?) side effect of making this deprecation could be to solicit interest from the community that you may not be aware of, and it is my intent in filing this request to register interest and request that support be continued because I believe there are good use cases for this support.
My use case for this is not in developer environments. Rather, I am interested in using Cilium as a networking layer with Nomad (which can be an alternative to Kubernetes). Nomad uses Consul internally, so Nomad clusters will already have Consul available (and scaled appropriately to handle the cluster size) but would have to run etcd as a second configuration service. Cilium's support for Consul makes it an appear to be a good option for use with Nomad, and Nomad's blog post announcing support for CNI plugins even mentions cilium by name: https://www.hashicorp.com/blog/multi-interface-networking-and-cni-plugins-in-nomad-0-12
It was Cilium's Consul support that make it the more attractive option over Calico since it makes Cilium appear much more Hashicorp-friendly rather than being completely locked into the Kubernetes ecosystem. It also seems like it should drop into the Nomad ecosystem fairly straightforwardly (although I have not tried yet - I was stopped in my tracks when I found out that this support has been deprecated).
There is another issue around documenting how to use Cilium in Nomad that is also relevant (and other comments there indicate other potential Cilium users who value Consul support): https://github.com/cilium/cilium/issues/18334

We have discussed in the community meeting March 2nd, 2022 that we won't remove Consul support for 1.12. Thank you for opening this issue.

Thank you for reconsidering support for Consul. I'm in the process of building a Hashistack cluster and Cilium is a perfect fit (especially because of the new VXLAN support)!

I second brotherdust's comment, I'm also building this out.

We have discussed in the community meeting March 2nd, 2022 that we won't remove Consul support for 1.12. Thank you for opening this issue.

Can you also restore the documentation for Consul integration, please?

this is a project to integrate Cilium on Nomad, and it relies on Consul: https://github.com/cosmonic/netreap
Ideally, we should for support for the Nomad KV store.

After more than two years (6 releases) of being officially deprecated, we've finally removed support for Consul in Cilium. Hopefully, that gave enough time for users to implement the etcd alternative, as the netreap project mentioned above did.
This removal won't be officially released until v1.17 in several months. It is still possible someone or some group will have the willingness and time to maintain Consul support in Cilium and will allow us to revert course. That would at least require  documenting the support, rewriting the Consul end-to-end tests to stop using the deprecated Runtime suite, before being able to revert the removal pull request and the deprecation warning.


Chore(refactor): Modify Chaos CI Lib use actions, remove vendors, refactor code

Signed-off-by: uditgaurav<EMAIL_ADDRESS>Mojor Changes

Use GitHub Actions for pushing images per commit and release.
Remove vendors
Refactor Chaos CI Lib code
Fix the current broken flow

Logs for all experiments
Please download the given file
all-experiments-logs.txt


fixed multi chunk bug

BUG: When server send package with more than one chunk.
FIX: reassemble the multiple chunk into a complete message before handleMessage

Duplicate


Docs update

Making a lot of the docs prettier now that I am more familiar with rst.
Structure improved.
Will put into testing stage once I am done making changes, proofreading, etc.
Description

TESTING STAGE

Types of changes

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[x] I have read CONTRIBUTING.md
[x] I fully understand Github Flow.
[N/A] My code adheres to the code style of this project.
[N/A] I have updated the documentation in /docs if I have changed the config, arguments, logic in how the bot works, or anything that understandably needs a documentation change.
[N/A] I have updated the config file accordingly if my change requires a new configuration setting or changes an existing one.
[N/A] I have tested the bot with no issues for 24 continuous hours. If issues were experienced, they have been patched and tested again.

Looks good, nice work.  :)


Skip abstract class when running AnonymousMigrationsRector

See https://github.com/rectorphp/rector-laravel/issues/50
Closes https://github.com/rectorphp/rector-laravel/issues/50

Thank you :clap:


Using any one of them Glide or Picasso

Actual Behaviour
Both Glide and picasso is being used for fetching of images or anything.
Expected Behaviour
It would be better that any one can be used + apk size will be reduced too.
Would you like to work on the issue?
I'm working on this. :)

I guess it would be better to use Glide as it supports everything that of picasso + picasso doesnot support gifs.
@kunall17 @Sam1301 Any suggestions?

@saketkumar95 yeah glide is better than picasso perf wise, you would prefer Glide for use. @kunall17 thoughts on this?

We need to support GIF so we'll have to use glide!

@kunall17 Yeah. I used Glide only. :)

Is this issue resolved?

yeah, a pr has been made to address to issue.

Is this issue still open?

Is issue still open ?

@meghalagrawal I guess not, a pr has been opened for this.


New control : GUID

Category

[ ] Enhancement
[ ] Bug
[x] Question

Expected / Desired Behavior / Question
Is it worth having a property pane control which will accept only valid GUID?
If yes, I am happy to work on this.
Sample scenario - ID of a termset is needed by a webpart so that the related terms can be fetched example - this webpart

Hi @anoopt!
If it's needed once, there will be others who'll benefit from such a control.
So feel free to implement it!

Thank you @AJIXuMuK I will work on it.