Giving some ❤ to an old repo

Why
We all know the motto "If it works don't change it", and in fact I have proven this by recently using this gem into a project. However I noticed that my contributions years ago weren't the cleanest solution. So I decide to give some love to this beloved project, by adding some modern features and improving the readability for future users.

Include new bundler gem defaults
Split domain colors logic
Implement ImageLoader
Enable extension through downsampler classes
Improve tests with real fixtures
Shared examples for downsamplers

I do not intent to this to be merged and turned into v0.5.0 I did this as a favor to my past self who needed this project and due my time constraint I could not understand what was happening in this code.

My primary motivation behind this PR is to improve readability and scalability of the project. Apparently this his an abandoned project, so I tried to cleanup a little so future readers find the fork and use it from it.


fix: set -X frozen_modules=off for globalsource eval

Starting with Python 3.11 (which monty's snekbox currently uses), many core python modules now use their frozen counterparts.
This breaks the source resolution logic for the globalsource command, which can no longer resolve inputs like warnings.warn or importlib.util.resolve_name.
Setting -X frozen_modules=off reverts this to the <=3.10 behavior.
Not fully integration-tested since I didn't feel like setting up a snekbox instance, but running the script in 3.11 with and without the flag produces the expected results respectively.
ref: https://canary.discord.com/channels/755868545279328417/1079165084879835186

Oddly enough, this seems to actually break global source for everything. This may be an artifact of how the snekbox container is made, so i'll rebase my instance on upstream before troubleshooting more

Oddly enough, this seems to actually break global source for everything.

My bad, snekbox only adds -c if you don't specify other args, so it ended up trying to run /home/"""\nDo not import this file.\n... as a script file :>
Works fine now.


Wallet DFI: missing tx history

Hi,
App version 2.1.6
With DFI, only the last three transactions are displayed for rewards.
The amount is displayed correctly in the balance. The rewards also arrive. In the case of a transaction, it only shows the last 3 transactions and is overwritten with a new transaction.
At ETH it is displayed normally with no missing transactions.
App-log-12012021.log

I have a similar issue. I cannot see al transactions after restoring the wallet from 24 mnemoric key. further using the command: istaccounthistory mine {"maxBlockHeight":560002,"depth":0}    (evtl. other blockheights.... ) there seem to be different types available. Is there a explanation of the different types as e.g. external received DFI (that not belong to my addresses are shown as AccountToAccount which is confusing) there are several receive but this should be a reward I guess. the transaction fee should be commission but also seems to show up sometimes as sent sometimes as receive. Can someone clarify about the different types:
Rewards
sent
receive
AccountToAccount
Commission

I have a similar issue. I cannot see al transactions after restoring the wallet from 24 mnemoric key. further using the command: istaccounthistory mine {"maxBlockHeight":560002,"depth":0}    (evtl. other blockheights.... ) there seem to be different types available. Is there a explanation of the different types as e.g. external received DFI (that not belong to my addresses are shown as AccountToAccount which is confusing) there are several receive but this should be a reward I guess. the transaction fee should be commission but also seems to show up sometimes as sent sometimes as receive. Can someone clarify about the different types:
Rewards
sent
receive
AccountToAccount
Commission

Hi @luckythai , thanks for your feedback and logs. Please give us time to investigate this issue. Thank you.
 Have you tried Refresh UTXOs in Settings?

Hi @luckythai , thanks for your feedback and logs. Please give us time to investigate this issue. Thank you.
 Have you tried Refresh UTXOs in Settings?

Hi @salomonkarsten , thanks for your feedback. Regarding your transaction history not being displayed completely, you can try the Refresh UTXOs in Settings — as mentioned above.
If your issue persist, kindly send your app logs. If possible, do attach screenshots / screen recordings. Thank you.
Regarding your question on definition of different type of command, you could type help in the app's CLI or turn to Telegram and seek answers from the community.
Telegram (EN): https://t.me/defiblockchain
DeFiChain
Telegram (DE): https://t.me/defiblockchain_DE

Hi @salomonkarsten , thanks for your feedback. Regarding your transaction history not being displayed completely, you can try the Refresh UTXOs in Settings — as mentioned above.
If your issue persist, kindly send your app logs. If possible, do attach screenshots / screen recordings. Thank you.
Regarding your question on definition of different type of command, you could type help in the app's CLI or turn to Telegram and seek answers from the community.
Telegram (EN): https://t.me/defiblockchain
DeFiChain
Telegram (DE): https://t.me/defiblockchain_DE

I have exactly the same issue: no transactions are shown in the Transaction list since 27.12.2020, although there have been plenty! And another thing: I have two wallets. When I switch from one to the other (via 24 Words) I still see the same transactions! That can't be. I have tried clicking "Refresh UTXO" - after 16 hours it was still spinning (I have gigabit Internet).
My question: where are the program files stored for the MacOS Version of the app? Maybe I could delete all caches manually in the library and force the app to get all data again. Maybe then I could get access to my Transaction history (which I need soon for my taxes). Thanks!
A thought: will there be a way to export a CSV / excel file straight from the app at some time? Once that exists, I could really do LM & Staking from the app.

I have exactly the same issue: no transactions are shown in the Transaction list since 27.12.2020, although there have been plenty! And another thing: I have two wallets. When I switch from one to the other (via 24 Words) I still see the same transactions! That can't be. I have tried clicking "Refresh UTXO" - after 16 hours it was still spinning (I have gigabit Internet).
My question: where are the program files stored for the MacOS Version of the app? Maybe I could delete all caches manually in the library and force the app to get all data again. Maybe then I could get access to my Transaction history (which I need soon for my taxes). Thanks!
A thought: will there be a way to export a CSV / excel file straight from the app at some time? Once that exists, I could really do LM & Staking from the app.

Hello sunny ville,
I also need transaction history for tax.
@Sunnyville1234 do you know how to transfer the blocktime in listaccounthistory command to UTC date and time. Further lot of transaction types are strange. I made a excel script to transform the structure after copied in a textile to excel. But some state AccountToAccount transaction from cake also  type should be receive.....
I guess I will need to add a check if address belongs to me. I also need it for tax.

Hello sunny ville,
I also need transaction history for tax.
@Sunnyville1234 do you know how to transfer the blocktime in listaccounthistory command to UTC date and time. Further lot of transaction types are strange. I made a excel script to transform the structure after copied in a textile to excel. But some state AccountToAccount transaction from cake also  type should be receive.....
I guess I will need to add a check if address belongs to me. I also need it for tax.

Hey Salomon,
sadly, I have no idea how to convert the block time.
The first issue that needs to be solved, in my opinion, is that all the data (all transactions) are shown within the app.
Next, there should be a way to export these as CSV. Even if they are not perfectly formatted, that would be a start! Maybe the CSV can be formatted so that it can be identical to the new export worked on currently by the CAKE Team.

Hey Salomon,
sadly, I have no idea how to convert the block time.
The first issue that needs to be solved, in my opinion, is that all the data (all transactions) are shown within the app.
Next, there should be a way to export these as CSV. Even if they are not perfectly formatted, that would be a start! Maybe the CSV can be formatted so that it can be identical to the new export worked on currently by the CAKE Team.

hi izzycsy,
Unfortunately nothing has changed through refreshUTXO
But I think it can only be solved by deleting a specific file. Or by deleting the entire app and the folder by reinstalling it?
Now that the app works particularly well. The only mistake is the view of the rewards on DFI.

[App-log-12012021_2.log](https://github.com/DeFiCh/app/files/5817229/App-log-12012021_2.log)
[binary-log-12012021_2.log](https://github.com/DeFiCh/app/files/5817231/binary-log-12012021_2.log)

hi izzycsy,
Unfortunately nothing has changed through refreshUTXO
But I think it can only be solved by deleting a specific file. Or by deleting the entire app and the folder by reinstalling it?
Now that the app works particularly well. The only mistake is the view of the rewards on DFI.

[App-log-12012021_2.log](https://github.com/DeFiCh/app/files/5817229/App-log-12012021_2.log)
[binary-log-12012021_2.log](https://github.com/DeFiCh/app/files/5817231/binary-log-12012021_2.log)

hi izzycsy,
today update to 2.1.9
again refresh UTXO, nothing changed.

[App-log.zip](https://github.com/DeFiCh/app/files/5817258/App-log.zip)
[App-log-15012021.log](https://github.com/DeFiCh/app/files/5817261/App-log-15012021.log)

hi izzycsy,
today update to 2.1.9
again refresh UTXO, nothing changed.

[App-log.zip](https://github.com/DeFiCh/app/files/5817258/App-log.zip)
[App-log-15012021.log](https://github.com/DeFiCh/app/files/5817261/App-log-15012021.log)

10 entries per page.
no new page will be created.
Made a new liquidity on the 12th and it only remains with three rewards since the 10th.
the display in the wallet is only incorrect for include rewards. And only at DFI.

10 entries per page.
no new page will be created.
Made a new liquidity on the 12th and it only remains with three rewards since the 10th.
the display in the wallet is only incorrect for include rewards. And only at DFI.

applogs.log
attached you can find my app Log file. I tried the update UTXO - it ran for 1,5 days without finishing (I have very fast internet). Today, the transactions in both wallets end on the 27.12.2020. And, very interesting: both wallets show the exact same transaction history, which is impossible, as I never sent anything between the two! I really think that somewhere there is a cache that needs to be cleared. Where can I find this on OS X? Simply deleting and reinstalling the app does not solve the issue.

applogs.log
attached you can find my app Log file. I tried the update UTXO - it ran for 1,5 days without finishing (I have very fast internet). Today, the transactions in both wallets end on the 27.12.2020. And, very interesting: both wallets show the exact same transaction history, which is impossible, as I never sent anything between the two! I really think that somewhere there is a cache that needs to be cleared. Where can I find this on OS X? Simply deleting and reinstalling the app does not solve the issue.

Hi @luckythai , thanks for the screenshots, can you send your logs again please, it looks like it's broken. Please give us time to investigate this. Thank you.

Hi @luckythai , thanks for the screenshots, can you send your logs again please, it looks like it's broken. Please give us time to investigate this. Thank you.

Hi @Sunnyville1234 , thanks for your feedback. I understand your issue. Please give us time to investigate, I advice you not to delete folders that you're unfamiliar with. Thank you for your patience.

Hi @Sunnyville1234 , thanks for your feedback. I understand your issue. Please give us time to investigate, I advice you not to delete folders that you're unfamiliar with. Thank you for your patience.

hi izzycsy,
app.log from 12th and app.log from 15th
thank you for the effort
App-log-12012021_2.log
App-log-15012021.log

hi izzycsy,
app.log from 12th and app.log from 15th
thank you for the effort
App-log-12012021_2.log
App-log-15012021.log

Hi @luckythai , well received, please give us time to investigate, it's not advisable to delete the app and not to install older version for your safety and security, our team is constantly working on improving the app and solving its issues. We regularly do releases, so if you are not in a big hurry I would suggest staying on the latest version and wait for a fix. Thank you for your patience.

Hi @luckythai , well received, please give us time to investigate, it's not advisable to delete the app and not to install older version for your safety and security, our team is constantly working on improving the app and solving its issues. We regularly do releases, so if you are not in a big hurry I would suggest staying on the latest version and wait for a fix. Thank you for your patience.

Can you clarify the Difference in commission and rewards. Further for transactions how to see the fee in the history. All this info is needed for tax...

Can you clarify the Difference in commission and rewards. Further for transactions how to see the fee in the history. All this info is needed for tax...

Hi @luckythai @salomonkarsten @Sunnyville1234 , update v2.1.10 is out https://defichain.com/downloads/. DFI missing transaction history is still under investigation, thank you for your patience.
@salomonkarsten could you send me your logs again please? It redirects me to an error page.

Also here are the definitions to your question:
Sent: tokens sent out of DeFi app
Receive: tokens received to DeFi app
Account to account: when you send a token to another address
Commission: the reward you receive when people swap on the pool that you’ve invested in
Rewards: DFI received from Liquidity Pool

Hi @luckythai @salomonkarsten @Sunnyville1234 , update v2.1.10 is out https://defichain.com/downloads/. DFI missing transaction history is still under investigation, thank you for your patience.
@salomonkarsten could you send me your logs again please? It redirects me to an error page.

Also here are the definitions to your question:
Sent: tokens sent out of DeFi app
Receive: tokens received to DeFi app
Account to account: when you send a token to another address
Commission: the reward you receive when people swap on the pool that you’ve invested in
Rewards: DFI received from Liquidity Pool

@izzycsy THanks for your reply and the intention to work on this issue! I just had a look, I cannot see a swap just made. It appeard about 7 blocks later in the chain and is also visible using the command: listaccounthistory mine {"maxBlockHeight":576788,"depth":0}
Nevertheless the app does not show this poolSwap type of transaction (by the way a type not stated above!) .
Further how to distinguish a AccountToAccount type from a receive. One needs to crosscheck if the address owner belongs to me?
Thanks in advance

@izzycsy THanks for your reply and the intention to work on this issue! I just had a look, I cannot see a swap just made. It appeard about 7 blocks later in the chain and is also visible using the command: listaccounthistory mine {"maxBlockHeight":576788,"depth":0}
Nevertheless the app does not show this poolSwap type of transaction (by the way a type not stated above!) .
Further how to distinguish a AccountToAccount type from a receive. One needs to crosscheck if the address owner belongs to me?
Thanks in advance

@izzycsy
AppLog.log
Attached the requested Applog

@izzycsy
AppLog.log
Attached the requested Applog

Hi @salomonkarsten , logs well received. Please give us time to investigate this issue.
You can further understand your account details using the command listaccounts {} true true true. To access all types of commands, type help in the CLI.

Hi @salomonkarsten , logs well received. Please give us time to investigate this issue.
You can further understand your account details using the command listaccounts {} true true true. To access all types of commands, type help in the CLI.

@izzycsy Hello dear Izzy,
I am using the listaccounts command already intensively. Thanks.
As I understand USDT Transfers from an Extertal account will be displayed with the history command as AccountToAccount type and not as receive. So one alo needs to crosscheck if the address belongs to oneself . The actual history in the graphics interface definitively does not display everything.
Can you give advise how to transfer blocktime to UTC? I mean it should be given in the code already. Evtl. You can paste the code snipped here?

@izzycsy Hello dear Izzy,
I am using the listaccounts command already intensively. Thanks.
As I understand USDT Transfers from an Extertal account will be displayed with the history command as AccountToAccount type and not as receive. So one alo needs to crosscheck if the address belongs to oneself . The actual history in the graphics interface definitively does not display everything.
Can you give advise how to transfer blocktime to UTC? I mean it should be given in the code already. Evtl. You can paste the code snipped here?

Hi @salomonkarsten , I see. Well, if I understand correctly, you're unable to transfer USDT as well? If so, there’s a temporary workaround for this, attached is the link that might help you https://www.reddit.com/r/defiblockchain/comments/kvsw4l/stepbystep_workaround_sending_btc_eth_usdt_and/.
For missing transaction history, the team is still investigating the issue. Thank you for your patience.

Hi @salomonkarsten , I see. Well, if I understand correctly, you're unable to transfer USDT as well? If so, there’s a temporary workaround for this, attached is the link that might help you https://www.reddit.com/r/defiblockchain/comments/kvsw4l/stepbystep_workaround_sending_btc_eth_usdt_and/.
For missing transaction history, the team is still investigating the issue. Thank you for your patience.

@izzycsy hello Bella,
is there a way to see the amount transaction fee from any specific transaction on command line? It would be great to add it to the history. As mentioned the main purpose of fiddling with history is tax reports for me!.
Thanks in advance.

@izzycsy hello Bella,
is there a way to see the amount transaction fee from any specific transaction on command line? It would be great to add it to the history. As mentioned the main purpose of fiddling with history is tax reports for me!.
Thanks in advance.

Hi @salomonkarsten , I don't think that's available in the app at the moment, will feedback to the team.

Hi @salomonkarsten , I don't think that's available in the app at the moment, will feedback to the team.

@izzycsy Hello Izzy,
I tried to use the command in the apps command line interface:
listaccounthistory mine {"maxBlockHeight":535339,"depth":498,"limit":10000}
it will list if the depth and limit are not taken too high. The above stated is already on its limit  on a windows 10 with 20GB internal memoy.
Afterwards I copy from the result to clipboard. just to highlight it needs 1 minute. after Copy it, I want to bring the curser back to enter the Clear command. and get the next set of approx 500 blocks.....
It needs another two minute just to be able to enter the command. To display "just" 10.000 entries it really is a long time.
Also the instance seems to run 7 times. right after opening the app.
screenshot of cpu usage to just bring the cursor back as well as applog. included.

AppLog.log

@izzycsy Hello Izzy,
I tried to use the command in the apps command line interface:
listaccounthistory mine {"maxBlockHeight":535339,"depth":498,"limit":10000}
it will list if the depth and limit are not taken too high. The above stated is already on its limit  on a windows 10 with 20GB internal memoy.
Afterwards I copy from the result to clipboard. just to highlight it needs 1 minute. after Copy it, I want to bring the curser back to enter the Clear command. and get the next set of approx 500 blocks.....
It needs another two minute just to be able to enter the command. To display "just" 10.000 entries it really is a long time.
Also the instance seems to run 7 times. right after opening the app.
screenshot of cpu usage to just bring the cursor back as well as applog. included.

AppLog.log

Hi @salomonkarsten , from your comment above, you may be facing the issue Corrupted block database, I'll link you to https://github.com/DeFiCh/app/issues/138, please copy and paste what your comment to the link provided. which we can further discuss on the problem. Logs well received.
Let’s keep this thread related to what the original author opened. Thank you for your understanding.

Hi @salomonkarsten , from your comment above, you may be facing the issue Corrupted block database, I'll link you to https://github.com/DeFiCh/app/issues/138, please copy and paste what your comment to the link provided. which we can further discuss on the problem. Logs well received.
Let’s keep this thread related to what the original author opened. Thank you for your understanding.

Hi @luckythai @salomonkarsten @Sunnyville1234 @MrWild1412 , update v2.1.12 is out https://defichain.com/downloads/.
 Thank you.
@Sunnyville1234 , after you've installed v2.1.12, and if transactions history that does not belong to you appear, try the Reindex Option in Settings.

Hi @luckythai @salomonkarsten @Sunnyville1234 @MrWild1412 , update v2.1.12 is out https://defichain.com/downloads/.
 Thank you.
@Sunnyville1234 , after you've installed v2.1.12, and if transactions history that does not belong to you appear, try the Reindex Option in Settings.

@izzycsy  Did the update and the reindex. Problem is still there AppLog.zip

@izzycsy  Did the update and the reindex. Problem is still there AppLog.zip

Hi izzycsy, no, even with this app v2.1.12, no other page for rewards. Still limited to 3 rewards. Also reidex executed with no success.
I will install a new version on a VM to test whether the error occurs there. If so, it is not due to the database.
Is it possible to install the same wallet address on two machines?
is there a parameter for reindex when starting the app, or does it only work in the app with the switch?

logs.zip

Hi izzycsy, no, even with this app v2.1.12, no other page for rewards. Still limited to 3 rewards. Also reidex executed with no success.
I will install a new version on a VM to test whether the error occurs there. If so, it is not due to the database.
Is it possible to install the same wallet address on two machines?
is there a parameter for reindex when starting the app, or does it only work in the app with the switch?

logs.zip

Hi @luckythai @MrWild1412 , thanks for the update, will continue to investigate, thank you.

Hi @luckythai @MrWild1412 , thanks for the update, will continue to investigate, thank you.

Hi @luckythai @salomonkarsten @Sunnyville1234 @MrWild1412 , update v2.1.13 is out https://defichain.com/downloads/.
Do give a thumbs up to this comment if your issue has been resolved, otherwise, you may reopen this issue with new information (include screenshots) and app logs. Thank you.

Hi @luckythai @salomonkarsten @Sunnyville1234 @MrWild1412 , update v2.1.13 is out https://defichain.com/downloads/.
Do give a thumbs up to this comment if your issue has been resolved, otherwise, you may reopen this issue with new information (include screenshots) and app logs. Thank you.

Hi, why is the issue closed? I have the same problem since January with the rewards transaction history. Is this problem solved?

My problem is still there. Only the last 3 rewards are displayed in the app under transactions. They are available when the data is exported. both in the app 2.1.17 / 2.3.0 / 2.3.1 / Wallet - 2.3.2

Hi @loric723 	, regarding the issue Missing tx history, we can further discuss on the problem there. We would like to keep same issues in one thread. For your case, try to check the Include Rewards box. Thank you.

Hi @izzycsy, yes I have checked the "Include reward transactions box" in the past and also reindex and Refresh Utxos. I follow now the issue https://github.com/DeFiCh/app/issues/529. Intersting is that the defichain portfolio App showing me all rewards.


example with gcc

Hi all,
this is my latest use-case. As a reminder, I'm trying to (automatically) convert a Makefile to CWL.
The makefile would be
.PHONY:all
all:a.out
a.out: source1.o source2.o
	gcc -o a.out source1.o source2.o
source1.o : source1.c source1.h
	gcc -Wall -c -o source1.o source1.c
source2.o : source2.c
	gcc -Wall -c -o source2.o source2.c

it compiles two sources and link them . See the code under : https://github.com/lindenb/cwl-workflows/tree/compile/workflows/compile
My current broken CWL workflow is here: https://github.com/lindenb/cwl-workflows/tree/compile/workflows/compile
My main problems :

the inputs for the "#compile" are existing files, how should I declare them in the step
I'm puzzled how to declare the final output of my workflow; it should be a step specific output id isn't it ? but in https://github.com/common-workflow-language/workflows/blob/master/workflows/hello/hello.cwl  it's the output of a tool.
there is something wrong in the path, while the makefile above works, the $PATH is 'lost' in cwl-runner and cc1 the subprogram of gcc is not found.
how should I declare and run the "#link" tool to use both compiled object ?

Thank you for your help,
Pierre

Hi, I am on holiday this week and will be able to respond when I am back next week.
On August 5, 2015 3:39:09 AM EDT, Pierre Lindenbaum<EMAIL_ADDRESS>wrote:

Hi all,
this is my latest use-case. As a reminder, I'm trying to
(automatically) convert a Makefile to CWL.
The makefile would be
.PHONY:all
all:a.out
a.out: source1.o source2.o
	gcc -o a.out source1.o source2.o
source1.o : source1.c source1.h
	gcc -Wall -c -o source1.o source1.c
source2.o : source2.c
	gcc -Wall -c -o source2.o source2.c

it compiles two sources and link them . See the code under :
https://github.com/lindenb/cwl-workflows/tree/compile/workflows/compile
My current broken CWL workflow is here:
https://github.com/lindenb/cwl-workflows/tree/compile/workflows/compile
My main problems :

the inputs for the "#compile" are existing files, how should I
declare them in the step
I'm puzzled how to declare the final output of my workflow; it should
be a step specific output id isn't it ? but in
https://github.com/common-workflow-language/workflows/blob/master/workflows/hello/hello.cwl
it's the output of a tool.
there is something wrong in the path, while the makefile above works,
the $PATH is 'lost' in cwl-runner and cc1 the subprogram of gcc is not
found.
how should I declare and run the "#link" tool to use both compiled
object ?

Thank you for your help,
Pierre
You can view, comment on, or merge this pull request online at:
https://github.com/common-workflow-language/workflows/pull/3
-- Commit Summary --

example with gcc

-- File Changes --
M workflows/README.md (2)
A workflows/compile/README.md (19)
A workflows/compile/compile1.cwl (68)
A workflows/compile/source1.c (3)
A workflows/compile/source1.h (1)
A workflows/compile/source2.c (1)
-- Patch Links --
https://github.com/common-workflow-language/workflows/pull/3.patch
https://github.com/common-workflow-language/workflows/pull/3.diff

Reply to this email directly or view it on GitHub:
https://github.com/common-workflow-language/workflows/pull/3

Hi @lindenb
Try this:
#!/usr/bin/env cwl-runner

- id: "#compile"
  class: CommandLineTool
  inputs:
    - id: "#src"
      type: File
      inputBinding: {}
    - id: "#object"
      type: string
      inputBinding:
          prefix: "-o"
  outputs:
    - id: "#compiled"
      type: File
      outputBinding:
          glob:
             engine: cwl:JsonPointer
             script: /job/object
  baseCommand: gcc
  arguments:
    - "-c"
    - "-Wall"

- id: "#link"
  class: CommandLineTool
  inputs:
    - id: "#objects"
      type:  { type: array, items: File }
      inputBinding:
        position: 2
    - id: "#output"
      type: string
      inputBinding:
          position: 1
          prefix: "-o"
  outputs:
    - id: "#executable"
      type: File
      outputBinding:
          glob:
             engine: cwl:JsonPointer
             script: /job/output
  baseCommand: gcc

- id: "#main"
  class: Workflow
  requirements:
    - class: EnvVarRequirement
      envDef:
        - envName: PATH
          envValue: /usr/bin
  inputs: []
  outputs:
    - id: "#main.output"
      type: File
      source: "#linkobj.executable"
  steps :
    - id: "#compilesources-src1"
      run: {import: "#compile"}
      inputs:
         - { id: "#compilesources-src1.src" , default: {class: File, path: "source1.c" } }
         - { id: "#compilesources-src1.object" , default: "source1.o" }
      outputs:
        - { id: "#compilesources-src1.compiled" }

    - id: "#compilesources-src2"
      run: {import: "#compile"}
      inputs:
         - { id: "#compilesources-src2.src" , default: {class: File, path: "source2.c" } }
         - { id: "#compilesources-src2.object" , default: "source2.o" }
      outputs:
         - { id: "#compilesources-src2.compiled" }

    - id: "#linkobj"
      run: {import: "#link"}
      inputs:
         - { id: "#linkobj.objects" , source: ["#compilesources-src1.compiled", "#compilesources-src2.compiled"] }
         - { id: "#linkobj.output" , default: "a.out" }
      outputs:
         - { id: "#linkobj.executable" }

Hello @lindenb, does @tetron 's suggestion work for you?

Hi, I'm away from my mail/sources. I'll test this later.
P.

@tetron @mr-c I'm back from my holidays, the solution you provided works fine , thanks !
I've pushed the changes, feel free to merge :-)


gtk3vim: no horiz. cursor movement visible after let &gcr and set ruler

Hello,
the GTK3-support (since 7.4.1402) is really really cool. Thank you a lot.
I found one (crazy and subtle) bug (in my compiled 7.4.1411 version):

Start gtk3vim with gtk3vim -u NONE -U NONE -i NONE
Enter some text (in insert-mode of course)
Leave insert-mode and enter :let &gcr = &gcr.",a:blinkon0"
Enter :set ru
Move the cursor horizontally (e.g. with the h key)

Expected behaviour: see block-cursor movement and position-update in ruler
Seen behaviour: block-cursor is not moved, but (internal) cursor-position is changed (can be seen in the position in the ruler)
I can reproduce this bug only with the ruler-option and only if I change the option gcr with let. The bug didn't show up, if I use the set-command to change the option gcr.

Thank you for reporting.
A patch for fixing the issue was included in the upstream master a few hours ago.
Hopefully, this works for you.
Regards,
Kazunobu Kuriyama

Thank you very much, Kazunobu Kuriyama. Patch 1497 fixed the issue for me.
Bye
C. Ludwig


second Y axis

I'd like to be able to create a chart like the one below.

Color map for vertical axises looks ideal in this example. But what if there are 5 plots for main axis, and 5 for secondary.
How to understand which graph on which axis?

How does the user know which graph is on which axis?

@StendProg this is a good question! The user can control plottable object colors and also axis colors. It will be the user's responsibility to color-code their data appropriately.

Most cases will probably be just one plot per axis. An example of this is plotting a signal and its first derivative on the same plot (described in https://github.com/swharden/pyABF/issues/85#issuecomment-518745690 and pictured below).
In cases where multiple plots exist per axis, the user could make all Y plots blue and all Y2 plots orange. If they must be distinguished, thick lines vs. thin lines, or different markers. The legend will work for plottables on all axes.

Axis can be rainbow color mapped. From top to bottom with plot colors. But it may be hard to implement. Numbers filled with 2 different colors may looks ugly. Not familar with graphic editors to easy test it..

Not familiar with graphic editors to test these ideas

I'm familiar with graphics editors! I'll make some example plots using different color schemes and post the examples here so we can look at them and see which color styles look best.

I'll make some example plots using different color schemes

I started doing this but decided to take a step back and see how other graphing libraries solve this problem. Rather than invent a new rainbow-based method, I think we should use the "principle of least astonishment" and choose a conventional method. Two primary methods are commonly used:

multiple floating Y axes:  This is the only option if the goal is to plot 3 or more different scales. I don't think these look very nice, and it would be very complicated to implement.

two Y axes with color-coded labels: This option is simple to implement. However, as @StendProg noted, if there are 5 plots for each axis it could get difficult to tell them apart.

I have decided to develop the second option. We can always come back to this topic later and add the first option too.
Matplotlib Example (5 datasets per axis)
Multi-axis plots with 5 datasets per axis looks ugly because it is bad figure design (not because it is a limitation of the graphing library). Users are encouraged not to do this with any plotting library.
import matplotlib.pyplot as plt
import numpy as np

def randomData():
    return np.cumsum(np.random.random_sample(100)-.5)

plt.figure(figsize=(6, 4))

axis1 = plt.gca()
axis1.set_ylabel("primary Y", color='b', fontsize=16)

for i in range(5):
    axis1.plot(randomData(), color='b')

axis2 = axis1.twinx()
axis2.set_ylabel("secondary Y", color='r', fontsize=16)
for i in range(5):
    axis2.plot(randomData()*1000, color='r')

plt.title("Multi-Y Demo", fontsize=24)
plt.tight_layout()
plt.savefig("multi-y.png")
plt.show()

Multi-Y Examples (from Google)
GraphPad

Matplotlib

NI DIAdem (?)

Excel

Mendix

MatLab

JPGraph

OriginLab

@StendProg I think this is looking pretty good! What do you think?

Define second axis when setting-up the plot
https://github.com/swharden/QuickPlot/blob/83bb510a1659412f0ec02fd0fe328a77d4a52bf2/demos/WinFormsDemos/FormMultiY.cs#L37-L40
Control second axis
https://github.com/swharden/QuickPlot/blob/83bb510a1659412f0ec02fd0fe328a77d4a52bf2/demos/WinFormsDemos/FormMultiY.cs#L47
https://github.com/swharden/QuickPlot/blob/83bb510a1659412f0ec02fd0fe328a77d4a52bf2/demos/WinFormsDemos/FormMultiY.cs#L53

Maybe i am wrong, but i expected different result. During zoom i think it need to zoom both plots, and redraw both axises. In you demo zoom affected only primary plot and axis. Secondary stay AutoAxis all the time.
Also it would be nice to add some param(or default behavior). Then it enabled axis labels filled with plot color automatic, not but manual setup.
Setting secondary axis flag in Style param also a bit confusing. I think Style only about fonts and colors before taking deeper look.
As part of constructive criticism, you done great job anyway.

I prefer setup secondary axis with some of this interface:

Scatter(dataX, data2, style2, secondaryY: true);
Scatter(xs: datax, ys: null, ysSecondary: data2);

What would you think?

The mouse should pan/zoom both Y axes at the same time

You're right. I checked, and this is how matplotlib does it too.

When data is plotted on the second axis, it would be nice if the second axis would get colored the same color as the data automatically

I like this idea too! I'll do this.

Setting secondary axis flag in Style param also a bit confusing. I think Style only about fonts and colors before taking deeper look. What about Scatter(dataX, data2, style2, secondaryY: true);?

Scatter plots will have customization options like color, linewidth, marker size, marker shape, anti-aliasing, secondary axis, errorbars, and maybe more. My hope is that all these options can be packaged into the Style object. My goal is to avoid having a large number of arguments.
ScottPlot's argument list got out of control: Plot.cs#L277-L289
Ideally all the plotting functions would just take the data and the config object.
Maybe it would be more clear if I called it DataConfig?
This still needs some work to figure out the best way to proceed 🤔

Config or settings would be good, Style is confusing name, and i think not only me.
Style class can be moved inside like Settings.Style

Maybe we should make two objects, one for config and one for style?
figure.plot.Scatter(double[] xs, double[] ys, PlotConfig config, PlotStyle style)

PlotConfig would contain: Y axis, anti-aliasing, draggable, label
PlotStyle would contain: line color, line width, line style, marker color, marker width, marker style

Take you own decission on api. I can add only one thing, people don't like to go deep in specs, and want to get best result with simple params.

I modified the user controls so the mouse now controls both Y axes at the same time.
I'll come back around later and improve the style system.

following-up, argument-rich methods are used now and colors of axis labels and ticks are easy to configure:
double[] xs = QuickPlot.Generate.Consecutative(100);
double[] ysSmall = QuickPlot.Generate.Sin(100, mult: .01);
double[] ysBig = QuickPlot.Generate.Cos(100, mult: 100);

var figure = new QuickPlot.Figure();
figure.plot.Scatter(xs, ysSmall, color: SkiaSharp.SKColors.Blue);
figure.plot.Scatter(xs, ysBig, secondY: true, color: SkiaSharp.SKColors.Red);

figure.plot.YLabel("Primary Y", color: SkiaSharp.SKColors.Blue);
figure.plot.YLabel("Secondary Y", secondY: true, color: SkiaSharp.SKColors.Red);
figure.plot.XLabel("Horizontal Axis");
figure.plot.Title("Twin Y Axis Demo");


Update autofill to 0.0.5_test

Reviewer:
Asana: https://app.asana.com/0/1203250671200013/1203250671200013
Autofill Release: https://github.com/duckduckgo/duckduckgo-autofill/releases/tag/0.0.5_test
Description
Updates Autofill to version 0.0.5_test.
Autofill 0.0.5_test release notes
And again, more testing with emoji 🧑💻.

Let's see now.
Test in bold

Steps to test
This release has been tested during autofill development. For smoke test steps see this task.

Test PR. Closing.


Multiline tab bar in editor

Hey guys, Spyder is my No. 1 choice for my research work, and I teach it in all my classes - great job!
I have a feature request. It would be very useful to have multiple lines in the tab bar when the tabs don't fit in one line. I've seen this in PyCharm (I think).
Now scrolling to click the tab limits overview of the open files. Using the outline, file switcher or folder icon to the left is possible of course, but this feature would be nice as an option for users.
Thanks.

It's a good idea, and it has been suggested several times before. However, we don't have time to implement it right now.

Ok, no worries. I'm looking forward to Spyder 4 and the ton of goodies it's gonna bring! : )
Keep up the awesome work!

This would be pretty huge for me as well, especially without the ability to make the top tab bar vertically-aligned to the window borders, since I typically work with a horizonatal split with editors not wider than 80 chars and many files open, and thus making it very difficult to find desired files and keep things organized.

@CAM-Gerlach the Outline explorer can be used as a vertical tab bar as you can display all open files there. Just right-click on the background and tick show all files. Then if you collapse all it will just give you the files. Of course if you want to use it to jump at specific points in the file then it might get messy.

It may not be the most elegant solution, but sounds like a really handy tip—thanks!

What about having another type of widget which is simply an open file list? Similar to Outline explorer, with fuzzy filtering and optional alphabetical sorting, with the plain purpose to activate the correct tab? In the standard Spyder layout, it would fit well in the same column as the Outline explorer.
(Btw, there is an open issue for multiline tab bars in Qt https://bugreports.qt.io/browse/QTBUG-2061 .
Something similar in C++ https://github.com/psi-plus/psi-plus-snapshots/blob/master/src/widgets/tabbar.cpp .
One of many questions clarifying the unavailability: https://stackoverflow.com/questions/8542115/qtabwidget-with-multiple-line )

I think we can use the generic switcher to implemt this and all other navigational patterns to avoid cluttering the UI with more permanent widgets.

I would be fine with just having the outline explorer(no tabs at all) to change files if we could add drag and drop reordering to outline explorer

No widgets are permanent...
The problem, as I see it, with using the outline explorer, is that it then looses its purpose as an Outline explorer... As soon as you start expanding, the overview of files gets lost.
My use case is typically that I open too many files (20-30) when browsing through the source and see how things depends on each other and then I should try to find a single one again. Most often I just open the file again as it is easier than finding it in that top left hand menu (as it is not in alphabetical order), or I do not want to collapse the outline explorer as I want to be able to find my way back there. Even if I do not know exactly where the file is.
Just noted that the Outline explorer can be sorted alphabetically, so that is nice. Now I just need to make a local patch with two instances of it...
But clearly, the work flow differs depending on equipment. I have more stuff open on my desktop compared to my laptop. However, adding (simple) features that are useful for some and possible to disable for others is probably quite often a reasonable idea. (Even with maintenance issues etc.)

By generic switch I meant something like what VSCode, Sublime, PyCharm and many other IDEs implement to browse different things.
Like this (from VSCode):

Spyder already offers this with Ctrl+P

A new generic switcher is implemented here:
https://github.com/spyder-ide/spyder/pull/9133

My stance is that we do not want to end up with too many ways of doing the same thing (we are already here...). We have too many things/widgets/preferences/panels and we cannot implement all the variants all users would like to have.

Ah, that solves my problem! Thanks!

Now regarding the original authors question

I have a feature request. It would be very useful to have multiple lines in the tab bar when the tabs don't fit in one line. I've seen this in PyCharm (I think).

The default QTabBar widget does not provide this functionality and seems like implementing that is too much work, for what I consider little gain. We need to start encouraging some "Spyder best practices" and for this use case the bes practice is:  Use the file switcher Ctrl+P
So I do not think this issue will be implemented any time soon or at all.

I think that the outline explorer(with some improvements and on the left by default) and the file switcher will be enough to solve this.
If we are only keeping this for double tab rows to be implement, then I vote to close this. Double tab rows are confusing and not many applications use them.

If we are only keeping this for double tab rows to be implement, then I vote to close this. Double tab rows are confusing and not many applications use them.

Agreed!

Thanks to everyone for the input! I also consider it's not worth it to implement this, so I'm closing this one.


1 | Two Sum | C++

1 | Two Sum Problem in C++
What will change -
Type of Issue -

[x] Adding New Code

Programming Language

[x] C++

Can you assign this to me @aryaniiit002 ?

assign me to this problem please, thankyou

Hi,
I would like to contribute to this, I solved it very simply in LeetCode. Kindly allow me to solve this issue.
Thanks & Regards
Shresth Jain

@shresth12-jain If you want to solve some problem,create your own issue on the problems of leetcode which are not present in this repository and ask the maintainers to assign it to you.

I have solve quite a good amount of questions on leetcode and that too with cpp. So I think this I can do very easily.
So, I will request you to assign this problem to me.

@shresth12-jain @Aman23092001 Create an issue to contribute


prototype query interface for engine

prototype query interface for engine
Some prototype code with some ideas about how to prep our engine for SQLite. Note - code isn't close to compiling yet :)
Rough Ideas being illustrated:

Adding a new interface to support the query mechanism. This will enable us to remove the query implementation details from EngineV3. Note @namjul - I tried using neverthrow in the interface definition here.
Replacement of the current dictionary based NoteMetadataStore with a version that incorporates Fuse. @kevinslin - this was what you mentioned during our Wednesday chat; after looking more closely at the Fuse code, I think this is the sensible thing to do.
Removal of fuseEngine references from enginev3 and enginev3base - this is possible now cuz it's abstracted via the IDataStore & IDataQueryable interfaces.
Starting to tease out the init logic of enginev3 into a more componetized / injectable manner.  This can then let us incorporate SQLlite more cleanly.  This logic is in EngineV3Factory.ts and was forked off of the init() methods in the current EngineV3 class. This is the roughest part of the review - definitely doesn't compile yet.

cleaning up stale prs


CSS Logical Properties are not working well in Nuxt

Versions

nuxt: v2.12.2
node: v10 (Codesandbox), v14

Reproduction
https://codesandbox.io/s/inspiring-minsky-l2e3s?file=/pages/index.vue
Steps to reproduce

Add CSS Logical properties to any element, in the reproduction, for example, to .title (line 40-43):

 padding-inline-start: 100px;
 padding-inline-end: 100px;
 padding-block-start: 100px;
 padding-block-end: 100px;

What is Expected?
The element should get all properties as written above.
What is actually happening?
 padding-inline-start: 100px; /* this is NOT working, won't appear on the element */
 padding-inline-end: 100px; /* this is NOT working,  won't appear on the element */
 padding-block-start: 100px; /* this is working but converted to padding-top */
 padding-block-end: 100px; /* this is working but converted to padding-bottom */

This happens because Nuxt uses PostCSS. You can edit postcss config in nuxt.config:
export default {
	build: {
		postcss: {
        	// ....
		}
    }
}

or disable it
export default {
	build: {
		postcss: false
    }
}

Thanks @farnabaz ! I didn't know such setting exists

i disabled postcss but still logical properties deleted

Changing PostCSS default stage from 2 to 3 in the nuxt.config file allows CSS logical properties to be included in the final bundled CSS. E.g.
 build: {
   postcss: {
     preset: {
       stage: 3,
     },
   },
 }


fix(bats): Change DDEV_NON_INTERACTIVE into DDEV_NONINTERACTIVE

The Issues
Fixes #57
and
Fixes #60  (Update contributor mention)
How This PR Solves The Issue
Manual Testing Instructions
Automated Testing Overview

Related Issue Link(s)
Release/Deployment Notes

/improve


Item usage not aggregated across batches correctly

Build Number: 30
Description: It looks like item.dailyUsage() is summing the dailyUsage for each batch, which would over-estimate usage when there are multiple batches. If daily usage for batch 1 is 15, and daily usage for batch 2 is also 15, it looks like item.dailyUsage() would return 30. The spreadsheet example linked in issue #405 also includes something about this. It seems like the correct approach to get the total daily usage for an item across batches would be to sum up the total usage for all batches and the number of days each batch was used, then do the division in Item.
Comments: Happy to take a crack at this ticket or #405, but I don't have a server I could test on at the moment..

Hey @gkaplan thanks for checking out our code! And nice catch. dailyUsage() could be more verbosely called averageDailyUseOverLastNinetyDays() ;)
If we followed that correctly, summing the averages of each batch should be fine as 15+15/90 is the same as 15/90 + 15/90
That said, it doesn't necessarily do that if a batch is less than 90 days old. Say it's one day old, then it is 15/1 + 15/90 which would give a large over estimate for the last 90 days.
In short, I agree that the division should be done at the top in Item.
itemBatch.dailyUsage() should probably get deprecated.
itemBatch.totalUsageForPeriod(startDate, endDate): sums the total transaction usage in the given period.
item.totalUsageForPeriod(startDate, endDate): sums the above on all batches
then
item.dailyUsage(): calls the above with (currentDate - 90days, currentDate)
and/Or
item.dailyUsageForPeriod(startDate, endDate): calls the above and divides by the period length in days (rounding up).

Hi @Chris-Petty, sorry for the slow reply, was on vacation :).
It sounds like we're on the same page about how to change the calculation. The only thing I'm not clear about is how the period length would be calculated - I hope it would account for stock outs?
For example: I use 300 units of an item for 15 days, I stock out for 30 days, then I receive a replenishment and I use 900 units for 45 days, I hope that the usage calculated would be 1200 units / 60 days = 20 units avg daily usage rather than 1200 units / 90 days = ~13.3 units avg daily usage.
Potentially you could approximate the period for each batch by looking at the date of the last transaction if the batch has no stock minus date of the earliest transaction, max 90 days ago, and then sum the period across batches in the same way as you're proposing to sum the usage.

@gkaplan we find the problem with this is that facilities often have rebound usage when they come back into stock which compensates for the stockout period.
Also, defining "out of stock" is not easy, as having a few tablets kicking around is not technically out of stock, but functionally it is.....


Version downloads

I was wondering if psrqpy could allow for direct version specification in QueryATNF methods. For example, today they v1.66 update broke the query due to mistakes in the database (not the first time this has happened). It would be nice to be able to just ask for v1.65 as stored here: https://www.atnf.csiro.au/research/pulsar/psrcat/download.html

Hi @astrophysically, yes, being able to use specific version would indeed by nice. Previously (at least when I last thought about this and looked) they didn't seem to have the older tarballs publicly available, but now that they are I can definitely add this functionality

I've just added a new release (v1.1.6) which has this feature.

Just for the record, looking at the database file for the current (v1.66) version, I think the issue comes from DIST_A not being defined correctly for J1953+1846B, J1953+1846C and J1953+1846D. There is a paper reference in place of the DIST_A value, which I think should instead be 4.0 to be consistent with J1953+1846A. Pulsars J1748-2446ac and J1748-2446D also have the DIST_A value defined twice with different values.

I've submitted this on the catalogue feedback page, so hopefully it'll be fixed soon.

The v1.66 catalogue version has now been fixed, so it can be parsed by psrqpy


Docs: How to use Specifications with the Repository Pattern

Needs completed.
https://ardalis.github.io/Specification/usage/use-specification-repository-pattern.html
Various implementations shown in closed issues, as well as in the eShopOnWeb and CleanArchitecture solutions.

@kylemcmaster

Fixed by #204


 Clippy is our linter.
We have set up clippy such that, it fails if there are any linting issues for which auto-fix is available.
When I look at the CI logs it shows that there are 5 warnings and 1 fix.
When I look run cargo clippy locally i see 6 warnings and no fix.
I am taking this opportunity to fix all the cargo clippy problems (These are not auto-fixable by cargo clippy).
Now we have no warnings from this tool
After I updated my local rust up toolchain, I could see those problems. I fixed them in the second commit.

I did not land anything when GitHub was down. I think there was a new version of clippy that our actions used.

I did not land anything when GitHub was down. I think there was a new version of clippy that our actions used.
We did not catch this before landing, because I did not retrigger build for PR job before it landed (which is not an usualy practice either) but we had this PR laying around for a while (and in that time i guess clippy version was updated)

Sorry, I did not understand this explanation.

Aren't cargo and clippy versions fixed unless we update them? (They should be)
"We did not catch this before landing" ... before landing what?
Shouldn't PRs need to be fully rebased, and therefore retrigger CI, before landing?

Ok, makes sense to me, I didn't realize we were getting clippy from GitHub actions and not fixed to a specific version. Seems a bit weird that we are getting changing lint rules out of our CI without manual changes, though, but I get what happened at least 🙂 . Either way, PR looks good to me.


flutter doctor hangs after reporting VS Code version.

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
flutter doctor
Expected results
No issues found!
Actual results
flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.13.1, on macOS 13.4.1 22F82 darwin-arm64, locale en-CA)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0-rc1)
[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.2)
[✓] VS Code (version 1.81.0)

Hangs at this point.
This started immediately after upgrading from 3.10.6 to 3.13.1.
Code sample

Screenshots or Video
No response
Logs
No response
Flutter Doctor output

Hi @bkleineibst
Could you share the entire output of flutter doctor -v (with verbose)? Could you try running flutter precache to see if it works? (see https://github.com/flutter/flutter/issues/14725#issuecomment-528180938)

Hi @huycozy,
flutter precache didn't help.
Output of flutter doctor -v:
[✓] Flutter (Channel stable, 3.13.1, on macOS 13.4.1 22F82 darwin-arm64, locale en-CA)
    • Flutter version 3.13.1 on channel stable at /Users/brent/fvm/versions/stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e1e47221e8 (6 days ago), 2023-08-22 21:43:18 -0700
    • Engine revision b20183e040
    • Dart version 3.1.0
    • DevTools version 2.25.0

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0-rc1)
    • Android SDK at /Users/brent/Library/Android/sdk
    • Platform android-33, build-tools 34.0.0-rc1
    • ANDROID_HOME = /Users/brent/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.12.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

[✓] VS Code (version 1.81.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.70.0

It just hangs at this point.

flutter precache didn't resolve the issue.
After downgrading to old version of flutter, I still had the same issue.
Restarting my computer resolved the issue.


Cannot use with node@13 and node@14

% yarn add -D browserslist-browserstack
yarn add v1.21.1
[1/4] Resolving packages...
[2/4] Fetching packages...
info<EMAIL_ADDRESS>The platform "linux" is incompatible with this module.
info<EMAIL_ADDRESS>is an optional dependency and failed compatibility check. Excluding it from installation.
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">=10 <=12". Got "13.7.0"
error Found incompatible module.
info Visit https://yarnpkg.com/en/docs/cli/add for documentation about this command.

@AndrewLeedham Why not blacklist versions instead of whitelisting?
  "engines": {
    "node": ">=10 <=14"
  },

The module won't work with any new version of Node or any version of Node that is in development without doing a new commit right? I don't think this is a good practice because:

there needs to be an update to the code for every new major version of Node
before the update is done users will not be able to use new versions of Node, slowing down the Node ecosystem updates
if this module is not maintained one day it won't be usable without a fork anymore.

Until an incompatibility is not proven it's not there. Most new major versions of Node do not break libraries.

Hi @aalexgabi, that is a fair point. Our current strategy is to scope it to known working versions. That has come from our internal projects. Perhaps we need to adopt the strategy you are suggesting for our OSS projects 👍
Happy to review a PR if you need this urgently. Otherwise, I will get to it when I have some spare time.

@aalexgabi I changed the engines range to >=10 thanks for the suggestion. Released in v3.1.1 🚀

@AndrewLeedham Thank you!


contains does not work with DataArray

Code Sample, a copy-pastable example if possible
>>> da = xr.DataArray([0, 1, 2], dims='x')
>>> 0 in da
( warning omitted )
False
>>> 0 in da.values
True

Problem description
__contains__ should work as np.ndarray does.
Expected Output
>>> 0 in da
True

Indeed, that's what the omitted warning says:
In [6]: 0 in da
/Users/shoyer/miniconda3/envs/xarray-py36/bin/ipython:1: FutureWarning: xarray.DataArray.__contains__ currently checks membership in DataArray.coords, but in xarray v0.11 will change to check membership in array values.
  #!/Users/shoyer/miniconda3/envs/xarray-py36/bin/python
Out[6]: False

https://github.com/pydata/xarray/issues/1267 is the tracking issue.
Note also that NumPy's __contains__ has its own issues: https://github.com/numpy/numpy/issues/3016

I just noticed that I did not read the warning at all ot oTL.
Closing.


Fix is exported function

This goes together with #24.

:(, forgot to change the branch to base upon when making PR.
Better comparison: https://github.com/sourcegraph/srclib-python/compare/fix-docker-tests...fix-is-exported-function


Fix sizing on thread data set

Problem
Thread operational data set size check is incorrect.
Change overview
Use correct check on thread operational data set size
Testing
Cirque test uses thread.

fast track: small change that is obvious correct


Eav filter tests

Two tests fail - I have updated the wiki to reflect which ones.
I think it is quite straightforward to get these two tests working. I can go ahead and do it if everything looks good.

Thanks, this will work well.  I rebased your branch off of the latest master and fixed an unrelated issue in test_rest.py that was causing the new EAV tests to fail prematurely.  (Use git pull --rebase to get these changes to your local copy).  Once you fix the two remaining tests, the Travis CI check should pass and this will be ready to merge.

Thanks, I merged after rebasing off of b3183c5a321ec69ffecf6fad3bbed4178dd7367e to filter out the commits that canceled each other out.


OLS-624: Do not shadow Python builtin functions

Description
Do not shadow Python builtin functions
Type of change

[x] Refactor
[ ] New feature
[ ] Bug fix
[ ] CVE fix
[ ] Optimization
[ ] Documentation Update
[ ] Configuration Update
[ ] Bump-up dependent library
[ ] Bump-up library or tool used for development (does not change the final image)

Related Tickets & Documents

Related Issue: #OLS-624

/lgtm

/approve

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 95.21%. Comparing base (de85e97) to head (cae397b).
Report is 78 commits behind head on main.

Additional details and impacted files

@@            Coverage Diff             @@
##             main    #1055      +/-   ##
==========================================
- Coverage   95.34%   95.21%   -0.13%
==========================================
  Files          54       54
  Lines        2211     2277      +66
==========================================
+ Hits         2108     2168      +60
- Misses        103      109       +6

Files
Coverage Δ

ols/utils/redactor.py
100.00% <100.00%> (ø)

/retest

/approve

/override ci/prow/Red Hat Konflux/lightspeed-service-on-pull-request

/override ci/prow/lightspeed-service-on-pull-request

/override Red Hat Konflux/lightspeed-service-on-pull-request

/override Red Hat Konflux / lightspeed-service-on-pull-request

/override Red Hat Konflux / ols-enterprise-contract / lightspeed-service

/override "Red Hat Konflux / lightspeed-service-on-pull-request"


Would it be possible to chroot into FydeOS from Raspbian?

The title says most of it.
I've developed and currently maintain vdesktop - a virtual machine software to run RPi OS'es on Raspberry Pi.
Chromium OS support would be very cool, even if it's CLI-only.
How would that work? I'm not familiar with how chromium OS works under the hood. Does that type of linux have a root filesystem somewhere, containing folders like /dev, /sys, /bin, and /usr?

The chromium for ChromiumOS needs more kernel modules which don't include in RpiOS kernel. You need to combine two kernel config files, some of the flags conflict each other. I don't think it will work.

@yunshansimon Would it be possible to access CrOS's linux subsystem? And not Chromium?

We provide "crostini" in the next release. It's a virtual machine running Debian Linux.


Update readme

The README was not matching on the values returned from image.tags(...) and image.push I also added pushing individual tags.
related to #307

Thanks @albertogg.  Getting closer to sane documentation :)


Powerline fonts Messed Up in integrated terminal!

VSCode Version: 1.17.0 (1.17.0)
OS Version: macOS 10.13

Yesterday; I updated VS Code then my integrated terminal messed up.

As you can see i'm using the powerline fonts; and there seems to be a lot of extra 'padding' there between everything which wasn't there before.
Reproduces without extensions: Yes

Duplicate https://github.com/Microsoft/vscode/issues/35649


Inaccuracy with add -> div -> sub in some compiled backends

I can't figure this out  :<
weird inaccuracy
reproduce:
# LLVM
In [11]: ((Tensor(3)+0.5)/3.5 - 0.5).numpy()
Out[11]: array(0.50000006, dtype=float32)
In [20]: ((Tensor([3])+0.5)/3.5 - 0.5).numpy()
Out[20]: array([0.50000006], dtype=float32)

# METAL
In [17]: ((Tensor(3)+0.5)/3.5 - 0.5).numpy()
Out[17]: array(0.5, dtype=float32)
In [18]: ((Tensor([3])+0.5)/3.5 - 0.5).numpy()
Out[18]: array([0.50000006], dtype=float32)

# CPU
In [23]: ((Tensor(3)+0.5)/3.5 - 0.5).numpy()
Out[23]: 0.5
In [22]: ((Tensor([3])+0.5)/3.5 - 0.5).numpy()
Out[22]: array([0.5], dtype=float32)

# CUDA
# I cant test this but this also has the same issue

interesting. I tried the same math in numpy and it was returned 0.5

We have different kernels generated for these cases:
((Tensor(3)+0.5)/3.5 - 0.5).numpy():
__global__ void E_(float* data0) {
    data0[0] = (((3.0f+0.5f)*0.2857142857142857f)-0.5f);
}

PTX:
        ld.param.u64    %rd1, [_Z2E_Pf_param_0];
        cvta.to.global.u64      %rd2, %rd1;
        mov.u32         %r1,<PHONE_NUMBER>;
        st.global.u32   [%rd2], %r1;
        ret;

((Tensor([3])+0.5)/3.5 - 0.5).numpy():
__global__ void E_n1(float* data0, const float* data1) {
    float val0 = data1[0];
    data0[0] = (((val0+0.5f)*0.2857142857142857f)-0.5f);
}

PTX:
        ld.param.u64    %rd1, [_Z4E_n1PfPKf_param_0];
        ld.param.u64    %rd2, [_Z4E_n1PfPKf_param_1];
        cvta.to.global.u64      %rd3, %rd1;
        cvta.to.global.u64      %rd4, %rd2;
        ld.global.f32   %f1, [%rd4];
        add.f32         %f2, %f1, 0f3F000000;
        fma.rn.f32      %f3, %f2, 0f3E924925, 0fBF000000;
        st.global.f32   [%rd3], %f3;
        ret;

First case prog just stores 0.5, second it actually calculates. For the second case that's expected to lose some percision because of fma (like disabling it for cuda gives 0.5 in both cases).

If you disable MERGE_ELEMENTWISE_OPS in lazy.py I think this would work with METAL=1 (tested a similar case on my machine).
Is it safe to optimize the x / 3.5 to x * 0.2857...? I wonder if fast math just hides the problem better?

closing as stale. I think it's mostly fixed (disabled fastmath) and we don't have CPU anymore. Feel free to open a new issue


IE Broken: SCRIPT438: Object doesn't support property or method 'includes'

Also all the demos (both v2 and v3 of @material-ui/pickers) are broken in IE11.
Environment

Tech
Version

@material-ui/pickers
3.0.0-rc.0

material-ui
4.0.0-rc.0

React
16.8.0

Browser
IE11

Steps to reproduce

Expected behavior

Actual behavior

Live example

PR is appreciated


[Improve] Make the create time equal to update time when create a application

What changes were proposed in this pull request
Issue Number: close #3549

Brief change log

Verifying this change

This change is a trivial rework / code cleanup without any test coverage.
(or)
This change is already covered by existing tests, such as (please describe tests).
(or)
This change added tests and can be verified as follows:

Does this pull request potentially affect one of the following parts

Dependencies (does it add or upgrade a dependency): (yes / no)

+1

https://github.com/apache/incubator-streampark/issues/3549

Thank you for your review

It's worth noting that in extreme cases, new Date() instances may have slight differences due to the time between their instantiations.


User does not get created when using basic auth

When you go to /#/signup URI in alerta web and fill out the form, the user is not created.
I think this is because alerta Web makes OPTIONS request, which does nothing.
<IP_ADDRESS> - - [13/Jun/2015 19:54:57] "OPTIONS /auth/signup HTTP/1.1" 200 -

Is there an error in the Javascript console of the browser?

Ok so this is yet another bug that results from not setting origins right.

See http://docs.alerta.io/en/latest/authentication.html#cross-origin


not work with PHP dynamic hash still stuck on the loading page

    not work with PHP dynamic hash still stuck on the loading page

my hash
 {
payment_hash: d2477d29f674bb3f01ffc01a384a31105699a867e75c22af1a..........,
get_merchant_ibibo_codes_hash: 1dc4618d0546295cc5830dff8adeeeb9626......,
vas_for_mobile_sdk_hash: 3c6755e5c4779b94cef.....,
emi_hash: 8fde98b3e38996261e5920941caa16fed9e6cfc1390bb9ff75fc4a.......,
payment_related_details_for_mobile_sdk_hash: 8ce23914ef0a499a4fcc5aa201da8b1790a49c8f8b76e2......, verify_payment_hash: cb7484701fd47d470c328b2ed3c20......,
send_sms_hash: 0609032e904b6b540617b3521546.........
}

Originally posted by @secanonm in https://github.com/payu-intrepos/PayUCheckoutPro-Flutter/issues/2#issuecomment-1370984659

give update and add documents for generating hash on server side using PHP for flutter android
Thank You


Implement InputParser and ParseBuffer lock-free

currently for synchronisation mutex and conditional vars are being used, which is a waste of resources. use atomic types to implement a lock-free InputParser and ParseBuffer

@vigsterkr I would like to work on this.

@vigsterkr  I would like to work on this.

@tdjogi010 sure thing, just send a PR when you have something

Even though I am working on it, if anyone wishes to take this one up, please do so. Not sure if I can implement it correctly.

@vigsterkr @tdjogi010 Interesting. Thanks being so generous about the task, would have a stub on it.

Hi @vigsterkr , as far as I have understood, InputParser uses the ParseBuffer(which is a ring buffer) to hold the data and does the parsing(with the help of StreamingFile classes) in a separate thread when started. Now the StreamingFeatures fetches example objects one by one through a InputParser object. So there is only one parsing thread(producer) and only one streaming*feature thread(consumer) at all times? Not multiple producer/multiple consumer?

yeah pretty much that's the story there.

Thanks!


Updated accumulo-env.sh to include existing CLASSPATH

I think prepend makes a little more sense but I could go either way.


Update sbt-scalafix to 0.9.31

Updates ch.epfl.scala:sbt-scalafix from 0.9.30 to 0.9.31.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "ch.epfl.scala", artifactId = "sbt-scalafix" } ]

labels: sbt-plugin-update, semver-patch

Superseded by #504.


.NET core 2.1.302 download path is incorrect in installer task.

Troubleshooting
Checkout how to troubleshoot failures and collect debug logs: https://docs.microsoft.com/en-us/vsts/build-release/actions/troubleshooting
Environment

Server - VSTS or TFS on-premises?

If using TFS on-premises, provide the version:

If using VSTS, provide the account name, team project name, build definition name/build number:

Agent - Hosted or Private:

If using Hosted agent, provide agent queue name:

If using private agent, provide the OS of the machine running the agent and the agent version:

Issue Description

In the yaml build definition, use the following task,

- task: DotNetCoreInstaller@0
  displayName: Use .NET Core SDK 2.1.302
  inputs:
    version: 2.1.302

Trigger build

Expected: The download url for 2.1.302 is https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/dotnet-sdk-2.1.302-osx-x64.tar.gz
Actual: The download url is https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/dotnet-sdk-2.1.302-osx-x64.tar.gz
Seems like the url concatenation is wrong. Maybe related to the release version of .net core 2.1.302 is listed different in the releases.json file here
Error logs
2018-07-13T20:52:47.4564270Z ##[section]Starting: Use .NET Core SDK 2.1.302
2018-07-13T20:52:47.4666890Z ==============================================================================
2018-07-13T20:52:47.4683250Z Task         : .NET Core Tool Installer
2018-07-13T20:52:47.4699770Z Description  : Acquires a specific version of .NET Core from internet or the tools cache and adds it to the PATH. Use this task to change the version of .NET Core used in subsequent tasks.
2018-07-13T20:52:47.4716240Z Version      : 0.1.11
2018-07-13T20:52:47.4732400Z Author       : Microsoft Corporation
2018-07-13T20:52:47.4748970Z Help         : [More Information](https://go.microsoft.com/fwlink/?linkid=853651)
2018-07-13T20:52:47.4765140Z ==============================================================================
2018-07-13T20:52:47.8363780Z Tool to install: .NET Core sdk version 2.1.302.
2018-07-13T20:52:47.8398400Z Checking if a cached copy exists for this version...
2018-07-13T20:52:47.8470390Z Cache does not contains this particular .NET Core. Will be downloaded and installed.
2018-07-13T20:52:47.8572830Z [command]/Users/vsts/agent/2.136.1/work/_tasks/DotNetCoreInstaller_b0ce7256-7898-45d3-9cb5-176b752bfea6/0.1.11/externals/get-os-distro.sh
2018-07-13T20:52:47.8667880Z Primary:mac-x64
2018-07-13T20:52:47.8684030Z Legacy:mac
2018-07-13T20:52:47.8700670Z Detected platform (Primary): mac-x64
2018-07-13T20:52:47.8716890Z Detected platform (Legacy): mac
2018-07-13T20:52:47.8732980Z Getting URL to download .NET Core sdk version: 2.1.302.
2018-07-13T20:52:47.9394900Z Downloading: https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/dotnet-sdk-2.1.302-osx-x64.tar.gz
2018-07-13T20:52:48.2282400Z ##[warning]Could not download installation package from this URL: https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/dotnet-sdk-2.1.302-osx-x64.tar.gz Error: {}
2018-07-13T20:52:48.2349450Z Downloading: https://download.microsoft.com/download/4/0/9/40920432-3302-47a8-b13c-bbc4848ad114/https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/dotnet-sdk-2.1.302-osx-x64.tar.gz
2018-07-13T20:52:49.0575360Z ##[warning]Could not download installation package from this URL: https://download.microsoft.com/download/4/0/9/40920432-3302-47a8-b13c-bbc4848ad114/https://dotnetcli.blob.core.windows.net/dotnet/Sdk/2.1.302/dotnet-sdk-2.1.302-osx-x64.tar.gz Error: {}
2018-07-13T20:52:49.0626020Z ##[error]Failed to download package for installation
2018-07-13T20:52:49.1521240Z ##[section]Finishing: Use .NET Core SDK 2.1.302

The issue has been fixed. https://github.com/dotnet/core/pull/1789


Invalid promql query for investigating etcdHighNumberOfFailedGRPCRequests

The promql for investigating etcdHighNumberOfFailedGRPCRequests doesn't parse correctly:

The old query works though (the one before 196227b13d7f92b00ec4ef7a5208a53e2116ad5a)

/assign @tjungblu

Thanks Simon, let me take a look. I think we have to update another runbook entry as well.

fix in #60 not sure how that got screwed up on copy&paste...

/close
#60 merged


vscode://settings/foo.bar links do not work in chat window

Type: Bug
We have a need to refer to some settings in the chat responses. Ideally we could use the [Link Notation](vscode://settings/setting.id), but this does not work in the chat response--for whatever reason the link is just rendered as plain text instead of a link.
Other links (like web links) work just fine so I'm not sure why it's not working.
 Not sure if there is an underlying command they can trigger to open the setting, until we support rendering settings in chat (if we decide to do that)

Yes, there's a command, example for the git.openRepositoryInParentFolders setting: [git.openRepositoryInParentFolders](command:workbench.action.openSettings?%5B%22git.openRepositoryInParentFolders%22%5D). Maybe @roblourens can speak to why the vscode:// link isn't working.
The ⚙ work is only partially reusable because I didn't want to rewrite the whole release notes editor. Converting the markdown into the something that can be styled to look the like ⚙ thing and showing the context menu is reusable and is here and here, but the styling and the click handling are not at all reusable.
Actually, the styles could probably be moved into each html element, then it's just the click handling that needs to be duplicated.


[RFC] [Hybrid Script] IR Dump

Because HalideIR now can be fully mapped to Hybrid Script and vice versa, I want to support IR dump to Hybrid Script so that users can play with IR body directly.
Which one do you guys prefer?

mode=tvm.build(sch, args, target='hybrid'); mode.save('a.py')
tvm.hybrid.emit(stmt, file_name)

I personally like the 2nd one better. I do not want touch too much build module thing. I want to make it as standalone as possible.
@tqchen @eqy @yzhliu @kevinthesun @yidawang

What's purpose of IR dump for, debugging or some transformation?

@xqdan You can dump HalideIR to this script format and play with the IR directly.
Isn't it useful, when there are some bugs (and you just need a quick fix) or some schedule not supported yet?

Slightly off the topic, I would say it could be better if we explicitly claim which syntactic sugar of Python is supported, which is not. You might be interested in writing it in accordance with Python's official AST document, Green Tree Snake.

Personally I prefer the second method, to keep this under hybrid script. @junrushao1994 It's helpful to have such a doc for developer to check whether their code syntax is supported. We can start with adding something we don't think will support in the long term, such as break/continue.

@were yes, looks cool, can we do this for each pass?

@kevinthesun complicated jumps like break/continue is not possible in Halide, because it break all analysis conducted. Hence, it is not quite meaningful to add it to the hybrid script. Do you have specific use cases for break/continue?

@junrushao1994 I don't think we need to support those.

@xqdan I do not want to aggressively modify the codegen backend.
I believe dumping each pass requires this.
I just want to dump the normalized schedule, the highest level.

@were I see. 2nd is better for me.

@kevinthesun totally agree with @were and @junrushao1994, to support continue and break, the whole TVM stack would need lots of stuff in traditional compilers, which will make things complicated. if any operators don't fit into abstraction of TVM, maybe it's better to support it with low level languages, such as CUDA c.


Add github repo stars fetching

Use the API to get a list of every golang repository, and preserve the star count.

Just recalling my memory here, but for pulling packages from github we want to pull like all go packages with at least 1 star or something like that correct? We'd also want this to be a function of the indexer right?


I have a question, can I upload my own component dependencies?

The built-in ssh terminal pulls dependencies from nr.stackblitz.com. Is there any way to upload private domain dependencies? By reading the source code, I found that there is also logic for filtering binary files. I sincerely ask how to solve the problem of private domain dependencies. Domain dependency problem, if there is any way to solve it, please kick me immediately, thank you~~

@wonderwhy-er @thecodacus Two masters help to look at this problem，thanks


added decimal precision code

Hey @Linuxph wasn't it already present, i guess it was already calculating decimal values. Can you please elaborate your contribution


can't highlight StatusLine

I run in command mode:

:lua vim.cmd.hi 'StatusLine guigb=red'

But statusline won't become red.
It does work if I remove the code that loads and configure echasnovski/mini.nvim

I believe you have a spelling error: it should be guibg not guigb

Maybe consider using lualine, for which there are many themes available.

:lua vim.cmd.hi 'MiniStatuslineFilename guibg=red' is probably what you are looking for.
You can use :Telescope highlights to explore the highlights.

Thanks for the issue. Folks have given you some options here, I'm going to close this for now because it's not actually a bug :)


README: add a convenience link

Nice! Can you remove the quotes? Since it's a link I don't think they're needed anymore.

@casey Done!

Thank you! Merging!


feat(lint): add partial loader register

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

Current dependencies on/for this PR:

main

PR #1745

PR #1760   👈

This stack of pull requests is managed by Graphite.

Merge activity

Dec 31, 9:14 AM: @Boshen started a stack merge that includes this pull request via Graphite.


Wish to optionally lower priority of notifications

Available priorities are: MIN, LOW, DEFAULT, HIGH, MAX

The status notification is an ongoing notification and therefore always on top of all non-ongoing notifications. Hence implementing this wouldn't help at all.
Closed as wontfix.


Some examples that the old zxing code can parse，but this code can not.

#270 this issue.
Code128 images：

QRcode images：

@axxel ~~

update: the second qrcode example works now, the rest still does not.

I had a quick look at the first three examples and would not have expected the current (or the upstream) code to successfully detect those images. They simply lack resolution/sharpness. I ran all 3 through the current upstream java code (https://zxing.org/w/decode.jspx) and only the second was recognized as a barcode but the reported result was actually wrong (which I would consider worse than failing to detect anything).
Which "old zxing code" are you referring to in your title?

I had a quick look at the first three examples and would not have expected the current (or the upstream) code to successfully detect those images. They simply lack resolution/sharpness. I ran all 3 through the current upstream java code (https://zxing.org/w/decode.jspx) and only the second was recognized as a barcode but the reported result was actually wrong (which I would consider worse than failing to detect anything).
Which "old zxing code" are you referring to in your title?

Thanks very much for your constant attention. The "old zxing code" is https://github.com/zxing/zxing  ~~
I used the c++ code in my own system. I will check these images again, and give you a new reply later. Thanks.

Based on the silence on this issue for quite some time, I consider it not of importance anymore. If you disagree, just let me know.


chore(deps): update dependency ora to v8

This PR contains the following updates:

Package
Type
Update
Change

ora
devDependencies
major
6.3.1 -> 8.0.1

Release Notes

sindresorhus/ora (ora)
v8.0.1
Compare Source

Fix the process not exiting  89a1f31

v8.0.0
Compare Source
Breaking

Require Node.js 18  675590f

Improvements

Update dependencies 675590f

v7.0.1
Compare Source

Fix missing dependency (#228)  1dc1ece

v7.0.0
Compare Source
Breaking

Require Node.js 16  0e96acd

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

 You will not get PRs for any future 8.x releases. But if you manually upgrade to 8.x then Renovate will re-enable minor and patch updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


Filter array unclear - needs clarification

I am trying to implement a filter like this, but the screenshot is unclear and there is no depth in the example.  HOW do you get 'first' into the first box?  I have an equivalent setup in one of my flows and I cannot get a named field of my array into that box!
A step by step or even a screenshot of the advanced edit would be useful in this case.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 79bddf7e-aad7-5b99-0b73-a893d25615f5
Version Independent ID: f2f0c4d6-b613-d269-4756-bcd7548f76ec
Content: Understand data operations - Microsoft Flow
Content Source: flow-docs/data-operations.md
Service: flow
GitHub Login: @MSFTMan
Microsoft Alias: deonhe

For anyone wondering put item()['first'] in the first box.  Icon is different in my Flow though. Blue/white finger icon.

Thanks pconnell99! What I wanted was even simpler than what they partially demo'd here: I had a Variable of type Array of whole numbers (1s, 2s, or 3s) and wanted to display how many of  these were number 3.  In the Filter Array action my 'From' was the Array (available under Variables in Dynamic Content) and my operator 'is equal to' and value 3.  Your mention of 'item' helped me figure out the first part of the equation -  item()  on its own ended up working as a pasted expression (note NO parameters).  The advanced mode looked like this:  @equals(item(), 3)
Posting in case this helps someone else!

Oh, I could then use length(body('Filter_array')) to get a count of how many that filter caught!

@pconnell99 Thanks for the heads up. We'll overhaul this doc soon.


Consolidate release workflows

Goal

Testing

Release Notes

WHAT:
WHY:

[!WARNING]
This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
Learn more

#1050  👈
#1048
master

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @bidetofevil and the rest of your teammates on  Graphite


Place class/fun parameters onto the same line when below max_line_length

When you got something like the following ktlint should unwrap the parameters of test2, test3 and test4 because they fit in one line.
    fun test1(a: A, b: B) {
        // ...
    }

    fun test2(
        a: A,
        b: B
    ) {
        // ...
    }

    fun test3(a: A,
        b: B
    ) {
        // ...
    }

    fun test4(a: A, b: B
    ) {
        // ...
    }

The current behavior in 0.21.0 is that test1 and test2 stay like they are. test3 and test4 are reformatted to look like test2.

(somewhat) related to #251

Code samples below are already fixed in a version prior to 0.43.2
    fun test1(a: A, b: B) {
        // ...
    }

    fun test2(
        a: A,
        b: B
    ) {
        // ...
    }

    fun test3(a: A,
        b: B
    ) {
        // ...
    }

    fun test5(
    ) {}

Code sample below will be fixed by + PR #1331
    fun test4(a: A, b: B
    ) {
        // ...
    }

Will be covered by #1341 which is in progress. Completion is to be expected in Ktlint 0.46.0.


websocket closed with code 1001 with reason stream end encountered

I am getting websocket closed with code 1001 with reason stream end encountered when using connection.stop()

Close code 1001 occurs because the browser is navigating away from the page and has to forcibly terminate the connection. Are you calling .stop() in response to some event? Can you provide a snippet of the code that calls .stop() (including what user action would trigger the call)?

Closing this as we haven't heard from you. Please feel free to comment if you're able to get the information we're looking for and we can reopen the issue if we're able to identify the problem.


Add Chinese DingTalk robot alarm reminder

DingTalk is a very popular office software in China, with a scale similar to enterprise WeChat, and many users are looking forward to the addition of DingTalk robot push.

It's a pity that this pr has not been merged. I will try to contribute to pr in the future. I hope I can get everyone's help. Wishing you all the best every day.


Collides with UNIX/coreutils "link"

While I'm sure this is a great tool, the name is a bit ill chosen.
link already exists in most environments, where it's used to create a hard link from an existing directory entry to a new directory entry (calling the link syscall internally).
I'm on Windows and even here this is an issue for most serious developers who have MinGW32/MSys2 aliased from their cmd.

Same issue here.

I think terminal-link is better than link.

Or term-link.
Or tlink. Anything that isn't already taken, really.


improve docs

What type of PR is this?
What this PR does / why we need it:
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:

Is it complete?

Is it complete?

yes

/LGTM


[RFD] Secure Boot

Short Description:
We should add a way to securely boot nodes (that have TPMs presumably). This probably involves EUFI secure boot, https boot, and some sort of asymmetric key auth.
In my mind it goes something like:

We get/dump a key from/to the nodes TPM via redfish (an out of band operation)
the node boots, and loads a custom EUFI. This EUFI does a cert validation for what's on the node TPM. (maybe extraneous?)
The node moves to EUFI secure boot, using the TPM stored key to verify the payload it recieves.
The node chainboots into https boot, using the same key to do https boot

I think this is something that could happen a lot of different ways, the above is just my take on it.

@njones-lanl and @LRitzdorf
Let's see if we can add more details here about how we expect OpenCHAMI to support SecureBoot.  Does this mean we require an initial enrollment image that sets up the SecureBoot trust items?  What happens if someone chooses a node OS that doesn't support SecureBoot?

While Secure Boot can use the TPM, it actually doesn't need to, and in general it's a very different process from the TPM-based security features we've been working with so far. That's not to say it isn't doable, but it may be a much larger can of worms than we expect — that was certainly true of setting it up on my personal system, and I can't imagine doing so across a cluster would be any easier.
As a very quick summary:

The process of setting up Secure Boot typically requires someone to reset the subsystem by hitting a button in the UEFI. After this, new Platform Key and DB keys can be enrolled.

You usually also want to re-enroll Microsoft's keys here, since they effectively control a lot of the Secure Boot process by virtue of simply being everywhere in the industry.
Any consumer Linux distro that has Secure Boot support by default, for example, achieves that via signing by Microsoft. This is also frequently the case for various pieces of firmware.

During boot, each stage must verify the next one as it loads. Usually, this takes the form of a bootloader which can validate the kernel and initramfs' signatures against the DB key database.

It may instead be necessary to use a pre-bootloader stage, like shim, if you don't want to replace the stock Secure Boot keys with your own.
shim uses an unofficial extension of the Secure Boot key system, storing an additional list of keys (the Machine Owner Key list, or MOKlist) into a protected NVRAM area), and validates the boot image against these instead of the official and hard-to-change DB keys.

Key takeaways:

The requirement for UEFI-based setup means we can't use an ephemeral boot image to manage the initial setup. If Redfish has support for this out-of-band, that'd be ideal — it would need to both ensure that Secure Boot is enabled, and that our key is present in either a) the DB or b) the MOKlist, depending on the approach we choose.
I haven't personally seen anything about Secure Boot over the network. I'm sure it's been looked into somewhere, but I don't know what complications it might involve. (e.g. which bootloaders even support this?)
Re: your last question, the only necessary "support" for Secure Boot is that the OS (kernel/initramfs) be signed by a key known to the target machine. If no such signature is present, the system will just refuse to boot, as you'd expect.

The Arch Wiki article on Secure Boot is also a great general reference, fwiw.


Error states to be fine-tuned

These should now be fixed in the latest commit, 7c035a0

Nice!


Sitcky keys compiling xrdp with the xorg-x11 driver on RHEL 6.6

We are using XRDP for an internal cloud project at work with VMWare VM's running RHEL 6.6.  We've been successfully using x11rdp and recently discovered the xorg driver.  Initially it was promising, however we have run into a huge usability error.  Whenever the keyboard is used, the last key is not registering the keyup event and ends up repeating that key endlessly.  Another keypress cancels the key repetition, but this makes it difficult to use.  I am a Java developer but am willing to work through the issue with a little guidance and have successfully contributed to a bug fix in the x11rdp project.
Thanks in advance.

is the problem gone when you run
xset r off
in the session.

Yes actually.  That worked when using the xorg driver.
However using "xset r off" is un-needed when using the x11rdp server.

Ok, X11rdp has code that does what "xset r off" does.
When in an RDP session, you never what the server to handle key repeats.
This need to be merged into Xorg driver.

With a little guidance I could track the problem down and submit a patch.

I did a quick push sha1
0a3868424f34ff81332f04d891d67f11f6c153ba
I did no testing :)

ok, I did minimal testing, seems to work

Pulling down devel branch now.  Will close bug once I've confirmed the repeat is fixed.
Thanks!!!

Looks good.  Thanks for the quick response!

What's the process for moving this fix into the "master" branch?


Desktop mobile combine

-Padding and margin of mobile and desktop changed.

@waqaskanju Can you please, Fix the linter errors

yes give me a minute

Error fixed kindly review it.

thanks. button fixed.

It would be  better if you just texted me here. I would fix it on the spot and one of my review should not be wasted. Any how thanks for mentioning about button.


Most Efficient Internal Representation of Matrices

In an email with @GordonLesti , the topic of efficient internal representation of matrices was discussed. There were concerns about the current approach of using nested arrays. The other alternative is to store one single array, and store another variable for the shape of the matrix. Currently I am researching which would be optimal.
I know you had mentioned that in some cases the nested array performed better and in other cases the single array representation performed better. Do you happen to remember or have it documented which operations were most efficient with which representation? That would be helpful information. I can generate new benchmarks if needed, but trying to save that step.
As I gain more insight into this, I will update this thread with relevant information and proposals. Thanks.

Hi, I don't  think array it the best solution for this project. I think the best solution is we have to write a new extension and store our matrix using fixed-size C++ array, and all of elements of this array should be the same type.
As I remember that the numpy loop with nditer is faster 10 times that native python loop, because it run on C++ instead of python. PHP using HashTable for storing array so it not really efficiency

Hello @rickynguyen
thank you very much for your feedback. Yes, real arrays would be fantastic, but in my eyes it is no option to transform a plain PHP library into a PHP extension. I started developing on version 2 of NumPHP with PHP 7 as requirement and have not changed the internal representation yet. My hope is that packed arrays will give some performance improvement.
Maybe after a stable release it can make sense to create a PHP array extension that will be used as suggested dependency.

Just do some researching about how PHP7 optimized their array. I see that they store zval inside Hashtable instead of pointer like PHP5 before. Right now I think you has chosen the right way..! 🎈


fix typo: suernode -> supernode

Ⅰ. Describe what this PR did
fix typo: suernode -> supernode
Ⅱ. Does this pull request fix one issue?
Ⅲ. Why don't you add test cases (unit test/integration test)? (你真的觉得不需要加测试吗？)
Ⅳ. Describe how to verify it
Ⅴ.   Next run
git push --force-with-lease origin patch-1

Codecov Report

Merging #572 into master will decrease coverage by 0.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master     #572      +/-   ##
==========================================
- Coverage   48.61%   48.59%   -0.02%
==========================================
  Files          94       94
  Lines        5233     5233
==========================================
- Hits         2544     2543       -1
  Misses       2497     2497
- Partials      192      193       +1

Impacted Files
Coverage Δ

supernode/daemon/mgr/scheduler/manager.go
25.19% <0%> (-0.79%)
:arrow_down:

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 4c41e69...0b646a7. Read the comment docs.

LGTM


Add multi-mining info to dashboard upgrade banner

Add multi-mining info to dashboard upgrade banner

Related to #532

@Louisreed Was this part of your recent changes?

Closed by #605


Flow chart in section 3.3 seems misplaced and is hard to follow

Description
I have trouble wrapping my head around this flowchart. First of all, it seems to have very little to do with the text of section 3.3. Perhaps just the second-to-last paragraph which mentions one last feeding, but otherwise, I'm confused by its inclusion here. To me, it seems like the flowchart is the start of dough preparation, it's a follow up to either the "make a starter" or "starter maintenance" procedure, not "how to determine if your starter is ready". Perhaps it could be called "activating your starter".
Secondly, the logic in the flowchart doesn't really work. If I were following it as an unintelligent robot, I would probably end up spinning endlessly in a cycle like so:

So I would suggest that a "wait 6-12 hours" bubble is needed after the feeding, but before the readiness check. And a better home is needed for the flowchart.
A different thing that summarises the starter readiness check would still be a good idea.
Steps to Reproduce
No response

Oops. Sorry. I got my tabs confused and posted this to the wrong project.


code snippet should be updated

Main entry point should be :
public static  aync task Main(string[] args)
instead of
public static void Main(string[] args)

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 58d1a4a4-89ce-ed5d-c3fe-4eba7343dc5e
Version Independent ID: e94131f2-3355-e8c6-6d74-317a0f2d8d5c
Content: Download large amounts of random data from Azure Storage
Content Source: articles/storage/blobs/storage-blob-scalable-app-download-files.md
Service: storage
Sub-service: blobs
GitHub Login: @roygara
Microsoft Alias: rogarana

@feiranjiang
Thanks for your feedback! We will investigate and update as appropriate.

@feiranjiang
Thanks for reporting this! We have created a PR for this issue and the changes should go live soon.