Discrepancy between gam audit login and actual audit login reports

Full steps to reproduce the issue:

User suspended via google for suspicious activity
Find event report in Audit > Login
gam report login event <known-event-type> start <start-date> end <end-date> user <user>

Expected outcome: Trying to programmatically fetch user suspensions so that they can be handled in real-time.
In this test case, the event thrown was account_disabled_hijacked - https://developers.google.com/admin-sdk/reports/v1/appendix/activity/login#account_disabled_hijacked - actual log verbiage corresponding to event name Account <account> disabled because Google has detected a suspicious activity indicating it might have been compromised
Actual outcome: gam reports no instances of the event, whereas google's login audit does. I allowed for roughly 5 hours between the event and when I tried to poll, however, even 1 hour time delay makes this fairly impractical, as we have additional processes that need to happen when Google suspends a user.

What is the actual command that you entered: you can use<EMAIL_ADDRESS>for the email address.
This isn't valid: gam report login event start end user
Ross
On Fri, Oct 11, 2019 at 1:27 PM Chris Deaton<EMAIL_ADDRESS>wrote:

Full steps to reproduce the issue:

User suspended via google for suspicious activity
Find event report in Audit > Login
`gam report login event start end user

Expected outcome (what are you trying to do?): Trying to programmatically
fetch user suspensions so that they can be handled in real-time.
In this test case, the event thrown was account_disabled_hijacked -
https://developers.google.com/admin-sdk/reports/v1/appendix/activity/login#account_disabled_hijacked

actual log verbiage corresponding to event name Account
disabled because Google has detected a suspicious activity indicating it
might have been compromised

Actual outcome (what errors or bad behavior do you see instead?): gam
reports no instances of the event, whereas google's login audit does. I
allowed for roughly 5 hours between the event and when I tried to poll,
however, even 1 hour time delay makes this fairly impractical, as we have
additional processes that need to happen when Google suspends a user.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jay0lee/GAM/issues/1028?email_source=notifications&email_token=ACCTYLYEKAA2ODAPJKP2SY3QODOTBA5CNFSM4I77ACIKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HRJTTBQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACCTYL4FSTFRK6KF3XBON53QODOTBANCNFSM4I77ACIA
.

--
Ross Scroggs
<EMAIL_ADDRESS>

Sure, sorry
gam report login event account_disabled_generic user<EMAIL_ADDRESS>

Additional information - I did a direct pull from the Reports API (and the PHP client), and confirmed that the API itself is returning the data:
Logins:
2019-10-11T15:54:53.374Z:  (account_disabled_hijacked)
2019-10-04T14:03:47.190Z:  (account_disabled_hijacked)
...

Yes but GAM isn't seeing that entry because you were looking
for account_disabled_generic...
On Sat, Oct 12, 2019, 10:12 AM Chris Deaton<EMAIL_ADDRESS>wrote:

Additional information - I did a direct pull from the Reports API (and the PHP
client https://github.com/googleapis/google-api-php-client), and
confirmed that the API itself is returning the data:
Logins:
2019-10-11T15:54:53.374Z:  (account_disabled_hijacked)
2019-10-04T14:03:47.190Z:  (account_disabled_hijacked)
...
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/jay0lee/GAM/issues/1028?email_source=notifications&email_token=ABDIZMGN74E2BGQCQFVZBGLQOHLORA5CNFSM4I77ACIKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBCAJ4Y#issuecomment-541328627,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABDIZMBBXFJBAEDD4D5XGSDQOHLORANCNFSM4I77ACIA
.

Yes but GAM isn't seeing that entry because you were looking for account_disabled_generic...
…
On Sat, Oct 12, 2019, 10:12 AM Chris Deaton @.***> wrote: Additional information - I did a direct pull from the Reports API (and the PHP client https://github.com/googleapis/google-api-php-client), and confirmed that the API itself is returning the data: Logins: 2019-10-11T15:54:53.374Z: (account_disabled_hijacked) 2019-10-04T14:03:47.190Z: (account_disabled_hijacked) ... — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#1028?email_source=notifications&email_token=ABDIZMGN74E2BGQCQFVZBGLQOHLORA5CNFSM4I77ACIKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBCAJ4Y#issuecomment-541328627>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABDIZMBBXFJBAEDD4D5XGSDQOHLORANCNFSM4I77ACIA .

To be clear, I've tried both events (generic and hijacked). Both return 0 results.
unity% gam report login event account_disabled_hijacked start 2019-10-11T00:00:00.000Z end 2019-10-11T11:59:59.999Z
Got 0 items
unity% gam report login event account_disabled_generic start 2019-10-11T00:00:00.000Z end 2019-10-11T11:59:59.999Z
Got 0 items

Chris,
Here are the events from the console:

2019-10-11T15:54:53.374Z: (account_disabled_hijacked)
2019-10-04T14:03:47.190Z: (account_disabled_hijacked)

Here is your query:
gam report login event account_disabled_hijacked start 2019-10-11T00:00:00.000Z end 2019-10-11T11:59:59.999Z
Note that your query end 2019-10-11T11:59:59.999Z is before the event 2019-10-11T15:54:53.374Z, i believe you want 23:59:59 not 11:59:59
gam report login event account_disabled_hijacked start 2019-10-11T00:00:00.000Z end 2019-10-11T23:59:59.999Z
Ross
<EMAIL_ADDRESS>
On Oct 12, 2019, at 7:48 AM, Chris Deaton<EMAIL_ADDRESS>wrote:
Yes but GAM isn't seeing that entry because you were looking for account_disabled_generic...
… x-msg://13/#
On Sat, Oct 12, 2019, 10:12 AM Chris Deaton @.***> wrote: Additional information - I did a direct pull from the Reports API (and the PHP client https://github.com/googleapis/google-api-php-client https://github.com/googleapis/google-api-php-client), and confirmed that the API itself is returning the data: Logins: 2019-10-11T15:54:53.374Z: (account_disabled_hijacked) 2019-10-04T14:03:47.190Z: (account_disabled_hijacked) ... — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#1028 https://github.com/jay0lee/GAM/issues/1028?email_source=notifications&email_token=ABDIZMGN74E2BGQCQFVZBGLQOHLORA5CNFSM4I77ACIKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBCAJ4Y#issuecomment-541328627>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABDIZMBBXFJBAEDD4D5XGSDQOHLORANCNFSM4I77ACIA https://github.com/notifications/unsubscribe-auth/ABDIZMBBXFJBAEDD4D5XGSDQOHLORANCNFSM4I77ACIA .
To be clear, I've tried both events (generic and hijacked). Both return 0 results.
unity% gam report login event account_disabled_hijacked start 2019-10-11T00:00:00.000Z end 2019-10-11T11:59:59.999Z
Got 0 items
unity% gam report login event account_disabled_generic start 2019-10-11T00:00:00.000Z end 2019-10-11T11:59:59.999Z
Got 0 items
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub https://github.com/jay0lee/GAM/issues/1028?email_source=notifications&email_token=ACCTYL4MQJDI6EAXGX63OJTQOHPTBA5CNFSM4I77ACIKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBCBACQ#issuecomment-541331466, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACCTYLYMFWEVHH7UTARG2GLQOHPTBANCNFSM4I77ACIA.

Yep, that was it. Sigh. Thanks Ross!


The dma-stm32 driver don't build for STM32F0 MCUs

Here is the error message when building the dma-stm32 driver for a STM32F0 MCU:
drivers/dma/dma_stm32.c: In function 'dma_stm32_configure':
drivers/dma/dma_stm32.c:470:16: error: 'LL_DMA_InitTypeDef' {aka 'struct <anonymous>'} has no member named 'PeriphRequest'
  DMA_InitStruct.PeriphRequest = config->dma_slot;
                ^

I encountered this issue when building a Zephyr application for a nucleo_f070rb board with SPI_STM32_DMA enabled.

Looking at #34972, I think it is not related.

I guess FRASTM meat to refer to #34666, which omits the assignment of DMA_InitStruct.PeriphRequest for series that are compatible to st_stm32_dma_v2bis.


Standardize HTTP header casing

There are several instances throughout this project where HTTP headers are set in an inconsistent case.
For example, here's a place where Cache-Control is set lowercase. Here's a place where it's not.
These inconsistencies should be addressed. My suggestion is to set them per their casing as presented on MDN.
Cache-Control instead of cache-control, ETag instead of etag, etc.

This is a very old issue so I'm going to close it for now. If you're still running into problems feel free to comment with more details and we can investigate further.

Hi @penalosa, I have re-checked the issue and it still applies. Header casing is still inconsistent in the code, so please leave this open.

Hi @EatonZ,
As per https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers HTTP headers names are case-insensitive and should be compared in a case-insensitive manner. From my understanding, and unless I'm missing something, the casing inconsistencies you mention are not actually breaking any behaviour (something you too confirm in https://github.com/cloudflare/kv-asset-handler/pull/94#issuecomment-626787621), but are rather merely naming inconsistencies across our code base.
Unless there is a very strong reason to change the casing that I might be overlooking (in which case I would like to ask you to please elaborate on what those reasons are), I am closing the issue.


CommandSets are not picking up the selected rows from the event when the user scrolls down the page and it content re-renders

BUG: first reported in two tenants yesterday
Category

[ X] Bug

Description
When scolling down a long list and selecting an item, the CommandSet is not picking up the selected rows from the event. It is intermittent but can be replicated after a few attempts.
event.selectedRows.length is returning 0 despite rows being selected.
Seems to be a problem as you scroll down the list and items load dynamically. Worked fine for months until this week and confirmed on twitter by other developers.
To Replicate:
Follow the guide here to create a commandset: https://docs.microsoft.com/en-us/sharepoint/dev/spfx/extensions/get-started/building-simple-cmdset-with-dialog-api
Before this line:
switch (event.itemId) {
Add this line
alert(event.selectedRows.length)
When running it from the top of the page you will get an alert with the number of rows. When scolling down the page, you will only get 0 returned.

@patmill To make you aware of this issue 👍

More tenants are also having this issue:
https://twitter.com/Tonyp543212003/status/1149601933398663171

Got it, thanks.  I'll forward this to the relevant team.

I have a customer facing this issue as of this week, and I have been able to reproduce the problem in my test tenant by doing the following:

Deploy a basic command set to test against
Create a simple list with 3+ multi-line text columns
Create 31+ (min) items in the list,  copy some large text paragraph into every item

I found with only 2-3 columns with no data the problem does not occur

Now scroll to the 31st or later item, and in my case in two environments event.selectedRows.length is zero consistently in onListViewUpdated(event: IListViewCommandSetListViewUpdatedParameters)

Hope that helps,

Great tip @martinlaukkanen, that workaround helped for our tenants too. This isn't ideal though, as some point we will hit the 5000 item limit of a view.
It is hard to replicate (sometimes it works and others it doesn't so Microsoft closed my support case) but I hope a MS developer sees this and fixes the problem.

Hi @CloudDesignBox - we've had a dev digging into this alongside the updated list logic rollout.  They are unable to reproduce this with the changes pushed through the service in the past month or two.  Can you see if the problem is still reproducible on your side?  Thanks.

@patmill I don't seem to be able to replicate this. It was intermittent before but the workaround was to set the view item limit to 4999 so that it didnt load on demand. I've tried this on 30 items in the view and scrolling down, didnt get the error this time. Thanks for looking.


[Server] Registry: Support ability to delete all models by Registrant

Current Behavior
In cases, like the Meshery Playground, where long-lived Meshery Servers connect to the same or similar K8s cluster, the Registry can become bloated with duplicates.

Desired Behavior

Users of Meshery UI are able to invoke deletion of all models for a given registrant.

Implementation

Enhance registry API
Enhance Meshery UI
Optional: Enhance mesheryctl registry

Acceptance Tests

Users of Meshery UI are able to invoke deletion of all models for a given registrant.
Nice-to-have: Users of Meshery UI are able to invoke deletion of all models for a collection of registrants.
All models, components, and relationships of a given Registrant are deleted from Meshery Database.

Contributor Guides and Handbook

🛠 Meshery Build & Release Strategy
📚 Instructions for contributing to documentation

Meshery documentation site and source

🎨 Wireframes and designs for Meshery UI in Figma
🙋🏾🙋🏼 Questions: Discussion Forum and Community Slack

@leecalcote can I work on this?


Adds phpMyAdmin to MySql component

This adds the phpMyAdmin container image when WithPhpMyAdmin is used on a MySql container.  Address #1936
Why not adminer?
Adminer doesn't support very well multiple host configurations nor the docker internal host names very well in my testing.
Single MySqlInstance (automatic login):

Multiple instances (would show a drop-down in phpMyAdmin and then would have to login)

Microsoft Reviewers: Open in CodeFlow

This is looking pretty good. One of the things that I wanted to do for Postgres but didn't get to in P3 was make it so that if you do WithPgAdmin(...) on one resource, but not the other, you don't get the server registered in the PG admin container. This code has the same issue but I wouldn't block it for that.


Deal with all the warnings when compiling Arabiki on Linux

They aren't a problem, but should definitely be cleaned up. This is what you get for only testing on Windows :weary:

Fixed in 88e1aac.


[json] option to format code with leading commas

Can we get an option in VS Code to have it format all lists by using leading commas instead of trailing commas?
This would so much simplify editing code and it would also greatly simplify the IDE's automatic code completion (e.g. the VS Code Settings editor).
With the suggested option set to true, comma separated lists would proposedly be formatted like this:
{ "workbench.iconTheme": "vs-seti"
, "editor.lineNumbers": "off"
, "editor.tabSize": 2
, "editor.insertSpaces": false
, "editor.autoClosingBrackets": false
}

Function calls using line wrapping for their arguments would look like this:
call( 1
    , "test"
    , new Console()
    );

a nested sample would look like this:
{ "version": "0.2.0"
, "configurations":
  [ { "type": "node"
    , "request": "launch"
    , "name": "Programm starten"
    , "program": "${file}"
    }
  , { "type": "node"
    , "request": "attach"
    , "name": "An den Port anfügen"
    , "address": "localhost"
    , "port": 5858
    }
  ]
}

This formatting style would result in much cleaner, tidier code.

Moreover, adding a new property to an object would be a snap:
Either copy/paste from an existing property (=> no more syntax errors due to redundant trailing commas, see screenshot below):

...  or create a new property and you might immediately get IntelliSense right after typing the leading comma of the property to create.

The suggested formatting style is applicable to all languages
E.g. T-SQL:
CREATE TABLE
  ( id INT PRIMARY KEY IDENTITY
  , name NVARCHAR(100) NOT NULL UNIQUE CHECK(LEN(name) > 0)
  , created DATETIME NOT NULL DEFAULT(GETDATE())
  , updated DATETIME NOT NULL DEFAULT(GETDATE())
  )

@aeschli I'd like to help out with this, if no one's working on it.

@aeschli :
Thanks for taking the time! 👍
Yet, my suggestion is not only dealing with JSON, but with all C-style languages. (See the function call example and the T-SQL example I gave above).

@SetTrend Every language has a different formatter, and very few shared the implementation. IMO sharing formatter settings is not realistic, there are too many subtle differences between languages.

@maneesht The JSON formatter implementation is in https://github.com/Microsoft/vscode-json-languageservice/blob/master/src/services/jsonFormatter.ts.
You'll also find test cases there.
Pull requests are highly welcome, please create them in the https://github.com/Microsoft/vscode-json-languageservice repository.

@aeschli I understand. Thanks for enlightening me.
I'm not sure about the current VS Code implementation, yet (I can only speak for myself here) in every C-style language I'm using I'm always configuring all the common formatting settings alike. I do this in VS Code and in VS Enterprise. (Which is rather tedious, but I wouldn't want to switch formatting styles from language to language - would anyone?)
Wouldn't it make sense to provide a common base formatter for C-style languages that could be used and overriden by language services to add peculiarities to a language's formatting?

I believe, the decision to use leading instead of trailing commas is a design decision similar to using folding or preferring spaces to tabs, or vice versa. Folding, for instance, is implemented per language, too. Yet, the option in VS code is a global one. That's why I'd like to propose a global setting, like editor.listFormatting, using an enumeration, like
enum ListFormatting
{ TrailingComma
, LeadingComma
, LeadingCommaCompact
}

The difference between LeadingComma and LeadingCommaCompact may be the closing brackets: If consecutive closing brackes appear, they should probably not take a line on their own, depending on user preference.
LeadingCommaCompact would, after a comma separated line-split list has been formatted, take the additional step of replacing all whitespace between closing brackets with a space character.
A generic implementation (valid for all languages) would be rather simple, because in all languages a comma separated, line-split list is always characterized by matching brackets containing commas optionally accompanied by one or more line-breaks.

A generic (pseudo) implementation may look like the following
let lists : List[] = editor.getLists();  // that's a ubiquitios function, fitting lists in all kinds of languages

foreach (var i = 0;i < lists.length;++i)
  lists[i].Format();  // that's a ubiquitios function, too, fitting lists in all kinds of languages

editor.replaceLists(lists);  // that's another ubiquitios function, fitting lists in all kinds of languages

class List
{
  public SelEnd : number;
  public Content: string;

  List(editorText : string, public SelStart: number)
  {
    // find the next beginning of a comma separated, line-split list
    this.SelStart = ...;

    // find the end of that list
    this.SelEnd = ...;

    this.Content = editorText.substring(this.SelStart, this.SelEnd);
  }

  function Format()
  {
    switch (Application.Settings.Editor.listFormatting)
    {
      case ListFormatting.TrailingComma:
        this.Content = ...;
        break;

      case ListFormatting.LeadingComma:
      case ListFormatting.LeadingCommaCompact
        this.Content = ...;
        break;
    }

    if (Application.Settings.Editor.listFormatting === ListFormatting.LeadingCommaCompact)
      this.Content = this.Content.replace(/([\])}])\s+([\])}])/, "$1 $2");
  }
}

Editor.prototype.getLists = function()
{
  let result : List[] = [];

  for (let textPos = 0; textPos < this.TextContent.length;)
  {
    let list : List = new List(this.TextContent, textPos);

    if (list.SelStart < 0) break;   // no more lists found in editor's text buffer?

    result.push(list);
    textPos += list.SelEnd - list.SelStart;
  }

  return result;
}

Editor.prototype.replaceLists = function(lists : List[])
{
  for (let i=lists.length;i>0;)
  {
    let list : List = lists[i];

    this.TextContent = this.TextContent.substr(0, list.SelStart) + list.Content + this.TextContent.substr(list.SelEnd);
  }
}

@aeschli How would I test my code for this? Any tips would be appreciated!

@dbaeumer : May I invite you to this thread? Would you mind having a look at this and share your opinion?

I agree with this concept, add formatting for leadingCommas to all languages

Why do people still use this formatting? objects, arrays, functions allow trailing commas now, it's significantly more readable

They always did. Same as they always supported leading commas. There is no rule on where to put punctuation characters.
Actually, once you started using leading commas you will immediately recognize the benefit of using it, and you will never want to revert to struggle with the clumsiness of trailing commas.

They always did. Same as they always supported leading commas. There is no rule on where to put punctuation characters.
Actually, once you started using leading commas you will immediately recognize the benefit of using it, and you will never want to revert to struggle with the clumsiness of trailing commas.

Just for the sake of showing that this kind of formatting is not an unpopular one:
https://docs.npmjs.com/misc/coding-style#comma-first

For now using Better Align extention. Works pretty well. https://marketplace.visualstudio.com/items?itemName=wwm.better-align


Seax Scheme dev preview v0.1.0

Added:

Compilation for lambda expressions (including nested lambdas)
Compilation for String constants
Scoping for lambda parameters

Changed:

ForkTable.get_mut() now only returns references to the current level

This should push Scheme v0.1.0 once on master.


Separate executor configuration from computation

The way that the examples are currently written means that we have executor configuration mixed up with the computation itself. For example, notice how the executor and its parameters (runtime, runtime_memory) are found at the beginning and end of this example:
https://github.com/cubed-dev/cubed/blob/738b70d5578cf9dd68bb36fa813d96ffd0dd7302/examples/lithops/aws-lambda/lithops-add-asarray.py#L8-L24
We could improve the separation by setting the executor on the spec, so everything is set up in one go, like this:
    tmp_path = sys.argv[1]
    runtime = sys.argv[2]
    executor = LithopsDagExecutor(runtime=runtime, runtime_memory=2000)
    spec = cubed.Spec(tmp_path, allowed_mem=100000, executor=executor)
    a = xp.asarray(
        [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]],
        chunks=(2, 2),
        spec=spec,
    )
    b = xp.asarray(
        [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]],
        chunks=(2, 2),
        spec=spec,
    )
    c = xp.add(a, b)
    res = c.compute()
    print(res)

This is better, but it still means that every example is duplicated for every executor (Lithops AWS Lambda, Lithops GCF, Modal AWS, Modal GCP, Coiled, Dataflow, etc). While some duplication is OK for examples, it does feel excessive.
To improve this further this we could use something like donfig to allow the spec to be read from a config file, such as this one:
spec:
  work_dir: "s3://cubed-$USER-temp"
  allowed_mem: "2GB"
  executor_name: "lithops"
  executor_options:
    runtime: "cubed-runtime"
    runtime_memory: 2000

Then the example would look like this (note that the spec object disappears, and is automatically picked up from config instead):
    a = xp.asarray(
        [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]],
        chunks=(2, 2),
    )
    b = xp.asarray(
        [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]],
        chunks=(2, 2),
    )
    c = xp.add(a, b)
    res = c.compute()
    print(res)

It is run as follows, assuming the config file is in the lithops/aws-lambda directory:
CUBED_CONFIG=$(pwd)/lithops/aws-lambda python add-asarray.py

Note that the existing way of using a spec object programmatically would still work, this is just another way to configure things.
(It would also make it possible to implement #310 by using a config context manager to set the executor to one that raises if compute is called.)
Any thoughts @TomNicholas?

Interesting. I'm not convinced we should completely fold the executor into the spec when they represent different choices (runtime vs storage layer + config)... But then again I guess if the "spec" means just "all configuration needed to run any given workload" then it would make sense.

This is better, but it still means that every example is duplicated for every executor (Lithops AWS Lambda, Lithops GCF, Modal AWS, Modal GCP, Coiled, Dataflow, etc). While some duplication is OK for examples, it does feel excessive.

You're talking about a documentation issue here now right? I agree it feels silly to have the same workload examples documented twice for two executors. It also makes it much more likely that something in the docs gets out of date without us noticing.

To improve this further this we could use something like donfig to allow the spec to be read from a config file

I like the idea of a config file to set the defaults - I expect users will in practice set this up once and then never touch it again. Which is exactly what we want - them never to have to worry about configuration once they start doing science work.
We should just think about reproducibility / clarity if the options are being read from another file rather than from within the notebook. Maybe all options should be printed once the computation begins?

Interesting. I'm not convinced we should completely fold the executor into the spec when they represent different choices (runtime vs storage layer + config)... But then again I guess if the "spec" means just "all configuration needed to run any given workload" then it would make sense.

That's how I think about "spec". Having the ability to pass runtime parameters at the time compute is called may give extra flexibility, but it's not normally needed.

You're talking about a documentation issue here now right? I agree it feels silly to have the same workload examples documented twice for two executors. It also makes it much more likely that something in the docs gets out of date without us noticing.

Yes, quite.

I like the idea of a config file to set the defaults - I expect users will in practice set this up once and then never touch it again. Which is exactly what we want - them never to have to worry about configuration once they start doing science work.

💯

We should just think about reproducibility / clarity if the options are being read from another file rather than from within the notebook. Maybe all options should be printed once the computation begins?

That's a good idea.


a application start with sidecar some can connect some can not return Connection reset

Bug description
istio 1.0.4 when deploying some pods in same namespace with sidecar, some can connect some cannot, without sidecar all can connect.  restart pod not work, but after restart pilot or policy pod work.
what the problem ? can someone  give me a hint ?

Please upgrade your Istio, version 1.0 has not been supported for many many months and its unlikely the errors correlate to the current code.

See https://istio.io/blog/2019/announcing-1.0-eol/


Difficulty In Setup On Windows OS!

Hello i'm having difficulty with this script on windows. There's no manual and tutorial for this script in windows. i tried running the exe file with cmd and all i get this error: https://i.imgur.com/An4I6C0.png
What i tried:

Tried generating a pulic ssh key with ssh-keygen command
Then created a dir and sub dir deploy/pubkeys within sish folder and copy pasted that rsa public key in it.
But i'm still getting the error: https://i.imgur.com/An4I6C0.png

Hmm, there is also another directory that needs to be created keys. I just noticed that windows zips aren't including the deploy directory which setups up the filesystem hierarchy.


Improve the "Facts" section style and designs

Put a screen-shot of your changes after your work

Can I work on this?

hii i am full stack engineer. i can work on this


latest raspbian 3.12.x with stk1160 led flickering

Hello, I installed the latest upgrade to Raspbian 3.12.25+ but my hyperion is not working ok (LED flickering). It looks like there is stk1160 problem because with 3.10.25+ everything worked ok.
Who has the same problem? Is it stk1160 driver problem or hyperion problem?

@pete111 can be closed?

yeah, no problems!


Format release doc

Make the release RC tas to use -RCx suffix. And adjust the release script.

Coverage increased (+0.004%) to 24.453% when pulling e580c6929b8c5c771adc492b3d288945a5b50e91 on format-release-doc into c1efe6c83bfde9d65bf9f4f2e2e3b91fbf3bd1e2 on master.


Feature request: Please add the possibility to add a timeout when save_config flag is set

This is a feature request. Right now, if you run aclhound and the save_config is set to true, when saving the config back to nvram on a cisco, and the config is big and it takes quite some time. Deploy will return not successfull, as it doesn't wait until the config is actually written. (Especially annoying if you run it from jenkins)

This is fixed by 9b0487a0ed7ccadbdd9c08797d05cf3a872a4713


Add scoverage

This PR adds scoverage as well as updating some of the plugins

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@2a1520a). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #13   +/-   ##
=========================================
  Coverage          ?   70.31%
=========================================
  Files             ?       20
  Lines             ?      438
  Branches          ?       10
=========================================
  Hits              ?      308
  Misses            ?      130
  Partials          ?        0

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 2a1520a...b1c4b05. Read the comment docs.


small tweaks to try changes

 Submitted with StackBlitz.

👷 Deploy Preview for fascinating-faloodeh-5a1d93 processing.

Name
Link

🔨 Latest commit
160ee7033a21ae310645829fc279bd3c6656c0f1

🔍 Latest deploy log
https://app.netlify.com/sites/fascinating-faloodeh-5a1d93/deploys/65f0598ce77a8400089529ca


[Feature Request]: Extend Python's Setup Options to install dependencies from an Anaconda environment.yml file.

What would you like to happen?
I'd like to offer an extension to my feature request in #22349 (for conda docker support in the Python Beam SDK Docker image). Given that scientific software is most often distributed via the Anaconda package manager (typically, from conda-forge), I propose that users of the Python Beam SDK be allowed to add python dependencies via a environment.yml file. I'm imagining something like:
python era5_climatology.py --conda_environment environment.yml --runner DataflowRunner  # etc...

After the user specifies the environment, the remote Beam runner should set up a Docker image with the Anaconda package manager, and install all of the dependencies expressed in the environment.yml file in the global runtime environment. These packages should be useable from each step in the pipeline.
I anticipate that such a feature would be really valuable to members of the scientific python community, who are more versed with Anaconda environments over Docker. Indeed, this could drastically simplify setting up dependencies for Python users, saving them from compiling scientific packages in Docker or debugging pip and setuptools.
There is a tradeoff, however: Docker will offer faster start times than installing dependencies as runtime. I see this feature fitting along side the pip, tar and setup.py approach that already exists for managing python dependencies.
This feature would be dependent on the existence of standard a standard Anaconda SDK image (see connected issue above).
Implementation Notes
The entrypoint for this feature would start with an additional argument to the SetupOptions:
https://github.com/apache/beam/blob/c9c57a765dbaae7960deef80c0471766b26636d6/sdks/python/apache_beam/options/pipeline_options.py#L1105
For the DataflowRunner, specifically, we could check if an environment.yml file was passed in, and choose the conda enabled python container following a pattern similar to the existing logic:
https://github.com/apache/beam/blob/c9c57a765dbaae7960deef80c0471766b26636d6/sdks/python/apache_beam/runners/dataflow/dataflow_runner.py#L466
To me, it's somewhat of an open question for how we can add Anaconda support to other types of remote runners.
I received the tip from @yuvipanda, in a one-off discussion, that Mamba (https://mamba.readthedocs.io/en/latest/) might be a useful tool to integrate with over miniconda3 specifically. Mamba honors the same interfaces from conda files, except it includes a faster implementation and dependency resolver.
Issue Priority
Priority: 3
Issue Component
Component: sdk-py-core

CC: @martindurant

On mamba V conda, they should be equivalent, but there have been some corner cases; however, conda itself does optinally now support "libmamba" as a solver, so the two are slowly merging back together again.
Conda works happily alongside pip and can work in its own docker or be installed into another docker as a layer over something else.


[Request] Add support for changing gameplay keybinds

Describe your idea.
With the current keybind system implemented, add a way to rebind your gameplay keybinds.
Examples.
The ability to rebind your jump key off of the left mouse button and onto a different key.

theres another mod for this on geode i don't remember it's name but there definitely is one

and if you find it then close the issue

You're right, this would be more hacky than anything, we should leave it up to the official Geode mod that handles this natively. Closing.


Typo in docs

Hi! I've spotted a type in the docs. As I'm not sure what the intended wording is, I'm opening this issue instead of a PR. amd64, armv7, and amd64 should probably not include amd64 twice, you probably meant to write x86 or amd.
https://github.com/binwiederhier/ntfy/blob/28f211bfef0afb80f2a4222ebedaf82a85b4427f/docs/develop.md?plain=1#L123

Thanks. The intended wording is "arm64". If you like you can create a PR to fix it, or just leave this open and I'll fix it eventually.

Thanks, I'll open a PR soon.


Implementation plan: Catalog Data Cleaning

Fixes

Related to #430 by @obulat
Description

Since the project proposal is clear with what we want to achieve in this case, and in a past attempt, there were more doubts with the technical details than with the proposal itself, here I directly add an implementation plan with the most straightforward path identified.
This proposal also represents work that @obulat pushed last year; it's partly possible due to her effort and the @stacimc's precedent in the batched_update DAG. Kudos to both!

This discussion follows the Openverse decision-making process. Information about this process can be found on the Openverse documentation site.
Requested reviewers or participants will be following this process. If you are being asked to give input on a specific detail, you do not need to familiarize yourself with and follow the process.
Current round
This discussion is currently in the Decision round.
The deadline for review of this round is March 12, 2024.
Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

Could we also add some notes on how we keep track of the cleaned up data, and how we report on it? This will probably be useful for the person who runs the DAGs, and maybe the MSR runner?

@obulat Good note! I see you're already thinking about re-using the DAG outside of cleaning tasks 😄 I added that step to the DAG specification. Thanks for bringing it up and for the quick review!

@AetherUnbound @obulat I made the corrections from your excellent suggestions. This is ready for another review 📑

Document updated. I moved the discussion to the Decision round 🥁

Thank you folks! ✨


Could export UIBezierPath to SVG path?

Could export UIBezierPath to SVG path?

I have worked extensively lately with SVG in an app and I'm not 100% keen on writing in support for this LOL!
That said, I have considered this as its very useful. I'm currently looking into the new APIs for iOS 10 for how they are now dealing with renderer's for images and PDF, maybe something I can back port and add then even add iOS 10 support for SVG export.
If I did do this, I think I'd only include support for simple shapes and flat colours.
You're welcome to give it a shot and create a PR though ;)


stitch relations after deleting

Fixes #13774

@jhaals Hmm not really ... what people could do is to mass-set the right hash field to just some junk string which would trigger stitching on the next processing round. That'd get the entire database into a properly stitched state. The tricky thing is, we don't know easily which ones are just dangling because they are being legitimately generated that way (e.g. if your spec points to an owner that doesn't exist - which is "legal" and will keep being generated like that even if we deleted it), and which ones are dangling because of a partial deletion.


Memory usage in Observatory seems inconsistent

When looking at localhost:8181/#/isolates/ I see (for the root isolate): 2MB/117MB (map)
When I click on the link (leading to the allocation profile) I seem to have a much higher usage. In the "Current column":
List: 201935616
CodeBufferMarker: 116115200
_LinkedHashMapEntry: 104358016
...
These 3 alone use up more than 400MB.

Stale.


create Menu page, add styling, add animated WhatsApp icon to main and menu pages

Created Menu-grid page, added styling, added animated WhatsApp icon to main and menu pages

I added vendor prefixes to animation, hope it will work)...checked in Firefox, IE, everything's fine, but can't check it in Safari as I have problems with it's downloading on Windows))..if it's not working, please, let me know, I will change s into ms as you told:)


(chores) code cleanups: move array designators to the type

GH staled. Let's merge to have some tests on ASF CI.


[BUG]:mysql2 is too new

What version of drizzle-orm are you using?
0.21.1
Describe the Bug
If you install drizzle-orm and mysql2 at different times, or try to install anything after drizzle-orm you end up with this error:
npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving<EMAIL_ADDRESS>npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/mysql2
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peerOptional mysql2@">=2 <3" from<EMAIL_ADDRESS>npm ERR! node_modules/drizzle-orm
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Conflicting peer dependency<EMAIL_ADDRESS>npm ERR! node_modules/mysql2
npm ERR!   peerOptional mysql2@">=2 <3" from<EMAIL_ADDRESS>npm ERR!   node_modules/drizzle-orm
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.

Unless I'm mistaken I think it's because mysql2 is too new. It appears you're looking for version 2 of mysql2 and I have version 3. So either this is a bug, or the install instructions are buggy and we need to request a specific version of mysql2. Or I've completely misunderstood something.

Yep, we've restricted the major version of our peer dependencies to avoid breaking changes on major versions. But we've reconsidered since then, because major version releases don't necessarily mean that the ORM compatibility will break. We'll remove this restriction.

Fixed in 0.23.0

i'm getting this today - seems to be<EMAIL_ADDRESS>npm ERR! code ERESOLVE
npm ERR! ERESOLVE could not resolve
npm ERR!
npm ERR! While resolving<EMAIL_ADDRESS>npm ERR! Found<EMAIL_ADDRESS>npm ERR! node_modules/react
npm ERR!   peer react@">=18" from<EMAIL_ADDRESS>npm ERR!   node_modules/@clerk/clerk-react
npm ERR<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR!     node_modules/@clerk/nextjs
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!   peer react@">=18" from<EMAIL_ADDRESS>npm ERR!   node_modules/@clerk/nextjs
npm ERR<EMAIL_ADDRESS>from the root project
npm ERR!   11 more (@clerk/shared, @radix-ui/react-compose-refs, ...)
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! drizzle-orm@"*" from the root project
npm ERR!
npm ERR! Conflicting peer dependency<EMAIL_ADDRESS>npm ERR! node_modules/react
npm ERR!   peer<EMAIL_ADDRESS>from<EMAIL_ADDRESS>npm ERR!   node_modules/react-native
npm ERR!     peer react-native@"*" from<EMAIL_ADDRESS>npm ERR!     node_modules/@op-engineering/op-sqlite
npm ERR!       peerOptional @op-engineering/op-sqlite@">=2" from<EMAIL_ADDRESS>npm ERR!       node_modules/drizzle-orm
npm ERR!         drizzle-orm@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.


npm start: Module not found error

Hi, I'm getting the following error after running npm start. I've been trying to figure it out but I can't find the issue. I'm on Ubuntu.
ERROR in ./demos/demo4/components/Diagram.js
Module not found: Error: Can't resolve './engine' in '/home/victor/front-end/react-js-diagrams/demos/demo4/components'
 @ ./demos/demo4/components/Diagram.js 18:0-41
 @ ./demos/demo4/demo4.js
 @ ./demos/demo4/index.js
 @ multi react-hot-loader/patch webpack-hot-middleware/client ./demos/demo4/index.js
webpack: Failed to compile.

Here is the list of installed packages after running npm install:
$npm list --depth=0
<EMAIL_ADDRESS>/home/victor/front-end/react-js-diagrams
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
Thanks

@riosv This issue was caused by a bad import in the demo and is fixed in version 3.0.4. If you're still having issues please let me know and I'll reopen.


adding crops not working for me

{
"type": "ressource",
"tier": "mysticalagriculture:1",
"ingredient": {
"item": "mysticalagriculture:prosperity_shard"
},
"color": {
"flower": "eeeeee",
"essences": "eeeeee",
"seeds": "eeeeee"
},
"textures": {
"flower": "mysticalagriculture:block/flower_dust",
"essence": "mysticalagriculture:item/essence_flame",
"seeds": "mysticalagriculture:item/mystical_seeds"
}
}
file named prosperity.json, tried prosperity_seed.json to
did this and no seeds appear in JEI
i tried for prosperity shard, allthemodium, vibranium, and unobtainium, nothing work ( modpack all the mod 7 version 0.2.13 )

Minecraft: 1.18.1
Forge: 39.0.9
Cucumber: 5.0.1
Mystical Agriculture: 5.0.1
Mystical Agradditions: 5.0.2
Mystical Customization: 3.0.0

You have resources spelt as ressources, with an extra s. But I do concur that even if that were fixed, i don't think mystical customization is working.
I tried adding the crops.zip from this past thread and the seeds do not appear anywhere. https://github.com/BlakeBr0/MysticalCustomization/issues/13

Hey, about that and for the people coming across this issue, it looks like that was changed in 1.18. And honestly, the change is totally reasonable and even more friendly for modders :) the docs just need a small touch to correct something in the Types.
In short, check his site https://blakesmods.com/docs/mysticalcustomization/adding-crops#type.
Specifically, the /mysticalcustomization types command for in-game. Run that, and here's the result:

It now uses resource location.
mysticalagriculture:resource
mysticalagriculture:mob
For example, that's how you would write that change for a specific seed:

And the result in-game:

Cheers

Hey, about that and for the people coming across this issue, it looks like that was changed in 1.18. And honestly, the change is totally reasonable and even more friendly for modders :) the docs just need a small touch to correct something in the Types. In short, check his site https://blakesmods.com/docs/mysticalcustomization/adding-crops#type. Specifically, the /mysticalcustomization types command for in-game. Run that, and here's the result:  It now uses resource location. mysticalagriculture:resource mysticalagriculture:mob For example, that's how you would write that change for a specific seed:  And the result in-game:  Cheers

Thank you so much for this. Solves everything!

I've updated the docs to mention this change.

Much thanks! Have a good day!

@Raidobw2 u have ds to talk about this? Or u can help me with my issue? Its right now open


Adjustment for memory constraints

Purpose and background context
A recent full harvest of the GeoHarvester via the TIMDEX StepFunction failed because the ECS container ran out of memory.  This was anticipated but not confirmed until now.
This was a result of the Harvester maintaining the successful and failed Record objects on the harvester instance throughout the harvest.  With a Record object containing both the source XML and normalized JSON (at least for MIT harvests), the volume of data becomes substantial over time; at least for a 512mb container.
The following is a screenshot of ECS container metrics from the failed run.  Note the linearly increasing memory that eventually runs out:

This PR updates the harvester in two important ways:

for records successfully processed, only the identifier is saved on the harvester (commit)
for failed records, only the record's identifier, failed harvest step name, and Exception object are saved on the harvester (commit)

The following is the same ECS container metrics, but now the memory nearly flatlines once in the main iteration loop:

This screenshot was taken before the failed records adjustment, so the memory consumption may grow even slower.
Taken altogether, this should be sufficient for very large harvests (e.g. OGM with 120k+ records).
How can a reviewer manually see the effects of these changes?
Set env vars:
WORKSPACE=dev
SENTRY_DSN=None
S3_RESTRICTED_CDN_ROOT=/tmp
S3_PUBLIC_CDN_ROOT=/tmp
GEOHARVESTER_SQS_TOPIC_NAME=geo-harvester-input-dev
AWS_ACCESS_KEY_ID=<KEY HERE UNQUOTED>
AWS_SECRET_ACCESS_KEY=<SECRET HERE UNQUOTED>
AWS_SESSION_TOKEN=<SESSION TOKEN UNQUOTED>

Run full harvest against Dev1 files, but ALL outputs of the harvester will be internal to the local docker container:
docker run --env-file .env \
geo-harvester-dev:latest --verbose harvest \
--harvest-type="full" \
--output-file="/tmp/output.jsonl" \
mit \
--input-files="s3://cdn-origin-dev-222053980223/cdn/geo/restricted/" \
--skip-sqs-check \
--skip-eventbridge-events

While this runs -- and it should take some time as there are 2k+ zip files here -- monitor docker stats with the following command in another terminal window:
docker stats

Here is a screenshot showing memory for this container (and a couple of others that were running) on my machine:

Note that the memory consumption of the container remains fairly stable.  It will still grow slowly, but orders of magnitude slower than before as successful and failed records are no longer fully maintained in memory as items on the Harvester instance.
Ctrl + C will stop the docker container anytime satisfied memory is not growing rapidly and stop the harvest and container, which will naturally remove files saved locally inside the container.
Discussion
This harvester is almost entirely IO bound, with lots of read network calls to S3 to read zip files and write network calls to S3 writing source + normalized metadata, and appending to a growing JSONLines file.
One dramatic performance improvement could be writing all metadata files locally inside the container, and either writing them all at once to S3 at the end of harvest, or performing batch writes along the way (e.g. every 100 records).
But this introduces some complexity that may not be worth the performance gain.  In most cases, the "daily" harvests will be very, very small.  The readability and linear logic of the current implementation is easily efficient enough.  Similarly, for OGM harvests there are far fewer network writes.
Lastly, the OGM work may further stress test the current implementation.  If batch writing seems appealing then, as we'll be writing potentially 100k+ files to JSONlines, it might be the time to make this change.
Includes new or updated dependencies?
NO
Changes expectations for external applications?
NO
What are the relevant tickets?

https://mitlibraries.atlassian.net/browse/GDT-156

Developer

[X] All new ENV is documented in README
[X] All new ENV has been added to staging and production environments
[X] All related Jira tickets are linked in commit message(s)
[X] Stakeholder approval has been confirmed (or is not needed)

Code Reviewer(s)

[x] The commit message is clear and follows our guidelines (not just this PR message)
[x] There are appropriate tests covering any new functionality
[x] The provided documentation is sufficient for understanding any new functionality introduced
[x] Any manual tests have been performed and verified
[x] New dependencies are appropriate or there were no changes

[Non-blocking]: Just to make sure I understand -- the second screenshot shows the ECS container metrics after making the change to save only the identifier of successful records to the harvester (but not the change for failed records)?

That's correct!


marimo edit C:\Users\user\Desktop\python\pkg\examples finds notebooks, but can't open them

Describe the bug
I ran marimo edit C:\Users\user\Desktop\python\pkg\examples with a fully qualified path. It opened the page with running notebooks, recent notebooks, workspace. It lists all the notebooks in examples. But when I click on one I get a error screenshotted below. When I use a relative path, starting in C:\Users\user\Desktop\python\pkg\ and running marimo edit examples then it works expected.
Error:

Environment
{
"marimo": "0.7.12",
"OS": "Windows",
"OS Version": "10",
"Processor": "Intel64 Family 6 Model 85 Stepping 4, GenuineIntel",
"Python Version": "3.10.11",
"Binaries": {
"Browser": "126.0.6478.127",
"Node": "--"
},
"Requirements": {
"click": "8.1.7",
"importlib-resources": "missing",
"jedi": "0.19.0",
"markdown": "3.6",
"pymdown-extensions": "10.8.1",
"pygments": "2.16.1",
"tomlkit": "0.12.5",
"uvicorn": "0.30.1",
"starlette": "0.37.2",
"websockets": "12.0",
"typing-extensions": "4.7.1",
"ruff": "0.5.5"
}
}
Code to reproduce
No response

Thank you for reporting and the reproduction. I confirm that I can reproduce.


Support Swift native Date and Data types

Requires parsing schemas that use Date and Data types. Also should ensure we have tests that use both these and their NS variants. We also want to make sure they're supported in both Realm Swift and Realm Objective-C from Swift.

Done in #3965 for both Realm Swift & Realm Objective-C, @JadenGeller?

Nope, I'm working on this now.

Done in https://github.com/realm/realm-cocoa/pull/3979


Fixing integration test failure

Purpose

This PR includes a fix for an integration test failure that occurred when testing the OIDC metadata API.

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/6845849459

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/6845849459
Status: failure

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/6850174878
Status: cancelled

PR builder started
Link: https://github.com/wso2/product-is/actions/runs/6850397453

PR builder completed
Link: https://github.com/wso2/product-is/actions/runs/6850397453
Status: success


customize the wallet flush

Add parameters to change the wallet flush rate. Separate out the disk sync from the lsn_reset.
Questions:

Is there a newer version of BerkDB that doesn't rewrite the entire DB file when lsn_reset is called?
Or can we put it in a "don't need lsn_reset" mode?
Should we call the vacuum command at some point to keep the file small?
We could drop BerkDB and ship a copy of db_dump to migrate the old data into an Sqlite DB. Is there some kind of obfuscation out of the box?

Fixed in 17.4.1


When trying to upload a second file, it's sending the first file over

First image I'm uploading is dog.jpg. Once that is done uploading, and I try uploading cat.jpg, it sends dog.jpg over to the server. I had added console.log(data) to the change event, and when adding the second photo, change shows it correctly. The actual request (shown in Chrome's network tab) isn't right, though.
Here's the JS for it:
stepOne.find('input[type=file]').fileupload({
  dataType:  'json',
  url:       '/api/v1/pending_photos.json',
  paramName: 'photo',

  replaceFileInput: false,

  add: function(e, data) {
    stepOne.find('input[type=submit]').click(function() {
      var xhr = data.submit();

      xhr.success(function(data) {
        var medium = data.pending_photo.medium,
            small  = data.pending_photo.small;

        addPhotoToUI(medium);
      });

      return false;
    });
  }
});

I've double checked the basic file upload setup with the addition of setting replaceFileInput to false, but couldn't reproduce this issue.
Depending on your complete implementation is might have something to do with the replaceFileInput option, but that's just a guess.
It might help if you could test the basic file upload setup with the addition of setting replaceFileInput to false to confirm my findings and to try to pin point the difference in your implementations.


Start TV with specific App

Hello everyone, is it possible with this plugin to always start the LG TV with a specific app - for example with waipu.tv?
If so, what settings do I need to make in the plugin?
Thanks and regards
DJ

Hi, yeah it is possible. Just create an appButton for the app you want and that use that to start your tv. It should turn on the tv and straight open the specified app.

@merdok thank you so much — this works great

Good to hear🙂


Configs in Cosmology class

Addresses part of #42 by moving transfer_fn and nonlinear_fn to the Cosmology class. Functions that take either of these as arguments default to the values in the cosmo argument but still allow override.
Also adds shortcuts for the halofit implementations, e.g., halofit_smith2003.

Awesome, thank you! I'll be able to review it tonight or tomorrow


QPE with primitives

Summary
Details and comments

[ ]  release notes
[ ] some type hints

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

48 of 48 (100.0%)  changed or added relevant lines in 4 files are covered.
5 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-0.0004%) to 84.12%

Files with Coverage Reduction
New Missed Lines
%

qiskit/algorithms/phase_estimators/phase_estimation.py
1
90.91%

qiskit/algorithms/phase_estimators/phase_estimation_result.py
2
92.31%

qiskit/quantum_info/states/densitymatrix.py
2
86.69%

Totals

Change from base Build<PHONE_NUMBER>:
-0.0004%

Covered Lines:
56692

Relevant Lines:
67394

💛  - Coveralls


px4_raspberrypi: fix mavlink over UART (/dev/ttyAMA0)

Describe problem solved by this pull request
Correctly configure telemetry over the UART interface in addition to the existing configuration over /dev/ttyUSB0.
Describe your solution
/dev/ttyAMA0 is the primary interface for telemetry radio as defined in the Navio2 hardware setup page documentation. The proposed changeset adds functionality over UART: it checks first if /dev/ttyUSB0 exists, which translates to possibly telemetry radio being attached through one of the USB ports on RPi (usb-radio); if not, the code falls back to configuring over UART (/dev/ttyAMA0).
Use stricter check for character special file (-c) rather than just file (-f).
cmdline.txt needs to be edited to remove 'console=serial0,115200' as an additional configuration step to free up the /dev/ttyAMA0 interface. This should be documented in docs.px4.io. Presumably, this change is exactly what Emlid does when they spin their prebuilt image, to make UART work in the Raspberry Pi OS distro they support.
Test data / coverage
Tested with a major manufacturer's telemetry kit and Navio2 attached to RPi. Before this changeset, telemetry was not coming through the UART port. After the changes were applied, relevant mavlink data flows correctly through the UART port, over the wireless connection and gets displayed in QGroundControl.
Additional context
https://docs.emlid.com/navio2/ardupilot/hardware-setup/

[FATAL] [1601626818.952350, 0.000000]: Error: specified file /__w/Firmware/Firmware/Tools/sitl_gazebo/models/iris/iris.sdf does not exist
[INFO] [1601626818.950827, 0.000000]: Loading model XML from file /__w/Firmware/Firmware/Tools/sitl_gazebo/models/iris/iris.sdf
Gazebo multi-robot simulator, version 9.13.1
Copyright (C) 2012 Open Source Robotics Foundation.
Released under the Apache 2 License.
http://gazebosim.org
[Err] [RenderEngine.cc:738] Can't open display: :99

CI build failures look unrelated to the changeset at hand.

CI build failures look unrelated to the changeset at hand.

That's correct (unfortunately).

@SalimTerryLi FYI

That is. I may write something about how to deploy PX4 on RPI from the scratch later, including how to configure additional UART devices.
But I think that telemetry over usb is not a common idea, as someone may connect other USB-CDC devices like GPS. In this case we can not assume ttyUSBx to be a telemetry.

That is. I may write something about how to deploy PX4 on RPI from the scratch later, including how to configure additional UART devices.

I think that would be really helpful, init for these linux boards is a bit of a mess. I'd really like to unify init across NuttX, SITL, and real Linux flight controllers. I'm also wondering about generating a PX4 install package (dpkg, etc).


Folder Not Generated

Hi there,
As of a few weeks ago, and without anything notable changing on my system, I find the .exe doesn't generate a folder anymore despite printing everything out okay. Let me know if I can provide more information to help troubleshoot.

Heya!
I just tested the executable and it's working for me.
Do you mind sharing your sounds.txt? I think that's the only possible culprit here

Sure! Here are the contents — it's been hard to look up some sounds using /skit so I do suspect that some of these aren't accurately mapped to anything, as they are best guesses from the database.
FizzleFireA
FizzleFrostA
FizzleShadowA
FizzleHolyA
FizzleNatureA
Fizzle_ShadowA
LightningShieldImpact
LevelUp
LevelUp2
Level_Up
UIINTERFACEBUTTONA
UI_INTERFACE_BUTTONA
UI_INTERFACE_BUTTONA_75
CHAT_SCROLL_BUTTON
CHAT_SCROLL_BUTTON_50
UIINTERFACEBUTTONA
UIMAINMENUBUTTONA
UIMAINMENUBUTTONA_63
UIMAINMENUBUTTONA_89
UI_INTERFACE_BUTTONA
UI_INTERFACE_BUTTONA_75
UI_MAIN_MENU_BUTTONA
UI_MAIN_MENU_BUTTONA_10
UI_MAIN_MENU_BUTTONA_70
UI_MAIN_MENU_BUTTONA_75
UCHATSCROLLBUTTON
UCHATSCROLLBUTTON_1
UCHATSCROLLBUTTON_25
UCHATSCROLLBUTTON_39
UCHATSCROLLBUTTON_70
BowPullback
BowPullback02
BowPullback03
G_HornofEcheyakee


Text is lacking enough contrast

This is a cool idea, but quite difficult to read some of the text, I know that part of the code is intended to be less easy to read to focus the user on writing the code, but even the main instructions are low contrast.

Can you post a screenshot of what you see, and your OS/browser? Looks ok on my end but would want to make it accessible for all platforms.

I had the same problem on my laptop and changed my version to actual code editor colors. to see how it looks.
You can check it out here. https://danweatherbee.github.io/gridgarden/

I much prefer the colors being used by Thomas than what Dan posted above.
The fact that the css that isn't important to the level is in grey is a nice touch and allows you to focus on the property at hand.

@Braed @thomaspark I think @accessiblewebuk is referring to the contrast of the text of the other CSS items.

It is failing the contrast ratio test: http://leaverou.github.io/contrast-ratio/#%23aaa-on-%23ddd
A solution could be that you provide a high contrast mode, for those who need it. It would definitely be a nice addition.

@donroyco it seems that the "Dan" i was referring to has since removed his comment.
I know that he was referring to the grey css text, and i think it's good that way since it doesn't draw attention away from the text that you are typing. :)

since it doesn't draw attention away from the text that you are typing

But the way it does that is to be practically invisible; you really, really, truly cannot read the grey text on the grey background.

I don't think that Thomas is to blame for poor monitors / contrast settings.

The grey/grey may be fine for a bunch of 20something kids with great eyesight.  They're really ineffective choices for a huge segment of the population though. It's not at all a question of monitor calibration.


[Infra] Distribute to current NuGet on each PR merge

If a PR results in a new .NET library and is merged to main, then distribute the built package to a "dailies" or "current" NuGet feed.

During GitHub Action build, the build is published to GitHub Packages.


basic MediaWiki like functions in gollum

I find some automation in MediaWiki (http://www.mediawiki.org) handy:

generating content list from headers in a page. good for long pages.
reference tags  link to auto-generated reference list at the bottom of the page.
columns for long lists.
category tags and article list generated for categories.

Great work, thanks!

Table of Contents (#25) is something I really do miss when writing wiki with Markdown on github. Do you have plans to implement this?


Add cirq.convert_to_target_gateset transformer and cirq.CompilationTargetGateset interface

Adds the following new objects:

cirq.CompilationTargetGateset: Interface for defining compilation targets.
cirq.decompose_operations_to_target_gateset : Transformer to locally convert each operation to target gateset.
cirq.convert_to_target_gateset: Transformer to convert a circuit to a target gateset -- also supports running pre and post processing transformers before decomposing individual operations.

See https://github.com/quantumlib/Cirq/pull/5003 for larger context and implementations of specific target gatesets deriving from cirq.CompilationTargetGateset.

Part of https://github.com/quantumlib/Cirq/issues/4722
Follows the new Transformer API https://github.com/quantumlib/Cirq/issues/4483
Supports no compile tags NoCompile Tag for optimizers https://github.com/quantumlib/Cirq/issues/4253

cc @MichaelBroughton @dstrain115

My biggest concern is if we should ship something in decompose_operations_to_target_gateset that looks so similar to decompose.

The primary benefit here is the automated logging + support for no-compile tags, that comes with making it a transformer.
For example: If someone runs convert_to_target_gateset with a context and then calls context.logger.show(), they'd be able to clearly inspect the action of each stage, including the decomposition stage wrapped in decompose_operations_to_target_gateset, because of the automated logging framework.
Given this benefit, and given that we already have other transformers like expand_composite, which are essentially wrappers on top of decompose + map_operations, I'd argue that we should keep this decompose_operations_to_target_gateset as well.

As discussed offline,

Changed decompose_operations_to_target_gateset --> _decompose_operations_to_target_gateset to avoid polluting the global namespace.
Changed convert_to_target_gateset --> optimize_for_target_gateset to convey that other pre/post process transformers will also be executed.


PDK setup fails

I receive the following error while running the make setup command with the commit 8cb8b4c in main branch:
...
Writing 'sky130_fd_pr__rf_nfet_01v8_aM04W5p00L0p25'
Done.
Error message output from magic script:
/home/ayildiz/efabless/pdks/open_pdks/sky130/sky130A/libs.tech/magic/sky130A.tech: line 19: section version:
        Error:  Magic version 8.3.277 is required by this techfile, but this version of magic is 8.3.269.
/home/ayildiz/efabless/pdks/open_pdks/sky130/sky130A/libs.tech/magic/sky130A.tech: line 4845: section extract:
        Illegal keyword.  Legal keywords are:
         areacap contact cscale defaultareacap defaultoverlap defaultperimeter defaultsideoverlap defaultsidewall device fet fetresist height antenna model tiedown lambda overlap perimc planeorder noplaneordering resist rscale sidehalo sideoverlap sidewall step style substrate units variants
The following sections of /home/ayildiz/efabless/pdks/open_pdks/sky130/sky130A/libs.tech/magic/sky130A.tech contained errors:
    version
Couldn't find label MET3
...

However, Magic has a newer version installed on my machine:
$ magic --version
8.3.315

Closing the issue since it is linked to an older commit.


fixing cli doc navigation

Type of Change

[x]  Bug Fix
[ ]  New Feature
[ ]  Breaking Change
[ ]  Refactor
[x]  Documentation
[ ]  Other (please describe)

Checklist

[x]  I have read the contributing guidelines
[ ]  Existing issues have been referenced (where applicable)
[x]  I have verified this change is not present in other open pull requests
[ ]  Functionality is documented
[ ]  All code style checks pass
[ ]  New code contribution is covered by automated tests
[ ]  All new and existing tests pass

closed in favor of https://github.com/openclarity/docs.openclarity.io/pull/53


Ability to curate files with same header information.

Some components use the same header on multiple files.
For example, RocksDB uses the following header on over 100 files.
// Copyright (c) 2011-present, Facebook, Inc.  All rights reserved.
//  This source code is licensed under both the GPLv2 (found in the
//  COPYING file in the root directory) and Apache 2.0 License
//  (found in the LICENSE.Apache file in the root directory).
Being able to group files by license header so that they might be curated in a single shot would provide substantial improvement in curation time.

Probably a combination of filter by License and multi-select on files would help?

Thanks @storrisi - I think that those features certainly would help curation, but we'd still need to verify that the text is the same for each file.
I understand from @pombredanne that the header data is being harvested, so we might be able to sort by header or apply curations across identical. I'd prefer to trust computers to determine whether 100+ header files are identical than a person :)

@dabutvin i could be wrong but the service is not currently sending an "header" field for each file. Could you confirm it?

that's right, but we may be able to pull that data out from the scancode results

If we consider this implementation really useful, we can address the right implementation on the service and then do the same on the website. Thoughts?


go/tendermint: Use our domain-separation signature scheme

This deprecates all non-context signatures, and forces tendermint to use
our ad-hoc construct via extensions provided with our fork.
Additionally, the tendermint node identity key is now the oasis node
identity key, and the old ConsensusSigner is only used for validator
signatures (proposals/votes).
Fixes #2332

@tjanez: Which key is ConsensusAddr.ID supposed to be?  If it's the validator signing key, it is redundant because it already exists as ConsensusInfo.ID (and there should only be one).  If it is the node identifier key, I'm not sure how it's supposed to be set.

Which key is ConsensusAddr.ID supposed to be?

It should be the consensus P2P key.

It should be the consensus P2P key.

I think I got it right then.


Add checkPermission for Android

Can you add checkPermission for Android, and to the status table in the readme? I couldn't tell whether it's supported on Android. From reading further on it looks like it is iOS only, not entirely sure though so I thought I'd ask.

Probably a good idea. PR perhaps?
With android permissions are typically requested upon install. I know there are now on demand permissions in android 6 though so it would make sense to support both modes.

I think you can do that in android too https://developer.android.com/training/permissions/requesting.html

Well, now I'm seeing this error in Android because the checkPermission function isn't defined. @morenoh149 are you saying it exists in Android, and what should I use instead?

I'm saying it may be feasible in Android. Someone just has to code it.


Small improvements in RTS

Few bits and pieces I picked up while reading the code, some of them addressing #68 .

@regiskuckaertz Looks great! Thank you.


Handle several active VMI pods during disk hotplug

What this PR does / why we need it:
Several virt-launcher pods may still be running for a single VMI after migration and that will prevent from mounting hotplug disks. Find the proper pod by checking if the expected hotplug directory exists.
Special notes for your reviewer:
After successfull migration the source launcher pod is not deleted:
virt-launcher-testvm-gs7n4       0/2     Completed   0          47m

and it stays in the list of VMI Active Pods:
Status:
  Active Pods:
    148a69ba-95ae-43dd-b12f-f0eab833a83b:  node02
    c0a7a88a-4dac-44f9-bd5c-e966db1464d7:  node01

The fix is based on the approach implemented for ContainerDisks:
https://github.com/kubevirt/kubevirt/blob/d2eb0cf7ddc93eb88e0f590b1790558e44c6586b/pkg/container-disk/container-disk.go#L61-L79
Release note:

NONE

/cc @awels
/cc @mhenriks

/lgtm
The approach will likely change once we support LM.

The approach will likely change once we support LM.

@awels , btw, do you have maybe some estimation/plan when LM with hotplug disks will be supported? Just curious. This is the feaure that Harvester project would benefit from.

Not yet, after some consideration on how to tackle the pod per disk issue, I think we have decided on the 'flip flop pod' approach, aka create a new pod with all the volumes uses by hotplug, and then delete the previous pod. This means regardless of how many volumes you hotplug you will have a single attachment pod.
This has repercussions on how we do LM (since we need to duplicate the pod on the target), so I am going to tackle that first, and we will have a good setup for doing LM with hotplug. Note those issues are the remaining major work for hotplug, so it is my priority.

@awels , I see. Nice solution with 'flip flop pod'. I think it totally makes sense to keep a single pod for hotplug disks. Thank you for the update on that. Looking forward to give it a try when ready... and definitely I'd be more than happy to contribute in case any help is needed ;)

I am still not sure: is it intentional behaviour that the pods in Completed state are listed as Active Pods in VMI status (as in the PR description)? If its not then I think it can be fixed by filtering them out in:
https://github.com/kubevirt/kubevirt/blob/285ddf078558a6e6d033938d9607a2dbbb8d827e/pkg/virt-controller/watch/vmi.go#L1176-L1200
Any thoughts whether that might be needed or not?

nit: Can you please change the PR description and commit message to emphasize this is about disk-hotplug? We now also have host-device hotplug (for SR-IOV), so it makes this confusing.

Ping here. Would it be okay to merge this one while the work on LM with hotplug is in progress? Currently without the fix it is not possible to hotplug a volume after VM migration since there are several active pods listed in the VMI status.

Still /lgtm, but it looks like there is a conflict in the PR at this point.

Still /lgtm, but it looks like there is a conflict in the PR at this point.

@awels , rebased the changes.

/retest

/lgtm

/test pull-kubevirt-e2e-k8s-1.20-sig-compute

/test pull-kubevirt-e2e-k8s-1.20-sig-compute

@davidvossel @rmohr @mhenriks we need someone to approve this PR. I already gave /lgtm

/retest

/test pull-kubevirt-unit-test


Add rule description to pagerduty incident

This PR formats the PagerDuty incident with the rule's name and description (if available). Previously, the only information immediately visible was "A doorman alert was triggered", which was not really informative.

Yeah, this is pretty clearly an improvement.  LGTM 🚢


Fix color banding by dithering image before quantization

Objective

Closes #5262
Fix color banding caused by quantization.

Solution

Adds dithering to the tonemapping node from #3425.
This is inspired by Godot's default "debanding" shader: https://gist.github.com/belzecue/
Unlike Godot:

debanding happens after tonemapping. My understanding is that this is preferred, because we are running the debanding at the last moment before quantization ([f32, f32, f32, f32] -> f32). This ensures we aren't biasing the dithering strength by applying it in a different (linear) color space.
This code instead uses and reference the origin source, Valve at GDC 2015

Additional Notes
Real time rendering to standard dynamic range outputs is limited to 8 bits of depth per color channel. Internally we keep everything in full 32-bit precision (vec4<f32>) inside passes and 16-bit between passes until the image is ready to be displayed, at which point the GPU implicitly converts our vec4<f32> into a single 32bit value per pixel, with each channel (rgba) getting 8 of those 32 bits.
The Problem
8 bits of color depth is simply not enough precision to make each step invisible - we only have 256 values per channel! Human vision can perceive steps in luma to about 14 bits of precision. When drawing a very slight gradient, the transition between steps become visible because with a gradient, neighboring pixels will all jump to the next "step" of precision at the same time.
The Solution
One solution is to simply output in HDR - more bits of color data means the transition between bands will become smaller. However, not everyone has hardware that supports 10+ bit color depth. Additionally, 10 bit color doesn't even fully solve the issue, banding will result in coherent bands on shallow gradients, but the steps will be harder to perceive.
The solution in this PR adds noise to the signal before it is "quantized" or resampled from 32 to 8 bits. Done naively, it's easy to add unneeded noise to the image. To ensure dithering is correct and absolutely minimal, noise is adding within one step of the output color depth. When converting from the 32bit to 8bit signal, the value is rounded to the nearest 8 bit value (0 - 255). Banding occurs around the transition from one value to the next, let's say from 50-51. Dithering will never add more than +/-0.5 bits of noise, so the pixels near this transition might round to 50 instead of 51 but will never round more than one step. This means that the output image won't have excess variance:

in a gradient from 49 to 51, there will be a step between each band at 49, 50, and 51.
Done correctly, the modified image of this gradient will never have a adjacent pixels more than one step (0-255) from each other.
I.e. when scanning across the gradient you should expect to see:

                  |-band-| |-band-| |-band-|
Baseline:         49 49 49 50 50 50 51 51 51
Dithered:         49 50 49 50 50 51 50 51 51
Dithered (wrong): 49 50 51 49 50 51 49 51 50

You can see from above how correct dithering "fuzzes" the transition between bands to reduce distinct steps in color, without adding excess noise.
HDR
The previous section (and this PR) assumes the final output is to an 8-bit texture, however this is not always the case. When Bevy adds HDR support, the dithering code will need to take the per-channel depth into account instead of assuming it to be 0-255. Edit: I talked with Rob about this and it seems like the current solution is okay. We may need to revisit once we have actual HDR final image output.

Changelog
Added

All pipelines now support deband dithering. This is enabled by default in 3D, and can be toggled in the Tonemapping component in camera bundles. Banding is a graphical artifact created when the rendered image is crunched from high precision (f32 per color channel) down to the final output (u8 per channel in SDR). This results in subtle gradients becoming blocky due to the reduced color precision. Deband dithering applies a small amount of noise to the signal before it is "crunched", which breaks up the hard edges of blocks (bands) of color. Note that this does not add excess noise to the image, as the amount of noise is less than a single step of a color channel - just enough to break up the transition between color blocks in a gradient.

Please note that this fixes #5262 :)

FYI I'm planning on making an example to better stress test noise and banding performance before removing draft status.

Added a stress test for banding:
Control

Dithered

@CptPotato I rebased on #3425, and added it to the tonemapping pass. This means dithering is now a fullscreen post-process. Could probably improve by moving to its own node that outputs to a Bgra8Unorm (instead of SRGB, I think this is correct?) to remove the unnecessary conversion to and from SRGB space.

As a note to others viewing the images above if you still see banding in the dithered image click on it to view it in another tab.
That will display the image at 100% scaling and the banding should not be visible.

The result looks good! If tonemapping is disabled, will dithering be disabled too?

Yup, that's correct. Maybe that make sense though? The goal of dithering is to remove artifacts from quantization, which seems to fit alongside tonemapping (mapping between color spaces).

[...] you could probably eliminate the conversion back to linear by changing the format of the render target view ("attachment" I think is the wgpu slang).

The issue with this is device compatibility from what @superdump mentioned on discord.

Though, in that case a more accurate conversion function than pow(col, 1.0/2.2) would make sense.

Any resources on what that would be?

Thanks for the links!

That being said, if you keep the conversion in both directions (linear -> srgb -> linear) in the shader the difference it makes on the dithering may be negligible. I can't say for sure, though.

This is a good point. Dithering just relies on the rounding being correct, such that dithering never causes more than one full step away from the true signal value during quantization. As long as the log approximation is "pretty close" (a rigorous technical term), it wouldn't cause quantization to round another full step for the large majority of cases.

[...] you could probably eliminate the conversion back to linear by changing the format of the render target view ("attachment" I think is the wgpu slang).

The issue with this is device compatibility from what @superdump mentioned on discord.

This is only relevant if rendering directly into the swapchain texture. The formats supported by the swapchain are more limited as they're specifically for outputting to a display. If rendering to an intermediate texture then the format support is much broader. The tonemapping / upscaling PR does allow for using an independent intermediate texture rather than rendering directly to the swapchain texture, so in some cases at least we could do this. Basically probably only the final swapchain texture might need to be an srgb format and we can use non-srgb in-between. We could even do gamma correction manually and not use an srgb format at all, though I'm not sure of exact swapchain texture format support across a variety of different backends / GPU vendors though so it may be that some/many only support srgb formats.

I asked Alex Vlachos about the license of the GDC 2015 code: https://twitter.com/AlexVlachos/status/1557662473775239175

@mockersf and @cart, RE: discord, I've cleaned this up and got it working with and without hdr.

I've reloaded this information into my mental cache and had a think through the current state of things.
SDR:

main pass f32 with tonemapping -> srgb u8 texture
Dithering should happen in the main pass on non-linear sRGB values, then be converted back to linear just before writing out

'HDR' (it's still SDR at the end as we don't have HDR output to the window yet, but it allows us to do post-processing on linear HDR before tonemapping):

main pass f32 -> linear f16 texture -> tonemapping f32 -> linear f16 texture -> upscaling f32 -> srgb u8 texture
Dithering should happen in the upscaling pass on non-linear sRGB values, then be converted back to linear just before writing out

I think this should be correct...

Nope, I forgot about upscaling in the SDR case:

main pass f32 with tonemapping -> srgb u8 texture -> upscaling f32 -> srgb u8 texture
Does dithering need to be done twice to compensate for both the intermediate quantisation errors and the upscaled errors? i.e. in both the main pass and upscaling pass?

This should be disable-able (probably on the existing Tonemapping settings, given that they are currently tied together). Disabling dither there should specialize the tonemapping pipeline to remove the dither code.

I'm not super proficient with pipeline specialization, but I think I've completed this as requested. Dithering can be toggled, but requires tonemapping to be enabled. This is reflected in the new type signature of Tonemapping.

just checking, as it's not what I understood from the discussion: should this dithering setting be ignored when HDR is enabled?

just checking, as it's not what I understood from the discussion: should this dithering setting be ignored when HDR is enabled?

Nope. Dithering should be coupled to tonemapping (at least for now, as they are logically coupled in the hdr tonemapping pass). If HDR is enabled, dithering should happen in the tonemapping pass. If HDR is disabled, it should happen in the PBR / sprite shader.
This impl doesn't quite line up with that, as we aren't specializing the tonemapping pipeline when dither is enabled, which means it is skipped when hdr is enabled.

Working on a fix now

Fixed! I also made a personal style call by renaming is_deband_dither_enabled to deband_dither. I like preferring the shorter names when the word is already a verb. I think they read better by nature of having less grammar to mentally parse.

Fixed! I also made a personal style call by renaming is_deband_dither_enabled to deband_dither. I like preferring the shorter names for bools when the word is already a verb. I think they read better by nature of having less grammar to mentally parse.

Thanks. I agree with the rename, I had the same initially but chose to follow the preexisting is_ style. :slightly_smiling_face:

bors r+


Deploy in Node Red delete all timers

When I change the flow and deploy, all timers are deleted.
This is a very poor basis for making changes to the flow.

Hi @ThomasFTL  please have a look at https://github.com/fellinga/node-red-contrib-ui-time-scheduler#restoring-schedules-after-a-reboot this section does not only refer to a reboot but also to a redeploy.
Please let me know if it helps!


Fix: update the code-server and annotation in 2023b branch

Fix: update the code-server and annotation in 2023b branch

Merging to get the code server image built.


window.storyblok is undefined

Following this guide: https://www.storyblok.com/tp/add-a-headless-CMS-to-vuejs-in-5-minutes

Using Vue 2.3.3
I am successfully loading https://app.storyblok.com/f/storyblok-latest.js into my <head> for my Vue app. Unfortunately is my component when I reference window.storyblok it returns as undefined.

Could you publish your current Source on Github? Couldn't reproduce this in my repository right here: https://github.com/DominikAngerer/storyblok-medium-vuejs
I've just released a new version of the Storyblok VueJS on Medium: https://medium.com/@dominkangerer/add-a-headless-cms-to-vuejs-in-5-minutes-8a8537e18897 It follows the same source but uses the Storyblok JavaScript Bridge as "this.$storyblok" instead of "window.storyblok" - but shouldn't make any difference.
Looking forward to your reply.
Best,
Dominik


Is C++ (cpp) version available? How different from previous version?

Is C++ (cpp) version available? How different from previous version?

@tuvshu99
Sorry, for now, the v2 version has no cpp implementation.


Multisig Popup in non Multisig account

I have two mainnet accounts active on the app for my testing.
Whichever account/address I have active, I can jump into the

Even, if that account is not connected to the multisig I would use
Lets say, I have account 1 and 2. Account 1 is connected to a multisig. But I have account 2 open when I click on show multisig vaults.
It still shows me all mutlisig vaults and I can go to the tx pending consensus. But then, as I jumped to multisig from the wrong account, it shows:

But it is not very clear why I am stuck.
Yes, it says cant do it with that account.
But still, why does it allow me to go down that road so far and then to find out that I cant approve, after several clicks? Thats kind of creating a frustration point/cul de sac.
I am sure that can be done in a better way, maybe even not letting me access that mutisig coming from that account? And with a small hint that mutisig always needs access via the right account? I know there is not totally easy answer, but wanted to point out

May you check if the above issue is valid?

This is duplicate of #2868


Packrat parser example (or implementation)

I saw your comment about adding Map[(Parser[_], String, Int)] to every parser to have a packrat behavior, but I didn't get it.
Is there any way we can access your packrat attempt? (through code example, or as part of this library)
I know it is 30x slower than original fastparse2, but it would still be faster than the packrat from std lib.

Probably not, it's lost in the mists of time. You'll have to try your own hand at adding such a feature


gray screen only

Hello, I just downloaded the win64 exe.
Upon launching I see nothing, just a window with gray background and nothing else.
I have also tried launching from CMD but no output is given to the terminal.
I have a RTL820T2 that works OK with sdr#. Running on Win7 SP1.
How can I help?
thanks

Hi
something is wring with the package, i will look into it as soon as possible

I am having the same issue and wondering if I missed some step along the way.   sdr# and HDSDR run fine, but when I start Spektrum i just get a grey window.   Running Win8.1 on a 64bit machine

Ok, i think i have solved the problem
Please, download new release package and pay attention to the new warnig in readme, you will need VC redistributable from here http://www.microsoft.com/en-us/download/details.aspx?id=30679
Please, report if it works here, so i can close the issue.

it's working now! thanks

Problem is still persistent. Upgraded to the new 1.0.1 Spektrum and also installed the VC from the link above. I have the grey screen

Yes, Problem is STILL present...... only gray screen. I am running on Windows10 x64
also I have problems running the pure processing code...  i get following erros, depending on what version of processing i try to use..
processing 3.0.1:
for the line "int status = spektrumReader.openDevice();"   i get the error  "Type mismatch, "void" does not match with "int""
processing 2.2.1:
for the  line "surface.setResizable(true);"  i get the error "Cannot find anything named "surface"
please help me, to fix it and run it...
greets,
Marcus

fallenangel3k: processing 3 is correct (error with processing 2 is due to api change from 2 to 3)
Type mismatch is because id forgot to update library on library package, you can fix it in the menatime, just replace rtlspektrum.jar from the installation package (1.0.1) and replace the one from the library package (if you get the library from here https://github.com/pavels/processing-rtlspektum-lib/releases )
mikerobertsn: so something was fixed, domething not, i will try to find another computer and try if it works or not

i found a fix to the compiled version.......   i commented out the new code
"//  int status = spektrumReader.openDevice();
// if(status < 0){
//  MsgBox("Can't open rtl-sdr device.","Spektrum");
//    exit();
//   return;
// }
"
and then i got an error complaining about that c:\rtlsdr-scanner\rtlsdr.dll is not a native application. after i either replaced the original .dll in that folder with your modified version or after deleting the folder rtlsdr-scanner the precompiled version works now properly.
but still I get an error when i try to run directly from processing 3...
for the line  "gains = spektrumReader.getGains();"   i get the error "cannot allocate a negative amount of memory"

"cannot allocate a negative amount of memory" means that spektrumReader.openDevice() failed and can't open rtl-sdr dongle

thanks, the sketch compiles properly now
for the other thing why the precompiled version did not work..... windows seems to look up the first rtlsdr.dll it can find from rtlsdr-scanner... after that it looks in the library folder for the correct one.

fallenangel3k: seems like it, i will take a look if i can do something about it, looks like this will cause problem to more people if they will have some incompatible version somwhere and windows blindly picks that up instead of correct one

I downloaded the update and still have problems, but I am wondering if I should uninstall/erase the old version or even uninstall HDSDR?   I haven't played with it much though, so I might be able to make it work if I play with a few things like that.

Same here, win 8.1 x64 with vcredist 2011, 2012 and 2013, each in x86 and x64 installed.
On my laptop with win 10 and latest VS2015 it runs perfectly.

The problem still persists. It works on one pc but not on the other.
Also another problem I found is when doing a relative measurement if I do it over say 100MHz->1GHz, I get a weird zeroing as part of the spectrum goes to zero and the other part goes in the minus direction...It basically won't perform a relative cal for a range bigger then about 200MHz Wide.
Other then that great program, very fast and easy to use!!

Hi, I downloaded the 64 bit Windows, unpacked it and also get the gray screen only. I did download the VC redistributable and rebooted the computer afterwards but with no luck.
Any more ideas on this ?
Thanks,

Ok, the library loader is the problem, i will need to change this, i hope i will find some time now, it was hard during holidays - basically the problem is, that BridJ (library i use to load native libraries into java) is primarily loading libraries from system PATHs and only after that from app directory (which i think is stupid, but it's that way) - so if you have rtl-sdr libraries somwhere in the path it breaks as this app needs special patched version of them. There is a way to change from where BridJ loads libraries but needs some work.

sir still got a grey screen, any a good news for that problem?

I have fixed the loading error, try new release (in releases). I am closing this issue as i was able to get the gray screen with wrong rtlsdr.dll in path and the new release fixes that.
If it still does not work for you, please open new issue.


Consolidate ContainerState into pylxd.container

It didn't make sense to have it in its own module.

[Current coverage][cc-pull] is 79.02%

Merging [#109][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.07%

@@             master       #109   diff @@
==========================================
  Files             9          8     -1
  Lines           307        305     -2
  Methods           0          0
  Messages          0          0
  Branches         42         42
==========================================
- Hits            243        241     -2
  Misses           53         53
  Partials         11         11

Powered by Codecov. Last updated by [4fb0ad4...2b5b468][cc-compare]
[cc-base-branch]: https://codecov.io/gh/lxc/pylxd/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/lxc/pylxd/compare/4fb0ad4dd4ddc8d9e5ebe812b21b834d835a8a7e...2b5b4687cbff0afc7ab581d797b3327b12282301
[cc-pull]: https://codecov.io/gh/lxc/pylxd/pull/109?src=pr

Kudos for setting up codecov, I love it ! Don't forget to install the browser extension to see coverage in github source, because it's awesome ^^
Fix for coverage example in rockstar/pylxd#1
:guitar:

LGTM, although I wish, as a developer, I could have my hands on the response variable.

+1

@jpic Could you expand on that? I've been really trying to hide the low-level I/O information from that (e.g. maybe it's just reading from a file, or a database, or using thrift TCP). If you've got a reason to need to request later, then we could explore that idea.


Not enough memory for contact protocol

Avoid duplicates

[x] Bug is not mentioned in the FAQ
[x] Bug is not already reported in another issue

Describe the bug
Today I got an error that there is not enough memory for the contact protocol. It's the 6th day I'm using the app on an iPhone 11 pro with 30GB free memory.
Technical details

iOS Version: iOS 13.5.1
Device: iPhone 11 pro

Thank you very much for reporting this issue. Was this error reported by the app itself or was this an error generated by the OS? (if you know)
Just for clarification: Are you talking about random access memory or disk space? It seems like you have received a disk space warning. Could you confirm that by looking at your usage settings in system preferences?

Hi @GismoNo1 ,
I think your issue might be also mentioned at:
https://github.com/corona-warn-app/cwa-app-ios/issues/645#issuecomment-644876375
Thanks.

Thank you very much for reporting this issue. Was this error reported by the app itself or was this an error generated by the OS? (if you know)
Just for clarification: Are you talking about random access memory or disk space? It seems like you have received a disk space warning. Could you confirm that by looking at your usage settings in system preferences?

Thanks for the fast reply! Since the error was reported in form of a two-button alert, I think it came from the app itself and not from the OS. Sadly, I have no screenshot because it was the device of my girlfriend. We will provide a screenshot if the error occurs again.

Hi @GismoNo1 ,
I think your issue might be also mentioned at:
#645 (comment)
Thanks.

It's not the OS-based "region changed" error, but might be associated with it. We got the "region changed" error a couple of times before and this one definitively looked different.

Hi @GismoNo1 ,
Thanks for your bug report. If you got the error again, please post the screenshot here.
The "storage" insufficient bug we also encountered it before. I think it should be from OS level instead of the App.

The bug is from the OS and should be fixed with the next iOS update according to the last paragraph in this article: heise.de

The bug is from the OS and should be fixed with the next iOS update according to the last paragraph in this article: heise.de

Good to know. So we'll see if it's patched by Apple with the next updates. Thanks to the community and the developers. Keep on the good work!

This bug seems still not to be fixed on iOS. I just had someone on twitter with this problem. Maybe the information from the heise article should be added to the iOS FAQ page. The information there is currently not saying anything about an iOS bug: https://www.coronawarn.app/de/faq/#memory


Changed the UI

I have fixed the Issue #27 It now shows the days in white with Activity on it

Thanks


CccPick and highlighter won't detect multiple hsl or multiple rgb colors in the same line

Not a question

[X] This is not a question. If you have a question, use discussions.

I investigated.

[X] I have read README.md, help documentation, and searched past issues but no solution.

Description

Environments
fedora x86
neovim 0.8.3
packer.nvim - Total plugins: 10
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
• Comment.nvim
• ccc.nvim
• gruvbox.nvim
• indent-blankline.nvim
• lualine.nvim
• nvim-colorizer.lua
• nvim-treesitter
• nvim-web-devicons
• packer.nvim
• twilight.nvim
Minimal reproducible full config
did :PackerCompile with this config
-- PLUGINS --
return require("packer").startup(function(use)
  use "wbthomason/packer.nvim"
  use {
    "uga-rosa/ccc.nvim",
    config = function()
      require("ccc").setup()
    end
  }
end}

Steps to reproduce
insert multiple hsl or multiple rgb colors in the same line and enable highlighter
Expected behavior
detects and highlights colors
Actual behavior
only detects and highlights the first color
Additional context
No response

Thank you for reporting.
Please check it out, I fixed it.