The 'Total value' label is not getting updated

Problem:
When the action GLOBAL.UPDATE_RATE_USD_FULFILLED is being resolved by the 'tokensReducer.js', one (or more) of tokens's rateUSD property are not updated properly. I'm pasting the code for reference:
var tokens = { ...state.tokens }
var rates = action.payload.rates
//map token
var mapToken = {}
rates.map(rate => {
  mapToken[rate.symbol] = rate.price_usd
})

//push data
var newTokens = {}
Object.keys(tokens).map(key => {
  var token = tokens[key]
  token.rateUSD = mapToken[token.symbol]
  newTokens[key] = token
})
return Object.assign({}, state, { tokens: newTokens })

The 'rates' variable does not always contains all of the tokens in the variable 'tokens', meaning rateUSD will be undefined if the properties (where the property name or token symbol 'key => {' is used as reference) don't match.
Now in AccountBalanceView when the function getBalanceUsd() is called, a sum by all the tokens is made but since there's undefined rateUSD properties, the multiplication will result in a NaN and converts.roundingNumber() returning 0 as consequence.
Fix:
I will not provide a direct fix based on the following concerns:

The env file kovan.json has SALT listed, which is one the tokens not returned by the back-end. Since I don't know how the back-end and deployments are handle I can't comment on that.
The code assumes that there will always be a 1 to 1 existence for the tokens in the account balance and whatever is returned by the back-end.
Validation can fix the issue (again that could be a deployment responsibility).

Thank you @Richard809 for the very informative bug report ever. We will take a look as soon as possible.

@tranvictor god is in the details...

It've been fixed in previous release, Please check our new website:  https://kyberswap.com/swap/eth-knc


WISH: HTTP api support multiple siteId for /api/text-to-speech

Actually, if we want to announce something in the house with all Rhasspy devices, we can send multiple requests to /api/text-to-speech?siteId=site1 then to site2 etc.
Problem is that each request wait for each device to have finished saying, so we have several seconds between each devices, the more devices /long sentence the more gap.
Would it be possible to use /api/text-to-speech?siteId=site1,site2,site3 to have all devices saying the sentence at same time ?
Thks

Done in last docker!


Store: Support disable block viewer UI.

Signed-off-by: wanjunlei<EMAIL_ADDRESS>

[x] I added CHANGELOG entry for this change.
[ ] Change is not relevant to the end user.

Changes

Add a new flag --web.disable for store, users can disable the block viewer UI of store using this flag.
This pr is similar #5723 , but there are still some differences.
If the compactor running with --web.disable, the block viewer UI and the bucket APIS will be disabled.
If the store running with --web.disable, only the block viewer UI  will be disabled.
The reason for this difference is the compactor bucket API uses a separate meta fetcher to sync the block meta, disable the bucket APIS can Reduce resource consumption. The store bucket APIS reuses the mete fetcher of buckets store, no additional resource consumption.
Verification

no new modifications, just to rerun the test

Looks good 👍 minus conflicting CHANGELOG changes

Resolved


[New API] server side triggered subscriptions for clients

provide functions to add/remove subscriptions for a client like
aedes#addSubscription(clientId, [{topic, qos}], cb)
aedes#removeSubscription(clientId, [topic], cb)

the only issue providing these with  the current aedes.handleSubscribe is lack of client object in above cases.
Two models I propose:

Can we change handleSubscribe to be safe when client object is not a real connected object? in this model if a clientId is connected, broker can provide the client instance.

Can we move these two into aedes-persistence, then the meaning of them will be changed to only store subscriptions.

I am +1 with 1, it might be the easier one to implement.

Main point about this is how to call subscribe on the actual client instance in a multi instance environment @mcollina. This can be solved either

Providing a core inter-node messaging inside aedes using e.g. the internal mqemitter inside aedes! this also can be used for other commiunication needs in a clustered env.

calling addSubscriptions with a third kind of a value like serverSub: true, this way the node with the connected client instance can call client.subscribe. this has to be implemented with care, not to collide with current handleSubscribe logic.

I think that's a good use for $SYS topics, so +1 for approach 1.

Has this api been done yet ? It's very useful in many cases.

don't know if I understand the point.
addSubscriptions with client argument has already been moved into https://github.com/mcollina/aedes-persistence/blob/master/persistence.js#L74, and removeSubscriptions also https://github.com/mcollina/aedes-persistence/blob/master/persistence.js#L106
and client.subscribe also pass client object to handleSubscribe in https://github.com/mcollina/aedes/blob/master/lib/client.js#L195
@elixiao could you elaborate more about your cases?

I haven't reviewed latest changes @gnought However this issue was about having an API to subscribe a user to a topic.
Normally subscribe happens from a connected client. Here we want to be able to subscribe on behalf of an offline connect

@gnought  @behrad Is there an api which can subscribe topics for already connected clients? Not from client side by client.subscribe(topics, cb) but server side by api like aedes.addSubscription(clientId, topics, cb)

it sounds like server has a capability to add/remove a subscription for a client, rather than client requests to subscribe/unsubscribe a topic by himself. May we know what the usage is for?

@gnought In my case, I attach aedes to my server. The server side database stores the publish/subscribe relationship which varies over time. The rules are:

when client has attribute A then it should subscribe topic A.
when client's attribute becomes B then it should unsubscribe topic A and subscribe topic B.

I think it's very convenient to addSubscription/removeSubscription on server side.


Don't count empty lines.

Fix #142

