Allow 'unspecified_source_income'/'quarterly' irregular payment type

What
Link to story
We want to capture income that is from an unspecified source, expressed by the user as a single total figure received over the past 3 months. By 'unspecified source' we mean income that doesn't fall under any of the named types of regular or irregular payments that CFE accepts, with no requirement on the user to describe the source in any way.
So this PR adds 'unspecified_source_income' as a valid irregular type, and 'quarterly' as a valid income frequency, to the irregular payments model/endpoint.
Also, because prior to this there was only one irregular payment type - student loans - there was a bit of logic that assumed all irregular payments were student loans, an assumption that started to break with the new type. So I unpicked that logic.

@jsugarman can you take a look at this?
I've run the tests locally and see no issue with our scenarios, but I know 🟡 is doing more transaction changes so this may impact your team more?

have started to review this @colinbruce @patrick-laa  - will finish off thoughts and publish asap.
Am wondering on first glance whether a new category of unspecified regular transaction (operation credit, frequency three_monthly) might do?

Thanks for agreeing to review this, @jsugarman! The reason we've proposed treating this as an 'irregular' income is that, as I understand it, we're expecting users to use the field to report in aggregate sums of money that are not received at fixed intervals in fixed amounts, rather than regular recurring payments. But I appreciate that within the context of CFE, 'regular' and 'irregular' may have more specific meanings than that. May I ask if there's a reason why treating this sort of thing as 'regular' payments within CFE would be preferable?

May I ask if there's a reason why treating this sort of thing as 'regular' payments within CFE would be preferable?

Merely my first thoughts on seeing the "quarterly" frequency being added because we had only recently put in the similar idea of regular income or outgoings for a "quarter" via the regular transaction model.
I am not very familiar with the logic and codebase of CFE so would need to check the differences in handling of irregular and regular before commenting further. We have also discussed changing permissions on this repo as, for one thing, the test don't run when you open a PR.


Login-AzureRMAccount context not persisting during execution of script

PRompts for authentication, but i beleive the login does not persist due to script block scoping or some other reason:
 Successfully installed version 6.13.1 of AzureRM...

Pulling Azure account credentials...
Get-AzureRmResourceGroup : Run Login-AzureRmAccount to login.
At C:\Program Files\WindowsPowerShell\Scripts\New-OnPremiseHybridWorker.ps1:230 char:9

$null = Get-AzureRmResourceGroup -Name $AAResourceGroupName

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : InvalidOperation: (:) [Get-AzureRmResourceGroup], PSInvalidOperationException
FullyQualifiedErrorId : InvalidOperation,Microsoft.Azure.Commands.Resources.GetAzureResourceGroupCommand

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

ID: 7b29372c-7bd9-7da2-4cff-9afbb432bccf
Version Independent ID: 66ce101d-d21b-3fdf-be70-7f9cadc1570e
Content: Azure Automation Windows Hybrid Runbook Worker
Content Source: articles/automation/automation-windows-hrw-install.md
Service: automation
GitHub Login: @georgewallace
Microsoft Alias: gwallace

@amanjee Thanks for the feedback! We are currently investigating and will update you shortly.

@amanjee Thanks for reaching out.. I just ran the script on a few new VMs and it worked as expected.. I was prompted to log in and it took my credentials and finished the setup.

@georgewallace Thanks for your response, I was able to get it to run by executing on a machine that didnt have the Az cmdlets installed. THe source of my issue seemed to be a conflict with the AzureRM modules and Az modules on the same machine.

@amanjee Yes there can be issues with both cmdlets being on the same machine.. Azure Automation has additional items you need to know if using Az.. You can view it here https://docs.microsoft.com/en-us/azure/automation/az-modules


use the test vectors from the draft

The QUIC draft is getting some official test vectors: https://github.com/quicwg/base-drafts/pull/2274.
It covers both key derivation as well as using these keys to encrypt an Initial packet, including header encryption.

Codecov Report

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

@@           Coverage Diff           @@
##           master    #1713   +/-   ##
=======================================
  Coverage   87.33%   87.33%
=======================================
  Files          96       96
  Lines        6259     6259
=======================================
  Hits         5466     5466
  Misses        563      563
  Partials      230      230

Continue to review full report at Codecov.

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


issue 118: fixed setting the default value for a textField.

Resolved issue where defaultValue was not being set properly.
Resolves the following ticket ---> https://github.com/erikras/redux-form-material-ui/issues/118

Codecov Report

Merging #119 into master will increase coverage by 1.43%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #119      +/-   ##
==========================================
+ Coverage   82.35%   83.78%   +1.43%
==========================================
  Files          10       11       +1
  Lines          34       37       +3
==========================================
+ Hits           28       31       +3
  Misses          6        6

Impacted Files
Coverage Δ

src/TextField.js
100% <100%> (ø)

Continue to review full report at Codecov.

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

LGTM. 👍

Published in v4.1.3.

This has been reversed in v4.2.0. See release notes for why.


Why not distribute on varchar format for distributed tables in dedicated SQL pools?

I have a question regarding the section "Distributed or replicated tables".
Among the tips bullet points, there is one line that says "Don't distribute on varchar format.".
What is the reason why one shouldn't distribute on a varchar typed column? I can't find the reason why anywhere, even in this article : Guidance for designing distributed tables using dedicated SQL pool in Azure Synapse Analytics
Thanks in advance, regards,
Kevin

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

ID: 61988aaf-ef0d-999f-536b-47af6b6b1258
Version Independent ID: bf939211-a490-f304-16cf-db870d3fae54
Content: Cheat sheet for dedicated SQL pool (formerly SQL DW) - Azure Synapse Analytics
Content Source: articles/synapse-analytics/sql-data-warehouse/cheat-sheet.md
Service: synapse-analytics
Sub-service: sql-dw
GitHub Login: @mlee3gsd
Microsoft Alias: martinle

@kev-cs
Thanks for your feedback! We will investigate and update as appropriate.

@kev-cs
You are correct that the article "Guidance for designing distributed tables using dedicated SQL pool in Azure Synapse Analytics" does not provide a reason for why one should not distribute on a varchar typed column. However, it is generally not recommended to distribute on a varchar column because it can lead to data skew. Data skew occurs when the data in a distributed table is not evenly distributed across all distributions. This can cause some distributions to have significantly more data than others, which can negatively impact query performance.
In general, it is recommended to choose a distribution column or set of columns that have a high cardinality, meaning that they have many unique values. This helps to ensure that the data is evenly distributed across all distributions. Additionally, it is recommended to choose a distribution column or set of columns that are frequently used in join, group by, distinct, over, and having clauses, and are not used in where clauses.
I hope this helps! Let me know if you have any other questions.

Hi @RamanathanChinnappan-MSFT , thank you for the response!
I understand, thank you for the explanation. I would still like to note that, without that information, it's confusing to understand why varchar is mentioned in this article the way it is. As I understand, it's possible to have many different values with a varchar column, just as almost any other type I think. Varchar can also be used as a type for another's table key column, and could then be used in joins. Wouldn't varchar be just as good a candidate as any other type, if not better, for a distribution column?
I could still be missing something, please don't hesitate to mention it if I did! Otherwise, my suggestion is to change it to something mentioning the use of a type or a column that have a high cardinality, or a lot of many unique values.


New client takes LogLevel from config.

Write the log level to "log-level" of new client .ini (Error/Terse/Versobe/Debug), originally it's always Debug
Change "SolutionProgress" to "Idx/TotalSize" instead of "Idx/LastIdx", which is aligned with "ProblemProgress"
When DID_NOT_SATISFY_ASSERT, print only the failed predicates to make it clean.

Looks good! There's an issue with the format check.  You can ignore the ubuntu16 ones the ubuntu18 one should be fixed.


linkmetrics not working as I expect

Describe the bug
Here's my outputs
> linkmetrics query fe80:0:0:0:1029:e885:cfe7:de20 single qmr
done

> linkmetrics mgmt fe80:0:0:0:1029:e885:cfe7:de20 enhanced-ack register qmr
Received Link Metrics Management Response from: fe80:0:0:0:1029:e885:cfe7:de20
Status: Other error

To Reproduce
Git commit id: de93711e223aade9867d4bf196258776be269b79
Using nrf52840-mdk
build all firmware with USB=1 THREAD_VERSION=1.2 LINK_METRICS=1 JOINER=1 COMMISSIONER=1
Expected behavior
The same outputs as seen here
Console/log output
linkmetric pcaps.zip

Hi @purvisb
Thanks for raising the issue.  There are some fixes to this issue after this commit. Please use the latest commit.
Regarding linkmetrics mgmt fe80:0:0:0:1029:e885:cfe7:de20 enhanced-ack register qmr , please note that according to spec, at most two metrics can be used in enhanced-ack probing. So you can do linkmetrics mgmt fe80:0:0:0:1029:e885:cfe7:de20 enhanced-ack register qm or linkmetrics mgmt fe80:0:0:0:1029:e885:cfe7:de20 enhanced-ack register mr, etc. These should work. We also mentioned it in our cli doc (Probably we should bold it):

If you do the query from a child to a parent, it should work (with the 2 points I mentioned above). If you do the query from a parent to a child, there is an issue. I fixed the issue in #6483.

Please have a try and let me know :)

Closing stale issue.


Is there a way to perform an action as soon as the bot is loaded?

Rasa Core version:0.8
Python version: 3.6.4
Operating system (windows, osx, ...):OSX
Issue:
Currently the very first action that the bot performs when it is loaded is that it waits for the user to type something.I would like to change that.I would like the user to choose between one of the topics to perform the next actions on.For this purpose, I would like provide the user with 3 buttons(one for each option).Then, I would like to fill a slot value(depending upon what button the user chose)...So, how do I force the user to choose an option using buttons as soon as the bot is loaded and how do I set a slot value when the user presses a specific button?
Content of domain file (if used & relevant):

@akelad I will be integrating my bot with Slack. Can you please tell me how to do it?Also, how do I set a slot through buttons?For example - I have a slot "topic.".Now if the user choose button 'A',then I would like to set slot topic to A. If he chooses B, then the slot should be 'B' and so on.

@devansh1497 here is the documentation for connecting rasa core to slack: https://core.rasa.com/connectors.html#slack-setup
As for sending an initial message - I'm not sure that's possible with slack, you'd have to do some digging through their documentation
About setting slots with buttons, if you name the entity the same as your slot, you can do this by setting the payload to be something like /intent_name{"entity_name":"entity_value"}
If they don't have the same name, you have to create a custom action that sets the slot for you

