If statement should allow multiple conditions

I often wish I could have an IF command that says if x and y or if x or y.  I'd want multiple conditions, e.g., the ability to say, if a and b and c and d...
I'd be happy to try to implement this myself, the only problem is I don't know how to make it backward compatible so the existing if statements still function as they did.

If you're having to alter the underlying data being stored in the command(s), you can leave the existing data there, but put HideInInspector on it. Then implement ISerializationCallback and in the OnAfterDeserialize method convert the existing data into the format of the new data.
Also feel free to start a PR even if it's incomplete for ongoing feedback and assistance.

I was unable to figure out how to do this, so I'm taking a different route.  I'm creating a Boolean Algebra command.  If you'd be interested in it, let me know and I can share it.  Either way, I'd still prefer if's with multiple conditions.

Here's what I came up with.  I don't like it very much, but it gets the job done.  Maybe i'll give you ideas, but I doubt you'll want it directly.
https://pastebin.com/C9zh0Kxr
https://pastebin.com/p9RMxaE3

Thanks for sharing the snippets. They'll be useful along side the conditions, variables, and looping improvements I was looking into.

I would like to work on the issue. Any specific design i should keep in mind during its implementation?

Make sure you start from dev branch, there are some changes to the internals of the control flow commands and in particular the conditional command.
The imagine the UI is going to be a mess, I think we should work through that in an early PR.
Feel free to shout in here or in an incomplete PR for help and feedback.

For this issue, do we need brackets
eg.,
(exp1 or exp2) and exp3
Or simply, we just need all expressions combined with "and, or, not" ?
And in the UI, I am planning to do the simple version inside the If expression block using multiple expression blocks joined by "or, not, and" dropdowns

Ideally, parentheses will be allowed. Otherwise, you'd have to pick which associativity you want. When you're really programming, you don't think this way. If there is doubt about which part of this statement is going to be executed first, you wrap it in parens.
I'll admit, I can't visualize how this will work. Maybe can be done with indentation? The parts that are indented the furthest to the right are executed first?
Honestly, I think the first step in this feature is visualizing it, not implementing it.

I propose 2 options in my solution:
For complex expressions(with brackets), what i suggest is that we simply let the developer enter the expression as string (with brackets), which can then be converted to c# expressions and can then be evaluated according to the conventional rules of logical expressions (precedence - NOT>AND>OR). I feel that this will be much simpler and more intuitive for any developer than any UI we come up with. I suggest doing this in a new command and the result can be stored in a new boolean variable which can be used in if conditions.
For simple use cases(without brackets), we allow multiple logical expressions joined by AND, OR logical operators directly in if command itself.

I thought of this too I don't like this solution because it opens itself up to so many possible human errors. If you're typing by hand, you can have a typo. I'm going to get variable names wrong all the time. It is also inconvenient to type out the full names. There won't be any auto complete in this text field.
The typo aspect would be greatly minimized if the command could check for any syntax errors, and that doesn't seem too difficult to me to implement. But I don't know how you would deal with the inconvenient aspect. Perhaps that's just something that needs to be compromised on.
On the other hand, I think there might be a lot of SQL tools that can generate queries through UIs. Maybe they would be a good example of what to look at if you want to build an if statement because they'll be similar to a SQL where clause.

Two types of 'If' feels a bit off to me. Resolving this with a more robust 'If' and a second more complex boolean algebra style command like AcademyOfF had originally, is a good solution. So for now, I'd recommend focus on what the minimum of a robust 'if' looks like.
We may be covering the majority of frequent cases by simply having a list of the conditions and a tick box for All of these/Any of these. Also a user that wants a very specific and 'complex' conditional, may be wanting to use LuaIf anyway.
Note that the improved VariableCondition shouldn't become any harder to use or require more clicks than it does presently.
I'm excited by the idea of having the user enter pseudo logic and having the command editor check and determine the underlying data it would actually store, but I would keep that as a Phase II of this issue. Goal here should be allowing things like

If hasRedKey == true AND wasRudeToMargret == false
if passwordCorrect == true OR charisma >= 80


How to get the mean of error in the CelebA experiment

Seems like the code only provide classification accuracy and negative log-likelihood loss instead of the mean of error shown in Table 1 in the paper. Is there any way that we can get that number? Thanks!

We treat them as separate binary classification problems (separate tasks) so mean error means average of 1-class classification errors. Hence, it is average of 1 - classification accuracy.


Removed mentions of mobile from Google Tag Manager docs

Proposed changes
Removed mentions of mobile from Google Tag Manager docs, as per issue submitted by @daveo237.
Merge timing
ASAP once approved?
Related issues (optional)
Closes #4396

@forstisabella Is this PR still relevant? The only change I see is and additional line break.

I guess not - looks like it got updated with the same changes in #4509. I'll go ahead and close this PR!


robot.e is not ready in example.coffee

Simple hubot robot example through yo generator.
robot.e is not initialized when example.coffee is loaded. See logs
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] INFO Slack client now connected
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] DEBUG Loading scripts from /Users/keke/Work/HPE/incub-lab/hubot-enterprise-cha/scripts
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] ERROR hubot-enterprise not present, cannot run
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] DEBUG Parsing help for /Users/keke/Work/HPE/incub-lab/hubot-enterprise-cha/scripts/example.coffee
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] DEBUG Loading scripts from /Users/keke/Work/HPE/incub-lab/hubot-enterprise-cha/src/scripts
info: message received on reconnect with no registered callback:
[object Object]
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] DEBUG Loading external-scripts from npm packages
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] DEBUG Parsing help for /Users/keke/Work/HPE/incub-lab/hubot-enterprise-cha/node_modules/hubot-enterprise/src/0_bootstrap.coffee
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] INFO /Users/keke/Work/HPE/incub-lab/hubot-enterprise-cha/node_modules/hubot-enterprise/src/0_bootstrap.coffee is using deprecated documentation syntax
[Tue Aug 09 2016 22:31:16 GMT+0800 (CST)] DEBUG Parsing help for /Users/keke/Work/HPE/incub-lab/hubot-enterprise-cha/node_modules/hubot-enterprise/src/admin.coffee

example.coffee is loaded before 0_bootstrap.coffee

@keke hubot is loading 'scripts' before loading external-npm packages, therefore scripts in scripts directory cannot use hubot-enterprise...

@mosheBelostotsky This brings a very interesting scenario. If we want to develop an integration that uses hubot-enterprise, but we are doing it via the scripts directory, how can we make sure that hubot-enterprise is accessible?

@JonathanRosado this is interesting and it might have implications to the docker dev environment.

@mosheBelostotsky this is also my guess. So what will be the suggestion to users of hubot-enterprise?

@keke Will be fixed by 0_bootstrap will load scripts from enterprise_scripts after robot.e object is ready.
updated also in eedevops/generator-hubot-enterprise


Translate README.

Translate README to Simplified Chinese.

Hi there,
Thanks for making this! I just added a localisation section to make it clear what link in the README is for.


Use .env file when present for npm run start and start:beta

This is a small idea I had to make it easier to switch between environment/configurations. As I find myself trying cycling the different environments and from using the environment backend or my local backend.
I sometimes need to use different routes and this is way easier than digging into the files and updating them or manually defining.
Figured it would be easier to have an .env to setup this kind of stuff than updating the scripts with the multiple combinations.

Codecov Report

Merging #556 (12c268e) into master (60fbb9a) will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff           @@
##           master    #556   +/-   ##
======================================
  Coverage    7.27%   7.27%
======================================
  Files          10      10
  Lines          55      55
  Branches        1       1
======================================
  Hits            4       4
  Misses         51      51

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 60fbb9a...12c268e. Read the comment docs.

@josejulio we will be actually switching to fec.config.js in an upcoming update that will do essentially the same.

Great! I will give it a try, thanks!


docs: mention non-specific method exception codes