The tests have passed but status has not updated (seems to happen very often :( ).


Style/SafeNavigation suggested in improper context

The new Style/SafeNavigation cop is being triggered in a context that doesn't make sense, where using the safe navigation operator changes the meaning of the expression.
Given the following configuration:
AllCops:
  TargetRubyVersion: 2.3

and the following file:
require 'active_support/all'
test = [nil, '', [], {}, 'hello world']
test.delete_if { |x| x.nil? || x.empty? }
puts test

RuboCop suggests:
test.rb:3:22: C: Use safe navigation (&.) instead of checking if an object exists before calling the method.
test.delete_if { |x| x.nil? || x.empty? }
                     ^^^^^^^^^^^^^^^^^^

Expected behavior
It should not suggest using the safe navigation operator across a || expression.
x.nil? || x.foo is logically different than x&.foo when the return value is used:
[2] pry(main)> x&.foo
=> nil
[3] pry(main)> x.nil? || x.foo
=> true

Actual behavior
RuboCop suggests using the safe navigation operator.
Steps to reproduce the problem
Rum RuboCop 0.43.0 with the configuration provided above on the test code provided above.
RuboCop version
Include the output of rubocop -V. Here's an example:
john@nix:~/Projects/test$ rubocop -V
0.43.0 (using Parser <IP_ADDRESS>, running on ruby 2.3.1 x86_64-darwin15)

How is your test code different from x.blank??

It might not be, but ignore the second part of the or conditional -- it's irrelevant to the issue what that method is.

Good point, your "Expected behavior" section helps.

This appears to be a duplicate of, or related to, #3510. The code was fixed by #3517. We no longer register an offense for any or conditions. @ledbettj, if you are able to, please test against master and let us know if you still see an issue.

Tested against 67b8df723ea1ee62d3b73ef1922a9e0964ab52f6 and the warning no longer occurs.  Thanks!


Inconsistent result fetching from AWS memcached cluster

I have in a health check end point logic that tries to get a value from the cache, if its not found it will set the value and then get the value again and report when the value doesn't match what is expected.  It periodically will get the value None from the cache and generate the error log.
retrieved_value = cache.get(cache_key)
if not retrieved_value:
    cache.set(cache_key, hostname)
    retrieved_value = cache.get(cache_key)
if retrieved_value != hostname:
    log.error('Cache test on %s failed. Got value %s but expected %s',
              cache_name, retrieved_value, hostname)

I am wondering if anyone has any ideas -- its an AWS memcached cluster using auto-discovery provided by django-elastipymemcache.   We have seen this error before too using pylibmc and django-elasticache for autodiscovery, but perhaps anecdotally it happened somewhat less often, not sure.
It just seems odd to get such an error 10,000 times over 2 years and I don't have any real leads on it because it feels like if a process sets a cache key without error and then tries to get it that it should be found consistently.  What am I missing?  timeout values?  underlying cache error?

One more thought, we have set enabled ignore_exc option in the config because we don't want cache failures to fail the request, but it looks like there are exception cases caught that will return the default value of None without logging anything about the exceptions, so it would appear challenging to know if that is what is happening.


Can No longer Override With Custom Highlights

Hello and thank you very much for this awesome color scheme! It's easy to use and looks great! I'm not sure when exactly it happened or what caused it, but my custom highlights no longer override the stock ones. Here's my current config file. I know it loads fine and every part of the config works except for the custom highlights. I'm sure it's something I'm doing. Thank you in advance!
local colors = require('onenord.colors')

require('onenord').setup({
  theme = "dark",
  borders = true,
  face_nc = true,
  styles = {
    comments = "italic",
    strings = "italic",
    keywords = "italic",
    functions = "italic",
    variables = "NONE",
    diagnostics = "underline",
  },
  disable = {
    background = false,
    cursorline = false,
    eob_lines = true,
  },
  custom_highlights = {

    -- NvimTree
    NvimTreeOpenedFile = { fg = colors.diff_add, style = 'bold' },

    -- Local Syntax
    Conditional = { fg = colors.blue },
    Number = { fg = colors.purple },
    Operator = { fg = colors.dark_blue },
    Statement = { fg = colors.fg },
    MatchParen = { fg = colors.light_purple, bg = colors.none, style = 'bold' },

    -- TreeSitter
    TSBoolean = { fg = colors.yellow },

    -- BarBar
    BufferCurrentMod = { fg = colors.purple, bg = colors.bg, style = 'bold' },
    BufferVisibleMod = { fg = colors.purple, bg = colors.bg, style = 'bold' },
    BufferInactiveMod = { fg = colors.purple, bg = colors.bg, style = 'bold' },
  },
})

I also tried changing the order in which the theme was loaded within packer itself and even tried loading the config with an explicit after = nvim-treesitter to see if it would affect anything and it didn't.

Hi, thanks for the kind words, I'm glad you like it! Sorry, this is actually my fault, I messed it up when making some config changes. I think that the latest commit should fix it but let me know if you run into any problems.

Hi, thanks for the kind words, I'm glad you like it! Sorry, this is actually my fault, I messed it up when making some config changes. I think that the latest commit should fix it but let me know if you run into any problems.

Yep! Everything works! Thank you so much!

No problem!

#30 has a breaking change so that you have to do require('onenord.colors').load() instead!


docs: detailed themes documentation

Add documentation related to themes:

[ ] Create a schema
[ ] Create a theme gallery
[ ] Basic documentations

[ ] How to create a theme
[ ] How to build with a custom theme

changed goals with v2


fix(UnityXR): fix UnityXR stack overflow

Add HTC Vive controller joystick names as reported by Unity 2017.4.2f2.
Don't allow the SetTrackedControllerCaches method to re-enter while it's executing since it's possible to call itself and get stuck.
fixes #1764

There were the following issues with your Pull Request

Commit: 34c4724cfc861f307ab39bb58914985d7c009393
Your commit message body contains a line that is longer than 72 characters

Guidelines are available at https://github.com/thestonefox/SteamVR_Unity_Toolkit

This message was auto-generated by https://gitcop.com

I did not have a look at the changes done but separate things should be in separate commits and in this case probably even in separate PRs.

I un-squashed them and I'll make a separate PR.


Support secrets in terraform variables

Description
This would allow the users to reference pass secrets into the the terraform variables without checking into source control or exposing them in clear text in a place with no access control.
Justfication
Almost all deployment scenarios require use of secrets to complete deployment activities. Those secrets should not be accessible in source control or exposed in clear text.

This planned to be supported using the (Secure Files)[https://docs.microsoft.com/en-us/azure/devops/pipelines/library/secure-files?view=vsts] feature within azure devops. A vars file with secrets can be uploaded to the secure files vault within the azure devops project. Then, a drop down will be added to the task to pick a var file from the secure files repo.
The expectation is that a file per environment should exist within the Secure Files vault and be managed outside of source control. This ensures two thinks. First, secrets are not exposed as clear text to anyone that has access to the source control repo. Second, separate access control policies can be applied to secrets than that of the source control repo. Azure DevOps also supports access control around secure files which will allow an org to control who has access to these files. Secure Files are encrypted and not readable to those that do not have access to do so.

Released with 0.3.0


Create Recovery Plan using PowerShell new-azrecoveryservicesasrrecoveryplan

Hello
When creating Recovery Plan using PowerShell cmdlet https://docs.microsoft.com/en-us/powershell/module/az.recoveryservices/new-azrecoveryservicesasrrecoveryplan?view=azps-5.7.0#examples, it expects a parameter named RecoveryFabric
In API, RecoveryFabricId is set to string "Microsoft Azure", how do I get the RecoveryFabric object related to Microsoft Azure in PowerShell?
Regards
Ajay Kundnani

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

ID: cd7f6901-6d9a-8749-a632-6d874406256a
Version Independent ID: f4337f3f-9990-6cb1-7d6c-cba39dda16de
Content: Create/customize recovery plans in Azure Site Recovery - Azure Site Recovery
Content Source: articles/site-recovery/site-recovery-create-recovery-plans.md
Service: site-recovery
GitHub Login: @rayne-wiselman
Microsoft Alias: raynew

@AjKundnani Thank you for your post. We are looking into it and will get back to you soon.

@AjKundnani Thank you for your post. PowerShell cmdlet https://docs.microsoft.com/en-us/powershell/module/az.recoveryservices/new-azrecoveryservicesasrrecoveryplan?view=azps-5.7.0#examples is giving 404 error.

@SadiqhAhmed-MSFT - It's https://docs.microsoft.com/en-us/powershell/module/az.recoveryservices/new-azrecoveryservicesasrrecoveryplan?view=azps-5.7.0#examples
While adding bold within URL caused **** within URL

@AjKundnani Try this - Get-AzRecoveryServicesVault -ResourceGroupName "Test" -Name "Test-RSV"
$Vaults = Get-AzRecoveryServicesVault -ResourceGroupName "Test" -Name "Test-RSV"
Set-AzRecoveryServicesAsrVaultContext -Vault $Vault -InformationAction SilentlyContinue
$Fabrics = Get-AzRecoveryServicesAsrFabric
Let me know if this works

Thanks @SadiqhAhmed-MSFT , however this command doesn’t returns fabric object for “Microsoft Azure” which is required for RecoveryFabricId
Only returns Source or PrimaryFabric objects.
Get-AzRecoveryServicesAsrFabric | Select-Object Name,FriendlyName

Name                                                             FriendlyName
----                                                             ------------
azmigpipelineautomation-HyperVSite                               azmigpipelineautomation-HyperVSite
5208ab0ee1272faf4adc3236b5e783654396c06f023088d4c5dc104c8237512a WIN-M51Q6QU5785

@AjKundnani While enabling replication, you must have created a fabric object to represent the DR region using something like:
$TempASRJob = New-AzRecoveryServicesAsrFabric -Azure -Location 'West US'  -Name "DRFabric-WestUS"
You can reuse the -Name parameter subsequently to address the recovery fabric object. For e.g.:
$RecoveryFabric = Get-AzRecoveryServicesAsrFabric -Name "DRFabric-WestUS"
Hope this helps.

@AjKundnani While enabling replication, you must have created a fabric object to represent the DR region using something like:
$TempASRJob = New-AzRecoveryServicesAsrFabric -Azure -Location 'West US' -Name "DRFabric-WestUS"
You can reuse the -Name parameter subsequently to address the recovery fabric object. For e.g.:
$RecoveryFabric = Get-AzRecoveryServicesAsrFabric -Name "DRFabric-WestUS"
Hope this helps.

Hello @SadiqhAhmed-MSFT - No, I don't create the fabric object. The scenario am working on is more on-premises to Azure Scenario.
Below is the code used to enable the replication for Hyper-V VM in ASR
$replicationJobParam = @{
								HyperVToAzure   = $true
								ProtectableItem = $protectableVM
								Name		    = (New-Guid).Guid
								ProtectionContainerMapping = $targetPolicyMap
								RecoveryAzureStorageAccountId = $targetLogStorageAccount.Id
								OS			    = $osType
								OSDiskName	    = $osDiskName
								RecoveryResourceGroupId = $targetResourceGroupObj.ResourceId
								RecoveryAzureNetworkId = $targetVnetObj.Id
								RecoveryAzureSubnetName = $targetPostFailoverSubnet
								RecoveryVmName  = $targetMachineName
								ErrorAction	    = 'Stop'
							}
							if ($targetAvZone -ne 'NA')
							{
								$replicationJobParam.Add("RecoveryAvailabilityZone", $targetAvZone)
							}

							$replicationJob = New-AzRecoveryServicesAsrReplicationProtectedItem @replicationJobParam

@AjKundnani As this issue has been taken offline, we will close this for now. You may update this thread once the email conversation is closed.


Support for TELNET connection or changing Console I/O

First of all, congratulations on the quality of the toolkit.
Second, is there any way to connect the console inputs/outputs and expose in a TELNET Soket?
Today I can already do this with another Specter.Console toolkit.
Grateful
[]

Are you able to show or link the code you have written / used to get this to work with spectre console?

First I create a TELNET server and expose the TCP port.
Then I connect to the port using Windows TELNET or Putty.
When connected, I perform a rather complex handshake, in which the server requests resources from the client.
With that I have the resolution of the client's screen. Things like IAC WILL ECHO, IAC WILL SUPPRESS_GA, IAC DO SB NASW as specified in https://www.rfc-editor.org/rfc/rfc1073.
So after the handshake I create a scope and link an implementation of Spectre.Console.IAnsiConsole.
All input/output are intercepted by IAnsiConsole.
This weekend I'm going to create a repository on public github and give you the link.
public TelnetSession(Socket clientSocket, Server server)
    {
        _logger = LogManager.GetCurrentClassLogger();
        TimeConnected = DateTime.UtcNow;
        TimeRxData = DateTime.UtcNow;
        ClientSocket = clientSocket;
        Server = server;

        _ipEndPoint = (IPEndPoint)ClientSocket.RemoteEndPoint!;

        _networkStream = Environment.NewLine.Length == 1
            ? new NetworkStreamCrlf(ClientSocket)
            : new NetworkStream(ClientSocket);
        _streamReader = new StreamWriter(_networkStream);
        var consoleOutput = new AnsiConsoleOutput(_streamReader);

        AnsiConsole = new AnsiTelnetConsole(Spectre.Console.AnsiConsole.Create(new AnsiConsoleSettings
        {
            Ansi = AnsiSupport.Yes
            , ColorSystem = ColorSystemSupport.Detect
            , Out = consoleOutput
            , Interactive = InteractionSupport.Yes
            , ExclusivityMode = null
            , Enrichment = null!
            , EnvironmentVariables = null
        })) { TelnetSession = this };
    }

Hmn I think something could be possible.  There is work ongoing to restructure and simplify the driver base #2612 which might be then adaptable to this scenario.  But there isn't a current way that I know of to do what you are describing above.

Thanks for your help, I noticed that you are developing a v2.
When that happens I will try to implement Terminal.Gui in TELNET and if I succeed I will be happy to notify you.
I await news, meanwhile you can close this issue.


add support for markdown-it gfm

Hi @domchristie!
This PR adds support for generating GitHub Flavored Markdown (GFM) fenced code blocks from HTML that was created using the markdown-it parser. The HTML generated by markdown-it for a fenced block looks like this:

alert('hello, world')

This is slightly different from the existing expected structure, so I've added a new converter for it.
I also updated the highlightRegEx pattern to work for both the existing and new use case.
cc @puzrin, maintainer of markdown-it and all-around nice guy. :)

Thanks for this.
I am in two minds about approving it since the
<code … structure differs from the GFM "standard" (which is a shame because it is nicer IMO), and therefore there'd be pressure to support other GFM variants in this way i.e. adding more converters for slightly different cases.
I guess we could relax the conditions in the current fenced code block converter, and only check the class name with your new regex. I'm thinking something like the following might work:
{
  filter: function (node) {
    return node.nodeName === 'PRE' &&
    node.firstElementChild &&
    highlightRegEx.test(node.firstElementChild.className)
  },
  replacement: function (content, node) {
    var language = node.firstElementChild.className.match(highlightRegEx)[1]
    return '\n\n```' + language + '\n' + content + '\n```\n\n'
  }
}

(This would have to be moved above the generic fenced code block converter.)
It means that we're not adding another converter for a specific GFM variant, though I suppose the pressure to adapt for other variants may still arise :/
Another alternative would be to add your own custom converter when you call toMarkdown.
What do you reckon?

I'd say this is worth having for the GFM format option. The same thing occurs when using highlight.js with the marked library. Code blocks with a language identifier are also translated with marked to the

 format.

Hey sorry I haven't taken the time to respond to your feedback, @domchristie.

we could relax the conditions in the current fenced code block converter, and only check the class name with your new regex.

I think that makes sense, especially in light of @wells' comment above.

@domchristie It is also worth mentioning that the replacement function in your example should return node.firstChild.textContent.trim() instead of content.
I would also suggest handling the shortening of language- for lang- as well. Packages like marked use the shorter lang- class name for syntax highlighting by default.
var highlightRegEx = /(?:highlight|lang(?:uage)?)-(\S+)/

{
  filter: function (node) {
    return node.nodeName === 'PRE' &&
    node.firstElementChild &&
    highlightRegEx.test(node.firstElementChild.className)
  },
  replacement: function (content, node) {
    var language = node.firstElementChild.className.match(highlightRegEx)[1]
    return '\n\n```' + language + '\n' + node.firstChild.textContent.trim() + '\n```\n\n'
  }
}

Updated 👍

Thanks. What do you reckon about changing the current fenced code block converter (rather than adding a new one)?

Bump. Any update on getting this merged?
While not 'standard' GFM, I've seen the markdown-it style codeblocks more commonly used in the wild.

Thanks. What do you reckon about changing the current fenced code block converter (rather than adding a new one)?

@zeke what do you think about this?

Hey all. Sorry for the silence. I was offline on parental leave for a while.
I'd be down to change the current fence code block converter. This would be a major version bump, right?

@zeke no problem!
I have done a bit more research into this, and it seems that fenced code blocks are part of the CommonMark spec (http://spec.commonmark.org/0.27/#fenced-code-blocks), so it probably makes more sense to include this converter in the main set of converters rather than in the GFM list. However, if it were included then we should probably make he library CommonMark compliant.
I have been working on a rewrite with this in mind. I hope to push it to a repo at some point today, so I'll let you know…

As I mentioned, here is the rewrite: https://github.com/domchristie/turndown
It will hopefully supersede to-markdown at some point. Issues/PRs welcome :D

Wow I seem to have a knack for abandoning this pull request! :)
@domchristie does turndown now support the use case addressed by this PR? If so, I'd be glad to give a try.

@domchristie does turndown now support the use case addressed by this PR? If so, I'd be glad to give a try.

Yep! I have just updated the demo with (most) the options it supports: https://domchristie.github.io/turndown/. Have a play! The options are at the bottom, and in this case you'll need to select "fenced" under "Code block style".
The fundamental difference is the way in which it handles unknown elements (i.e. it removes them). This is customisable but not yet documented. Let me know what you reckon :)

