Fix finding proper provided certificate when ACME is enabled

What does this PR do?
Fixes domain to certificate matching when ACME is enabled and non-acme certificates are provided via configuration.
Currently the domain to certificate matching algorithm here fails and the default certificate is served. The result is that if two or more non-ACME certificates are provided, only the first one is used.
HTTPS requests to domains not covered by the default certificate fail.
More

[ ] Added/updated tests
[ ] Added/updated documentation

Additional Notes
I am not aware of the project's architecture, or whether the place where I added the call to BuildNameToCertificate is the best place for it.

To ease review, a.TLSConfig.NameToCertificate is empty here if BuildNameToCertificate (docs) is not called, which means matching will never occur, only the default certificate will be provided.
It is a one-line change.
Can someone review please?


Multi Series in Visual Editor

Hi
Congratulation for making nice plugin.
i am trying to work on multi series data from ( influx db flux query )  data frame json is attached.
i am trying to make line charts .
Could please guide me how to map data for echart . Query can return multiple series(frames) too. so i want to make it dynamic .
I tried to use visual editor and it is showing only first frame .
data set has same field in all frames .
one more question with visual editor how to handle if query return different number of frame each time query runs .

my use case is to compare /analysis batch data with elapsed time which i am getting from stateDuration in query.
trying to make multi series line chart with "name": "stateDuration", and  "name": "_value",
[
{
"schema": {
"refId": "A",
"meta": {
"typeVersion": [
0,
0
],
"executedQueryString": "from(bucket: "HULDATA")\r\n |> range(start: 2024-03-23T07:40:35.904Z, stop: 2024-03-23T07:45:35.904Z)\r\n |> filter(fn: (r) => r["_measurement"] == "HUL")\r\n |> filter(fn: (r) => r["Location"] == "HOMOGENISER")\r\n |> filter(fn: (r) => r["_field"] == "Stg1_Pressure_UHP")\r\n |> stateDuration(unit: 1s, fn: (r) => true)\r\n \r\n"
},
"name": "HUL",
"fields": [
{
"name": "_time",
"type": "time",
"typeInfo": {
"frame": "time.Time",
"nullable": true
},
"config": {}
},
{
"name": "_value",
"type": "number",
"typeInfo": {
"frame": "float64",
"nullable": true
},
"labels": {
"Batch": "IC-T-20247053",
"Location": "HOMOGENISER",
"_field": "Stg1_Pressure_UHP",
"_start": "2024-03-23 07:40:35.904 +0000 UTC",
"_stop": "2024-03-23 07:45:35.904 +0000 UTC"
},
"config": {}
},
{
"name": "stateDuration",
"type": "number",
"typeInfo": {
"frame": "int64",
"nullable": true
},
"labels": {
"Batch": "IC-T-20247053",
"Location": "HOMOGENISER",
"_field": "Stg1_Pressure_UHP",
"_start": "2024-03-23 07:40:35.904 +0000 UTC",
"_stop": "2024-03-23 07:45:35.904 +0000 UTC"
},
"config": {}
}
]
},
"data": {
"values": [
[
1711179636915,
1711179641936,
1711179646947,
1711179651962,
1711179656964,
1711179661967,
1711179666972,
1711179671975,
1711179676974,
1711179681986,
1711179686994,
1711179692002,
1711179696987,
1711179701999,
1711179707012,
1711179712042,
1711179717051,
1711179722065,
1711179727074,
1711179732084,
1711179737078,
1711179742082,
1711179747089
],
[
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42
],
[
0,
5,
10,
15,
20,
25,
30,
35,
40,
45,
50,
55,
60,
65,
70,
75,
80,
85,
90,
95,
100,
105,
110
]
]
}
},
{
"schema": {
"refId": "A",
"name": "HUL",
"fields": [
{
"name": "_time",
"type": "time",
"typeInfo": {
"frame": "time.Time",
"nullable": true
},
"config": {}
},
{
"name": "_value",
"type": "number",
"typeInfo": {
"frame": "float64",
"nullable": true
},
"labels": {
"Batch": "IC-T-20247054",
"Location": "HOMOGENISER",
"_field": "Stg1_Pressure_UHP",
"_start": "2024-03-23 07:40:35.904 +0000 UTC",
"_stop": "2024-03-23 07:45:35.904 +0000 UTC"
},
"config": {}
},
{
"name": "stateDuration",
"type": "number",
"typeInfo": {
"frame": "int64",
"nullable": true
},
"labels": {
"Batch": "IC-T-20247054",
"Location": "HOMOGENISER",
"_field": "Stg1_Pressure_UHP",
"_start": "2024-03-23 07:40:35.904 +0000 UTC",
"_stop": "2024-03-23 07:45:35.904 +0000 UTC"
},
"config": {}
}
]
},
"data": {
"values": [
[
1711179752101,
1711179757114,
1711179762120,
1711179767129,
1711179772141,
1711179777161,
1711179782174,
1711179787179,
1711179792188,
1711179797190,
1711179802199,
1711179807212,
1711179812207,
1711179817209,
1711179822222,
1711179827219,
1711179832248,
1711179837263,
1711179842276,
1711179847271,
1711179852285,
1711179857292,
1711179862295,
1711179867311
],
[
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42
],
[
0,
5,
10,
15,
20,
25,
30,
35,
40,
45,
50,
55,
60,
65,
70,
75,
80,
85,
90,
95,
100,
105,
110,
115
]
]
}
},
{
"schema": {
"refId": "A",
"name": "HUL",
"fields": [
{
"name": "_time",
"type": "time",
"typeInfo": {
"frame": "time.Time",
"nullable": true
},
"config": {}
},
{
"name": "_value",
"type": "number",
"typeInfo": {
"frame": "float64",
"nullable": true
},
"labels": {
"Batch": "IC-T-20247055",
"Location": "HOMOGENISER",
"_field": "Stg1_Pressure_UHP",
"_start": "2024-03-23 07:40:35.904 +0000 UTC",
"_stop": "2024-03-23 07:45:35.904 +0000 UTC"
},
"config": {}
},
{
"name": "stateDuration",
"type": "number",
"typeInfo": {
"frame": "int64",
"nullable": true
},
"labels": {
"Batch": "IC-T-20247055",
"Location": "HOMOGENISER",
"_field": "Stg1_Pressure_UHP",
"_start": "2024-03-23 07:40:35.904 +0000 UTC",
"_stop": "2024-03-23 07:45:35.904 +0000 UTC"
},
"config": {}
}
]
},
"data": {
"values": [
[
1711179872321,
1711179877327,
1711179882340,
1711179887358,
1711179892369,
1711179897372,
1711179902396,
1711179907388,
1711179912405,
1711179917404,
1711179922416,
1711179927411,
1711179932439
],
[
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42,
42
],
[
0,
5,
10,
15,
20,
25,
30,
35,
40,
45,
50,
55,
60
]
]
}
}
]
Thank you in advance and once again congratulation for making nice plugin.

Hi Mikhail
There is an update , i changed my query and did pivot .i can get 4 series on graph , but my problem is every time i run the query my column name changes and number of column also changes . so i wanted to know how to make this dynamically . I think i have to go with code method could you please shade some light on this to handle dynamically .
please find the attached data .

Thanks in advance

@punu1103 You are correct, you can't use Visual Editor for fields with changeable names. It was not clear from the original question.
You can find the fields and values based on the RefId as we explained in the documentation: https://volkovlabs.io/plugins/volkovlabs-echarts-panel/datasources/
data.series.map((s) => {
  if (s.refId === "logo") {
    images =
      s.fields.find((f) => f.name === "body").values.buffer ||
      s.fields.find((f) => f.name === "body").values;
  } else if (s.refId === "connections") {
    sources =
      s.fields.find((f) => f.name === "source").values.buffer ||
      s.fields.find((f) => f.name === "source").values;
    targets =
      s.fields.find((f) => f.name === "target").values.buffer ||
      s.fields.find((f) => f.name === "target").values;
  } else if (s.refId === "nodes") {
    titles =
      s.fields.find((f) => f.name === "title").values.buffer ||
      s.fields.find((f) => f.name === "title").values;
    descriptions =
      s.fields.find((f) => f.name === "description").values.buffer ||
      s.fields.find((f) => f.name === "description").values;
  }
});

Hi Mikhail
Thanks for reply .
in above example column names are fixed . in my case column name ( refid ) it self changing , like for 5 min query it is A,B,C for 10 Min query it may be A,B,C,D,E,F   here  A,B,C,D,E,F are an example it can be anything .
How can i map column 1 to x axis and rest other column to Y -axis  dynamically .in my case first column is always fixed which i think Can be mapped with refid but rest other column are not with fixed name .
My use case is to compare batch wise data , first column is elapsed time and rest other columns are batch name made in specific time range selected for query . batches are alphanumeric .

FOR EXAMPLE  IC-T-20248241 is not fixed

Hi Mikhail
I made some progress and able to handle first 5 series dynamically .
I am using panel repeat option  with  variable name parameter .
first 5 series line charts are coming perfectly but it is  not showing which parameter is this .
In inspect Panel  Json tab : panel json and data json having this information but not in data frame json.
"scopedVars": {
"Parameter": {
"text": "Mixing_Time",
"value": "Mixing_Time",
"selected": true
},
how can i bring this on either tool tip  or any text or anywhere on dashboard ?

Hi, @punu1103
if your column names change dynamically you need to use "code" Editor Mode instead of "visual".
I'll give you an example
see below
For example, I created the data using static Data source.
It's static, but it'll ok for example.

So, next I set up Visual Editor Mode to display exmaple data.
The data is showed as expected

But there is one point, of course, if we change the name of Field 2 to Field 21 (as an example, to simulate a dynamic change)
we won`t see blue line

Data mismatch occurs

To avoid this, we need to get data and work without being bound to a series, as it happens in the "visual" mode.
How it`s look in "code" mode:

Everything is displayed if I change the field name from Field 21 to Field 22

A little explanation.
In this case. you are manipulating data from context.panel.data.series, they get there dynamically. You need to take the array element that is used for the x-axis, the other elements can be used for the Y axis.
I'm sure this will help you, thank you.
example of code:
let yData = []
let xData = []
context.panel.data.series.map((s) => {
  console.log('console >>> s', s)
  xData = s.fields[0].values
  yData = s.fields.slice(1).map(element => ({
    data: element.values,
    type: 'line'
  }))
});
console.log('console >>> xData', xData)
console.log('console >>> yData', yData)

return {
  grid: {
    bottom: "3%",
    containLabel: true,
    left: "3%",
    right: "4%",
    top: "4%"
  },
  toolbox: {
    left: 'center',
    feature: {
      dataZoom: {
        yAxisIndex: 'none'
      },
      restore: {}
    }
  },
  series: yData,
  xAxis: {
    data: xData,
  },
  yAxis: {
    type: "value",
    min: 80
  }
};

I left console.log for example

Thanks it worked !!


Fix topological sort Concurrent Modification Exception

This PR has 2 commits. The first is a minimal change which reproduces the concurrent modification exception (CME) I mentioned in #14552 on my machine (openjdk 17 and 11). The second is a fix which prevents the CME from happening by making a new hashset in every iteration in topologicalSort.
Code formerly built a directed graph, topologically sorted it then reversed
the sorted list. This is mathematically equivalent to reversing the edge
direction in the directed graph. Changing the edge direction (and removing
the call to Lists.reverse) causes a CMEin the topologicalSort function
Copy pasted log tail including stacktrace:
2022-02-04 20:04:16 [main] DEBUG n.r.client.config.ConfigManager - Loading configuration value groundMarker.rememberTileColors: true
2022-02-04 20:04:16 [main] INFO  n.r.client.account.SessionManager - No session file exists
2022-02-04 20:04:16 [main] ERROR net.runelite.client.RuneLite - Failure during startup
java.util.ConcurrentModificationException: null
	at java.base/java.util.HashMap$HashIterator.nextNode(HashMap.java:1597)
	at java.base/java.util.HashMap$EntryIterator.next(HashMap.java:1630)
	at java.base/java.util.HashMap$EntryIterator.next(HashMap.java:1628)
	at com.google.common.graph.DirectedGraphConnections$2$1.computeNext(DirectedGraphConnections.java:145)
	at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:145)
	at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:140)
	at net.runelite.client.plugins.PluginManager.topologicalSort(PluginManager.java:651)
	at net.runelite.client.plugins.PluginManager.loadPlugins(PluginManager.java:345)
	at net.runelite.client.plugins.PluginManager.loadCorePlugins(PluginManager.java:275)
	at net.runelite.client.RuneLite.start(RuneLite.java:323)
	at net.runelite.client.RuneLite.main(RuneLite.java:257)