Description
Mention non-specific method exception codes in the documentation.
Related Issues
Fixes https://github.com/FirebaseExtended/flutterfire/issues/3273
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] If the pull request affects only one plugin, the PR title starts with the name of the plugin in brackets (e.g. [cloud_firestore])
[x] My PR includes unit or integration tests for all changed/updated/fixed behaviors (See Contributor Guide).
[x] All existing and new tests are passing.
[x] I updated/added relevant documentation (doc comments with ///).
[x] The analyzer (flutter analyze) does not report any problems on my PR.
[x] I read and followed the Flutter Style Guide.
[ ] I updated pubspec.yaml with an appropriate new version according to the pub versioning philosophy.
[ ] I updated CHANGELOG.md to add a description of the change.
[x] I signed the CLA.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Does your PR require plugin users to manually update their apps to accommodate your change?

[ ] Yes, this is a breaking change (please indicate a breaking change in CHANGELOG.md and increment major revision).
[x] No, this is not a breaking change.

This PR doesn't include changes into FirebaseAuthException as requested into #3273.

Reopened original issue to track, it got automatically closed when this one was merged 🙈


btcwallet: skip unsupported addresses in ListTransasctionDetails

A transaction with an unsupported address would prevent the method from returning any other transactions and would instead return an error.
Fixes https://github.com/lightningnetwork/lnd/issues/4568.

Ping @AnthonyRonning does running with this patch fix the issue?

Thanks for the quick patch! Unfortunately for reasons unrelated to this, we ended up wiping the node and started a fresh one.

Just wanted to report back, this happened to our node again and the upgrade to 0.11.1 rc4 fixed it, thanks! Need to investigate what transaction is actually malformed and why it keeps happening.


Causes issues on mobile

https://github.com/fluid-player/fluid-player/blob/ba6253869ecebd2cde97ab608bce6749ac574cc5/src/fluidplayer.js#L1888
Hello! I recently noticed that the above line causes issues on mobile. Throws error: "Uncaught TypeError: Cannot read property 'clientWidth' of null"
The video just stays blank. Everything used to work fine before though. I am looking for help.
Thanks!

Same here

same here

is there any workaround? I got the same error

Same here......BUT I AM VERY MUCH INTERESTED IN CHATTING & TALKING TO ANY ONE ANYWHERE FOR 💕💖😘 SEXTING, LOVE-TALK & ANYTHING ELSE YOU WANNA DO💕😍😍😍😍contact me ASAP IFS YOU'RE INTERESTED💋💋💋💋

@ravikiranp123 @konyilwin @snuffy @ppiwo @Mersal-Mohamed @kyimoemin, is this still an issue? I could not reproduce this on my side. Can any of you share your configs?

@ravikiranp123 @konyilwin @snuffy @ppiwo @Mersal-Mohamed @kyimoemin, is this still an issue? I could not reproduce this on my side. Can any of you share your configs?

I don’t have access anymore, sorry!

I will test again later and ping you.

@konyilwin have you had time do test this?

@konyilwin @Mersal-Mohamed @ravikiranp123 is this still an issue? Can I close this? Thank you!

Closing the ticket due to a lack of feedback over an extended period. Please feel free to reopen if you have further input or require additional assistance. Thank you.


chore: update version

Coverage remained the same at 100.0% when pulling 220838243cb4088dac208496297e8d6d85cfe8f9 on update-ver into 73ae2d69731175e581b20494c5f68c2423783889 on master.


use $PWD/memos-data as default docker volume path

~/.memos might not be a path friendly for maintenance. It's likely that the db will be simply forgotten in the home folder.
Using ./memos-data could be a better idea.

Actually, I think using volume could be even better!

Actually, I think using volume could be even better!

Looks good


Missing vmware-tools in v2.0.3(vmware_desktop,minimal)

Hello and many thanks for this great work.
In v2.0.3 loading the HGFS kernel module failed and the folder /lib/vmware-tools is missing.
Best regards,Uli
PS: installed via 'vagrant init boxcutter/centos71; vagrant up --provider vmware_desktop'

It's likely that you are trying to use VMware Fusion 7 or VMware Workstation 10 to build these templates when they only support building on VMware Fusion 8/11.  You can either wait for the workaround that was posted over in the ubuntu version of the templates to be ported here, or migrate it yourself https://github.com/boxcutter/ubuntu/commit/bceb01cd8040c8cd7b3dec8bb1f07a77c93aca91

Hello and, I wasn't idle all the time. Cloning into 'boxcutter/centos' and building an own box wasn't an option. But using this workaround solved the problem for the moment:
https://github.com/craigwatson/puppet-vmwaretools/issues/55
I'm using Fusion 8 and the 'vagrant-vmware-fusion (4.0.1)' plugin.


Form fix

[x] the 'Treatment Efficacy Rating" field should only show up if the YES is chosen in the "Evidence of Treatment" field.
[x]  in the aquatic chemical treatment form, if a user enters a PUP number, the validation rules can not require them to enter a PMP or PMP unlisted.  Users will enter one of those three fields only.
[x] add Third pass as an option to the drop down in the chemical and mechanical treatment monitoring forms for the "Treatment pass" field.  It's not a code table, just a custom drop down for that field.

@sam-warren  added another task to this ticket but should be easier than the first two

@micheal-w-wells the second bullet is not complete. It is still requiring a PMP number even when a PUP is entered.
Tested the other two and they are working.

There's no easy way to force validation so that it forces the user to enter one of the 3 fields, without introducing another 'discriminator' field that forces the user to let the form know which of the 3 ways they need to fill it out.  Then the fields will only pop up if they are relevant.


DataGrid editing does not change Background Color and unreadable in Dark Mode

Describe the bug
When attepting to edit the DataGrid cell in Dark mode the text is unreadable as the Cell has a white background. Adding the following Style has no effect:
<DataGrid.Styles>
	<Style Selector="DataGridCell:focus-within">
		<Setter Property="Background" Value="Red"/>
		<Setter Property="Foreground" Value="Black"/>
	</Style>
</DataGrid.Styles>

This seemed to work on the first Column in 11.0.11 but as of 11.1.0-rc2 this doesnt wotk at all.
Thanks to the team for some great work though.
To Reproduce

<DataGrid.Styles>

</DataGrid.Styles>
<DataGrid.Columns>

</DataGrid.Columns>

Expected behavior
No response
Avalonia version
11.0.11~11.1.0-rc2
OS
Windows
Additional context
No response

Which theme so you use? Do you have some custom styles applied?


Update ethTokens.json

Hi, please can you give your social/website links in the PR also.

We will pull this in when there is a customer support email address. Until then, users can add manually if they need to: https://myetherwallet.groovehq.com/knowledge_base/topics/how-to-see-a-new-token-in-myetherwallet

thank you for reply. it's useful.
On Thu, Sep 14, 2017 at 8:11 PM, Taylor Monahan<EMAIL_ADDRESS>wrote:

Closed #984 https://github.com/kvhnuke/etherwallet/pull/984.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/kvhnuke/etherwallet/pull/984#event-1249081079, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AeP_pnejmrr1IgX0aw9tZQAh-22-_aMOks5siRf_gaJpZM4PPQ4b
.


enabled JSONPath evaluation of correlation id in EventHandler

Pull Request Test Coverage Report for Build 2675

60 of 75 (80.0%)  changed or added relevant lines in 4 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 69.168%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

mysql-persistence/src/main/java/com/netflix/conductor/dao/mysql/MySQLExecutionDAO.java
0
1
0.0%

core/src/main/java/com/netflix/conductor/core/events/SimpleActionProcessor.java
55
69
79.71%

Totals

Change from base Build 2667:
0.03%

Covered Lines:
9382

Relevant Lines:
13564

💛  - Coveralls


Marker nodes

This is an idea I came up with when trying to think of ways to make the rendered features matrix easier to visually track when scrolling vertically.
The change presented in this pull request marks a number of the nodes in the canonical feature list tree as "markers", representing the idea that they do not carry direct user-facing value, existing to provide branch points for groups of related features.
Those marker nodes are then formatted differently (row background colour, bold font for the node name, no ticks or crosses per SDK).
Before this change:

After this change:

Thanks, @owenpearson - nice suggestion. As discussed in our DMs, I went with 'heading': https://github.com/ably/features/pull/106/commits/d9cae972593674909b9b520e1428395ccff72fda


Duplicate Miner Transfer, Showing Pending

My miner was accidently transferred twice when moving it to my account. I accepted and completed the first transfer. I have it in my helium account and it is earning so there are no issues there. Under hotspot settings it is showing transfer pending and when I tap to cancel I get an error.
Unable to Cancel Transfer
No response from the API. Please try again.
My Miner is: Spare Punch Dove

It is no longer showing pending transfer so it looks like the issue is fixed. Thanks so much for your help!!


Do not raise errors on non-serviced RPC

This fixes an issue where requests might get an AttributeError in intercept_service. If the RPC cannot be serviced (e.g. if the endpoint is undefined) the call to continuation(handler_call_details) will return None.

Thanks @mahlberg!


Feature Request: Add a custom path as an option for file field

Please can you add a custom path for the file location as an optiona and in JSsdk?
like this

There are no plans for this as it will complicate the S3-local filesystem abstraction.
In general the end users shouldn't be concerned with the internal storage details so for me personally it doesn't make sense to provide an option in the SDKs or the web APIs.


authorized_keys file of admin user empty after deployment

I'm trying to deploy a VM with an SSH key using this recipe. The VM launches fine, along with all resources. But the ~/.ssh/authorized_keys file of the admin user always remains empty, meaning I can't log in.
name = 'deployment-name'
group = 'my-resource-group'
template = { ... }  # see below
parameters = { ... }  # see below
client = get_client_from_cli_profile(ResourceManagementClient)
client.resource_groups.create_or_update(group, {'location': 'westeurope'})
deployment_properties = {
    'mode': DeploymentMode.incremental,
    'template': template, 'parameters': parameters,
}
deployment_async_operation = client.deployments.create_or_update(
    deployment_name=name,
    resource_group_name=group,
    properties=deployment_properties,
)
deployment_async_operation.wait()

The relevant parts of my parameters variable:
{
    "adminUsername": {
        "value": "testadmin"
    },
    "adminPublicKey": {
        "value": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCp4o5mFzqelV1TP2aQmufKyPrBNE0xSRUGXFyPbMZTO02GmI/apAPuVweRtUeFw8ITqa3J9fAd+w//F8m/NPvhYihum/tQK/6ygWSweS4FEBkR6Hy3rjG9C4OqWDLCrHNFwqE2mMvUhbGkloxDnfwtkXY3s8B2cp0qgpzvbOzi0Wa+AA0y1lKyb54QgaGSfVMmx8nAkpfoIedPVxCbGiUY0/ptYCbN8iazi67kQVzHBTrUd6Bo/Dk/FtmnddpqOncTrYCNponc+f2twlr8Wmpo4UaeQ0DdPJO89NijM+wf3pdRFOW2Jqgn3ae/6wmHIFnp9V+A3+/v5Kt8Ym6npft7UCVAebW5hqdhWjzwW3ryO3XeJMtoqCYvtkTnxXp0wRTprnvZylJczQZ7/t02o2nHZ6PK/W4TB9itKI6QKS+lODDQ/kUGnAfXQ3PZpcTm6w0bFARsOl5nMX9YLg6FUcfWkq7lCAd+MARiyYRnQuc6DMlk8rkCGTPyI1Mpoo3U1mQ3rDiNEaN+KDxJR3Wb/ga2hXeyyL6G+AiN0cVZR/+Ep+s+bhN8shZQ9yBBQBVhnG3P4c8+Ip8IAb/s5XReUKdOj8UNNJgvGhdEdwR3ZATDSXQSjCU1XslbAXYkh5XNxRY4LX3+9hcLtau5n3Fsda/nafhI/OrIH4w+lXBAx8J6QQ==\n"
    }
}

... and from template (again, I trimmed parts that I think are not relevant):
{"schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
 "contentVersion": "<IP_ADDRESS>",
 "resources": [{
    "properties": {
        "osProfile": {
            "linuxConfiguration": {
                "disablePasswordAuthentication": "true",
                "ssh": {
                    "publicKeys": [
                        {
                            "keyData": "[parameters('adminPublicKey')]",
                            "path": "[concat('/home/', parameters('adminUsername'), '/.ssh/authorized_keys')]"
                        }
                    ]
                }
            },
            "adminUsername": "[parameters('adminUsername')]",
            "computerName": "somename"
        }
    }
}]}

Most irritatingly, if I set the password (or the SSH-key - but the password is enough!) for a completely new user (!) in the Azure webinterface (via the "Reset password" option), that new user gets the SSH-key I passed. When I log in using that new user, I find that /home/testadmin/ssh/authorized_keys` does exist, but is empty.
What am I missing? Am I doing something wrong? I cannot find any indication of an error in any of the logfiles.

@yugangw-msft any ideas?

Cleaning up old issues from 2016 - 2018. Please let us know if this issue is still a concern.


IndexBuilder: Close IncrementalIndex when done.

Small improvement to IndexBuilder, which is used in various tests.

👍

👍


Blocks UI

Description
When I type in paket.dependencies file something blocks UI for like a minute. Unfortunately it happens all too often. I suspect it might be related with attempts to suggest packages. Could you add a setting to switch that off if you can't find the source of the issue?
Repro steps

Type nuget ... in the paket.dependencies file

Expected behavior
No one should ever block the UI thread
Actual behavior
VS hangs for a minute
Related information

Operating system
Win 10
VS 2015, latest updates

Marked as up-for-grabs


[Feature] Support manual compaction for cloud native table

Why I'm doing:
Manual compaction for cloud native table is needed in some senario.
Fixes #39532
What I'm doing:
Introduce priority support for lake manual compaction with the following key design points:

Reuse the alter statement syntax for manual compaction in shard-nothing mode
All partitions are set with a default priority of -1; manual compaction will assign a high priority of 1 to the partition.
Partitions with the same priority will be scheduled according to their compaction score. Therefore, when multiple partitions submit manual compaction commands simultaneously, they will be executed in order sorted by compaction score.
When manual compaction is triggered, minor compaction score check is skipped.
Ensure that the default priority is restored after the compaction execution is completed.

Supported syntax (BASE and CUMULATIVE are deprecated by default for cloud native table)
ALTER TABLE <tbl_name> COMPACT

ALTER TABLE <tbl_name> COMPACT <partition_name>

ALTER TABLE <tbl_name> COMPACT (<partition1_name>[,<partition2_name>,...])

Demo case
MySQL [cloud_db]> show partitions from detail_demo where partitionname = 'p20240120'\G
*************************** 1. row ***************************
    PartitionId: 30886
  PartitionName: p20240120
 CompactVersion: 3164
 VisibleVersion: 3200
    NextVersion: 3201
          State: NORMAL
   PartitionKey: recruit_date
          Range: [types: [DATETIME]; keys: [2024-01-20 00:00:00]; ..types: [DATETIME]; keys: [2024-01-21 00:00:00]; )
DistributionKey: recruit_date, region_num
        Buckets: 2
       DataSize: 567.1KB
       RowCount: 2993
EnableDataCache: true
     AsyncWrite: false
          AvgCS: 21.50
          P50CS: 25.00
          MaxCS: 25.00
1 row in set (0.003 sec)

MySQL [cloud_db]> alter table detail_demo compact p20240120;
Query OK, 0 rows affected (0.000 sec)

MySQL [cloud_db]> show proc '/compactions';
+--------------------------------------+--------+---------------------+---------------------+---------------------+-------+
| Partition                            | TxnID  | StartTime           | CommitTime          | FinishTime          | Error |
+--------------------------------------+--------+---------------------+---------------------+---------------------+-------+
| cloud_db.detail_demo.30886           | 334048 | 2024-02-07 10:12:47 | 2024-02-07 10:12:48 | 2024-02-07 10:12:48 | NULL  |
+--------------------------------------+--------+---------------------+---------------------+---------------------+-------+

What type of PR is this:

[ ] BugFix
[x] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Does this PR entail a change in behavior?

[x] Yes, this PR will result in a change in behavior.
[ ] No, this PR will not result in a change in behavior.

If yes, please specify the type of change:

[ ] Interface/UI changes: syntax, type conversion, expression evaluation, display information
[ ] Parameter changes: default values, similar parameters but with different default values
[x] Policy changes: use new policy to replace old one, functionality automatically enabled
[ ] Feature removed
[ ] Miscellaneous: upgrade & downgrade compatibility, etc.

Checklist:

[x] I have added test cases for my bug fix or my new feature
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

[ ] This is a backport pr

Bugfix cherry-pick branch check:

[x] I have checked the version labels which the pr will be auto-backported to the target branch

[x] 3.2
[x] 3.1
[ ] 3.0
[ ] 2.5

@starrocks-xupeng @kevincai  PTAL

LGTM, just left some minor comments.

@starrocks-xupeng @wyb PTAL

@Mergifyio backport branch-3.2

@Mergifyio backport branch-3.1


Unlock wallet (/w disabling staking) for doing transactions only [Feature Request]

Since Reddcoin StakeBox is out, is it possible to add the feature to unlock the wallet for spending RDD without doing staking?
The scenario for this would be -- a user has a bunch of reddcoin on a wallet address and does staking with the StakeBox. He/she wants to spend some of the RDD on the same wallet address with his/her desktop computer (without interfering the staking with StakeBox because the private key of that particular wallet address will be in the StakeBox as well as in the desktop computer).
Perhaps I am wrong (I didn't update my knowledge for a long time), and the feature has been implement. Otherwise, the unlock functionality with "stake only" option can provide three combinations:

CannotSpend+NoStake (initial state)
CannotSpend+Stake (unlocked, "stake only" checked)
CanSpend+Stake (unlocked, "stake only" unchecked)

And I believe the 4th item "CanSpend+NoStake" should now be added to the wallet software. What do you think?

Main comment on this request is that a user should NOT share the same wallet between 2 devices. There is no synchronisation, particularly if change addresses are generated.
The correct method would be to have seperate wallets, and to transfer funds as needed between the 2.
An analogy would be that one was your bank and the other your wallet in your pocket


WIP:  Views based on custom input from the frontend website

WORK IN PROGRESS (not supposed to be merged yet)
I implemented the functionality, which enables the user to manually write names of components to be rendered as roots of their subtrees. The tree is rendered with 'App' as the only root as default.
There is an extra input in the navigation bar. It is now possible to provide comma-separated names of components and by pushing the "Recompile with input" button the tree will recompile with given components.
See examples here:

After hitting the button:

The idea is to connect this functionality with a search tree (like the one for searching for components) and just by clicking on a component name, the user will be able to just render that component + it's subtree.
Please review & comment.
Pio.
closes #49

I like this idea!


Interceptors API

Yes, Interceptors!
Why?

Logging via interceptors
Stetho integration via interceptor
Request behavior changes via interceptor

May I ask for the status?

Hi, @Rainer-Lang !
Sorry, but I haven't started to implement it yet =(
As it may affect current api it will be possible in v2.0.0
Do you want it for logging?

@nikitin-da Yes for logging. I don't want to log via doOnNext() or something else. I think logging would be really great. But please, I don't want to rush you. Take your time. :)
"When it's done - it's done." :)

Closed by #771.


Add track and artist play counts to extended info

Feature Request
One of the primary reasons I love last.fm is for the stats. I would love an option to display a users play counts for track and artist on the visualizer. I imagine this would be displayed next to the song info. It could be added into the extended info setting or an additional setting could be added.
Suggested Method of Implementation
To implement, you would need to add another last.fm api call. The API method is track.getInfo and you supply the username, track name, and artist. The relevant field returned by the call is 'userplaycount'. url is like this:
http://ws.audioscrobbler.com/2.0/?method=track.getInfo&user=${urlUser}&api_key=${key}&track=${currentTrack}&artist=${currentArtist}&format=json
Potentially this same approach could be used to also add an artist play count option using the artist.getInfo API method.
I know you already have the extended info option but that only shows total user play count, which I find less interesting. This could be an extension to that setting, or it's own setting.

I may take a stab at doing this myself but am not super familiar with javascript coding yet.
As a final note, I've been using the descent visualizer for a while now (year+) and it's excellent. Thanks for all the work @JasonPuglisi!

Thanks for the idea, and I'm glad you're enjoying the project! Maybe this can be an addition to the extended info line, like this:

Could give the user options to turn each of those three data points on/off, but I don't think it hurts to have all of them displayed. If you have another idea, feel free to suggest.
The "now playing" API calls that Descent makes every few seconds should have both the track and artist IDs that we need to fetch the track info you mentioned.
If you wanna try implementing this, I can give some guidance on where I think things should go. I'm happy to answer any questions you have about JavaScript and work through it. Let me know! Otherwise, I'll implement this the next time I feel like coding haha. I don't think it will be very complicated!

That sounds great. I'll see if I can find some time to look at it in the next couple weeks.

Sorry for the delay, I wanted to provide some guidance earlier! I would start here: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/source/js/utility/metadata.js
In updateState, there's a block where we update the metadata state from the Last.fm API to be pushed to the UI: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/source/js/utility/metadata.js#L50
We can pass the metadata object created here to a new function. I would put a new function in the file under fetchMetadata, and call it fetchScrobbles. Pass metadata to fetchScrobbles and use it to call the track.getInfo (https://www.last.fm/api/show/track.getInfo) and artist.getInfo (https://www.last.fm/api/show/artist.getInfo) methods. You can pretty much copy the format from fetchMetadata above to make the AJAX calls. The trickiest part is handling the responses asynchronously since either of them could be returned before the other.
The success function for each AJAX call should extract the userplaycount from each API response and pass it to another function. I would create this new function under setMetadata and call it setScrobbles. It might make sense to take multiple parameters in this function, such as setScrobbles(trackScrobbles, artistScrobbles). That way, for each API response you get. you can pass the value you have, and pass null for the other one. You can update global variables for this data just like we do in setMetadata. For instance, there's already a variable resources.track.current.scrobbles. There could be new ones resources.track.current.trackScrobbles and resources.track.current.artistScrobbles. Just remember to only set each of these is there's a value passed to the function for it, and not null/undefined.
With the global data set, we need to update the UI. First step is adding new HTML elements to put the data in. Look here: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/views/now.pug#L68
The indentation can be messy, so I'll do this piece. Here's what's there already:
            p.scrobbles.hide
              b
                span.scrobbleCount
              |  scrobbles

We need to add a new piece for the extra info:
            p.scrobbles.hide
              b
                span.scrobbleCount
              |  scrobbles
              span.extraScrobbles.hide
                | •
                b
                  span.trackScrobbleCount
                | this song •
                b
                  span.artistScrobbleCount
                | this artist

I haven't tested this but I think it should achieve the styling from my screenshot above, including bolding the numbers. Some of the spacing might be off, but we can fix it later. Notice the new extraScrobbles element uses .hide to hide itself by default. We'll need to keep this hidden until both the track and artist scrobble data are loaded from the API. If one or neither load, it will still display the user's total scrobble count by itself.
Finally, we can put the data into here. Go back to metadata.js. Look for the function updateMetadata and the last part where we update scrobbles: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/source/js/utility/metadata.js#L181
Slightly above, we set the variable scrobbles. Make two new ones trackScrobbles and artistScrobbles for the new global data you made previously. Use this line as guidance to update the new data: $('.scrobbles .scrobbleCount').text(scrobbles ? scrobbles : '');. For example, $('.scrobbles .trackScrobbleCount').text(trackScrobbles ? trackScrobbles : '');. Since this info is hidden by default, you should also put a new toggleDisplay under the existing one. You only want it to toggle when both pieces of data are loaded: toggleDisplay('.scrobbles', trackScrobbles && artistScrobbles);
Now that the UI is ready to be updated, we need to make sure it happens when the API calls are successful. At the end of your setScrobbles function, call updateMetadata. I think everything should be working now!
When new tracks load, we need to hide this extra data again until it's loaded. Find somewhere good to put toggleDisplay('.scrobbles', false); so it works reliably on each state change. There's an edge case here where a new track loads between the time the scrobble API call starts and finishes, so the API response data is actually displayed for the track that was playing previously. If you want, ignore this part for now and we can think about it once the main functionality is in place.

This turned out longer than expected, but it should be everything you need to get it to work. Feel free to deviate and ask questions as needed. If it's overwhelming or you decide you don't want to code it, I'm happy to do so!  Good luck

Sorry for the delay, I wanted to provide some guidance earlier! I would start here: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/source/js/utility/metadata.js
In updateState, there's a block where we update the metadata state from the Last.fm API to be pushed to the UI: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/source/js/utility/metadata.js#L50
We can pass the metadata object created here to a new function. I would put a new function in the file under fetchMetadata, and call it fetchScrobbles. Pass metadata to fetchScrobbles and use it to call the track.getInfo (https://www.last.fm/api/show/track.getInfo) and artist.getInfo (https://www.last.fm/api/show/artist.getInfo) methods. You can pretty much copy the format from fetchMetadata above to make the AJAX calls. The trickiest part is handling the responses asynchronously since either of them could be returned before the other.
The success function for each AJAX call should extract the userplaycount from each API response and pass it to another function. I would create this new function under setMetadata and call it setScrobbles. It might make sense to take multiple parameters in this function, such as setScrobbles(trackScrobbles, artistScrobbles). That way, for each API response you get. you can pass the value you have, and pass null for the other one. You can update global variables for this data just like we do in setMetadata. For instance, there's already a variable resources.track.current.scrobbles. There could be new ones resources.track.current.trackScrobbles and resources.track.current.artistScrobbles. Just remember to only set each of these is there's a value passed to the function for it, and not null/undefined.
With the global data set, we need to update the UI. First step is adding new HTML elements to put the data in. Look here: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/views/now.pug#L68
The indentation can be messy, so I'll do this piece. Here's what's there already:
            p.scrobbles.hide
              b
                span.scrobbleCount
              |  scrobbles

We need to add a new piece for the extra info:
            p.scrobbles.hide
              b
                span.scrobbleCount
              |  scrobbles
              span.extraScrobbles.hide
                | •
                b
                  span.trackScrobbleCount
                | this song •
                b
                  span.artistScrobbleCount
                | this artist

I haven't tested this but I think it should achieve the styling from my screenshot above, including bolding the numbers. Some of the spacing might be off, but we can fix it later. Notice the new extraScrobbles element uses .hide to hide itself by default. We'll need to keep this hidden until both the track and artist scrobble data are loaded from the API. If one or neither load, it will still display the user's total scrobble count by itself.
Finally, we can put the data into here. Go back to metadata.js. Look for the function updateMetadata and the last part where we update scrobbles: https://github.com/JasonPuglisi/descent/blob/4960b3a972d7b5949fb79f0ab98612060a109cbb/source/js/utility/metadata.js#L181
Slightly above, we set the variable scrobbles. Make two new ones trackScrobbles and artistScrobbles for the new global data you made previously. Use this line as guidance to update the new data: $('.scrobbles .scrobbleCount').text(scrobbles ? scrobbles : '');. For example, $('.scrobbles .trackScrobbleCount').text(trackScrobbles ? trackScrobbles : '');. Since this info is hidden by default, you should also put a new toggleDisplay under the existing one. You only want it to toggle when both pieces of data are loaded: toggleDisplay('.scrobbles', trackScrobbles && artistScrobbles);
Now that the UI is ready to be updated, we need to make sure it happens when the API calls are successful. At the end of your setScrobbles function, call updateMetadata. I think everything should be working now!
When new tracks load, we need to hide this extra data again until it's loaded. Find somewhere good to put toggleDisplay('.scrobbles', false); so it works reliably on each state change. There's an edge case here where a new track loads between the time the scrobble API call starts and finishes, so the API response data is actually displayed for the track that was playing previously. If you want, ignore this part for now and we can think about it once the main functionality is in place.

This turned out longer than expected, but it should be everything you need to get it to work. Feel free to deviate and ask questions as needed. If it's overwhelming or you decide you don't want to code it, I'm happy to do so!  Good luck

Last.fm wouldn't let me use mbids in the API requests, but artist and track names should work fine. This seems to have turned out pretty good!

Is this new feature supposed to show 0 scrobbles when the track is new in my library? Currently I'm listening to my new Spotify Release Radar playlist, and most tracks do not have any scrobbles yet, so I do not see a counter for track and artist scrobbles yet.

I think if both the artist and track scrobble counts are 0, it might treat it as an error and not display. I'll try to test it out later!

Looks like 0 artist and 0 track scrobble counts show up fine, so probably just a cache thing!


Please add Output destination option to GUI version.

Currently the GUI version only outputs to the same folder the files are added to convert from. This can make it quite inconvenient when converting many files in separate source folders, as the user needs to go into each individual source folder to collect the KCC converted files for upload to their device.
Please add an option to send all output files from KCC to a user-specified destination folder.

Shift+click Convert button.

oh, i was looking all over the wiki for that but it wasnt mentioned anywhere

SECRET UNLOCKED ;-)


permission denied

Permission denied (publickey).
fatal: Could not read from remote repository.

Try adding an SSH key. Look in Settings and SSH and GPG keys

I'm trying to do the clone but I'm getting the same thing. Can someone help me?

please help with the issue !

same issue here... Am I so newbie for this??

Hi pallense did you ever find out the problem and how to fix it i have the same issue and i have no idea on what to do
ps:IM new to raspberry

You need to add an ssh key to your settings in GitHub. I don't have instructions but Google has a ton of amswers

The below worked fine for me: git clone https://github.com/HackerShackOfficial/Smart-Mirror.git


Fix streaming for LLMs

The LLM endpoints require that we use streaming and additionally the final streamed output should be in the job done output. This enables this functionality.

Let's define the docs on the expected behavior of how streaming should be handled and where functionality is divided between the SDK and the handler.
If the stream looks like A > B > C, then we will only be returning C as well as omitting the empty return at the end.
If the stream looks like A > AB > ABC, then this makes sense, however, that would be making an assumption that all users who implement streaming will have that behavior from their handler.


 This shouldn't happen
Steps to Reproduce
See example: https://x.com/jmduke/status/1852148356161659062
Logs
No response
System Info
No response
Severity
annoyance
Additional Information, or Workarounds
A few ideas:

Add small right gutter to all columns with enough space to put a smaller sort icon when sorted
Alex Prejean's suggestion: What if there was a transparent graded color fill on the header cell with darker transitioning to lighter top to bottom to show descending order and inverse for ascending. Eye is quickly drawn to the column being sorted and you keep all the real estate in the column name cell
Add the sort icon in a layer above the column header cell - when applied it appears with a semi-transparent background. If it overlaps the text, it will partially block the text but keep the cell size the same

Requirements:

No default icon - only show when sort is applied (too cluttered otherwise)
Eliminate cell shift/resizing
Sort icon should never be on its own on a row

I would vote for gutter here

just for reference


undefined is not a valid JSON

Sometimes the bot gets a checklist error and functions normally.
But if the bot fetches the checklist successfully it gives this error.

Yea it happens to me also

i honestly dont know, try to use the token from the config.json


New version: BanyanDataFrames v0.1.5

Registering package: BanyanDataFrames
Repository: https://github.com/banyan-team/banyan-julia
Created by: @calebwin
Version: v0.1.5
Commit: ef3e4177c54e6e9fbfb72f6be1005cf016fa6df2
Git reference: v21.12.19
Description: An extension to the Julia language for massively parallel cloud computing

@calebwin please see the message above.  Once you fix the automerge issues you can register again the new revision without changing the version number and this pull request will be automatically updated.
[noblock]


(User guide) Referenced wrong method

strtoupper is a PHP method for uppercase strings. (https://www.php.net/manual/en/function.strtoupper.php)
Checklist:

[x] Securely signed commits
[ ] Component(s) with PHPDoc blocks, only if necessary or adds value
[ ] Unit testing, with >80% coverage
[x] User guide updated
[ ] Conforms to style guide

Thank you @beganovich


Try even more code coverage tuning

Codecov Report

Merging #188 (17bb37e) into main (b2d0e1a) will increase coverage by 0.4%.
The diff coverage is 100.0%.

@@           Coverage Diff           @@
##            main    #188     +/-   ##
=======================================
+ Coverage   98.8%   99.2%   +0.4%
=======================================
  Files         43      43
  Lines       2887    2913     +26
=======================================
+ Hits        2851    2888     +37
+ Misses        36      25     -11

Impacted Files
Coverage Δ

examples/example009a_boost_math_standalone.cpp
96.8% <100.0%> (+2.0%)
:arrow_up:

examples/example009b_boost_math_standalone.cpp
100.0% <100.0%> (+2.4%)
:arrow_up:

examples/example011_trig_trapezoid_integral.cpp
100.0% <100.0%> (+2.0%)
:arrow_up:

test/test_decwide_t_algebra_edge.cpp
100.0% <100.0%> (ø)

math/wide_decimal/decwide_t.h
98.4% <0.0%> (+0.3%)
:arrow_up:

util/utility/util_dynamic_array.h
100.0% <0.0%> (+3.0%)
:arrow_up:

Continue to review full report at Codecov.

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


libpigpio memory

Hi,
I have coded a C# app that uses libpigpio. I have crashed due to unhandled signals, and I am searching for the cause. It can be either a C# lib I am using (ImageSharp) or libpigpio.
How can I diagnose if it comes from libpigpio ?
I have errors like that :
2017-09-27 00:00:42 sigHandler: Unhandled signal 11, terminating
2017-09-27 00:00:42 sigHandler: Unhandled signal 11, terminating
*** Error in `./App': double free or corruption (out): 0x6eb00470 ***
2017-09-27 00:00:42 sigHandler: Unhandled signal 6, terminating

I have also Unhandled signal 34 occuring.
These errors appear randomly...

According to similar reported issues like this  there may be an uninitialized pointer in your code somewhere.  Gdb may be your friend but I'm no expert.

Thanks @guymcswain, but I remember one important thing that could be interesting. I am using libpigpio cross-thread... I initialize the library in the main thread, and its methods are called from a secondary thread. I don't have concurrency problems in my code (yet), only the lib that is initialized in a thread and use in another. Only 2 threads.
Library is well initialized (gpioInitialise), and work well for some seconds before crashes occure.
The topic you linked looks similar. It not java, but C# in my case... I will try to increase libpigpio logging level to see if I can get more data...

Well I think there are different things.
First, it seams that the pigpio signal handler can interfere with signals that can be used by the application. For example, if I remember well, Mono uses SIGSEGV signals to handle NullReferenceException. (docs).
So I suspect that the dotnet core runtime for linux also uses signals, but seams they are caught by libpigpio.
If I read the code correctly, signals are only used in logging level changing (code). Beside the logging, is pigpio signal handling really necessary when used as library ? Logging level could be handled by methods (get/set logging level, and setting a custom logging handler)...

Just seen https://github.com/joan2937/pigpio/issues/138... That explains things. I will continue in this issue.


Pass TLS connection context into Request

currently in the connection handler we just call tower_h2::Server::serve(socket)
it would be useful if there was a way to pass metadata to that call that is later available in Request
specifically i'd like to give it the client certificate

any consensus on how that should be implemented?
i would prefer a service wouldn't be Cloned but instead reconstructed on every incoming connection with the connection passed as argument.
impl server::Greeter<C> for Greet<C> {
    pub fn new(c: C) -> Self

In general, this is what the extensions field on http::Request is for.
While manual for now, you should be able to do what you want by calling serve_modified instead: https://tower-rs.github.io/tower-h2/tower_h2/server/struct.Server.html#method.serve_modified. You then stick the certificate into the request's extension slot: https://docs.rs/http/0.1.6/http/request/struct.Request.html#method.extensions_mut
Does this work?

Here's an example where we do something similar in Conduit:
https://github.com/runconduit/conduit/blob/13b33b6f3a257e8261cab599b2fc956b741636cb/proxy/src/transparency/server.rs#L187-L192

I'm going to close this, but feel free to post additional questions or let me know if you think there are remaining actionable items (and I can open it again).

this sounds great, but tower_grpc::Request does not contain the http::Request so there's no way to get the extensions out

I think it would be fine to include the extensions as part of the grpc request type.
@olix0r @seanmonstar  Thoughts?

So, we're suggesting that grpc::Request::from_http steals http::Request's extension map? SGTM.

@aep is this something you want to contribute?

can do later :)

possibly related: https://github.com/hyperium/hyper/pull/1594


incorrect check for replicaSet

https://github.com/nightw/mikoomi-zabbix-mongodb-monitoring/blob/master/mikoomi-mongodb-plugin.php#L443
the condition should be if (!($rs_status['ok']))

@cikin Are you sure that this is true for all MongoDB versions? On which version is it bad specifically? I've just merged a pull request which uses separate directories for different MongoDB versions. Could you please send a pull request for the right ones to fix this bug? Thank you.

Hi @nightw ,
I don't think it's related to the Mongodb version. The idea is that you can execute rs.status() against all mongo components (stand-alone/config/mongos/rs members) and rs.status() output won't be null/0 never. You have to rely on the actual return code.
Here's an example
#config server
configsvr> rs.status()
{ "info" : "configsvr", "ok" : 0, "errmsg" : "not running with --replSet" }
configsvr> db.adminCommand({replSetGetStatus:1})
{ "info" : "configsvr", "ok" : 0, "errmsg" : "not running with --replSet" }

#mongos
mongos> rs.status()
{
	"info" : "mongos",
	"ok" : 0,
	"errmsg" : "replSetGetStatus is not supported through mongos"
}
# standalone
> rs.status()
{ "ok" : 0, "errmsg" : "not running with --replSet" }
>
#rs member
ReplSet1:PRIMARY> rs.status()
{
	"set" : "ReplSet1",
	"date" : ISODate("2016-06-15T16:40:13Z"),
	"myState" : 1,
	"members" : [
		{
			"_id" : 0,
			"name" : "localhost:30001",
			"health" : 1,
			"state" : 1,
			"stateStr" : "PRIMARY",
			"uptime" : 26250,
			"optime" : Timestamp(1464886954, 3),
			"optimeDate" : ISODate("2016-06-02T17:02:34Z"),
			"electionTime" : Timestamp(1465982567, 1),
			"electionDate" : ISODate("2016-06-15T09:22:47Z"),
			"self" : true
		}
	],
	"ok" : 1
}

Hope this explains it.
Thanks!

As a side note: I was testing on MongoDB 2.6

@nightw Done.

@cikin I've merged it. Thank you for the fix.


use codecov-action@v2 #177

Closes #177

Codecov Report

Merging #178 (41e8dab) into main (c15ee27) will increase coverage by 0.76%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #178      +/-   ##
==========================================
+ Coverage   74.86%   75.62%   +0.76%
==========================================
  Files          49       49
  Lines        1619     1994     +375
==========================================
+ Hits         1212     1508     +296
- Misses        369      448      +79
  Partials       38       38

Impacted Files
Coverage Δ

oauth1.go
84.84% <0.00%> (-3.11%)
:arrow_down:

tweets/types/tweet_timelines_parameter.go
35.55% <0.00%> (-2.68%)
:arrow_down:

oauth2.go
4.00% <0.00%> (-1.27%)
:arrow_down:

spaces/types/search_spaces_parameter.go
91.66% <0.00%> (-1.20%)
:arrow_down:

tweets/types/search_tweets_parameter.go
87.23% <0.00%> (-1.01%)
:arrow_down:

tweets/types/tweet_lookup_parameter.go
94.23% <0.00%> (-0.77%)
:arrow_down:

users/types/user_lookup_parameter.go
94.28% <0.00%> (-0.72%)
:arrow_down:

tweets/types/tweet_counts_parameter.go
93.40% <0.00%> (-0.72%)
:arrow_down:

spaces/types/spaces_lookup_parameter.go
86.11% <0.00%> (-0.56%)
:arrow_down:

utli.go
100.00% <0.00%> (ø)

... and 18 more

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 c15ee27...41e8dab. Read the comment docs.


Implicit initializations of devices at runtime.

Right now, the devices are initialized when the dll are loaded, but approach does not work with statically linked libraries.
In a lengthy slack exchange, we derived this solution
Here is the model presented to the user:

initialization of the devices used for evaluations of graphs are done implicitly for the user. No actions are required. We expect most user to be happy with this simple mode.
However, if the user wanted to explicitly initialize the devices, we provide a call to do so.
*Further, if a user wanted to shut down the devices, we provide a call to do that as well. It is up to the user to make sure that this call is not concurrent with any graph evaluations. The runtime does not check for this condition and undetermined results occur when this condition is not satisfied.

In more details, here are the steps needed to provide this interface.

My understanding is that this “init” must only be called before executing, not creating tensors and or filling them with values. Thus we  propose that inside the run_main_graph, the compiler will automatically add a code of this effect: if (! OMRuntimeIsInitialized) OMRuntimeInitialize(). For 99.999% of the calls, that will corresponds to a single load, compare, and branch per graph evaluation (not per NNPA instruction, for the whole graph). We believe that this should be very reasonably low. Performance runtime such as OpenMP all do that, so this is not novel. The OMRuntimeInitialize() will be thread safe, so even if multiple graphs are evaluated in parallel, only one thread will initialize, and the other threads that may have concurrently tried to initialize will wait until the “winning” threads complete the initialization.
I think it may be good practice to add an explicit OMRuntimeInitialize() explicit call in our runtime interface in case some systems want to call it explicitly. It is not required, but it might be useful in some cases. Similarly, if “initializing” a device resulted in heavy blocking of resources in an arbitrary device,
I think it would be also good practice to add an explicit OMRuntimeShutdown() . To keep cost low, this call requires that the user ensure that this shutdown is never called while any graph evaluations are in-flights. Results will be undefined when shutdown is called with graph evaluations in flight. The application using onnx-mlir graphs can trivially implement counters of in-flight evaluations if it needed to do so. We don’t want to move this to our side of the runtime as this will requires locks/atomic operations for each graph evaluation, which is too high a price to pay (as it occurs for each call to a graph, not just the first one).
Implementation (for us only). Each accelerators being supported in onnx-mlir will provide a (possibly empty) init and shutdown method. When building onnx-mlir for a given set of accelerator S, the OMRuntimeInitialize() and OMRuntimeShutdown will call the init and shutdown for each accelerators in S. Practically, this mean that if the NNPA library has code to initialize the NNPA, we must include a call to this inside the onnx-mlir support for the NNPA accelerator.

So now the code to generate is as follow

inside run_onnx_graph() and all named entry points to execute a graph compile for accelerator X: if (!OMIsInitializedAccelX) OMInitializeAccelX().

we need to add a definition of  OMIsInitializedAccelX set to zero in the OMRuntime .c and .h
we need to add an OMInitializeAccelX() for each supported accelerator in the OMRuntime .c and .h
we need to add the testing code when generating the run_onnx_graph() entry points.

We need to add an OMShutdownAccelX() for each access in OMRuntime.c and .h

I need help for 1.3 above.

I'm not sure what OMRuntimeInitialize()/OMRuntimeShutdown() are supposed to do. The discussions we had on slack and webex were mostly about OMInitializeAccelX()/OMShutdownAccelX().

Updated the original post to reflect the newer names, that should clear the confusion.

I suggest we focus on the generation of the internal init/fini calls first. Exposing them to the API users should be considered much more carefully since adding a call is easy but removing one will typically be a nightmare. We should only be adding calls if there are clear demands from use cases. I'm not convinced yet why you want to manually do init/fini when they are already done for you automatically.

I need help for 1.3 above.

Do you mean this we need to add the testing code when generating the run_onnx_graph() entry points.? If so I can help. I did generate if-then-else for  multiple entry points, it should be the same here for accelerators. The accelerator to test can be obtained from --maccel.

I suggest we focus on the generation of the internal init/fini calls first.
@gongsu832 The hard part is to generate the internal init/fini calls. They need to be part of the ONNX Runtime.
Exposing the interface is something we can do later

Do you mean this we need to add the testing code when generating the run_onnx_graph() entry points.? If so I can help.
@tungld yes, that would be great

done with #1357 and another PR for adding calls to this new functions #1374


Survey form:Microverse Admissions trial project for review

In this project,I copied the code from one of my Admission trial projects,created a new repository ,added a new branch and copied the code to the new branch,For code review practice.

Hi @Tumworobere ,
Good job so far!
There are some issues that you still need to work on to go to the next project but you are almost there!

Required Changes ♻
Check the comments under your review comments.
Optional suggestions
Every comment with the [OPTIONAL] prefix is not crucial enough to stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


docs: update installing documents and quick-start

Ⅰ. Describe what this PR did

Update the building and installing documents due to the PR: #276
Add installing client with image to QuickStart

CI fails with valid link check:
FILE: ./docs/quick_start/README.md
[✖] cli_ref/dfget.md

ERROR: dead links found!

CI fails with valid link check:
FILE: ./docs/quick_start/README.md
[✖] cli_ref/dfget.md

ERROR: dead links found!

fixed

Codecov Report

Merging #279 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #279   +/-   ##
=======================================
  Coverage   61.71%   61.71%
=======================================
  Files          30       30
  Lines        1669     1669
=======================================
  Hits         1030     1030
  Misses        607      607
  Partials       32       32

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 1322b5f...19dd0da. Read the comment docs.


plugin not appearing in Apps tab in 3.0.4

I have been trying to install the plugin in grafana 3.0.4 running inside a docker container based on CentOS 7.  I followed the first step:

grafana-cli plugins install alexanderzobnin-zabbix-app

This indicated that the plugin had been installed.  I restarted the container so the change could take effect.  When I log into grafana and click Plugins->Apps though I don't see any apps installed at all so I can't enable the plugin.
I don't see anything in the /var/log/grafana/grafana.log file that looks promising.  No obvious errors or exceptions.
When I run "grafana-cli plugins ls" I see the plugin is installed:

installed plugins:
alexanderzobnin-zabbix-app @ 3.0.0

I can see the plugin in the plugins directory:

ls -l /var/lib/grafana/plugins/
total 4
drwxr-xr-x 7 root root 4096 Jul 14 20:11 alexanderzobnin-zabbix-app

Is there anything else I should be looking for to diagnose this?
Thanks!

Hi, @brianburton . Not sure about containers, can you restart grafana inside docker? You should see msg="Registering plugin" logger=plugins name=Zabbix in logs:
t=2016-07-15T12:58:07+0000 lvl=info msg="Starting Grafana" logger=main version=3.1.0 commit=v3.1.0 compiled=2016-07-12T06:42:28+0000
t=2016-07-15T12:58:07+0000 lvl=info msg="Config loaded from" logger=settings file=/usr/share/grafana/conf/defaults.ini
t=2016-07-15T12:58:07+0000 lvl=info msg="Config loaded from" logger=settings file=/etc/grafana/grafana.ini
t=2016-07-15T12:58:07+0000 lvl=info msg="Config overriden from command line" logger=settings arg="default.paths.data=/var/lib/grafana"
t=2016-07-15T12:58:07+0000 lvl=info msg="Config overriden from command line" logger=settings arg="default.paths.logs=/var/log/grafana"
t=2016-07-15T12:58:07+0000 lvl=info msg="Config overriden from command line" logger=settings arg="default.paths.plugins=/var/lib/grafana/plugins"
t=2016-07-15T12:58:07+0000 lvl=info msg="Path Home" logger=settings path=/usr/share/grafana
t=2016-07-15T12:58:07+0000 lvl=info msg="Path Data" logger=settings path=/var/lib/grafana
t=2016-07-15T12:58:07+0000 lvl=info msg="Path Logs" logger=settings path=/var/log/grafana
t=2016-07-15T12:58:07+0000 lvl=info msg="Path Plugins" logger=settings path=/var/lib/grafana/plugins
t=2016-07-15T12:58:07+0000 lvl=info msg="Initializing DB" logger=sqlstore dbtype=sqlite3
t=2016-07-15T12:58:07+0000 lvl=info msg="Starting DB migration" logger=migrator
t=2016-07-15T12:58:07+0000 lvl=info msg="Starting plugin search" logger=plugins
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name=Zabbix
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name="Zabbix Triggers"
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name=Zabbix
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name=Clock
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name="Pie Chart"
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name=Histogram
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name="worldPing CTA"
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name="worldPing Endpoint List"
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name="worldPing Endpoint Nav"
t=2016-07-15T12:58:07+0000 lvl=info msg="Registering plugin" logger=plugins name=worldPing
t=2016-07-15T12:58:07+0000 lvl=info msg="Server Listening" logger=server address=<IP_ADDRESS>:3000 protocol=http subUrl=

Hi..Could you share the manual steps equivalent to below commend for zabbix-grafana plugin installation ?
"grafana-cli plugins install alexanderzobnin-zabbix-app"
My installation is failed due to a restriction in network for direct download. Tried copying files from "https://github.com/alexanderzobnin/grafana-zabbix" and placed in '/var/lib/grafana/plugins' and given permissions for grafana user & group , but that didn't help. Any suggestions ?

@satheesh111 Just read this http://docs.grafana-zabbix.org/installation/#from-special-repo

@alexanderzobnin thanks very much for your quick response on this. I'll try those steps.

@alexanderzobnin thanks for your help.  I found the problem.
Even though grafana-cli reported that the plugins should live in /var/lib/grafana/plugins the grafana-server process actually wanted them to be located in /usr/share/grafana/data/plugins.  Once I moved the plugin there and restarted the docker container the log reported that the plugin loaded.

@brianburton  Yes, it's strange default behaviour of grafana-cli. Try to set $GF_PLUGIN_DIR env variable to /var/lib/grafana/plugins/ explicitly.


Enhancement: Authelia user group name

heya thanks for the great plugin.
If I may recommend an enhancement, it'd be great to have a Authelia user group name so that only users assigned to - let's say group jellyfin_user - are allowed to login.

Hi!
The thing you want to achieve is already doable, but via a slightly different mechanism.
You can restrict access by groups just with the Authelia configuration:
access_control:
  rules:
  - domain:
    - jellyfin.yourdomain.com # This is the domain that you enter in the plugins configuration, field from the screenshot
    policy: one_factor
    subject:
    - "group:media" # This is the group, only users that are in this group are allowed to log in in Jellyfin

ohh I didn't know, many thanks for pointing this out!


feat: add debug spans for decoding requests

Closes: #1759
Motivation
Adds optional debug spans into the decoder state. At the same time, it resolves a size regression in the State struct, which got much larger because of the inclusion of the Status in the error. The size change overall is from 16 bytes (v0.11.0) to 176 (master) to 56 (this PR).
Solution
Adds tracing spans at the debug level for tracking decoding of streaming messages. This should have negligible overhead when debug spans are not enabled, and provide some more context when they are enabled.
Boxes the Status in the Error variant to avoid size bloat for the common case.
If desired, this functionality could be gated behind a feature, but I start off by avoiding the extra complexity of adding conditional compilation code.

I wonder if there's value in more explicit boxing of Status, or if Status should internally box in order to reduce its size.

This seems reasonable to me, thanks! (Sorry for the delay in reviewing.)

I wonder if there's value in more explicit boxing of Status, or if Status should internally box in order to reduce its size.

Could make sense to evaluate this next, in a separate PR? How/why is the size of Status causing issues for you?


Editor freezes when sketch is paused in the debugger of the built-in browser

To reproduce:

Create a sketch with some errors in it
Run it (with "run in browser" turned off)
Click the gear button on the built-in browser to open the console
In the "sources" tab, turn on "pause on exceptions" (the pause button in an octagon in the upper right corner of the window)
Reload the page.  The debugger should activate, and the editor will freeze.
Try to edit the code (in the editor), or even scroll up or down. As you will see, it's frozen, so you can't.

This functionality could be very useful for debugging if it didn't freeze up the editor.

thanks for bringing this up.
I'm not sure we'll be able to fix it since it seems to relate to how nw.js works - although of course you can get around the problem by selecting the "run in browser" option.


WO analytics - Earned %

Earned skal være i %

@AreWiv Pushed to production as it was a minor detail.
https://webserver-fusion-project-portal-prod.radix.equinor.com/apps/workorder/3380fe7d-e5b7-441f-8ce9-a8c3133ee499?tab=powerbi


Storage : 8 Samples Added

storage_set_metadata
storage_get_service_account
storage_set_bucket_public_iam
storage_rotate_encryption_key
storage_object_get_kms_key
storage_object_csek_to_cmek
storage_bucket_delete_default_kms_key
storage_compose_file

Where is the source for the region tags?
I see "storage_object_get_kms_key" region tag that is not required as per the Storage Sample Coverage doc


VSCode debugger not available for Fedora 25

Environment data
dotnet --info output:
.NET Command Line Tools (1.0.0-rc4-004771)
Product Information:
Version:            1.0.0-rc4-004771
Commit SHA-1 hash:  4228198f0e
Runtime Environment:
OS Name:     fedora
OS Version:  25
OS Platform: Linux
RID:         fedora.23-x64
Base Path:   /opt/dotnet/sdk/1.0.0-rc4-004771
VS Code version: 1.9.1
C# Extension version: 1.7.0
Steps to reproduce
Install extension on Fedora 25.
Expected  behavior
Debugger is downloaded.
Actual behavior
[WARNING]: The current Linux distribution 'fedora' version '25' is not currently supported by the .NET Core debugger. Debugging will not be available.

I know that Fedora 25 is not officially supported but the download links for the Fedora 24 version would be helpful as I know that works on Fedora 25 as well.
I used to copy the .debugger folder every time I upgraded the extension but after an upgrade to 1.7.0, the previous versions of the plugin were deleted along with the debugger.

You can find the links in https://github.com/OmniSharp/omnisharp-vscode/blob/master/package.json#L212 if you want to try hacking it up. You can also try tweaking this line to treat Fedora 25 as Fedora 24. If that works, we are happy to take a PR. Make sure to try expression evaluation in at least some basic way.

The process of getting the debugger running in Fedora 25 is a little bit more involved so I won't submit a PR.
The steps are as follows for anyone that is interested:

Get the source for https://github.com/dotnet/coreclr
Compile coreclr on your machine
Download the debugger from the link provided by @gregg-miskelly.
Place the debugger in a folder .debugger/ under ~/.vscode/extensions/ms-vscode.csharp
Replace the System.Globalization.Native.so from the coreclr build output.

This should give you a working debugger in Fedora 25.
Thanks for your help @gregg-miskelly.

@cruz82 Thanks! Hopefully the .NET Core team will have official builds sooner rather than later so we have an official story.


Create index.md

Hello @imhunterand, your pull request is the template for an Earth Engine community tutorial. We cannot merge this change.
If you are interested in contributing a tutorial, please follow the instructions on this page starting with proposing a tutorial. If you need assistance, please let us when you fill out the tutorial proposal.


doc: update README.md

README.md:

Update the main README.md with a clear and concise explanation, incorporating usage instructions.
Include a demo gif of the launched dashboard.

auto_explanation.py:

Add comprehensive annotations throughout the code to enhance readability and understanding.
Ensure consistency in annotation style and formatting for a unified and maintainable codebase.

Yes, I like the dashboard name too. It is very expressive and can help getting rid of confusion


Protobufjs vulnerability

A dependabot alert appeared in one of our repos related to protobufjs, this is the alert:

After some traversing in our dependency tree I noticed that the latest version of cosmjs-types have it as a dependency.

I also saw that a PR was already merged to remove it from the package.json of the project so I would like to know when that change would be readily available so I can upgrade the version.
Thanks for your hard work!

I made a pre-release now and the integration is here: https://github.com/cosmos/cosmjs/pull/1484. Still a bit of work but once done, we can get a new CosmJS out with the dependency upgrade.

I think you can now just upgrader to version 6.11.4. At least this was recognized as a fixed version by GitHub in a different project I worked on. The version range was updated here: https://github.com/advisories/GHSA-h755-8qp9-cq85
Assuming this is done by using 6.11.4. In the meantime we try to get rid of the dependency, but this is likely not completely easy.


feat(connector): [Trustpay] add authorize (cards 3ds, no3ds and bank redirects), refund, psync, rsync

Type of Change

[ ] Bugfix
[x] New feature
[ ] Enhancement
[ ] Refactoring
[ ] Dependency updates

Description
Added Cards 3DS, No3DS, Bank Redirect, Refunds for Trustpay Connector
Additional Changes

[ ] This PR modifies the database schema
[ ] This PR modifies application configuration/environment variables

Motivation and Context

How did you test it?
I've written unit test cases which are suitable for the flows supported by connector.
And, I've manually tested all the flows.
Cards No3DS:

Cards 3DS:

Refunds:

Bank Redirect - Giropay:

Checklist

[x] I formatted the code cargo +nightly fmt --all
[x] I addressed lints thrown by cargo clippy
[x] I reviewed submitted code
[x] I added unit tests for my changes where possible
[ ] I added a CHANGELOG entry if applicable

After making the changes, please try out th test cases which were tested initially, to make sure that the changes are implemented safely without any bugs


Dead link in readme

This gem is also gloriously untested so I will assume that each time we use it a TDD enthusiast's head explodes.

This one untested too. :)
How about replacing with this one.