@domchristie why not release turndown as a major version of to-markdown?

Thanks for the feedback. to-markdown won't be going anywhere, the idea is that it just won't be maintained. This is pretty much the case at the moment because the codebase isn't in a manageable state.
In terms of making a Turndown the next major version of to-markdown, I am concerned that the changes might be too big. The API is different, and the behaviour is vastly different. Having said that, these issues can be overcome.
I am personally not a big fan of to-markdown as a name, and if I were to use the constructor pattern as Turndown does, how would that work? (new ToMarkdown().toMarkdown?!). So I've been wanting to rename, but was unsure about how that would impact links etc. GitHub does renamed-repo redirects, but not for GitHub pages, so I could potentially lose http://domchristie.github.io/to-markdown … or perhaps not, if I create a user page (http://domchristie.github.io), and include a to-markdown directory which redirects to the new url.
(Apologies for thinking out loud … the more I think about it, the more I think it might work!)

and if I were to use the constructor pattern as Turndown does, how would that work? (new ToMarkdown().toMarkdown?!).

You could just make the default export a function that returns an instance of the class.
module.exports = function (opts) {
  return new Thing(opts)
}

Here's a recent example of a project that was successfully renamed: https://github.com/sindresorhus/electron-store/issues/4

I have opened a new issue to discuss this here: https://github.com/domchristie/to-markdown/issues/188

CommonMark (markdown-it) will be supported in Turndown v4. Thanks for everyone's input on this.

Thanks @domchristie! And thanks for closing this PR. Feels good. :)


fix nix build by formatting

I ran black on all those files.
fixes #153

Looks this is using python3.8-black-20.8b1. Do you have an older version?

I used the version of black inside the nix develop environment.

I need something to keep flakes up-to-date.


Iceperf example updated - ein bisschen less advertisement

Pre-Review Checklist for the PR Author

[ ] Code follows the coding style of CONTRIBUTING.md
[ ] Tests follow the best practice for testing
[ ] Changelog updated in the unreleased section including API breaking changes
[ ] Branch follows the naming format (iox-123-this-is-a-branch)
[ ] Commits messages are according to this guideline

[ ] Commit messages have the issue ID (iox-#123 commit text)
[ ] Commit author matches Eclipse Contributor Agreement (and ECA is signed)

[ ] Update the PR title

Follow the same conventions as for commit messages
Link to the relevant issue

[ ] Relevant issues are linked
[ ] Add sensible notes for the reviewer
[ ] All checks have passed (except task-list-completed)
[ ] All touched (C/C++) source code files from iceoryx_hoofs are added to ./clang-tidy-diff-scans.txt
[ ] Assign PR to reviewer

Notes for Reviewer

Checklist for the PR Reviewer

[ ] Commits are properly organized and messages are according to the guideline
[ ] Code according to our coding style and naming conventions
[ ] Unit tests have been written for new behavior
[ ] Public API changes are documented via doxygen
[ ] Copyright owner are updated in the changed files
[ ] All touched (C/C++) source code files from iceoryx_hoofs have been added to ./clang-tidy-diff-scans.txt
[ ] PR title describes the changes

Post-review Checklist for the PR Author

[ ] All open points are addressed and tracked via issues

References

Closes TBD

@anderay Thanks for the contribution!
Could you please follow the contribution guidelines from here: https://github.com/eclipse-iceoryx/iceoryx/blob/master/CONTRIBUTING.md
Things you still have to do:

Sign the Eclipse Committer Agreement
Create an issue what you implemented here so that other reviewers see the intention of the changes.
The pull request name, every comment etc. should be in the english language
The PR should have the prefix iox-??? where ??? is the issue number (the issue you created in 2.)
Every commit requires the prefix iox-#??? (do not forget the # here)

Please remove all the commented out code.
As soon this is realized I am happy to review the PR.

@anderay please also run clang-format on your code.
I skimmed over the PR and it is great to soon have a performance test with the WaitSet. I had it since ages on my to-do list so I'm happy to see this PR.

@anderay do you plan to continue working on this PR?

@anderay do you plan to continue working on this PR?

What else is needed?

@andrzejpolanskiaptiv the biggest issue is the Eclipse ECA. Since we are an Eclipse project, all contributors must sign the ECA. There is also a CI check for this which prevents merging.
If you want, you can also implement the proposal from https://github.com/eclipse-iceoryx/iceoryx/pull/1860#discussion_r1097945811 but that is not required. Your answer was a bit ambiguous

"You successfully submitted an Eclipse Contributor Agreement"
But seems not be visible here...

@andrzejpolanskiaptiv It might take some time until everything is synchronized and the check passes. Just in case, did you sign with the same e-mail address as you used for your commits?

I did it long time ago. Now I see that in commits my company email is stated whilst in ECA private was used. Perhaps that was the problem. I have changed address in Eclipse account, will see...

here you are


Acceleration should be an incremental force, not an instant force.

#thingsinmotiontendtostayinmotion
Currently, when you hit a key to move, we immediately set your velocity to a fixed speed:
if(Keyb.isDown("<up>") || Keyb.isDown("W")) {
    this.velocity.y = -1 * this.speed
}

This is unrealistic, since our "acceleration" isn't respecting our previous velocity. If I was actively moving southwards, but then wanted to move northwards, I would first have to overcome my previous southwards velocity. But with this system, I immediately drop my southwards velocity and begin moving northwards.
We should probably adopt an incremental acceleration, where we append to the velocity, like so:
if(Keyb.isDown("<up>") || Keyb.isDown("W")) {
    this.velocity.y -= this.speed
}

But that said, I couldn't find a good value for speed that didn't feel too floaty. All my attempts at tweaking this felt like I was skating on ice. :\

Resolved this issue by adding Coulomb friction and a dynamic equation for the player. There are now constants for tuning how responsive (quick to speed up) and how skate-y (time to change directions) you want. It feels weird to me right now and that's either a matter of tuning or because I'm a bit peckish right now. Gonna dig into this soup!


Please publish 1.11.5 to npm

done (I however made the fault to publish 1.11.4 after I've published 1.11.5, I hope this doesn't impact you, if it does just mention it and I'll release and publish 1.11.6)

Thank you very much!


C++/CLI syntax highlighting messed up by attributes.

Checklist

[X] This problem exists even with the setting "C_Cpp.enhancedColorization": "Disabled"

The code with a problem is:
	[LinuxExcluded]
	[Description("For testing")]
	public ref class TestClass
	...

It looks like:

It should look like:
It should looks like the second screenshot.
Seems the C++/CLI attributes will mess up the quotation detection and everything becomes red color after. And also single attribute seems OK (as the second screenshot shows).
This issue doesn't happen if I disable the better-cpp-syntax plugin, but irrelevant to C_Cpp.enhancedColorization setting.
And this issue shows up recently, not sure it is caused by VSCode or better-cpp-syntax plugin update, but I don't remember having this issue before.

Thats strange if its a recent change, but disabling the extension means it probably is a recent change.
The color issue is happening because [LinuxExcluded] looks like the start of a lambda.
I didn't know attributes could start with only a single bracket. Is there a link to the specification so I can make sure to cover all the syntax cases? Something like:

(not fixed but also I never found a reference to single-bracket attributes)


added testid

Closes: https://issues.redhat.com/browse/RHOAIENG-833
Description
changed existing testid

frontend/src/tests/cypress/cypress/e2e/notebookImageSettings/NotebookImageSettings.cy.ts
frontend/src/tests/cypress/cypress/e2e/pipelines/Experiments.cy.ts
frontend/src/tests/cypress/cypress/e2e/pipelines/PipelineCreateRuns.cy.ts
frontend/src/tests/cypress/cypress/e2e/pipelines/PipelineDeleteRuns.cy.ts
frontend/src/tests/cypress/cypress/e2e/pipelines/PipelineRuns.cy.ts
frontend/src/tests/cypress/cypress/e2e/pipelines/Pipelines.cy.ts
frontend/src/tests/cypress/cypress/e2e/pipelines/PipelinesList.cy.ts
frontend/src/tests/cypress/cypress/e2e/pipelines/PipelinesTopology.cy.ts
frontend/src/tests/cypress/cypress/e2e/projects/projectDetails.cy.ts
frontend/src/tests/cypress/cypress/e2e/projects/ProjectList.cy.ts

How Has This Been Tested?
npm run test

Test Impact

Request review criteria:

Self checklist (all need to be checked):

[x] The developer has manually tested the changes and verified that the changes work
[x] Commits have been squashed into descriptive, self-contained units of work (e.g. 'WIP' and 'Implements feedback' style messages have been removed)
[x] Testing instructions have been added in the PR body (for PRs involving changes that are not immediately obvious).
[x] The developer has added tests or explained why testing cannot be added (unit or cypress tests for related changes)

If you have UI changes:

[ ] Included any necessary screenshots or gifs if it was a UI change.
[ ] Included tags to the UX team if it was a UI/UX change (find relevant UX in the SMEs section).

After the PR is posted & before it merges:

[ ] The developer has tested their solution on a cluster by using the image produced by the PR to main

I have removed some dead/duplicate code

/lgtm

/lgtm


Namespace in sensort definition doesn't seem to work

Version of the custom_component
6.2.0
Configuration
- name: Wolfram Sunburn Time
  resource: https://api.wolframalpha.com/v2/query?input=time+to+sunburn+skin+type+i+prague+cz&format=plaintext&output=JSON&appid=[id]
  scan_interval: 1500
  method: GET
  log_response: true
  sensor:
    - unique_id: wolfram_prague_sunburn_time_skin_i
      name: Sunburn Time Prague Skin Type I
      value_template: >
        {%- set bla = value_json.queryresult.pods[1].subpods[0].plaintext.split('|')[5] %}
        {%- set timestring =  bla.split(' ') %}
        {%- set ns = namespace(minutes = 0) %}
        {%- for i in range((timestring | length / 2) | int) %}
        {%- if timestring[i * 2 + 1] == 'h' %}
          {%- set ns.minutes = ns.minutes + (timestring[i * 2] | float) * 60 %}
        {%- else %}
          {%- set ns.minutes = ns.minutes + (timestring[i * 2] | float) %}
        {%- endif %}
        {%- endfor %}
        {{ns.minutes}}
      state_class: measurement
      attributes:
        - name: SPF15
          value_template: "{{value_json.queryresult.pods[1].subpods[0].plaintext.split('|')[6]}}"
        - name: SPF30
          value_template: "{{value_json.queryresult.pods[1].subpods[0].plaintext.split('|')[7]}}"
        - name: SPF45
          value_template: "{{value_json.queryresult.pods[1].subpods[0].plaintext.split('|')[8]}}"

Describe the bug
Multiscrape fetches the data without issues, but the template does not get processed in the way that I would like.
For some reason the value of the ns.minutes variable that is returned by this sensor is always what I set it to in the line where I define ns above the for/if loop (i.e. in this case 0). The output is correct in the Templates Developer Tools.
Does multiscrape not support a writing into a namespace in a loop in its value_template?
(Just for concreteness, the template is complex, because the server returns the time in one of the formats (3.5 h, 1 h 50 min or 50 min) and I want to convert it to minutes for the output of the sensor)
Debug log

Add your logs here.

Could you help a bit and try if it works when you process the raw result of multiscrape with a template sensors?

You removed your comment in which it became clear that this is not a multiscrape issue? :)

I wanted to say it the external template didn't work, but then I realised belatedly that the source in the mean time changed to a string saying "not likely", so not within my cases.
Now that it's day again, the source website is giving "40 min", multiscrape scrapes that correctly to a value_json and then the template sensor containing the template with the namespace works correctly to convert that to a float of 40.0.
I noticed that you upgraded to 3.1.2, so I have tried again in the latest release, but the problem with defining this template within multiscrape directly is the same as it was in 3.1.0.

I dug a bit in the HA core code, and it seems like complex templates are not supported in combination with JSON parsing. So I guess adding a template sensor after multiscrape would be the only option.

Thanks for checking. I'll continue to work around this then.


fix: cursor position when using markdown shortcuts on posts

I am going to close this one as  it has no value, @Nirajn2311 You can open a new one when you have time to do so.


Can't fly with rockets to planets

Version of Advanced Rocketry
1.4.0.-84
Have you verified this is an issue in the latest unstable build
N
Version of LibVulpes
0.2.8.-32
Version of Minecraft
1.12.2
Crash report or log (if applicable)
Log in MP: https://paste.feed-the-beast.com/view/e4eda409
Log in SP: https://paste.feed-the-beast.com/view/81a0a362
Description of the problem
We are a server which uses the FTB modpack continuum. In a lot of times, it's impossible to reach the moon, the space base or other planets. The rocket is big enough and we've already reached the moon and the space station once with that rocket once.
In all the other tries we can start and the rocket launches up to y=998, but than the velocity goes to 0, the fuel gets empty and you fall back to earth.

Also bigger and smaller rockets only work once.
Here's a video of the issue: https://www.youtube.com/watch?v=m9F8RNTbvo0
I've already reported it in the issues of FTB, but I think I can get better help here. Here's the issue: FTBTeam/FTB-Continuum#302

Have you reported this issue on the continnum issue tracker? You are using a old version of the mod.
Sent from my iPhone

On Jul 5, 2018, at 2:56 PM, EscolarProgramming<EMAIL_ADDRESS>wrote:
Version of Advanced Rocketry
1.4.0.-84
Have you verified this is an issue in the latest unstable build
N
Version of LibVulpes
0.2.8.-32
Version of Minecraft
1.12.2
Crash report or log (if applicable)
Log in MP: https://paste.feed-the-beast.com/view/e4eda409
Log in SP: https://paste.feed-the-beast.com/view/81a0a362
Description of the problem
We are a server which uses the FTB modpack continuum. In a lot of times, it's impossible to reach the moon, the space base or other planets. The rocket is big enough and we've already reached the moon and the space station once with that rocket once.
In all the other tries we can start and the rocket launches up to y=998, but than the velocity goes to 0, the fuel gets empty and you fall back to earth.
Also bigger and smaller rockets only work once.
Here's a video of the issue: https://www.youtube.com/watch?v=m9F8RNTbvo0
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Yes, I have linked it at the end of the issue report.

https://github.com/FTBTeam/FTB-Continuum/issues/302#issuecomment-403547298 Closing as this has been fixed as tfox states he will get a update out soon.


chore: disable quantic release, split production targets

Currently, we're doing the following operation sequentially:

Move the latest tag of our npm package to the beta tag we created earlier
Promote the SFDX package in production
Notify the doc website to do their release

All those operations can and should occur in parallel:

We want to promote NPM into production as soon as it's available in production through our CDN
We want our documentation to be updated when we release new versions in production, even if it's only in the CDN (if the NPM promotion were to fail let's say)
Quantic package does not depend on the two other operations

