chore: CE changes for Linting ModuleInputs

Description
CE changes for moduleInputs entity linting
PR fixes following issue(s)
Fixes https://github.com/appsmithorg/appsmith-ee/pull/2720
Type of change

Chore (housekeeping or task changes that don't impact user perception)

Test Plan
Issues raised during DP testing
Checklist:
Dev activity

[x] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

/ok-to-test sha=f43cf36


在Sorting阶段卡在最后啦

Don't skip these steps

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field
[X] I have checked through the search that there are no similar issues that already exist
[X] I will not submit any issues that are not related to this project

Occurrence environment

[X] Workflow
[ ] GUI
[ ] Docker
[ ] Command line

Bug description
还以为自己的配置有问题卡了，后来发现作者的也卡啦，辛苦弄一下吧。

Error log
No response

该问题正在排查处理

已修复，更新一下代码

OK了

OK了


Nextcloud iconv issue

Do you plan address this: https://github.com/docker-library/php/issues/240?
It may be solution for my problem with LDAP user mapping...

I also ran into some problems, for instance with the Mail app due to this iconv issue.
If I understand well, I should build the iconv extension myself using the GNU libiconv.

I did it. :)
Will push soon.

https://github.com/Wonderfall/dockerfiles/commit/c68dafa3916816e38c6fe19bee67ad9d1c0a5b85


Update Vibrato to 0.3.1

This PR updates the version of Vibrato to v0.3.1 and removes the submodule.

@vbkaisetsu I am going to update vibrato to distribute precompiled models. After it will be completed, this PR will be modified accrodingly.

@vbkaisetsu I updated this PR according to the release of Vibrato v0.3.1. Could you review it?


Add support for numpy array is input.

Hi,
given your provided code:
measure = SLIDING_WINDOW(**params_methods)
dFC = measure.estimate_dFC(time_series=BOLD)
It would seem easier if that function also works with a simple numpy array containing the channels and time series, without needing, for example, a subject list. This would also simplify the integration of a nilearn workflow.
Thanks and best wishes

Hi @SebastianVolkmer ,
Thank you so much for bringing this up. I agree with you that if these functions were able to handle a simple numpy array, it would be much more convenient. However, since the whole toolbox is designed to work with particular classes like TIME_SERIES and DFC, and these classes require more information than only the BOLD time series values, as the information is actually necessary for the dFC assessment process and the subsequent analyses, it is not possible to include such option. Nevertheless, we will consider your suggestion and will think of a way to implement it!
Thanks a lot for using PydFC!


Surface AgentExecutor kwargs for toolkits

Surface separate kwargs for Agent and AgentExecutor in a consistent way for the agent toolkits. Following the example in create_pbi_agent and create_pbi_chat_agent,agent_kwargs and kwargs are now accessible for all AgentExecutor creator functions. This allows the user to separately control the Agent and AgentExecutor parameters.
NOTE: This will modify the behavior for some of the existing toolkits.