2022-02-04 20:04:17 [Client] DEBUG client-patch - Game state changed: UNKNOWN
2022-02-04 20:04:18 [Client] DEBUG client-patch - Game state changed: LOGIN_SCREEN

Does this code throw an error on master under any configurations? This looks like you are both 1) introducing the CME and 2) also fixing the CME separately + also have titled the PR claiming you are fixing a CME.

I have not made the code trigger a CME in master. In https://github.com/runelite/runelite/pull/14668/commits/7a60ed8e4a11b019ae857a878b7ffe736c6e7993 I made made an optimization to loadCorePlugins so instead of creating a list in reverse order then allocating a new reversed list, it creates the list in the proper order to begin with. This triggered the CME in topologicalSort.
The criterion for a buggy topologicalSort is that it throws an exception when a valid graph with a valid topological sort is passed to it. That's what happened in this case, so it is buggy. As-is in master, you are modifying a collection while you have an iterator over it. The fact that successors uses an iterator is not documented, but that's why java.base/java.util.HashMap$EntryIterator.next(HashMap.java:1628) is in the stack trace for the CME. Modifying a collection while iterating over it is unspecified behavior. It is only by chance that master does not trigger the CME - an update to the JDK or guava could trigger a CME. guava uses the lazy-fail java.util.HashMap LinkedHashMap and TreeMap but if guava were updated to use a synchronized map master would fail immediately with no changes to runelite code or configuration (I can test this by patching guava if desired)

Can you provide a graph which on master causes the code on master to throw a CME?

How am I supposed to change the graph if I'm on master? Do you want a new test case? If I added a test I wouldn't be on master anymore.

A new test case would be nice, though it isn't required if you could instead provide a graph, I can build a test case. It is however very possible to make a test without modifying the topologicalSort method on master just by not modifying it in the commit which adds the test.

I've figured out this gets tripped on master by having one plugin which has multiple dependencies.
Here is a simple test case
    @Test
    public void testTopologicalSort()
    {
        MutableGraph<Integer> graph = GraphBuilder
            .directed()
            .build();

        graph.addNode(1);
        graph.addNode(2);
        graph.addNode(3);

        graph.putEdge(1, 2);
        graph.putEdge(1, 3);

        PluginManager.topologicalSort(graph);
    }

This makes sense reversing the digraph would introduce this error since there are several plugins which depend on eg the xptracker.

This PR has been updated based on advice on discord

So what you want to do now is, make a commit to fix the cme, add the testcase too for good measure. Put in the commit message is it triggered by having a plugin with multiple deps.
Then make a 2nd commit reversing the digraph and removing the reverse(), which is just an optimization


Adding Kubos core services packages

Adding KLB packages for the core services (core services = critical Kubos services whose functions are specifically for the main OBC, not any particular payload hardware)
They are gathered under a singular package option to:
a) make it easy to include all of them
b) make it an all-or-nothing type of thing
Packages currently included:

Telemetry DB
All the Lua services (which will be broken out into their own packages at some point)
The application service - kubos/kubos#91

 Kubos Core KLB packages


Add comment on inferProvider call

Summary
This is to clarify the expectations on this function.
Change Type
Mark the type of change your PR introduces:

[ ] Bug fix (resolves an issue without affecting existing features)
[ ] Feature (adds new functionality without breaking changes)
[ ] Breaking change (may impact existing functionalities or require documentation updates)
[ ] Documentation (updates or additions to documentation)
[x] Refactoring or test improvements (no bug fixes or new functionality)

Testing
Outline how the changes were tested, including steps to reproduce and any relevant configurations.
Attach screenshots if helpful.
Review Checklist:

[x] Reviewed my own code for quality and clarity.
[x] Added comments to complex or tricky code sections.
[ ] Updated any affected documentation.
[ ] Included tests that validate the fix or feature.
[ ] Checked that related changes are merged.

coverage: 47.741% (-0.01%) from 47.754%
when pulling 791030f720958591eee91ef0a01ff336f5dc89be on comment-infer
into f18a5b3f296d5ecc30f06b24efd1d0ba76db9a88 on main.


Rename thumbnail/image option to more general 'media' and change prefetchImageSize option

For #1806 and #1817, mainly.

Changes made, @astorije

@YaManicKill, I removed the second commit per @MaxLeiter's instructions and fixed conflicts. Feel free to merge when you're happy with it so we can fix master.

Alright, so we are now just changing the frontend option to expand audio/video as well. Gotcha.


Added a few changes to make the library .NET 4.0 compatible

Only a few changes needed.  Needs review for how to proceed (separate 4.0 target?  target 4.0 instead of 4.5?).

No surprises here.  I'm pretty sure I'll work this in as a separate 4.0 target.  Thanks.

Although I didn't merge this PR, I implemented the same thing in 0.8.0.  If that looks okay, I assume we could close this one.

Actually I'm not as interested in it anymore.  This was back when we thought Unity 5 was getting .NET 4 support.  We actually had to retarget to 3.5, and I assume you are not interested in supporting that as well eh? ;)  I've made custom non-PCL builds of this library for my purposes but I'd be happy to share what I did if you are curious.

Was going to close this, but then I noticed some recent activity.  It looks like the net40 issue is no longer an issue, but net35 might be.  I haven't looked at net35 compatibility at all.  No promises there.  Anyway, should this PR be closed?

The activity is just because I'm messing around in my own repo.  It has no bearing on this PR, which can be closed.  There is no PCL profile that include .NET 3.5 so I assume that you shouldn't attempt to add in stuff for it.  I've forked the repo to couchbasedeps and included the changes I needed to make to get this to work on .NET 3.5 in case you are simply curious.


Widget Visibility Widget

This is the widget as discussed here in the forum. To allow BTN4 and BTN5 to be returned to the widget after, for example an alert, I have exposed a setup function in addition to the usual draw function.

If the setup addition to the WIDGET interface is an issue, I am happy to remove it. Its is only necessary for my ANCS widget which only really works with modified firmware and so I will not submit it until it is supported by standard firmware. Not urgent as nearly all Bangle owners use Android phones. ANCS could help sell Bangles to iPhone users:-)
BTW: how long does it take for updated apps to appear in the App loader - the gpsnav  update you accepted 5 days or so ago is not there. I do appreciate you are very busy, however, I thought it was automatic.

No, it's fine - I've just been a bit busy and didn't get around to merging.
Did you consider using the swipe event for left & right? That might be neater?

Will try with swipe - would be more intuitive.


Have to push stop twice, once for stopping output and another to stop actual GPU generation, fix