This PR does that by splitting the three tasks into separate jobs, controlled by different GitHub Environments. Those Environments are just a split of Production into 3, with a separation of concern applied to all.
By that account. GitHub package releases, while currently disabled should follow NPM logic as well, and so I moved the disabled part of the script into its own, commented, job.
Quantic deployment is also disabled in this PR, as we need to ensure we have updated credentials for the publication and set up proper processes -human or automated- to renew those credentials in time. (fix-it-twice)
KIT-3070

[ ] @louis-bompart after approval, create GitHub Environments. Ensure appropriate credentials are set for enabled targets. (NPM & Doc as we speak)


when accepting password the keyboard should pop out automatically (examples: password settings screen when running the app; entering the password to unblock "enter the password to approve every send", "change wallet password" etc)

on this screen, too, you need to add automatic focus and display the keyboard

checked

@alexandrashelenkova in the future @gingervik kindly asked to write long cases in the task description.


[Idea] Automatically apply fixes as a pull request

If elm-review offers any fixes then we could try to apply them and provide them as a new pull request against the working changes.

This has been successfully achieved using another workflow. I recommend not including this in pull_request workflows because a PR from a fork has no write access to the original project, whereas the push fixes will get applied to the fork directly instead. Given that this can already be solved with existing actions I won't be adding this to the action, but would like to write up a recipe book including this at some point.
name: Fixes
on:
  push:
    branches: ['**']

jobs:
  lint:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
      - name: Extract branch name
        shell: bash
        run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})"
        id: extract_branch
      - name: Get yarn cache directory
        id: yarn-cache-dir
        run: echo "::set-output name=path::$(yarn cache dir)"
      - uses: actions/cache@v1
        id: yarn-cache
        with:
          path: ${{ steps.yarn-cache-dir.outputs.path }}
          key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
          restore-keys: |
            ${{ runner.os }}-yarn-
      - uses: actions/cache@v1
        id: elm-cache
        with:
          path: ~/.elm
          key: ${{ runner.os }}-elm--home-${{ hashFiles('**/elm.json') }}
      - name: Install dependencies
        run: yarn install --frozen-lockfile
      - name: Add yarn bin to path
        run: echo ::add-path::$(yarn bin)
      - name: Run elm-format
        run: elm-format --yes
      - name: Apply elm-review fixes
        id: elm-review
        run: yes | elm-review --fix-all
        continue-on-error: true
      - uses: peter-evans/create-pull-request@v2
        with:
          commit-message: 'Apply elm-review fixes'
          branch: fixes/${{ steps.extract_branch.outputs.branch }}
          title: "Apply elm-review fixes"
          body: "*This is an automated pull request because elm-review found problems that could be fixed automatically.*"
          reviewers: sparksp
          assignees: sparksp


[BGV]: add lazy relinearization

Ideally this is done in a way that the optimization pass can be shared between all relinearizing ops across all schemes. In particular, we should implement a RelinearizeLike trait/interface, and implement the optimization pass against the interface.

Hi @j2kun I would like to work on this. Could you shade some light on how may I approach this. I have gathered some basic knowledge about bgv, openfhe and their conversion dialects.
About lazy-ness: we want to delay the relinearization computation ( and also to find the scope to do so) ? How to introduce laziness to a computation in a pass?
There's  an idea of lazy loading in mlir::BytecodeReader. But I got lost and couldn't extract anything helpful from there.

Sure! The basic idea is that an arith.muli lowers to a sequence of bgv.mul and bgv.relin. The relin is necessary to return the key basis from (1, s, s^2) to (1, s), but sometimes the relin op can be delayed if the output of the mul is combined with other values in that same key basis.
For example, if you multiply two pairs of values and then add their results, you can do it with one relin op after the addition, rather than two relin ops after each mul.
The implementation of this feature would, I believe, require some relatively straightforward tablegen patterns.

While looking at bgv.mul, I noticed it (incorrectly) wouldn't allow having sequential multiplications without relineraization in-between. With the fix in (currently PR #733), I'd suggest the simplest way to realize this is to proceed as follows

make the secret->bgv pass lowering of multiplication not emit any relinearization.
have a new "lazy relin" pass with two simple patterns that rewrite mul(mul1, _) and mul(_, mul1) to mul(relin(mul1),_ and mul(_, relin(mul1)), respectively. As Jeremy suggested, these should be pretty straightforward DDR patterns.

I didn't realize that relinearizing after repeated multiplications is a thing people do. I assume that:

The key basis for that would be (1, s, s^2, s^3, s^4)
We'd have to implement more generalized lowerings of relinearize for all these new possible key bases (and, e.g., maybe some backends don't support it? Does OpenFHE allow this?)

I didn't realize that relinearizing after repeated multiplications is a thing people do. I assume that:

The key basis for that would be (1, s, s^2, s^3, s^4)
We'd have to implement more generalized lowerings of relinearize for all these new possible key bases (and, e.g., maybe some backends don't support it? Does OpenFHE allow this?)

It's not really something people do outside of very specific use cases. I think quite a few of the common libraries don't even implement "general" relinearization, because it'd blow up the evaluation key size so much.
My suggestion wasn't to actually emit final programs with repeated multiplications (i.e., the openFHE pipline would always contain --lary-relin ). However, with MLIR it seems a lot easier to take a "not yet relin-managed" program and introduce only the needed operations and harder to remove the redundant ones.