That image link broke like a million times already. :dancer:
+1 to include it in the repo and be done with it, but I defer to @sauron who is currently maintaining Planet. :)

Ha!
@debugger22 Nice picture! Including it right now!
But hopefully it wouldn't last long :trollface:
brb, changing a picture!


Proposal: clear badge, when opening bell tab

The bell has no number.

The badge should be cleared when opening the alerts - tag.
Currently one need to open all new alerts. A "Mark all read" button is also missing.
Better: clear tab bell aber visiting the tab.

Mark all as read is a no brainer :+1:
Personally I like the reminder and actively keep notifications unread that I still want to react to, to the point of marking stuff unread after I initially read them.
So maybe this is a good thing to a little user poll about :)

If there is a 'mark all' on top of the list - it's absolut OK. Then the badge must not vanish on open the tab.
But I still like to see a number inside it.
Then function is symmetrical to what I see in the web-ui.

Mmh, I'm not entirely confident there's enough space for such a bubble on all devices, but let's try it out :)


The "--i" option does not exist.

Looks like its not possible to include --i option mentioned in the readme?

Hi @tonycodes. It should be either -i or --include-nullables and not --i


Stacks In Tabs Snack Sample is out of date (and may not work)

This sample:
https://snack.expo.io/@react-navigation/stacks-in-tabs
From this page:
https://reactnavigation.org/docs/en/tab-based-navigation.html#a-stack-navigator-for-each-tab
Is out of date:

It does not use the proper component names (TabNavigator instead of createTabNavigator)
Its using "react-navigation": "1.0.0-beta.27"

I tried changing all those things restated the App (on Snack) the page flashes up and then I get an error:
Device: (146:59) undefined is not a function (evaluating '(0, _reactNavigation.createStackNavigator)({
Home: { screen: HomeScreen },
Details: { screen: DetailsScreen }
})')
NOTE: I was using SDK v27.0
Not sure what's wrong... but I could be Snacking (?) wrong.

thanks, fixed https://snack.expo.io/@react-navigation/stacks-in-tabs


iOS logs an error

I am not sure if this impacts functionality at all, but iOS logs an error after successfully uploading a file:
URLSessionDidCompleteWithError: upload completed
URLSessionDidCompleteWithError: response: null, task: completed
error write Error Domain=NSCocoaErrorDomain Code=3851 "Property list invalid for format: 100 (property lists cannot contain objects of type 'CFNull')" UserInfo={NSDebugDescription=Property list invalid for format: 100 (property lists cannot contain objects of type 'CFNull')}

The culprit seems to be in the UploaderResultDatabase, line 62.
        results.append([
            Key.taskId: taskId,
            Key.status: UploadTaskStatus.completed.rawValue,
            Key.message: message ?? NSNull(),
            Key.statusCode: statusCode,
            Key.headers: headers
        ])

