[silx view] Fix physical/access path

Fix the way node paths are computed with our commonh5 objects (now it match h5py)
Fix the physical path, which is the hdf5 path when every intermediate links are removed
A lot of test cases to be sure it is h5py compliant, and that we display the right thing

The screenshot shows that the path /soft_link_to_group/dataset is a link to /group/dataset and it is not trivial. Previous computation was based on wrong assertion.
Closes #1059

LGTM


How to support text matching operation for searching

Hi,
How the HAPI fhir server support the text matching operation? For example, if I want to search all the reports which observation text contains "abc", is there any example?

Hi @baopingle, please use our Google Group or Zulip to ask questions on how FHIR works.
See our FAQ for more information: http://hapifhir.io/hapi-fhir-faq.html


Why is Kohya scripts failing to read this in the toml config?

I have the following in my config.toml
[[datasets]]
resolution = 768
min_bucket_reso = 320
max_bucket_reso = 1280
caption_tag_dropout_rate = 0
caption_dropout_every_n_epochs = 0
flip_aug = true
color_aug = false
I get this error: AssertionError: resolution is required / resolution（解像度）指定は必須です  from this:   1025 │   ) -> None:                                                        │
│   1026 │   │   super().init(tokenizer, max_token_length, resolution, deb │
│   1027 │   │                                                                 │
│ ❱ 1028 │   │   assert resolution is not None, f"resolution is required / res │
│   1029 │   │                                                                 │
│   1030 │   │   self.batch_size = batch_size                                  │
│   1031 │   │   self.size = min(self.width, self.height)  # 短いほう          │
╰────────────────────────────────────────────────────────────────────
Kohya is ignoring the resolution and I don't understand why when it is right there in the config.toml.

Same here

resolution = [ 768, 768,]

Try
resolution = "768,768"

resolution = [ 768, 768,]

Try resolution = "768,768"

That is not how toml's are written.

Found the problem and solved it just changing the / at the end of my path folder.
https://github.com/bmaltais/kohya_ss/issues/952#issuecomment-1584715060
Thank you @VeMeth

I wish that was my problem, but it isn't and apparently Kohya has abandoned this ticket.


Container: Show Identity When Exporting a Container Group

This checklist is used to make sure that common guidelines for a pull request are followed.

[x] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

[x] I adhere to the Command Guidelines.

@tjprescott for last review


implement defer statement

need tests.

I still wonder if some of this code is not needed. Say they do defer something that is not a function, like a++. If that is passed to say anonCallExpr as an example, that will error and say it is not a function. I think you can just simplify syntax to just DEFER expr.

Was curious, is it an issue if the code can defer any expression, not just functions?


Support embedded Ruby code in section attributes. Fix #2273

Signed-off-by: Hiroshi Hatake<EMAIL_ADDRESS>

But this implementation does not permit the following configuration:
<source>
  @type tail
  path temp.log
  tag "docker.#{ENV['FLUENT_TAG']}"
  <parse>
    @type none
  </parse>
</source>

<match "docker.#{ENV['FLUENT_TAG']}".**> " Mixed case is NG
  @type stdout
</match>

<match docker.**>
  @type null
</match>

Should we also permit the above configuration? (Embedded Ruby code mixed attributes)
The below is OK scenario:
```aconf
<source>
  @type tail
  path temp.log
  tag "docker.#{ENV['FLUENT_TAG']}"
  <parse>
    @type none
  </parse>
</source>

<match "docker.#{ENV['FLUENT_TAG']}.**"> # Entire Embedded Ruby code is OK
  @type stdout
</match>

<match docker.**>
  @type null
</match>

Should we also permit the above configuration? (Embedded Ruby code and plain text mixed attributes)

I think no need support because current " quoted parameter doesn't allow mixied style.

Should we also permit the above configuration? (Embedded Ruby code and plain text mixed attributes)

I think no need support because current " quoted parameter doesn't allow mixied style.

Hmm, I see.

Thanks!


IntlDateFormatter

As you know from php 5.3 and upper,we can use the "IntlDateFormatter" function.
how we can change the whole system calendar by using this following sample code?
$fmt = new IntlDateFormatter("fa_IR@calendar=persian", IntlDateFormatter::FULL,
IntlDateFormatter::FULL, 'Asia/Tehran', IntlDateFormatter::TRADITIONAL);

In SilverStripe, which as far as I know doesn't use IntlDateFormatter, the correct way to set the locale is i18n::set_default_locale. Users can have their own locale, which will override this when they are logged in. You can use the SS_DateTime::FormatFromSettings to get this formatted date.
Does that answer your question?

Since this is a question, not a bug, I'm closing this.
In future please use the community forum for these kinds of questions.


Create ppr-help-locators

Adding new dataset from PPR

@lydiascarf - could this be reviewed and published soon?

Sure, I can test it in the morning!
On Wed, Sep 20, 2023 at 3:27 PM, Kistine Carolan @.***(mailto:On Wed, Sep 20, 2023 at 3:27 PM, Kistine Carolan < wrote:

@.***(https://github.com/lydiascarf) - could this be reviewed and published soon?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

[like]  Kistine Carolan reacted to your message:

From: Lydia Scarf @.>
Sent: Thursday, September 21, 2023 10:17:36 PM
To: azavea/opendataphilly-jkan @.>
Cc: Kistine Carolan @.>; Author @.>
Subject: Re: [azavea/opendataphilly-jkan] Create ppr-help-locators (PR #100)
External Email Notice. This email comes from outside of City government. Do not click on links or open attachments unless you recognize the sender.

Sure, I can test it in the morning!
On Wed, Sep 20, 2023 at 3:27 PM, Kistine Carolan @.***(mailto:On Wed, Sep 20, 2023 at 3:27 PM, Kistine Carolan < wrote:

@.***(https://github.com/lydiascarf) - could this be reviewed and published soon?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

—
Reply to this email directly, view it on GitHubhttps://github.com/azavea/opendataphilly-jkan/pull/100#issuecomment-1730372150, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ADTMWPGRRGWFR52NFW5SVK3X3S4IBANCNFSM6AAAAAA42IV5DM.
You are receiving this because you authored the thread.Message ID: @.***>


(mini.files) Stops working after editing workspace via LSP actions

Hello!
Foremost, thank you for all the great plugins, the time you are putting into mini.nvim and the outstanding support.
Introduction
I have one small observation in mini.files. To enable LSP features, I created a custom handler that applies file renames to the workspace to update imports in all files that are using code from the renamed file. This works great and is another great layer on top of mini.files.
My problem
Neovim will open all updated files in buffers in the background, while mini.files will remain opened. Most of the time, this works without any problems but sometimes, it prints me the following error:
Error executing vim.schedule lua callback: ...i5of/.local/share/nvim/lazy/mini.nvim/lua/mini/files.lua:1460: attempt to index a nil value

stack traceback:
        ...i5of/.local/share/nvim/lazy/mini.nvim/lua/mini/files.lua:1460: in function 'explorer_update_cursors'
        ...i5of/.local/share/nvim/lazy/mini.nvim/lua/mini/files.lua:791: in function 'close'
        ...i5of/.local/share/nvim/lazy/mini.nvim/lua/mini/files.lua:1300: in function ''
        vim/_editor.lua: in function <vim/_editor.lua:0>

After that, I am not able to interact with mini.files any more. Trying to close it manually with lua MiniFiles.close() is also not having any effect.
I know this might be hard to verify for you, but I think it is somehow related to mini.files cursor of the buffers. I am currently using version 8e18eb9.
Thanks a lot!

My current implementation
-- Handler for `HandlerFilesActionRename`
M.file_on_rename = function(from, to)
  if vim.lsp.get_active_clients then
    local clients = vim.lsp.get_active_clients()

    for _, client in ipairs(clients) do
      if client.supports_method("workspace/willRenameFiles") then
        local resp = client.request_sync("workspace/willRenameFiles", {
          files = {
            {
              oldUri = vim.uri_from_fname(from),
              newUri = vim.uri_from_fname(to),
            },
          },
        }, 1000, 0)
        -- I think I could close mini.files here, but I prefer to leave it open to maybe do more operations
        if resp and resp.result ~= nil then vim.lsp.util.apply_workspace_edit(resp.result, client.offset_encoding) end
      end
    end
  end
end

-- Autocmd
vim.api.nvim_create_autocmd("User", {
  pattern = "MiniFilesActionRename",
  callback = function(event)
    file_on_rename(event.data.from, event.data.to)
  end,
})

Nice dedication to creating something for yourself!
I am not really sure why this is happening. I've added this slightly refactored version inside the autocommand and could not reproduce this:
local file_on_rename = function(from, to)
  local ok, clients = pcall(vim.lsp.get_active_clients)
  if not ok or type(clients) ~= 'table' then return end

  clients = vim.tbl_filter(function(x) return x.supports_method('workspace/willRenameFiles') end, clients)

  for _, client in ipairs(clients) do
    local resp = client.request_sync(
      'workspace/willRenameFiles',
      { files = { { oldUri = vim.uri_from_fname(from), newUri = vim.uri_from_fname(to) } } },
      1000,
      0
    )

    -- I think I could close mini.files here, but I prefer to leave it open to maybe do more operations
    if resp and resp.result ~= nil then vim.lsp.util.apply_workspace_edit(resp.result, client.offset_encoding) end
  end
end

Although, I don't think there is an active proper LSP which utilizes "workspace/willRenameFiles" method.
Based on the i5of/.local/share/nvim/lazy/mini.nvim/lua/mini/files.lua:1300: in function '' line in log, this happens inside tracking for lost focus when it decided that the focus is lost. Meaning that some of the changes already lead to 'mini.files' not being current and thus starting closing.
There is an easy (and probably a worthwhile) fix to call that MiniFiles.close() with pcall (which will not propagate errors), but I am hesitant about adding it. Mostly because this will silence what might be useful errors (like this one).

Unfortunately, I can not help here without more details. For example:

What are the exact steps leading to this happening? I understand that this is not happening reliably, but it makes helping not easy.
What LSP servers are active when this error happens?

Thanks for the feedback and the refactoring. I learned a new thing! ♥

What LSP servers are active when this error happens?

It happened while using tsserver. This server is definitely capable of workspace/willRenameFiles. It did not happen in other projects. Or I was just lucky there, that everything went right.

What are the exact steps leading to this happening?

I have some buffers open
I open buffer one (it does not matter which one, but just as an example)
I open mini.files rename a file and synchronise my changes
LSP will be triggered, Neovim will open all files as buffers that have an import to the renamed file
Neovim will print the mentioned error
I can interact with all the buffers, do my changes as usual, but I cannot (manually) close or interact with mini.files any more

This is happening very sporadic. So, we can also close this Issue and if I have figured out more scenarios and I really see a problem with mini.files here, we could open that again. That would be fine with me, since it is very difficult to reproduce for you.

This is happening very sporadic. So, we can also close this Issue and if I have figured out more scenarios and I really see a problem with mini.files here, we could open that again. That would be fine with me, since it is very difficult to reproduce for you.

Yeah, without reliable way to reproduce this, it is hard to know what is going on.
I will move this to discussions instead of closing. Thanks for understanding!


Bug: hovering footnote  also pulls all footnote after it within same

Bug in action: (This is a general Markdown test document on vanilla Hugo server. I also tweaked the style a little bit to make the hovering more obvious. Not tested for Rmd or Blogdown.)

I was able to find the exact CSS code that has caused this bug:

After changing from ~ to + in the selector, the hovering effect is now only pulling the intended footnote:

However, this CSS file seems to have been imported by some JS within this theme, and I am not very well-versed with JS. So, I am writing this issue to see if you would like to address it somehow. If there is another repo where you know the bug is coming from, please tell me and I can create an issue there as well.
Thank you very much for this beautiful theme as always.

I think I was able to find the source of this CSS code in one of your other repos:
https://github.com/yihui/misc.js/blob/main/css/article.css#L85
Would you like to fix it? I can make a PR over there as well if you want.

changing from ~ to + in the selector

That's the right fix, which I just applied. Thank you very much!


[Test Failed] TestAccessControlCluster.yaml is expecting wrong error on "too many subjects/targets"

Test issue(s)
I know that the test cases that are not listed in "certification are chip internal test cases, but I assume they are still executed.
If they are then there is an issue in my opinion vs Specification.
The test steps about "too many subjects/targets" (e.g. https://github.com/project-chip/connectedhomeip/blob/master/src/app/tests/suites/TestAccessControlCluster.yaml#L375) are expecting that FAILURE is returned as error code.
The specification requires:

An attempt to create an entry with more subjects than the node can support SHALL result in a RESOURCE_EXHAUSTED error and the entry SHALL NOT be created.

and

An attempt to create an entry with more targets than the node can support SHALL result in a RESOURCE_EXHAUSTED error and the entry SHALL NOT be created.

In my understanding this "more targets then the node supports" should be read exactly about the determination of the maSubjectsPerAccessControlEntry and maxTargetsPerAccessControlEntry properties, right?
Ingo
Platform
No response
Anything else?
No response

Yes, this is clearly buggy in the cluster impl and worse yet in the general access control APIs.  It does:
            if (i < oldCount)
            {
                ReturnErrorOnFailure(GetAccessControl().UpdateEntry(&aDecoder.GetSubjectDescriptor(), accessingFabricIndex, i,
                                                                    iterator.GetValue().GetEntry()));
            }
            else
            {
                ReturnErrorOnFailure(GetAccessControl().CreateEntry(&aDecoder.GetSubjectDescriptor(), accessingFabricIndex, nullptr,
                                                                    iterator.GetValue().GetEntry()));
            }

where CreateEntry and UpdateEntry have logic like so:
    ReturnErrorCodeIf(!IsValid(entry), CHIP_ERROR_INVALID_ARGUMENT);

IsValid() checks various stuff that should lead to CONSTRAINT_ERROR bits or whatnot, not ERROR, but the thing it's returning will get mapped to Error.
Then CreateEntry calls into the access control delegate, which will return whatever it returns.  It seems to be doing things like:
ReturnErrorCodeIf(subjectCount > EntryStorage::kMaxSubjects, CHIP_ERROR_BUFFER_TOO_SMALL);

in ExampleAccessControlDelegate, so could conceivably be changed to return the right IM error, but the API is entirely undocumented so other implementations of the delegate may well keep doing the wrong thing.
So we need to:

Really improve the tests here.
Make sure there are cert tests for this (there clearly are not right now).
Fix the implementation and/or APIs to follow the spec.

Yes in this case the failure is correctly detected but an inaccurate failure code is returned.


Reset no resolution

Fixes #1072 .
Motivation

reset clears inflight promises, not just state already established.
This is critical when using RESET for auth logout as the subsequent promises will likely reject with auth errors.
Solution

Since reset is a 'singleton action', tracking the last time allows us to simply compare current fetch times with last reset to know whether to process their dispatches.
Note: the promises themselves still passthrough as normal in case users want to inspect those. This is more like modeling state and 'future state' clearing.

Adding tests now


pull request for e2e test at 01/07/2017 07:15:07

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


Rename role to roleName breaking change

Description
ename role to roleName breaking change
Link to any related issue(s):
https://github.com/mongodb/terraform-provider-mongodbatlas/issues/1110
Type of change:

[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[x] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Required Checklist:

[x] I have signed the MongoDB CLA
[x] I have added tests that prove my fix is effective or that my feature works
[ ] I have added any necessary documentation (if appropriate)
[x] I have run make fmt and formatted my code

Further comments

Change will not be comming back and it it would be introduced it will be done thru different name/property.


Fix comparison to end_date when end_date is None

File "/code/website/models.py", line 434, in clean
if not self.start_date < self.end_date:
TypeError: '<' not supported between instances of 'datetime.date' and 'NoneType'

Appears to be fixed in https://github.com/jonfroehlich/makeabilitylabwebsite/commit/26697e4a97d1b916ade541e80cbedc32a7cb30a5


[BUG] - Components/Button

Describe the bug
When you have a "hoverable" effect on a component, all the Buttons changes in every hover.
Your Example Website or App
https://pokemons-nextjs.netlify.app/name/ivysaur
Steps to Reproduce the Bug or Issue

Hover the card on the left.
You will see the button on the right corner changes in every hover.

Expected behavior
I expected to not have this behavior on buttons when have a hoverable component.
Screenshots or Videos
No response
Operating System Version
Windows
Browser
Chrome

Hey @emadel1990 , it cannot replicate the bug that you mention
https://user-images.githubusercontent.com/30373425/172164670-b67498f4-45af-441b-b083-d1145e3bc7be.mov


Implement array_agg aggregation function

I can take this one if no one is actively working on it.

Go for it! No one is currently working on this.

To confirm, this work item is only about adding a new aggregation function and not generic support for ordered aggregates.
This will be supported:
select array_agg(x) from foo group by y;

This will not be supported as part of this workitem:
select array_agg(x order by z) from foo group by y;

Correct. Support for ordered aggregates is orthogonal to this change and can be added later.

I've got a version working.
presto:default> select n_regionkey, array_agg(n_nationkey) from nation_s3_orc group by n_regionkey;
 n_regionkey |        _col1
-------------+---------------------
           0 | [0, 5, 14, 15, 16]
           1 | [1, 2, 3, 17, 24]
           4 | [4, 10, 11, 13, 20]
           3 | [6, 7, 19, 22, 23]
           2 | [8, 9, 12, 18, 21]
(5 rows)

presto:default> select n_regionkey, array_agg(n_name) from nation_s3_orc group by n_regionkey;
 n_regionkey |                       _col1
-------------+----------------------------------------------------
           0 | [ALGERIA, ETHIOPIA, KENYA, MOROCCO, MOZAMBIQUE]
           1 | [ARGENTINA, BRAZIL, CANADA, PERU, UNITED STATES]
           4 | [EGYPT, IRAN, IRAQ, JORDAN, SAUDI ARABIA]
           3 | [FRANCE, GERMANY, ROMANIA, RUSSIA, UNITED KINGDOM]
           2 | [INDIA, INDONESIA, JAPAN, CHINA, VIETNAM]
(5 rows)

I had a question, though. I use a json array in a slice to represent the state. Adding every element requires deserializing the json into an object array and adding an object and serializing it back. Is there a better way?

Nice!
You may be able to keep a list of entries in the aggregation state and only turn them into a slice that represents an array when it's time to evaluate the intermediate or final value of the aggregation.
In the long term, we need to be able to support arbitrary objects flowing between operators to avoid unnecessary serialization/deserialization for complex structures.

Opened PR https://github.com/facebook/presto/pull/2238

New PR with much faster implementation here https://github.com/facebook/presto/pull/2246

why does my presto say function not registered?

@nhuber  You need presto version 0.101 or up to use this function. Does this query for you?
select array_agg(x) from (values 1, 2, 3) t(x);

think there is a bug ！
Memory Pool general
Total Memory 1.27TB
CPU Time 4.22h
Rows213M
Data Size 42.70GB
Cumulative Memory
631,428.73GB seconds
create table flight_userinfo_jiguan_tmp_1 as select user_name, array_agg(reg_name1)[1] as reg_name1，followed by forty more same array_agg(col)[1] as new_col,
from a left join b on (a.xx=b.xx) group by a.xxx
b is distinct by b.xx, therefore, the num of result is no more than a.
table a is about 40g
table b is about 2g
don't know whether use much memory or add a num greater than memory used in fact .

Yes, the current implementation has a high fixed cost. It should be fixed in 0.148 (yet to be released)


fix: NavContainer not exported

Closes #1297
📑 Description
See #1297
Status

[ ] Not Completed
[x] Completed

✅ Checks

[x] My pull request adheres to the code style of this project
[ ] My code requires changes to the documentation
[ ] I have updated the documentation as required
[x] I have checked the page with https://validator.unl.edu/
[x] All the tests have passed
[x] My pull request is based on the latest commit (not the npm version).

Summary by CodeRabbit

New Features

Added navigation container for improved app navigation.

NavContainer is not exported by design. It's an internal class used by Navbar.
See the docs: https://flowbite-svelte.com/docs/components/navbar#Navbar_container
The usage is:
<Navbar let:NavContainer color="primary">
  <NavContainer class="border px-5 py-2 rounded-lg bg-white dark:bg-gray-600">
    ....

I close the PR for now.
Thank you for your contribution.


Trade confirmations

And the last one (I hope).
Does steam mobile trade confirmation work? Wiki page says it's automatic, just tested with no luck.

Trade confirmations are yet to be tested.
Code is already here, but untested. Perhaps I need to add some delay between accepting the trade and the confirmation.

Can you check if restarting ASF makes confirmation accepted?
Actually it's enough to !stop <BOT> and !start <BOT>

Initial code works, I sent myself a normal trade, restarted ASF, and ASF accepted all confirmations after logging in.

Well, I've caught and exception after I've added api key in config file.

It works if I set api key back to null

I stumbled upon the same error before, and re-adding 2FA solved it for me.
I wonder what is wrong.

Works properly.

Found out the bug.


Issue on queue lock

Hi,
I have some problems with lock on queue(s), in particular when library check if queue.Count == 0 (eg. SimpleChannel on SendNextPacket method).
For resolving the issue I've moved the lock before the if statement. It's the correct way? Can you verify?
Plus question: There's some method for flushing the queue manually? Because if I call the client.Stop() method after the Send() method, the packet cannot arrive to destination. For now, in my implementation, I have settet the Update() on NetPeer file public and I call it before every Stop.
Thank you

Hi!

I have some problems with lock on queue(s), in particular when library check if queue.Count == 0 (eg. SimpleChannel on SendNextPacket method).

If you calling Update by hands from main thread then you will get problem)

There's some method for flushing the queue manually?

No. But if you need i can add.

Thanks for the quick response.

If you calling Update by hands from main thread then you will get problem)

Not always. If I make a Parallel.ForEach and i try to send 1000000 packet sometimes it happens (even without calling Update by hand). Why not use a ConcurrentQueue? From my test it seems fast as the "classic" queue with lock.

No. But if you need i can add.

If you can it will be awsome! Thank you!

Why not use a ConcurrentQueue?

Unity3d doesn't support it.

Maybe a switch queue is a better choice for both produce and consume

Added flush and fixed locks.


Why does it take so long to process

it's the time required to do the optimization, feel free to suggest any modifications to make it faster!

The official code is about 0.5 seconds per image, but this code takes 9 seconds.

Hi, I amd also looking forward to some speed ups.
The code here seems to be implementing equation 8 in the LIME paper, which is not the sped-up solver and thus slow.
Some other implementations (that I wasn't able to fully understand) use some iterative solvers which seems to solve equation 19 in the paper.
https://github.com/Henry-GongZY/Low-light-Image-Enhancement/blob/master/LIME.py
https://github.com/estija/LIME/blob/master/lime_trial.m
Can you understand these codes?

do you have access to the official code? or just the compiled version? if it's the case, do you mind sharing it with me?
the url metioned in the paper can not be acessed
maybe this is the official demo?
https://sites.google.com/view/xjguo/lime
but u need to ask for a permission


Added brain tests to kubecf pipeline

Description
Added brain tests to the kubecf pipeline.
This is analogous to #436.
Note, this PR sits on top of that PR at the moment.
Motivation and Context
See ticket https://jira.suse.com/browse/CAP-1247
This is analogous to ticket https://jira.suse.com/browse/CAP-1280 for sits (and its PR).
This PR requires the catapult PR https://github.com/SUSE/catapult/pull/117 (merged over the weekend)
How Has This Been Tested?
Not tested. Unclear how to perform local testing of the changed pipeline.
Types of changes

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

Checklist:

[ ] My code has security implications.
[x] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

Agreed. Note that the required https://github.com/SUSE/catapult/pull/117 was merged over the weekend.

@andreas-kupries @bikramnehra Do we need to update anything in this PR?

@f0rmiga Well, it seems to have conflicts, so it needs a back-merge from master.

@andreas-kupries could you rebase this PR over master instead? and resolve any conflicts.

If rebase is ok, sure. Note however that it already has a backmerge from Vlad, at Mar 7.
To rebase I will have to ignore/redo that I suspect.

@f0rmiga Manual rebase via cherry-pick completed. Force pushed. No merge conflicts at all (Nice surprise).


make formatters functions internal

this PR proposes creating internal sub-packages for the 'formatter' functions that currently live in the senders package. It turns out that each of the data types that the SDK can send has its own {metric,event,span,histogram}Line function and supporting functions. Splitting them apart so that they are in smaller, isolated files seems to make it easier to tell what tests go with what and which functions are used where.
this also allows the senders package to focus on creating senders by moving serialization concerns out of that package.
another observation: this also looks like rather than foo.Line(foo.field1,  foo.field2, foo.fieldN...) each sendable type could have a Line() method.

@keep94 another smaller change pulled out of #120

I took a look at godoc, and confirmed that with the type SpanLogs = span.Logs pattern you do have to drill down to the internal package docs to see the definition. I just pushed a new version that duplicates the Log and Tag structs between the two different packages.


Change I3Connection::command to I3Connection::run_command

See https://github.com/i3/i3/commit/607e97e65190d1997048b510d72d30ebff1ca129

ipc: rename COMMAND to RUN_COMMAND for consistency
Authors of downstream IPC libraries are encouraged to keep the old name around
so as to not break existing code, but mark it as deprecated.

There's not much of a risk for i3ipc-rs since the README shows an example of using a specific i3ipc-rs version (no star) and we're still not 1.0. That said it would be interesting to do a quick github search to see if this is the case

decided to just deprecate since the compiler hint is nice.


make pull-g on gpu-functions pull the glsl code by default

Right now it pull's the lisp code and that doesnt help me.

fixed on feature-gpu-lambdas branch

https://github.com/cbaggers/cepl/issues/129


Can't use cloudpathlib with mypy

I'm interested in using cloudpathlib in my project, but I'm currently not able to because of the following error:
[file in my project]:8:1: error: Skipping analyzing "cloudpathlib": module is installed, but missing library stubs or py.typed marker  [import]

According to the mypy documentation, this is because cloudpathlib doesn't include type hints or declare itself as a PEP 561 compliant stub package.
Is cloudpathlib supposed to work with type checkers? I see that the code has type hints, so I'm surprised that it doesn't work for me out of the box.

It looks like it's as easy as adding an empty file called py.typed in the cloudpathlib directory, and adding package_data={"cloudpathlib": ["py.typed"]}) to setup.py. (See https://blog.whtsky.me/tech/2021/dont-forget-py.typed-for-your-typed-python-package/.)
Would you accept a PR that adds this?

Thanks for reporting! A PR is welcome.

@sid-kap This is released now in version 0.10.0 on PyPI

Awesome, thanks!!


Modified repository keyword search to include description for #4287

Hi,
This pull request modifies the behavior of the repository search to include searching within the repositories description. This is as per the issue #4287.
I have tested this in our production environment and no issues have been found.

Thanks for your PR!

Thank you!


getMissingRequiredVariables report missing falsy yet valid values

Hi @mattkrick,
I found a problem while trying to query something containing a floor in a very basic form. Floor is expected to be a non null Int but very often equals 0. I found out that the falsy values are not handled in
getMissingRequiredVariables. This PR solves the problem by specifically looking for null or undefined.
Edit: coverage decreases because the queryHelpers.js file was not in the tests percentage before and I only test one of the few functions of the file

Coverage decreased (-4.01%) to 72.388% when pulling 1d972080ed67d2e301df8916b9f2e06a13e8a39f on theobat:master into da2e138fc44ea7ff6bec5cec56ab1e141b417751 on mattkrick:master.

Also if you don't have time to review this in the near future please let me know so that I use my fork as a dependency instead. Thanks.
@mattkrick


Can't snap walls to under side of floors

When I have a wall and a floor selected, I can iterate through the snap points on "target" to go around the top, but I can't iterate through "source" to attach to the bottom of the floor. I'm trying to use this to build support structures under some of my builds.

Made some improvements here in  1.3.2 :)
Let me know if I've missed anything.


chore: Adding release-please annotations for google-cloud-java

This PR attempts to add <!-- {x-version-update:google-cloud-java:current} --> wherever the artifact google-cloud-java is mentioned.
I have also modified set_parent_pom.sh as it was not including the artifact-bom modules (eg. ./java-accessapproval/google-cloud-accessapproval-bom). These modules also refer to root pom as the parent.

@ddixit14 Sorry, you'll need to resolve conflicts with the file I updated in a different PR.


Add support for Blazor

Blazor does things differently and no events are found.

Blazor events aren't planned on being supported at this stage.
We just support INotifyPropertyChanged based events.


Minor: CallSubject.hasHttpStatus() throws unchecked CallFailedRuntimeException

@vidakovic @ptuomola would one of you be willing to merge this one? It's simple enough for an "either of you" (not both) single review & merge.


Increasing flexibility of T-RECS system for Chaney replication

Woo! Adding a bunch of features into T-RECs/slightly rejigging parts of the system so it has the necessary flexibility to accommodate all of the Chaney study design.

Adding a repeat_items flag in the Users class that modifies user behavior such that they do not interact with items they've already interacted with in the past
Remove MSEMeasurement as the default in every model, and allow user to pass in an arbitrary list of measurements that they'd prefer to pass in. (I kept StructuralVirality as a default measurement for BassModel, but I think this should actually be removed as well...)
Modify process_new_items method in every model slightly such that it only returns the items_hat representation of the new items in the simulation. This just makes things cleaner in the create_and_process_items method
Previously, I was calling the train() method after new items were created as a shortcut for generating the predicted score on new items. While this worked internally, it's a bit semantically confusing when users might expect train to be called only once per iteration. So I removed the call to train() and did something a bit more efficient, which was calculate scores using the score_fn only on new items and then concatenate these new scores to self.predicted_scores
Add a new option for users to pass in num_items_per_iter="all" in order for the system to serve recommendations from the set of all items in the item set, rather than a fixed number of items to serve per iteration. This makes sense when the number of items is changing (i.e., with content creators)
Added a new method called set_num_items_per_iter that makes it easy for the user to change the number of items served per iteration
Allow user to pass in a custom interleaving_fn that returns the set of items to be randomly interleaved with the system's recommendations; by default, if there is no interleaving function, the set of items is randomly chosen for each user
When recommending items to users, break ties randomly (i.e., if two items have the same predicted score for a user, they should be recommended in a random order)
... plus yummy tests for the things mentioned above!

Would be super excellent if you could ensure that before this is merged, the complete-guide notebook runs without (new) errors before this is merged to avoid headache down the road!

Would be super excellent if you could ensure that before this is merged, the complete-guide notebook runs without (new) errors before this is merged to avoid headache down the road!

@amywinecoff happy to report that the complete guide notebook now runs without any errors! hooray!


Getting typeError on get_api_key()

I am getting a type error when getting the API key, I am receiving a code on email after entering my code got an error. I am following the same steps shown in the documentation.
Here is my code
api_key =<EMAIL_ADDRESS>vn.set_api_key(api_key)
below is the error
Check your email for the code and enter it here: SSVZNL # successfully entering code from email
TypeError                                 Traceback (most recent call last)
Cell In[14], line 1
----> 1 api_key =<EMAIL_ADDRESS>2 vn.set_api_key(api_key)
File C:\ProgramData\anaconda3\lib\site-packages\vanna_init_.py:123, in get_api_key(email, otp_code)
120 if "result" not in d:
121     raise OTPCodeError("Error verifying OTP code.")
--> 123 key = ApiKey(**d["result"])
125 if key is None:
126     raise OTPCodeError("Error verifying OTP code.")
TypeError: vanna.types.ApiKey() argument after ** must be a mapping, not NoneType
any solution for this or i am doing anything wrong?

Hi there! It looks like you're following some deprecated documentation.
Please use the docs from here:
https://vanna.ai/docs/postgres-openai-vanna-vannadb/
You can change your database and other preferences by clicking on the various options.


Cassandra Store Catalog Function || Getting Method not supported for some of the existing Catalog functions

Version Information

Software
Version(s)

BusinessEvents
6.3.0

OS Type?
NA

OS Version?
NA

Attached sheet is for existing Catalog Function, where we get "Method Not Supported" for some of the existing catalog functions. Kindly confirm if this sheet is having accurate list or do we need to support any of the non-supported method.
https://docs.google.com/spreadsheets/d/176QHgv3V6GHOhLL7g-1njoyI8zFywNzOHa24fESr3d4/edit#gid=312770963

Looks good to me.


Allow variables starting with underscore.

What problem does this feature solve?
Currently a warning is displayed when variables are declared with a leading underscore like _price.
This issue is asking that the Vue team reconsider #5879  which basically made the following points. Using underscores _ and dollar symbols $ is a common convention in JS and TS and it seems unnecessary that both should be restricted for Vue internals. Another frustrating point, is that double underscores also cannot be used because of course the name would still start with an underscore, for example __price.
What does the proposed API look like?
By refactoring Vue internals to use a double underscore instead of a single underscore this would allow developers to use single underscores for prefixes in their own code.
Ideally this would be done before Vue 3 becomes the latest stable version.

And mentioned in the other issue this won't happen


Make $outfit and $tattoo a type in ASH

This is an breaking change for ASH. Still in draft and we might not want to do it, but it addresses a long standing deficiency (in my opinion) in the constants available to our scripting runtimes.
This still allows custom outfits to be referenced with a string.
In the future we can add functions to check if you have a specific tattoo unlocked and if you current have it on your profile

@jaadams5 I meant to make this a draft but still. Yes! We should talk about it here and give some warnings. These are the breaking changes:
get_outfits() is now $outfits[]
all_normal_outfits() is now $outfits[]
outfit_treats(string) is now $outfit[].treats
outfit_tattoo(string) is now $outfit[].tattoo

The breaking change that worries me the most is that all variables called "outfit" or "tattoo" will now cause problems with the Parser.
// This won't generate an error...
string outfit = "";
// nor this
if (outfit == "test") { }
// but this will
outfit = "test";

Typically this is made more explicit by marking new datatypes as reserved words.

Going to close this for now, branch will still exist though


Inadequate Training Data

The current training data as of commit af21131c1f8361e38d03b163769ea1710829ced7 gives the modal a large Mean Absolute Error. Therefore the training data needs to be adjusted

fixed


Typo in README.md

Hello team,
I would like to propose a fix to a typo from README.md.
declearation.cpp -> declaration_of_independence.cpp (which is the actual name of the lesson).
Let's get it.

Hey @MilanGrujicic let's change it to just declaration.cpp without the typo. This is actual name mentioned in the instruction section.

@intelagense thank you for the heads up, and sorry for the delayed reply.
I amended as you suggested, could you please verify if it looks good now? 🙏


Position of scroll-bar with a frozen pane

When there is a frozen pane, it seems like the scroll-bar positioning is off. It should only allow going up to the frozen pane, since the frozen area is not part of the scroll.

For example: https://gyazo.com/93c2baba5d2cdd924ce65fe9f81a8eab.

Nice catch — that's sloppy, we should fix it. I'll see if I can look into it this weekend.


Fix github action to run in every remote commit

Any commit in remote must try build

Workflow syntax for GitHub Actions - GitHub Docs


Preprocess dataset problem

I got this error when I try to preprocess the KaggleAdDisplaydataset.
My command is
python dlrm_s_pytorch.py --arch-sparse-feature-size=16 --arch-mlp-bot="13-512-256-64-16" --arch-mlp-top="512-256-1" --data-generation=dataset --data-set=kaggle --raw-data-file=/data/tzachlb/KAGGLE_AD/train.txt --processed-data-file=/model/tzachlb/dlrm/kaggleAdDisplayChallenge_processed.npz --loss-function=bce --round-targets=True --learning-rate=0.1 --mini-batch-size=128 --print-freq=1024 --print-time --test-mini-batch-size=16384 --test-num-workers=16 --use-gpu
And my python version is 3.7
How can I solve this problem?

Hi @pmy124, Thanks for your interest in DLRM. The command runs fine on my side. We have 26 sparse and 13 dense features for Kaggle dataset. Can you please pull the latest code, run the command again and let us know if it works?

Thanks for your generous help! I have tried again in another server, and the problem was solved, so there might be some my own reason.


🐛 Bug ➾ Contract Types: Entrypoints is wrong for nested entrypoints

🆘 What happened?
Will add more details later once I can create a clean example, but here is the internal discussion:
https://ecadlabs.slack.com/archives/CMX5YM1AM/p1664989646506099
Code of Conduct

[X] I agree to follow this project's Code of Conduct

@ricklove Can you, please, provide a good example of how to reproduce it?

@ricklove, can you please add some additional context for this ticket?


Document the diagram for replication SYNC in more details.

When Memgraph is in SYNC mode, the diagram does not clearly indicate what happens with the MAIN instance if SYNC REPLICA fails to commit. It also does not show what happens to other SYNC replicas if one SYNC replicas fails to commit.
Here is the screenshot from the documentation  that indicates that an exception is thrown, but the description of the effects on other instances is not clear.

Related and open because of the following question: https://discord.com/channels/842007348272169002/890968055339958292/1167051891121852467

expand these sentences
SYNC - After committing a transaction, the MAIN instance will communicate the changes to all REPLICA instances running in SYNC mode and wait until it receives a response or information that a timeout is reached. SYNC mode ensures consistency and partition tolerance (CP), but not availability for writes. If the primary database has multiple replicas, the system is highly available for reads. But, when a replica fails, the MAIN instance can't process the write due to the nature of synchronous replication.
The following diagrams express the behavior of the MAIN instance in cases when SYNC REPLICA doesn't answer within the expected timeout, and the transaction is uncommitted from all instances in the cluster.

The REPLICA instance is then set into a RECOVERY state, where it remains until it is fully synchronized with the MAIN instance#synchronizing-instances.
Fix this

maybe add the roll-back element to the diagrams


4D progress bar on cyclic mode, the model disappears for 1 frame at the start and end of the cycle

Spotted this yesterday - I think the solution is to change a $<$ to a $<=$


OAK-10558: ensure index name uniqueness in ElasticReliabilityTest

This test is using a fixed index name also used in other tests (test1). While this might not be a problem in most cases, for this test the index name uniqueness is important. The reason behind that is the use of cached index statistics. Recycling an index name recently used, increases the chances of getting the wrong statistics.

LGTM. Can't approve yet though


postgresql.enabled = false fails with error

Disabling postgresql causes the following error (e.g. when running helm template sonarqube ./helm-chart-sonarqube/charts/sonarqube --output-dir . --set postgresql.enabled=false):
Error: YAML parse error on sonarqube/templates/secret.yaml: error converting YAML to JSON: yaml: line 11: did not find expected key
Removing the second hyphen to prevent chomping right on the following line fixes this, although to be honest I'm not entirely sure why chomping right whitespace causes a problem in this case.
https://github.com/SonarSource/helm-chart-sonarqube/blob/32ffdaae67aec0d2b89a75a003920e1308711132/charts/sonarqube/templates/secret.yaml#L14

Hi @kmilner ,
thanks for the report. the right chomping removes every white space ignoring new line characters, resulting in a invalid yaml file as the --- that should indicate a new file are pushed to the data previously :see_no_evil:
i will take care about that soon


Intersection semantics

We should define what a border hit should do for all intersection tests.

My opinion is that border hits should not count, but that's just an opinion.

One action item to take - see what other libraries are doing.
In general, I'm fine with either decision as long as it's consistent ;)

Yeah, I tried finding information on this, but my google skills apparently aren't up to the task, and I'm not sure what open libraries there are except for ncollide.

ncollide seems to report a hit on border intersections. It's hard to tell ...


Fix link to python file

See https://github.com/mwcraig/ccd-reduction-and-photometry-guide/pull/209#pullrequestreview-370062661

@mwcraig
Clicking on  the image_sim.py link on https://github.com/mwcraig/ccd-reduction-and-photometry-guide/blob/master/notebooks/01-04-Nonuniform-sensitivity.ipynb
takes me directly to https://render.githubusercontent.com/view/image_sim.py .
What is the desired result?

@morrme -- thanks for reporting this. I think that is the intended behavior for now. As of last summer there wasn't a good way to link to a Python file from a notebook. That seemed odd to me and it may have been fixed.


Dark and Light mode not working

What happened?
Light and dark theme is not working in the settings. I want to work on this issue can you please assign me this issue under gssoc tag.
Reproduction steps
Steps to reproduce the behavior:

1. Go to settings
2. Under Preferences
3. Click on Theme(Dark & Light)
4. No visible change can be seen

Expected behavior
When clicking on light mode the background must change to lighter tone color and the text must change to black color, similarly button color must change to dark.
On switching to dark theme the background color must change to darker tone colors and the text must change to white or lighter tone similarly button colors must change to lighter tone .
Screenshots

No change is visible after switching between light and dark theme
Version
1.1.0 (Default)
Version (If not available above)
No response
What devices are you seeing the problem on?
Mobile
Device Name, Android Version and Screen Size
samsung galaxy F22
Additional context
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi @iampranshu2003,
The application now has both dark mode and light mode functionality implemented. Please review the code and run it from there, not the Play Store one. Feel free to search for any other bugs or enhancement features that can be added. Additionally, don't forget to follow @Suryansh1720001  and star this repository for future use.


WSL destroys home directory without warning after system restore

Environment
Windows build number: Microsoft Windows [Version 10.0.18363.1082]
Your Distribution version: Ubuntu 20.04
Whether the issue is on WSL 2 and/or WSL 1: Linux version 4.4.0-18362-Microsoft<EMAIL_ADDRESS>(gcc version 5.4.0 (GCC) ) #1049-Microsoft Thu Aug 14 12:01:00 PST 2020

Steps to reproduce
I use Ubuntu launcher from Microsoft store.
After I restored system to earlier state due to unrelated problem with recent update, I tried to launch WSL and got message "please wait, installing...". Then I was asked to create an user and afterwards I ended up in empty home directory.

WSL logs:
Expected behavior
WSL should warn people that their installation is unusable and has to be reinstalled, so they'll have a chance to recover any data they may have had in WSL
Actual behavior
My data was overwritten without a warning.
I also noticed that while /home directory was recreated during reinstallaton, some other directories were created long time ago (see screenshot).

WSL save all distros' Registration in regkey. If you lost those keys, it's nearly impossible for new user to recover it.
If the distribution is not registered with WSL, register it. Registration extracts the tar.gz file that is included in your distribution appx.
Because you restored Windows to a point where you didn't install the distro(because it doesn't have registration), so it extracts the tar and re-install it.
WSL provides --import and --export, which are reliable method to handle system restore.
Agree it's a nice feature if we can warning the user before overwrite the linux.

Actually, I can live with having to reinstall the system, but there were few files in my home directory I wish I had a chance to recover first

Ref #5261


@tensorflow/tfjs-node is not correctly recognised when running examples

I am trying to run the NodeJS examples. The examples run, but seem to not properly utilize the TensorFlow C++ binding.
Steps to reproduce
cd face-api.js/examples/examples-nodejs
npm i

tsc faceDetection.ts
node faceDetection.js

Expected outcome:
Examples runs without warnings.
Actual outcome:
============================
Hi there 👋. Looks like you are running TensorFlow.js in Node.js. To speed things up dramatically, install our node backend, which binds to TensorFlow C++, by running npm i @tensorflow/tfjs-node, or npm i @tensorflow/tfjs-node-gpu if you have CUDA. Then call require('@tensorflow/tfjs-node'); (-gpu suffix for CUDA) at the start of your program. Visit https://github.com/tensorflow/tfjs-node for more details.
============================

Environment
Node: v11.14.0
face-api.js: 0.19.0
@tensorflow/tfjs-node: 1.0.2
Additional Informations
I tried running the examples with older versions to exclude the possibility of a problem with my setup. I managed to run the examples for face-api.js versions 0.17.0 and 0.17.1 with face-api.js picking up the TensorFlow bindings correctly.

Strange, can you provide the output of the following:
import tfnode from '@tensorflow/tfjs-node';
console.log(tfnode.version)

face-api.js does not use tfjs-node at all. face-api.js is depending on tfjs-core. So in order to run face-api.js with the tfjs-node backend, you have to install a tfjs-node version, which is compatible with the tfjs-core version that face-api.js uses.

Sorry for the confusion.
I Time Machine restored my repo to the state I had when I opened this issue. Now, I get
{ 'tfjs-core': '1.1.0',
  'tfjs-data': '1.1.0',
  'tfjs-layers': '1.1.0',
  'tfjs-converter': '1.1.0',
  tfjs: '1.1.0',
  'tfjs-node': '1.1.0' }

============================
Hi there 👋. Looks like you are running TensorFlow.js in Node.js. To speed things up dramatically, install our node backend, which binds to TensorFlow C++, by running npm i @tensorflow/tfjs-node, or npm i @tensorflow/tfjs-node-gpu if you have CUDA. Then call require('@tensorflow/tfjs-node'); (-gpu suffix for CUDA) at the start of your program. Visit https://github.com/tensorflow/tfjs-node for more details.
============================

done, saved results to out/faceDetection.jpg

Aha, so I actually used<EMAIL_ADDRESS>not<EMAIL_ADDRESS>as said in OP. Apologies! So, it looks like the problem arises when using @tensorflow/tfjs-node>=1.1.0.
Indeed after
@@ -2,7 +2,7 @@
   "author": "justadudewhohacks",
   "license": "MIT",
   "dependencies": {
-    "@tensorflow/tfjs-node": "^1.0.2",
+    "@tensorflow/tfjs-node": "~1.0.2",
     "canvas": "^2.0.1",
     "face-api.js": "../../"
   }

and
npm install

It now runs correctly 🎉
{ 'tfjs-core': '1.0.4',
  'tfjs-data': '1.0.4',
  'tfjs-layers': '1.0.4',
  'tfjs-converter': '1.0.4',
  tfjs: '1.0.4',
  'tfjs-node': '1.0.3' }
cpu backend was already registered. Reusing existing backend
done, saved results to out/faceDetection.jpg

I have the same issue and wasn't able to fix it for a few days now. My versions look like this:
> NODE_ENV=development node -r dotenv-flow/config .

2019-05-08 15:56:11.652452: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX
2019-05-08 15:56:11.687335: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2019-05-08 15:56:11.688541: I tensorflow/compiler/xla/service/service.cc:150] XLA service 0x37d04a0 executing computations on platform Host. Devices:
2019-05-08 15:56:11.688593: I tensorflow/compiler/xla/service/service.cc:158]   StreamExecutor device (0): <undefined>, <undefined>
tfjs.version { 'tfjs-core': '1.0.4',
  'tfjs-data': '1.0.4',
  'tfjs-layers': '1.0.4',
  'tfjs-converter': '1.0.4',
  tfjs: '1.0.4',
  'tfjs-node': '1.0.2' }
cpu backend was already registered. Reusing existing backend
cpu backend was already registered. Reusing existing backend
hsts deprecated The "includeSubdomains" parameter is deprecated. Use "includeSubDomains" (with a capital D) instead. node_modules/loopback/lib/server-app.js:74:25

============================
Hi there 👋. Looks like you are running TensorFlow.js in Node.js. To speed things up dramatically, install our node backend, which binds to TensorFlow C++, by running npm i @tensorflow/tfjs-node, or npm i @tensorflow/tfjs-node-gpu if you have CUDA. Then call require('@tensorflow/tfjs-node'); (-gpu suffix for CUDA) at the start of your program. Visit https://github.com/tensorflow/tfjs-node for more details.
============================

I have the same problem in my application and haven't been able to fix it. The versions look like in the output transcript below.
> NODE_ENV=development node -r dotenv-flow/config .

2019-05-08 15:56:11.652452: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX
2019-05-08 15:56:11.687335: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2019-05-08 15:56:11.688541: I tensorflow/compiler/xla/service/service.cc:150] XLA service 0x37d04a0 executing computations on platform Host. Devices:
2019-05-08 15:56:11.688593: I tensorflow/compiler/xla/service/service.cc:158]   StreamExecutor device (0): <undefined>, <undefined>
tfjs.version { 'tfjs-core': '1.0.4',
  'tfjs-data': '1.0.4',
  'tfjs-layers': '1.0.4',
  'tfjs-converter': '1.0.4',
  tfjs: '1.0.4',
  'tfjs-node': '1.0.2' }
cpu backend was already registered. Reusing existing backend
cpu backend was already registered. Reusing existing backend
hsts deprecated The "includeSubdomains" parameter is deprecated. Use "includeSubDomains" (with a capital D) instead. node_modules/loopback/lib/server-app.js:74:25

============================
Hi there 👋. Looks like you are running TensorFlow.js in Node.js. To speed things up dramatically, install our node backend, which binds to TensorFlow C++, by running npm i @tensorflow/tfjs-node, or npm i @tensorflow/tfjs-node-gpu if you have CUDA. Then call require('@tensorflow/tfjs-node'); (-gpu suffix for CUDA) at the start of your program. Visit https://github.com/tensorflow/tfjs-node for more details.
============================

NODE_ENV=development node -r dotenv-flow/config .

2019-05-08 15:56:11.652452: I tensorflow/core/platform/cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: SSE4.1 SSE4.2 AVX
2019-05-08 15:56:11.687335: I tensorflow/core/platform/profile_utils/cpu_utils.cc:94] CPU Frequency:<PHONE_NUMBER> Hz
2019-05-08 15:56:11.688541: I tensorflow/compiler/xla/service/service.cc:150] XLA service 0x37d04a0 executing computations on platform Host. Devices:
2019-05-08 15:56:11.688593: I tensorflow/compiler/xla/service/service.cc:158]   StreamExecutor device (0): ,
tfjs.version { 'tfjs-core': '1.0.4',
'tfjs-data': '1.0.4',
'tfjs-layers': '1.0.4',
'tfjs-converter': '1.0.4',
tfjs: '1.0.4',
'tfjs-node': '1.0.2' }
cpu backend was already registered. Reusing existing backend
cpu backend was already registered. Reusing existing backend
hsts deprecated The "includeSubdomains" parameter is deprecated. Use "includeSubDomains" (with a capital D) instead. node_modules/loopback/lib/server-app.js:74:25
User already exists [
{
"id": 1
}
]
============================
Hi there 👋. Looks like you are running TensorFlow.js in Node.js. To speed things up dramatically, install our node backend, which binds to TensorFlow C++, by running npm i @tensorflow/tfjs-node, or npm i @tensorflow/tfjs-node-gpu if you have CUDA. Then call require('@tensorflow/tfjs-node'); (-gpu suffix for CUDA) at the start of your program. Visit https://github.com/tensorflow/tfjs-node for more details.
Web server listening at: http://localhost:8000
Browse your REST API at http://localhost:8000/explorer

BTW, this  is a loopback application and I'm loading face-api.js at boot time.

Ok, after
npm i<EMAIL_ADDRESS>
the example runs correctly, without warning. The version output is:
{ 'tfjs-core': '1.0.4',
  'tfjs-data': '1.0.4',
  'tfjs-layers': '1.0.4',
  'tfjs-converter': '1.0.4',
  tfjs: '1.0.4',
  'tfjs-node': '1.0.2' }

However, now I am completely lost, what is happening here 🤔 Does this mean I need to make sure face-api.js and the example use the exact same version of tfjs-node?

face-api.js does not use tfjs-node at all. face-api.js is depending on tfjs-core. So in order to run face-api.js with the tfjs-node backend, you have to install a tfjs-node version, which is compatible with the tfjs-core version that face-api.js uses.

Ok, I think I got it now. However, this is valuable information and might be important for newcomers that try to get started with face-api.js in a Node.js environment.
Suggestion
Should we ...

pin the tfjs-node version in the Node.js example, such that the example will run correctly on a freshly cloned repo and
add a small comment somewhere in the Node.js example explaining that a compatible tfjs-node version is needed?

If no objections, I am happy to send PR for the above mentioned.

How i use @tensorflow/tfjs-node  ? please provide full code?


NIFI-6925: Fixed JoltTransformRecord for RecordReaders, improved MockProcessSession

Thank you for submitting a contribution to Apache NiFi.
Please provide a short description of the PR here:
Description of PR
For RecordReader implementations that don't close the underlying input stream when nextRecord() returns no records, JoltTransformRecord fails the flowfile instead of sending the input flowfile to the "original" relationship. Unit tests didn't catch it because MockProcessSession wasn't keeping track of the open stream counts.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit? Additional commits in response to PR reviewer feedback should be made on this branch and pushed to allow change tracking. Do not squash or use --force when pushing to allow for clean monitoring of changes.

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[x] Have you written or updated unit tests to verify your changes?
[ ] Have you verified that the full build is successful on both JDK 8 and JDK 11?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

I believe the change to MockProcessSession has found a bug in PutElasticsearchHttpRecord, as TestPutElasticsearchHttpRecord is failing. I'll take a look at that processor and update it as necessary. Hopefully the change is for the better and will find such bugs that unit tests haven't previously detected.

Was able to configure a setup to validate in Hive.  Appreciate your patience (and help) @mattyb149 .  Also fixes for elasticsearch were confirmed as well
+1
Will merge shortly


The reportportal plugin does not work when test run is specified (--id)

I am experimenting with the new reportportal plugin (via reportportal API) and I am unable to make it work. I am trying this command:
tmt run --id run-046 report --how reportportal --url https://reportportal-rhel.apps.ocp-c1.prod.psi.redhat.com/ --token $MY_REPORT_PORTAL_TOKEN --project baseosqe
The result I am getting is the following:
/var/tmp/tmt/run-046
/plans/ci
    report
        how: reportportal
        launch: /plans/ci
        test: /Sanity/pmproxy-long-url
plan failed
The exception was caused by 1 earlier exceptions
Cause number 1:
    expected str, bytes or os.PathLike object, not NoneType

The plan /plans/ci is just a plain plan:
summary: CI Gating Plan
discover:
    how: fmf
execute:
    how: tmt

I am using tmt version: [1.25.dev](http://1.25.dev/) (2940da53)
Running the command with -vvvddd does not provide any more details related to the crash.

Hm, exception happens at https://github.com/teemtee/tmt/blob/72a7a5305cfc908f6810ae2bc97530b031bcac1a/tmt/steps/report/reportportal.py#L182
when calling test.web_link()
> /home/lzachar/gits/tmt/tmt/base.py(747)web_link()
-> fmf_root=Path(self.node.root),
(Pdb)
TypeError: expected str, bytes or os.PathLike object, not NoneType


Add DfaMatcherBuilder benchmarks

Fixes https://github.com/aspnet/Routing/issues/628
GitHub
 Method |     Mean |     Error |    StdDev |  Op/s |    Gen 0 |   Gen 1 | Allocated |
------- |---------:|----------:|----------:|------:|---------:|--------:|----------:|
    Dfa | 2.248 ms | 0.0435 ms | 0.0550 ms | 444.9 | 136.7188 | 50.7813 |   1.55 MB |

Azure
 Method |     Mean |    Error |   StdDev |  Op/s |    Gen 0 |    Gen 1 |    Gen 2 | Allocated |
------- |---------:|---------:|---------:|------:|---------:|---------:|---------:|----------:|
    Dfa | 357.2 ms | 7.020 ms | 6.567 ms | 2.799 | 937.5000 | 875.0000 | 812.5000 | 195.18 MB |

195.18 MB

😬

Do you think it's worth adding a case for comparison with like 5 endpoints? We test the startup perf end to end with pretty small websites (techempower), and a typical customer application will be smaller than github.

Also ~5k of Endpoints for Azure takes 17 megs of memory. 11 megs for the RoutePatterns and 6 megs for the endpoint collection. A lot of the endpoint collection size comes from the internal ConcurrentDictionary.

Do you have a breakdown of what makes RoutePattern so big? Is it the strings?

Mostly collections.

Whoops, brain stopped working and I forgot about the freeze. Reverted.


Post Renderer: E-mail addresses in posts get munged by @names

Doh. Silly me I didn't check for whitespace before.

Markdown parser is tricky. I believe the fact that @ is set as a delimiter is messing things up.
What I should probably do is add a scan stage that looks for e-mail addresses, and in general rejects re-feeding them back in to the parser. I did try getting this to work, but in hindsight I didn't pay much mind to the order.

This might be fixed, but last I checked the parser broke some other things.


Closes #8502: Parallel NDJSON file reading

Which issue does this PR close?

Closes #8502.
Rationale for this change

As stated in the issue:

DataFusion can now automatically read CSV and parquet files in parallel (see https://github.com/apache/arrow-datafusion/issues/6325 for CSV)
It would be great to do the same for "NDJSON" files -- namely files that have multiple JSON objects placed one after the other.

What changes are included in this PR?

Basically the same approach as in #6325.
However, I refactored and extracted some of the common functions like find_first_newline which is used by calculate_range, to be used by both the CSV and JSON implementation.
Are these changes tested?

Yes, basic tests are included.
However, I was not sure about benchmarking the changes (since benchmarks/bench.sh does not provide JSON dataset?).
Are there any user-facing changes?
No.

Thank you for this @marvinlanhenke  - I plan to review it tomorrow.
cc @devinjdangelo

...just as a sidenote and originally stated in #6801 and #6922; this implementation is suboptimal since it performs multiple get operations on the object store. This will be handled in a follow-up Issue / PR - which I will (most) likely tackle in the next week.

@alamb
Thank you so much for the review.
I resolved the merge conflicts and updated the docs according to your comments.

Epic work @marvinlanhenke  -- thank you very much!

... Some epic strg+c+v combos from the CSV implementation @alamb 😂 but thanks again for the kind review.
I am hoping to improve this implementation next week, by reducing the number of GetRequests on the object store down to one. However, the stream handling is more complicated than I wished for...

... Some epic strg+c+v combos from the CSV implementation @alamb 😂 but thanks again for the kind review.

Well, I think being able to extract and reuse code is far harder than just copy/paste/modify which you could have done ;)

However, the stream handling is more complicated than I wished for...

Yeah -- I agree -- it might need to get wrapped up into its own state machine / stream impl 🤔


Loupedeck (Live) MIDI Encoders not working properly

Describe the bug
The encoder(s) on a (as MIDI device configured) Loupedeck (Live) give inconsistent results in Mobiflight when rotating the dial.
Steps To Reproduce

Configure your Loupedeck (Live) as MIDI device and configure one of the encoders as a "MIDI Dial Adjustment", I used:

1 - Modulation Wheel or Lever / CC Set
Value: 0
Channel: 1

Open MobiFlight and make sure the MIDI Device "Loupedeck Live" is checked.
Enable Debug logging in MobiFlight.

Expected behavior
When I turn the dial clockwise I see a PRESS event. When I turn the dial counter clockwise, I see a RELEASE event.
Actual behavior
This happens when I do 1 clicks clockwise and 1 clicks counter clockwise:
Warn	01/18/2024 15:09:15	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:09:16	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => RELEASE =>  No config found.

This happens when I do 2 clicks clockwise and 2 clicks counter clockwise:
Warn	01/18/2024 15:09:41	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:09:41	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:09:42	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:09:42	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => RELEASE =>  No config found.

This happens when I do 5 clicks clockwise and 5 clicks counter clockwise:
Warn	01/18/2024 15:10:05	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:05	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:06	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:06	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:07	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:07	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:08	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:08	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:09	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:09	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => RELEASE =>  No config found.

You can see where this is going.
This happens when I do 2 clicks counter clockwise and 2 clicks clockwise:
Warn	01/18/2024 15:10:56	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => RELEASE =>  No config found.
Warn	01/18/2024 15:10:56	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => RELEASE =>  No config found.
Warn	01/18/2024 15:10:57	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.
Warn	01/18/2024 15:10:57	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => CC 1_1  => PRESS =>  No config found.

Details

MobiFlight Version: 10.1.0
FlightSim: MSFS2020
AddOn: -

Additional context
It looks like some internal counter is being used for clockwise clicks and Mobiflight only detects a "release" event after the same amount of "press" events have been "reverted" with a "release" event (counter clockwise) for it to actually occur.
I also don't know if it is a Loupedeck issue or MobiFlight. What I do know, is that the same configuration in the Loupedeck software works fine with Spad.next.

Did you read the wiki page?
https://github.com/MobiFlight/MobiFlight-Connector/wiki/Midi-Boards

Since the Loupedeck works fine, except for the encoders, I figured it was already supported but might've been a bug.
I'll dive into that custom configuration, thanks.

Empty Loupedeck profile, one encoder configured: Channel 1, CC 1
MIDI Monitor shows:

Device Name: Loupedeck Live
CC: 1, Channel: 1 Value: 1
CC: 1, Channel: 1 Value: 2
CC: 1, Channel: 1 Value: 3
CC: 1, Channel: 1 Value: 2
CC: 1, Channel: 1 Value: 1
CC: 1, Channel: 1 Value: 0

I created a config file "loupedecklive.midiboard.json". It contains:

{
    "$schema": "./mfmidiboard.schema.json",
    "InstanceName": "Loupedeck Live",
    "EncoderNeutralPosition": 0,
    "Inputs": [
      {
        "Label": "Dial %",
        "LabelIds": [ "1" ],
        "InputType": "EndlessKnob",
        "MessageType": "CC",
        "MessageChannel": 1,
        "MessageIds": [ 1 ]
      }
    ],
    "Outputs": [ ]
  }

Doing the same 3 right, 3 left clicks on the dial in MobiFlight shows:

Warn	01/19/2024 12:32:50	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => Dial 1  => RIGHT =>  No config found.
Warn	01/19/2024 12:32:51	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => Dial 1  => RIGHT =>  No config found.
Warn	01/19/2024 12:32:51	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => Dial 1  => RIGHT_FAST =>  No config found.
Warn	01/19/2024 12:32:53	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => Dial 1  => RIGHT =>  No config found.
Warn	01/19/2024 12:32:53	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => Dial 1  => RIGHT =>  No config found.
Warn	01/19/2024 12:32:54	ExecutionManager.mobiFlightCache_OnButtonPressed(): Loupedeck Live => Dial 1  => LEFT =>  No config found.

hi,
ok know it depends on, wether you can configure the knob/encoder to an endless mode in the loopdeck configuration. To check and monitor the output of the current configured mode in loopdeck you can use the midimonitor https://github.com/Koseng/SimpleMidiLib/releases.
For endless mode you configure the neutral position. On turning right the device must output a value greater than neutral, on turning left a value smaller than neutral.
Example Neutral 63.

64 (right)
64 (right)
64 (right)
62 (left)
62 (left)
62 (left)

Example Neutral 0.
If your device is also able to output values turning 0, 1, 2, 3....127, you can only use LimitedKnob.

And in your standard setup at the moment, what does midi monitor show if you continue to turn left, what does happen after 0?
And when you continue to turn right, what does happen after 127?


Attention matrix shape

Great work. Thanks for sharing.
In the paper it is said that the shape of the adjacancy matrix is (n+1)*(n+1), which sould be 22,22 (21 for joints and 1 for food contact). However, in your implementation in models.encdec.Encoder_spationl class the matrix's shape is 28,28. Also, after that some random vectors add to the encoding (in Abstract_Transformer class).
Can you please clarify on these issues, especially the first one?
Thanks

Great work. Thanks for sharing. In the paper it is said that the shape of the adjacancy matrix is (n+1)*(n+1), which sould be 22,22 (21 for joints and 1 for food contact). However, in your implementation in models.encdec.Encoder_spationl class the matrix's shape is 28,28. Also, after that some random vectors add to the encoding (in Abstract_Transformer class). Can you please clarify on these issues, especially the first one? Thanks

As mentioned in our paper, the human body is divided into 5 body parts, which is the "nparts" in your screenshot。 And the extra dimensions in the attention mask are to extract the features of them。


allow for exit_window_retains_fullscreen to remember if last window was fullscreen

Description
add another option for exit_window_retains_fullscreen like 'exit_window_retains_fullscreen = 2' which could remember the last fullscreen window and only "refullscreen" it if it the previous window was previously already fullscreen.
For example: exiting a game with steam shouldnt just fullscreen steam if its just a floating window, but if steam bigpicture is active it should refullscreen it. (without a windowrule)

MRs welcome. Very low priority due to obvious reasons


rust-fuse did no longer build with current rust

Fixed all current issues. Builds now without errors and warning.

Looks good, but #41 beat you to it. :)  Thanks anyway!


[RESTEASY-891] added check for user provided UnhandledException mapper

If we choose to support this requested feature here is the patch.  There is not good way to provide a test case for this.  It is a low risk fix because it is a very specific situation.  Normal handling continues if the user does not provide a mapper for this.

@asoldano I took a look at the patch and this does not fit with what I had in mind. From what I understand, the patch would allow to handle the exception as if it was an UnhandledException; however, at that point the exception was not wrapped yet in an UnhandledException so I believe this may not work at all...
What we want to achieve is to handle all Exceptions with an ExceptionMapper except those inheriting from WebApplicationException and Failure because these are already properly handled by RESTEasy... Our biggest issue is that because a 204 is returned in executeExceptionMapper when the Exception is not handled (i.e. null is returned), then we are not able to defers the handling of WebApplicationException and Failure to RESTEasy...

I've restructured this such that Resteasy can throw an UnhandledException
and the user by providing a ExceptionMapper can evaluate
it and return a response object or null.  When no response object is provided the
original UnhandledException is rethrown.

@rsearls @asoldano The updated version of the PR is an improvement but does not meet our requirements.
We are using RESTEasy in an agnostic way, i.e. with access only to the JSR311 api classes. We cannot therefore throw an UnhandledException in our ExceptionMapper because that class is not part of JSR311 but rather a class specific to RESTEasy.
At this point, I see two solutions:

Remove this code block from protected Response executeExceptionMapper(Throwable exception, RESTEasyTracingLogger logger) (lines 136-138)

          if (jaxrsResponse == null) {
             jaxrsResponse = Response.status(204).build();
          }

This would allow one to let exceptions such as WebApplicationException or RESTEasy Failure go through a generic ExceptionMapper without having to deal with them.
2. Instead of catching UnhandledException, attempt to catch Exceptionor some other exception class available in the JRE or JSR311.

As I understand your jira request it is to enable your code to handle any
exception for which Resteasy provides no builtin ExceptionMapper and for which
the user code has provided no custom ExceptionMapper.  This PR allows the
user code first chance to create a response for an unknown exception before
Resteasy throws an UnhandledException and the way that is done is by the
user providing a custom ExceptionMapper.
Resteasy does not provide any builtin ExceptionMappers.  This means in the scenario
you describe there must be a custom ExceptionMapper that has been register and
that mapper is not returning a Response object.  It is returning null.
Lets look more closely at the code.
lines 122-127
 Class causeClass = exception.getClass();
  while (mapper == null) {
     if (causeClass == null) break;
     mapper = providerFactory.getExceptionMappers().get(causeClass);
     if (mapper == null) causeClass = causeClass.getSuperclass();
  }

Lets consider this contrived example of a exception class' "cause" tree.
cause: java.io.IOException
cause: java.security.GeneralSecurityException
cause: java.lang.Exception
cause: java.lang.Throwable
cause: java.lang.Object

IOException is the initial exception.  Resteasy already performed a lookup
for a mapper for this class and did not found one, so now it proceeds to look
for a mapper for superClasses GeneralSecurityException, Exception, Throwable
and Object in that order.  When Resteasy does not find a mapper for any of the
causes in the tree it returns null, allowing exception evaluation to continue.
But when a mapper is found, it is processed, lines 129-140.
In your scenario a custom mapper was found for one of the "cause" class types.
Line 133 the mapper is called and some value is returned.
Line 136 the returned value is checked.  The value is determined to be null.
By the mapper returning null it is indicating that "No Content" is being returned to the caller, a 204 status.
This is in accordance with the spec section 3.3.3.
  if (mapper != null) {
     mapperExecuted = true;

     final long timestamp = logger.timestamp("EXCEPTION_MAPPING");
     Response jaxrsResponse = mapper.toResponse(exception);
     logger.logDuration("EXCEPTION_MAPPING", timestamp, mapper, exception, exception.getLocalizedMessage(), jaxrsResponse);

     if (jaxrsResponse == null) {
        jaxrsResponse = Response.status(204).build();
     }
     return jaxrsResponse;
  }

So the question becomes, in your application whose exception mapper is returning
a null Response object and why.  As I mentioned earlier Resteasy does not register
any builtin mappers.  I'm not aware of any 3rd party components your code might
be using that register their own ExceptionMappers but lets assume that is happening.
You can provide a ExceptionMapper that takes priority over another ExceptionMapper
of the same type by adding a @Priority annotation to your ExceptionMapper provider.
Unfortunately you are going to have to identify what ExceptionMapper is
returning a null response in order know what you need to create with a higher priority.

@domtoupin
Why would you need an ExceptionMapper for every single class extending Exception?
UnhandledException is a wrapper class around any exception Resteasy does not
identify or handle.  You just need one ExceptionMapper provider.
There are 2 places in class ExceptionHandler that create a new instance of
UnhandledException at line 103 in method handleApplicationException and
line 318 in method handleException.  Note that in both cases the Thrown
"cause" is registered in UnhandledException.  Your toResponse method input param
sees a single class UnhandledException that provides access to the full exception
"cause" tree.  Your code can process the stack just as is done by lines 122-127
in our previous discussion.
Code lines 320-330 catch either of the thrown UnhandledException (above) and allows
your impl first crack at processing it.  If your UnhandledException mapper returns
null, then Resteasy rethrows the original UnhandledException.
} catch (UnhandledException une) {

         // Allow user a chance to handle an unidentified error with their custom
         // ExceptionMapper<UnhandledException>
         jaxrsResponse = executeExceptionMapperForClass(une, UnhandledException.class, logger);
         if (jaxrsResponse != null)
         {
            return jaxrsResponse;
         }
         throw une;
}

As to postponing the generation of a 204 response, I don't think that would be
a proper solution.  You need to determine what mapper in your app is returning
null and why.

@rsearls We know exactly which ExceptionMapper returns a null and why; we created our own ExceptionMapper to handle Exception and let the response be null if the original exception is a WebApplicationException (tested using instanceof since that class is known at compile time) or a Resteasy Failure (tested using ExceptionMapper.class.getClassLoader().loadClass("org.jboss.resteasy.spi.Failure").isInstance(exc) because org.jboss.resteasy.spi.Failure is only known at runtime).
The reason we are not on board with the current solution is that it requires us to add a compile time requirement on a Resteasy class (UnhandledException) which would defeat our goal of sticking to the JSR311 API.
I thought about this overnight and I am wondering the following:
You previously mentioned that Resteasy doesn't provide any built-in ExceptionMapper to which I said this was something we were aware of and we were also aware that WebApplicationException and Failure had special treatments in Resteasy if they were not previously handed to an ExceptionMapper; what if handleFailure and handleWebApplicationException were turned into actual built-in ExceptionMapper? That would work with us because then WebApplicationException and Failurewould be dealt with before reaching our genericExceptionMappersinceWebApplicationExceptionandFailureare "specialized"Exception`...

@domtoupin
Providing builtin mappers for Failure and WebApplicationException that implement
the code for handleFailure and handleWebApplicationException respectively would be
an elegant solution but I have not been able to make it work.  The biggest snag
is handleWebApplicationException's instanceof check for
"(!(wae instanceof NoLogWebApplicationException))".  There is no way to check
for that in a mapper class because there is no access to subclasses of
input type WebApplicationException in the toResponse method.
What I can do is refactor method handleException so that WebApplicationException
and Failure exceptions are evaluated and processed before other exception types.
That still leaves 2 hurdles, the 204 response object and the
ExceptionMapper requirement.  I might be allowed to
check for a 204 response and postpone returning it until your mapper
has a chance to evaluate the exception.  I would need to discuss further with
the team the spec compliance issues this might introduce.  I don't see how to
get around the requirement for a custom ExceptionMapper.
I know of no spec compliant class that allows Resteasy to hand your mapper the
root exception.  Barring that, you would need to provide a mapper for every
conceivable class type.
If you absolutely can't have a ExceptionMapper in your
code I don't see that the other proposed changes will be of any help.  Should
I proceed with this or abandon the effort?

Very old and obsolete


error running ./run_fastsurfer.sh

running:
./run_fastsurfer.sh --t1 $datadir/bert/mri/T1.mgz
--sid bert --sd $fastsurferdir
--parallel --threads 4 --3T
error:

Environment

OS: MacOS
Native install

python packages:

Run Command:
export FREESURFER_HOME=//Applications/freesurfer/7.4.1
source $FREESURFER_HOME/SetUpFreeSurfer.sh
datadir=/Applications/freesurfer/7.4.1/subjects
fastsurferdir=/Users/username/Applications/FastSurfer
./run_fastsurfer.sh --t1 $datadir/bert/mri/T1.mgz
--sid bert --sd $fastsurferdir
--parallel --threads 4 --3T

Hi,
It seems you are running python 3.11.4. Fastsurfer only officially supports python 3.10., but you should still be able to run Fastsurfer with 3.11 by adding the flag --py python3.11 though.

Could also be an old bash version or the "tee" command ?


Invalid dist files to use natively in node/browser

Changing rollup to export umd file should fix issue.

closed by commit 1406fc6


subsys: pm: Move settting timeout to after suspending devices

pm_suspend_devices() could return an error. Set timeout using sys_clock_set_timeout() to after this error is handled so that we have the accurate power state when calling the timeout function. This is useful in cases where we wish to compensate the system timer for certain power modes.

@ceolin @JordanYates , can you help review.


timeit: script to extract timing information from shortlog

Also tee the timing information on the job output
edit1:
this patch adds a script, timeit.py. This python script reads the
mkcloud-shortlog generated for each mkcloud job and looks for specific
logs and using regex parses out the start and finish times.
Then spits out the collected information and duration.
edit2:
scripts/timeit.py ../88476/mkcloud_short_stdout.log
  PROPOSAL,    crowbar(default),   14,Fri Oct 13 08:27:03 UTC 2017,Fri Oct 13 08:27:17 UTC 2017
  PROPOSAL,provisioner(default),   25,Fri Oct 13 08:27:27 UTC 2017,Fri Oct 13 08:27:52 UTC 2017
  PROPOSAL,        dns(default),   49,Fri Oct 13 08:47:05 UTC 2017,Fri Oct 13 08:47:54 UTC 2017
  PROPOSAL,    nfs_client(data),   16,Fri Oct 13 08:48:07 UTC 2017,Fri Oct 13 08:48:23 UTC 2017
  PROPOSAL,     pacemaker(data),  120,Fri Oct 13 08:48:33 UTC 2017,Fri Oct 13 08:50:33 UTC 2017
  PROPOSAL,   database(default),  119,Fri Oct 13 08:50:43 UTC 2017,Fri Oct 13 08:52:42 UTC 2017
  PROPOSAL,   rabbitmq(default),   67,Fri Oct 13 08:52:53 UTC 2017,Fri Oct 13 08:54:00 UTC 2017
  PROPOSAL,   keystone(default),   -1,Fri Oct 13 08:54:10 UTC 2017
     STEPS,           setuphost,    2,2017-10-13 10:14:02,2017-10-13 10:14:04
     STEPS,             cleanup,   13,2017-10-13 10:14:04,2017-10-13 10:14:17
     STEPS,             prepare,  165,2017-10-13 10:14:17,2017-10-13 10:17:02
     STEPS,          setupadmin,   74,2017-10-13 10:17:02,2017-10-13 10:18:16
     STEPS,       addupdaterepo,   22,2017-10-13 10:18:16,2017-10-13 10:18:38
     STEPS,  prepareinstcrowbar,  185,2017-10-13 10:18:38,2017-10-13 10:21:43
     STEPS,           runupdate,    3,2017-10-13 10:21:43,2017-10-13 10:21:46
     STEPS,    bootstrapcrowbar,   48,2017-10-13 10:21:46,2017-10-13 10:22:34
     STEPS,         instcrowbar,  357,2017-10-13 10:22:34,2017-10-13 10:28:31
     STEPS,          setupnodes,   16,2017-10-13 10:28:31,2017-10-13 10:28:47
     STEPS,           instnodes, 1080,2017-10-13 10:28:47,2017-10-13 10:46:47
     STEPS,       setup_aliases,   11,2017-10-13 10:46:47,2017-10-13 10:46:58
     STEPS,            proposal,   -1,2017-10-13 10:46:58

Thanks for feedback @aspiers,  does this help ?
or should I document the script as well ?

looking at edit2 in the PR description, I think the date does not really matter and just duration of various steps is interesting.
you could get that a lot easier via grep "timing for" on the full output:
https://ci.suse.de/view/Cloud/view/Worker/job/openstack-mkcloud/89120/artifact/.artifacts/mkcloud_log/2017-10-19T07%3A05%3A53+00%3A00.log

Yes that would be also good enough.
a grep for 'Steps' and a grep for 'Proposals.

@sjamgade Thanks for the improved commit message, yes that's definitely better!  But please don't forget to also include the reason why this change is needed in the commit message.  That's the most important part, as explained in this great talk which is essential viewing.

or should I document the script as well ?

Yes please, that's a great idea.  Having a short summary at the top of the script explaining what it does and how/why it should be used would also be very helpful, otherwise people have to run git blame and wade through history to find answers.

Proposing different solution by logging the data directly to a file instead of parsing the log.

PR works as intended, but I wait for comments before dopping the first two commits (commit + revert)
@aspiers @bmwiedemann @sjamgade please review
Thanks

\m/


@fluentui/react package dependency update

Category
[ ] Enhancement
[ ] Bug
[✅ ] Question
I don't know which is guideline for the @fluentui/react versioning, but is it even possible to up the dependency to, say, the most recent (8.120.5 currently). This version contains some fixes for focus in tag picker (used by TaxonomyPicker)?

After thinking about it again, it seems no need to change the version, because the actual version will always be taken from your project's @fluentui/react dependency, and not from pnp's one. Correct me if I'm wrong.


Switch from B-format to FuMa

Most recent commit renamed and modified "convert_N3D_Bformat.m", but the old function is still used elsewhere in the repository ("decodeBformat.m" and "TEST_AMBI_SCRIPT.m").

Thanks for the catch, the issue should be fixed now.


add CI/CD

BENEFITS : Better collaboration and software quality.

what's the use case for that

You know how to do proper software development:

[ ] abstract
[ ] brainstorm
[ ] Issue tracking
[ ] implementation
[ ] peer-review
[ ] Documentation
[ ] Tests implementation
[ ] CI optimized
[ ] CC
[ ] CD

You do research during the abstracting phase.
If you are doing (F)LOSS that is and I like to stage the docs during the implementation.

this didn't answer my question

Either you are writing perfect code else your software is trash!

what's the use case for that
https://github.com/cmyui/gulag/issues/13#issue-722980239
Simplicity.

Hey, do you have any ideas in specific? I mean once gulag is setup it's already a one liner to run the server, even after a git update it should just work™.. python makes all that stuff pretty easy since theres no compiling or anything to be done.. submodule wise, we only have oppai-ng which has a build script of its own, but will probably only very rarely ever be updated.. maybe static analysis but honestly any ide in 2020 will probably already do this for you.. overall I really don't see much to gain lol
Maybe for cmyui_pkg I could make it push to pypi when I push to git.. could consider that one.
honestly though like gulag setup is already a 5-10 minute job for anyone with some experience..


single digit barcodes not working (Android)

Describe the bug
Single digit barcodes are hard to read and return the wrong value. Any other barcodes work fine.
To Reproduce
Steps to reproduce the behavior:

Download the example
Scan a single digit barcode (barcode generator: https://barcode.tec-it.com/en/?data=3 )

Expected behavior
It should return the correct single digit barcode result
Screenshots

Smartphone:

Device: huawei p30 lite
OS: Android 10

I just ran into this issue with plugin v2.0.0. However, in my case, the problem happens on Code 128 format. Not issue with Code 93 format. Unfortunately, we have committed to Code 128, so I really hope to see a fix.
Saw the issue with Android 11 and 9.
TIA


is it intentional to use all three digits of the version for the library SONAMEs?

Describe the bug
$ objdump -p  /usr/lib64/libmercury.so.1.0.1 | grep SONAME
  SONAME               libmercury.so.1.0.1

AFAIU, typically shared libraries break backward compatible ABI only on major versions (or vice-versa, update the major version on non-backward compatible ABI breakages), update the minor on forward compatible ABI changes (so that the major version is still compatible with existing behaviours) and no ABI break on bugfix update.
But mercury is including all three in it's SONAME, indicating that every single mercury version released is non-backward compatible with it's predecessor.
Is this intentional?
To Reproduce
N/A
Expected behavior
SONAME should just be major version: libmercury.so.1
Screenshots
N/A
Platform (please complete the following information):

System description: EL7.6
Compiler version: e.g. gcc 4.8

Additional context
None

OK I would need to review that. I'm not entirely sure that we want to simply change it that way. If I look at my system for example I have for zlib:
/usr/lib64/libz.so (installed with zlib-devel package)
/usr/lib64/libz.so.1 (installed with zlib package)
/usr/lib64/libz.so.1.2.11 (installed with zlib package)

So it just sounds like it should just be an extra symbolic link that would need to be created?

And yes the SONAME would need to be fixed too.

@soumagne Indeed.  I would bet that if you use objdump -p on that /usr/lib64/libz.so.1.2.11 and look at the SONAME value, it would say libz.so.1.  That's the library name.version that things linked to libz look for, and why the symlink from /usr/lib64/libz.so.1 to /usr/lib64/libz.so.1.2.11 is created.
This ends up meaning that libz can be upgraded to any 1.x.x version and anything linked to it will continue to work with such upgrades all the way up to 1.999*.9999*.
Much thanks for looking into this.

As an aside, only because I have been looking through some commits, I notice in 9b1e7fa9d3456504fb7a236cb06c4192283fbbeb that several previously exported functions were changed to static inline and no longer exported.
This is exactly the kind of change that warrants bumping the version from major 1 to major 2 as things built with 1.x.x that expect those functions to be available will break after that patch.

I just re-read your comments in my e-mail copy and wanted to clarify...

So it just sounds like it should just be an extra symbolic link that would need to be created?

This is not something that your build/install process needs to do beyond just setting the SONAME of the library.  The linker is what should create the symlinks.

@brianjmurrell this is now fixed in master. Of course this won't be of any use until we create a new release.

And I will also need to update mchecksum to reflect that change.

@brianjmurrell this is now fixed in master. Of course this won't be of any use until we create a new release.

That's awesome!  Thanks.
I did leave a comment on the commit if you cared to take a look.

@brianjmurrell and the version number has been updated to 2.0.0a1


Support a /sim directory with no TSC but /sim/public content.

This change allows a target build script to build a simulator sim.js outside of PXT. Why?
Well in my case I'm going a bit rogue and creating my own shim .d.ts files and going from there. Given my heavy use of npm packages etc. it just makes more sense to go this route so I can use whatever browser-ify toolchain I choose vs. the PXT route.
This build path does lose,

PXT generated shim .d.ts files for the simulator.
PXT generated sim-strings .json file for lf() based localization.

Other TSC project builds are still performed by PXT, e.g. cmds/, fieldeditors/, editor/, libs/ etc.
Changes are,

Don't skip the already optional 'sim' build step if there is a sim/public/ even though no sim/tsconfig.json exists.
In the simulator shim creation look for sim/tsconfig.tson else bail. This function relies on a tsconfig.json existing anyway (it crashes otherwise) so may as well check for that specifically.
Use path.join() for forming the tsconfig.json path. Why? No technical reason beyond I saw all the other code doing the same so I changed this to make it consistent.

Fixes #4477


Update Cargo.lock

Was reading the comment on https://github.com/mintlayer/mintlayer-core/blob/53d5688f74842e3a29a52543219d6f1cff2948b7/node-lib/src/rpc.rs#L54-L56
Also the jsonrpsee changelog, maybe the current bump to v0.17.1 will fix it?

Was reading the comment on https://github.com/mintlayer/mintlayer-core/blob/53d5688f74842e3a29a52543219d6f1cff2948b7/node-lib/src/rpc.rs#L54-L56
Also the jsonrpsee changelog, maybe the current bump to v0.17.1 will fix it?

I will add a comment about it in the code and we'll investigate it later.