I do worry a little bit that the key basis in the attributes would explode for some mul-heavy IRs, but I'm down to try it.
Another approach would be to take any IR, using relins or not, and re-relinearize-ify it. That would be the most general approach, but couldn't be done with a simple set of patterns. I bet we could formulate it as an ILP if it gets to that.

If you'd like, we could work through some examples in detail in this issue thread.

Yes, working through some example would be helpful for me.
I was thinking about this pattern

mul(mul1, _) and mul(_, mul1) to mul(relin(mul1),_ and mul(_, relin(mul1))

do we have a possibility to reach at something like this mul3(_, relin(mul2(_, relin(mul1))))

do we have a possibility to reach at something like this mul3(_, relin(mul2(_, relin(mul1))))

I think so: if we had mul3(_, mul2(_, mul1(_,_)))  to begin with, the RHS pattern would match on mul2 to give us mul3(_, mul2(_,relin(mul1(_,_)))  and also on mul3 to then give us mul3(_,relin(mul2(_, relin(mul1(_,_))).  Which is (I think?) what we want, right? This also works if the pattern is first applied on mul3 and then mul2, and it should also work if both operands are multiplications.
off-topic question: is it better to add a third pattern mul(mul1, mul2) for this case, or to just rely on the sequential application of the LHS/RHS patterns?

mul3(_ ,relin( mul2( relin(lmul1(x,y)), relin(rmul1(y,x)))))
Here I am considering both operands of mul2 are multiplications. Inside mul2  the left and right operands would have same key basis I guess. So at this stage could we optimize the above to
mul3(_ ,relin(mul2( lmul1(x,y), rmul1(y,x))))
such that we relin only after mul2  ?

So at this stage could we optimize the above to mul3(_ ,relin(mul2( lmul1(x,y), rmul1(y,x)))) such that we relin only after mul2 ?

I don't think that'd be valid (assuming we never want to exceed ctxt-degree three) as the output of mul2 would be of degree six already.

I think perhaps the simplest initial test case would be
%x = bgv.mul %0, %1
%x_relin = bgv.relinearize %x
%y = bgv.mul %3, %4
%y_relin = bgv.relinearize %y
%z = bgv.add %x_relin, %y_relin

Which should map to
%x = bgv.mul %0, %1
%y = bgv.mul %3, %4
%z = bgv.add %x, %y
%z_relin = bgv.relinearize %z

So long as %x_relin and %y_relin have no other uses. This example could be extended to more muls and a reducing add.

Looking back on https://www.jeremykun.com/2023/11/15/mlir-a-global-optimization-and-dataflow-analysis/#an-ilp-optimization-pass, I'm not seeing any real obstacle to adapting that ILP to this problem. Basically, after each BGV op in the IR, you add a "InsertRelin" variable (instead of "InsertReduceNoise"), and a "KeyBasisDegree" variable instead of a "NoiseAt" variable. The constraints are simpler because KeyBasisDegree is additive in each mul and unchanged by other ops, and we can constrain the KeyBasisDegree of each starting SSA value and any decrypted/returned SSA values to be 1. There would be no upper bound on the maximum allowable key basis degree, though in practice we may want to make this configurable. The objective would be to minimize the sum of InsertRelin variable values.
@ahmedshakill what do you think, are you up for implementing an ILP?

Looking back on https://www.jeremykun.com/2023/11/15/mlir-a-global-optimization-and-dataflow-analysis/#an-ilp-optimization-pass, I'm not seeing any real obstacle to adapting that ILP to this problem.

Mh, wouldn't you need to keep all the noise-related stuff in the problem, still? Otherwise, you could end-up with a trivial solution that lets the degree explode throughout the computation and only relinearizes at the very end, which would be both very slow and absolutely catastrophic for noise growth.
Maybe enforcing that no relin is "higher degree" than 3->2 is sufficient to make it work? I vaguely recall papers looking into things more optimal than the basic layz relin, but I'm not sure if they showed sufficient performance gains to make it worthwhile.

Otherwise, you could end-up with a trivial solution that lets the degree explode throughout the computation and only relinearizes at the very end, which would be both very slow and absolutely catastrophic for noise growth.

That is true. You could easily force it to have max degree 3, or add a cost to each relin based on the input degree.
I didn't think relin affected noise growth though. Can't you modulus switch in a higher key basis?

@ahmedshakill Any progress or help needed on this topic? Feel free to post a draft PR and I can take a look and offer some suggestions.

I was taking a bit of time. I'll update you on my progress and post a pr asap.

Hi @j2kun   it took me a while to respond. I have created a PR. In the current state it holds a initial template for the pass. Please have a look and let me know about your thoughts.

Btw, I realized that my "simple DDR Pattern"-based approach probably wouldn't work, as it wouldn't correctly handle something like:
// Assume arg0, arg1, arg2, arg3 are "appropriately typed" function parameters
%0 = bgv.mul(%arg0, %arg1)
%1 = bgv.add(%0, %arg2)
%2 = bgv.mul(%1, %arg3)

I.e., if there are any kind of non-mul operations between the multiplications, the patterns wouldn't catch them.
However, @Maokami's new Mult-Depth Analysis should be the answer to these cases: #760

what do you think, are you up for implementing an ILP?

I think, now I understand the weight of the above line. Here is the current progress status

[x] The lazy relin pass is visible in heir-opt.
[x] Looked into google or-tools tutorial on LP and MIP.
[ ] Need an in-depth look into Jeremy's ILP blog.
[ ] Translate the minimization problem into an ILP one.
[ ] Introduce trait/interface

I can certainly help answer any questions if you have them. Feel free to
chime in on Discord as well (see the link at https://heir.dev/community/)
for less formal discussions
On Thu, Jul 11, 2024, 1:35 PM Shakil Ahmed @.***> wrote:

what do you think, are you up for implementing an ILP?
I think, now I understand the weight of the above line. Here is the
current progress status

The lazy relin pass is visible in heir-opt.
Looked into google or-tools tutorial on LP and MIP.
Need an in-depth look into Jeremy's ILP blog.
Translate the minimization problem into an ILP one.
Introduce trait/interface

—
Reply to this email directly, view it on GitHub
https://github.com/google/heir/issues/599#issuecomment-2223881034, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAS2PKTE4NAOWAXB3WTMWQLZL3UA7AVCNFSM6AAAAABFZXY3A6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDEMRTHA4DCMBTGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


add vcr team as default codeowners. mainly so approvals for lockfiles…

add imjs/vcr team as default codeowner for the monorepo. mainly so approvals for lockfile arent dependent on only one person

fyi @jason-crow , @wgoehrig . You guys should be able to approve any pr

I think this still requires me because of what's on master.  We can check once this is approved.


X_FORWARDED_PROTO with multiple proxy steps not supported

What steps will reproduce the problem?
Call Yii::$app->getRequest()->getIsSecureConnection() when $_SERVER['HTTP_X_FORWARDED_PROTO'] = 'https,http'
What is the expected result?
true
What do you get instead?
false
Additional info
X_FORWARDED_PROTO is a de-facto rather than a canonical http field. It seems the common definition is to add, as comma-separated values, the different protocols used when multiple proxies lie in front of your application. (See https://en.wikipedia.org/wiki/X-Forwarded-For#Format)
I think it makes the most sense for the connection to be considered secure if the Edge node (first step in the chain) is secure, because that's the most common use case. An example would be terminating SSL at an external load balancer / cdn, and forwarding over HTTP to an internal load-balancer.

Already fixed by #13780


Cloud Watch events execution mode with target RunInstances

This is a follow on of #2257
I'm unable to get the following policy to stop newly launched EC2 instances that are assigned to subnets with key/value pair of Location:Internet.
The policy is executed using the Cloud Watch events mode :

 policies:
  - name: subnet-audit
    resource: ec2
    mode:
      type: cloudtrail
      role: arn:aws:iam::xxxxxxxxxxxx:role/CloudCustodianRole
      events:
        - source: ec2.amazonaws.com
          event: RunInstances
          ids: "responseElements.instanceSet.items[].instanceId"
    filters:
      - type: subnet
        key: "tag:Location"
        value: "Internet"
    actions:
      - stop

Execution run

(custodian) $ custodian run -s . public-subnet-instance-audit-lambda.yml
2018-05-02 21:19:52,473: custodian.policy:INFO Provisioning policy lambda subnet-audit
2018-05-02 21:19:52,704: custodian.lambda:INFO Publishing custodian policy lambda function custodian-subnet-audit

The lambda is successfully created and viewable from the AWS management console.
Need tips/guidance on how to troubleshoot the Lambda. This is all new to me.

Also tried having Lambda receive EC2 instance state event without success:

policies:
  - name: subnet-audit
    resource: ec2
    mode:
      type: ec2-instance-state
      role: arn:aws:iam::xxxxxxxxxxxx:role/CloudCustodianRole
      events:
        - pending
    filters:
      - type: subnet
        key: "tag:Location"
        value: "Internet"
    actions:
      - stop

I am launching the test EC2 instance from the management console and making sure I'm selecting a subnet with the tag Location:Internet.

I was able to get the Lambda working by:
(1) using ec2-instance-state
(2) adding EC2 permissions for the role (namely, to stop instances)
(3) changing the events from 'pending' to 'running'
It's not entirely clear to me why the lambda will not trigger when a new EC2 instance is launched and is in 'pending' state.

instances in pending state can't be stopped, only terminated. See https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-lifecycle.html
for more details.

There should have been a note in the policy lambda logs about having to implicitly filter those out for the stop action as well.

For the benefit of fellow Cloud Custodian users who are getting their feet wet and following this thread as part of the troubleshooting process, I was able to view the Lambda error logs in CloudWatch by adding permissions to the Lambda role.
Namely, I added CloudWatch Log permissions for  "logs:CreateLogGroup","logs:CreateLogStream","logs:PutLogEvents":

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogStream",
                "ec2:*",
                "logs:CreateLogGroup",
                "logs:PutLogEvents"
            ],
            "Resource": "*"
        }
    ]
}

While I'm still unable to find anything in the logs related to having to implicitly filter out the same for the stop action, I'm at least able to see the logs of the entire workflow and see what the lambda is doing.
Snip from lambda logs:

[DEBUG]	2018-05-03T19:44:52.127Z	708b88c8-4f0a-11e8-b5a1-85c41233ee4e	metric:ResourceCount Count:1 policy:subnet-audit restype:ec2 scope:policy
[INFO]	2018-05-03T19:44:52.127Z	708b88c8-4f0a-11e8-b5a1-85c41233ee4e	**Invoking actions** []
[INFO]	2018-05-03T19:44:52.127Z	708b88c8-4f0a-11e8-b5a1-85c41233ee4e	policy: subnet-audit **invoking action: stop** resources: 1
[INFO]	2018-05-03T19:44:52.128Z	708b88c8-4f0a-11e8-b5a1-85c41233ee4e	**Stop** 0 of 1 instances

I think we can close this out. I have a working policy now. 👍


clicking a submit button is not working

Expected behavior
click('label text') should exhibit the save behavior as when I run the app and click said button
Actual behavior
Nothing. Nothing at all. Nothing in the logs. No error Nothing
Steps to reproduce

click('label text');

Versions
taiko 1.0.2
node v11.6.0

Can you share the html snippet of the button you are trying to click or a sample project to replicate this bug?

Closing due to inactivity. Please feel free to reopen the issue with more information.


ArgumentError (Invalid argument(s)) createCallSession

Specify the sample to which the issue belongs (use [x]):
[ ] Chat sample
[ ] P2P Call sample
[X] Conference Call sample
Platform (use [x])
[ ] Android
[X] iOS
Device info
Manufacture: APPLE
Model: IPHONE 12 pro
OS version: 14.3
ConferenceSession session = await callClient.createCallSession(user.id, callType);

throws the following error
Exception has occurred.

Expected behavior:
Should return a session, so i can use it to place conference calls.
Additional info
The documentation shows that i should not even use the await keyword but the method is a future and you cant just get the value from the future. it looks like the documentation has some holes?

@oussamaelhajoui thank you for reporting, documentation will be updated soon))