But this only occurs when there is no server response body from the upload request. In my case the server only responds with a 201 CREATED without any further information. So then the message is nil here and apparently NSNull() is not an acceptable value here.
I would suggest defaulting to an empty String here instead of CFNull.

@lyio I am still able to reproduce this issue in ^3.0.0-beta.2
Is the fix pushed on this version ?
I see a commit for the fix, but the resolution isnt available in the above mentioned version.

afaik this has not been released yet, sorry.


Workspace change disabled when using deattached web apps

When I use a deattached (from web browser --Brave in my case, but perhaps also with Chrome--), the workspace changing is disabled. As an example, whenever I open in a deattached web app Whatsapp, Protonmail, Reddit or whatever you use, I can't change workspace unless I use the mouse to select in the sway-bar the workspace I want to go to. It also happens that I can't open new apps/windows in that workspace (where the app is opened/been used). Is like the windows key gets disabled for some unknown reason whenever a new web app window is opened in a workspace.

I can reproduce this. It's like the chrome apps gain all focus, when you use chrome apps (chrome://apps). Weird.

Seems to be a known problem.
I will add
# Don't allow applications to inhibit shortcuts, i.e. grab total control of the
# keyboard. Chrome currently abuses this by enabling it for all "--app=..."
# shortcuts.