@akelad Actually I already know how to integrate with slack...I was just wondering if it is possible to set a custom action as the load up action.

When you use Slack the first action will be from the user initiating the dialogue. So what I have done is to subclass the Action class (and also other like FormAction) and eventually run my custom code in the run function. Since each user has a unique id you will be able to keep track of what users have initiated a dialogue and eventually perform your logic.

@arachny Can you please elaborate?What are the steps needed?

For example I subclassed the Action class as:
class MyAction(Action):
    def run(self, dispatcher, tracker, domain):
        # get user id
        uid = dispatcher.sender_id

        # get a slot (if needed, so you can check if it has an initial value)
        myslot = tracker.get_slot("slot")

        # update a slot value (with any value, e.g. from a DB)
        tracker.update(SlotSet("myslot", "some value"))

        # get the return from your class implementation (so you can still use your specialised actions)
        returns = self.myrun(dispatcher, tracker, domain)

        return returns

    def myrun(self, dispatcher, tracker, domain):
        return []

So this (MyAction) will be executed for ALL actions as long as you use that instead of the Action class. E.g.:
class ActionCustom(MyAction):
    def name(self):
        return "action_custom"

    def myrun(self, dispatcher, tracker, domain):
        # ... code
        return []

Make sure you have the appropriate if statement in place so MyAction does not execute the logic all the time.

@arachny this doesn't let the bot initiate the conversation though right? @devansh1497 if there's no function in slack to force the initial user message to be a specified message then i'm afraid it's not possible

I agree, that is why I said that it will only be executed after the user interacts (i.e. Slack, as @devansh1497 intended). So in the first interaction the method will be triggered to setup the customised environment based on the user that initiates the chat. Potentially there could even be an initial utter sent to inform the user that the system is initialising (if that takes time).
Otherwise as @akelad said, there is no other way to initiate this.

Alright, I just noticed this is a duplicate of #585 - if you have any other questions, please continue the discussion there :)


Increase spookyness

Some users noted that the demo entirely lacked any actual spookyness.
Work should be put into making the game more spooky by adding more ambient spooky noices and introducing the monster.

With the decrease lighting, spooky music stings and the part where the monster chases you through a dark corridor, I would consider this level of spookyness sufficient, about 99% spiders on the spider scale.


Azure: Provisioning breaks when subnet is in different region than VM

In the Azure refresh parser we gather an inventory of cloud networks that belong to a resource group within the region of the EMS.
That cloud_network might belong to a completely different region than its resource_group. In Azure, creating a VM in a different region than its cloud_network will cause an exception to be thrown.

@miq-bot assign @bronaghs

@bronaghs I've put in a PR: https://github.com/ManageIQ/manageiq/pull/8869

@bronaghs Can we close this?

@djberg96 - yes.


Using the mapping framework without MongoClient.getClient()

Is it possible to use the mapping framework of kmongo without having to do it from KMongo.createClient ?
Since my MongoDriver is heavily wrapped (in java) and I don't want to introduce dependency to kotlin (in the wrapper repo)
I've taken a quick look, it should be possible that the Jackson codec be registered on collection level right ?

You can try this:
val codecRegistry = ClassMappingType.codecRegistry(MongoClient.getDefaultCodecRegistry())
val col = collection.withCodecRegistry(codecRegistry)

This works perfectly. Thank you!


Enable Nullable Reference Type

Is there any plan to enable nullable reference type in v1.0?

It hasn't come up. We should probably try it if only to avoid API changes later.
Will our cross-targeting of 5.0 and 3.1 complicate this?

It hasn't come up. We should probably try it if only to avoid API changes later.
Will our cross-targeting of 5.0 and 3.1 complicate this?

I'm not sure if these would be needed but MemberNotNullAttribute, MemberNotNullWhenAttribute does not exist in 3.1.

I'm not sure if these would be needed but MemberNotNullAttribute, MemberNotNullWhenAttribute does not exist in 3.1.

Triage: Maybe part of bigger API review ... might be punted.

@tratcher Is this up for grab?

@Kahbazi thanks for the offer, but I plan to take care of this one as part of our API reviews.

Completed Yarp.ReverseProxy for preview12.
@MihaZupan want to take on TelemetryConsumption?
I think we'll postpone ServiceFabric, k8, and OperatorFramework since we don't expect those to ship in 1.0.

I'll take care of Telemetry


Update to PureScript 0.10.x?

I realize one sometimes has to let blog posts stay pinned to a point in history and not perpetually update them, but do you plan to update the code to more recent versions of PureScript and/or Halogen?

I would! I hear that Halogen is in the middle of a big update, so I'll try to stay on top of that and do an update when it happens.

Yeah, I've actually held off on using Halogen because it keeps on changing!

Amusingly, PureScript 0.11 caused yet more changes.

At this point I might be waiting for 1.0 :sweat_smile:

Yeah. PureScript 0.12 recently radically changed a bunch of things yet again.


Implemented chance.nationality

From issue #229
Used JSON from https://github.com/samsargent/Useful-Autocomplete-Data/blob/master/data/nationalities.json
-Open source
-Tested

Awesome, looking great, thanks for the contribution!

This is my first pull request! Here are some screen shots from my tests

And congrats on your first pull request @winkerxiao !

Thanks @victorquinn!


Add support to 'disabled' prop

Disabled elements will not react to interactions (hover/active/focus) and follow the :disabled pseudo-class style.
<input disabled style={{':hover': ..., ':disabled': ...}}>

Coverage decreased (-0.3%) to 96.179% when pulling f2976557b195bbdb2553fd9ac5423e4fc7af65cc on jooyunghan:master into 2a0ed3562a6be95bfb2fc94e611301dfed10ad1e on FormidableLabs:master.

Looking good. I just had a few style-related comments.

Coverage decreased (-0.2%) to 96.26% when pulling 44764ecbab6cdf54e41c614c5e0156109bfc4cb4 on jooyunghan:master into 2a0ed3562a6be95bfb2fc94e611301dfed10ad1e on FormidableLabs:master.

Thanks @jooyunghan + @jmcriffey!


Add Provider for Soundcloud

Hey stretchr!
I'm working a new project that involves interacting with the SoundCloud API.
I'd be happy to contribute to this awesome library with a provider.
Expect a pull request in a few hours! :smile:

I'm trying to make use of the soundcloud provider and keep running into the same error trying to authenticate:
"Error when trying to get user from &{0x18a1c608 0x8806610} - unexpected end of JSON input"
https://github.com/mxjxn/gochat/blob/master/auth.go
Looking for a bit of advice or a point in the right direction


Building Issue

Describe your problem here.
Why does this happen? I cant fix it because I barely know anything about hx... but I need this build to work... help please?
It said:
BUILDING GAME
source/psychlua/HScript.hx:317: characters 90-97 : Type not found : TeaCall
done.
Are you modding a build from source or with Lua?
Source
What is your build target?
Windows x64
Did you edit anything in this build? If so, mention or summarize your changes.
No I didnt edit anything... I just built it D:

I think it is a SScript problem but I think it can be solved by changing Teacall to Tea

I tried but it won’t work
On Thu, Apr 4, 2024 at 5:49 PM Mistak3nn @.***> wrote:

I think it is a SScript problem but I think it can be solved by changing
Teacall to Tea
—
Reply to this email directly, view it on GitHub
https://github.com/ShadowMario/FNF-PsychEngine/issues/14409#issuecomment-2038552513,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYHGMWSAUC5VENFAP5UVBXDY3X7MFAVCNFSM6AAAAABFYFBUDCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZYGU2TENJRGM
.
You are receiving this because you authored the thread.Message ID:
@.***>

Do you still get the same error?

It’s telling me to delete the { symbol, but one question… can you try to
build it? Or try to fix it and send me the mediafire? For 0.7.3
On Thu, Apr 4, 2024 at 5:52 PM Mistak3nn @.***> wrote:

Do you still get the same error?
—
Reply to this email directly, view it on GitHub
https://github.com/ShadowMario/FNF-PsychEngine/issues/14409#issuecomment-2038554783,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYHGMWXCV5GQZSPHE7JREGTY3X7WDAVCNFSM6AAAAABFYFBUDCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZYGU2TINZYGM
.
You are receiving this because you authored the thread.Message ID:
@.***>

Having the same issue on Linux.

Just figured it out, just use SScript 7.7.0 (haxelib set SScript 7.7.0)

What do I do with it? Copy and paste it into cmd? What,
On Fri, Apr 5, 2024 at 4:05 AM Teddy0008 @.***> wrote:

Just figured it out, just use SScript 7.7.0 (haxelib set SScript 7.7.0)
—
Reply to this email directly, view it on GitHub
https://github.com/ShadowMario/FNF-PsychEngine/issues/14409#issuecomment-2039518206,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AYHGMWTMGG7VIW6CL67QBADY32APRAVCNFSM6AAAAABFYFBUDCVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMZZGUYTQMRQGY
.
You are receiving this because you authored the thread.Message ID:
@.***>

yup


Authorization endpoint is changed to /par

      if let pushedAuthorizationRequestEndpoint = data.pushedAuthorizationRequestEndpoint, let url = URL(string: pushedAuthorizationRequestEndpoint) {         self.authorizationEndpoint = url       } else {         throw ValidationError.error(reason: "In valid authorization endpoint")       }
Hiii, Is this expected in IssuanceAuthorizer to replace the authorizationEndpoint with /par?, I have some issue when trying with my issuer, but this seems abit weird to me.

Thank you for finding this @cindy-chin , it's fixed and merged.


Could use a CITATION.cff

I'm looking for a canonical citation, and I'm probably not the only one. @boothby

Cross-link: https://github.com/dwavesystems/dwave-ocean-sdk/issues/216

I like this suggestion, Andrew.  I'm unsure of what to do for authorship.  The original citation for the heuristic embedder is due to Cai, McReady and Roy (where the implementation is my butchering of Jun Cai's original); the original citation for the busclique algorithm is due to Boothby, King, and Roy (implementation all mine); there is also original work by Stefan Hannie under my loose direction; and we're working towards including work from the Glasgow group!  Add to that, we've had a handful of people working on CI/build and documentation.
I'm open to suggestion here.


Error while trying to tap.