Tried adding click_event twice in cancel, didn't help.
Also, while message stops instantly, generation might continue for 2-3 seconds more since in middle of hard generation.
Also, bit uncontrolled, hits the ValueError when generation finally stopped:
Traceback (most recent call last):
  File "/data/jon/h2o-llm/callbacks.py", line 48, in gentask
    ret = self.mfunc(callback=_callback, **self.kwargs)
  File "/data/jon/h2o-llm/generate.py", line 597, in generate_with_callback
    model.generate(**kwargs)
  File "/home/jon/miniconda3/envs/alpaca/lib/python3.10/site-packages/peft/peft_model.py", line 581, in generate
    outputs = self.base_model.generate(**kwargs)
  File "/home/jon/miniconda3/envs/alpaca/lib/python3.10/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
    return func(*args, **kwargs)
  File "/home/jon/miniconda3/envs/alpaca/lib/python3.10/site-packages/transformers/generation/utils.py", line 1406, in generate
    return self.greedy_search(
  File "/home/jon/miniconda3/envs/alpaca/lib/python3.10/site-packages/transformers/generation/utils.py", line 2256, in greedy_search
    if unfinished_sequences.max() == 0 or stopping_criteria(input_ids, scores):
  File "/home/jon/miniconda3/envs/alpaca/lib/python3.10/site-packages/transformers/generation/stopping_criteria.py", line 113, in __call__
    return any(criteria(input_ids, scores) for criteria in self)
  File "/home/jon/miniconda3/envs/alpaca/lib/python3.10/site-packages/transformers/generation/stopping_criteria.py", line 113, in <genexpr>
    return any(criteria(input_ids, scores) for criteria in self)
  File "/data/jon/h2o-llm/callbacks.py", line 22, in __call__
    self.callback_func(input_ids[0])
  File "/data/jon/h2o-llm/callbacks.py", line 43, in _callback
    raise ValueError
ValueError

Not entirely fixed.  Sometimes generation holds onto thread, and hitting stop doesn't trigger gradio stop, until generation done.  Maybe need to use asyncio instead of separate thread for use within gradio.


Character Customization

Expected Behaviour: Customize a character via the character customization page and your character should have a new look.
Actual Behaviour: After pressing the save button, the character isn't updated. Clearing the cache doesn't work and I have tried this across different web browsers. Leaving and then rejoining a game also does not work.
Can it be reproduced? Yes. Customize your character and it will not work.
How often does it happen? Always.
Workaround? N/A

~ Reported for the wrong client. Closing issue.


Repurpose towards Raspberry Pi?

I've been poking around FNADroid and put together that it was put on back burner because ndk-build was impossible to work with, which checks with my experience with Box86. I was wondering if in your opinion, some of the FNADroid-Player work could be repurposed towards Raspberry Pi, as the one stop shop aspect seems appealing and Pi seems to be gaining ground in emulative efforts.

you need a different library for this. FNADroid is for Android (duh)


Refactor CloudEventOverrides in Google Cloud sources

A first step towards consolidating the code duplicated inside our multiple Google Cloud sources.

Consolidate repeated ceOverridesJSON functions inside new sources/cloudevents package.
We now have a global cloudevents.OverridesJSON() helper to achieve this.

Use this new helper to set the CloudEvents source attribute via overrides.
By default, the Pub/Sub adapter uses the resource name of the Pub/Sub topic as event source. For some sources, such as Cloud Storage, it makes sense to override that value (e.g. with the bucket's URL).

Pass a single fully-qualified Subscription name to adapters, instead of a project and a subscription ID separately.
Sources backed by Pub/Sub report the full resource name of their active Subscription inside their status (in the format projects/{project}/subscriptions/{subscription}). We don't need to multiply our env vars by splitting this resource name into two, we can instead pass it as-is and let the adapter deal with the parsing/validation.

Add various tests related to the additions above.


Error post upgrade

Hi,
After upgrading, I do face the following error on Windows 10.
I would appreciate if you could help on that. At the moment, only context compiling is working, but te auto-completion and the windows pop-ups are not working.
Thanks in advance.
 I experienced the exact same issue after updating my ConTeXt minimals recently, and I've been looking into it. To translate the error closer into English, it's complaining that it can't parse the ConTeXt (XML) interface files, because the command \xmldoifatt description has as argument <cd:string/> (a.k.a {http://www.pragma-ade.com/commands}string) which simple ConTeXt doesn't understand. For reference, if you're curious, here's what it's description looks like:
<cd:command name="xmldoifatt" level="style" category="xml" file="lxml-ini.mkiv">
  <cd:arguments>
    <cd:resolve name="argument-node"/>
    <cd:string/>
    <cd:string/>
    <cd:resolve name="argument-true"/>
  </cd:arguments>
</cd:command>

There you can see the offending <cd:string/> (two of them in-fact). So, this is the first time (to my knowledge) that such an argument has been used in the interface files, so the parser didn't know to handle it. What I've now done (I'll push a new release with the change shortly) is to add <cd:string/> in, and also put in a sensible fallback behaviour so in future the parser can still succeed even if it hits something unexpected like this. (It'll still complain in the terminal though about the issue, rather than silently glossing over it, so it can be fixed up eventually.)
I'll close this issue for now, and get cracking on pushing the new release. Expect to wait a couple of hours from now for me to push it out (I'm playing with some other bits and bobs at the moment, wanna reach a stopping point with them) and also for package control to notice the new release. If the issue persists with the new release, then please re-open and we'll have a look at it.


Remove source/instruction.cpp

Avoids linker problems on Windows and OSX with duplicate object file
names.  Avoids collision with source/val/instruction.cpp
Fixes https://github.com/KhronosGroup/SPIRV-Tools/issues/451

FYI https://github.com/google/shaderc would require an update to react to this change.

It seems source/instruction.cpp is not actually removed from git?

Right.  Fixed. :-)

Rebased

squashed


update the Teams page to reflect HR changes

https://sara-sabr.github.io/ITStrategy/team.html
https://sara-sabr.github.io/ITStrategy/lequipe.html