since (as you noted) this changes behavoir for a good amount of toolkits, id actually prefer to keep kwargs to agent, and add agent_executor_kwargs as a dictionary (and update the pbi toolkit, since that would just be one toolkit changed, rather than the 6 here

Good point, I had considered doing the same originally. Let me change it

lgtm, i can help squash merge conflicts

thanks!


Updated usb-detection to fix install on Atom 1.39+ (#75)

Looks like the updated version of usb-detection fixed its issue on Node 10+. I tried updating the dependency here and I was able to rebuild arduino-upload on Atom 1.45.0, now it works.

awesome, thank you!

I'm not sure how many of the install issues reported here lately are fixed too, there's not much info on them to tell...

mhmm, also didn't exactly develop this package much lately, as you can probably tell :/

Yeah, it just wanted to clarify why I didn't made a list of the issues you can mark as fixed. Maybe you could just leave them open and reply on them in case the OP comes back to ask.

good idea, thanks again
still trying to get PRs done at least ^^


Assign LOGGER instead of importing

LOGGER was being imported from repokid module but it was not able to
find the module variable.
As a quick workaround I assigned (per Patrick Sanders' recommendation)
LOGGER directly to logging.getLogger("repokid") and import logging
module where needed.

Coverage increased (+0.2%) to 62.955% when pulling 062db1cd99f56c5f170b7e90a630cb7380e72599 on rmtzcx:assign-LOGGER-instead-of-importing into 4ba6d542c8fa6ec46c0ad5735965826c4f4fe05e on Netflix:master.


Error importing FPS with MovenetDepthaiEdge from depthai_movenet

Describe the bug
I am currently working on deploying my custom computer vision TF model on OAK-D. I am attempting to use the pose_estimation feature from depthai_movenet and utilizing the MovenetDepthaiEdge module. However, upon importing the module, I am encountering the error message "no module named FPS". I have already tried reinstalling the package but the issue persists.
Minimal Reproducible Example
from collections import namedtuple
from pathlib import Path
from FPS import FPS
import depthai as dai
import time

Expected behaviour
Able to use the MovenetDepthaiEdge class for pose estimation and recognize poses with a custom TensorFlow pose recognition model, making sure that the FPS module is imported without errors from depthai_movenet_. Once the key points have been extracted, the pre-trained model should be able to recognize the pose. The output will then display the detected pose, with the processing taking place on the OAK-D Lite.
Screenshots

Attach system log
log_system_information_output.txt

Hi @ParthSingh0506 ,
Could you elaborate which demo are you trying to run? If it's the https://github.com/geaxgx/depthai_movenet, then I'd suggest opening issue there.
Thanks, Erik

Hi @Erol444, while attempting to incorporate the depthai_movenet package into my project, I encountered an issue with the MovenetDepthaiEdge class. Specifically, an error occurred when trying to import the class. I wasn't running any demo files, just my own custom code after importing the class. My intention was to leverage the pose estimation functionality offered by the package in my project.

Hi @ParthSingh0506 ,
After digging into it, it seems like you are missing this FPS file, which you are trying to import. I am not sure about your application/project structure, but your imports are incorrect - I would recheck those.
Thanks, Erik

@Erol444, I have attempted to install and uninstall the FPS package multiple times. The error is generated only when I try to import the MovenetDepthaiEdge class from the depthai_movenet library in my custom code. Interestingly, when I run their demo file, demo.py, it runs without any errors and no module named FPS is mentioned. The issue seems to only occur when I try to import their library in my custom code.

Hi @ParthSingh0506,
Please check this guide on how to import python modules from a different directory.
https://www.w3docs.com/snippets/python/importing-files-from-different-folder.html
Have a nice day, Jaka


Materialize CSS custom theme

OS?

Mac OS X Sierra

Versions.

angular-cli: 1.0.0-beta.21
node: 7.1.0
os: darwin x64

Repro steps.

I created a new project using the ng new myapp --style=scss command.  After doing this I've added the global .scss and .js dependencies into my angular-cli.json:

"styles": [
  "../node_modules/materialize-css/sass/materialize.scss",
  "styles.scss"
],
"scripts": [
 "../node_modules/jquery/dist/jquery.js",
 "../node_modules/materialize-css/dist/js/materialize.js"
],

After this I copied the materializecss' _variables.scss contents from node_modules/materialize-css/sass/components/_variables.scss into my local file src/assets/styles/_variables.scss, and inside this file I'm trying @import "./assets/styles/_variables.scss", which keeps resulting in the error log shown below.  I found that both of these imports (below) together remove the error, but my modified styles are not showing within my app.. it still happens to be the default materialize-css theme.

@import "../node_modules/materialize-css/sass/components/_color.scss";
@import "./assets/styles/_variables.scss";

The log given by the failure.
ERROR in ./~/css-loader?sourcemap!./~/postcss-loader!./~/sass-loader?sourcemap!./src/styles.scss
Module build failed:
  $primary-color-light: lighten($primary-color, 15%);
                       ^
      Argument `$color` of `lighten($color, $amount)` must be a color

Backtrace:
	src/assets/styles/_variables.scss:40, in function `lighten`
	src/assets/styles/_variables.scss:40
      in myapp/src/assets/styles/_variables.scss (line 40, column 25)
 @ ./src/styles.scss 4:14-179
 @ multi styles

Mention any other details that might be useful.

I assume that this would also be an issue when trying to overwrite Bootstrap variables and other frameworks? Am I just doing something wrong? Thanks!

Instead of including materialize.scss in the styles array in angular-cli.json you should use @import '~materialize-css/sass/materialize.scss'; in one of your files included in the styles array (creating a new file called materialize.scss for example).
Before the import you can put $foo-color: #00ff00 !default; to override any variables in materialize.

I won't be home to play with this until later, but for conversation sake I did try this.  However, I did not manually add overriding variable lines $foo-color: #00ff00 !default;, etc above the import.  I just included a second import below the main import like in my OP (@import "./assets/styles/_variables.scss";) but that spits out lots of errors because the scss functions provided by materialize aren't available?  I'm trying to be hard headed here and get to use materialize's functions, but is that just not possible?

This is how we do it
Contents of src/styles/styles.scss:
@import '../../node_modules/materialize-css/sass/components/color';
@import './colors';

$roboto-font-path: '../../node_modules/materialize-css/fonts/roboto/' !default;

@import '../../node_modules/materialize-css/sass/materialize';

Contents of src/styles/_colors.scss:
$primary-color: color("indigo", "darken-3") !default;
$primary-color-light: lighten($primary-color, 15%) !default;
$primary-color-dark: darken($primary-color, 15%) !default;

$secondary-color: color("indigo", "accent-2") !default;
$success-color: color("green", "base") !default;
$error-color: color("red", "base") !default;
$link-color: color("light-blue", "darken-1") !default;

Note that we include the materialize color file before defining colors, which allows us to make use of color(). If you need any of the functions in order to define your variables, you can include just those specific files.

Please report back when you have a chance to try the solution above. I'll close this for now and if you still have a problem I'll reopen. Cheers!

@Maistho, thanks for the snippets! @hansl I've resolved the issue in my OP, but I do have another question which I'm asking below. Let me know if you'd like me to re-open a new issue for this.
$roboto-font-path: '../../node_modules/materialize-css/fonts/roboto/' !default; was exactly what I was missing when I first tried this method.
Now, I do happen to have another question which could be related to view encapsulation with styles, or something related to the angular-cli build process.  Using the method above, I'm able to import all the materialize required scss files into my styles.scss, but after serving the app I'm not able to @extend .blue, .lighten-2 because:
ERROR in ./src/app/app.component.scss
Module build failed:
  @extend .blue, .lighten-4
 ^
      ".container" failed to @extend ".blue".
The selector ".blue" was not found.
Use "@extend .blue !optional" if the extend should be able to fail.

It's not global. You need to import the files where you need the
functions/variables.
On Sat, Dec 3, 2016, 16:30 parker789<EMAIL_ADDRESS>wrote:

@Maistho https://github.com/Maistho, thanks for the snippets! @hansl
https://github.com/hansl I've resolved the issue in my OP, but I do
have another question which I'm asking below. Let me know if you'd like me
to re-open a new issue for this.
$roboto-font-path: '../../node_modules/materialize-css/fonts/roboto/'
!default; was exactly what I was missing when I first tried this method.
Now, I do happen to have another question which could be related to view
encapsulation with styles, or something related to the angular-cli build
process. Using the method above, I'm able to import all the materialize
required scss files into my styles.scss, but after serving the app I'm
not able to @extend .blue, .lighten-2 because:
ERROR in ./src/app/app.component.scss
Module build failed:
@extend .blue, .lighten-4
^
".container" failed to @extend ".blue".
The selector ".blue" was not found.
Use "@extend .blue !optional" if the extend should be able to fail.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/angular/angular-cli/issues/3347#issuecomment-264645726,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACxW_QajMQqg82_3QJQVJuin0HwnnZ-Pks5rEYsZgaJpZM4LCEsk
.

That's just how view encapsulation works. The styles for each component is separate from the styles in styles.scss, so if you want to have the materialize variables and such you'll need to import them for each component (but I probably  wouldn't recommend that because of performance reasons).
If there is a good way to do it without importing it extra times, I haven't found it yet.

Drag.  I was afraid of that :(
Well - I believe I'll try and avoid doing that! Thanks for all the help guys.


iOS 9 support

iOS 9 ignore cornerRadius

This is due to the animation block. When pulling the code from the animation block, the corners are rounded again, but you lose the animation when the size of the badge is changed.

Do you know of a way to fix this properly while keeping animation?

I was able to fix this issue by changing the this code:
    [UIView animateWithDuration:duration animations:^{
        [self updateBadgeFrame];
    }];

to
[UIView animateWithDuration:duration animations:^{
        [self updateBadgeFrame];
    } completion:^(BOOL finished) {
        self.badge.layer.masksToBounds = YES;
    }];

Wondering if this project is still alive enough to accept the pull request that fixes this issue.

Hi guys,
Sorry for not being reactive on the repo. I have a lot on my plate and did not get the chance to work with it and maintain it.
I wanted to take some time to test the fixes and do some refactoring for a new version.
Anyway I will try to do better next time ;)

Awesome! Great news, thank you!

Please, could you update the pod spec version to match the latest code version?
Thanks in advance!


Help icon is not working

Checked the Help icon in Path traversal and other vulnerabilities and it is not working.

https://github.com/SasanLabs/VulnerableApp-nginx/pull/10

https://github.com/SasanLabs/VulnerableApp-nginx/pull/10


rosie go checkout

keyword_rosie keyword_ssh   |    by<EMAIL_ADDRESS>
The first time I tried to check out with rosie, it told me on the console:

The authenticity of host 'accessdev.nci.org.au (<IP_ADDRESS>)' can't be established.
RSA key fingerprint is 3f:80:53:53:92:9c:d0:98:4d:85:f7:bf:a3:40:a5:c7.
Are you sure you want to continue connecting (yes/no)?
Seems like the standard issue when using ssh to a new machine. But accessdev should be able to establish the authenticity of itself.

Issue migrated from trac:113 at 2024-01-31 18:04:41 +1100

<EMAIL_ADDRESS>changed status from new to assigned

<EMAIL_ADDRESS>changed owner from `` to cma900

<EMAIL_ADDRESS>changed status from assigned to accepted

<EMAIL_ADDRESS>commented

Chris, would you be able to add host keys for $::hostname and $::fqdn to the NCI bundle (alongside those for raijin etc.)?

<EMAIL_ADDRESS>removed milestone (was Future)

<EMAIL_ADDRESS>commented

OK, will do.
As an interim solution you could add the following two lines to the hieradata/project.yaml file:
nci::ssh::client::host_keys_array:
  - "accessdev.nci.org.au,accessdev,<IP_ADDRESS> ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCvAmOLdf8DalaPQ0C48oTNV7cm+8pvqxT97d4FDXTr/QFdxy3JlHWJ6WJqm2Q2F5nAPaDXlNA2aLJsoSofhmlk+F9lgH3rU8s/82HBt/UKeD4AsHQNaybAaEAIBKVkVQiHL/INHrg9ABgiKelp6ie5/11jUQ/Kr0iz6gdoowgwiU2F3Wb/vN75IgNKATN+s4IAX+3LISQt6C5bjrwBEshPqQ3r6lV36Nd/j36mYitdSfPhfu26kuKcZ6GAJLjhtWx7NzZ52vyJyxLtYV9Ms6bLXkrPyVrqGLQ2EpCR307BM34lA1LciGlbh5lkukWglxtTMO074VoschADUQ/uPprR"

<EMAIL_ADDRESS>commented

Correction: better to put them in hieradata/node/accessdev.nci.org.au.yaml in this particular case.

<EMAIL_ADDRESS>commented

Milestone Future deleted


Repo.insert return value not always correct when using replace_all_except

Elixir version
1.13.0
Database and Version
PostgreSQL 12.11
Ecto Versions
3.8.4
Database Adapter and Versions (postgrex, myxql, etc)
0.16.3
Current behavior
I have the following piece of code
  def create(relationship_type, %User{} = source, %User{} = target) do
    %UserRelationship{}
    |> changeset(%{
      relationship_type: relationship_type,
      source_id: source.id,
      target_id: target.id
    })
    |> Repo.insert(
      on_conflict: {:replace_all_except, [:id, :inserted_at]},
      conflict_target: [:source_id, :relationship_type, :target_id]
    )
  end

I run the following test
    test "if record already exists, returns it", %{users: [user1, user2]} do
      {:ok, user_block} =
        UserRelationship.create_block(user1, user2) |> IO.inspect(label: "user_block")

      :timer.sleep(1000)

      {:ok, new_block} =
        UserRelationship.create_block(user1, user2) |> IO.inspect(label: "new_block")

      :timer.sleep(1000)

      assert user_block.id == new_block.id
      :timer.sleep(1000)

      [^user_block] =
        UserRelationship
        |> where(relationship_type: :block)
        |> where(source_id: ^user1.id)
        |> where(target_id: ^user2.id)
        |> Repo.all()
        |> IO.inspect(label: "Repo")
    end
  end

Which gives me the following output
user_block: {:ok,
 %Pleroma.UserRelationship{
   __meta__: #Ecto.Schema.Metadata<:loaded, "user_relationships">,
   id: 32594,
   inserted_at: ~N[2022-07-17 13:01:54],
   relationship_type: :block,
   source: #Ecto.Association.NotLoaded<association :source is not loaded>,
   source_id: "ALaDrpdX2N4HYpbAmm",
   target: #Ecto.Association.NotLoaded<association :target is not loaded>,
   target_id: "ALaDrphmmYTFm1aZPs"
 }}
new_block: {:ok,
 %Pleroma.UserRelationship{
   __meta__: #Ecto.Schema.Metadata<:loaded, "user_relationships">,
   id: 32594,
   inserted_at: ~N[2022-07-17 13:01:55],
   relationship_type: :block,
   source: #Ecto.Association.NotLoaded<association :source is not loaded>,
   source_id: "ALaDrpdX2N4HYpbAmm",
   target: #Ecto.Association.NotLoaded<association :target is not loaded>,
   target_id: "ALaDrphmmYTFm1aZPs"
 }}
Repo: [
  %Pleroma.UserRelationship{
    __meta__: #Ecto.Schema.Metadata<:loaded, "user_relationships">,
    id: 32594,
    inserted_at: ~N[2022-07-17 13:01:54],
    relationship_type: :block,
    source: #Ecto.Association.NotLoaded<association :source is not loaded>,
    source_id: "ALaDrpdX2N4HYpbAmm",
    target: #Ecto.Association.NotLoaded<association :target is not loaded>,
    target_id: "ALaDrphmmYTFm1aZPs"
  }
]

See also https://git.pleroma.social/pleroma/pleroma/-/merge_requests/3697#note_92387
Expected behavior
I expect Repo.insert to return the value I'll find in the database. The second time I insert a record, there's a conflict and it should update the existing record, while keeping the id and inserted_at.
When we check the id, we see that it's the same id in all three cases. This is as I expect.
However, when we check the inserted_at after the second insert, it looks from the return value that it was updated. This is not what I expect. I expect the value to not have been updated.
When we then check the database, we see that the inserted_at wasn't updated after all. That's good and what I expect from the code, but it shows that the return value after conflict isn't what we find in the database.

Come to think of it :thinking: I wonder if the inserted_at should even update. I'm unsure if I should consider this an actual insert (in which case it makes sense to update the inserted_at), or rather an update of an existing record (in which case it doesn't make sense to change the inserted_at).
I guess I'm expecting the second case here, that it's actually an update.

You need to explicitly say which values you want back, by passing the :returning key or setting :read_after_writes in your field definition of your schema.

More info the docs: https://hexdocs.pm/ecto/Ecto.Repo.html#c:insert/2-upserts

Yes, this works. It was a bit unexpected, but I think I understand why it is now. Thk you! :heart:


WARNING: cannot use rsync: rsync not available in container

When running the router v2 test with comparisons enabled there is a warning presented after all the tests are running stating that rysnc is not available in the container. It is unclear if this is actually a problem or not.
example error:
Indexing documents in router-test-results
10-09-2021T18:07:55 Sleeping for 6s before next test
10-09-2021T18:08:01 Enabling cluster version and ingress operators
deployment.apps/cluster-version-operator scaled
deployment.apps/ingress-operator scaled
WARNING: cannot use rsync: rsync not available in container
results.csv
10-09-2021T18:08:05 delete tuned profile for node labeled with node-role.kubernetes.io/workload
tuned.tuned.openshift.io "openshift-ingress-performance" deleted
10-09-2021T18:08:06 Deleting infrastructure

The error comes from this statement
https://github.com/cloud-bulldozer/e2e-benchmarking/blob/d7d83d34f91c7604e6cc59310cc8cd634ad4e0e7/workloads/router-perf-v2/ingress-performance.sh#L31
This is "expected", as the rsync command is not available in the mb container, however it doesn't hang because it falls back to tar when rsync is not available. We can fix it by replacing it by oc cp which directly uses tar

closing this issue since it's only a warning and not an error. rsync falls back to using tar in case rsync is not installed on the container.


[amqp-common] Ship 1.0.0-preview.6 of amqp-common library

The @azure/amqp-common library is used by

Version 2.1.0 and below of "@azure/event-hubs"
Version 1.0.2 and below of "@azure/service-bus"

The newer 3.0.0 version of "@azure/event-hubs" and 2.0.0 version of "@azure/service-bus" will be using the newer "@azure/core-amqp" instead.
Therefore, any bug fixes for older libraries related to the core library need to happen in amqp-common.
This epic is to track shipping of 1.0.0-preview.6 of amqp-common with the below items

[ ] https://github.com/Azure/azure-sdk-for-js/issues/3971
[ ] https://github.com/Azure/azure-sdk-for-js/issues/3972
[ ] Release 1.0.0-preview.6 of amqp-common
[ ] Release patch versions for Service Bus and Event Hubs track 2 that use 1.0.0-preview.6 of amqp-common
[ ] Enable tests that were disabled in https://github.com/Azure/azure-sdk-for-js/issues/3867

cc @ramya0820

Discussed offline, we have decided to release this version from after reviving the older repo.
Next steps are to have following PRs on it as part of preview.6 release

marking repo as unarchived by restoring README
fixing the security vulnerability identified by Mike
porting over changes that were made to amqp-common preview.4 and preview.5. Once this gets merged, add the tag for preview.5
porting over changes that were made to amqp-common after preview.5 was released
fix for the build warnings (not rhea-promise related)
fix for the MSI bug

This issue is currently blocked due to a breaking release from transitive dependencies that's resulting in build failures of this package with error -
dist-esm/src/index.js → browser/index.js...
[!] (plugin Rollup Core) Error: Could not load buffer (imported by c:\workspace\amqp-preview-6\amqp-common-js\dist-esm\src\dataTransformer.js): ENOENT: no such file or directory, open 'buffer'

We decided to release preview.6 from main repo instead, next steps are:

fix for the build warnings (not rhea-promise related) (#3515)
fix for the MSI bug (#3971)

@ramya-rao-a can you confirm that above are the changes we want? Is #3972 excluded or in scope for preview.6?

#3972 is in scope for Preview 6 as listed in the initial issue description

@ramya0820 Now that it has been decided that we will be releasing preview.6 from the main repo, please close the 3 PRs that you have opened in amqp-common-js repo and have the repo archived again.

@ramya0820 Since you have created #4177 to track the work for shipping Service Bus, can we have this epic closed?

also, I dont believe there is anything blocking to complete #4177, can we finish the work there as well?

Closing post follow-up with team on preview.6 release


resolve issue #1080

Describe the big picture of your changes here to communicate to the maintainers why we should accept this pull request. If it fixes a bug or resolves a feature request, be sure to link to that issue.
The best way to propose a feature is to open an issue first and discuss your ideas there before implementing them.
Always follow the contribution guidelines when submitting a pull request.

I'm guessing from the title this is related to #1081 but it would be good if you explained this in the message instead of leaving the default one saying you should explain

Could you please expand you point?
Consider pointing code snippets here, on Codepen or on JSFiddle.
Make sure you have read the documentation correctly and followed any instructions it may give.

#1080 was resolved as incorrect usage, thus this is superfluous


Chat Composite - E2E Tests

What
Playwright based browser automation for running chat composite tests
Why

How Tested

Process & policy checklist

[ ] I have updated the project documentation to reflect my changes if necessary.
[ ] I have read the CONTRIBUTING documentation.

Is this a breaking change?

[ ] This change causes current functionality to break.

Overall, I'd recommend an ID injection approach.
This PR increases the composite API surface by exporting fixed IDs for internal elements. If an API exists, it will be used ;)
What happens if there are two composite instances in the same app?
Could we invert this: The composite exposes an optional prop that accepts an ID for different elements in the composite (this prop starts looking very much like the locale prop we're already adding). The test then creates the composite with the IDs it wants and goes on to target elements that way.
Contoso could also use this feature now to target internal elements. Either way we're expanding the API for composites, but client-supplied IDs seem like a better choice.

Thanks for the suggestion. It's a great idea. I am looking forward to more such suggestions.
100% onboard with this one. Not sure exactly how to implement it in a sensible way though.
What are your thoughts about merging this branch and working on making these ID's injectable in another branch?

I think it's OK to land this and then iterate.
Thanks for writing this. It's tickling exactly the kind of questions we want. One such observation: I clearly see the value in being able to load the composite in a browser and automating interaction with it (like sending a message). I am unsure about the value in the targeted assertions in these tests (e.g. check that one of the participants has the initials of the local participant) because targeting those elements requires pulling out HTML elements by CSS class names from Fluent / NorthStar. Those CSS class names aren't in our control, and at the least, it makes it fairly hard to write and maintain these tests.
How would this approach compare with: Use Playwright to interact with the composite, and get it in and end state we want. Then just do a snapshot test.
--
As for ID injection, it's totally fine to do it in a follow up PR, but I'd recommend doing it soon so that we don't end up with a lot of IDs that we need to migrate.

I think it's OK to land this and then iterate.
Thanks for writing this. It's tickling exactly the kind of questions we want. One such observation: I clearly see the value in being able to load the composite in a browser and automating interaction with it (like sending a message). I am unsure about the value in the targeted assertions in these tests (e.g. check that one of the participants has the initials of the local participant) because targeting those elements requires pulling out HTML elements by CSS class names from Fluent / NorthStar. Those CSS class names aren't in our control, and at the least, it makes it fairly hard to write and maintain these tests.
Also, these assertions leave with somewhat low confidence that the UI looks good. James brought up the point earlier of preferring jest unit-tests where we can over e2e tests for speed etc. In line with that, the real reason we want the e2e tests is to get coverage for the final UI, right?
How would this approach compare with: Use Playwright to interact with the composite, and get it to an end state we want. Then just do a snapshot test.
--
As for ID injection, it's totally fine to do it in a follow up PR, but I'd recommend doing it soon so that we don't end up with a lot of IDs that we need to migrate.

I agree with the low confidence after this tests. Playwright provides visual comparison tests using pixelmatch. Perhaps we should leverage those along with automation to ensure that our UI is working/looking as expected. I will try writing a test like that in another PR.

I think it's OK to land this and then iterate.
Thanks for writing this. It's tickling exactly the kind of questions we want. One such observation: I clearly see the value in being able to load the composite in a browser and automating interaction with it (like sending a message). I am unsure about the value in the targeted assertions in these tests (e.g. check that one of the participants has the initials of the local participant) because targeting those elements requires pulling out HTML elements by CSS class names from Fluent / NorthStar. Those CSS class names aren't in our control, and at the least, it makes it fairly hard to write and maintain these tests.
Also, these assertions leave with somewhat low confidence that the UI looks good. James brought up the point earlier of preferring jest unit-tests where we can over e2e tests for speed etc. In line with that, the real reason we want the e2e tests is to get coverage for the final UI, right?
How would this approach compare with: Use Playwright to interact with the composite, and get it to an end state we want. Then just do a snapshot test.
--
As for ID injection, it's totally fine to do it in a follow up PR, but I'd recommend doing it soon so that we don't end up with a lot of IDs that we need to migrate.

I think there is value in E2E tests regarding tests actions that call handlers like remove participant because it is an integrated test with the stateful client and the UI. We would need to check that the participant item is of that user has been removed from the UI after a certain amount of time. But as far UI tests are deeply based on HTML and CSS, we should probably rely more on unit tests for those as those are determined by component props which only the component itself needs to know about.


bpf: remove Map.DeleteWithErrno()

Map.Delete() now wraps the underlying errno when returning an error.
Therefore, Map.DeleteWithErrno() is rendered obsolete as checking for an error of type syscall.Errno can now be done using errors.Is() or errors.As() with the error returned by Map.Delete().
Fixes #8324

This change is

test-me-please

Coverage increased (+0.007%) to 44.71% when pulling 20e69bd513cf2f726d10538b5c062e3a40f508b3 on pr/rolinh/remove-map-delete-with-errno into 951d85e7b7004f732da2a19b00c25c9bc8338242 on master.

test-me-please

test-me-please

@joestringer PTAL, there was an issue with Delete() re-definition for the ipcache map and I had to rename it.

test-me-please

vm provisioning fail, will trigger the tests again

test-me-please

Rebased against master as there are new timeouts for Gingko test to resolve VM provisioning failures (adfa9e7c915bbb0f18a391be59929ca9a98d2424).

test-me-please

vm provisioning failed again :(
@nebril is looking into this

test-me-please


Move tests to the flake

Create "devshell" for each test that can be executed with nix develop and call it from GitHub workflows.
This allows to run tests locally with high confidence that they will pass on CI.
Depends on #73

@yannham @thufschmitt I'd appreciate a review on this one as well.

I got three idea of using devshells for this from home-manager: https://github.com/nix-community/home-manager/blob/master/flake.nix#L90 - for some reason they didn't do them as packages or apps. I see how strange this decision looks without context now.
I'll move them to packages (or apps? nobody  would use them as packages, right?).
I like having this enumeration of tests in Nix, it leaves less logic to differ between CI and dev environment. But we could have both approaches: attributes for CI and argument in case it's more comfortable for dev.

Oh, right. Having them as shells allows to easily run them without nix run command using nix-shell. That's why they went this way most likely. It doesn't apply to us at all.

@thufschmitt I've moved tests to apps, now it's clear that you can only run them, but not build them.


Fixed: Add a timeout for findFQDN clients to make the response bounded

Description
findFQDN can take forever to resolve. Allow call to timeout as per callers requirement. In case of timeout, we will use hostname.
Test plan
Outline the test plan used to test this change before merging it.

Fixes #.

Codecov Report

Merging #388 into master will increase coverage by 0.02%.
The diff coverage is 63.63%.

@@            Coverage Diff             @@
##           master     #388      +/-   ##
==========================================
+ Coverage   55.47%   55.49%   +0.02%
==========================================
  Files          51       51
  Lines        6268     6274       +6
==========================================
+ Hits         3477     3482       +5
- Misses       2468     2469       +1
  Partials      323      323

Impacted Files
Coverage Δ

monitor/linuxmonitor/linuxMonitor.go
62.16% <63.63%> (+1.2%)
:arrow_up:

Continue to review full report at Codecov.

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


Chrome supports scrollbar-width behind a flag

As of chrome canary 115, Chrome now supports scrollbar-width behind the Experimental Web Platform Features flag.

Looks like [scrollbar-width](https://caniuse.com/mdn-css_properties_scrollbar-width) includes this info now.

Yes but the caniuse CSS scrollbar styling listing doesn't have this information.


feat: formatages emails

:tada: This PR is included in version 1.6.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Updated containerd version

@algamaes

@algamaes

@Keith-Mange can you please review and help merge this PR?


Incorrect use of __activemask

Bug summary
In some group functions for CUDA backend, hipSYCL uses __activemask intrinsic to detect currently active threads, e.g. here: https://github.com/illuhad/hipSYCL/blob/develop/include/hipSYCL/sycl/libkernel/cuda/group_functions.hpp#L99
However, per the section "Active Mask Query" in https://developer.nvidia.com/blog/using-cuda-warp-level-primitives/, that is not correct. Listing 5 there is pretty much how hipSYCL does things now. Even if all the threads in a sub-group call the group primitive, it is not guaranteed that __activemask() will return all-1s.
To Reproduce
Relies on the de-synchronization within the warp, so NVIDIA Volta or newer is needed.
Expected behavior
SYCL specs 2020v5 does not explicitly say what happens if not all threads call reduce_over_group, but the wording seems to suggest that it must be called by all threads in a (sub)group:

Returns: The result of combining all the values of x specified by each work-item in the group using the operator binary_op, where the values are combined according to the generalized sum defined in standard C++.

So, for various warp-level primitives it should be okay to use const unsigned int activemask = 0xffffffffff;

EDIT: not really, we are allowed to launch < 32 work-items overall, so our sub-group will not be a full warp. Pain.

Note: in HIP some inline assembly is used which I'm not willing to dig into, but it seems that something similar is going on there.
Describe your setup

hipSYCL develop, CUDA 11.6, Clang 12

Gentle bump. Unless I'm mistaken, this can be a very nasty issue potentially causing sub-group collective operations to produce wrong results.

Sorry, I must have missed this.
I guess we could use ballot_sync as a hotfix for this on Nvidia GPUs.
On AMD-GPUs it wasn't a problem for the GCN architectures, I'll need to check it for CDNA/RDNA.
I'll create a PR with a fix later once I was able to test the hotfix and read up on the AMD architecture.
The group algorithm code will also change in the future and wont need __activemask() anymore. So I think a hotfix should be good enough for now.


Code owners not always visible

If review from code owners is requested before automation does so, for the author of the pull request it is not possible to know who code owners are, unless the author looks into the .owners file.
It would be nice to be able to see owners directly on the pull request. A possible solution could be to automate addding code owners into the PR description.

If we set the reviewers as an output from the action, you can use https://github.com/zattoo/output to delegate the information to the description this might work


Better code structure

SQL Execution is split between dataframe and endpoint, sometimes diff is a bit weird
Do we really need groupby/joins/sortby? If yes: test and document

We need sortby. Get the top n sorted by is a common use case. We need it for the recommender for sure.
Groupby and joins could be handled through the SQL Endpoint. Probably better to do there.

ok, I'll remove groupby and join then. and might do some test for sortby


[#61]: Help prevent TP and ETP from being optimized out when using static libs

Also added PRIVATE to all example target_link_libraries calls
Basically here's what's happening... in all the examples when using static libraries the TransportProtocolManager and ExtendedTransportProtocolManager were not getting linked in from the library into the executable. This is because linkers do not need to do that if they think that translation unit is not referenced anywhere in the final executable. This was causing all transport layer functions to fail, as the transport layer relies on those static objects being instantiated. Using shared libraries fixes this, but because static is the default now, I've added some logic to CMake to force the whole isobus::Isobus archive to be linked.
@RFRIEDM-Trimble I would be interested in your opinion on this if you have one, as it feels a bit strange. This fix seems to work but I am not sure if there's a better way.

Also added PRIVATE to all example target_link_libraries calls
Basically here's what's happening... in all the examples when using static libraries the TransportProtocolManager and ExtendedTransportProtocolManager were not getting linked in from the library into the executable. This is because linkers do not need to do that if they think that translation unit is not referenced anywhere in the final executable. This was causing all transport layer functions to fail, as the transport layer relies on those static objects being instantiated. Using shared libraries fixes this, but because static is the default now, I've added some logic to CMake to force the whole isobus::Isobus archive to be linked.
@RFRIEDM-Trimble I would be interested in your opinion on this if you have one, as it feels a bit strange. This fix seems to work but I am not sure if there's a better way.

Sorry, I don't have much experience with using Singletons in shared libs. I did take a look at the usage of whole-archive and believe this reference could provide a better option rather than bloating targets with everything.
https://stackoverflow.com/questions/47186406/is-there-a-way-to-force-c-compiler-to-not-optimize-out-specific-static-objects


[Bug] 1. Querying with one large polygon vs several smaller polygons; 2. scenes fall outside of query WKT

Describe the bug
Suppose one wishes to either (1) break a large rectangular polygon into smaller rectangular polygons, or (2) consolidate several smaller and contiguous rectangular polygon into one large rectangular polygon. Keeping other query parameters constant, as long as the large rectangular polygon and the union of the smaller rectangular polygons cover the exact same area, one should expect the query to return identical set of scenes. This is not the case.
Moreover, one would expect the scenes returned with a given WKT polygon should fall inside of the given WKT polygon. Some scenes do not.
To Reproduce
Steps to reproduce the behavior:

Run the attached test_asf_polygon.txt script. (I cannot attach .py files so I edited the extension.)

Expected behavior

The number of scenes returned from using one large polygon vs several smaller polygons covering the same area should be the same; they are not.
All returned scene footprints should fall inside of the WKT; some do not.

Desktop (please complete the following information):

OS: macOS 12.4
asf_search: 3.2.2
Python: 3.9.10

test_asf_polygon.txt

For very wide shapes, it is generally recommended to subdivide. CMR, the ultimate backend behind all of our search functionality, interpolates between points using the shortest path, by way of great arcs. Thus, when two points in a shape are very far apart in longitude, the arc that connects them can have a very significant sweep north or south in comparison with a linear interpolation between those points in a mercator projection.
Here is a comparison of interpolating between points in mercator vs. the implied arc used to interpolate by CMR:

I see, @glshort. Thank you for the explanation! Do you have any suggestions on what might be considered a "long" longitudinal span?

The difference is always going to be there, even for short spans, it's just more noticeable as the shape gets wider, so really, the question is "what's an acceptable difference in your case?" One factor that may influence the threshold is the size of the footprint of the products themselves, as subdividing more finely than that won't really have much of an effect. The other major factor is latitude, as extreme northern/southern AOIs will exhibit this property more. Just picking a convenient and usually effective threshold, 10° seems pretty good in most cases and would probably be a good place to start. If your search areas are very far north or south, you may want to go to 5°.
I do want to mention one coming change that is directly related to this topic: we have a feature coming that will check to see if the AOI is precisely its own Minimum Bounding Rectangle (that is, the AOI is a lat/lon-aligned rectangle) and if it is, it will make use of CMR's bounding_box approach instead of polygon. In that context, CMR doesn't interpolate with great arcs as it does in other approaches, and you'll get results perfectly in line with what you were expecting in this case, without any subdivision shenanigans.
I don't have an ETA on that feature at the moment, but it's on our current sprint, so roughly "very soon." I'll update this issue when it's been released.

Update on this: with the v5.0.0 release, asf_search now performs a check to determine if an AOI is its own minimum bounding rectangle (that is, a lat/lon-aligned rectangle.) If it is, the search is performed slightly differently with CMR, leading to results that should precisely align with the specified bounding box.
As an example, using an AOI such as POLYGON((-166 65,-85 65,-85 66,-166 66,-166 65)) with the previous approach would yield the following results:

The new method detects that that shape is a bounding box AOI and instead produces the following results:

Enjoy! :)


When will flutter-tizen support building *.wgt?

Hi I recently made a demo app to be deployed on a Samsung Signage TV. I thought it could run .tpk files but it could not. So is there any alternative to this using flutter-tizen?

Packaging a Flutter app into .wgt doesn't make sense as it's a web application package format. This project targets running Flutter apps natively on Tizen devices without javascript engines.

I thought it could run .tpk files but it could not.

Probably you couldn't run .tpk on your device because it didn't meet the minimum Tizen version requirement (Tizen 6.0). As far as I know Samsung Signage devices are backed by Tizen 4.0.

What the model number of your TV?

Yes it's Tizen 4.0, I just noticed it. So is Tizen Studio currently the only solution to build .wgt? Or is there any workaround for it? I know Xamarin.Forms can also build Tizen apps but it can't build .wgt.
My TV model is KM24A, it's an SSSP TV

You should contact your dealer first if you wish to develop your own apps for your kiosk device and need any information about the device.

Okay, thanks. Last question, if I only need to create a basic web app on Tizen Studio, it wouldn't need any special APIs like B2B API, right? Like showing lists, pictures, and playing video.

I don't have an answer to your question, unfortunately. What I only heard is that kiosk devices support native and web app development, but not .NET (Xamarin.Forms) app development.

Okay, thank you very much


[Bug]  启动时报错No module named 'dbgpt'

Search before asking

[X] I had searched in the issues and found no similar issues.

Operating system information
Linux
Python version information
<3.9
DB-GPT version
main
Related scenes

[ ] Chat Data
[ ] Chat Excel
[ ] Chat DB
[ ] Chat Knowledge
[ ] Model Management
[ ] Dashboard
[ ] Plugins

Installation Information

[ ] Installation From Source

[ ] Docker Installation

[ ] Docker Compose Installation

[ ] Cluster Installation

[ ] AutoDL Image

[ ] Other

Device information
GPU1
Models information
LLM
What happened
环境配置时出错

启动时两种方法均报错

What you expected to happen
请问怎么解决
How to reproduce

Additional context
No response
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

你没配置conda环境吧

Please refer to this AutoDL image

Please refer to this AutoDL image

hello, I have the same error,  but my env is simple python3.10 and install the dependency ( BY the way, I run the 0.4.4 version is OK)

Please refer to this AutoDL image

hello, I have the same error, but my env is simple python3.10 and install the dependency ( BY the way, I run the 0.4.4 version is OK)

uninstall the old version ，pull the latest source and reinstall，packages after installation have different names

ModuleNotFoundError: No module named 'dbgpt'
怎么解决？


Download of recording

Hello,
I was looking for a way to record mouse trajectory during a jsPsych experiment done remotely and your library does it beautifully!
I would like to download the "video" created onto an exportable file - is this possible? and if so, how?
I am sorry if this is a stupid question but I am fairly new to JavaScript and programming in general.
Thank you in advance :)

Hi @GaiaCo, I'm happy to hear that. This library simply records your mouse x and y position at a certain time and generates a json array with all mouse changes during a period of time. It also has a function to read the generate data and simulate the mouse movements and clicks by manipulating the x and y position of an svg image that represents a cursor and also manipulating scroll and click events.
To generate an actual video recording of your screen, you'd need to use other libraries that can render the mouse tracking movement on your window to a video file.
The purpose of this library is to generate lightweight representations of an user's mouse during a session in your webpage.
I hope this helps.

Thank you for the fast answer! Ok, nice to know, I will keep on looking then, thanks! ;)


feat: implement Codec trait

The Codec trait from ipld-core allows unified access for encoding, decoding and extracting links of encoded IPLD data independent of the codec.

I've pushed a new version, which is using a released ipld-core.

This one was already approved, the only difference is that it was rebased and that it used the ExtractLinks from the new ipld-core release. Hence merging it.


[doc] FusedRNNCell support cpu

Description
FusedRNNCell now support cpu with mkldnn, but the doc still not update.
https://github.com/apache/incubator-mxnet/blob/a862270beb2d796c1ba311183f7f4a766a18ad6c/python/mxnet/rnn/rnn_cell.py#L536-L539
@pengzhao-intel @juliusshufan

@pengxin99 would you mind file a PR to improve the doc?


Implemented provisional standings feature.

added "Provisional Standings" button to the board nav bar
added a route to handle the button
the route logic applies the match backlog without a db commit, forwards to usual standings view

This feature let's people inspect current "real" standings. The official standings usually do not reflect the truth, since usually a lot is happening in the pending queue.

Awesome man.  Thanks!
I'm going to play with this some tomorrow.  One thing I noticed is that it will crash if there aren't any pending matches.  That's a pretty easy fix.  You may have inspired me to start-up tinkering with this again.

Right, I dropped the ball there :). Should be fixed now.

I reworked the interface a little bit.  I'm not sure if I like it better or not =).
Essentially I wanted to keep the standings route the same for both official and unofficial, so I made the unofficial standings trigger off a query string parm.  On the interface side, you can toggle what you want to see within the standings.
What do you think?  I'll put this out on ChallengeBoards.net shortly.  You've rekindled my interest =).
Now to find something else to add!

Looks good! Thanks for pulling this feature.


New 1.4+ ACL support is not idempotent

The new support for Consul 1.4+ ACL functionality (added in https://github.com/solarkennedy/puppet-consul/pull/474) appears to not be idempotent.
Expected Behaviour
  consul_policy { "my-policy":
    ensure        => 'present',
    description   => "my-policy",
    rules         => [
      {
        'resource'    => 'key_prefix',
        'segment'     => '',
        'disposition' => 'write',
      },
    ]
  }

When Puppet is first run, the policy should be created, and a notice should appear such as Created Consul ACL policy my-policy with ID 315bab4b-ed75-7537-a722-757abca4d16b.
On further runs, nothing should happen, and nothing should register as changed.
Actual Behaviour
When Puppet is first run, the policy is created, and a notice appears, such as Created Consul ACL policy my-policy with ID 315bab4b-ed75-7537-a722-757abca4d16b.
However, on the first run and all subsequent runs, other notices also appear, such as /Stage[main]/Consul_policy[my-policy]/id: defined 'id' as '315bab4b-ed75-7537-a722-757abca4d16b', which are registered as a change in Puppet.
Further Information
This non-idempotent behaviour causes Puppet to report that something has changed every time it runs, even though everything on the Consul side is still exactly the same. Once a policy or token has been created, if the module doesn't change anything on subsequent runs, nothing should be reported as changed.

@SkydiveMarius can you take a look at this?

@NFarrington Thank you for the detailed report!
@solarkennedy I will have a look and will create another pull request.


expo less gradient prototype

I cannot launch the project

But I think this should work

@nandorojo

I think we can add explicit LinearGradient injection via react context

hey, i appreciate the PR but 1) i can't review it without it being tested, 2) i don't think metro supports try/catch requires, and 3) there's no need to tag me.

Ok will not to tag you, sorry. I think will be better dependency injection via react context

What do you think about it?
<LinearGradientProvider value={LinearGradient}>
    <Skeleton />
</LinearGradientProvider>

And we can make some additional entry exports with binded react-native-linear-gradient and expo-linear-gradient


Data restructure: Port per-album/thing data files

This isn't immediately blocking because these aren't actually used on the website (except for info cards, which are currently disabled and not yet finished being implemented), but they'd be nice to bring over too. And an easy demonstration of the new data format!
I don't think the actual structure (key names etc) of the data files should be changed now, but it's worth revisiting to make them pair more one-to-one with the refined property names on the new Thing classes.
(26 Feb 2022)

Copy-paste from #54:

We can further investigate exposing data in more useful ways later, but for now, simply re-enabling the existing data generation (and double-checking that everything still works) would be a good first step, as long as it doesn't involve Too Much work.

(17 Apr 2022)


Purple display issues in terminal

When starting goaccess I always have display issues as can be seen in the images below. I'm not sure if this is a bug in goaccess or the terminal or terminal configuration:

GoAccess 1.2
CentOS 7
ConEmu 190310 [64]

Did you try other terminals?

You are right; it works fine in the terminal provided by Windows. Looks like I should ditch ConEmu.

You are right; it works fine in the terminal provided by Windows. Looks like I should ditch ConEmu.

You can create issue here https://github.com/Maximus5/ConEmu
Maybe they fix it if bug is the affected to their terminal.

Closing this.


Tests for InfectionsWithFeedback class

All existing tests were able to pass with a bug in the InfectionsWithFeedback class. Only attempting to render the extending_pyrenew.qmd tutorial revealed it. We should have:

A test confirming that InfectionsWithFeedback can be instantiated and sampled.
A test comparing infections with feedback computed using the class to a manual computation.

This is a lesson to me always to write a reprex, since the tests you're pointing to are almost exactly what I described and evidently didn't catch the bug. Let me investigate.

@dylanhmorris Were you able to investigate?


Generate the parity bits

The data bits are given, but the parity haven't been generated. Generate the parity bits

can i get assigned

@ManushriJ Yes. The time limit is 1 hour. If not, others can ask to be assigned.

@guptabros Yes. The time limit is 1 hour. If not, others can ask to be assigned.

@ManushriJ Yes. The time limit is 1 hour. If not, others can ask to be assigned.

can i get assigned if this is still open?

Hey there! Could you please assign this to me!

@User-LazySloth Yes. The time limit is 1 hour. If not, others can ask to be assigned.

@surajkadapa Resolve the given issue, please do check it

This issue has been closed.


Add sRGB to xyY conversion

This is the foundation needed for #50.
I tested the function with some values and it works great when looking at this image: https://upload.wikimedia.org/wikipedia/commons/3/3b/CIE1931xy_blank.svg
The function uses the sRGB function with D65 white, also I wanted to keep this function minimalistic.
@matemaciek's PR is the base for this, as the RGB color stuff should be integrated in color.py, I think.
When more sophisticated conversion functions may be needed in the future, https://github.com/gtaylor/python-colormath might be worth a try.
The inverse function to calculate RGB from given xyY would also maybe be useful.

Nice one! (-:
Just keep in mind that I have already adjusted home-assistant to support full white spectrum, but it's not yet pushed to PR. If you're using home-assistant, I can push that code faster than I intended.

BTW, have you tried setting RGB directly as described here: https://github.com/bwssytems/ha-bridge/issues/570#issuecomment-293689166 ? It didn't work for white spectrum bulbs, but maybe it works for RGB bulbs?

The kelvin_to_xyY function uses the mathematical computations from "Design of Advanced Color - Temperature Control System for HDTV Applications" for the x and y coordinates, rather than a linear approximation based on some known values from the IKEA App.
Testing this function showed that it lines up with all X and Y values from the KNOWN_XY dictionary, there were some offsets, but they were very small, so this should work for every kelvin value in the range 1667-25000, but I doubt that Trådfri bulbs can actually show all of that ^^
Reverse function still to come...

#48 has been merged, please rebase your branch so it only includes the relevant commits.

Did the rebasing, I think most stuff here is done, will do some testing when I get home, please don't merge yet.
I didn't want to remove the kelvin-related functions from @matemaciek, the kelvin_to_xyY function should, which is based on the math from the paper I found, should cover all those cases. A maintainer may decide to do so.

I think that kelvin_to_xyY should be tested on white spectrum lights - if it's working properly it should replace kelvin_to_xy, as it is more precise.

Awesome news, just got home and tested the rgb_to_xyY function, IIT WORKS for arbitrary colors, though the colors don't look exactly like I would expect them to, red, green and blue are all kind of "dull" (you would have to see for yourself), but I would say it's enough for a proof-of-concept, algorithms can be tuned later :arrow_right: As soon as the Trådfri Android App has support for RGB bulbs, we might be able to get some useful information from the App.
Unfortunately no luck with setting colors like described here.
I didn't get anything to work... the only values that get accepted are f5faf6, f1e0b5 or efd275, which are the 3 pre-configured white shades.
But at least setting the color via rgb_to_xyY works.
As for setting the kelvin via kelvin_to_xyY, this works perfectly for the whole range, all the way from 1667 to 25000 kelvin. Yes, you can go lower than 2200 and higher than 4000 :D If @matemaciek agrees, I would substitute the kelvin function in set_kelvin_color and remove the old kelvin_to_xy function, here in this PR.

@r41d feel free to remove old kelvin_to_xy, the less code, the less place for bugs (-; I will test new function  on white spectrum lights, but I guess there is no point going beyond current range on them (they have only two LED colours inside, 2200K and 4000K).

@matemaciek: I may have forgotten to mention the visible effect of going below 2200, test it, the color get's much warmer than with lower values. Also for more than 4000, the light get's much colder.
Therefore, I think support for the whole spectrum our formula can should be contained in the library.

@r41d I assume you're describing behaviour of RGB bulbs - yes, if they're able to show more, we should allow it in API for RGB bulbs. But for white spectrum lights we should limit it, as they're technically unable to show colours outside of this range. That means we need to differentiate between RGB and WS bulbs. For now I only have WS bulbs, but this weekend I'll be visiting Germany, so let's keep our fingers crossed IKEA Dresden have RGB bulbs. Official start of sale is both in Poland and Germany set to 2017-10.

@matemaciek: Yes, you're right. I forgot that I was testing with the RGB bulb all the time...
When testing with a 980lm white-spectrum, the function still works, but won't show anything outside of the range of 2200-4000.
But we don't need to differentiate between RGB and WS bulbs: when supplying 1800 for example to a WS bulb, it lights as if I typed 2200, the same for values higher than 4000, the gateway or bulb seem to do boundary checking of the white shade.
Where did you get the official date from?

This is looking great, what's the reason for using xyY in the func names?
It would be fantastic if we had support for RGB colours and more precise white spectrum control in the lib and HA before the official app gets support.

@lwis xyY is one of colour spaces: https://en.wikipedia.org/wiki/CIE_1931_color_space#CIE_xy_chromaticity_diagram_and_the_CIE_xyY_color_space
Yeah, it would be very nice to have it before official app (-: I've already added white spectrum support to my HA, but I'm waiting with PR until newer pytadfri is released: https://github.com/home-assistant/home-assistant/compare/dev...matemaciek:dev

I found a new way of setting some predefined colors directly without any hazzle or calculation.
When looking at the Tradfri App at res/values-en-rUS/strings.xml I found.
    <string name="_4a418a">Blue</string>
    <string name="_6c83ba">Light Blue</string>
    <string name="_8f2686">Saturated Purple</string>
    <string name="_a9d62b">Lime</string>
    <string name="_c984bb">Light Purple</string>
    <string name="_d6e44b">Yellow</string>
    <string name="_d9337c">Saturated Pink</string>
    <string name="_da5d41">Dark Peach</string>
    <string name="_dc4b31">Saturated Red</string>
    <string name="_dcf0f8">Cold sky</string>
    <string name="_e491af">Pink</string>
    <string name="_e57345">Peach</string>
    <string name="_e78834">Warm Amber</string>
    <string name="_e8bedd">Light Pink</string>
    <string name="_eaf6fb">Cool daylight</string>
    <string name="_ebb63e">Candlelight</string>
    <string name="_efd275">Warm glow</string>
    <string name="_f1e0b5">Warm white</string>
    <string name="_f2eccf">Sunrise</string>
    <string name="_f5faf6">Cool white</string>

Searching for those number with underscore led me to com.ikea.tradfri.lighting.p054i.p089a.C1384a (I decompiled the App with JADX) which has this part:
        this.f3891b = new HashMap();
        this.f3891b.put("f5faf6", new C1386c(0.3804d, 0.3804d, "f5faf6", 0.54d));
        this.f3891b.put("f1e0b5", new C1386c(0.4599d, 0.4106d, "CCT_LIGHT_NEUTRAL", 0.61d));
        this.f3891b.put("efd275", new C1386c(0.5056d, 0.4152d, "efd275", 0.66d));
        this.f3891b.put("dcf0f8", new C1386c(0.3221d, 0.3317d, "dcf0f8", 0.45d));
        this.f3891b.put("eaf6fb", new C1386c(0.3451d, 0.3451d, "eaf6fb", 0.48d));
        this.f3891b.put("f5faf6", new C1386c(0.3804d, 0.3804d, "f5faf6", 0.54d));
        this.f3891b.put("f2eccf", new C1386c(0.4369d, 0.4041d, "f2eccf", 0.59d));
        this.f3891b.put("CCT_LIGHT_NEUTRAL", new C1386c(0.4599d, 0.4106d, "CCT_LIGHT_NEUTRAL", 0.61d));
        this.f3891b.put("efd275", new C1386c(0.5056d, 0.4152d, "efd275", 0.66d));
        this.f3891b.put("ebb63e", new C1386c(0.5516d, 0.4075d, "ebb63e", 0.68d));
        this.f3891b.put("e78834", new C1386c(0.58d, 0.38d, "e78834", 0.69d));
        this.f3891b.put("e57345", new C1386c(0.58d, 0.35d, "e57345", 0.67d));
        this.f3891b.put("da5d41", new C1386c(0.62d, 0.34d, "da5d41", 0.7d));
        this.f3891b.put("dc4b31", new C1386c(0.66d, 0.32d, "dc4b31", 0.73d));
        this.f3891b.put("e491af", new C1386c(0.5d, 0.28d, "e491af", 0.57d));
        this.f3891b.put("e8bedd", new C1386c(0.45d, 0.28d, "e8bedd", 0.53d));
        this.f3891b.put("d9337c", new C1386c(0.5d, 0.24d, "d9337c", 0.55d));
        this.f3891b.put("c984bb", new C1386c(0.34d, 0.19d, "c984bb", 0.38d));
        this.f3891b.put("8f2686", new C1386c(0.31d, 0.12d, "8f2686", 0.33d));
        this.f3891b.put("4a418a", new C1386c(0.17d, 0.05d, "4a418a", 0.18d));
        this.f3891b.put("6c83ba", new C1386c(0.2d, 0.1d, "6c83ba", 0.22d));
        this.f3891b.put("a9d62b", new C1386c(0.4099999964237213d, 0.5099999904632568d, "a9d62b", 0.654d));
        this.f3891b.put("d6e44b", new C1386c(0.44999998807907104d, 0.4699999988079071d, "d6e44b", 0.65d));

The C1386c class seems to just 3 doubles and 1 string, which somehow represents a color.
But the classes are not really needed, they are just here for reference, the cool part is that you can just take one of the hex values and shove them into set_hex_color and it works.
I included the extracted color names and values in color.py and wrote a function to set predefined colors, will push soon.

Those numbers may be scaled x and y, we should verify it (-: We should also investigate rgb bulb behaviour - how it reacts to rgb and xy values between known values.

This is awesome work! I hit approve a bit too fast, actually had some comments.
I will do a new release of pytradfri when this PR is merged @matemaciek, so support can land in Home Assistant 0.53

The latest commit outsources the rgb->xyz calculation into a function, actually there's two of them, one for CIE standard illuminant D65 and for A.
I calculated the matrix for A myself: https://gist.github.com/r41d/43e14df2ccaeca56d32796efd6584b48
The idea behind using CIE standard illuminant A was that 2700K is the "normal" white for Tradfri bulbs, so I think this should be the standard white for rgb->xyz conversion here.
I didn't find a formula to convert a Kelvin value to XYZ chromaticity coordinates, so I used the standard white A, which is 2856K because it's closest to it. (https://en.wikipedia.org/wiki/Standard_illuminant#White_points_of_standard_illuminants)
Standard white A gives me (subjectively) better looking results than with the old D65-based matrix.
Maybe someone with more knowledge about CIE, XYZ, RGB and such might improve my code.
I think this PR is pretty much done. Waiting for final feedback.

Great work, look forward to buying a RGB-bulb and start using this!

@r41d and @matemaciek I just made a release to pypi based on your contributions to the library. 🎉  Feel free to integrate into to the home automation platform of your choice :)


An error occurred in Pixi task wandb: ERROR Internal wandb error: file data was not synced

✨ Pixi task (nrgbd_br in default): python -m neural_graph_mapping.run_mapping --config nrgbd_dataset.yaml neural_graph_map.yaml coslam_eval.yaml --dataset_config.root_dir $NGM_DATA_DIR/nrgbd/ --dataset_config.scene breakfast_room $NGM_EXTRA_ARGS --rerun_vis True
/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/torch/utils/data/dataloader.py:558: UserWarning: This DataLoader will create 32 worker processes in total. Our suggested max number of worker in current system is 8, which is smaller than what this DataLoader is going to create. Please be aware that excessive worker creation might get DataLoader running slow or even freeze, lower the worker number to avoid potential slowness/freeze if necessary.
  warnings.warn(_create_warning_msg(
wandb: Currently logged in as: xinnanxinnan944 (xingnan_001). Use `wandb login --relogin` to force relogin
Thread HandlerThread:wandb.init()...
Traceback (most recent call last):
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/internal_util.py", line 48, in run
    self._run()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/internal_util.py", line 99, in _run
    self._process(record)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/internal.py", line 278, in _process
    self._hm.handle(record)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/handler.py", line 150, in handle
    handler(record)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/handler.py", line 160, in handle_request
    handler(record)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/handler.py", line 702, in handle_request_run_start
    self._system_monitor.probe(publish=True)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/system/system_monitor.py", line 217, in probe
    k: v for d in [asset.probe() for asset in self.assets] for k, v in d.items()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/system/system_monitor.py", line 217, in <listcomp>
    k: v for d in [asset.probe() for asset in self.assets] for k, v in d.items()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/internal/system/assets/gpu.py", line 395, in probe
    info["gpu"] = pynvml.nvmlDeviceGetName(pynvml.nvmlDeviceGetHandleByIndex(0))  # type: ignore
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/vendor/pynvml/pynvml.py", line 1962, in wrapper
    return res.decode()
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf8 in position 0: invalid start byte
wandb: ERROR Internal wandb error: file data was not synced
wandb: ERROR transport failed
Traceback (most recent call last):
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2428, in <module>
    main()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2421, in main
    neural_graph_map.fit()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1036, in fit
    run = wandb.init(
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/wandb_init.py", line 1178, in init
    wandb._sentry.reraise(e)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/analytics/sentry.py", line 155, in reraise
    raise exc.with_traceback(sys.exc_info()[2])
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/wandb_init.py", line 1164, in init
    return wi.init()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/wandb_init.py", line 808, in init
    run_start_result = run_start_handle.wait(timeout=30)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/lib/mailbox.py", line 281, in wait
    raise MailboxError("transport failed")
wandb.sdk.lib.mailbox.MailboxError: transport failed
Traceback (most recent call last):
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2428, in <module>
    main()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2421, in main
    neural_graph_map.fit()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1036, in fit
    run = wandb.init(
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/wandb_init.py", line 1178, in init
    wandb._sentry.reraise(e)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/analytics/sentry.py", line 155, in reraise
    raise exc.with_traceback(sys.exc_info()[2])
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/wandb_init.py", line 1164, in init
    return wi.init()
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/wandb_init.py", line 808, in init
    run_start_result = run_start_handle.wait(timeout=30)
  File "/home/xingbei_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/wandb/sdk/lib/mailbox.py", line 281, in wait
    raise MailboxError("transport failed")
wandb.sdk.lib.mailbox.MailboxError: transport failed
wandb: While tearing down the service manager. The following error has occurred: [Errno 32] Broken pipe

Error in wsl2

Seems like it might be an Nvidia Driver issue: https://github.com/wandb/wandb/issues/7683#issuecomment-2124952404

Hello, I use wandb disabled
, it seems to work, but a new error appears
✨ Pixi task (nrgbd_br in default): python -m neural_graph_mapping.run_mapping --config nrgbd_dataset.yaml neural_graph_map.yaml coslam_eval.yaml --dataset_config.root_dir $NGM_DATA_DIR/nrgbd/ --dataset_config.scene breakfast_room $NGM_EXTRA_ARGS --rerun_vis True
/home/xingnan_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/torch/utils/data/dataloader.py:558: UserWarning: This DataLoader will create 32 worker processes in total. Our suggested max number of worker in current system is 8, which is smaller than what this DataLoader is going to create. Please be aware that excessive worker creation might get DataLoader running slow or even freeze, lower the worker number to avoid potential slowness/freeze if necessary.
  warnings.warn(_create_warning_msg(
  2%|█▌                                                                       | 24/1167 [00:04<03:10,  5.99it/s]
Traceback (most recent call last):
  File "/home/xingnan_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/xingnan_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2428, in <module>
    main()
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2421, in main
    neural_graph_map.fit()
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1108, in fit
    self._current_frame_optimization()
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/utils.py", line 83, in wrapper
    result = f(*args, **kwargs)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1252, in _current_frame_optimization
    self._log(loss_dict)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1759, in _log
    self._extract_mesh(
  File "/home/xingnan_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
    return func(*args, **kwargs)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2380, in _extract_mesh
    rr.Mesh3D(
TypeError: Mesh3DExt.__init__() got an unexpected keyword argument 'indices'
Traceback (most recent call last):
  File "/home/xingnan_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 196, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "/home/xingnan_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2428, in <module>
    main()
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2421, in main
    neural_graph_map.fit()
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1108, in fit
    self._current_frame_optimization()
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/utils.py", line 83, in wrapper
    result = f(*args, **kwargs)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1252, in _current_frame_optimization
    self._log(loss_dict)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 1759, in _log
    self._extract_mesh(
  File "/home/xingnan_001/ceshi/neural_graph_mapping/.pixi/envs/default/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
    return func(*args, **kwargs)
  File "/home/xingnan_001/ceshi/neural_graph_mapping/src/neural_graph_mapping/run_mapping.py", line 2380, in _extract_mesh
    rr.Mesh3D(
TypeError: Mesh3DExt.__init__() got an unexpected keyword argument 'indices'

At line 2378 of run_mapping.py
Comment
 if log_to_rerun:
            mesh = slam_dataset.Mesh(
                vertices=all_verts, indices=all_faces, vertex_colors=all_vert_colors / 255
            )
            simplify_resolution = resolution + 0.01
            while len(mesh.vertices) > 5000000:
                print("Simplifying mesh for Rerun vis")
                mesh.simplify(simplify_resolution)
                simplify_resolution += 0.01

            # rr.log(
            #     "mesh",
            #     rr.Mesh3D(
            #         vertex_positions=mesh.vertices,
            #         indices=mesh.face_indices,
            #         vertex_colors=mesh.vertex_colors,
            #     ),
            # )

I pushed a new commit including the previous fixes and hopefully also a fix for this issue. Let me know if it works.


Lindera doesn’t build

Currently, we can’t import lindera in the latest version. It doesn’t build, and since the change has been pushed as a minor version, it probably broke every project relying on lindera.
...
    Checking lindera-decompress v0.13.5
    Checking bstr v0.2.17
    Checking lindera-core v0.13.5
    Checking csv v1.1.6
   Compiling character_converter v2.1.0
    Checking lindera-unidic-builder v0.13.5
    Checking lindera-ipadic-builder v0.13.5
    Checking lindera-dictionary v0.13.5
    Checking lindera-ko-dic-builder v0.13.5
    Checking lindera-cc-cedict-builder v0.13.5
   Compiling lindera-ipadic v0.13.5
    Checking lindera v0.13.5
error[E0599]: no variant or associated item named `DictionaryTypeError` found for enum `lindera_core::error::LinderaErrorKind` in the current scope
  --> /Users/irevoire/.cargo/registry/src/github.com-1ecc6299db9ec823/lindera-0.13.5/src/tokenizer.rs:64:40
   |
64 |             _ => Err(LinderaErrorKind::DictionaryTypeError
   |                                        ^^^^^^^^^^^^^^^^^^^
   |                                        |
   |                                        variant or associated item not found in `lindera_core::error::LinderaErrorKind`
   |                                        help: there is a variant with a similar name: `DictionaryLoadError`

error[E0599]: no variant or associated item named `UserDictionaryTypeError` found for enum `lindera_core::error::LinderaErrorKind` in the current scope
  --> /Users/irevoire/.cargo/registry/src/github.com-1ecc6299db9ec823/lindera-0.13.5/src/tokenizer.rs:84:40
   |
84 |             _ => Err(LinderaErrorKind::UserDictionaryTypeError
   |                                        ^^^^^^^^^^^^^^^^^^^^^^^ variant or associated item not found in `lindera_core::error::LinderaErrorKind`

For more information about this error, try `rustc --explain E0599`.
error: could not compile `lindera` due to 2 previous errors

You can check this repository to reproduce the issue; https://github.com/meilisearch/charabia on this sha 82c9f3b

@irevoire
Thank you for letting me know.
Let me check.

Hi @irevoire,
I checked out the commit hash you gave me.
However, the build succeeds in my environment.
$ git clone git@github.com:meilisearch/charabia.git
$ cd charabia
$ git checkout -b 82c9f3b
$ cargo build
    Updating crates.io index
  Downloaded slice-group-by v0.3.0
  Downloaded ahash v0.3.8
  Downloaded phf_shared v0.10.0
  Downloaded phf_generator v0.10.0
  Downloaded siphasher v0.3.10
...
   Compiling lindera-unidic-builder v0.13.4
   Compiling lindera-cc-cedict-builder v0.13.4
   Compiling lindera-dictionary v0.13.4
   Compiling lindera-ipadic v0.13.4
   Compiling lindera v0.13.5
   Compiling charabia v0.5.1 (/home/minoru/github.com/meilisearch/charabia)
    Finished dev [unoptimized + debuginfo] target(s) in 1m 14s

Do I need to specify any options?

Here are the dependencies of lindera v0.13.5.
https://github.com/lindera-morphology/lindera/blob/83335af5635c6db5b62b62cbd7952985a816beab/lindera/Cargo.toml#L32-L41
Your build log shows a compiling with lindera-core v0.13.5, but it should be depend on v0.13.4.
Can you please check Cargo.toml in lindera?

Hey @mosuka sorry I missed your messages 🙈

Do I need to specify any options?

I don’t know how that’s possible. It was an issue with a match statement and it was very reproducible on all of our repo 🤔

We have recently released 0.14.0. Can you please try this one?

But yes I’ve seen thanks a lot, that was fast 🚀


(Fabric 1.20.1) Critical Bug with Trinkets

Beans Backpacks 0.8-v2 for fabric has a bug where placing a backpack in a trinket slot (Trinkets 3.7.1) will duplicate the backpack into every trinket slot, making the mod unusable in most modpacks.
To recreate this bug:
Load a fabric 1.20.1 instance with Trinkets 3.7.1 and Beans Backpacks 0.8-v2.
Open a world and obtain a backpack.
Put the backpack in the "Back" Trinket slot.
Attempt to remove the backpack and replace it.

Closing issue to repost as a compatibility issue. oops.


These dependencies were not found: @root/routes in<EMAIL_ADDRESS>

This is  a bug.

Prerequisites

[x] Are you running the latest version?
[x] Are you reporting to the correct repository?
(enso is made of many specialized packages: https://github.com/laravel-enso)
[x] Did you check the documentation?
[x] Did you perform a cursory search?

Description
After upgrading to Laravel-Enso 4.9.0, on yarn build I get:
 ERROR  Failed to compile with 2 errors                                                                                5:16:01 PM
These dependencies were not found:

* @root/routes in<EMAIL_ADDRESS>* @root/store in<EMAIL_ADDRESS>
To install them, you can run: npm install --save @root/routes @root/store
 ERROR  Build failed with errors.
error Command failed with exit code 1.

This has happened right from the beginning - at this step:

you should be able to login into the application and will probably have some (lots of) errors and warnings

After full migration the error persists.
I've double checked by sync on package.json and vue.config.js.
Do you have a fast fix / advice?
Thank you.

I found the issue causing the error above on my side, and I guess is part of this Update step: "we have aimed to remove global components and instead import them for each use case".
I had to search all project local files for imports that were not using specific components, like:
import { Divider, EnsoTable } from '@enso-ui/bulma'

These do not work anymore, and have to be split
import Divider from '@enso-ui/divider
import { EnsoTable } from '@enso-ui/tables/bulma'

Also, the step to upgrade the version was forgotten :) no biggie.


Is there pre-trained model using Flow images?

Hi, thank you for these clear and efficient codes! May I ask, if you have trained this model on Optical Flow images?

@notabigfish sorry，we haven't trained this modle with Flow images.
if you have already get Flow images, you can do it easily by changing channel to 2

@LossNAN it's ok, thanks! And which resnet in the original paper did you use? Resnet 152 or ?

@notabigfish http://openaccess.thecvf.com/content_cvpr_2018/html/Hara_Can_Spatiotemporal_3D_CVPR_2018_paper.html


[Android] Full screen Platform View fails on fullscreen devices with notch

A full screen WebView (w/o an AppBar) now produces the following error on my Pocophone on the master channel:
E/flutter (14390): [ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: PlatformException(error, Creating a virtual display of size: [1080, 2116] is not supported. It is larger than the device screen size: [1080, 2029]., null)
The screen size as calculated by MediaQuery.of(context).size.height*MediaQuery.of(context).devicePixelRatio
is 2116.0.
This is a critical bug, that prevents running full-screen platform views (including Google Maps) on similar devices.
Probably caused by: https://github.com/flutter/engine/commit/7471ddea463dd0a95a2b6d8e3a9028df70c56cee
Which solved this: https://github.com/flutter/flutter/issues/28978
Flutter Doctor:
[✓] Flutter (Channel master, v1.6.2-pre.21, on Mac OS X 10.14.4 18E226, locale en-IL)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] iOS toolchain - develop for iOS devices (Xcode 10.2.1)
[✓] Android Studio (version 3.3)
[✓] VS Code (version 1.34.0)
[✓] Connected device (1 available)

Hello
I have the same bug a real device, e.g. samsung A50 (however it works fine on emulator). Here is my flutter doctor
[✓] Flutter (Channel dev, v1.6.3, on Linux, locale fr_FR.UTF-8)
    • Flutter version 1.6.3 at /home/patrick/DATA/Github/flutter
    • Framework revision bc7bc94083 (il y a 3 jours), 2019-05-23 10:29:07 -0700
    • Engine revision 8dc3a4cde2
    • Dart version 2.3.2 (build 2.3.2-dev.0.0 e3edfd36b2)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /home/patrick/DATA/Applications/Android/Sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-28, build-tools 28.0.3
    • ANDROID_HOME = /home/patrick/DATA/Applications/Android/Sdk
    • Java binary at: /home/patrick/DATA/Applications/Android/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b16-5323222)
    • All Android licenses accepted.

[✓] Android Studio (version 3.4)
    • Android Studio at /home/patrick/DATA/Applications/Android/android-studio
    • Flutter plugin version 35.3.1
    • Dart plugin version 183.6270
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1343-b16-5323222)

[✓] VS Code (version 1.33.1)
    • VS Code at /usr/share/code
    • Flutter extension version 3.0.2

[✓] Connected device (2 available)

• No issues found!

I identified the line that causes the problem. See here. :
(But I think that it's better to check for the display size on the Dart side).

Thanks @yoavrofe. Hopefully they get this fixed soon! In the interim, I can switch back to the Flutter Stable channel as the issue isn't there yet. Hopefully they fix it so I can go back to using the Flutter Dev channel.

Hello,
@ iskakaushik could you tell us when your change will be available with the dev channel of Flutter ?
Thanks.


Support pause feature?

It would be quite nice if we could pause scanning in case of successful scan without pausing camera view. Also, vibration on detect would be helpful.

Would this answer your question: https://github.com/juliansteenbakker/mobile_scanner/discussions/39#discussioncomment-2293786 ?
As for vibration, you can use https://api.flutter.dev/flutter/services/HapticFeedback-class.html


Position the toasts top-center and bottom-center

Hello,
it would be nice if you could also position the toasts top-center and bottom-center.
Thanks in advance & Greetings ... Peter

@tuebben
If I'm not too busy, I'll try get something added over this weekend.

@Script47
Thanks for your quick response and the chance to add this feature. I am looking forward to the next version. 😊

@tuebben
Done: https://github.com/Script47/Toast/releases/tag/v1.1.0

@Script47 : Top! 👍
Thanks a lot! 🙏


Satspay - On Chain charge only, shows no data or link

When creating an on chain charge only, no link or data is created. This image below is  the result from https://legend.lnbits.com when creating an on chain charge only.

However, if both Onchain and LNBits charge are selected then the data shows and link with QR codes show correctly.

Thank you!! @talvasconcelos @arcbtc <3


make sure tut compiles README

In #21 @rlmark noticed that we were not compiling the readme as part of the tut task.  We need to fix that.
(as inspiration, we can use Hammock's build.sbt)

Closed by #29. For reference: if you're making changes to the readme code example, you can check if your code compiles by running sbt readme/tut.


List_object_versions gives NotImplementedError: Called get_bucket_versions with some of delimiter, encoding_type, key_marker, version_id_marker

I'm trying to list list object version in moto mock_s3, but got an error saying Called get_bucket_versions with some of delimiter, encoding_type, key_marker, version_id_marker.
I saw encoding-type is been resolved, but both put_object and upload_file would not put in valid value for delimiter, key_marker, and version_id_marker.
@mock_s3
    def test_get_object_versions(self):
        s3_resource = boto3.resource('s3')
        s3_client = boto3.client('s3')
        s3_client.create_bucket(Bucket='test-bucket')
        bucket_versioning = s3_resource.BucketVersioning('test-bucket')
        bucket_versioning.enable()
        s3_client.upload_file('test-key','test-bucket','test-key')
        time.sleep(1)
        s3_client.upload_file('test-key','test-bucket','test-key')
        time.sleep(1)
        s3_client.upload_file('test-key','test-bucket','test-key')
        print(s3_client.list_object_versions(Bucket='test-bucket',Prefix='test'))

Traceback:
Traceback (most recent call last):
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/moto/core/models.py", line 80, in wrapper
    result = func(*args, **kwargs)
  File "test_aws_firmware_python_library_s3_client.py", line 67, in test_get_object_versions
    print(s3_client.list_object_versions(Bucket='test-bucket',Prefix='test'))
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/client.py", line 316, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/client.py", line 622, in _make_api_call
    operation_model, request_dict, request_context)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/client.py", line 641, in _make_request
    return self._endpoint.make_request(operation_model, request_dict)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/endpoint.py", line 102, in make_request
    return self._send_request(request_dict, operation_model)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/endpoint.py", line 137, in _send_request
    success_response, exception):
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/endpoint.py", line 256, in _needs_retry
    caught_exception=caught_exception, request_dict=request_dict)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/hooks.py", line 356, in emit
    return self._emitter.emit(aliased_event_name, **kwargs)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/hooks.py", line 228, in emit
    return self._emit(event_name, kwargs)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/hooks.py", line 211, in _emit
    response = handler(**kwargs)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/retryhandler.py", line 183, in __call__
    if self._checker(attempts, response, caught_exception):
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/retryhandler.py", line 251, in __call__
    caught_exception)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/retryhandler.py", line 269, in _should_retry
    return self._checker(attempt_number, response, caught_exception)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/retryhandler.py", line 317, in __call__
    caught_exception)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/retryhandler.py", line 223, in __call__
    attempt_number, caught_exception)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/retryhandler.py", line 359, in _check_caught_exception
    raise caught_exception
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/endpoint.py", line 197, in _do_get_response
    responses = self._event_emitter.emit(event_name, request=request)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/hooks.py", line 356, in emit
    return self._emitter.emit(aliased_event_name, **kwargs)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/hooks.py", line 228, in emit
    return self._emit(event_name, kwargs)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/botocore/hooks.py", line 211, in _emit
    response = handler(**kwargs)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/moto/core/models.py", line 298, in __call__
    status, headers, body = response_callback(request, request.url, request.headers)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/moto/s3/responses.py", line 116, in bucket_response
    response = self._bucket_response(request, full_url, headers)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/moto/s3/responses.py", line 155, in _bucket_response
    return self._bucket_response_get(bucket_name, querystring, headers)
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/moto/s3/responses.py", line 284, in _bucket_response_get
    prefix=prefix
  File "/home/zhxny/workplace/AWSFirmwarePythonLibrary/env/AWSFirmwarePythonLibrary-1.0/runtime/lib/python3.6/site-packages/moto/s3/models.py", line 759, in get_bucket_versions
    "Called get_bucket_versions with some of delimiter, encoding_type, key_marker, version_id_marker")
NotImplementedError: Called get_bucket_versions with some of delimiter, encoding_type, key_marker, version_id_marker

Is there anyway to skip around this.
Thanks,

Hi @XinyuZhao0215, this should work without providing the Prefix-argument.
Will mark it as an enhancement to also make it work with the prefix