@oussamaelhajoui thank you for reporting, documentation will be updated soon))


Uncaught TypeError: Cannot read property 'length' of undefined in APIM Store UI

Description:
The following error is shown in the APIM Store, Chrome developer console when accessing the Overview tab of an API. This is intermittent, but more frequent.

Affected Product Version:
APIM 2.1.0
Steps to reproduce:
Pre-requisite: There should be a published API in Store.

Go to APIM Store UI from Chrome browser.
Login and access the overview tab of the API.
Check the Chrome Developer console by right-click -> Inspect

Related Issues:
https://github.com/wso2/product-apim/issues/3300
https://github.com/wso2/product-apim/issues/3302

Cannot reproduce with APIM 3.0.0 milestone 35


mdmWorkflowTYPE == "INSTALLER" timeout logic fail?

https://github.com/Macjutsu/super/blob/7b699e33baa5a28c456571d749c739f50d8b18aa/super#L4209
The notifications in this else block don't check things timeouts. I get the restartnotify after the following timeouts:
https://github.com/Macjutsu/super/blob/7b699e33baa5a28c456571d749c739f50d8b18aa/super#L4239

Thanks for finding this! This will be fixed in the next beta... very soon.

This issue is resolved in the latest beta: https://github.com/Macjutsu/super/releases/tag/v3.0-b8


BUG Don't install imagick on php 5.3

If travis doesn't show up, that means the .travis.yml is invalid;; Don't trust green ticks!

So that means image magick tests won’t on 5.3? Seems acceptable.

Right, it'll just use GD, because imagick won't install on php 5.3 anymore.


feat: Footer hover effect updated

Title and Issue number

Title : Footer hover effect updated
Issue No. : #1046
Code Stack : HTML CSS
Close #1046

Description
It has updated the footer hover effect by changing the background color to a lighter shade and adding a subtle shadow to the text. This will create a visually engaging effect highlighting the footer links or elements when hovered over.
Video/Screenshots (mandatory)
https://github.com/user-attachments/assets/72199288-ca4e-44aa-9799-dbc12d7c962f
Type of PR

[ ] Bug fix
[X] Feature enhancement
[ ] Documentation update
[ ] Other (specify): _______________

Checklist:

[X] I have performed a self-review of my code.
[X] I have commented on my code, particularly in hard-to-understand areas.
[X] I have tested the changes thoroughly before submitting this pull request.
[X] I have provided relevant issue numbers, screenshots, and videos after making the changes.
[X] I have gone through the  contributing.md file before contributing

##Are you contributing under any Open-source programme?

[X] I am contributing under GSSOC'24
[ ] I am contributing under VSOC'24

@apu52
conflict resolved


React UI: Use null value for determining consoles link display

Signed-off-by: Julius Volz<EMAIL_ADDRESS>

@drumilpatel2000 When reading the last PR one time more this morning I noticed that we didn't actually make use of the explicit null value as intended (but didn't want to hold off on merging), so here's a small fix for that.

Thanks!


Fix for #70

Fix for #70.
Here are the some assumptions which needs to be modification:

package cloud: For now I have deployed it to my own fork repo maniankara/weldr which needs to be changed.
The package creation is done with docker only for all deb and x86_64 rpm. E.g. travis log, please comment.
Deployment to docker repository is missing.

@maniankara This looks great! I made a comment about the after_success step. Also, I made you a collaborator on https://packagecloud.io/hjr3/weldr and https://hub.docker.com/r/hjr3/weldr/ . Let me know if you are able to access those.

@hjr3 packagecloud looks better and I didnt get access to docker hub. My user account there is same as in here.

Hmm I added you as a collaborator for docker hub before:

What error are you seeing?

There are no errors. I see only this (without edit icons, only general tabs etc.).

But I havent tried pushing to there, I will try and let you know.

@maniankara ya let me know. if that does not work, i will just create an organization and go from there. maybe i should create the org now? cc @yanns

@hjr3 if you find time, an organization would be nice.

@maniankara @yanns i created https://hub.docker.com/u/weldr/dashboard/ and added you both as admins

Looks much better now !

This looks great. I will change the packagecloud repo to an org and that looks to be it.
Is there anything else left to do?

Yes. The binary is not statically linked. I can fix that quickly but, seems there might be support for x86_64 linux musl after all.

Ah, I forgot the docker authentication part, the user/password needs to be somehow encrypted.

@maniankara I looked at https://github.com/rust-lang/rust/blob/master/.travis.yml and they do the musl stuff within docker as well. I know https://github.com/emk/rust-musl-builder is a pretty popular docker image that has rust and musl.
That also reminds me, we should only deploy from the stable build that has a tag.
We can encrypt private variables for the docker user/pass via the travis gem. Read https://docs.travis-ci.com/user/environment-variables/#Defining-encrypted-variables-in-.travis.yml for more details.
I looked and packagecloud.io does not have "organizations". I created a new weldr user and we should put the rpm/deb files at https://packagecloud.io/weldr/weldr . You are already a collaborator. I am removing https://packagecloud.io/hjr3/weldr

@maniankara I looked at https://github.com/rust-lang/rust/blob/master/.travis.yml and they do the musl stuff within docker as well.
This is great. Now weldr is using that :)
That also reminds me, we should only deploy from the stable build that has a tag.
Yes, this has been the case, if you think something is missing, please feel free to point out :)
We can encrypt private variables for the docker user/pass via the travis gem. ...
Yes, I know about this and that's how the packagecloud thing works. However, I think you could add the credentials to dockerhub yourself for the weldr user, unless you transfer the credentials to me via something.
... packagecloud.io ...
Same, please suggest how to handle credentials here as well.

ping @hjr3

@maniankara sorry for the delay! I was out of commission for a while and still catching up.

That also reminds me, we should only deploy from the stable build that has a tag.
Yes, this has been the case, if you think something is missing, please feel free to point out :)

I should have worded this better. The .travis.yml file will run on stable, beta and nightly versions of Rust. We should only deploy from the stable version of Rust. As is, I think we will deploy 3 times.
I think I understand what you mean with regards to credentials.  Alright. Now I got the idea.
I have made a mess with the merge commit, etc. Hope its okay now.

@hjr3 If you think we are done with this PR, I have recently learnt rust (starting with Tokio). What do you think would be a good bug to start with. I took a look at all of the open ones, some seemed to be old (not needed anymore?), linked (ordered) etc. Please suggest :)

Merged as 45dccf016c343b94906b24bc3b1e0c8d70f0568d

@maniankara thank you so much for helping with this PR.
If you want to work on something small, I think one of the items in https://github.com/hjr3/weldr/issues/55 is an easy to place to start. That code is in https://github.com/hjr3/weldr/blob/master/src/proxy.rs in the form of simple functions. Maybe section 3.2.1 or 3.2.4?

@maniankara i landed a big PR today that unlocks a lot of progress. I added some more help wanted issues to the list.


Add support for Seamless View

Both the Credit Card and Swish payment instrument requires the 'hostUrls' field to support Seamless View.
The following has been copied from the credit card docs:

The array of URLs valid for embedding of Swedbank Pay Hosted Views. If not supplied, view-operation will not be available.

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


Don't hang if some accounts need attention

The "refresh completed" message is slightly different if some accounts need attention. Instead it says "Account refresh complete." then mentions how many accounts need attention. If we trim the message, and instead check if innerHTML contains the message (instead of equals), then both situations are handled.

Thanks, great catch!


Update AWS EBS CSI driver to v1.22.0

What this PR does / why we need it:
Flatcar has been failing with:
Warning  FailedAttachVolume  25s   attachdetach-controller  AttachVolume.Attach failed for volume "pvc-264e0b7f-4da3-4662-bc95-ef3f12e484bc" : rpc error: code = Internal desc = Could not attach volume "vol-0cf2618dadfc26acb" to node "i-09c3735e4b047c3b4": could not attach volume "vol-0cf2618dadfc26acb" to node "i-09c3735e4b047c3b4":

  InvalidParameterValue: Invalid value '/dev/xvdb' for unixDevice. Attachment point /dev/xvdb is already in use
           status code: 400, request id: 386d703c-f34c-4fce-ab3b-0dde01a80e80

This update addresses the issues.
Which issue(s) this PR fixes:

Fixes #
What type of PR is this?
/kind bug
Special notes for your reviewer:
Does this PR introduce a user-facing change? Then add your Release Note here:

Update AWS EBS CSI driver to v1.22.0

Documentation:

NONE

/test pull-kubeone-e2e-aws-flatcar-install-containerd-external-v1.27.3


Support SAM Globals when validating Functions

I am getting E2531 (You must specify a valid value for runtime) in a SAM template. My Functions do have a Runtime specified, however, this is done via the Globals section. It seems that the parser currently does not yet take this section into account when validating this value (and possibly others?).
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31

Globals:
  Function:
    Runtime: nodejs8.10

Resources:
  ## Snipped Gateway definition ##
  MyExampleFunction:
    Type: AWS::Serverless::Function
    Properties:
      Handler: example.handler
      FunctionName: example-function
      ## No Runtime defined here, is inherited from the Global:Function:Runtime section"

Output: E2531 You must specify a valid value for runtime at nodejs8.10 template.yaml:<row>:<col>

The error message states that the specified value (nodejs8.10) is unsupported. Which it was until version 0.2.2 (See the changelog: https://github.com/awslabs/cfn-python-lint/blob/master/CHANGELOG.md#022).
Also running this sample code against the latest codebase gives no errors. Which version of cfn-lint are you running?
The error message is a bit misformed, created a PR to correct that

Hi Frank, running cfn-lint version cfn-lint 0.3.1

You're right, I'm sorry for assuming :) Globals is indeed supported. I've found the real cause of the issue - there's two files called "FunctionRuntime", one living in /rules/resources/lambda/FunctionRuntime.py and the other in /rules/resources/lmbd/FunctionRuntime.py. That second one did not have nodejs8.10 added to its list. Creating a PR to fix it.