Remove My from the team page as of Feb 4th :(

Remove My from the team page as of Feb 4th :(

G: Would it please be possible to change the image ratio on my picture?
Thanks.
Phil

From: Guillaume Charest @.***>
Sent: April 19, 2021 10:48:37 AM
To: sara-sabr/ITStrategy
Cc: Girard, Philipe PJ [NC]; Assign
Subject: Re: [sara-sabr/ITStrategy] update the Teams page to reflect HR changes (#1256)
Closed #1256https://github.com/sara-sabr/ITStrategy/issues/1256.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHubhttps://github.com/sara-sabr/ITStrategy/issues/1256#event-4613146438, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARDC6QJM4QD55ULPMHPX56TTJQ7ELANCNFSM4SALK5GA.

A PR is done already :)
--
Guillaume Charest
Conseiller, Direction générale de l'innovation, de l'information et de la technologie
Emploi et Développement social Canada / Gouvernement du Canada
<EMAIL_ADDRESS>/ Tél. :<PHONE_NUMBER>
Advisor, Innovation, Information and Technology Branch
Employment and Social Development Canada / Government of Canada
<EMAIL_ADDRESS>/ Tel:<PHONE_NUMBER>
From: Girard, Philipe PJ [NC] @.>
Sent: Monday, April 19, 2021 10:52 AM
To: sara-sabr/ITStrategy @.>; sara-sabr/ITStrategy @.>; Charest, Guillaume G [NC] @.>
Cc: Assign @.***>
Subject: Re: [sara-sabr/ITStrategy] update the Teams page to reflect HR changes (#1256)
G: Would it please be possible to change the image ratio on my picture?
Thanks.
Phil

From: Guillaume Charest @.***>
Sent: April 19, 2021 10:48:37 AM
To: sara-sabr/ITStrategy
Cc: Girard, Philipe PJ [NC]; Assign
Subject: Re: [sara-sabr/ITStrategy] update the Teams page to reflect HR changes (#1256)
Closed #1256https://github.com/sara-sabr/ITStrategy/issues/1256.

You are receiving this because you were assigned.
Reply to this email directly, view it on GitHubhttps://github.com/sara-sabr/ITStrategy/issues/1256#event-4613146438, or unsubscribehttps://github.com/notifications/unsubscribe-auth/ARDC6QJM4QD55ULPMHPX56TTJQ7ELANCNFSM4SALK5GA.


Sidenav management simplified and improved

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

Fix for #124 submitted.


session_cookie::create cannot create long lived cookies

Describe the bug
The createSessionCookie REST API supports a validDuration between five minutes and fourteen days. Ref https://cloud.google.com/identity-platform/docs/reference/rest/v1/projects/createSessionCookie
Using session_cookie::create to obtain a session cookie it is not possible to retrieve a cookie with a duration greater than sixty minutes.
This is caused because of the below line which reuses the cookie duration when requesting a OAuth token.
        let assertion = crate::jwt::session_cookie::create_jwt_encoded(credentials, duration)?;

The request for the OAuth token (POST https://accounts.google.com/o/oauth2/token) with a duration greater than sixty minutes will return:
{
  "error":"invalid_grant",
  "error_description":"Invalid JWT: Token must be a short-lived token (60 minutes) and in a reasonable timeframe. Check your iat and exp values in the JWT claim."
}

Specifying a duration less than sixty minutes for session_cookie::create will work as expected.
I propose that as the a oauth token is requested every time  session_cookie::create is called the JWT duration for getting the oauth token should be reduced to a constant between one to five minutes.
To Reproduce
Steps to reproduce the behavior:

call session_cookie::create with a duration more than sixty minutes.

Expected behavior
A duration between five and fourteen days should return successfully.

Maybe it makes sense to have two duration parameters (oauth token 1..60 minutes and cookie duration 1min..14 days) for the create method? I'm not sure if everyone would appreciate if we settle on a fixed time. That could case more traffic, or more latency in certain scenarios. Wdyt?

Two config params would be good if the method is updated to reuse the assertion jwt if already issued and valid.
At the moment the assertion jwt can't be reused as initiated for every call to session::create so two parameters with the current implmentation would have no effect traffic wise from what I can work out.


How could NaCl molecules form triple bond?

As shown in the picture, it seems like Cl and Na ions have formed three bonds which is not correct. What is the correct interpretation?

How did you figure out the number of bonds from this figure?

I think it's just the weird 3d geometry making it hard to tell and not actually triple bonds, but this one is certainly hard to interpret

How did you figure out the number of bonds from this figure?

You can see the central planar atoms. It has 3 bonds in every atoms.

I think it's just the weird 3d geometry making it hard to tell and not actually triple bonds, but this one is certainly hard to interpret

@WildJimmy it seems like an illusion. Something we are missing to interpret this geometry. Maybe we need to see it from different angles.

Yes it is very tricky and the geometry is making it tougher to understand


tests: net: lwm2m: Add tests for lwm2m_engine.c

Add tests for lwm2m_engine.c using FFF framework.

Please don't call those unit tests. Unit tests do not use the regular Zephyr build system, and pull only the unittests component:
find_package(Zephyr COMPONENTS unittest HINTS $ENV{ZEPHYR_BASE})

Feel free to convert your tests into Unit Tests or rename them to "tests" instead. A good example of unit test:
https://github.com/zephyrproject-rtos/zephyr/blob/main/tests/bluetooth/host/keys/bt_keys_add_type

@carlescufi thank you for the comments. I have changed the commit message as suggested.


Possible fixes for the footer view

Let me know if this is what you wanted :grimacing:  @alexszilagyi

@catalinaturlea :+1:  I still need to see why after rotation the footerView gets a wrong frame.


ERROR in cms-demo/src/app/app-routing.module.ts:3:85 - error TS2307: Cannot find module '@angular-cms/core'.

i am getting most of error in @angular-cms/core

HI @priyesh-975 , sorry for late answer.
Could you fork the latest source code and follow these steps to install
https://github.com/angular-cms/angular-cms#how-to-run-in-dev-mode
Thanks


Incorrect error "Published Date cannot currently be in the future"

I'm manually transferring content from my old WordPress then static HTML blog, to a new Ghost blog.
As I transfer each post, I am setting the date in the Ghost meta data panel to when it was originally published. On the left I then get the message "Published Date cannot currently be in the future". Somehow I get Ghost to accept it but it's a bit tricky. There shouldn't be any issues with entering a publish date of the past.

Hi @arangas, thanks for the report. This isn't something we've seen before, and it sounds a bit like some sort of environment issue - you're definitely correct in stating that entering a past published date shouldn't cause any issues. Can you check out our bug report guidelines and update your issue with a description of how we can recreate this problem?
The only thing I can think of without being able to reproduce it right now is that you may have a strange date setting (ie, it's set to a past date) on either your computer or server.

I set up LiceCap to record a demo for you and of course, now I can't repro. (I have rebooted the server since so maybe related.) Thanks for letting me know how to submit a bug report - if this happens again i'll follow these steps!


Renaming repo qiskit-core

Not saying to do now l. Just want to make an issue to remind us and inform the community.
Expected Behavior

Current Behavior

Possible Solution

Steps to Reproduce (for bugs)

Context

Your Environment

Version used:
Environment name and version (e.g. Python 3.6.1):
Operating System and version:

Why not just qiskit?


Fix badge to reflect only develop

This PR fixes the issue with the build badge checking all branches instead of only develop.

Added a table and both badges as requested.

@robcohen I don't see the badges in the UI and I thought that you meant badges for develop and for master.

Now shows "develop" and "master". Master doesn't work I believe because it is a new branch and nothing has been pushed yet, but I assume it will work once a CI pipeline for it is started after a push.


New Package Not Found: Token

Before I have built the script code with @solana/spl-token --version "^0.1.8".
Then I used
import { Token, TOKEN_PROGRAM_ID, AccountLayout, MintLayout, ASSOCIATED_TOKEN_PROGRAM_ID } from "@solana/spl-token";

And now I want to use the version "^0.2.0"
import { @_Token_, TOKEN_PROGRAM_ID, AccountLayout, MintLayout, ASSOCIATED_TOKEN_PROGRAM_ID } from "@solana/spl-token";

This class Token is not allow to access in this version.

Is there a reason to think this is related to Anchor?

Please open this issue in solana or spl-token related place. But I think I can tell you the reason is because Token is depreciated. Do refer to documentation.


Can't run simantha

when trying the example on the Readme.md i get:
Traceback (most recent call last):   File "SingleMachine.py", line 1, in <module>     from simantha import Source, Machine, Sink, System   File "/Users/lucas.garcia/Library/Python/3.8/lib/python/site-packages/simantha/__init__.py", line 1, in <module>     from .System import System   File "/Users/lucas.garcia/Library/Python/3.8/lib/python/site-packages/simantha/System.py", line 9, in <module>     from .Source import Source   File "/Users/lucas.garcia/Library/Python/3.8/lib/python/site-packages/simantha/Source.py", line 3, in <module>     from .Machine import Machine   File "/Users/lucas.garcia/Library/Python/3.8/lib/python/site-packages/simantha/Machine.py", line 266     <<<<<<< HEAD

It should be fixed now. Try uninstalling and reinstalling simantha and see if the example works.


Can only update mounted or unmounted component

Trying to integrate LineProgress from material_UI.
Console logging the percentage works fine, but trying to change the completed state with that same percentage (so it can update the progress bar), it's yelling at me:

Any suggestion of how could i make it work? I'm out of ideas.
PS: The component is not using any ComponentWillMount, ComponentDidMount.
React Component
import download from '../download'

class DownloadGame extends Component {
     constructor(props) {
        super(props)
        this.state = {
            completed: 0,

     progressData(percentage) {
        console.log(percentage)
        this.setState({completed: percentage})
    }

    render() {
        <LinearProgress mode="determinate" value={this.state.completed} />
    }

Node helper file
var DownloadGame = require('../components/downloadGame')

static showProgress(received, total) {
    var downloadGame = new DownloadGame
    var percentage = (received * 100) / total;

    downloadGame.progressData(percentage)

}

This is not related to material-ui.  You're trying to update the state of a component that you created explicitly (using new).  This component is not attached to the React DOM and is therefore not displayed at all.

@azizghuloum  React newbie here, as you might have guessed. I was trying to pass the data from one file to the other somehow. I will look for a different way now that i know what is the problem. Thanks!

@azizghuloum  React newbie here, as you might have guessed. I was trying to pass the data from one file to the other somehow. I will look for a different way now that i know what is the problem. Thanks!

Kinda loosing my mind with this thing :| . Thinking of turning the helper file into an actions file but not sure how that will integrate.
Any better ideas?

I've changed the file into Redux action, api, reducer ... This is what i have, and i'm stuck again.
GamesComponent:

clicking download button triggers GamesAction

GamesAction:

dipatches call to GamesApi

returns a dispatch to the GamesReducer
export function downloadGame(file_url, targetPath, callback) {
return (dispatch) =>
GamesApi.downloadGame(file_url, targetPath, callback)
.then((response) => {
console.log(response)
return dispatch({
type: GAMES_DOWNLOADGAME,
progress: response
})
})
}

GamesApi:

downloads the file

returns a Promise to GamesAction with the progress
static downloadGame(file_url, targetPath, callback) {
return new Promise(function (resolve, reject) {
  var req = request({
    method: 'GET',
    uri: file_url
  });

  var out = fs.createWriteStream(targetPath);
  req.pipe(out);

  req.on('response', function (data) {
    total_bytes = parseInt(data.headers['content-length']);
  });

  req.on('data', function (chunk) {
    received_bytes += chunk.length;

    let progress = (received_bytes * 100) / total_bytes;
    console.log(progress)
    return resolve(progress)
  });

  req.on('end', function () {
    console.log("File succesfully downloaded");
  });
})

}

GamesReducer:

stores the progress to the store, so the component can grab it and display it on page.
case GAMES_DOWNLOADGAME:
return Object.assign({}, state, {
progress: action.progress
})

Result:
Console.log displays the correct data when downloading.
But how could i integrate it to the Component?
What else could i use instead of a promise in order to be able to send something like download progress? 1%, 2%, ....100%
That sounds pretty horrible, but i can't think of a better way. If anyone knows a different way, or any working way, please point me to that direction. Thanks.

This is not related to material-ui.

As rightfully raised by @azizghuloum, this isn't an issue with Material-UI.
StackOverflow is better suited for this kind of support. The issue tracker is for bug reports and feature discussions. See also our CONTRIBUTING guidelines.

@muscaiu Hope you gonna find a solution :).


[Data_handler] Create bash script for running generating migration in one command

Before applying, Read our Contributor Guidelines and README.
Create script for generating migration using one command in bash
Useful link to README.md

alembic command
docker-compose commands

Please, don't forget to run before generating migration upgrade head
Attach screen that running one command will automatically generate migration file
Apply if you have relevant experience with alembic, will not consider contributors who wants to try yourself, attach link to repo where you worked with it

@Supa-mega did you read it?
Apply if you have relevant experience with alembic, will not consider contributors who wants to try yourself, attach link to repo where you worked with it

I would like to take this task, I love orange. Can help to implement bash script with required commands


Is it possible to create knex migration files from existing database?

I already have a database, can knex read and dump the migration files to get me started? Or the only option is to create it by hand? Since it's 50+ tables, I want to avoid that.

Migration system has no idea of your database state before running any migrations, so you can use your current SQL dump for starting point and then start doing future schema changes through migrations on top of that.
So there is no way for example to extract db schema and convert it automatically to knex.schema calls.

I see in https://github.com/niradler/rve-knex-migration, but it's not complete!

Today exist any tool to do this?

Yeah same question now can we do that I am using Objection + Knex in my current project currently all tables were created manually but now I want to create a migration for all the tables so is it possible that knex can generate migrations file from existing db and then I can create more migrations for future db changes.
Or still I need to create all the migrations by my self ?


Send another data with keyword

Hi Sergio,
I want to send the another data from flexdatalist to the jsp file using ajax. how and what option i should use to get the result? below i attacted my sample code
flexdatalist option
$('#'+fieldId).flexdatalist({                 minLength: 1,            searchIn: 'name',                 searchDelay:2000,                       url:urlData,                 cache:true,                                               requestType:"POST",                                                     params:{                                                         data:{hfc_cd:hfcRISCode},                                                         timeout:3000,                                                         success:function(result){                                                             console.log(result);                                                             if(result === undefined){                                                                 $('#'+loadingDivId).html('No Record');                                                             }                                                         },                                                     }                                                  });
jsp file
`  String key = request.getParameter("keyword");
String hfc_cd = request.getParameter("hfc_cd");
String searchProblem = "select ris_procedure_name from ris_procedure_master where CONCAT(UPPER(ris_procedure_name),LOWER(ris_procedure_name)) like '%" +  key + "%' AND hfc_cd = '"+hfc_cd+"' ";
ArrayList<ArrayList> search = Conn.getData(searchProblem); `

Hi,
Use params option to send {hfc_cd:hfcRISCode} and event after:flexdatalist.data to set callback after loading data from remote file.
Sérgio

Hi,
Please check out release v2.0.0, if the bug persists, please, reopen this issue.
Thanks!
Sérgio


KAFKA-18326: fix merge iterator with cache tombstones

See https://issues.apache.org/jira/browse/KAFKA-18326 for more information. The main bug here is that in the old implementation, deleted cache entries would be skipped so long as they didn't equal the next store key, which resulted in potentially skipping tombstones for future keys in the store.

I assume we're going to cherrypick this back to 4.0, but what about earlier? I'm guessing at least 3.9 makes sense as well since some people may not be able to upgrade to 4.0 as a major version

@ableegoldman I imagine there wouldn't be any merge conflicts, so 3.9 definitely makes sense and possibly 3.8 if it isn't too much


Bdkd 441 spark env

Couple of minor naming/configuration changes suggested, but otherwise looks nice and clean. Good work!

"Clusterous" is misspelled in the Client laptop box in the diagram. Otherwise everything looks good.

@balram-ramanathan-sirca Diagram has been updated.


hyprland/workspaces not working anymore since 0.10.0

Since the upgrade to waybar version 0.10.0, the module hyprland/workspaces is not showing up anymore. I am using the following configuration:
    "hyprland/workspaces": {
        "disable-scroll": true,
        "all-outputs": true,
        "on-click": "activate",
	"format": "{name}"
    },

waybar shows no errors when executing in the terminal. On the other hand, hyprland/window still works just fine.

I cannot reproduce your issue. Can you share your full waybar and hyprland configs ?

config-files.tar.gz
@tomben13 see file attached.

for me if i am adding workspaces without any css
  "hyprland/workspaces": {
    "format": "<sub>{icon}</sub>",
    "format-window-separator": "\n",
    "all-ouputs": true,
    "format-icons": {
      "active": " 󰮯 ",
      "default": "󰊠 ",
      "empty": "󰧵 "
    }
  },

and then switch focus between new workspace or monitor it crashes waybar
󰘧 waybar
[2024-03-18 18:54:22.523] [info] Using configuration file /home/niksingh710/.config/waybar/config.jsonc
[2024-03-18 18:54:22.523] [info] Including resource file: ~/.config/waybar/bars/top.jsonc
[2024-03-18 18:54:22.525] [info] Unable to receive desktop appearance: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface “org.freedesktop.portal.Settings” on object at path /org/freedesktop/portal/desktop
[2024-03-18 18:54:22.525] [info] Using CSS file /home/niksingh710/.config/waybar/style.css

(waybar:238188): Gtk-WARNING **: 18:54:22.526: Theme parsing error: style.css:13:13: The 'icon-shadow' property has been renamed to '-gtk-icon-shadow'
[2024-03-18 18:54:22.532] [warning] persistent_workspaces is deprecated. Please change config to use persistent-workspaces.
[2024-03-18 18:54:22.532] [info] Hyprland IPC starting
[2024-03-18 18:54:22.627] [info] Loading persistent workspaces from Waybar config
[2024-03-18 18:54:22.628] [info] Loading persistent workspaces from Hyprland workspace rules
[2024-03-18 18:54:22.814] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
[2024-03-18 18:54:22.844] [info] Bar configured (width: 32, height: 1080) for output: DP-1

** (waybar:238188): CRITICAL **: 18:54:23.683:
unhandled exception (type Glib::Error) in signal handler:
domain: g-dbus-error-quark
code  : 41
what  : GDBus.Error:org.freedesktop.DBus.Error.UnknownObject: Unknown object '/org/freedesktop/login1/session/self'.

[2024-03-18 18:54:24.579] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
[2024-03-18 18:54:24.935] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
[2024-03-18 18:54:26.066] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
[2024-03-18 18:54:26.105] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
[2024-03-18 18:54:26.922] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
[2024-03-18 18:54:27.693] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
[2024-03-18 18:54:28.348] [error] hyprland/workspaces: in Json::Value::resolveReference(key, end): requires objectValue
zsh: segmentation fault (core dumped)  waybar

What versions of Hyprland and Waybar are you using? Does downgrading Waybar fix it for you?

It turns out I was running on an older Hyprland version (0.31 of an unofficial nvidia package). After removing the old one and installing 0.35 via pacman, it is working again.

What versions of Hyprland and Waybar are you using? Does downgrading Waybar fix it for you?

for me the error is in -git version but not in the release version of 0.10

@niksingh710 Have you upgraded to latest git version ? This should have been fixed by #3023

Nop, I reverted to the stable release package.

Nop, I reverted to the stable release package.

Can you test again on the latest git version ?

Nop, I reverted to the stable release package.

Can you test again on the latest git version ?

yep just installed and it is working fine.


Contenthash with MiniCssExtractPlugin does not change even if content has changed

I'm using the contenthash in the filenames to allow long term caching:
https://webpack.js.org/guides/caching/
Unfortunately if the content is changed by the PurgeCss plugin only, for example since I have removed a usage of an class or I'm using a class which hasn't been used before, the contenthash does not change. This leads to old files being served to the users and therefore a breaking app.
The content hash changes as soon as I do an actual modification of the CSS files. My guess would be that the contenthash is calculated to early?
webpack config:
const path = require('path');
const glob = require('glob-all')
const ManifestPlugin = require('webpack-manifest-plugin');
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const CleanWebpackPlugin = require('clean-webpack-plugin'); //installed via npm
const PurgecssPlugin = require('purgecss-webpack-plugin');
const webpack = require('webpack');

// the path(s) that should be cleaned
let pathsToClean = [
    'dist'
];

// the clean options to use
let cleanOptions = {
    root:     '..................../public',
    verbose:  true,
    dry:      false
};

function collectWhitelistPatterns() {
    return [/^pcr-/];
}

module.exports = {

    plugins: [
        new CleanWebpackPlugin(pathsToClean, cleanOptions),
        new ManifestPlugin(),
        new PurgecssPlugin({
            paths: glob.sync(['./src-js/**/*', './templates/**/*'],  { nodir: true }),
            whitelistPatterns: collectWhitelistPatterns,
        }),
        new MiniCssExtractPlugin({
            filename: "[name]-[contenthash].css",
            chunkFilename: "[id]-[contenthash].css"
        }),
        new webpack.ProvidePlugin({
            $: 'jquery',
            jQuery: 'jquery'
        })
    ],

    entry: {
        one: './src-js/index-one.js',
        two: './src-js/index-two.js',
        three: './src-js/index-three.js',
    },

    output: {
        path: path.resolve(__dirname, 'public/dist'),
        filename: dev?'[name]-min.js':'[name]-[contenthash]-min.js',
        publicPath: "/dist/"
    },

    module: {
        rules: [
            {
                test: /\.m?js$/,
                exclude: /(node_modules|bower_components)/,
                use: {
                    loader: 'babel-loader',
                    options: {
                        "presets": [
                            [
                                "@babel/preset-env",
                                {
                                    "useBuiltIns": "entry",
                                    "targets": "> 0.25%, not dead",
                                }
                            ]
                        ],
                        "plugins": ["transform-remove-console"]
                    }
                }
            },
            {
                test: /\.(sa|sc|c)ss$/,
                use: [
                    MiniCssExtractPlugin.loader,
                    'css-loader',
                    'sass-loader',
                ],
            },
            {
                test: /\.(png|svg|jpg|gif)$/,
                use: [
                    'file-loader'
                ]
            }
        ]
    },
    externals: {
        jquery: 'jQuery'
    },
};

Simply adding a comment to a stylesheet seems to be kicking off the re-hashing process. I'm just adding a comment like: /* cache increment = 1000 */
Not the best solution since it would be preferable not to have to think about it.

@arneee I just ran into this same problem today.  Had to purge my Cloudflare cache to get an update to download after nearly an hour of troubleshooting.
My solution was to stop using this Webpack plugin, and move PurgeCSS to my postcss.config.js file instead (via @fullhuman/postcss-purgecss.
/* eslint-env node */
const DEV = process.env.NODE_ENV !== 'production'

class TailwindExtractor {
  static extract(content) {
    return content.match(/[A-z0-9-:\/]+/g) || []
  }
}

module.exports = {
  plugins: [
    require('tailwindcss')('./tailwind.js'),
    DEV
      ? false
      : require('@fullhuman/postcss-purgecss')({
          content: ['./src/**/*.{js,ejs,html}'],
          extractors: [
            {
              extractor: TailwindExtractor,
              // Specify the file extensions to include when scanning for
              // class names.
              extensions: ['html', 'js', 'ejs', 'vue'],
            },
          ],
        }),
    require('autoprefixer'),
  ].filter(Boolean),
}


Add docstrings and docs publishing

Codecov Report
Base: 82.90% // Head: 82.61% // Decreases project coverage by -0.28% :warning:

Coverage data is based on head (a0100f3) compared to base (e2676f9).
Patch coverage: 85.85% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main       #4      +/-   ##
==========================================
- Coverage   82.90%   82.61%   -0.29%
==========================================
  Files           9       10       +1
  Lines        1737     1743       +6
==========================================
  Hits         1440     1440
- Misses        297      303       +6

Flag
Coverage Δ

unittests
82.61% <85.85%> (-0.29%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pydatatask/main.py
41.91% <ø> (ø)

pydatatask/pod_manager.py
83.07% <75.00%> (+2.20%)
:arrow_up:

pydatatask/task.py
83.02% <75.29%> (-0.84%)
:arrow_down:

pydatatask/resource_manager.py
98.24% <83.33%> (+1.75%)
:arrow_up:

pydatatask/session.py
86.20% <88.88%> (-0.89%)
:arrow_down:

pydatatask/repository.py
91.34% <90.42%> (-0.92%)
:arrow_down:

pydatatask/utils.py
90.62% <90.62%> (ø)

pydatatask/pipeline.py
91.35% <90.90%> (ø)

pydatatask/__init__.py
100.00% <100.00%> (ø)

pydatatask/proc_manager.py
86.25% <100.00%> (ø)

... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


A beginner's confusion

I have a question after downloading the code. Which variable corresponds to the proportional parameter of SPT technology in the paper?Is it the "beam_width"?

I'm sorry but I'm not sure what you referred to as SPT. If you are considering "Sampling Perturbation Technology" proposed by Xiaolei Liu et al. in AAAI 2020, it is not implemented in this repository.
This repository corresponds to our paper titled "Robust Audio Adversarial Example for a Physical Attack" in IJCAI 2019, which proposed a method for generating adversarial examples that can attack in the physical world.


Attempt to run X-Decoder demo in google colab

Hi there! The hugging face demo is super cool! Thanks for sharing! :)
Today I tried running inference in google colab.
I installed following your instructions with:
!git clone https://github.com/microsoft/X-Decoder.git
!pip3 install torch==1.13.1 torchvision==0.14.1 --extra-index-url https://download.pytorch.org/whl/cu113
!python -m pip install 'git+https://github.com/MaureenZOU/detectron2-xyz.git'
!pip install git+https://github.com/cocodataset/panopticapi.git
!curl -O https://projects4jw.blob.core.windows.net/x-decoder/release/xdecoder_focalt_last_novg.pt
!python -m pip install -r X-Decoder/requirements.txt

And then ran with:
%cd /content/X-Decoder
!python demo/demo_captioning.py evaluate --conf_files configs/xdecoder/svlp_focalt_lang.yaml  --overrides WEIGHT ../xdecoder_focalt_last_novg.pt

And got the following segmentation fault error:
/content/X-Decoder
$UNUSED$ criterion.empty_weight, Ckpt Shape: torch.Size([134])
/usr/local/lib/python3.8/dist-packages/torchvision/transforms/transforms.py:329: UserWarning: Argument 'interpolation' of type int is deprecated since 0.13 and will be removed in 0.15. Please use InterpolationMode enum.
  warnings.warn(
2023-01-03 10:20:33.905664: I tensorflow/core/platform/cpu_feature_guard.cc:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations:  AVX2 AVX512F FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-01-03 10:20:35.257457: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer.so.7'; dlerror: libnvinfer.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/local/lib/python3.8/dist-packages/cv2/../../lib64:/usr/lib64-nvidia
2023-01-03 10:20:35.257602: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer_plugin.so.7'; dlerror: libnvinfer_plugin.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: /usr/local/lib/python3.8/dist-packages/cv2/../../lib64:/usr/lib64-nvidia
2023-01-03 10:20:35.257631: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properly.
[c639da4ebb3c:07861] *** Process received signal ***
[c639da4ebb3c:07861] Signal: Segmentation fault (11)
[c639da4ebb3c:07861] Signal code: Address not mapped (1)
[c639da4ebb3c:07861] Failing at address: 0x7f282066f20d
[c639da4ebb3c:07861] [ 0] /lib/x86_64-linux-gnu/libpthread.so.0(+0x12980)[0x7f2822f11980]
[c639da4ebb3c:07861] [ 1] /lib/x86_64-linux-gnu/libc.so.6(getenv+0xa5)[0x7f2822b50775]
[c639da4ebb3c:07861] [ 2] /usr/lib/x86_64-linux-gnu/libtcmalloc.so.4(_ZN13TCMallocGuardD1Ev+0x34)[0x7f28233bbe44]
[c639da4ebb3c:07861] [ 3] /lib/x86_64-linux-gnu/libc.so.6(__cxa_finalize+0xf5)[0x7f2822b51605]
[c639da4ebb3c:07861] [ 4] /usr/lib/x86_64-linux-gnu/libtcmalloc.so.4(+0x13cb3)[0x7f28233b9cb3]
[c639da4ebb3c:07861] *** End of error message ***

Do you have any idea what might be going on?

The problem seems to come from tensorflow, as tensorboard is only used in training, feel free to uninstall this package and see if the env problem could be bypass.

@gdmcdonald Could you share a public version of your colab notebook. I too need to use XDecoder for inference

If you want to try inference code, there are two other options than colab notebook:

Directly use the script here: https://github.com/microsoft/X-Decoder/tree/main/demo
Use Hugging Face demo or its source code: https://huggingface.co/spaces/xdecoder/Demo/tree/main

Hey @MaureenZOU
Thank you for the inputs, I'll definitely try option1. Since we are using colab for inference, I was thinking of directly using an existing implementation

I see, feel free to drop any further question

Hey @MaureenZOU
Thank you for the amazing work. I am attaching my colab notebook here in case anyone else has the same idea.
We are planning to run inference on google street view images for our project and use it as an annotation tool. Any advice on the pertained weights or configuration I should use?


V2 - Project Console - Recently signed CCLAs are included in PDF zip file after few minutes

Create CLA Group with CCLA type
Around 5 companies have to sign CLA for the CLA Group
Trigger below endpoint. Observed that in the downloaded zip file recently signed CCLAs are not fetched. If we trigger same endpoint after about 15-20 mins then the CCLAs are fetched
https://api-gw.dev.platform.linuxfoundation.org/cla-service/v4/api-docs#operation/downloadProjectSignatureCCLAs

Based on my memory, the Zip file is re-created, if needed, every 15 minutes.

This is the expected behavior.  Closing this issue.

This is the expected behavior.  Closing this issue.


Synchronisation does not work

Describe the bug
The Synchronisation feature doesn't work on Flipper app version 1.1.1 on Android 10 (Motorola Moto g7) and Flipper firmware version Release 0.59.1.
To Reproduce
Steps to reproduce the behavior:

Enable Bluetooth on the Phone and the Flipper
Open the Flipper app
Pair the Flipper and app if necessary
Wait for the phone to recognise the Flipper

Expected behavior
Synchronisation would begin and complete.
Actual behaviour
Synchronisation is stuck on 0% and the app only displays Firmware Version and Build Date.
Logs
Here are some logs from the Flipper itself (retrieved by running the log command and then attempting to synchronise):
1563764 [I][BtGap]: Pairing complete
1563768 [I][BtSrv]: Open RPC connection
1564753 [I][BtGap]: Rx MTU size: 414
1565112 [I][BtGap]: Connection parameters event complete
1565113 [I][BtGap]: Connection parameters: Connection Interval: 12 (15 ms), Slave Latency: 0, Supervision Timeout: 500
1565115 [W][BtGap]: Unsupported connection interval. Request connection parameters update
1565418 [I][BtGap]: Connection parameters event complete
1565419 [I][BtGap]: Connection parameters: Connection Interval: 36 (45 ms), Slave Latency: 0, Supervision Timeout: 500

Target
Not sure what this means
Additional context
I've tried a switching to the Release Candidate branch and deleting some NFC/Amiibo files on the SD card that were noted to potentially cause issues, but no luck.

I seem to have worked it out:

I updated the app to the latest beta (didn't work by itself)
Restored the Flipper from a backup I took before resetting it prior to the above
Forgot all pairings on the Flipper
Cleared the storage on the App

And it works again. Thanks to the people in the Discord who directed me here, hopefully this can help someone else!


Create kcu.txt

Hello. I am a student majoring in computing in Republic of Korea. I'm attending Soongsil Cyber University. Our university also possible domain? Our domain of school "www.kcu.ac". And my email is<EMAIL_ADDRESS>

Hello. I am a student majoring in telecommunications and in Korea. I'm attending Soongsil Cyber University. Our university also possible domain? Our domain of school "www.kcu.ac"

Hello. I am a student majoring in computing in Republic of Korea. I'm attending Soongsil Cyber University. Our university also possible domain? Our domain of school "www.kcu.ac". And my email is<EMAIL_ADDRESS>

@sorieil we only provide access for educational domains of educational institutions with official status and on-site classrooms. On-line academies are not covered by this program unfortunately. If i missed something on your case please let me know.

That's sad news for me.:( Thank you for answer.


Error with N4

Hi @mattcieslak,
Ran the preprocessing steps and got the following error. It looks like it kept running after the error and wrote all the files except the figures and report.
 Node: qsiprep_wf.single_subject_omega033_wf.dwi_preproc_ses_bline_dir_AP_run_001_wf.hmc_sdc_wf.pre_topup_enhance.n4_correct
Working directory: /data/omega/derivatives/qsiprep-0.6.4/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega033_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/n4_correct

Node inputs:

args = <undefined>
bias_image = <undefined>
bspline_fitting_distance = 150.0
bspline_order = 3
convergence_threshold = 1e-06
copy_header = True
dimension = 3
environ = {'NSLOTS': '1'}
input_image = /data/omega/derivatives/qsiprep-0.6.4/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega033_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/rescale_image/vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz
mask_image = <undefined>
n_iterations = [200, 200]
num_threads = 1
output_image = <undefined>
save_bias = False
shrink_factor = <undefined>
weight_image = /data/omega/derivatives/qsiprep-0.6.4/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega033_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/smooth_mask/vol0000_LPS_TruncateImageIntensity_RescaleImage_mask_FillHoles_MD_G.nii.gz

Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 69, in run_node
    result['result'] = node.run(updatehash=updatehash)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 473, in run
    result = self._run_interface(execute=True)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 557, in _run_interface
    return self._run_command(execute)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 637, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 375, in run
    runtime = self._run_interface(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/ants/segmentation.py", line 438, in _run_interface
    runtime, correct_return_codes)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 758, in _run_interface
    self.raise_exception(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 695, in raise_exception
    ).format(**runtime.dictcopy()))
RuntimeError: Command:
N4BiasFieldCorrection --bspline-fitting [ 150, 3 ] -d 3 --input-image /data/omega/derivatives/qsiprep-0.6.4/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega033_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/rescale_image/vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz --convergence [ 200x200, 1e-06 ] --output vol0000_LPS_TruncateImageIntensity_RescaleImage_corrected.nii.gz --weight-image /data/omega/derivatives/qsiprep-0.6.4/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega033_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/smooth_mask/vol0000_LPS_TruncateImageIntensity_RescaleImage_mask_FillHoles_MD_G.nii.gz
Standard output:

Standard error:

Return code: 1

Problem or no?

This is probably the same problem as #24, which seems to have been accidentally closed. There is an ANTs update that should fix this and will be included in 0.7

Sounds good. I have a few individuals in my dataset (4/33) who had this error, so I will sit tight until 0.7

Could you try version 0.6.6? There is a bugfix and an ANTs upgrade that should solve this problem

Yep, I will start running in about an hour and let you know how it goes.

If there is still trouble, 0.6.6-1 is available now too.

Ran with 0.6.6 yesterday and 2/4 people ran to completion who didn't with 0.6.4. However, one new person now doesn't run. All 3 subjects that didn't complete had the same N4 error as listed above.
I ran those three with 0.6.6-1 and get the following:
Node: qsiprep_wf.single_subject_omega075_wf.dwi_preproc_ses_bline_dir_AP_run_001_wf.hmc_sdc_wf.pre_topup_enhance.n4_correct
Working directory: /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/n4_correct

Node inputs:

args = -v 1
bias_image = <undefined>
bspline_fitting_distance = 150.0
bspline_order = 3
convergence_threshold = 1e-06
copy_header = True
dimension = 3
environ = {'NSLOTS': '1'}
input_image = /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/rescale_image/vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz
mask_image = <undefined>
n_iterations = [200, 200]
num_threads = 1
output_image = <undefined>
save_bias = False
shrink_factor = <undefined>
weight_image = /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/fix_smooth_mask_header/vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz

Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 69, in run_node
    result['result'] = node.run(updatehash=updatehash)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 473, in run
    result = self._run_interface(execute=True)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 557, in _run_interface
    return self._run_command(execute)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 637, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 375, in run
    runtime = self._run_interface(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/ants/segmentation.py", line 438, in _run_interface
    runtime, correct_return_codes)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 758, in _run_interface
    self.raise_exception(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 695, in raise_exception
    ).format(**runtime.dictcopy()))
RuntimeError: Command:
N4BiasFieldCorrection -v 1 --bspline-fitting [ 150, 3 ] -d 3 --input-image /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/rescale_image/vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz --convergence [ 200x200, 1e-06 ] --output vol0000_LPS_TruncateImageIntensity_RescaleImage_corrected.nii.gz --weight-image /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/fix_smooth_mask_header/vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz
Standard output:

Running N4 for 3-dimensional images.

Mask not read.  Using the entire image as the mask.

Original intensity range:  [0, 1000]

***********************************************************
Warning:  Your input image contains nonpositive values
which could cause failure or problematic results.  A
possible workaround would be to:
   1. rescale your image to positive values e.g., [10,100].
   2. run N4 on your rescaled image.
   3. (optional) rescale the N4 output to the original
      intensity range.
***********************************************************

Specified spline distance: 150mm
  original image size:  [102, 102, 54]
  padded image size:  [121, 121, 61]
  number of control points:  [5, 5, 4]

Standard error:
Exception caught:
itk::ExceptionObject (0x14002e0)
Location: "unknown"
File: /tmp/ants/build/staging/include/ITK-5.1/itkImageToImageFilter.hxx
Line: 220
Description: itk::ERROR: N4BiasFieldCorrectionImageFilter(0x13f3390): Inputs do not occupy the same physical space!
InputImage Origin: [-1.2993178e+02, -1.2269873e+02, -2.6256687e+01], InputImageMaskImage Origin: [-1.2993170e+02, -1.2269880e+02, -2.6256687e+01]
        Tolerance: 1.0039216e-05
InputImage Direction: 9.9820748e-01 3.7199102e-08 5.9848421e-02
-3.6611892e-03 9.9812713e-01 6.1064081e-02
-5.9736327e-02 -6.1173744e-02 9.9633797e-01
, InputImageMaskImage Direction: 9.9820742e-01 3.0308547e-05 5.9849351e-02
-3.6914601e-03 9.9812708e-01 6.1063169e-02
-5.9735403e-02 -6.1174643e-02 9.9633797e-01

        Tolerance: 1.0000000e-06

Return code: 1

I'm going to clear everything out and try for a clean run of everyone and see if something got wonky in re-running the participants.

Now everyone throws that error.

I'm having a bit of a hard time localizing this call:
N4BiasFieldCorrection -v 1 --bspline-fitting [ 150, 3 ] -d 3 \
  --input-image /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/rescale_image/vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz \
  --convergence [ 200x200, 1e-06 ] \
  --output vol0000_LPS_TruncateImageIntensity_RescaleImage_corrected.nii.gz \
  --weight-image /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/fix_smooth_mask_header/vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz

I think to fix it once and for all we should do something like:
CopyImageHeaderInformation ref.nii.gz \
  vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz \
  vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz \
  1 1 1 0

CopyImageHeaderInformation ref.nii.gz \
  vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz \
  vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz \
  1 1 1 0

where ref.nii.gz would have to be a single image that is defined once in the script and used consistently for all CopyImageHeaderInformation calls.
The CopyImageHeaderInformation calls in ANTs reduce the incidence of the physical space problem but they don't eliminate it unless you use the same reference image consistently.
If you do
CopyImageHeaderInformation ref.nii.gz A.nii.gz AFixed.nii.gz 1 1 1 0

it does not, unfortunately, guarantee that ref and AFixed have identical header spacing / orientation / origin. It tries to achieve that, but it uses the same ITK libraries that give rise to the precision errors in the first place. However,
CopyImageHeaderInformation ref.nii.gz A.nii.gz AFixed.nii.gz 1 1 1 0
CopyImageHeaderInformation ref.nii.gz B.nii.gz BFixed.nii.gz 1 1 1 0

will result in AFixed and BFixed having the same orientation and origin.

Ok, I will add this to 0.6.6-2. Thanks for your patience @araikes
On Thu, Nov 28, 2019 at 12:19 PM Philip Cook<EMAIL_ADDRESS>wrote:

I'm having a bit of a hard time localizing this call:
N4BiasFieldCorrection -v 1 --bspline-fitting [ 150, 3 ] -d 3
--input-image /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/rescale_image/vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz
--convergence [ 200x200, 1e-06 ]
--output vol0000_LPS_TruncateImageIntensity_RescaleImage_corrected.nii.gz
--weight-image /data/omega/derivatives/qsiprep-0.6.6-1/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega075_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/fix_smooth_mask_header/vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz
I think to fix it once and for all we should do something like:
CopyImageHeaderInformation ref.nii.gz
vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz
vol0000_LPS_TruncateImageIntensity_RescaleImage.nii.gz
1 1 1 0
CopyImageHeaderInformation ref.nii.gz
vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz
vol0000_LPS_TruncateImageIntensity_mask_FillHoles_MD_G_fixhdr.nii.gz
1 1 1 0
where ref.nii.gz would have to be a single image that is defined once in
the script and used consistently for all CopyImageHeaderInformation calls.
The CopyImageHeaderInformation calls in ANTs reduce the incidence of the
physical space problem but they don't eliminate it unless you use the same
reference image consistently.
If you do
CopyImageHeaderInformation ref.nii.gz A.nii.gz AFixed.nii.gz 1 1 1 0
it does not, unfortunately, guarantee that ref and AFixed have identical
header spacing / orientation / origin. It tries to achieve that, but it
uses the same ITK libraries that give rise to the precision errors in the
first place. However,
CopyImageHeaderInformation ref.nii.gz A.nii.gz AFixed.nii.gz 1 1 1 0
CopyImageHeaderInformation ref.nii.gz B.nii.gz BFixed.nii.gz 1 1 1 0
will result in AFixed and BFixed having the same orientation and origin.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/PennBBL/qsiprep/issues/74?email_source=notifications&email_token=AABJQKW7RB2WG7AXHT7NZLTQV74Q5A5CNFSM4JOGCWCKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEFNEZRY#issuecomment-559566023,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABJQKUX763TEFOBCZCR7L3QV74Q5ANCNFSM4JOGCWCA
.

--
Matt

@araikes could you try the unstable tag on dockerhub?

@cookpa does this only happen when itk needs to convert an sform to a qform?

No, it happens any time an image is read. The NIFTI header is used to build a direction cosine matrix + offset. After the initial I/O, it’s just another ITK image as far as the rest of the toolkit is concerned. Then the process  is reversed when you write the output. The writer filters take an ITK image as input and have no knowledge of the original input format on disk.

Testing the unstable tag now @mattcieslak

Thanks. If this doesn't work could you email me directly? I might need to get a copy of a problematic subject to debug this.

Ok...
1 person throwing the original error now completed; 2 still don't and one person who ran to completion on 0.6.4, 0.6.6, and 0.6.61-1 threw an error.
Error message below:
Node: qsiprep_wf.single_subject_omega026_wf.dwi_preproc_ses_bline_dir_AP_run_001_wf.fmap_unwarp_report_wf.dwi_rpt
Working directory: /data/omega/derivatives/qsiprep-unstable/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega026_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/fmap_unwarp_report_wf/dwi_rpt

Node inputs:

after = /data/omega/derivatives/qsiprep-unstable/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega026_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/lps_b0_enhance/sharpen_image/average_TruncateImageIntensity_RescaleImage_corrected_Sharpen.nii
before = /data/omega/derivatives/qsiprep-unstable/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega026_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/hmc_sdc_wf/pre_topup_enhance/sharpen_image/vol0000_LPS_TruncateImageIntensity_RescaleImage_corrected_Sharpen.nii.gz
compress_report = auto
out_report = report.svg
wm_seg = /data/omega/derivatives/qsiprep-unstable/baseline_2mm-iso_dedicated-fmap/scratch/qsiprep_wf/single_subject_omega026_wf/dwi_preproc_ses_bline_dir_AP_run_001_wf/fmap_unwarp_report_wf/map_seg/highres001_BrainExtractionBrain_trans_seg_trans_wm.nii.gz

Traceback (most recent call last):
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/plugins/multiproc.py", line 69, in run_node
    result['result'] = node.run(updatehash=updatehash)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 473, in run
    result = self._run_interface(execute=True)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 557, in _run_interface
    return self._run_command(execute)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/pipeline/engine/nodes.py", line 637, in _run_command
    result = self._interface.run(cwd=outdir)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/base/core.py", line 376, in run
    runtime = self._post_run_hook(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/qsiprep/niworkflows/interfaces/registration.py", line 312, in _post_run_hook
    return super(SimpleBeforeAfterRPT, self)._post_run_hook(runtime)
  File "/usr/local/miniconda/lib/python3.7/site-packages/nipype/interfaces/mixins/reporting.py", line 47, in _post_run_hook
    self._generate_report()
  File "/usr/local/miniconda/lib/python3.7/site-packages/qsiprep/niworkflows/interfaces/report_base.py", line 59, in _generate_report
    cuts = cuts_from_bbox(contour_nii, cuts=n_cuts)
  File "/usr/local/miniconda/lib/python3.7/site-packages/qsiprep/niworkflows/viz/utils.py", line 204, in cuts_from_bbox
    start_coords = B.min(0)
  File "/usr/local/miniconda/lib/python3.7/site-packages/numpy/core/_methods.py", line 32, in _amin
    return umr_minimum(a, axis, None, out, keepdims, initial)
ValueError: zero-size array to reduction operation minimum which has no identity

I was looking through some of the outputs for the ones that did not complete and found that the *_preproc_T1w.nii.gz images are weird. All three of them look like the image below. There were also 3 individuals that did run to completion that had very similar T1s.
.
If you'd like a sample participant, I can definitely send one. Just let me know what email address.

Can you email me at matthew.cieslak at pennmedicine.upenn.edu? I will send a box link

Sent from<EMAIL_ADDRESS>


nixos/redis: add redis group

Motivation for this change
Things done

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

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

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

Related to https://github.com/NixOS/nixpkgs/issues/55370

In particular this allows to have a redis group that has access to redis unix socket.


⚠ SceneTime has degraded performance

In 3a68aeb, SceneTime ($ST) experienced degraded performance:

HTTP code: 200
Response time: 1725 ms

Resolved: SceneTime performance has improved in f0317be after 6 minutes.


missing c3c test on build-commands page

https://c3-lang.org/build-your-project/build-commands/ is missing c3c test

Will address in PR


RuntimeError: index 3 is out of bounds for dimension 1 with size 2

@yiheng-wang-nv I am trying to optimize the following notebook of 3D Unet segmentation on my dataset (3D images CT images with their labels). https://github.com/Project-MONAI/tutorials/blob/master/3d_segmentation/spleen_segmentation_3d.ipynb
Here is a link for my notebook:
https://github.com/HripsimeS/Computer-Vision/blob/main/3DUnet_CTPelvic1K.ipynb
I tried to run the training on both CPU and CUDA, in both cases I got exactly the same description of error line by line. Just the finial sentence is different.
For the running on CPU
RuntimeError: index 3 is out of bounds for dimension 1 with size 2
For the running on GPU
RuntimeError: CUDA error: device-side assert triggered
Do you have any ideas what is going on and how to fix this error? Thanks a lot in advance!

Hi @HripsimeS , this ticket is duplicate thus can we discuss within #578 ? Let me close this ticket.


Pin kubevirtci client to a specific version

In order to allow updating clients and images without interrupting
anyone, use shas for pulling the client and the images.
Signed-off-by: Roman Mohr<EMAIL_ADDRESS>

There will come some updates for rmohr/cli and the vm images. Therefore lets make the version expclicit to not run into strange side-effects.


Feature: Release 0.3.0

Codecov Report

Merging #23 (77c420b) into main (5114ed1) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head 77c420b differs from pull request most recent head 75fe101. Consider uploading reports for the commit 75fe101 to get more accurate results

@@           Coverage Diff           @@
##             main      #23   +/-   ##
=======================================
  Coverage   93.62%   93.62%
=======================================
  Files          12       12
  Lines         204      204
=======================================
  Hits          191      191
  Misses         13       13

Continue to review full report at Codecov.

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


Why isn't selective_scan implemented in Triton?

Reading Section D of the paper:
1. We read in 𝑂(𝐵𝐿𝐷 + 𝐷𝑁) bytes of memory (∆, A, B, C) from slow HBM to fast SRAM.
2. We discretize to produce A, B of size (𝐵, 𝐿, 𝐷, 𝑁) in SRAM.
3. We perform a parallel associative scan, yielding intermediate states of size (𝐵, 𝐿, 𝐷, 𝑁) in SRAM.
4. We multiply and sum with C, producing outputs of size (𝐵, 𝐿, 𝐷) and write it to HBM

I am trying to understand why the selective_scan wasn't implemented in Triton? or where the performance benefit comes from implementing this in CUDA C++ for kernel fusion, parallel scan, & recomputation.
I ask because I'm working on my own implementation of the Mamba Mixer in JAX, and wondering if I can get away with implementing the kernels in Pallas

Triton does have associative scan, but (1) it only supports scan with 1 float instead of a pair of floats, which is what we need (2) it doesn't have reverse scan yet (needed for the backward pass).
Does Pallas have those?
When Triton has more robust support for scan, it would be simpler to write it in Triton.

Ideally it would be nice to be truly hardware agnostic, in the spirit of the Mamba mission statement. Tying the architecture to CUDA may not be the best way.


Pistols get harmless after using DOZY

In develop branch (03/ January / 2024) when I use DOZY, the pistols stops causing damage to enemies. . Even if I go to the title menu and back to the level. The only way to restore the pistols damage is closing the game and opening again. This do not happens with the other weapons, only with the pistols.

Can't reproduce, need precise steps to reproduce it and test level.

Can't reproduce bug anymore. I guess it was quietly fixed at some point.
Closing issue.


⚠ Minecraft has degraded performance

In 6bfe7c7, Minecraft (https://www.minecraft.net) experienced degraded performance:

HTTP code: 200
Response time: 797 ms

Resolved: Minecraft performance has improved in 85950ac.


Update flake.lock

nix build is informing, that the expected hash does not match the received one. Therefore I've updated it inside the lock file. Now it's the same php-active hash from the root flake.lock file of this repository.
This PR

[x]
[ ]
[ ]

Follows #.
Related to #.
Fixes #.

I think I will have to remove support for active versions, I have some related issues like that.
Thanks for reporting it, I'll look at it tonight.


KAFKA-2880: consumer should handle disconnect/timeout for metadata requests

@ewencp, @guozhangwang: ping for review.

@hachikuji Please feel free to close https://issues.apache.org/jira/browse/KAFKA-2911.

@guozhangwang Ping for another review.

LGTM. Merged to trunk and 0.9.0.


Don't enforce inclusion of 'owning group' when creating a dataset on datasets-endpoint

User Story

So that I don't have to enter information that isn't yet required, as a Data Maintainer, I don't want to enter 'owning group' information when creating a dataset.
Note: this function may be reitroduced when needed, see story #515

Acceptance Criteria

[x] Given an authorized data maintainer is requesting to create a dataset, when they don't specify an 'owning group', then there is no error and the dataset is created successfully
[x] Given a data maintainer is reading the confluence user guide or Github USAGE.md, it is clear that they don't have to enter an owning group

Additional context

Tasks

[x] Remove owning group parameter from dataset creation endpoint
[x] Cascade the above to filtering datasets and, removing DB fields, etc.
[x] Remove references to owning group in documentation

Definition of Ready

[x] This story is ready to work on, according to the team's definition

Definition of Done

[ ] This story is done, according to the team's definition

Do we need to consider how we might back capture this information later if we decide we need it in a later release of the Data Lake?

Do we need to consider how we might back capture this information later if we decide we need it in a later release of the Data Lake?

Not really. If we need it, we'll find a way to add it.


Accept carrierwave 1.0.0.beta as dependency

I ran the specs with carrierwave 1.0.0.beta and it's all green.

Thanks for this.


Seeing some weirdness in composer

With the latest release of json-api (v0.7.0), installing limoncello is giving a strange error
- neomerx/limoncello v0.5.1 requires neomerx/json-api ~0.6.0 -> no matching package found.

Hmm... It references only 0.6.x Are you using limoncello 0.5.1? Not dev branch or something like that?
  "require": {
    "php": ">=5.5.0",
    "symfony/http-kernel": "~2.6.7|~2.7.0|~2.8.0|~3.0.0",
    "neomerx/json-api": "~0.6.0"
  },

Aha, you are trying to use current limoncello with json-api 0.7.0, right?

@mmucklo I haven't received any feedback from you so I can only guess. I think you tried to switch limoncello to 0.7.0 in composer.json. Those versions have are incompatible. I'm working on new version of limoncello and limoncello-shot (latest lumen) which use json-api 0.7.0
I'm closing the issue. If you feel it's still exist please let me know.


[BUG] Upsnap not fetching devices

Describe the bug
Upsnap won't scan devices, it's running as a container in portainer, not sure if that's the issue but when I attach to the console and run nmap -sn <IP_ADDRESS>/24 it gets the devices.
If I have to, I can run it as a stack
To Reproduce

Try to scan for devices on <IP_ADDRESS>/24

Expected behavior
It should show the results
Screenshots

Host OS (and version)
Debian 5.10.179-1
Host Architecture
amd64

Cloud you try it with the exact command as in the code?
So basically nmap -sn -oX - <IP_ADDRESS>/24 --host-timeout 500ms
Maybe the timeout is too low.

Works perfectly with that command

Same problem here, I'm running the container through Portainer, the Network scan does not work, despite the container is running as root user, and when running the command nmap -sn -oX - X.X.X.X/24 --host-timeout 500ms or nmap X.X.X.X/24 inside the container it works perfectly.

I have fixed the problem by using the network host and not a portainer network.
after that that just access the app using the ip address of your portainer host X.X.X.X:8090.
Here is my docker-compose.yml
it is similar to this one https://github.com/seriousm4x/UpSnap/blob/master/docker-compose.yml
version: "3"
services:
  upsnap:
    container_name: upsnap
    image: ghcr.io/seriousm4x/upsnap:4
    network_mode: host
    restart: unless-stopped
    volumes:
      - /home/upsnap/data:/app/pb_data
    environment:
      - TZ=Europe/Berlin # Set container timezone for cron schedules
      - UPSNAP_INTERVAL=@every 1h # Sets the interval in which the devices are pinged

Yes, host network is mandatory! The magic packet can only be sent successfully if the container is part of the same network.
Other projects do the same thing:

https://hub.docker.com/r/ex0nuss/remote-wake-sleep-on-lan-docker
https://github.com/sameerdhoot/wolweb/blob/main/docker-compose.yml

Cloud you try it with the exact command as in the code? So basically nmap -sn -oX - <IP_ADDRESS>/24 --host-timeout 500ms Maybe the timeout is too low.

The timeout is too low for my newtork, it seems. If I run that command from inside the container, I get no results. If I change to to 5000ms, I get the results. Could this maybe be an environment variable for the docker container?

The timeout is too low for my newtork, it seems. If I run that command from inside the container, I get no results. If I change to to 5000ms, I get the results. Could this maybe be an environment variable for the docker container?

You can now use UPSNAP_SCAN_TIMEOUT as environment variable. It defaults to 500ms if not set.
Set it to 5000ms.

Thanks!


Timeline plugin: display more tick marks as user zooms in closely

Thanks for making wavesurfer.js and releasing it under a permissive license.
I'm using wavesurfer.js to display short audio files in a use case where we're zooming in pretty far to see what-sounds-happened-when. But the timeline plugin only does tick marks to 1 second granularity. For my use case, it would be nicer to have on-screen tick marks at 1/5 second, 1/20 second, and 1/100 second if a user zooms in really far than have off-screen ticks every 1 second.
Have confirmed this in github master as of 2018-09-06.
The patch is pretty simple:
index 7da162a..b2a90f1 100644
--- a/example/zoom/index.html
+++ b/example/zoom/index.html
@@ -56,7 +56,7 @@

-                          <input data-action="zoom" type="range" min="1" max="200" value="0" style="width: 100%" />
+                          <input data-action="zoom" type="range" min="1" max="2000" value="0" style="width: 100%" />

diff --git a/src/plugin/timeline.js b/src/plugin/timeline.js
index 3cea412..bf70ca6 100644
--- a/src/plugin/timeline.js
+++ b/src/plugin/timeline.js
@@ -133,18 +133,38 @@ export default class TimelinePlugin {
                 formatTimeCallback(seconds) {
-                    if (seconds / 60 > 1) {
-                        // calculate minutes and seconds from seconds count
-                        const minutes = parseInt(seconds / 60, 10);
-                        seconds = parseInt(seconds % 60, 10);
-                        // fill up seconds with zeroes
-                        seconds = seconds < 10 ? '0' + seconds : seconds;
-                        return `${minutes}:${seconds}`;
+                    seconds = Number(seconds);
+                    var minutes = Math.floor(seconds / 60);
+                    seconds = seconds % 60;
+
+                    var pxPerSec = ws.params.minPxPerSec;
+                    // fill up seconds with zeroes
+                    var secondsStr = seconds.toFixed(0);
+                    if (pxPerSec >= 25 * 100) {
+                        secondsStr = seconds.toFixed(3);
+                    } else if (pxPerSec >= 25 * 10) {
+                        secondsStr = seconds.toFixed(2);
+                    } else if (pxPerSec >= 25 * 1) {
+                        secondsStr = seconds.toFixed(1);
                     }
-                    return Math.round(seconds * 1000) / 1000;
+
+                    if (minutes > 0) {
+                        if (seconds < 10) {
+                            secondsStr = '0' + secondsStr;
+                        }
+                        return `${minutes}:${secondsStr}`;
+                    }
+                    // return Math.round(seconds * 1000) / 1000;
+                    return secondsStr;
                 },
                 timeInterval(pxPerSec) {
-                    if (pxPerSec >= 25) {
+                    if (pxPerSec >= 25 * 60) {
+                        return 0.01;
+                    } else if (pxPerSec >= 25 * 20) {
+                        return 0.05;
+                    } else if (pxPerSec >= 25 * 5) {
+                        return 0.1;
+                    } else if (pxPerSec >= 25) {
                         return 1;
                     } else if (pxPerSec * 5 >= 25) {
                         return 5;

thanks for the report @rareitmeyer-kl. Can you turn this into a new option for the timeline plugin instead and make a pull request?

OK, in working on it more I realized that part of my problem was that it wasn't clear what could be done in the existing functionality. So added example.
See PR at https://github.com/katspaugh/wavesurfer.js/pull/1458 for more details.


Fix julia build by checking lengh of uri string before accessing first element

This addresses #247
I believe we can always count on uri being a string and the len function being well defined for the type, but that is one vulnerability with this attempted fix.

@arnavs this should resolve your issue for Julia compilation. Thanks @sglyon


perlPackages.ExtUtilsPkgConfig is broken on master

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

nix-build -A perlPackages.ExtUtilsPkgConfig

This is a bit annoying, as perlPackages.ExtUtilsPkgConfig -> rxvt-unicode-plugins.bidi -> rxvt-unicode.

Uhm, It looks like it's also a problem for i3 users.
I'm not a perl programmer so I don't think I can do much to fix the package.
For rxvt-unicode, you can temporarily remove bidi from your plugins, see the manual.

Looks like some tests are failing for perlPackages.ExtUtilsPkgConfig. Temporary workaround is to turn off tests for the package.

It is expecting test_glib-2.0.pc in PKG_CONFIG_PATH, but glib doesn't seem to provide it, so I have no idea what should provide it...

Bisecting showed this to be broken by c71ab32a678a98ce1ec069956bc55d6ea606f55c.
@Ericson2314, can you take a look?

Looking


Inconsistencies in flag names for src and out_dir

When i do a scan -h :

Wrapper for various static analysis tools

optional arguments:
  -h, --help            show this help message and exit
  --src SRC_DIR         Source directory
  --out_dir REPORTS_DIR
                        Reports directory
  --type SCAN_TYPE      Override project type if auto-detection is incorrect.
                        Comma separated values for multiple types. Eg:
                        python,bash,credscan
  --convert             Convert results to sarif json format
  --no-error            Continue on error to prevent build from breaking
  --local-only          Do not enable cloud based scanning even for inspect
                        users
  --mode SCAN_MODE      Scan mode to use ci, ide, pr, release, deploy

Note that while most flags are using -, only out_dir flag is using _. Also the src (which needs to be a directory doesn't have a dir suffix while the out_dir has the dir suffix.
This is a silly UX issue but still noticeable when setting up as a beginner.

I think this is a good observation. I kept --src generic so that we can support repo url and other sources in the future. The --out_dir flag was due to a side effect - to be compatible with a predecessor of scan which was used in some enterprises.

I have now added -i and -o alias for these two parameters. Let me know what you think?

Sounds good @prabhu  :+1:

Thank you. Marking this as closed.