seat * shortcuts_inhibitor disable

to our sway config.

@all-contributors please add @arkaitz-dev for reporting a bug


Option to disable name prefix

I use already ftbranks with custom prefixes for ranks and nick prefix can be sometimes annonyng displaying 2 prefix on name

This is already in the sever config. "display_job_in_chat_and_tab" and "format_chat".


crystal: fix "play" subcommand

Co-authored-by: Merlin Göttlinger<EMAIL_ADDRESS>Motivation for this change
Add dependencies needed by the Crystal web REPL
Things done

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

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

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

Is a backport required?

@Mic92  "play" is a really optional tool used to learn the language so it shouldn't affect the compiling. Users can point to https://play.crystal-lang.org in the meanwhile :-)

@zarelit backports are easy to do. The question is, if this commit would also enable the command in nixos 18.09.

@Mic92 the cherry-picking created conflicts so here is a new pull request for the backport. I never did one so plese let me know if it's the right workflow or not :-)

@zarelit looks good to me.


97804 application overview UI only Changes

PR with just UI changes required for application overview story, which are:-

New School Overview Page
New view models for new pages / partials
New Service methods (2)
New tests
Amended application overview page partially as per figma / partially as per as-is

I find PRs this size a bit overwhelming so I haven't been able to map it all out in my head. Couple of comments:

Are you going to add some integration tests soon? Our other front-ends use the Mvc.Testing.WebApplicationfactory to run an in-memory app and WireMock to mock the API.
The use of TempData for a new application- it picks up the last used data when I start a new application again

Also I noticed some calls to Html.Raw - not part of this PR but do you need them?

I think when I come to plumb in the real academies API I can expand out the ResilientRequestProvider tests
I chose this temp save mechanism for now, so that I can move through the wizard, i suspect this code will change once the API is plumbed in
Html.Raw is on the YourApplications page that's been in there a while. Agree it should be removed at some point


Prediction intervals for machine learning models

Description

Checklist:

[x] This PR has a meaningful title and a clear description.
[ ] The tests pass.
[ ] All linting tasks pass.
[x] The notebooks are clean.

Hey @Naren8520, can you please move this notebook to the nbs/docs folder and add it to the nbs/sidebar.yml file?

I think the function does not display both sets, or if it displays it, it cannot be seen because of the color

View entire conversation on ReviewNB


SCT-1233 Add get mappings to core code

Pull Request Test Coverage Report for Build 139

9 of 9 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.05%) to 95.666%

Totals

Change from base Build 138:
0.05%

Covered Lines:
618

Relevant Lines:
646

💛  - Coveralls


New spec for api-version 2017-03-15-preview Version 2