Was just debugging with unzipping the actual wheel file (https://pypi.org/project/cfn-lint/0.3.1/#files)
It's a deployment issue, apparantly and "old" folder is still in the artifact. There is no Lambda folder in the codebase anymore: https://github.com/awslabs/cfn-python-lint/tree/master/src/cfnlint/rules/resources
So after a rename the "old" one is still there. I'm checking with @kddejong to fix this for a next release

Jeroen and I reached the exact same conclusion just now :D Thanks for looking into it, Frank!


download pdf gives totally blank preview, possibly only on windows

Describe the bug
I worked on a notebook and wanted to share it, I used "download pdf" and looked at the print preview. It is totally blank. The pdf is also blank.
Here is a screenshot of the print preview

And the pdf I generated:
new notebook.py.pdf
Environment
{
"marimo": "0.8.17",
"OS": "Windows",
"OS Version": "10",
"Processor": "Intel64 Family 6 Model 85 Stepping 4, GenuineIntel",
"Python Version": "3.10.11",
"Binaries": {
"Browser": "128.0.6613.85",
"Node": "--"
},
"Dependencies": {
"click": "8.1.7",
"importlib-resources": "missing",
"jedi": "0.19.0",
"markdown": "3.6",
"pygments": "2.16.1",
"pymdown-extensions": "10.8.1",
"ruff": "0.5.5",
"starlette": "0.37.2",
"tomlkit": "0.12.5",
"typing-extensions": "4.7.1",
"uvicorn": "0.30.1",
"websockets": "12.0"
},
"Optional Dependencies": {
"altair": "5.3.0",
"pandas": "2.1.0",
"polars": "1.2.1",
"pyarrow": "16.1.0"
}
}
Code to reproduce
import marimo

__generated_with = "0.8.17"
app = marimo.App(width="medium")

@app.cell
def __():
    import marimo as mo
    import pylab as plt
    import numpy as np
    return mo, np, plt

@app.cell
def __(mo):
    mo.md(r"""hi I am testing export options""")
    return

@app.cell
def __(np, plt):
    plt.plot(np.arange(10))
    return

@app.cell
def __(mo, np, plt):
    plt.plot(np.arange(10))
    mo.mpl.interactive(plt.gcf())
    return

if __name__ == "__main__":
    app.run()

Then go to the hamburger menu and choose "download->pdf".

This could be a timing issue or windows issue. Can you retry this when toggling "app mode"?

I think I have the same problem (Windows, Chrome or Edge).
If I toggle app view, under "Present as", it works and I can save as pdf.

Sounds like a good move. I was exporting from edit mode, I'll try from app mode when I'm back I. The office.


How to use init in obj-c?

How can I use this on obj-c?
I can't init

@bobongski Which object do you want to 'init'?
If it is Jukebox, you could use it somewhat following way to initialize:
JukeBox *player = [[JukeBox alloc]init.........

@RajChanchal, have you tried this?  I'm having the same issue.   "'init' is unavailable" is the error message.

@cesnell , you are right pal. After trying the lib in Objective-C, I got to know the initialiser is unavailable.
And when I tried finding the reason, I came to know to following conclusion:
If you add @objc prior to JukeboxDelegate declaration in Jukebox.swift class, the initialiser initWithItems will work in Objective-C.
So, the declaration will be like:
@objc public protocol JukeboxDelegate: class
To read more about Interoperability between swift and Objective-C, Go here.

@RajChanchal, thanks!


Possible bug: Slug field invalid format

I noticed that a slug can be saved in a invalid format for example my slug, ideally this would convert to my-slug for the user.
In other payload projects i've used this utils in a beforeValidate hook, what are your thoughts of including it into the project or a similar solution?
function formatSlug({ value }) {
  if (!value || typeof value !== "string") {
    return "";
  }

  return value
    .trim()
    .toLowerCase()
    .replace(/[^\w\s-]/g, "") // Remove non-word characters
    .replace(/\s+/g, "-") // Replace spaces with hyphens
    .replace(/--+/g, "-") // Replace multiple hyphens with a single hyphen
    .replace(/^-+|-+$/g, ""); // Remove leading/trailing hyphens
}

Alternatively is it possible to extend your tenancy collection to pass this in myself for the field?

I think we could add the beforeValidate to this file -> https://github.com/joas8211/payload-tenancy/blob/f687c556ab5518be52a3e732590136237943ed4d/src/fields/tenantSlug.ts

@joas8211 that would be perfect, currently I was trying to modify it in a beforeOperation or beforeRead hook on the collection but if you extended the config then that would make it much more powerful!

Following issues are split from this issue: #11, #8. Closing this issue in favor or those split issues.


Changed Argument Parsing

I've changed a few things around in the code, namely using the argparse module to support commandline options and optional changing of parameters from invocation. I think this'll make the script a bit easier to script with, as you can adjust the threshold/randomness until you find something that looks nice without editing the file. Let me know what you think, and thanks for writing this! It produces some great-looking images.

Looks good, thanks! (My first pull request :) )

Mine too! Props on being so prompt.


Support disabling automatic Django static asset generation

Automatic Django static asset generation (running the manage.py collectstatic command) was added in #108.
At the moment there is no way to force disable the feature (beyond removing django.contrib.staticfiles from INSTALLED_APPS in the app's Django config, or removing the manage.py script), whereas the classic Python buildpack allows disabling it using DISABLE_COLLECTSTATIC=1.
That said, the new implementation performs more thorough checks to see whether the app is using the static files feature, so between that and a few other improvements (like now passing env vars to the subprocess), there should be fewer cases where the feature needs manually disabling.
Some scenarios in which the ability to disable might be needed:

the user needs to run a step between Python package installation and running collectstatic (such as patching invalid urls in CSS comments to work around https://code.djangoproject.com/ticket/21080)
the user can't debug a failure locally or at build time, and wants the build to succeed so they can debug at runtime

If we decide we should still add support for disabling automatic Django static asset generation, then we should probably use config options in project.toml rather than env vars (to encourage infrastructure as code). However, this depends on us figuring out a convention there for all of our buildpacks.
Either way, we'll also need to add deprecation (or error) messages if DISABLE_COLLECTSTATIC is set (or if .heroku/collectstatic_disabled exists), to warn that it no longer does anything (for people migrating from the classic buildpack).
GUS-W-14109400.

These docs will also need updating:
https://devcenter.heroku.com/articles/django-assets#disabling-collectstatic


Testing Angular applications using Protractor and Jasmine

Proposed title of the article
Testing Angular applications using Protractor and Jasmine
Introduction paragraph (2-3 paragraphs):
Protractor is an end-to-end testing framework for angular JS applications which run on the client end. Angular is a javascript frontend application that is used to create reactive/dynamic websites and web applications. It is a Nodejs application that has its foundational structure on top WebDriverJs.
Protractor can run tests you have written for your angular applications running in a real browser such that interacting with it is possible just as in a real running application.
Key takeaways:

What Protractor is and how to Protractor works.
Importance of testing
Why Protractor and Jasmine and how protractor works with Jasmine to test angular application
How to set up a basic end-to-end test using Protractor and Jasmine.

References:
https://www.youtube.com/watch?v=p8ENoeZENhk&t=364s
https://www.protractortest.org/#/api
https://www.protractortest.org/#/api?view=ProtractorBy
https://www.protractortest.org/#/getting-started
Templates to use as guides

How To Guide Template
Software Review Template
Tutorial Template

@Eze4Manuel
Good afternoon and thank you for submitting your topic suggestion.
Your topic form has been entered into our queue and should be reviewed (for approval) as soon as a content moderator is finished reviewing the ones in the queue before it.

@Eze4Manuel
Sounds like a helpful topic - lets please be sure it add value beyond what is in the official docs and what is covered in other blog sites.
Please be sure to double check that it does not overlap with any existing EngEd articles or incoming topic suggestions (if you haven't already) to avoid any potential article closure, please reference any relevant EngEd articles in yours. - Approved


Style/Watermark Not Visible

Summary
Watermark of exported photos are not clearly visible
Expected
A way to make it more visible. White borders around the words?
Photo

Closing after #63


Documentation: Explain terraform-compliance internals

Documentation Request

[ ] Explain what terraform-compliance supports, and what does not.
[ ] Explain the interpolation on BDD tests
[ ] Explain how terraform-compliance reads terraform plan file
[ ] Explain what is resource mounting and how it works
[ ] Explain how to find your own way while writing the tests if you don't know the attributes

[ ] feature files need to be suffixed .feature

It would be nice if the examples (on the website) were also just in an examples/ folder, since that would, for instance, answer this question that I had.


hasDrawable doesn't work when ImageView has android:tint

Steps to reproduce:

Create a layout with an

<ImageView android:src="R.drawable.my_icon" android:tint="R.color.white" android:layout_width="40dp" android:layout_height="40dp"/>

Create a test that uses hasDrawable(R.drawable.my_icon)

Observed Results:
The method hasDrawable does not see the drawables as equal
Expected Results:
I expected the drawables to be equal, or provide a way to add the expected tint with the hasDrawable call
Possible workaround:
If i would comment out lines 86 until 88 (the canvas drawing) in DrawableMatcher.kt the comparing works, but i'm not sure if that will break anything.

Hi there! Thanks for reaching out.
Unfortunately, we do not support tinting matching at the moment. But you can submit a PR and extend the functionality of DrawableMatcher by checking if the target view has tint and applying it to the canvas that is being asserted.

Thanks for the tip, i'll see what i can do!

@tdekoning I think that this improvement can help you. Also, thank for let us know about this lack!
Cheers!

@Vacxe Thanks for the change and the quick response!

@Vacxe I've tried to test the code from your pull request, but it doesn't seem to work.
In my case i'm setting the android:tint and the (vector) drawable using android:src. The call bitmap.sameAs(otherBitmap) returns false and if i inspect the generated bitmaps, they aren't the same. It looks like an anti-alias or scaling issue.
I've tried to fix the issue myself, but i guess i do not understand imageview rendering well enough. Can you look into it?

@tdekoning sure, I'll try

@tdekoning BTW, does it work without tint? Just wanna find any clue.

@Vacxe is above enough information to trace the issue?

@tdekoning not yet. also with vector setup not sure that is possible. Let figure out how we can do it.

@tdekoning should be fixed. Could u test it or we can close ticket?

@Vacxe thanks!
We will test this next week, i will get back to you to report the results

@tdekoning can I close the ticket?

Sure, close it 👍


NSInternalInconsistencyException: 'Got output with no test running'

I've recently upgraded to Xcode 7 and the following error occurs frequently in the middle of test runs:
2015-09-18 14:40:13.821 xctool[21917:142024] *** Assertion failure in -[TestRunState testOutput:], /tmp/xctool20150918-66993-1eeitiu/xctool-0.2.6/xctool/xctool/TestRunState.m:144

2015-09-18 14:40:13.960 xctool[21917:142024] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Got output with no test running'
*** First throw call stack:
(
	0   CoreFoundation                      0x00007fff95bdd03c __exceptionPreprocess + 172
	1   libobjc.A.dylib                     0x00007fff8fbba76e objc_exception_throw + 43
	2   CoreFoundation                      0x00007fff95bdce1a +[NSException raise:format:arguments:] + 106
	3   Foundation                          0x00007fff8df4699b -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:] + 195
	4   xctool                              0x000000010faf9b14 -[TestRunState testOutput:] + 240
	5   xctool                              0x000000010faf8b4a -[Reporter handleEvent:] + 1160
	6   xctool                              0x000000010faf86a2 -[Reporter parseAndHandleEvent:] + 151
	7   xctool                              0x000000010fb06219 -[LineReader processBuffer] + 85
	8   xctool                              0x000000010fb06382 -[LineReader dataAvailableNotification:] + 100
	9   CoreFoundation                      0x00007fff95b9945c __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 12
	10  CoreFoundation                      0x00007fff95a89634 _CFXNotificationPost + 3140
	11  Foundation                          0x00007fff8de85aa1 -[NSNotificationCenter postNotificationName:object:userInfo:] + 66
	12  Foundation                          0x00007fff8dfbab66 _performFileHandleSource + 1622
	13  CoreFoundation                      0x00007fff95af9a01 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
	14  CoreFoundation                      0x00007fff95aebb8d __CFRunLoopDoSources0 + 269
	15  CoreFoundation                      0x00007fff95aeb1bf __CFRunLoopRun + 927
	16  CoreFoundation                      0x00007fff95aeabd8 CFRunLoopRunSpecific + 296
	17  CoreFoundation                      0x00007fff95ba2671 CFRunLoopRun + 97
	18  xctool                              0x000000010fb150de +[SimulatorWrapper runHostAppTests:device:arguments:environment:feedOutputToBlock:error:] + 716
	19  xctool                              0x000000010fb02a3e -[OCUnitIOSAppTestRunner runTestsAndFeedOutputTo:startupError:otherErrors:] + 2282
	20  xctool                              0x000000010fb044f4 -[OCUnitTestRunner runTests] + 209
	21  xctool                              0x000000010fb12199 __158-[RunTestsAction blockForTestable:focusedTestCases:allTestCases:testableExecutionInfo:testableTarget:isApplicationTest:arguments:environment:testRunnerClass:]_block_invoke + 335
	22  xctool                              0x000000010fb13eef __56-[RunTestsAction runTestables:options:xcodeSubjectInfo:]_block_invoke424 + 336
	23  xctool                              0x000000010fb1362f -[RunTestsAction runTestables:options:xcodeSubjectInfo:] + 5030
	24  xctool                              0x000000010fb1162e -[RunTestsAction performActionWithOptions:xcodeSubjectInfo:] + 1874
	25  xctool                              0x000000010fafc93c -[XCTool run] + 3316
	26  xctool                              0x000000010fafb282 main + 1064
	27  xctool                              0x000000010faf7f34 start + 52
)
libc++abi.dylib: terminating with uncaught exception of type NSException
CIScripts/unit_tests.sh: line 49: 21917 Abort trap: 6

I also had this

I have so work in progress to fix issues you are hitting. Hopefully I can finish it sooner than later.

Great, thanks!

+1 Seeing this issue after upgrade to Xcode 7 and xctool version 0.2.7.

+1 Seeing this with both Xcode 7 and 6.4 using 0.2.6 and master

+1 upgraded to Xcode7 and failing on my Jenkins box.

+1 seeing the same issue using Xcode 7. Had a workaround disabling most debug messages to avoid this assert, but it still happened intermittently.

@ExtremeMan ... is there a workaround that you can suggest until we have a proper fix? A workaround will help reduce the pressure to fix :)

@rk-yen It appears one way this can happen is if any tests have the same names (or at least it did in the past, according to a Google search).
Another way, which happened for me, was either because I had two test targets in my project, or because one of those targets was disabled. I just deleted the unused target and this exception went away.

Trying to repro it locally and can't. Do you all use NSLog for logging or CocoaLumberjack, for example?
Is any of your projects open sourced?

using CocoaLumberjack in my case - my workaround was to reduce log level to DDLogLevelError or DDLogLevelOff. Also have 2 test targets, if that matters

We are using CocoaLumberjack as well (one test target).

Got it. I think that's the case. CocoaLumberjack (IIRC) has some delay before it actually flushes logs to the stdout. I've found (basically a bug) how I could fix it in xctool (some logs might be lost but it is expected behavior if you log on background thread). If any of you can checkout my branch https://github.com/facebook/xctool/tree/nekto/sync_test_running_check and verify if it actually fixes the issue I would highly appreciate.

I can try it.

I ran run-tests 5 times each with the v0.2.4 and your branch.

0.2.4 crashed all the times.
your branch succeeded all the times.

Thanks, @rk-yen. What about 0.2.6 (latest on brew)? Does it crash as well?

0.2.6 crashed for me.  I'm using NSLog. Your branch succeeded.

@ExtremeMan ... 0.2.6 crashed 4 times out of 5 runs.

PR https://github.com/facebook/xctool/pull/590 is out!

Thanks for testing it for me! I appreciate that.

Final fixes are merged into master. Please open new issue if you hit this problem again.

Thanks for the help @ExtremeMan


Fixed CommonMiddleware ETag Support

Fixed ETag support broken in 1.9 (comparison of If-None-Match on the request vs ETag on the response is incorrect.  Response's ETag is quoted, while the Etag(s) from If-None-Match are not).
Added test case to demonstrate regression (tests/
Moved 3 CommonMiddleware-related tests to the proper tests case

buildbot, add to whitelist.

Could you please put the "Moved tests" in a separate commit for clarity and also add a mention of the bug fix in docs/releases/1.9.1.txt?

merged in 5bc881541caafbac6911fb26d9718b8ad6d45b2a and 6be9589eb34f79914666c9d9e1e15bdb7fc44df2, thanks!


Add servers using interactive script tile

It looks like this Tile is renamed on the portal Now to Add a single server
3. On the Select a method page, select the Add servers using interactive script tile, and then select Generate script.

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

ID: 6036c6de-a2e8-ffd7-50e9-44ae32bf1682
Version Independent ID: f7ab9abc-abd0-09e1-4b64-9ec304495ee5
Content: Connect hybrid machines to Azure using a deployment script - Azure Arc
Content Source: articles/azure-arc/servers/onboard-portal.md
Service: azure-arc
Sub-service: azure-arc-servers
GitHub Login: @johnmarco
Microsoft Alias: johnmarc

Hi @krishnaji . Thank you for pointing this out. I should be able to get it fixed in the next couple of days.

#please-close


fix(skeleton): fixed theme token usage in styles

Closes #834
Description
Fixed a bug where theme tokens were used in the Skeleton component.
Is this a breaking change (Yes/No):
No

Thanks!


Experiment with user testing

We can experiment with:

1:1 calls with potential testers where they are onboard and we gather feedback from their first interaction with the site
Learn from the Deep Work method for fast user tests

Done by Mils during UX research.


added package.json for clib

I have been using clib quite a lot and find it quite useful to hide 3rd party code from my own.
Here a file that allows threadpool to be installed via threadpool, in case you find it useful.

I've never used clib. I should have a look at it.
Sorry for the delay.


Load balancer rule not selected when clicking its row in autoscale group creation form

ISSUE TYPE

Bug Report

COMPONENT NAME
UI

CLOUDSTACK VERSION
Tested on <IP_ADDRESS>, probably on 4.19 as well

CONFIGURATION
N/A
OS / ENVIRONMENT
N/A
SUMMARY
In the autoscale group creation form, if a user tries to select a load balancer rule by clicking its corresponding row (outside the radio button), the LB rule does not get selected. Instead, the user has to click inside the radio button. For other similar listings, clicking outside the radio button works.
STEPS TO REPRODUCE
1. Create a network
2. Create a load balancer rule for the autoscale group
3. Open the autoscale group creation form
4. Select the network
3. Try to select a LB rule by clicking its row (not the radio button)

EXPECTED RESULTS
LB rule gets selected

ACTUAL RESULTS
LB rule does not get selected

again @bernardodemarco what release will you address this for , 4.20.1 or 21?

again @bernardodemarco what release will you address this for , 4.20.1 or 21?

Since it's a bug fix, I think that I'll address it on the 4.20 branch.

Closing this ticket since it was fixed by #10016.


Added Authing into IdP

Summary
Added Authing into Idp
@juzhiyuan

Are u guys afraid of being rejected by Apache after merging Authing to IdP list or something else?

All new PRs will be merged one by one after the transfer process is done.


New Login Error as of 2023-03-06, different than the last error.

Prerequisites

[x] Did you read FAQ section in readme.md?
[x] Did you test with the latest releases or commit ?
[x] Did you search for existing issues in Issues?

Description
Upon attempting to login using the fix that previously allowed the 403 forbidden login error to be bypassed, now a new error code is showing up.
HTTP Error 301: The HTTP server returned a redirect error that would lead to an infinite loop.
This is a different error than before, which was a 403 forbidden, and isn't bypassed with useragent = Mozilla/5.0 like the errors popping up last week.
Steps to Reproduce

Add authentication cookie to config.ini
Change useragent to Mozilla/5.0
Launch PixivUtil2

Expected behavior: The program to launch and login.
Actual behavior: The following message:
`Error at doLogin(): (<class 'mechanize._response.get_seek_wrapper_class..httperror_seek_wrapper'>, <httperror_seek_wrapper (urllib.error.HTTPError instance) at 0x17442bdcc10 whose wrapped object = <HTTPError 301: 'The HTTP server returned a redirect error that would lead to an infinite loop.\nThe last 30x error message was:\nMoved Permanently'>>, <traceback object at 0x000001743EBEE740>)
Traceback (most recent call last):
File "PixivUtil2.py", line 1524, in doLogin
File "PixivBrowserFactory.py", line 347, in loginUsingCookie
File "PixivBrowserFactory.py", line 207, in open_with_retry
File "mechanize_mechanize.py", line 257, in open
File "mechanize_mechanize.py", line 313, in _mech_open
mechanize._response.get_seek_wrapper_class..httperror_seek_wrapper: HTTP Error 301: The HTTP server returned a redirect error that would lead to an infinite loop.
The last 30x error message was:
Moved Permanently
Cannot Login!`
Log file: [Attach the pixivutil.log file in the application folder, recommended to delete the old file, reproduce the issue, and upload the newly generated file here]
pixivutil.log
Versions
PixivDownloader2 version 20230105

Was an issue on my end and restarting PC of all things fixed it, I'm sorry for the spam.

@britefire i have this error too, restarting PC doesn't fix this, how can you do that