Hi There,
I am getting below error while I tried to use the API on Andorid phone thru Appium on Mac box.
/Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/response.rb:52:in assert_ok': unknown error: 'script' must be a string (Selenium::WebDriver::Error::UnknownError)   (Session info: chrome=41.0.2272.96)   (Driver info: chromedriver=2.14.313457 (3d645c400edf2e2c500566c9aa096063e707c9cf),platform=Mac OS X 10.9.5 x86_64) 	from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/response.rb:15:in initialize'
from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/http/common.rb:59:in new' 	from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/http/common.rb:59:in create_response'
from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/http/default.rb:66:in request' 	from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/http/common.rb:40:in call'
from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/bridge.rb:640:in raw_execute' 	from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/bridge.rb:618:in execute'
from /Library/Ruby/Gems/2.0.0/gems/selenium-webdriver-2.45.0/lib/selenium/webdriver/remote/bridge.rb:339:in executeScript' 	from /Library/Ruby/Gems/2.0.0/gems/touch_action-1.2.1/lib/touch_action/selenium-webdriver.rb:20:in wait_for_page_ready_state'
from /Library/Ruby/Gems/2.0.0/gems/touch_action-1.2.1/lib/touch_action/selenium-webdriver.rb:12:in `touch_action'
Let me know if I am doing something wrong.
Thanks,
Pushkar Pahare

I recently used this gem  (for Android Chrome browser) after reading an appium issue.
https://github.com/appium/appium/issues/3896
Also encountered the 'script' must be a string error.
Here's the error in IRB console:

@element.touch_action :swipe
Selenium::WebDriver::Error::UnknownError: unknown error: 'script' must be a stri
ng
(Session info: chrome=41.0.2272.96)
(Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/response.rb:52:in assert_ok'         from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s elenium/webdriver/remote/response.rb:15:in initialize'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/http/common.rb:59:in new'         from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s elenium/webdriver/remote/http/common.rb:59:in create_response'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/http/default.rb:66:in request'         from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s elenium/webdriver/remote/http/common.rb:40:in call'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/bridge.rb:640:in raw_execute'         from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s elenium/webdriver/remote/bridge.rb:618:in execute'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/bridge.rb:339:in executeScript'         from C:/Ruby193/lib/ruby/gems/1.9.1/gems/touch_action-1.2.1/lib/touch_ac tion/selenium-webdriver.rb:20:in wait_for_page_ready_state'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/touch_action-1.2.1/lib/touch_ac
tion/selenium-webdriver.rb:12:in touch_action'         from (irb):43         from C:/Ruby193/bin/irb:12:in '

Here's the appium console log:

info: --> POST /wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute_async {"script":"(function( touch_action, $, undefined ) {\n\n  touch_action.perform_gesture = function(selenium_finalized_callback) {\n\n    YUI().use('node-event-simulate', function(Y) {\n      \n      var node = Y.one(touch_action.element);\n      node.simulateGesture(touch_action.gesture, touch_action.options);\n        \n    });    \n\n    selenium_finalized_callback();\n  };\n\n\n}( window.touch_action = window.touch_action || {} ));\n\ntouch_action.element = arguments[0];\n\ntouch_action.gesture = "flick";\n\ntouch_action.options =  {"axis":"x","distance":100,"duration":500};\n\ntouch_action.perform_gesture(arguments[arguments.length - 1]);","args":[{"ELEMENT":"0.3137048671487719-1"}]}
info: [debug] Proxying command to <IP_ADDRESS>:9515
info: [debug] Making http request with opts: {"url":"http://<IP_ADDRESS>:9515/wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute_async","method":"POST","json":{"script":"(function( touch_action, $, undefined ) {\n\n  touch_action.perform_gesture = function(selenium_finalized_callback) {\n\n    YUI().use('node-event-simulate', function(Y) {\n      \n      var node = Y.one(touch_action.element);\n      node.simulateGesture(touch_action.gesture, touch_action.options);\n        \n    });    \n\n    selenium_finalized_callback();\n  };\n\n\n}( window.touch_action = window.touch_action || {} ));\n\ntouch_action.element = arguments[0];\n\ntouch_action.gesture = "flick";\n\ntouch_action.options =  {"axis":"x","distance":100,"duration":500};\n\ntouch_action.perform_gesture(arguments[arguments.length - 1]);","args":[{"ELEMENT":"0.3137048671487719-1"}]}}
info: [debug] Proxied response received with status 200: {"sessionId":"94f11abb2bce64a2565f5f1357b5c3dc","status":0,"value":null}
info: <-- POST /wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute_async 200 221.898 ms - 72
info: --> POST /wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute {"script":true,"args":[]}
info: [debug] Proxying command to <IP_ADDRESS>:9515
info: [debug] Making http request with opts: {"url":"http://<IP_ADDRESS>:9515/wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute","method":"POST","json":{"script":true,"args":[]}}
info: [debug] Responding to client with error: {"status":13,"value":{"message":"An unknown server-side error occurred while processing the command.","origValue":"unknown error: 'script' must be a string\n  (Session info: chrome=41.0.2272.96)\n  (Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64)"},"sessionId":"94f11abb2bce64a2565f5f1357b5c3dc"}
info: <-- POST /wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute 500 2.288 ms - 322

I'm traveling right now so I can't take a closer look, but can you try
using Version 1.1.0 or even 1.0.0 and see if the error persists? I might
know why this is happening. Let me know if either worked or not please.
On Tuesday, April 7, 2015, Bernard Lago<EMAIL_ADDRESS>wrote:

I recently used this gem (for Android Chrome browser) after reading an
appium issue.
appium/appium#3896 https://github.com/appium/appium/issues/3896
Also encountered the 'script' must be a string error.
Here's the error in IRB console:
@element.touch_action :swipe
Selenium::WebDriver::Error::UnknownError: unknown error: 'script' must be
a stri
ng
(Session info: chrome=41.0.2272.96)
(Driver info: chromedriver=2.10.267521,platform=Windows NT 6.1 SP1 x86_64)
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/response.rb:52:in assert_ok'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/response.rb:15:ininitialize'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/http/common.rb:59:in new'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/http/common.rb:59:increate_response'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/http/default.rb:66:in request'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/http/common.rb:40:incall'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/bridge.rb:640:in raw_execute'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/bridge.rb:618:inexecute'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/selenium-webdriver-2.45.0/lib/s
elenium/webdriver/remote/bridge.rb:339:in executeScript'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/touch_action-1.2.1/lib/touch_ac
tion/selenium-webdriver.rb:20:inwait_for_page_ready_state'
from C:/Ruby193/lib/ruby/gems/1.9.1/gems/touch_action-1.2.1/lib/touch_ac
tion/selenium-webdriver.rb:12:in touch_action'
from (irb):43
from C:/Ruby193/bin/irb:12:in'
Here's the appium console log:
info: --> POST
/wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute_async
{"script":"(function( touch_action, $, undefined ) {\n\n
touch_action.perform_gesture = function(selenium_finalized_callback) {\n\n
YUI().use('node-event-simulate', function(Y) {\n \n var node =
Y.one(touch_action.element);\n node.simulateGesture(touch_action.gesture,
touch_action.options);\n \n }); \n\n selenium_finalized_callback();\n
};\n\n\n}( window.touch_action = window.touch_action || {}
));\n\ntouch_action.element = arguments[0];\n\ntouch_action.gesture =
"flick";\n\ntouch_action.options =
{"axis":"x","distance":100,"duration":500};\n\ntouch_action.perform_gesture(arguments[arguments.length

1]);","args":[{"ELEMENT":"0.3137048671487719-1"}]}
info: [debug] Proxying command to <IP_ADDRESS>:9515
info: [debug] Making http request with opts: {"url":"
http://<IP_ADDRESS>:9515/wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute_async","method":"POST","json":{"script":"(function(
touch_action, $, undefined ) {\n\n touch_action.perform_gesture =
function(selenium_finalized_callback) {\n\n
YUI().use('node-event-simulate', function(Y) {\n \n var node =
Y.one(touch_action.element);\n node.simulateGesture(touch_action.gesture,
touch_action.options);\n \n }); \n\n selenium_finalized_callback();\n
};\n\n\n}( window.touch_action = window.touch_action || {}
));\n\ntouch_action.element = arguments[0];\n\ntouch_action.gesture =
"flick";\n\ntouch_action.options =
{"axis":"x","distance":100,"duration":500};\n\ntouch_action.perform_gesture(arguments[arguments.length
1]);","args":[{" ELEMENT":"0.3137048671487719-1"}]}}
info: [debug] Proxied response received with status 200:
{"sessionId":"94f11abb2bce64a2565f5f1357b5c3dc","status":0,"value":null}
info: <-- POST
/wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute_async 200 221.898
ms - 72
info: --> POST /wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute
{"script":true,"args":[]}
info: [debug] Proxying command to <IP_ADDRESS>:9515
info: [debug] Making http request with opts: {"url":"
http://<IP_ADDRESS>:9515/wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute","method":"POST","json":{"script":true,"args":[]}
}
info: [debug] Responding to client with error:
{"status":13,"value":{"message":"An unknown server-side error occurred
while processing the command.","origValue":"unknown error: 'script' must be
a string\n (Session info: chrome=41.0.2272.96)\n (Driver info:
chromedriver=2.10.267521,platform=Windows NT 6.1 SP1
x86_64)"},"sessionId":"94f11abb2bce64a2565f5f1357b5c3dc"}
info: <-- POST /wd/hub/session/94f11abb2bce64a2565f5f1357b5c3dc/execute
500 2.288 ms - 322

—
Reply to this email directly or view it on GitHub
https://github.com/Ricardonacif/touch_action/issues/1#issuecomment-90503274
.

It's working with touch_action -v 1.1.0.
The element was tapped and page responded.
IRB

=> #<Selenium::WebDriver::Driver:0x..fe450fe3ebd1fb9e6 browser=:chrome>

element = driver.find_element(:xpath, '//html/body/div/div[3]/ul/li[1]/a')
=> #<Selenium::WebDriver::Element:0x..f8d8add8850fdb776 id="0.402474069269374-10">
element.touch_action(:tap)
=> nil

APPIUM LOG

info: --> POST /wd/hub/session/09fdfb814c09734b5e90934d39be81d4/element {"using":"xpath","value":"//html/body/div/div[3]/ul/li[1]/a"}
info: [debug] Proxying command to <IP_ADDRESS>:9515
info: [debug] Making http request with opts: {"url":"http://<IP_ADDRESS>:9515/wd/hub/session/09fdfb814c09734b5e90934d39be81d4/element","method":"POST","json":{"using":"xpath","value":"//html/body/div/div[3]/ul/li[1]/a"}}
info: [debug] Proxied response received with status 200: {"sessionId":"09fdfb814c09734b5e90934d39be81d4","status":0,"value":{"ELEMENT":"0.402474069269374-10"}}
info: <-- POST /wd/hub/session/09fdfb814c09734b5e90934d39be81d4/element 200 49.066 ms - 102
info: --> POST /wd/hub/session/09fdfb814c09734b5e90934d39be81d4/execute {"script":"(function( touch_action, $, undefined ) {\n\n  // private property\n  var execute_gesture = function() {\n    YUI().use('node-event-simulate', function(Y) {\n      \n      var node = Y.one(touch_action.element);\n      node.simulateGesture(touch_action.gesture, touch_action.options);\n        \n    });\n  };\n\n  // private method\n  function loadYui() { \n\n    var head = document.getElementsByTagName('head')[0];\n    var script = document.createElement('script');\n    script.type = 'text/javascript';\n    script.src = "//yui.yahooapis.com/3.18.1/build/yui/yui-min.js";\n\n    script.onreadystatechange = execute_gesture;\n    script.onload = execute_gesture;\n\n    head.appendChild(script);\n \n  };\n  // public method\n  touch_action.perform = function() {\n    \n    if (typeof YUI == 'undefined') {\n      loadYui();\n    } else {\n      execute_gesture();\n    };\n\n  };\n\n\n}( window.touch_action = window.touch_action || {} ));\n\ntouch_action.element = arguments[0];\n
info: [debug] Proxying command to <IP_ADDRESS>:9515
info: [debug] Making http request with opts: {"url":"http://<IP_ADDRESS>:9515/wd/hub/session/09fdfb814c09734b5e90934d39be81d4/execute","method":"POST","json":{"script":"(function( touch_action, $, undefined ) {\n\n  // private property\n  var execute_gesture = function() {\n    YUI().use('node-event-simulate', function(Y) {\n      \n      var node = Y.one(touch_action.element);\n      node.simulateGesture(touch_action.gesture, touch_action.options);\n        \n    });\n  };\n\n  // private method\n  function loadYui() { \n\n    var head = document.getElementsByTagName('head')[0];\n    var script = document.createElement('script');\n    script.type = 'text/javascript';\n    script.src = "//yui.yahooapis.com/3.18.1/build/yui/yui-min.js";\n\n    script.onreadystatechange = execute_gesture;\n    script.onload = execute_gesture;\n\n    head.appendChild(script);\n \n  };\n  // public method\n  touch_action.perform = function() {\n    \n    if (typeof YUI == 'undefined') {\n      loadYui();\n    } else {\n      execute_gesture();\n    };\n\n  };\n\n\n}( window.touch_action = window.touch_action || {} ));\n\ntouch_action.element = arguments[0];\n\ntouch_action.gesture = "tap";\n\ntouch_action.options =  {};\n\ntouch_action.perform();","args":[{"ELEMENT":"0.402474069269374-10"}]}}
info: [debug] Proxied response received with status 200: {"sessionId":"09fdfb814c09734b5e90934d39be81d4","status":0,"value":null}
info: <-- POST /wd/hub/session/09fdfb814c09734b5e90934d39be81d4/execute 200 93.464 ms - 72

Tried other gestures as well, doubletap worked.
I'm aware that the filed issue relates to 'TAP', but other gestures seems to be not working.
i.e.
swipe down using element.touch_action(:flick, axis: 'y', distance: 100, duration: 60)
did not do anything against the mobile web page. (http://coenraets.org/apps/angular-directory/#/employees)

element = driver.find_element(:xpath, '//html/body/div/div[3]/ul/li[1]/a')
=> #<Selenium::WebDriver::Element:0x..f9effe7683ee7a4aa id="0.402474069269374-12">
element.touch_action(:flick, axis: 'y', distance: 500, duration: 60)
=> nil
Am I missing something in this :flick action?

I was able to go to the bottom of the page using:
driver.execute_script("arguments[0].scrollIntoView(true);", element_at_the_bottom_of_the_page)

The flick action won't work as a mobile scroller. It will only work for swiping elements that are ready listening to touch events. Like this one: http://hammerjs.github.io/

Makes sense. Thanks for explaining that.
Tried the available touch_action gestures against this element on that page.
element = driver.find_element(:id, 'hitarea')
They all worked with -v 1.1.0 on Android's Chrome browser.

Awesome, I think I'll rollback the to that version. I did somethings on the code in a hurry to accomplish one other thing, and looks like I messed up.

Rolledback the code (use 1.3.0). @PushkarPahare can you update the gem now to 1.3.0 and see if it is working?

@PushkarPahare did it work?


You can't throw over objects such as tables and such

What it says on the tin, the object gets stopped by the table as if it were a solid wall.

Fixed by #2141


db.from get all fields

is there a way to get the whole thing when doing a
db.from('posts').getFullList({..}) I don't want to have to specify all the fields I want, I want them all

It should be full if you remove select. There is an issue with getOne not showing the correct types in that case, that will need a fix.


Shares of even gcm powers can be computed locally.

Let H be ghash's encrypted zero.
I noticed that if two parties have XOR shares of H^2 =  H_a xor H_b, then
H_a*H_a xor H_b*H_b = H^4
H_a*H_a*H_a*H_a xor H_b*H_b*H_b*H_b = H^8 ... etc for powers 2*2, 2*4, 2*8...
The same can be done if parties start out with shares of H^3, H^5 etc
At the end both parties will have shares of locally computed even powers.
Having to compute only odd powers in MPC, gives a nice 50% reduction.

Let me think about it and double check.
What I am not sure is why XOR can work together with multiplying here, as the GHASH is computed on GF(2^{128}) with a polynomial x^{128}+x^{7}+x^{2}+x+1}x^{128}+x^{7}+x^{2}+x+1. Multiplying is complicated.
Basically, if H^2 = H_a XOR H_b, we can say indeed H^2 = H_a + H_b in GF(2^{128})
So, H^4 = H_a^2 + H_b^2 + 2H_aH_b, which has a cross term.
So, my first impression is that H^4 cannot be simply computed from the "squared" XOR shares of H^2. Let me see if we can find some examples.

Ah you are right, 2H_aH_b = 0 as always.

So this clearly is good enough for the semi-honest case. (Are you using it in the semi-honest case?)
I will see whether it has an influence on the malicious case.

My use case is semi-honest.
I just stumbled upon this trick, so I'm interested to know why it works. Thanks for your explanation. I tried to run H_a^2 + H_b^2 + 2H_aH_b,  with real numbers, however
2H_aH_b does not produce 0 for me.
I'm doing block multiplication of 2 by H_a and then block-multiply the result by H_b.
Does the result check out for you with real numbers?

Let me play with the Sage scripts a little bit to confirm it. But often in GF(2^{128}), "XOR" is the same as "+", so
2H_aH_b = H_aH_b + H_aH_b = H_aH_b XOR H_aH_b = 0
Note that GF(2^{128}) is not module by 2^{128}. Rather, it is an extension field of prime 2.

Ah, that makes perfect sense when written out like that.
So, all even power can be computed for free then. I'll fix my initial post.

This is a very novel observation. Let me calculate how many {H^?} need to be precomputed, and then how many {H^? X^?} are needed...

Just wanted to make a note here that the technique we discussed here was implemented in the latest version of TLSNotary and described here https://tlsnotary.org/how_it_works#section4

Also, to correct my previous statement - the amount of block multiplications needed in 2PC setting to compute 1026 powers of H with the technique and optimizations described in the link above is ~100. (I haven't run the numbers for the MPS setting yet). But then again, those block multiplication can be done with OT which is fairly cheap.

Sorry for the late reply. I guess when I come back to this project one day, I may need to use a lot of your code.
I want to credit you. Let me know what would be the best way: themighty1? Dan from TlsNotary? My email address is<EMAIL_ADDRESS>


Example docs formatting

Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[ ] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure to update the docs?
[ ] Did you write any new necessary tests?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

What does this PR do?
This is an attempt to update the docs for the examples and make them a bit more complete and cleaner looking.

typos, punctuation, grammar, capitalization
added information where I felt it could need some

Feel free to add or delete my changes!
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃

Hello @awaelchli! Thanks for opening this PR.

In the file pl_examples/domain_templates/reinforce_learn_Qnet.py:

Line 4:111: E501 line too long (149 > 110 characters)

Do see the Hitchhiker's guide to code style


fix(toArray): do not mutate array per subscription

Description:
This is cherry pick changes from master, while v6 alpha fixed it latest v5 doesn't have fixes.
Related issue (if exists):

closes https://github.com/ReactiveX/rxjs/issues/3141

Coverage increased (+0.0007%) to 97.4% when pulling 72ded7b4edbe7fe1cec7090b3c527ec105bf9657 on kwonoj:cherry-pick-toarray-fix into c7e33e43224f8c2292335ecd9d933c3fbd5f9d74 on ReactiveX:stable.


KAFKA-9875: Make integration tests more resilient

The ticket is for a flaky test that failed to clean up topics after the test, which
isn't strictly necessary for test success.

alter the "clean up after test" method to never throw an exception
(after verifying it's always the last invocation inside a finally block,
so it won't break any test semantics)
consolidated the naming of all integration tests' app ids, topics, etc., by introducing
a new test utility to generate safe, unique, descriptive names.

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

Thanks for the review, @guozhangwang . I've addressed (or responded to) your comments.

LGTM! Please feel free to merge after rebasing.

Thanks, @guozhangwang !


chore: promote origins-cms to version 0.0.23

chore: promote origins-cms to version 0.0.23
this commit will trigger a pipeline to generate the actual kubernetes resources to perform the promotion which will create a second commit on this Pull Request before it can merge

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign dnmahendra
You can assign the PR to them by writing /assign @dnmahendra in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Add unused args and vars to CI with flake8

74 unused vars and 14 unused variables. One can prepend _ to a var to make it shut up, i.e. in Lightning training_step :-)
Documentation allows for other flags also: https://github.com/nhoad/flake8-unused-arguments.
One can run flake8 locally using:
pip install -e .
flake8 yucca --count --select=E9,F63,F7,F82,U100,F841 --show-source --statistics

CC: @Sllambias

Crazy


Matching a phrase instead of a single term

Hello,
I have a "message" analyzed text field, and I understand that the text is "tokenized" for indexing.
ElastAlert does a great job when matching single terms directly produced by the tokenization.
But for a new rule I'd like to match an exact sequence of words, a phrase.
This would be the equivalent of:
{
    "query": {
        "match_phrase": {
            "message": "My sequence of many words"
        }
    }
}

Can I do that with ElastAlert ?
If yes how ?
Thanks in advance for any pointer.

Maybe that:
filter:
  - query:
        query_string:
            query: "\"My sequence of many words\""

But I wonder if there is a "cleaner" and/or simpler way of doing this.
Thanks.

@Pragmateek this is working perfectly fine if you just want to match the raw string, ignoring any special meaning to special characters like whitespace, *, etc.

@abhishekjiitr Nice if this use-case is handled now. :)
So you can indeed close this one.


With first device or emulator, stop event is fired before mock server…

… finished to process request from client. To avoid threading issue, give 1sec to wait for mock server finishes to process all requests.

Error could be in MockServer. I will close this PR and will investigate MockServer further.


Multiple double quotes escaping (csv export)

Hello!
We've been using ag-grid in a couple of our projects and as I was upgrading to the latest version I found a bug in the export-to-csv functionality:
when a string value contains multiple double quotes, only the first instance is escaped

a string with "multiple" double "quotes"  ->  a string with ""multiple" double "quotes"
and this breaks the columns in the generated csv file.

I'll make a pull request, it's a minor fix but I thought it's worth contributing anyway.
And thank you! Your grid is awesome, it's great to see this project growing.

thanks, i'll take a close look when i get a few minutes to spare.


ResourceWarning: unclosed <ssl.SSLSocket

I just purchased a subscription but am getting errors.
Can you also confirm if this is the right way to filter for specific columns?
Code:
import nasdaqdatalink

sharadarKeyFile = './keys/nasdaqdatalinkapikey'

nasdaqdatalink.read_key(filename = sharadarKeyFile)

SHARADAR_TABLE_NAME = 'SHARADAR/SEP'

liveSEP = nasdaqdatalink.get_table(
        SHARADAR_TABLE_NAME,
        date = {'gte': '2022-08-01'},
        paginate = True,
        qopts = {
            'columns': ','.join(['ticker', 'date', 'open', 'close', 'closeadj', 'closeunadj'])
        }
    )

Throws the following exceptions:
Exception ignored in: <ssl.SSLSocket fd=80, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59345), raddr=('<IP_ADDRESS>', 443)>
Traceback (most recent call last):
  File "/Users/tommedema/opt/anaconda3/lib/python3.9/site-packages/nasdaqdatalink/model/datatable.py", line 31, in data
    return Data.page(self, **options)
ResourceWarning: unclosed <ssl.SSLSocket fd=80, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59345), raddr=('<IP_ADDRESS>', 443)>
Exception ignored in: <ssl.SSLSocket fd=79, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59237), raddr=('<IP_ADDRESS>', 443)>
Traceback (most recent call last):
  File "/Users/tommedema/opt/anaconda3/lib/python3.9/re.py", line 291, in _compile
    if isinstance(flags, RegexFlag):
ResourceWarning: unclosed <ssl.SSLSocket fd=79, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59237), raddr=('<IP_ADDRESS>', 443)>
Exception ignored in: <ssl.SSLSocket fd=78, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59329), raddr=('<IP_ADDRESS>', 443)>
Traceback (most recent call last):
  File "/Users/tommedema/opt/anaconda3/lib/python3.9/re.py", line 291, in _compile
    if isinstance(flags, RegexFlag):
ResourceWarning: unclosed <ssl.SSLSocket fd=78, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59329), raddr=('<IP_ADDRESS>', 443)>
Exception ignored in: <ssl.SSLSocket fd=80, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59347), raddr=('<IP_ADDRESS>', 443)>
Traceback (most recent call last):
  File "/Users/tommedema/opt/anaconda3/lib/python3.9/site-packages/nasdaqdatalink/model/datatable.py", line 31, in data
    return Data.page(self, **options)
ResourceWarning: unclosed <ssl.SSLSocket fd=80, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('<IP_ADDRESS>', 59347), raddr=('<IP_ADDRESS>', 443)>

Hi @tommedema
The SSL issue you're experiencing is a strange one.  If you're still experiencing issues, please email<EMAIL_ADDRESS> We can further investigate by asking more details so we can check our logs.  Our customer support team will be able to ask you more details you shouldn't share in this thread.
As for export, I'm assuming you're looking to download the entire table history. You can use the export_table feature.
With respect to your initial question regarding columns filtering, yes you can use qpots keyword argument.  It's a bit clumsy at the moment, but you can fall back on some of our coding snippets.
A more complete example would be something like:
import nasdaqdatalink as ndl

table = ndl.get_table('ZACKS/FC', ticker=['AAPL','MSFT'])
print(table)

table = ndl.get_table('ZACKS/FC', ticker=['AAPL','MSFT'], qopts={'columns':['ticker', 'per_end_date']})
print(table)

Thanks I'll email<EMAIL_ADDRESS>re the SSL issue


Session cookie not preserved after redirect + post_data not erased in session

Hi Samsonasik,
We already exchanged some messages about it on your blog some months ago.
Because of the redirect 302, it seems that browser lost the session cookie and recreate a new session (i read some posts on internet about that behavior). It is the reason why i have 2 session all the time created in my server for one form post (login) when i use PRG.
My problem is that my credentials (username / password) still in the initial session in the post_data variable and are not erased before redirecting. For my part is it a potential security risk to have a raw password in session (a orphan session).
$session->unset('post_data') seems to do not erase the content, i have to add unset($_SESSION['post_data']).
Can you please check it? If you also have that behavior.
In your PrgMiddleware:
if ($session->has('post_data')) {
    $post = $session->get('post_data');

    $session->unset('post_data'); <-- SEEMS TO DO NOT ERASE THE CONTENT
    unset($_SESSION['post_data']);  <-- ADDED THIS TO ERASE THE CONTENT

    $request = $request->withMethod('POST');
    $request = $request->withParsedBody($post);
}

Thanks!
You already upgrade to Mezzio but is not a problem ;)

@mbourquin I just re-check and it seems the "old" session file not actually removed, while it is no longer used. Hopefully I can check if there will be solution for it instead of manually...

@mbourquin I just updated session components packages, then check session name after update to Mezzio namespace, and got the session name not yet updated in LoginPageHandler class at https://github.com/samsonasik/expressive3-example-auth-with-prg/commit/83a649fe8800b68de09a2266f2bd545b8036cb6a , I updated it and it seems fixes the issue.
If you use clone, could you re-pull and retry composer install ? :
git pull origin master
composer install

and verify if that fixes the issue ? Thank you.

@samsonasik Thanks but i'm still using Expressive, i will change to Mezzio next month after official launch ;) I just checked your new commits but i'm already use the last session-* authentication, ...   So i'm still must use unset($_SESSION['post_data']) in the middleware. But it's works good like workaround.
I will try to test your version in the next days..

@mbourquin I just re-checked again, and indeed, you're correct, the unset($_SESSION['post_data']); is the workaround solution for now. I'm thinking if there can be a specific Response to apply the session unset.

Hi @@mbourquin , it fixed now. The solution is place the App\Middleware\PrgMiddleware::class registration in the end of login route, and then, place as well in the begin of target route, eg: home route. Please check this change https://github.com/samsonasik/expressive3-example-auth-with-prg/commit/ccb0decdb24088eb011423f394d24d1b90554d73
Thank you for the bug report.

@samsonasik You're welcome! and thanks for the solution! I will update my code tomorrow.


feat: Show background image in header

Fixes #358

Switch to Picasso 2.6.0-SNAPSHOT
Enable Picasso logging
Fix first time image load issue
Change bg color of nav header
Change main activity to binding
Add binding adapter for image loading
Add cancel tag for picasso

@mejariamol Please review

@mejariamol Please review. This was updated hours ago


Merge assemblies with ILMerge

It would be preferable to have the 3 major artifacts (the console application, the MSBuild task and the NAnt task) released as single assembles.  We would need to use ILMerge to do this.  Would also want to ensure to include the open source licenses of the merged assemblies.

The assemblies can be merged as part of the build process now as of the last commit.  Have to do some work on what assemblies we should merge and how to incorporate them into the deploy process


Organized debug overlay server-side and client-side stats, added compass nav (debug).

Contains
Brief description of what the PR does like "Fixes #12345"
How to test
Brief description of how to test / confirm this PR before merging
Outstanding before merging
If anything. You can use neat checkboxes! Feel free to delete if not needed

[ ] Need to consider use case x
[ ] Still have to adjust the wiki doc
[ ] Will need translation work

Can one of the admins please verify this patch?


[AutoPR eventgrid/data-plane]  update-event-schema-for-azure-storage-event-grid-notification-for-cr…

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/7509

(message created by the CI based on PR content)


Generate an object with complex constraints

I'm trying to figure out the best way to make AutoFixture generate an object that would have non trivial constraints in the constructor. For instance, let's say I want to use a PrimeNumber data structure that would take an int and accept only prime numbers.
What would be the best approach to generate an instance of this kind of structure in AutoFixture ? I mean, I will obviously write a customization, but what would you put in there ?

Would you generate random ints and loop until one of them is a prime (or execute a prime generating algorithm, of course) ? That could be acceptable for this kind of constraint, but if the constraint was more tricky to comply to, that would fast become costly.
Would you provide a finite list of some acceptable values ?

Moreover, let's say now that I'm trying to create an instance of something that takes several arguments that can theorically be random individually, but that will do some validation in between them (for instance argA can be in this range of values only if argB is true, and argC must comply to different validation rules depending on argA value, or argC.X property has to match with argA.X property, some stuff like that).
What would you do in this case ?

One customization to create a valid instance of each type (without bothering on any external validation), and another that would try to create the big complex object, looping until a valid instance is created ?
Again, provide a list of finite acceptable values, which can be a sever limitation of the amplitude of possibilities
Provide a special customization that would create only instances of arguments that would fit the validation of the complex object

And finally (I could have created several issues, but I felt like all those subjects are different aspect of the same problem), having to create and apply this kind of customizations each time we add a new class, and having to maintain those customizations whenever the validation rules change seem like a lot of work, do you apply some techniques to mitigate this ?
Thanks a lot, sorry for the long and I hope not too messy post.

Sorry for the radio silence. We are alive and I'll reply soon - am extremely busy on my primary work these days. Also working on NSubstitute v4 release, so time is very limited resource :pensive: The question is hard, so want to think about all the possible ways before posting the answer.
Thanks for the patience, keep tunes :wink:

Hi,
Any news on that ?
No pressure (I know the drill 😄 , plus it's not really blocking, I'd just really like some educated advice), it's just to know if you have some visibility.
Thanks a lot!

Good day! Finally I allocated a bit of type to answer - sorry for the hugely belated reply 😊
First of all pay attention that AutoFixture's core is pretty simple and we don't have built-in support for the complex trees with constrains. In short, the creation strategy is like following:

Look for a public constructor or a static factory method (static method returning an instance of the current type).
Resolve the constructor arguments and activate instance.
Fill the writable public properties and fields with generated values.

With the current approach, as you previously spotted, you cannot somehow control dependency constraints.
We have some customization points to specify how to build the particular types, but they are relatively simple and don't support those complex rules.

What would be the best approach to generate an instance of this kind of structure in AutoFixture ? I mean, I will obviously write a customization, but what would you put in there ?

Would you generate random ints and loop until one of them is a prime (or execute a prime generating algorithm, of course) ? That could be acceptable for this kind of constraint, but if the constraint was more tricky to comply to, that would fast become costly.

Would you provide a finite list of some acceptable values ?

Well, unfortunately I don't see a silver bullet here and approach depends on situation. If you don't rely on value to be too random, or single SUT consumes only 1-2 prime numbers, then it might be fine to hardcode prime numbers and pick from them (we have ElementsBulider<> built-in helper for those cases). On other hand, if you need a large list of prime numbers and you operate with long prime number sequences, then probably it's better to code an algorithm to generate them dynamically.

Moreover, let's say now that I'm trying to create an instance of something that takes several arguments that can theorically be random individually, but that will do some validation in between them (for instance argA can be in this range of values only if argB is true, and argC must comply to different validation rules depending on argA value, or argC.X property has to match with argA.X property, some stuff like that).
What would you do in this case ?

Really a good question and unfortunately AutoFixture doesn't allow to solve it in a nice way out of the box. Usually I'm trying to isolate customizations for each type, so customization for one type controls creation for a single type only. But in my cases types are independent and obviously it will not work well in your case. Also AutoFixture doesn't provide context out of the box, so when you are writing a customization for a particular type, you cannot clearly understand the context you are creating an object (internally called specimen) in.
On top of my head, I'd say that I'd usually recommend the following strategy:

Try creating customization for each type in a way it controls creation of single object type only.
If you need to create dependencies with particular constrains, it's better to activate those dependencies in the customization as well. If your dependency is mutable, you can ask AutoFixture to create the dependency for you and later configure it in a way it becomes compatible.

This way you wouldn't contradict the internal architecture too much and it will be clear how it works. Of course, potentially this way is very verbose.
If cases with complex constrains are not that common, the existing capabilities might be enough for you. But if your domain model is really full of such cases, frankly AutoFixture might be not the best tool for you. Probably, there are better tools on the market which allows to solve such problems in a most elegant way. Of course, it worth mentioning that AutoFixture is very flexible and you can override almost everything, so you can always create your own DSL on top of AutoFixture core... But you should evaluate which way is cheaper to you 😉
Let's also ask @ploeh for his thoughts. Usually Mark's answers are deep and he tries to find the root cause first, rather than solve the consequences 😅
If you have more questions - please ask! I'll be always welcome to answer them.
P.S. FWIW, I decided to provide you with a sample, where I tried to play with AutoFixture and solve a similar problem (I tried to keep it simple and it might not entirety work in your case):

Click to see the source code
using System;
using AutoFixture;
using AutoFixture.Xunit2;
using Xunit;

namespace AutoFixturePlayground
{
    public static class Util
    {
        public static bool IsPrime(int number)
        {
            // Copied from https://stackoverflow.com/a/15743238/2009373

            if (number <= 1) return false;
            if (number == 2) return true;
            if (number % 2 == 0) return false;

            var boundary = (int) Math.Floor(Math.Sqrt(number));

            for (int i = 3; i <= boundary; i += 2)
            {
                if (number % i == 0) return false;
            }

            return true;
        }
    }

    public class DepA
    {
        public int Value { get; set; }
    }

    public class DepB
    {
        public int PrimeNumber { get; }
        public int AnyOtherValue { get; }

        public DepB(int primeNumber, int anyOtherValue)
        {
            if (!Util.IsPrime(primeNumber))
                throw new ArgumentOutOfRangeException(nameof(primeNumber), primeNumber, "Number is not prime.");

            PrimeNumber = primeNumber;
            AnyOtherValue = anyOtherValue;
        }
    }

    public class DepC
    {
        public DepA DepA { get; }
        public DepB DepB { get; }

        public DepC(DepA depA, DepB depB)
        {
            if (depB.PrimeNumber < depA.Value)
                throw new ArgumentException("Second should be larger than first.");

            DepA = depA;
            DepB = depB;
        }

        public int GetPrimeNumber() => DepB.PrimeNumber;
    }

    public class Issue1067
    {
        [Theory, CustomAutoData]
        public void ShouldReturnPrimeNumberFromDepB(DepC sut)
        {
            var result = sut.GetPrimeNumber();

            Assert.Equal(sut.DepB.PrimeNumber, result);
        }
    }

    public class CustomAutoData : AutoDataAttribute
    {
        public CustomAutoData() : base(() =>
        {
            var fixture = new Fixture();

            // Add prime numbers generator, returning numbers from the predefined list
            fixture.Customizations.Add(new ElementsBuilder<PrimeNumber>(2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41));

            // Customize DepB to pass prime numbers only to ctor
            fixture.Customize<DepB>(c => c.FromFactory((PrimeNumber pn, int anyNumber) => new DepB(pn, anyNumber)));

            // Customize DepC, so that depA.Value is always less than depB.PrimeNumber
            fixture.Customize<DepC>(c => c.FromFactory((DepA depA, DepB depB, byte diff) =>
            {
                depA.Value = depB.PrimeNumber - diff;
                return new DepC(depA, depB);
            }));

            return fixture;
        })
        {
        }
    }

    /// <summary>
    /// A helper type to represent a prime number, so that you can resolve prime numbers
    /// </summary>
    public readonly struct PrimeNumber
    {
        public int Value { get; }

        public PrimeNumber(int value)
        {
            Value = value;
        }

        public static implicit operator int(PrimeNumber prime) => prime.Value;
        public static implicit operator PrimeNumber(int value) => new PrimeNumber(value);
    }
}

Hi @zvirja
Wow, thanks for the detailed answer, it's really interesting. I'll have to do some tests and estimate what it's worth doing or not, but all in all this is great.
I don't think I have so many dependencies to handle, so your approach might be a good way to go. Of course, if @ploeh happens to have something more to add, I would be honored 👌
Thanks again, keep up the good work!

My experience with both AutoFixture and property-based testing is that there's essentially two ways to address issues like these:

Filtering
Algorithmic creation

(As I'm writing, my intuition suggests that these could be catamorphisms and anamorphisms,  respectively, but I'll have to think about this some more, so this aside is mostly a note to myself.)
If most randomly generated values would fit whatever constraints one must fit within, then using an existing generator, but throwing away the occasional unsuitable value, could be the easiest way to address the issue.
If, on the other hand, a filter would mean throwing away most random data, you'd instead have to come up with an algorithm that, perhaps based on random seed values, will generate values that fit the constraints in question.
Some years ago, I gave a talk showing some simple examples of both approaches in the context of FsCheck. This presentation is actually an evolution of a talk that took the same approach, but just with AutoFixture instead. Unfortunately, no recording exists of that talk.
One could address the prime-number requirement in both ways.
The filter approach would be to generate unconstrained numbers, and then throw numbers away until you get one that is, indeed, a prime.
The algorithmic approach would be to use an algorithm like a prime sieve to generate a prime number. This isn't random, though, so one might want to figure out how to randomise it.
The overall question of how to deal with constrained values in AutoFixture came up almost immediately once other people started looking at the library, and I wrote an article back then that I still refer to: http://blog.ploeh.dk/2009/05/01/DealingWithConstrainedInput
Regarding the question of multiple values that relate to each other, I don't wish to give any general guidance. Those sorts of questions are often XY problems. In many cases, once I understand the specifics, an alternative design could solve problems with not only AutoFixture, but also the production code base itself.
Even in the presence of XY problems, though, there's still going to be a situations where this may be a legitimate concern, but I'd rather deal with those on case-by-case basis, as, in my experience, they're rare.
So if you have a specific example of this, I may be able to help, but I don't think I can meaningfully answer the general question.

@ploeh Thanks a lot for this answer, that confirms the approaches I was considering (and you made me curious about cata- and anamorphisms 😃).
I totally agree that interdependent values are mostly an XY problem (at least in my case), the thing is that when working on legacy (untested 😢) code, dealing with those values was a good start to write some tests anyway, until we get the time to refactor this properly.
Anyway, both your answers address the problem quite nicely, I guess I'm good to go from there.
Thanks!

BTW, I forgot to mention that I only meant my answer as an addition to @zvirja's. It's already a good answer there 👍

I didn't take it any other way 😄


Fixes/missing timestamp

Hey,
This PR adds support for two timestamps:

Published on
Updated on

It depends on https://github.com/ombulabs/ombulabs.com/pull/203 and it solves this bug: https://www.pivotaltracker.com/story/show/166217428
Please check it out.
Thanks!

I'm deploying these 2 branches to staging

https://ombulabs-staging.herokuapp.com/blog/values/our-values.html

This should be merged before the other PR, and the other one should be updated to point to the right commit hash of the blog repo


Error when installing in Linux Debian (Hash Sum mismatch)

Here is the error.
I am just following the installation steps described in the documentation:
http://www.scala-sbt.org/0.13/docs/Installing-sbt-on-Linux.html
Step 11 : RUN echo "deb https://dl.bintray.com/sbt/debian /" | tee -a /etc/apt/sources.list.d/sbt.list
 ---> Running in 468444bb7bb1
deb https://dl.bintray.com/sbt/debian /
 ---> 0acb69416680
Removing intermediate container 468444bb7bb1
Step 12 : RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 642AC823
 ---> Running in b61de1e6bb6f
Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.m5kvyXHiBl --no-auto-check-trustdb --trust-model always --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg --keyring /etc/apt/trusted.gpg.
d/debian-archive-jessie-stable.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-squeeze-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-squeeze-stable.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv 642AC823
gpg: requesting key 642AC823 from hkp server keyserver.ubuntu.com
gpg: key 642AC823: public key "sbt build tool<EMAIL_ADDRESS>imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
 ---> 97d512877821
Removing intermediate container b61de1e6bb6f
Step 13 : RUN apt-get update
 ---> Running in fb2092a81249
Get:1 http://security.debian.org jessie/updates InRelease [63.1 kB]
Get:2 https://dl.bintray.com  InRelease
Ign https://dl.bintray.com  InRelease
Get:3 http://security.debian.org jessie/updates/main amd64 Packages [273 kB]
Get:4 https://dl.bintray.com  Release.gpg [821 B]
Get:5 https://dl.bintray.com  Release [523 B]
Get:6 https://dl.bintray.com  Packages [837 B]
Ign http://httpredir.debian.org jessie InRelease
Get:7 http://httpredir.debian.org jessie-updates InRelease [142 kB]
Get:8 http://httpredir.debian.org jessie-backports InRelease [166 kB]
Get:9 http://httpredir.debian.org jessie Release.gpg [2373 B]
Get:10 http://httpredir.debian.org jessie-updates/main amd64 Packages [5019 B]
Get:11 http://httpredir.debian.org jessie-backports/main amd64 Packages [574 kB]
Get:12 http://httpredir.debian.org jessie Release [148 kB]
Get:13 http://httpredir.debian.org jessie/main amd64 Packages [9034 kB]
Fetched 10.4 MB in 31s (335 kB/s)
W: Failed to fetch http://httpredir.debian.org/debian/dists/jessie-backports/main/binary-amd64/Packages  Hash Sum mismatch

E: Some index files failed to download. They have been ignored, or old ones used instead.
The command '/bin/sh -c apt-get update' returned a non-zero code: 100

W: Failed to fetch http://httpredir.debian.org/debian/dists/jessie-backports/main/binary-amd64/Packages  Hash Sum mismatch

I don't know much about Debian, but isn't this problem on their repo's end?

a similar issue is reported at http://stackoverflow.com/questions/40813462/sbt-on-ubuntu-16-04-installation-failure and the solution that switches java9 to java8 works for me. @casertap could you check ?

I am closing this due to inactivity, but if this is still relevant let us know with more details (reproduction steps etc).


ExoPlayer dependency now pulled from jCenter.

Removes need to have ExoPlayer JARs in repo, keeps better track of version of ExoPlayer used.

LGTM


Create requirements.txt

Issue
Currently, requirements are written in setup.py.
Task
Write a stub requirements.txt, to simplify development

This is done.
Good job.


ci: Add jest config with unit tests for utils/math.ts; Add gh-actions workflow test for running the tests.

Description

Add jest config and npm script test to run tests. The config:

Finds test under <projectRoot>/test.
Enforces line & function coverage thresholds at directory levels.
Outputs GitHub Annotations for easier navigation of issues in GitHub webUI.

Add tests for src/utils/math.ts.
Add GitHub Action Workflow test for running the tests and reporting the results.

Validation performed

The test workflow was automatically triggered on PR pushes. Below results matched expectation:

Successful: when all tests passed and coverage numbers was above enforced threshold:
https://github.com/y-scope/yscope-log-viewer/actions/runs/11759387295
Failed: when coverage number failed below expected threshold for src/utils/math.ts:
https://github.com/y-scope/yscope-log-viewer/actions/runs/11759373956
Failed: when some test case failed, the workflow failed and the failed test is annotated inline: https://github.com/y-scope/yscope-log-viewer/pull/115/files#annotation_28437621688

Summary by CodeRabbit

New Features

Introduced a new GitHub Actions workflow for automated testing.
Added a new Jest configuration for enhanced testing capabilities.
Updated package.json to include a new test script and additional dependencies.

Bug Fixes

Improved testing coverage for clamp and getChunkNum functions.

Chores

Expanded TypeScript configuration to include additional paths for compilation.

To see the specific tasks where the Asana app for GitHub is being used, see below:

https://app.asana.com/0/0/1208740649379571

@coderabbitai review

hey @kirkrodrigues , do you want to check if you agree with the coverage numbers before we merge this PR?


Benchmark fix

Reward function was incorrect for grid
Bottleneck was not in the congested regime.

Pull Request Test Coverage Report for Build 5833

9 of 10 (90.0%)  changed or added relevant lines in 6 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage decreased (-0.01%) to 89.532%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

flow/envs/traffic_light_grid.py
4
5
80.0%

Files with Coverage Reduction
New Missed Lines
%

flow/envs/traffic_light_grid.py
1
90.22%

Totals

Change from base Build 5826:
-0.01%

Covered Lines:
9434

Relevant Lines:
10537

💛  - Coveralls


The owner should have filtered DDL events before sending them to Sink

What did you do?
Executes a DDL on a database that is filtered out for a changefeed.
What did you expect to see?
The implementer of Sink should not have been notified of this DDL event.
What did you see instead?
The Sink was notified of this event. This seems to be a sub-optimal design.
In current implementations, the sink needs to filter out DDL events by itself.
https://github.com/pingcap/ticdc/blob/c91af794e65f54222b46094b287042cdadaf3bcb/cdc/sink/mysql.go#L280
This design is not friendly for third party contributors.
Versions of the cluster
Introduced since https://github.com/pingcap/ticdc/pull/325

Close it since it is stale. It has been fix in > v6.1.0.


Add Favourite events section and option to favourite it in Event card

Working on it :+1:

as per the discussion with mario this feature should be first implemented on the server side

Oh of course ! so should I close the issue or are we going to make the section in the near future? after implementing in the server side

close this for now, open this issue on server side

Sure

However this can be implemented locally with a database. Do we need server side favoriting of user events @mariobehling?

because we should not lose favourites when logging in to another device with same account

Closing this as it is done


Free users cannot access larger models

Following issue #1577 and PR #1662
Free users now don't have access to large models (tested with free & upgraded versions, on model selection and agent list)
Remaining work:

Assistant list toggle => fix the behaviour
Solution for the "contact us" (cf @Duncid comment about design in the issue)

If ok, pending the cool designed solution, I can do like we do for managed datasources =>
                  if (agent.status === "require_upgrade")
                    alert(
                      "Advanced assistants are only available on our paid plans. Contact us at<EMAIL_ADDRESS>to get access."
                    );

Alert as a first intention is fine. "Advanced assistants" is not clear enought. Where is that alert going to be?

Ok; Alert when you click on the toggle (via onclick handler, a bit ugly but since temp).
Hesistated between Advanced Assistants & Assistants with larger models, thought the 2nd one more precise but the 1st one more user friendly
"Assistants with larger models" are not.... => ok for you?

"GPT4 and Claude 2 are only available on our paid plans. Contact us at<EMAIL_ADDRESS>to get access."

"GPT4 and Claude 2 are only available on our paid plans. Contact us at<EMAIL_ADDRESS>to get access."

But dust / slack / notion etc are also only available on our paid plans => I will just put the name of the agent in the alert


Logging: How to change BundleOptions

I hit a quota limit for Stackdriver ingestion requests recently, which is 1000 / second. I found this happened because I have a distributed service that was not bundling well because the GoogleCloud logging config sends logs every 50ms, per source here. This seems like an odd value to me, considering it only allows a maximum of 50 servers to be logging per project. I see this is defined as the GAX setting BundleOptions but the only GAX options that can be configured are CallOptions, per the @google-cloud/logging documentation.
Is there a way to change any of these options for the Bunyan logger? If not, do you have other recommendations to better batch logging requests in highly-distributed setups? Thanks!

/cc @lukesneeringer @stephenplusplus

@lukesneeringer is there anyone we can ask from the google-gax repo? @landrito?
It appears the only option you can pass through on the request is: isBundling, which can only disable the previously hard-coded setting. I'm not sure that there's a way to override it at runtime.
Additionally/alternatively, maybe we should be using a better default value in the hardcoded file?

Any updates or ideas on this?

Calling @alexander-fenster :)

@landrito to comment :)

Hm. I filed an issue in gax-nodejs to see if dynamically setting the bundling at call time makes sense. I have a hunch that introducing the ability to override it at call time is going to introduce a lot of complexity (what do we do for calls made prior to dynamically changing the bundling, what to do for calls with different
@stephenplusplus do you think dynamically setting this at client instantiation would work to resolve this?

Those concerns make sense to me. I guess we wouldn't want to open up the setting at the method level, but during instantiation of the client. If there's anything else gax uses similar to BundlingConfig, we would want to make sure those could be passed through as well.

So overriding the bundle options should work at client initialization like so:
const Logging = require('@google-cloud/logging');

const clientConfigOverride = {
  "interfaces": {
    "google.logging.v2.LoggingServiceV2": {
      "methods": {
        "WriteLogEntries": {
          "bundling": {
            "element_count_threshold": {Your},
            "request_byte_threshold": {Overrides},
            "delay_threshold_millis": {Here}
          }
        }
      }
    }
  }
};

const logging = new Logging({
  clientConfig: clientConfigOverrde
});

Looking at how the logging-bunyan client is implemented, it passes the constructor opts to the logging client directly. So passing the clientConfig to the constructor of the logging-bunyan client should yield overridden bundling options.

Oh, that looks like a good enough solution to me. @FalconerTC what do you think?

This is perfect. Exactly what I am looking for. Thanks for the help.

Great. I think what we need to do now is add a mention to the docs that this type of configuration is possible. @landrito is there something on the gax docs we can link to?

@landrito Friendly ping.

@DominicKramer I would suggest moving the issue (using the issue mover) to the gax-repo as the outstanding task is to update the docs.

This issue was moved to googleapis/gax-nodejs#256


Add ServiceAsync

@MrDragar
Hi, thank u for your PR. I will look at the changes and make a decision. I really don't know if this asynchrony is necessary for the Service, but in any case, thank you very much!

I just forked you're library for my Telegram bot. Thanks for vkpymusic

glad to help) Question: Did you need an asynchronous version of the Service for the bot to work?

I could use a synchronous version, but I don't want to deal with multithreading problems (I use Aiogram and Tortoise ORM)

Last 2 commits were made for myself. Don't apply them please

Thank u again, but next time please:

create new branch in forked repository with name associated with issue. For example, add-service-async)
if u do some mistake in commit, use amend for apply this changes in last commit, don't in new)
if u want add some changes for yourself u can create another branch)

P. S. this is just advices)


CoreDNS check unavailable in 6.5.2

Output of the info page
$ kubectl exec -nops dd-agent-x5gq0 agent status
Getting the status from the agent.

==============
Agent (v6.5.2)
==============

  Status date: 2018-10-12 18:54:56.276794 UTC
  Pid: 366
  Python Version: 2.7.15
  Logs:
  Check Runners: 16
  Log Level: info

  Paths
  =====
    Config File: /etc/datadog-agent/datadog.yaml
    conf.d: /etc/datadog-agent/conf.d
    checks.d: /etc/datadog-agent/checks.d

  Clocks
  ======
    NTP offset: -1.364ms
    System UTC time: 2018-10-12 18:54:56.276794 UTC

  Host Info
  =========
    bootTime: 2018-09-19 00:32:08.000000 UTC
    kernelVersion: 4.14.67-coreos
    os: linux
    platform: debian
    platformFamily: debian
    platformVersion: buster/sid
    procs: 73
    uptime: 570h14m39s

  Hostnames
  =========
    host_aliases: [k8s-prod-svc-worker24]
    hostname: k8s-prod-svc-worker24
    socket-fqdn: dd-agent-x5gq0
    socket-hostname: dd-agent-x5gq0
    hostname provider: container
    unused hostname providers:
      aws: not retrieving hostname from AWS: the host is not an ECS instance, and other providers already retrieve non-default hostnames
      configuration/environment: hostname is empty
      gce: unable to retrieve hostname from GCE: Get http://<IP_ADDRESS>/computeMetadata/v1/instance/hostname: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

=========
Collector
=========

  Running Checks
  ==============

    conntrack (unversioned)
    -----------------------
        Instance ID: conntrack:d884b5186b651429 [OK]
        Total Runs: 33
        Metric Samples: 2, Total: 66
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 2.291s

    cpu
    ---
        Instance ID: cpu [OK]
        Total Runs: 33
        Metric Samples: 6, Total: 192
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 0s

    disk (1.3.0)
    ------------
        Instance ID: disk:1327ab9967191d95 [OK]
        Total Runs: 33
        Metric Samples: 74, Total: 2,442
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 26ms

    file_handle
    -----------
        Instance ID: file_handle [OK]
        Total Runs: 32
        Metric Samples: 5, Total: 160
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 0s

    io
    --
        Instance ID: io [OK]
        Total Runs: 33
        Metric Samples: 117, Total: 3,780
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 0s

    kubelet (2.0.0)
    ---------------
        Instance ID: kubelet:7082e51805f5cb6d [OK]
        Total Runs: 32
        Metric Samples: 349, Total: 11,168
        Events: 0, Total: 0
        Service Checks: 3, Total: 96
        Average Execution Time : 683ms

    kubernetes_apiserver
    --------------------
        Instance ID: kubernetes_apiserver [OK]
        Total Runs: 32
        Metric Samples: 0, Total: 0
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 34ms

    load
    ----
        Instance ID: load [OK]
        Total Runs: 33
        Metric Samples: 6, Total: 198
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 0s

    memory
    ------
        Instance ID: memory [OK]
        Total Runs: 32
        Metric Samples: 17, Total: 544
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 0s

    network (1.6.1)
    ---------------
        Instance ID: network:2a218184ebe03606 [OK]
        Total Runs: 33
        Metric Samples: 20, Total: 660
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 36ms

    ntp
    ---
        Instance ID: ntp:b4579e02d1981c12 [OK]
        Total Runs: 32
        Metric Samples: 1, Total: 32
        Events: 0, Total: 0
        Service Checks: 1, Total: 32
        Average Execution Time : 163ms

    uptime
    ------
        Instance ID: uptime [OK]
        Total Runs: 33
        Metric Samples: 1, Total: 33
        Events: 0, Total: 0
        Service Checks: 0, Total: 0
        Average Execution Time : 0s

  Loading Errors
  ==============
    coredns
    -------
      Core Check Loader:
        Check coredns not found in Catalog

      JMX Check Loader:
        check is not a jmx check, or unable to determine if it's so

      Python Check Loader:
        No module named coredns

========
JMXFetch
========

  Initialized checks
  ==================
    no checks

  Failed checks
  =============
    no checks

=========
Forwarder
=========

  CheckRunsV1: 33
  Dropped: 0
  DroppedOnInput: 0
  Errors: 0
  Events: 0
  HostMetadata: 0
  IntakeV1: 3
  Metadata: 0
  Requeued: 0
  Retried: 0
  RetryQueueSize: 0
  Series: 0
  ServiceChecks: 0
  SketchSeries: 0
  Success: 69
  TimeseriesV1: 33

  API Keys status
  ===============
    API key ending in 9158c for endpoint https://app.datadoghq.com: API Key valid

==========
Logs Agent
==========

  Logs Agent is not running

=========
DogStatsD
=========

  Checks Metric Sample: 19,994
  Event: 1
  Events Flushed: 1
  Number Of Flushes: 33
  Series Flushed: 17,358
  Service Check: 488
  Service Checks Flushed: 507
  Dogstatsd Metric Sample: 242

Additional environment details (Operating System, Cloud provider, etc):
CoreOS Tectonic Kubernetes on VSphere
Steps to reproduce the issue:
I deployed Datadog agent 6.5.2 with the following CoreDNS autodiscovery configuration:
  coredns.yaml: |-
    ad_identifiers:
      - coredns

    init_config:

    instances:

      ## @param prometheus_url - string - required
      ## To enable CoreDNS metrics you must specify the prometheus url
      ## and enable the plugin within coredns
      ## See: https://coredns.io/plugins/metrics/
      #
      - prometheus_url: "http://%%host%%:9153/metrics"
        tags:
          - "dns-pod:%%host%%"

Describe the results you received:
The coredns check is not found.
  Loading Errors
  ==============
    coredns
    -------
      Core Check Loader:
        Check coredns not found in Catalog

Describe the results you expected:
It looks like the CoreDNS check should be included in the 6.5.2 version.
Additional information you deem important (e.g. issue happens only occasionally):

Oh nevermind -- it's not public yet until 6.6. https://github.com/DataDog/integrations-core/pull/2254
Thanks @ DD support :)

Re-opening, looks like 6.6 was cut but the CoreDNS check is not public:
https://github.com/DataDog/integrations-core/blob/6.6.x/coredns/manifest.json#L20

Oops sorry! That branch is incorrect, it really is in 6.6.


Add Copy. ignoreExistingContentInDestinationDir()

Allows the Copy task to mark its output as untracked. To continue supporting use-cases as https://github.com/gradle/gradle/issues/9576.
Fixes #18159.

@bot-gradle test and merge

OK, I've already triggered a build for you.


fix: enable integration tests

:tada: This PR is included in version 1.65.6 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:


Release files for v1.2.5 changed without notice

Hi!
It was noticed that the release files for https://github.com/KhronosGroup/MoltenVK/releases/tag/v1.2.5 were changed and no notice could be found about this change. To rule out a malicious act could you please state for the record if this change was intentional?
Thanks.
related https://github.com/Homebrew/homebrew-core/pull/139860

Thank you for the prompt clarification.

Thanks @makigumo for filing this issue. Hi @billhollings 👋 -- Homebrew maintainer here.
I read your comment here and would like to make sure if you were suggesting that releases can be retagged until they are non-RC. As mentioned in Git's documentation, re-tagging is an "insane thing" that's strongly discouraged, because tags are meant to be final once they are published. A recommended way, as suggested in the documentation, would be to publish a new version instead. Would you consider marking RC releases with separate tags (like v1.2.5-rc.1) instead, and only publish stable tags (v1.2.5) when they are finalised?
Thanks for all your work maintaining the MoltenVK project!

For SDK builds internally, we create SDK branches, and then we'll update those branches if fixes are needed. On the final SDK build, we create the SDK tags. Perhaps we could do the same for MoltenVK? Create an SDK branch and after testing create the final tag?

Would you consider marking RC releases with separate tags (like v1.2.5-rc.1) instead, and only publish stable tags (v1.2.5) when they are finalised?

Yes. I was thinking along these lines after I posted above. This makes sense, and we'll aim to do that in future. We  can publish multiple RC tags, if needed, but won't publish the Release, until the final non-RC tag has been published, after the SDK is released.

That's great. Thanks @billhollings!


vite-tinybase-react stopped working with React.StrictMode since version 3.4.22

Describe the bug
When using the vite-tinybase-react starter -which is using 4.3.10- and wrapping the <App /> with <StrictMode>, the UI responds to interactions. When upgrading tinybase to latest 4.3.23, the UI stops responding.
I narrowed down the break at version 4.3.22, version 4.3.21 still works.
Your Example Website or App
https://stackblitz.com/~/github.com/feychenie/tinybase-strict-mode-issue
Steps to Reproduce the Bug or Issue

install the vite-tinybase-react example npx degit tinyplex/vite-tinybase-react my-tinybase-app
install the dependancies
check in package-lock.json that tinybase is at version 4.3.10
in index.jsx, wrap  <App /> with <StrictMode>
run the app, everything should be working fine
update tinybase to 4.3.22
run the app, the UI is now unresponsive to interactions
downgrade to 4.3.21, the UI is now responsive again (make sure to lock the version)

Repro repo:

the changes to do are in this commit: https://github.com/feychenie/tinybase-strict-mode-issue/commit/3269308d12ec2a607dc51fa9c1fd9057fd28c14b
running repro on stackblitz: https://stackblitz.com/~/github.com/feychenie/tinybase-strict-mode-issue

Expected behavior
No response
Screenshots or Videos
No response
Platform

OS: macOS
Browser: Brave (chromium)
Version: tinybase 3.2,22

Additional context
No response

OK I can look into this. Thanks for the report!

Fixed in 4.3.24 and the vite templates have been updated too (and include StrictMode by default so if this regresses we'll know quickly!)

Amazing, thanks a lot!


Clean up '#if CORE' - remove Win32Native.cs

Related #3565 and #4357.

Top comment (// Only enable/port what is needed by CORE CLR.) says that the codes were brought in batch "just in case".
The codes is not compiled

-- so I close the PR.