This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process.
PR information

[X] The title of the PR is clear and informative.
[X] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
[X] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch.
[X] If applicable, the PR references the bug/issue that it fixes.
[X] Swagger files are correctly named (e.g. the api-version in the path should match the api-version in the spec).

Quality of Swagger

[X] I have read the contribution guidelines.
[X] My spec meets the review criteria:

[X] The spec conforms to the Swagger 2.0 specification.
[X] The spec follows the guidelines described in the Swagger checklist document.
[X] Validation tools were run on swagger spec(s) and have all been fixed in this PR.

New API version -- requesting @ravbhatnagar  review.
FYI - it's a simple change -- adding a type to the definitions and adding it's usage in WorkspaceProperties
 "Features": {
      "properties": {
        "legacy": {
          "type": "string",
          "description": "The legacy status of the workspace.",
          "enum": [
            "None",
            "GrandfatheredNonSuite",
            "GrandfatheredSuite"
          ],
          "x-ms-enum": {
            "name": "legacyNameEnum",
            "modelAsString": true
          }
        },
        "searchVersion": {
          "type": "string",
          "description": "The search version of the workspace.",
          "enum": [
            "OQL",
            "KQL"
          ],
          "x-ms-enum": {
            "name": "searchVersionNameEnum",
            "modelAsString": true
          }
        },
        "searchVersionUpgradeTime": {
          "type": "string",
          "format": "date-time",
          "description": "The search version upgrade time of the workspace."
        }
      },
      "required": [
        "legacy",
        "searchVersion"
      ],
      "description": "The features of the workspace."
    },

Hi @sw47,
Please address the provided comments to avoid having this PR closed for inactivity
Thanks,
Samer

Closing PR due to inactivity.

Can we reopen it and merge?


Use Axios instead of node-fetch

Fixes
Fixes #773 by @dhruvkb
Description

This PR

replaces the use of node-fetch in automations with Axios
Shamefully hoisting conflicting versions of node-fetch can break either the frontend or the automations (depending on the hoist order). This will most likely be fixed after Nuxt 3 migration (see nuxt/nuxt#14146) but for now, not using node-fetch is stabler.

updates the scope of files that trigger the frontend test-suite
The frontend being a workspace package means that changes to the root package.json and pnpm-lock.yaml will affect it.

removes duplicated fields from inner package.json
pnpm will read these fields from the root package.json anyway. The Dockerfile for Playwright which was coupled to the packageManager field has been decoupled as well.

Checklist

[x] My pull request has a descriptive title (not a vague title like
Update index.md).
[x] My pull request targets the default branch of the repository (main) or
a parent feature branch.
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[x] I tried running the project locally and verified that there are no visible
errors.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

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

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

Developer's Certificate of Origin 1.1

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

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

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

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

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

That would be fine too I guess. I went with axios because

using node-fetch v3 was breaking Nuxt
we already use axios in the frontend


##[error]The variables can not be found on the definition: , ,

In the Build Definition, On the Variables Tab I added two variables:
versionnumber 1.0.0
devopspat ***
In the Tasks, I added the Version Number Counter task, under the build solution task and linked the version variable and the PAT using the variables set up.
The Build process fails at the Version number counter task with the following error:
##[error]The variables can not be found on the definition: , ,

Could you share some screenshots

Here is a screen shot of the variables.

Here is the Version number Counter Task

The value for "saved version variable" should be the name of the variable and not the value. So in your example it should be "versionnumber"

Nope, that doesn't work. Same Result.

could you share screenshots after the last change?


provide validation for destination

https://discuss.istio.io/t/istio-1-1-ingressgateway-not-working-on-a-fresh-install/1581/5
I'm surprised our validation didn't fail for user's VS yaml.

As pointed out in the Discuss thread, the VirtualService has
      route:
      - destination:
          host: default/productpage

The Host is unusual because it contains a namespace.  Our documentation at https://istio.io/docs/reference/config/networking/v1alpha3/virtual-service/#Destination says the host should be a Kubernetes or Consul service name.
This produces an Envoy Route:
          "route": {
           "cluster": "outbound|80||default/productpage.default.svc.cluster.local",

but the Envoy Cluster has a different name:
     "cluster": {
      "name": "outbound_.9080_._.productpage.default.svc.cluster.local",

The bug is that we call ValidateWildcardDomain() for the host, but don't actually tolerate wildcards.

@frankbu Before you close this, the new logic allows
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: productpage
spec:
  hosts:
  - productpage
  http:
  - route:
    - destination:
        host: *
        subset: v1

That destination seems invalid.

@esnible The new logic is unchanged, it's just fixing a bug where a number of invalid cases where not failing the validation.
The wildcard syntax is allowed in the destination host to handle the case where the destination is an external service defined in a ServiceEntry. So whatever host is allowed in a ServiceEntry is allowed in a route destination. I know we've gone back and forth as to whether you can define a ServiceEntry for host *, but unless we decide it is definitely not supported, we should leave the validator as it is.
@rshriram do you think we should tighten up the validator to not allow * for a route destination?

Fixed in #13222