Clicking the toggle button seems to only toggle what is currently visible.

I'll try to see if I can provide a PR for this, but at the moment I'm clicking through my org's hundreds of branches. 😬

Screen recording
https://user-images.githubusercontent.com/9044401/153536590-6443fee8-4613-424c-b873-03f0c11bf307.mov
Expected Behavior
Clicking show all should toggle whether all branches are selected.
Actual Behavior
Only what about two times what is visible is being toggled.
Unfortunately I have hundreds of repos tied to my account.
Steps to reproduce

Open Quests
Go to settings
Have more than 50 repos in the collection view
Try to select show all

Specifications

v1.2.4
macOS 12.2
Reproducibility: Always

Sorry for the black box, I'm connected to work repos and not sure what is and isn't private.


Removed 'Connected to Browser Sync' messages

Quiet "Connected to Browser-Sync" messages in the browser by adding notify: false to the default browser-sync configuration in lib/config.defaults.js.

I hesitate to merge this, as it changes the default behavior for everyone who may currently prefer receiving the notifications. A custom bs-config.json can be used to override this setting today for those who prefer notifications to be off.
We could open this up for a vote. Add a "reaction" for:

:+1: for removing the notifications by default
:-1: for keeping default as-is, with notifications on

going to close this. good idea, but we can do logLevel: silent to turn it off


[docs] Why import from @mui/material/styles, not directly from @mui/material?

Duplicates

[X] I have searched the existing issues

Related page
https://mui.com/material-ui/customization/theming/
Kind of issue
Missing information
Issue description
In the docs. it's prescribed to import style-related functions and types from @mui/material/styles, but I noticed the same things can be imported directly from the root of the @mui/material package. I wonder why there are two ways to import them, whether there is any difference between the two, and why /styles is the recommended way.
Context 🔦
No response

Explained in the documentation here

@AmarTrebinjac That explanation seems to be only about importing components. It can be applied to style-related things too, but there seems to be an inconsistency in that case. The explanation basically says: use deep imports if your setup doesn't support tree shaking or use top-level imports otherwise. So doc pages for each component show the two ways to import it. However, it's not the case for style-related functions`, for which only the deep import is recommended throughout the docs without any explanation.

That explanation seems to be only about importing components

@thorn0 This docs is about any JavaScript module exported by one of our @mui/ packages. So https://github.com/mui/material-ui/issues/35463#issuecomment-1349782238's is correct.

Okay, thanks for the explanation. Feel free to close the issue if it's unactionable. Turns out I missed this sentence from here:

MUI exposes its full API on the top-level @mui imports."

What doesn't look quite right to me is that this "Minimizing bundle size" page is (or at least looks like) an optimization guide. Such explanations belong in the API reference. People don't read optimization guides when they want to understand the API.


Track progress in Issues so that the community can give back!

I would love if you tracked in-progress items in Issues so that community members (like myself) can help out with PRs, suggestions, and discussion.

Cool, I can do that! Thanks!

Thank you!!

Just as a quick update, I have created issues for each of the outstanding work items to be done (as listed in the readme). They can always be expanded, or modified as necessary.

Wonderful! Maybe some tags would be good as well, that way people can see what area things are in (e.g. new action behaviors, general chores, etc.)


Relative scale by population

Hi,
Can you make an option to plot the data by percentage of countries's population (divide the log and linear scale by the population of each country).
Because just plotting absolutes cases don't correlate the density of the spread, where relative cases in addition to the log scale would show the "real" state of the pandemic.
Regards

Yes please!
That feature would be extremely helpful.
It seems that PR #94 is adding this functionality, and issue #214 link other similar requests.
In the above PR I found a working demo - https://covidtrends.eu-gb.mybluemix.net/

Yes please!
That feature would be extremely helpful.
It seems that PR #94 is adding this functionality, and issue #214 link other similar requests.
In the above PR I found a working demo - https://covidtrends.eu-gb.mybluemix.net/

I recommend that this issue be closed as a duplicate of #30, which contains most of the debates.


Estimating proportion of matches inaccurate, especially for small datasets

Reproducible example
Particularly on small datasets, the proportion of matches is often greatly overestimated.
You can see the calculations by turning on logging to level 15:

logging.basicConfig(
    format="%(message)s",
)
splink_logger = logging.getLogger("splink")
splink_logger.setLevel(15)

And you'll see output like:

----- Starting EM training session -----

Original proportion of matches: 0.004
Applying comparison dob using bayes factor 171.000

Proportion of matches adjusted for blocking on l.dob = r.dob: 0.407
Training the m probabilities of the model by blocking on:
l.dob = r.dob

Parameter estimates will be made for the following comparison(s):
    - first_name
    - surname
    - city
    - email

Parameter estimates cannot be made for the following comparison(s) since they are used in the blocking rules:
    - dob

Iteration 1: Largest change in params was 0.291 in proportion_of_matches
Iteration 2: Largest change in params was 0.173 in proportion_of_matches
Iteration 3: Largest change in params was 0.0587 in proportion_of_matches
Iteration 4: Largest change in params was 0.0212 in proportion_of_matches
Iteration 5: Largest change in params was 0.00951 in proportion_of_matches
Iteration 6: Largest change in params was 0.00493 in proportion_of_matches
Iteration 7: Largest change in params was 0.0028 in proportion_of_matches
Iteration 8: Largest change in params was 0.00167 in proportion_of_matches
Iteration 9: Largest change in params was 0.00104 in proportion_of_matches
Iteration 10: Largest change in params was 0.000659 in proportion_of_matches

EM converged after 10 iterations

Proportion of matches from trained model blocking on l.dob = r.dob: 0.971
Reversing comparison level dob using bayes factor 171.000
This estimate of proportion of matches now:  0.165

Median of prop of matches estimates: 0.165

Your model is not yet fully trained. Missing estimates for:
    - dob (no m values are trained).

----- Starting EM training session -----

Original proportion of matches: 0.165
Applying comparison first_name using bayes factor 74.807
Applying comparison surname using bayes factor 63.265

Proportion of matches adjusted for blocking on l.first_name = r.first_name and l.surname = r.surname: 0.999
Training the m probabilities of the model by blocking on:
l.first_name = r.first_name and l.surname = r.surname

Parameter estimates will be made for the following comparison(s):
    - dob
    - city
    - email

Parameter estimates cannot be made for the following comparison(s) since they are used in the blocking rules:
    - first_name
    - surname

Iteration 1: Largest change in params was 0.23 in the m_probability of dob, level `All other comparisons`
Iteration 2: Largest change in params was -0.00333 in proportion_of_matches
Iteration 3: Largest change in params was -0.00304 in proportion_of_matches
Iteration 4: Largest change in params was -0.00258 in proportion_of_matches
Iteration 5: Largest change in params was -0.00206 in proportion_of_matches
Iteration 6: Largest change in params was -0.00157 in proportion_of_matches
Iteration 7: Largest change in params was -0.00115 in proportion_of_matches
Iteration 8: Largest change in params was -0.000818 in proportion_of_matches

EM converged after 8 iterations

Proportion of matches from trained model blocking on l.dob = r.dob: 0.971
Reversing comparison level dob using bayes factor 166.048
This estimate of proportion of matches now:  0.169

Proportion of matches from trained model blocking on l.first_name = r.first_name and l.surname = r.surname: 0.972
Reversing comparison level first_name using bayes factor 74.807
This estimate of proportion of matches now:  0.314
Reversing comparison level surname using bayes factor 63.265
This estimate of proportion of matches now:  0.007

Median of prop of matches estimates: 0.088

Your model is fully trained. All comparisons have at least one estimate for their m and u values

In this model, the true proportion of matches is 0.00695
But here’s an example of the problem:
The dataset is just 1,000 records
There are 394 distinct values for date of birth, which suggests the bayes factor on DOB is (at most) 394
But in fact in this dataset, a match of DOB always implies a true match.  Because in reality, the bayes factor no dob is much higher (cardinality much higher than 394, it’s just this is not seen in the data because it’s a small dataset) (edited)
So:

Splink undercounts the probability of match amongst matches on DOB - it thinks its 97%.  Because the match weights are (generally) too low, because the true cardinality of variables is underestimated.  (Note the 97% here is being driven mostly by the non dob match weights)
When we ‘reverse out’ dob to get the global proportion of matches, this results in a proportion of matches estimate that’s too high.
I don’t think there’s any reason these two effects should balance one another out

Another interesting observation though:
On this model, the data is small enough to compute the proportion of matches from the cartesian product:
# Blocking_rules_for_training is blank i.e. cartesian join
df_predict = linker.predict()

sql = f"""
select sum(match_probability)/(select count(*) from {df_predict.physical_name}) as proportion_of_matches
from {df_predict.physical_name}

"""
linker.con.execute(sql).fetch_df()
>0.009199

which is pretty close to being right

A different way to estimate proportion of matches would be to estimate the total number of matches produced in a blocking training run, and use this alongside the total record count to estimate the proportion of matches directly.  I suspect this may be significantly more accurate

Here's a proposal for direct estimation of the proportion matches, (probability two random records match) which at the moment is the hardest parameter to estimate accuracy
User provides a list of deterministic rules which represent matches, plus a 'recall' rate i.e. what proportion of true matches they believe will be recovered from the rules,
We count number of matches from these rules and compare to to total comparisons
I reckon this will get very close to correct value in most cases and certainly a lot closer than current estimation mechanism
Then you'd usually want to fix this value for em training (edited)
16 replies
Sam Lindsay
:baby:  21 hours ago
This is the lambda parameter right? Not sure why you would want to fix it for the EM training, especially as the deterministic version could be way off
Robin Linacre
:no_entry:  20 hours ago
Yes, lambda. For two reasons:
It's likely to be estimated accurately by the above strategy.  By 'accurately' I mean, within a multiplier of (say) 2.  A list of deterministic rules is likely to capture at least 50% of true matches, and usually a lot more.
Our other techniques for estimating lambda involve 'reversing it out' of blocked comparisons, which in practice doesn't seem to work very well (it's theoretically correct only under the conditional independence assumption)
To be clear, in a blocked em estimation job, lambda could be allowed to vary.  You would just immediately throw whatever value it converged on away (edited)
Sam Lindsay
:baby:  20 hours ago
I would be interested to see the variation in global lambda estimates from different blocking jobs and from this method. Like many of these things I'm uneasy about replacing/fixing it this way, but will probably end up being convinced.
Robin Linacre
:no_entry:  20 hours ago
It's huge, as in, it's often 10x or even 100x different between blocking runs
Sam Lindsay
:baby:  20 hours ago
Yeah I vaguely remember, but I wonder whether the deterministic versions sits in the middle or at either extreme. And how the EM model iterations for m (and u if not fixed) is affected by fixing lambda. I expect not much...maybe it'll even converge more quickly
Robin Linacre
:no_entry:  20 hours ago
The problem is that the blocked lambda is affected by what you blocked on.
So if you blocked on two variables that are not independent, then the adjusted lambda (adjusted upwards for what you blocked on) is not necessarily very accurate, because the adjustment size assumes independence.
That’s the starting value for lambda for the blocked EM training session.  But generally I think i would suggest we let lambda vary within the training session to account for the independence problem.
Probably that should be the default (which is the current state of play).  But user could be allowed to fix lambda if they choose to (edited)
Robin Linacre
:no_entry:  20 hours ago
So to take a tangible example,  if you started with a global lambda of 1 in a million, and did EM training blocking on on month of birth, the adjusted lambda starting value would be roughly 12/1,000,000.
That’s probably fine. but less clear the adjusted lambda is correect (and should be fixed) for blocking on e.g. first name AND surname (edited)
Sam Lindsay
:baby:  19 hours ago
Problem
We currently have multiple (flawed) estimates of the global lambda parameter.
They’re often orders of magnitude apart.
We struggle to estimate their accuracy.
Proposal
We use a list of deterministic rules + estimated recall to estimate the “true” global lambda (at least with a factor of ~2 assuming recall > 50%)
Does this happen alongside the current setup? i.e. the alternative lambda simply gets applied in the predict step
Is the blocked lambda for the training jobs also created from the deterministic rules applied only to those comparisons satisfying the blocking conditions? i.e. each training job has a (fixed) lambda in addition to :point_up:
If 1, then the current lambdas are unaffected and just get binned in the end :white_tick:  If 2, then the intermediate lambdas are consistent with the global lambda used (if held fixed anyway) :white_tick:  Not sure from your previous message whether the intention is to use the global lambda estimate in the blocking jobs and still have this awkward step of accounting for the effect of the blocking rule.
Robin Linacre
:no_entry:  17 hours ago
So:
(1). Yes.  The first two steps of a Splink linkage job would be estimate_u_using_random_sampling and a new method estimate_probability_two_random_records_match.  These are both direct estimation techniques, and could be in either order since they are independent.
(2).  Interesting.  You could do this - it’s a clever idea - and it might improve convergence a bit.  I don’t think it’s necessary because the blocked lambda  is just a starting value, and so long as it’s close, it doesn’t matter if it’s a bit wrong.
I have so little faith in ‘reversing out’ global lambda from blocked lambda that I’m not terribly worried about the blocked lambdas being consistent with global lambda.  i.e. I think i’d be happy just to ignore them completely for the purposes of estimation, on the basis they’re less informative than the global lambda that’s already estimated (edited)
Robin Linacre
:no_entry:  17 hours ago
To be clear - here’s a more detailed description of the proposed estimatino process.
Once we’ve called our new method estimate_probability_two_random_records_match we get a parameter, let’s call it gλ.  g for global
In our first EM pass, we’ll block on first name and surname.
We want a sensible starting value for bλ (blocked lambda), i.e. the proportion of matches amongst blocked pairs.
We can derive this by looking at the match weights on first name and surname and adjusting gλ upwards.  If the match weight was 100 for both, gλ would be increased 10,000 fold to get bλ
EM estimation then goes ahead.  bλ is free to adjust upwards or downwards.
But bλ is immediately ditched.  i.e. we only save the estimated m values back to the global model
We then repeat this for a second blocking pass e.g. date of birth.  For this pass, the starting value of bλ is adjusted up from gλ by about 100x365 to account for the exact match on date of birth.  Run EM to get m parameters and ditch bλ
Robin Linacre
:no_entry:  17 hours ago
It occurs to me that tom’s new chart could be very valuable here to understand how to set the recall parameter of the new method: ‘estimate_probability_two_random_records_match’
Robin Linacre
:no_entry:  17 hours ago
image.png
image.png
:heart_eyes:
1
Robin Linacre
:no_entry:  17 hours ago
we can see that subsequent deterministic rules produce diminishing marginal returns and we can conclude that the total number of valid matches is unlikely to be much higher than 2,200
hence we can conclude that the recall for these four rules is likely to be high (say >90%), and therefore we’ve pinned down probability_two_random_records_match pretty well (edited)
Sam Lindsay
:baby:  15 hours ago
OK, that's about what I thought, but I have one reservation remaining re consistency of blocked params vs global params. If we allow the blocked lambda to vary, then the other parameters will vary such that they are consistent with that lambda. If we know we're going to ignore it, why allow it to vary at all? Fixing it ensures we get sensible m and u probs given that we know best about the lambda
Robin Linacre
:no_entry:  15 hours ago
Yeah that's a fair point.  The counterargument is that just because we know gλ doesn't mean we know bλ (due to correlations in the blocking columns).
There are two cases:
Multiple potentially correlated columns in blocking rule, eg blocking on first name and surname for the purpose of em training.  In this case bλ is unreliable when we derive it from gλ
A single column in blocking rule for em training e.g. dob.  In this case bλ should be accurate since there's no problem of correlation
I feel like in practice it's not going to make a massive difference either way, but we might as well leave both options to the user (edited)


API Plugin.subscribe failures on websocket connect not propagating errors back

scenario 1:
internet connection is off, websocket connect fails, error is not passed back to subscriptionItem
scenario 2:
subscription is unsubscribed, websocket is still open, this is expected behavior, however it is causing a lot of subscription connection leaks from datastore's usage and we should rethink the connection strategy

addressed here: https://github.com/aws-amplify/amplify-ios/pull/333

PR 333 will be closed, as the code will be moved over to AppSyncRealTimeClient, closing this now


ZstdSharp.ZstdException: Dictionary mismatch

Struggling to get this to work using Linux version (on steam deck). Merge command finds input (romfs dump & mod's romfs folder) and output folders but can't progress further due to the error below.

It likely means your game paths aren't configured.
If they are, then something is wrong with your ZsDic.pack.zs file.

What do you mean by your first point? How do you configure your game paths?
Otherwise, I will attempt to redump the game.

Because this is designed to be used with TKMM, there's no great way to configure them through the app, but it's just a json file in /local/share/Totk/config.json with the following contents:
{
  "GamePath": "/path/to/romfs"
}

The config was the issue. Thanks!


Add Extended FAB

Add extended fab as a variant in Fab.
https://github.com/material-components/material-components-web/blob/v0.37.0/packages/mdc-fab/mdc-fab.scss#L35

fixed with https://github.com/material-components/material-components-web-react/pull/166


Adding prettier formatter to the wysiwyg example has slowed down docs massively

Description
Recently I added an optional formatter to the codeBlock configuration. Naturally, prettier is what I've used for the example of how it can be done.  The problem is that it adds 1Mb to the bundle size, and slows down the load on all other documentation pages.
While docz supports code splitting, it puts everything inside a vendor file and right now the docs are painfully slow.
Possible Fix
Switch to a documentation provider that supports SSR and code-splitting, perhaps gatsby.
The main problem is not so much total bundle size but the fact that each page loads its content with a spinner. SSR would mean that even before interactivity there is content.

It looks like Docz V2-rc landed with better support for gatsby and a nicer design. There are a few issues and it's still a release candidate but this may be the answer to the above problems.

The switch over to gatsby seemed to solve the issue.
Closing as fixed.


Update mdoc, sbt-mdoc to 2.2.20

Updates

org.scalameta:mdoc
org.scalameta:sbt-mdoc

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

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta" } ]

labels: library-update, semver-minor

Superseded by #194.


Non-global behavior (per session)?

The README suggests to me that requests-cache applies to all requests. This behavior means I cannot use this functionality in a library that other applications might invoke, because by enabling the cache, it will affect the behavior globally, including unrelated requests calls.
Is there any way to use this functionality that's associated with a particular session or otherwise restrict the requests that are affected?

Absolutely. Just use requests_cache.CachedSession in place of requests.Session. Managing your own session object is IMO a better approach than using the global patching functions (requests.cache.install_cache(), etc.).
This could probably be better explained in the documentation. I'll leave this issue open as a reminder to update them.


Correctly verify PKCE secret in token endpoint

Before this change the PKCE secret would be verified only if it was sent
by the client. This defeats the point of PKCE as a malicious actor which
intercepted the code returned from the authorization endpoint would be
able to send a request to the token endpoint without the code_verifier.
This only affects public clients and is subject to the preconditions
described by: https://tools.ietf.org/html/rfc7636#section-1
Upstream PR: https://github.com/juanifioren/django-oidc-provider/pull/361

LGTM


support different types of tracer by configuration, such as skywalking, currently only zipkin

We are currently using skywalking instead of zipkin in production environment . We expect to be able to switch to skywalking as easily as modifying the configuration, rather than secondary development on easegress.

Thanks for raising the requirement, we will consider adding the support.

Suggest replacing zipkin with opentelemetry

I think the problem has been solved, you can easegress tracing to configure otlp exporter, and select skywalking receiver in otel collector.
You can refer to the documentation:

https://github.com/megaease/easegress/blob/main/doc/cookbook/distributed-tracing.md#exporter
https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/examples/tracing/otel-collector-config.yml
https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/skywalkingreceiver

I'll close the issue and we'll discuss it when we have questions.


tvOS compatibility

Porting this library to tvOS compatible cocoapod.

Cocoapods version was updated. Thank you for your cooperation!


Some component use yew

[x] image_chooser_modal
[x] image_gallery
[x] crud_quicksearch

They were leftovers from where I started porting over old components to leptos. The files mentioned were not included in the library and did not cause any trouble. Removed them all still.


Move all requests to Task[T]

Previously, all messages were handled synchronously.  This made it
tricky to implement desirable features like request cancellation and
restarting crashing presentation compiler. This commit is the first
step towards making it easier to fix these problems by porting to
monix Task[T]. The main motivation to use monix task instead of stdlib
Future is cancellation and overflow strategies (drop old messages with
configurable buffer size) are provided out of the box. Monix
TestScheduler makes it also easy to test the server synchronously.
Task[T].runAsync returns a stdlib future which makes it fit perfectly
into our current architecture, we never need to block.

This PR does not take advantage of this refactoring yet, I want to delay that for another PR so it's easier to review.

I assume for implementing cancelation we would need to keep references to running tasks around somewhere, right?

Correct. We will probably keep those in LanguageServer where we .runAsync. I'm investigating how to escape the infinite loop in the PC, it seems we'll need Thread.interrupt 😨


generated function does not have a watch function

Hi ,
I am using drift 2.8.0 and ran the command  to generate code.  the following code was generated in the .g file:
 Selectable<ReportProjectionResult> reportProjection(
      String? startDate, String? endDate) {
    return customSelect(
        'SELECT id, group_id, expected_amount, actual_amount FROM income WHERE payment_date BETWEEN ?1 AND ?2 ORDER BY payment_date',
        variables: [
          Variable<String>(startDate),
          Variable<String>(endDate)
        ],
        readsFrom: {
          income,
        }).map((QueryRow row) {
      return ReportProjectionResult(
        id: row.read<int>('id'),
        groupId: row.readNullable<int>('group_id'),
        expectedAmount: row.readNullable<double>('expected_amount'),
        actualAmount: row.readNullable<double>('actual_amount'),
      );
    });
  }

class ReportProjectionResult {
  final int id;
  final int? groupId;
  final double? expectedAmount;
  final double? actualAmount;
  ReportProjectionResult({
    required this.id,
    this.groupId,
    this.expectedAmount,
    this.actualAmount,
  });
}

i created the following function in my database.dart file:
Stream<List<ReportProjectionResult >> incomeProjection(String startDate, String endDate) {
    return incomeProjection(startDate, endDate).watch().;

the problem here is that android studio complaints that watch() is not defined for the type of stream.  I have other function where i can specified the watch function.  I compared the code to my other functions and they are similar and i am able to specified watch() in other functions.  can someone help? what am i doing wrong?

Hi! The code looks correct apart from a small typo: The generated method is called reportProjection, but your stream function is calling itself (incomeProjection). If you change the body to return reportProjection(startDate, endDate).watch();, it should work.


Add repeating animation

Is your feature request related to a problem? Please describe.
Add a possible configuration to the tracing that repeats indefinitely

i will take it

i want it

i need it

i would like to work on it plz

A lot of bots are interacting with this project rn, if you can prove you aren't a bot respond to this message lol


Master: Fix tests on Windows, add Ruby 3.3, and cleanup CI

On Windows, the DateTime class struggles with Float values for certain methods like #next_year some reason.

@pitbulk this is ready to be merged.

@pitbulk this can be merged independently of the other PRs.

This PR has a mix of the code to be sent to V2 and the one to master branch
See https://github.com/SAML-Toolkits/ruby-saml/pull/687/files#diff-d57c932f52c1cf52ca2f9028672cc7d038bf9c8200484ddc80e63a212a68e6b3

@pitbulk oops! Sorry about that, its now fixed and ready to merge.

@johnnyshields,  We should also apply this on V2


DynamoDB Connector

Closes #2938
Code Changes

[x] Add aws connector commands for DynamoDB
[x] Include a CLI command to generate a dataset
[x] Update the API to generate a DynamoDB dataset
[x] ~Store the primary key and secondary sort (optional) as dataset meta~ inferred from get_item
[x] Add tests for the request_runner_service (access & erasure)
[x] Add tests for the CLI command
[x] Add tests for the query param generation
[x] Create and add an SVG template for the frontend for DynamoDB

Steps to Confirm

[x] Set credentials as stored in 1Password
[x] Create a connector for Dynamo (the config options are sneakily flipped, not sure how here)
[x] Test the connection

Pre-Merge Checklist

[x] All CI Pipelines Succeeded
Documentation:

[x] documentation complete, PR opened in fidesdocs
[x] documentation issue created in fidesdocs fidesdocs#91

[x] Issue Requirements are Met
[x] Relevant Follow-Up Issues Created
[x] Update CHANGELOG.md
[x] For API changes, the Postman collection has been updated

Description Of Changes
This is the connector for DynamoDB, the consent component will be worked separately in both documentation and fidesplus.
It appears that some of the other unsafe checks that are not currently passing are being ignored for now, although I have validated the ones added here for DynamoDB appear to be in the clear :)
There have been more than a few migration conflicts so there may be some further need to keep up with more of those changes until this merges

I'm still resolving a couple of spooky issues that I think were related to migration conflicts but mostly just planning to add some DynamoDB request specific unit tests and would love any early feedback @galvana !

@galvana - This should be ready to review again as of now with tests passing for the query params and access/erasure! I am likely going to give it another review for general cleanup as well and maybe add some further query param tests but it shouldn't be functionally different. Thanks again for your help

@seanpreston expected checks are good and opened up https://github.com/ethyca/fides/issues/3278 for the two that are currently failing


OTA Agent request next block twice when duplicate of block has been received

Describe the bug
OTA Agent execute  job and receive blocks of the OTA update.
Due to not stable network connection OTA agent can receive same block twice.
It is expected satiation and duplicated block is detected by bitmap and will not be written to the file/flash.
But even when block is duplication next block requested again.
It results in when once due to network issues block is duplicated  OTA Agent will request all remaining block twice and all remaining block will be received twice.
System information

Which hardware board or part numbers?
ESP32_DevKitC_V4

IDE used
-ESP-IDF 3.3

Operating System [Windows|Linux|MacOS]
Windows10

Version of FreeRTOS (run git describe --tags to find it)
202012.00

Project
Custom Application

If your project is a Custom Application, please add the relevant code snippet in the section Code to reproduce the bug.
Problem is inside prvProcessDataHandler() which is not make differences between eIngest_Result_Duplicate_Continue and eIngest_Result_Accepted_Continue  and always enqueue event eOTA_AgentEvent_RequestFileBlock to request next block twice.

Expected behavior
Even when block received twice (duplicated) we does not request next block twice.
Screenshots or console output
Output from the log:
3568 135458 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3569 135463 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3570 135463 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3571 135646 [OTA Agent Task] [prvIngestDataBlock] Received file block 469, size 4096
3572 135656 [OTA Agent Task] [prvIngestDataBlock] Remaining: 112
3573 135657 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3574 135657 [OTA Agent Task] [prvIngestDataBlock] Received file block 469, size 4096
3575 135657 [OTA Agent Task] [prvIngestDataBlock] block 469 is a DUPLICATE. 112 blocks remaining.
3576 135657 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3577 135662 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3578 135663 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3579 135665 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3580 135666 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3581 135852 [OTA Agent Task] [prvIngestDataBlock] Received file block 470, size 4096
3582 135862 [OTA Agent Task] [prvIngestDataBlock] Remaining: 111
3583 135862 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3584 135867 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3585 135868 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3586 135951 [OTA Agent Task] [prvIngestDataBlock] Received file block 470, size 4096
3587 135951 [OTA Agent Task] [prvIngestDataBlock] block 470 is a DUPLICATE. 111 blocks remaining.
3588 135951 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3589 135955 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3590 135955 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3591 136060 [OTA Agent Task] [prvIngestDataBlock] Received file block 471, size 4096
3592 136070 [OTA Agent Task] [prvIngestDataBlock] Remaining: 110
3593 136070 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3594 136074 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3595 136074 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3596 136157 [OTA Agent Task] [prvIngestDataBlock] Received file block 471, size 4096
3597 136158 [OTA Agent Task] [prvIngestDataBlock] block 471 is a DUPLICATE. 110 blocks remaining.
3598 136158 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3599 136161 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3600 136162 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3601 136261 [OTA Agent Task] [prvIngestDataBlock] Received file block 472, size 4096
3602 136271 [OTA Agent Task] [prvIngestDataBlock] Remaining: 109
3603 136272 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3604 136275 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3605 136275 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3606 136365 [OTA Agent Task] [prvIngestDataBlock] Received file block 472, size 4096
3607 136365 [OTA Agent Task] [prvIngestDataBlock] block 472 is a DUPLICATE. 109 blocks remaining.
3608 136366 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3609 136369 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3610 136369 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3611 136465 [OTA Agent Task] [prvIngestDataBlock] Received file block 473, size 4096
3612 136476 [OTA Agent Task] [prvIngestDataBlock] Remaining: 108
3613 136476 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3614 136479 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3615 136480 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3616 136568 [OTA Agent Task] [prvIngestDataBlock] Received file block 473, size 4096
3617 136568 [OTA Agent Task] [prvIngestDataBlock] block 473 is a DUPLICATE. 108 blocks remaining.
3618 136568 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3619 136571 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3620 136572 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3621 136668 [OTA Agent Task] [prvIngestDataBlock] Received file block 474, size 4096
3622 136679 [OTA Agent Task] [prvIngestDataBlock] Remaining: 107
3623 136679 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3624 136683 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3625 136683 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
3626 136776 [OTA Agent Task] [prvIngestDataBlock] Received file block 474, size 4096
3627 136777 [OTA Agent Task] [prvIngestDataBlock] block 474 is a DUPLICATE. 107 blocks remaining.
3628 136777 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [ReceivedFileBlock] New state [WaitingForFileBlock]
3629 136780 [OTA Agent Task] [prvRequestFileBlock_Mqtt] OK: $aws/things/ac:67:b2:6e:81:4c/streams/AFR_OTA-61976ca5-1a73-4568-aebb-85536f0be3f1/get/cbor
3630 136780 [OTA Agent Task] [prvExecuteHandler] Called handler. Current State [WaitingForFileBlock] Event [RequestFileBlock] New state [WaitingForFileBlock]
To reproduce
Steps to reproduce the behavior:

Start OTA Update job
Waiting until device receive job description and starting receiving blocks
In a middle of receiving block disconnect internet cable (for example) from the router for a while (2-5 seconds is typically enough)
Look to the logs of device and find when duplicated block is receives once it becomes persistent even internet connection is becomes stable

Code to reproduce the bug
No need special code

Hello,
The eIngest_Result_Accepted_Continue is return code when the block is received and successfully written to flash. The eIngest_Result_Duplicate_Continue return code is when the current block received is already received and written to flash so it is ignored.
Can you please share the OTA configuration you are using ? What is otaconfigFILE_REQUEST_WAIT_MS set to?

Hello @pvyawaha
I know the difference between eIngest_Result_Accepted_Continue  and eIngest_Result_Duplicate_Continue  as returned by prvIngestDataBlock. Problem in implementation of prvProcessDataHandler() which has no difference in processing of eIngest_Result_Accepted_Continue  and eIngest_Result_Duplicate_Continue.
Request for next block  is sent even on eIngest_Result_Duplicate_Continue.
That means when OTA Agent accidentally and ONCE receive duplicated block  it starts request all remaining blocks twice which Cloud send it twice, and all remaining blocks also will have duplicates.
For testing it I break internet connection for a short time.
In other test I inject duplicate once for exact block by double calling of 'prvSendCallbackEvent( pvCallbackContext, pxPublishData, eOTA_AgentEvent_ReceivedFileBlock );'
I think no need to request next block on eIngest_Result_Duplicate_Continue. It will be requested anyway by timer with otaconfigFILE_REQUEST_WAIT_MS  interval
In our case otaconfigFILE_REQUEST_WAIT_MS  has value in 10 seconds by default.

I have no real log and not full certainty, but we observed similar behavior as described here I believe, where we wondered about receiving much too many duplicated blocks (especially in relation with 1 or multiple connection drops), so a careful +1.

Hello,
The duplicate blocks are received when the request is processed by the service but response is not yet received by the device and timer expires sending another request for same blocks. The response for the first request is now received and device marks those blocks as received. After that the response for the other request is received and those blocks will be considered as duplicate. This might happen if the requests are sent faster than the response and can happen sometime based on the network condition. The otaconfigFILE_REQUEST_WAIT_MS is the parameter that controls how fast these blocks are requested. Also this timeout is only used when the requested number of blocks are not received. So for example if 8 blocks are requested and they are received before the timer expires the next set is immediately requested but if less than 8 are received then the next set will be requested at next timeout.

Hello,
Did the otaconfigFILE_REQUEST_WAIT_MS  configuration helped in your issue?

Hello,
Did the otaconfigFILE_REQUEST_WAIT_MS configuration helped in your issue?

Hello I do not tried because the problem does not related to value of otaconfigFILE_REQUEST_WAIT_MS setting.
It is related to implementation of prvProcessDataHandler() which send second request for next block even when prvIngestDataBlock() returns eIngest_Result_Duplicate_Continue. That makes sequence of duplication infinite.

Hello,

It is related to implementation of prvProcessDataHandler() which send second request for next block even when prvIngestDataBlock() returns eIngest_Result_Duplicate_Continue. That makes sequence of duplication infinite.

The prvProcessDataHandler does not send the second request for next block when prvIngestDataBlock returns eIngest_Result_Duplicate_Continue. It means we have received a block that is already processed and written to flash. So the request was already sent.
The duplicate error happens when a response to previous request was in flight so not yet written to flash/marked as received and a new request is sent. The speed at which the blocks are requested is controlled by otaconfigFILE_REQUEST_WAIT_MS. Also, this timeout is only used when the number of blocks requested are not received and when network is better and all blocks are received the next blocks are immediately requested without slowing down the process.
Can you please try setting otaconfigFILE_REQUEST_WAIT_MS to much higher value ? I think that will solve your issue.

Hello,
Once occasionally duplicate occurs - duplicates are never finished until last block of OTA update.
Please check the implementation of prvProcessDataHandler(). Even when prvIngestDataBlock() returns eIngest_Result_Duplicate_Continue  prvProcessDataHandler() will execute lines:
`
xEventMsg.xEventId = eOTA_AgentEvent_RequestFileBlock;
            if( !OTA_SignalEvent( &xEventMsg ) )
            {
                OTA_LOG_L2( "[%s] Failed to signal OTA agent to close file.", OTA_METHOD_NAME );
            }

`
which cause request next block second time, and cloud responds with duplicate block.

Fixed in #3495 .


go debug is not able to stop

go-debug starts wel, but does not respond to the stop button.
trying to remove breakpoints at that point won't remove breakpoints, looks like the application "hangs",
Occurence: ever since the update to 1.0 (did not occur in earlier versions)
how to reproduce, add a couple of breakpoints to a go script, start debugging, after go-debug reaches the first breakpoint, press the stop button... this does not work

Please copy & paste the content of the Debug tab in the go-plus panel (it opens whenever you start the debugger)
Also provide some source code if possible.

me too...

Update to v1.0.1

Update to v1.0.1


3558 Add validations for partner requests settings

Resolves #3558
Description
Adds a validation so that a partner cannot entirely remove their own ability to make requests through the partner profile.  Also adds tests for this change, and updated a failing spec that was caused by this change.
Other changes include:

Bumped Ruby version
Added .vscode/ to .gitignore

Type of change

Bug fix (non-breaking change which fixes an issue)

How Has This Been Tested?
Added tests and ran the entire test suite.

Thanks for the contribution!
FYI for next time - if there is an active review, please don't force push changes, as it is more difficult to see what changed since the review.

@dacur  This went into production on Sunday.   Thank you for your contribution!


Reproduce Gridnet's SOTA agent with Trueskill Evaluation

Now that we are trying to get the self-play agent working, it's important to set baselines that we want to achieve and excel. Our best past experiment is this (which I just now realized Chris had run with --num-bot-envs 48), which can achieve a Trueskill of 35.55 (source).

I am going to try reproduce with python ppo_gridnet.py --num-bot-envs 24 --num-selfplay-envs 0 --total-timesteps 100000000 --num-models 300, see if we can get the same level of performance, so
python ppo_gridnet.py \
    --num-bot-envs 24 --num-selfplay-envs 0 \
    --total-timesteps 100000000 --num-models 300 \
    --capture-video --prod-mode

After this, I am going to check if I can reproduce the same results with the new vecenv implementation in #34

Unfortunately, I wasn't able to reproduce the best past results in https://wandb.ai/costa-huang/gym-microrts/runs/17moy8qp. Maybe I need to run with the default parameters in https://wandb.ai/vwxyzjn/gym-microrts-paper/runs/asrpz468 (--num-bot-envs 48)

Actually, I am going to try to use #34 to run the following:
python ppo_gridnet.py \
    --num-bot-envs 48 --num-selfplay-envs 0 \
    --total-timesteps 300000000 --num-models 300 \
    --capture-video --prod-mode

https://wandb.ai/costa-huang/gym-microrts/reports/MicroRTSGridModeSharedMemVecEnv---VmlldzoxNDYwNDE0 tracks this progress

A new run https://wandb.ai/costa-huang/gym-microrts/runs/2v658xqx/logs?workspace=user-costa-huang seems successful, although the true skill evaluation is a bit buggy: see #41

This run successfully reproduced past best results. Closing the issue now.

Now try reproducing the same results with MicroRTSGridModeSharedMemVecEnv from #34 in https://wandb.ai/gym-microrts/gym-microrts/runs/39stn3xh

Was able to reproduce same results with MicroRTSGridModeSharedMemVecEnv.

Also, SPS is about 10% faster! If we could make the NN faster, SPS will be even faster.


Improving the MaxSubResultLimitReached message

The current message of:
No of subresults in test case: Xxx are more than supported limit 1000, truncating remaining ones.

Is a bit confusing as it took me a moment to realize the "no" was "number". I also just reworded the message a bit to improve the readability:
Number of subresults in test case 'Xxx' is more than the supported limit of {1}, truncating remaining ones.

Also, why is that limit 1000? I have some tests that verify each p/invoke we generate to ensure that it is valid. There are a few thousand... Would be nice to control that.

Also, why is that limit 1000? I have some tests that verify each p/invoke we generate to ensure that it is valid. There are a few thousand... Would be nice to control that.


Error when getting to admin.skoruba.local

Question
When I tried to enter in the admin section I get the following error.
AuthenticationException: The remote certificate is invalid because of errors in the certificate chain: PartialChain
Checking the log I get the following messages. What I am doing wrong?
Thanks
Relevant parts of the log file
[2022-01-11T06:21:43.9779588+00:00][INFO][29][Microsoft.AspNetCore.Authorization.DefaultAuthorizationService] Authorization failed. "These requirements were not met:\nRolesAuthorizationRequirement:User.IsInRole must be true for one of the following roles: (Admin)"
[2022-01-11T06:21:44.0909052+00:00][EROR][28][Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware] An unhandled exception has occurred while executing the request.
System.InvalidOperationException: IDX20803: Unable to obtain configuration from: 'System.String'.
 ---> System.IO.IOException: IDX20804: Unable to retrieve document from: 'System.String'.
 ---> System.Net.Http.HttpRequestException: The SSL connection could not be established, see inner exception.
 ---> System.Security.Authentication.AuthenticationException: The remote certificate is invalid because of errors in the certificate chain: PartialChain
   at System.Net.Security.SslStream.SendAuthResetSignal(ProtocolToken message, ExceptionDispatchInfo exception)
   at System.Net.Security.SslStream.ForceAuthenticationAsync[TIOAdapter](TIOAdapter adapter, Boolean receiveFirst, Byte[] reAuthenticationData, Boolean isApm)
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.ConnectHelper.EstablishSslConnectionAsyncCore(Boolean async, Stream stream, SslClientAuthenticationOptions sslOptions, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.ConnectAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.CreateHttp11ConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.GetHttpConnectionAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean async, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.DiagnosticsHandler.SendAsyncCore(HttpRequestMessage request, Boolean async, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.SendAsyncCore(HttpRequestMessage request, HttpCompletionOption completionOption, Boolean async, Boolean emitTelemetryStartStop, CancellationToken cancellationToken)
   at Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel)
   --- End of inner exception stack trace ---
   at Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(String address, CancellationToken cancel)
   at Microsoft.IdentityModel.Protocols.OpenIdConnect.OpenIdConnectConfigurationRetriever.GetAsync(String address, IDocumentRetriever retriever, CancellationToken cancel)
   at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)
   --- End of inner exception stack trace ---
   at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.HandleChallengeAsyncInternal(AuthenticationProperties properties)
   at Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.HandleChallengeAsync(AuthenticationProperties properties)
   at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.ChallengeAsync(AuthenticationProperties properties)
   at Microsoft.AspNetCore.Authentication.AuthenticationService.ChallengeAsync(HttpContext context, String scheme, AuthenticationProperties properties)
   at Microsoft.AspNetCore.Authorization.Policy.AuthorizationMiddlewareResultHandler.HandleAsync(RequestDelegate next, HttpContext context, AuthorizationPolicy policy, PolicyAuthorizationResult authorizeResult)
   at Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Authentication.AuthenticationMiddleware.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Localization.RequestLocalizationMiddleware.Invoke(HttpContext context)
   at NWebsec.AspNetCore.Middleware.Middleware.CspMiddleware.Invoke(HttpContext context)
   at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context)
   at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context)
   at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context)
   at NWebsec.AspNetCore.Middleware.Middleware.MiddlewareBase.Invoke(HttpContext context)
   at Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddleware.Invoke(HttpContext context)

`An unhandled exception occurred while processing the request.
IOException: Received an unexpected EOF or 0 bytes from the transport stream.
System.Net.Security.SslStream.g__InternalFillHandshakeBufferAsync|187_0(TIOAdapter adap, ValueTask task, int minSize)
HttpRequestException: The SSL connection could not be established, see inner exception.
System.Net.Http.ConnectHelper.EstablishSslConnectionAsync(SslClientAuthenticationOptions sslOptions, HttpRequestMessage request, bool async, Stream stream, CancellationToken cancellationToken)
IOException: IDX20804: Unable to retrieve document from: 'System.String'.
Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(string address, CancellationToken cancel)
InvalidOperationException: IDX20803: Unable to obtain configuration from: 'System.String'.
Microsoft.IdentityModel.Protocols.ConfigurationManager.GetConfigurationAsync(CancellationToken cancel)`

Same issue here. I followed the steps in the documentation and even tried starting a whole new project.
I don't have the problem locally and I can't seem to see any difference in the identityserver files.

Follow this steps:

Open shared\nginx\certs folder
Check if cacerts.crt is a folder and delete it.
Repeat certificate creation
Check if cacerts.crt is now a file and test it again

Newcomer to the project here - I ran into the same issue working through the Docker setup. @nckex any idea what causes this?


"New version available - Reload" feature for SPA

Is nuxt suggests any mechanism to notify SPA about new version available and therefore page should be reloaded (like Google Inbox does for example)?

Hi! Nice idea. It may be achieved by priodically checking manifest.js with a service worker. We are working on new nuxt modules witch can bring many functionalies like this to nuxt.

Is it planned for 1.0 release?

Modules are external npm packages which extend core api. And yep modules support already added to alpha1. (Spoiled :D) You may keep track of progress there. https://github.com/nuxt/modules

Good news indeed, thanks. Hope it will be shipped soon. It's quite critical for production

Awesome!

Closing it since rc3 is out


gcloud build fails while using ortools, numpy, python 3.10.8 (cross post buildpacks #245)

This is a cross-posting of GoogleCloudPlatform/buildpacks #245 (https://github.com/GoogleCloudPlatform/buildpacks/issues/245) as that was the suggested posting location for bugs.
Happy to submit the full build output log if that will be useful.
I am using Python 3.10.8 and an env unchanged since about 2-3 weeks ago, when this command used to work. Now it fails
gcloud builds submit --pack image=gcr.io/solver-28204/poll-scheduler-solver
I'm using ortools 9.4.1874 and numpy 1.23.4 (which I upgraded from 1.23.2 while troubleshooting, to no avail).
I suspect that this has something to do with issue "Python 3.11 support #3515" (https://github.com/google/or-tools/issues/3515) but am stumped on how to fix it. Right now I cannot build the gcloud version of my OR-Tools app.
Any suggestions appreciated.
[builder] Collecting numpy==1.23.4
[builder] Downloading numpy-1.23.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (17.1 MB)
[builder] ???????????????????????????????????????? 17.1/17.1 MB 40.3 MB/s eta 0:00:00
[builder] ERROR: Ignored the following versions that require a different python version: 1.21.2 Requires-Python >=3.7,<3.11; 1.21.3 Requires-Python >=3.7,<3.11; 1.21.4 Requires-Python >=3.7,<3.11; 1.21.5 Requires-Python >=3.7,<3.11; 1.21.6 Requires-Python >=3.7,<3.11
[builder] ERROR: Could not find a version that satisfies the requirement ortools==9.4.1874 (from versions: none)
[builder] ERROR: No matching distribution found for ortools==9.4.1874

Solved by Matthew Robertson in the buildpacks 245 issue.  It was lack of .python-version file. He said:
I suspect you aren't pinning your python version, so the buildpacks started using python 3.11.0 automatically when it became available last week. You can pin your python version by either:
Adding a .python-version file to your application root and specifying a version constraint like:
3.10.x
Passing the version constraint via the GOOGLE_PYTHON_VERSION or GOOGLE_RUNTIME_VERSION build environment variables.
See #242 for another person who hit this issue recently.


Typescript types are not properly exported

Could not find a declaration file for module 'vite-plugin-eslint'.
'c:/Code/react-vite-example/node_modules/vite-plugin-eslint/dist/index.mjs' implicitly has an 'any' type.
There are types at 'c:/Code/react-vite-example/node_modules/vite-plugin-eslint/dist/index.d.ts',
but this result could not be resolved when respecting package.json "exports".
The 'vite-plugin-eslint' library may need to update its package.json or typings.ts(7016)

For anyone else stuck here, I've added a fix myself via patch-package:

npm install --save-dev patch-package
Create the patch file patches/vite-plugin-eslint+1.8.1.dev.patch with this content:

diff --git a/node_modules/vite-plugin-eslint/package.json b/node_modules/vite-plugin-eslint/package.json
index afbc41c..5f6d8f7 100644
--- a/node_modules/vite-plugin-eslint/package.json
+++ b/node_modules/vite-plugin-eslint/package.json
@@ -9,6 +9,7 @@
   "types": "./dist/index.d.ts",
   "exports": {
     ".": {
+      "types": "./dist/index.d.ts",
       "import": "./dist/index.mjs",
       "require": "./dist/index.js"
     }

Add a postinstall script in your package.json:

"postinstall": "patch-package",

npm install

It happens when using recommended in TypeScript 5 "moduleResolution": "Bundler" in tsconfig.json

What does it take to get this fixed? It seems like an easy thing to fix...
I don't really want to use a patchpackage mechanism, since I'm setting up a totally new virgin project. It feels dirty.


app number free on underlay network

app number free on underlay network should trigger network instance delete try
added a wrapper function to address the portability concerns for appnumOnUNetFree()
simplified the handleAppNetworkModify() code structure a bit.
Signed-off-by: Srinibas Maharana<EMAIL_ADDRESS>

@eriknordmark can we please close?

This PR is obsolete - number allocators have been refactored and the rest of the zedrouter will be soon as well.


InfoProvided event doesn't appear to trigger for custom Reporter

scalatest 3.0.5
While the standard output reporter functions correctly with respect to printing out info messages, the corresponding event does not seem to trigger for a custom reporter. NoteProvided and AlertProvided, however, do.
Given a reporter that looks something like this, where it prints out the events as they're triggered...
class MyCustomReporter extends Reporter

  private def printPayload(payload: Option[Any], eventName: String): Unit = {
    payload match {
      case None    => println(s"nothing in the payload for $eventName")
      case Some(p) => println(s"here is the payload: $p")
    }
  }

  override def apply(event: Event): Unit = event match {
    // ...
    case e: AlertProvided =>
      println(s"!!! AlertProvided ${e.message}")
      printPayload(e.payload, "AlertProvided")
    case e: InfoProvided =>
      println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
      println(s"!!!!!!!!!! InfoProvided ${e.message}")
    case e: NoteProvided =>
      println(s"!!! NoteProvided ${e.message}")
      printPayload(e.payload, "NoteProvided")
    // ...
  }
}

When a test explicitly calls info, alert, and note...
class MySpec extends FunSpec with Payloads {
  describe("Some sort of scenario") {
    it("should check some function", SomeTag) {
      val pload: Option[String] = Some("monkeypants")
      info("anything?")
      info("-----This is something that's been passed in via the info thingy", pload)
      alert("this is an alert", pload)
      note("this is a note", pload)
      assert(1 === 1)
    }
  }
}

Then only the AlertProvided and NoteProvided events make it to the reporter:
myLaptop $ java \
    -classpath "$BASE_DIR/lib/*":"$JAR_DIR" org.scalatest.tools.Runner \
    -R "$RUN_PATHS" \
    -y org.scalatest.FunSpec \
    -C com.mycompany.utils.MyCustomReporter \
    -n com.mycompany.tags.SomeTag
Picked up _JAVA_OPTIONS: -Xmx4096m
[...]
SuiteStarting at 20190107-135140.253
!!! AlertProvided this is an alert
here is the payload: monkeypants
!!! NoteProvided this is a note
here is the payload: monkeypants
SuiteCompleted at 20190107-135150.376
[...]
myLaptop $

I've hit this as well. In my case with BeforeAndAfter. I cannot figure out how to pass values into before or after to get a workaround.  :/ .


Added a CSS line-height page to the guides

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] None of my changes are plagiarized from another source without proper attribution.
[x] My article does not contain shortened URLs or affiliate links.

Thank you for your contribution to the page! 👍
We're happy to accept these changes, and look forward to future contributions. 🎉


Possible way to perfect the automatic height adjustment

Theoretically, we could perfectly automate the height adjustment every time by iteratively generating the image in a bitmap format, checking if the first row of pixels contains any non-transparent pixels, and then shrinking the height slightly until a pixel appears (i.e. the top of any title text).
This might be quite slow for large, complicated figures if a lot of iteration is required. We also need a way to detect if the image is starting out too narrow, perhaps we can check for the presence of non-transparent pixels on the left and right sides.
Here's some starting code ChatGPT came up with.
library(magick)

# Read the image
image <- image_read("path/to/image.png")

# Extract the pixel matrix
pixels <- image_data(image)

# Check if any pixels in the first row are not transparent
first_row <- pixels[1, , ]
has_nontransparent <- any(first_row[, 4] != 0)

if (has_nontransparent) {
  print("The first row contains non-transparent pixels.")
} else {
  print("The first row is fully transparent.")
}

Another idea is to temporarily set the panel background to a non-white colour and run the same pixel detecting algorithm.


[Request] Ability to silence the startup message in chat

Greetings! Love this mod - it's solved a lot of interesting conflicts for me. My only complaint about it is that while I think the name is hysterical, the startup message loading each time I play can be a bit grating. Is there anyway to silence the welcome message?
Thanks for the hard work. This mod is a life saver!

Apologies. Just saw you wrote some instructions on how to perform this task.

Apologies. Just saw the instructions you provided.

Hey, it's all good. Totally forgot to add the link within the Mod Description going over this. In the future, I may see about implementing a simple config loading system for easier disabling of such errors but I manly didn't know at the time how to do such without including a Lib.

No problem. Your instructions worked perfectly. The mod is fantastic, it's just the name isn't great for my seven year old to see every time the game loads. Hahahahaaaaaaa
"Daddy, what's fucking?"
 And...uh... let's not go around saying that word, okay?" ;)

Honestly understand that such a title can be quite provocative in which I may within the future just calls it LMFT. I could also make sure to have Modmenu hide it as a library mod.

Ok so I added a basic config option for disabling the ingame message for 1.20.1 and censor the foul language. I may think about backporting the such within the future but idk. 6ef396921e61a1f3a9c97d3edf905fd7ff3aec39 and a0224be9bab6b86364974f9af1c93cd9df4ebdd0

Thanks! Much appreciated!


Add an option to return hashed transactions in block_with_senders

Describe the feature
currently the block_with_senders contains a footgun:
https://github.com/paradigmxyz/reth/blob/7796e574769a16154e7d3fcf2d113ab8b051a8c8/crates/storage/provider/src/providers/database/provider.rs#L1031-L1042
this is still useful, if the caller is not interested in the transaction hash, but we should make this more obvious by adding an enum Argument to the function, like
enum TranasctionKind {NoHash, WithHash}
TODO

introduce enum
add enum to function, update usage and trait function

Additional context
this is prep for #5090

Can I take this


parsed query

@seanpianka this seems to be the exact reason why we should not push commits into master directly

What is the reason?

Fine with me, although I'm not sure there's a win in ergonomics by having Option<Result<...>>.
Unrelated to this PR, what we still do not have is the support for arrays in query string.


Could not find method implementation() for arguments

FAILURE: Build failed with an exception.

Where:
Build file '/Users/kapil/Desktop/ReactNativeApplication/demoApps/qrcodecreator/node_modules/react-native-svg/android/build.gradle' line: 52

What went wrong:
A problem occurred evaluating project ':react-native-svg'.

Could not find method implementation() for arguments [com.facebook.react:react-native:+] on object of type org.gradle.api.internal.artifacts.dsl.de
pendencies.DefaultDependencyHandler.

It looks like the problem is from react-native-svg and gradle version.
Check out this issue to see if it solves your problem:
https://github.com/react-community/react-native-languages/issues/13


Connector Options

When I read a shared database  that contains multiple tables, How do I set up to determine which table the data is from?

Can I understand that you want metadata information? For example, table name?
Here is an official case:
CREATE TABLE products (
    db_name STRING METADATA FROM 'database_name' VIRTUAL,
    table_name STRING METADATA  FROM 'table_name' VIRTUAL,
    operation_ts TIMESTAMP_LTZ(3) METADATA FROM 'op_ts' VIRTUAL,
    order_id INT,
    order_date TIMESTAMP(0),
    customer_name STRING,
    price DECIMAL(10, 5),
    product_id INT,
    order_status BOOLEAN,
    PRIMARY KEY(order_id) NOT ENFORCED
) WITH (
    'connector' = 'mysql-cdc',
    'hostname' = 'localhost',
    'port' = '3306',
    'username' = 'root',
    'password' = '123456',
    'database-name' = 'mydb',
    'table-name' = 'orders'
);

For more information, refer to
MySQL CDC Connector
I hope this will help you.

Can I understand that you want metadata information? For example, table name?
Here is an official case:
CREATE TABLE products (
    db_name STRING METADATA FROM 'database_name' VIRTUAL,
    table_name STRING METADATA  FROM 'table_name' VIRTUAL,
    operation_ts TIMESTAMP_LTZ(3) METADATA FROM 'op_ts' VIRTUAL,
    order_id INT,
    order_date TIMESTAMP(0),
    customer_name STRING,
    price DECIMAL(10, 5),
    product_id INT,
    order_status BOOLEAN,
    PRIMARY KEY(order_id) NOT ENFORCED
) WITH (
    'connector' = 'mysql-cdc',
    'hostname' = 'localhost',
    'port' = '3306',
    'username' = 'root',
    'password' = '123456',
    'database-name' = 'mydb',
    'table-name' = 'orders'
);

For more information, refer to
MySQL CDC Connector
I hope this will help you.

Can I understand that you want metadata information? For example, table name?
Here is an official case:
CREATE TABLE products (
    db_name STRING METADATA FROM 'database_name' VIRTUAL,
    table_name STRING METADATA  FROM 'table_name' VIRTUAL,
    operation_ts TIMESTAMP_LTZ(3) METADATA FROM 'op_ts' VIRTUAL,
    order_id INT,
    order_date TIMESTAMP(0),
    customer_name STRING,
    price DECIMAL(10, 5),
    product_id INT,
    order_status BOOLEAN,
    PRIMARY KEY(order_id) NOT ENFORCED
) WITH (
    'connector' = 'mysql-cdc',
    'hostname' = 'localhost',
    'port' = '3306',
    'username' = 'root',
    'password' = '123456',
    'database-name' = 'mydb',
    'table-name' = 'orders'
);

For more information, refer to
MySQL CDC Connector
I hope this will help you.

Thank you very much This is what I want.In addition, can flinksql-cdc get the operator, such as '-U' '+U' '-D' '+I'

Thank you very much This is what I want.In addition, can flinksql-cdc get the operator, such as '-U' '+U' '-D' '+I'

Can I understand that you want metadata information? For example, table name?
Here is an official case:
CREATE TABLE products (
    db_name STRING METADATA FROM 'database_name' VIRTUAL,
    table_name STRING METADATA  FROM 'table_name' VIRTUAL,
    operation_ts TIMESTAMP_LTZ(3) METADATA FROM 'op_ts' VIRTUAL,
    order_id INT,
    order_date TIMESTAMP(0),
    customer_name STRING,
    price DECIMAL(10, 5),
    product_id INT,
    order_status BOOLEAN,
    PRIMARY KEY(order_id) NOT ENFORCED
) WITH (
    'connector' = 'mysql-cdc',
    'hostname' = 'localhost',
    'port' = '3306',
    'username' = 'root',
    'password' = '123456',
    'database-name' = 'mydb',
    'table-name' = 'orders'
);

For more information, refer to
MySQL CDC Connector
I hope this will help you.

Thank you very much This is what I want.In addition, can flinksql-cdc get the operator, such as '-U' '+U' '-D' '+I'

Can I understand that you want metadata information? For example, table name?
Here is an official case:
CREATE TABLE products (
    db_name STRING METADATA FROM 'database_name' VIRTUAL,
    table_name STRING METADATA  FROM 'table_name' VIRTUAL,
    operation_ts TIMESTAMP_LTZ(3) METADATA FROM 'op_ts' VIRTUAL,
    order_id INT,
    order_date TIMESTAMP(0),
    customer_name STRING,
    price DECIMAL(10, 5),
    product_id INT,
    order_status BOOLEAN,
    PRIMARY KEY(order_id) NOT ENFORCED
) WITH (
    'connector' = 'mysql-cdc',
    'hostname' = 'localhost',
    'port' = '3306',
    'username' = 'root',
    'password' = '123456',
    'database-name' = 'mydb',
    'table-name' = 'orders'
);

For more information, refer to
MySQL CDC Connector
I hope this will help you.

Thank you very much This is what I want.In addition, can flinksql-cdc get the operator, such as '-U' '+U' '-D' '+I'

+--------+ | result | +--------+ |     OK | +--------+ 1 row in set Exception in thread "main" org.apache.flink.table.api.ValidationException: Table 'MySQL-CDC' declares metadata columns, but the underlying DynamicTableSource doesn't implement the SupportsReadingMetadata interface. Therefore, metadata cannot be read from the given source. 	at org.apache.flink.table.planner.connectors.DynamicSourceUtils.validateAndApplyMetadata(DynamicSourceUtils.java:384) 	at org.apache.flink.table.planner.connectors.DynamicSourceUtils.prepareDynamicSource(DynamicSourceUtils.java:158) 	at org.apache.flink.table.planner.connectors.DynamicSourceUtils.convertSourceToRel(DynamicSourceUtils.java:119) 	at org.apache.flink.table.planner.plan.schema.CatalogSourceTable.toRel(CatalogSourceTable.java:85) 	at org.apache.calcite.sql2rel.SqlToRelConverter.toRel(SqlToRelConverter.java:3585) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertIdentifier(SqlToRelConverter.java:2507) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertFrom(SqlToRelConverter.java:2144) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertFrom(SqlToRelConverter.java:2093) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertFrom(SqlToRelConverter.java:2050) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertSelectImpl(SqlToRelConverter.java:663) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertSelect(SqlToRelConverter.java:644) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertQueryRecursive(SqlToRelConverter.java:3438) 	at org.apache.calcite.sql2rel.SqlToRelConverter.convertQuery(SqlToRelConverter.java:570) 	at org.apache.flink.table.planner.calcite.FlinkPlannerImpl.org$apache$flink$table$planner$calcite$FlinkPlannerImpl$$rel(FlinkPlannerImpl.scala:169) 	at org.apache.flink.table.planner.calcite.FlinkPlannerImpl.rel(FlinkPlannerImpl.scala:161) 	at org.apache.flink.table.planner.operations.SqlToOperationConverter.toQueryOperation(SqlToOperationConverter.java:989) 	at org.apache.flink.table.planner.operations.SqlToOperationConverter.convertSqlQuery(SqlToOperationConverter.java:958) 	at org.apache.flink.table.planner.operations.SqlToOperationConverter.convert(SqlToOperationConverter.java:283) 	at org.apache.flink.table.planner.delegation.ParserImpl.parse(ParserImpl.java:101) 	at org.apache.flink.table.api.internal.TableEnvironmentImpl.executeSql(TableEnvironmentImpl.java:724)
create ddl is ok,but a simple query has an exception for exanple select * from table

According to the document, the current SQL method does not seem to support obtaining specific operation types. You might as well create an issues? At the same time, you can try to improve it.


Add client IP properties to the Request class

Add helpers to get client's IP:
The user agent IP, which would check for:

Forwarded (RFC 7239)
X-Forwarded-For
X-Real-IP
environ[‘REMOTE_ADDR’]

And one that always just returns REMOTE_ADDR in case you really do want to know the origin of the last hop.

Cool. I could help coding (I know flask well).

[implemented]


Network not supported by registrar: no network near-testnet found on chain near

**Bug when trying to deploy near-testnet subgraph. **
About 2-3 days ago the following strangeness appeared and still exists:

Last deploy was 3 days ago, everything was good. But today happened the following:

It's very strange, as I expected support of deploying subgraphs to Hosted service untill the Q4. I am not creating new subgraph, so everything must go OK, but it doesn't(
Here's my question: is it an early halt of deploying subgraphs for Near, or just a bug?
If necessary, here's the repo of subgraph: https://github.com/NFT-Hockey/marketplace-indexer-subgraph

Do you have any updates?
I got the same problems here.

Do you have any updates? I got the same problems here.

No, still the same( I'm considering about deploying my own node... Will write here about all underwater rocks if I'll do the one

Hi! Sorry for the delay here, this was a bug which has now been resolved. Please let us know in Discord if you continue having issues with near-testnet deployments.


Allow multiple profiles to combine settings

TL;DR: Support merging multiple profiles at runtime (in the order specified) to allow more flexibility in a single configuration file

I have a complex Drupal Multisite (multiple sites and domain names from one repo) environment and need to run test with various combinations of options (url, browser, selenium source, etc) in my local development environment as well as on our servers.  Using a single static behat.yml file would require much redundancy, and creating separate bahat-VARIANT.yml files would also result in much redundancy.
What would give me the flexibility I need for running the various combinations of settings that are not currently possible with the single-profile-only behat.yml setup we have now.
This would allow running tests in this type of format:

Run tests on the MySite production site, using saucelabs for selenium:

bin/behat -p mysite -p saucelabs

Run tests on the OtherSite production site, using saucelabs for selenium::

bin/behat -p mysite_local -p saucelabs

Run tests on OtherSite, using saucelabs for selenium:

bin/behat -p othersite -p saucelabs

Run tests on the local copy of OtherSite, using local selenium

bin/behat -p othersite -p selenium

Run only IE8 tests on local copy of OtherSite (will automatically send to saucelabs)

bin/behat -p othersite_local -p ie8 --tags="@ie8"

or with compressed syntax:

bin/behat -p mysite,saucelabs,quicktests
bin/behat -p "othersite, saucelabs, quicktests
For these examples, the above commands could be used with a behat.yml like this:
# default Behat configuration profile (inherited by other profiles)
default:
  suites:
    default:
      contexts:
        - FeatureContext
        - Drupal\DrupalExtension\Context\DrupalContext
        - Drupal\DrupalExtension\Context\MinkContext
        - Drupal\DrupalExtension\Context\MessageContext
        - Drupal\DrupalExtension\Context\DrushContext
  extensions:
    Behat\MinkExtension:
      base_url: http://www.mysite.com/
      goutte: ~
      selenium2: ~
    Drupal\DrupalExtension:
      blackbox: ~

# add "-p saucelabs" to run selenium tests on saucelabs
saucelabs:
  extensions:
    Behat\MinkExtension:
      selenium2:
        wd_host<EMAIL_ADDRESS>
# add "-p selenium" to run selenium tests locally
selenium:
  extensions:
    Behat\MinkExtension:
      selenium2:
        wd_host: localhost:4444/wd/hub

# add "-p mysite" to run tests against the production web server
mysite:
  extensions:
    Behat\MinkExtension:
      base_url: http://www.mysite.com/

# add "-p mysite_local" to run tests against the local web server
mysite_local:
  extensions:
    Behat\MinkExtension:
      base_url: http://mysite.com.local/

# add "-p othersite" to run tests against the production web server
othersite:
  extensions:
    Behat\MinkExtension:
      base_url: http://www.othersite.com/

# add "-p othersite_local" to run tests against the local web server
othersite_local:
  extensions:
    Behat\MinkExtension:
      base_url: http://othersite.com.local/

# add "-p ie8" to run test on IE8
# This will automatically switch the test to Saucelabs for the IE testing
ie8:
  extensions:
    Behat\MinkExtension:
      selenium2:
        wd_host<EMAIL_ADDRESS>        browser: iexplore
        capabilities:
          name: ie8 test suite
          platform: Win7
          browser: ie
          version: 8

# add "-p ie9" to run test on IE9
# This will automatically switch the test to Saucelabs for the IE testing
ie9:
  extensions:
    Behat\MinkExtension:
      selenium2:
        wd_host<EMAIL_ADDRESS>        browser: iexplore
        capabilities:
          name: ie9 test suite
          platform: Win7
          browser: ie
          version: 9

The only way that I've been able to create similar functionality is by removing all the needed settings from the behat.yml (due to the issue described in https://github.com/Behat/Behat/pull/725) and then setting the desired options in the BEHAT_PARAMS variable, which has to be in JSON and is difficult to manage easily (esp from a shell script).

I also hope for the implementation of support multiple profiles.. We have already discussed such a possibility - https://github.com/Behat/Behat/issues/629

I have the exact same issue and would like to see the implementation of a profile array possibility. The format bin/behat -p mysite,saucelabs,quicktests seems quite natural to me.

I agree with all of you guys. Same problem here...

Use suites and profiles inheritance instead. Every profile inherits entire configuration from default, including suite. That means if you provide your entire multisite configuration in form of different suites under default, you then will be able to add custom profiles that will enable or disable particular suites on premise. Example: https://github.com/Behat/Borg/blob/master/behat.yml

I don't get it...
Take:

2 different base_urls A and B
3 browsers: X, Y and Z

How do I build up the config so I can run my tests on base_url A and on browser X?
I have 6 different profiles: 2 x 3 and this number will increase fast with more browsers/devices/...

Damned again fighting this problem!


Limit nix features

This reduces build times slightly.

We split nix up into features in the latest release, to enable reducing compile times.


Cannot read properties of null (reading 'isCE') since 3.11.0. Same code is ok on 3.10.3 and below

Environment

Operating System: Darwin
Node Version:     v20.11.0
Nuxt Version:     3.11.0
CLI Version:      3.12.0
Nitro Version:    2.9.7
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      devtools, modules
Runtime Modules<EMAIL_ADDRESS>Build Modules:    -

Reproduction
https://github.com/marcoborsoi/nuxt-monorepo-poc
Describe the bug
I have a monorepo containing a Nuxt application (nuxt-app), a lib of Vue components (shared-ui) and a Nuxt module (shared-ui-nuxt) responsible for registering shared-ui components and it's CSS in a Nuxt app. The application is deployed in Netlify.
The solution works fine until<EMAIL_ADDRESS>Since 3.11.0, a Nuxt error page with the message "500 - Cannot read properties of null (reading 'isCE')" is been displayed. The Netlify server logs shows "WARN   [Vue warn]: resolveComponent can only be used in render() or setup()."

shared-ui-nuxt was largely inspired by Vuestic Nuxt module: https://github.com/epicmaxco/vuestic-ui/tree/develop/packages/nuxt
shared-uiis a dependency of shared-ui-nuxt.
shared-ui and shared-ui-nuxt are dependencies of nuxt-app.
shared-ui exports a Vue component called VTag and it can be added to nuxt-app via shared-ui-nuxt in this way:

// libs/shared/ui-nuxt/module.ts

// `shared-ui-nuxt` contains it's own set of components in `runtime/components`. This works.
addComponentsDir({
  path: resolver.resolve('../src/runtime/components'),
  pathPrefix: false,
  global: true,
})

// This works on<EMAIL_ADDRESS>and below, but it does not work on<EMAIL_ADDRESS>and above.
addComponent({
  name: 'VSpan',
  export: 'VSpan',
  filePath: '@myorg/shared-ui',
})

shared-ui-nuxt is registered in nuxt-app:

// apps/nuxt-app/nuxt.config.ts

export default defineNuxtConfig({
  devtools: {
    enabled: true,
  },

  modules: ['@myorg/shared-ui-nuxt'],
})

Important: the issue does not occur when running in development mode neither with nuxt preview, but it fails once running in Netlify.
The reproduction link is a much simplified version of the commercial solution currently in production running on 3.10.3 (whose code I am not allowed to share unfortunately), but it shows the issue I am facing in a clearer manner. By changing Nuxt from 3.11.0 (and above) to 3.10.3 version makes the application work and we can see the VTag component exposed by the module being correctly rendered in nuxt-app.
I wonder what changed in 3.11.0 that could lead to this issue and, if I am making a mistake in the way the shared-ui components should be exposed, why it worked until 3.10.3.
Please let me know if any other information is necessary.
Thank you for your time!
Additional context
No response
Logs
// Netlify server logs:

WARN   [Vue warn]: resolveComponent can only be used in render() or setup().

Did you resolve this? Stuck as well behaviour is super weird.
I have  a module whose playground works flawlessly.
Components imported from the library work with no issues.
Components added through addComponent thro the same error as you have.
It's been two days i've been banging my head to get it to work.

Did you resolve this? Stuck as well behaviour is super weird. I have a module whose playground works flawlessly. Components imported from the library work with no issues. Components added through addComponent thro the same error as you have. It's been two days i've been banging my head to get it to work.

gianluigibitboss In the case of the monorepo I'm working on, vue and vue-router were devDependencies of the workspace along with nuxt. I only got it working after setting vue and vue-router  as dependency of the Nuxt application itself, and not to the workspace.
In the case of my project, we reviewed the monorepo structure as well and we decided to migrate all the components previously exported by the lib of pure Vue components (shared-ui) to the nuxt module itself (shared-ui-nuxt), so all the components are registered in the target Nuxt app via addComponentsDir.
I hope this can shed some light for you.

Seen this error before, most likely a subdep issue with different versions of vue. Run e.g. npx nuxi upgrade --force to refresh the lockfile.
Also see https://github.com/vuejs/core/issues/4344#issuecomment-899064501


Fix #8162 and #8173: Add root symbols to search in find all referecnes

This is a regression caused by the polymorphic this type, since all classes are now generic. Make sure to include the target symbols of any symbols we get to the search.
Fixes #8162
Fixes #8173

So this was a regression that we knew was there when we added this types, but didn't follow up on with an issue? We need to be more careful in the future.
:+1:

So this was a regression that we knew was there when we added this types, but didn't follow up on with an issue?

No. i do not think we knew about it.


upgradepackages.yml throws exception

I am getting the following error while running
ansible-playbook site.yml<EMAIL_ADDRESS>-vvvv
Error seems to  be coming from the execution of upgradepackages.yml from provision-openstack.yml
Has anyone encountered this error before ?
Thanks,
Saswat
TASK: [refresh yum cache] *****************************************************
<['<IP_ADDRESS>']> ESTABLISH CONNECTION FOR USER: centos
<['<IP_ADDRESS>']> ESTABLISH CONNECTION FOR USER: centos
<['<IP_ADDRESS>']> REMOTE_MODULE command yum makecache
<['<IP_ADDRESS>']> REMOTE_MODULE command yum makecache
fatal: [host-01] => Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py", line 582, in _executor
exec_rc = self._executor_internal(host, new_stdin)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py", line 785, in _executor_internal
return self._executor_internal_inner(host, self.module_name, self.module_args, inject, port, complex_args=complex_args)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py", line 1032, in _executor_internal_inner
result = handler.run(conn, tmp, module_name, module_args, inject, complex_args)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/action_plugins/normal.py", line 57, in run
return self.runner._execute_module(conn, tmp, module_name, module_args, inject=inject, complex_args=complex_args)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py", line 470, in _execute_module
tmp = self._make_tmp_path(conn)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py", line 1288, in _make_tmp_path
result = self._low_level_exec_command(conn, cmd, None, sudoable=False)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py", line 1169, in _low_level_exec_command
in_data=in_data)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/connection_plugins/ssh.py", line 295, in exec_command
vvv("EXEC %s" % ' '.join(ssh_cmd), host=self.host)
TypeError: sequence item 22: expected string, list found

see /etc/hosts
probably, it has been wrongly updated/merged so ansible/ssh can not resolve host names.
I saw such an issue, but it was fixed last week

this is probably caused by ansible 1.9.1
try the next solution:
1 uninstall all versions of ansible:
pip uninstall ansible
yum erase ansible
2 download and install ansible 1.8.4 using yum, from downloaded rpm
here the link ftp://ftp.sunet.se/pub/Linux/distributions/fedora/epel/7/ppc64/a/ansible-1.8.4-1.el7.noarch.rpm
3 install ansible <IP_ADDRESS> using pip

pip install ansible==<IP_ADDRESS>

4 check what you have

rpm -qa | grep ansible - should be 1.8.4
pip list | grep ansible - should be <IP_ADDRESS>

do not upgrade ansible
try deploying cluster

Kind of found the issue but not sure how to fix it  :
fatal: [host-04] => Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py",
line 582, in _executor
exec_rc = self._executor_internal(host, new_stdin)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py",
line 785, in _executor_internal
return self._executor_internal_inner(host, self.module_name,
self.module_args, inject, port, complex_args=complex_args)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py",
line 1032, in _executor_internal_inner
result = handler.run(conn, tmp, module_name, module_args, inject,
complex_args)
File
"/usr/local/lib/python2.7/dist-packages/ansible/runner/action_plugins/normal.py",
line 57, in run
return self.runner._execute_module(conn, tmp, module_name, module_args,
inject=inject, complex_args=complex_args)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py",
line 470, in _execute_module
tmp = self._make_tmp_path(conn)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py",
line 1288, in _make_tmp_path
result = self._low_level_exec_command(conn, cmd, None, sudoable=False)
File "/usr/local/lib/python2.7/dist-packages/ansible/runner/init.py",
line 1169, in _low_level_exec_command
in_data=in_data)
File
"/usr/local/lib/python2.7/dist-packages/ansible/runner/connection_plugins/ssh.py",
line 296, in exec_command
vvv("EXEC %s" % ' '.join(ssh_cmd), host=self.host)
TypeError: sequence item 22: expected string, list found
<['<IP_ADDRESS>']> ESTABLISH CONNECTION FOR USER: centos
['ssh', '-C', '-tt', '-v', '-o', 'ControlMaster=auto', '-o',
'ControlPersist=60s', '-o',
'ControlPath="/home/admin/.ansible/cp/ansible-ssh-%h-%p-%r"', '-o',
'StrictHostKeyChecking=no', '-o', 'KbdInteractiveAuthentication=no', '-o',
'PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey',
'-o', 'PasswordAuthentication=no', '-o', 'User=centos', '-o',
'ConnectTimeout=10', ['<IP_ADDRESS>'], "/bin/sh -c 'mkdir -p
$HOME/.ansible/tmp/ansible-tmp-1432066269.0-255341724299786 && chmod a+rx
$HOME/.ansible/tmp/ansible-tmp-1432066269.0-255341724299786 && echo
$HOME/.ansible/tmp/ansible-tmp-1432066269.0-255341724299786'"]
In ansible ssh.py  , there is a line that does the following :
vvv("EXEC %s" % ' '.join(ssh_cmd), host=self.host)
ssh_cmd is a list and all elements in the list should be string. I added a
print for ssh_cmd and see that host IP is a list ['<IP_ADDRESS>'] and not
a
string as it should have been .
Any idea how it becomes a list and not a string .
I manually put the entries in /etc/hosts after host provisioning is done.
Thanks,
Saswat
On Tue, May 19, 2015 at 3:18 PM, Oleh Halenok<EMAIL_ADDRESS>wrote:

this is probably caused by ansible 1.9.1
try the next solution:
1 uninstall all versions of ansible:
pip uninstall ansible
yum erase ansible
2 download and install ansible 1.8.4 using yum, from downloaded rpm
here the link
ftp://ftp.sunet.se/pub/Linux/distributions/fedora/epel/7/ppc64/a/ansible-1.8.4-1.el7.noarch.rpm
3 install ansible <IP_ADDRESS> using pip
pip install ansible==<IP_ADDRESS>
4 check what you have
rpm -qa | grep ansible - should be 1.8.4
pip list | grep ansible - should be <IP_ADDRESS>
do not upgrade ansible
try deploying cluster
—
Reply to this email directly or view it on GitHub
https://github.com/CiscoCloud/microservices-infrastructure/issues/308#issuecomment-103682792
.

reinstalling the ansible is the fix, you have the solution above

Thanks Oleh .
I have a ubuntu dev box so can't directly use the fedora epel rpm for
ansible.
BTW, If I install ansible via pip , is it not good enough ?
Do i have to also install via apt-get ?
thanks,
Saswat
On Tue, May 19, 2015 at 3:51 PM, Oleh Halenok<EMAIL_ADDRESS>wrote:

reinstalling the ansible is the fix, you have the solution above
—
Reply to this email directly or view it on GitHub
https://github.com/CiscoCloud/microservices-infrastructure/issues/308#issuecomment-103689920
.

Removing and downgrading ansible via pip seems to have fixed the problem.
Thanks,
Saswat
On Tue, May 19, 2015 at 3:57 PM, Saswat Praharaj<EMAIL_ADDRESS>wrote:

Thanks Oleh .
I have a ubuntu dev box so can't directly use the fedora epel rpm for
ansible.
BTW, If I install ansible via pip , is it not good enough ?
Do i have to also install via apt-get ?
thanks,
Saswat
On Tue, May 19, 2015 at 3:51 PM, Oleh Halenok<EMAIL_ADDRESS>wrote:

reinstalling the ansible is the fix, you have the solution above
—
Reply to this email directly or view it on GitHub
https://github.com/CiscoCloud/microservices-infrastructure/issues/308#issuecomment-103689920
.

it works for me on centos
myabe the next solution can help
1 try  to check which version you have installed using apt-get

dpkg --list | grep ansible
uninstall all of them
2 uninstall ansible using pip
3 install using pip
pip install ansible==1.8.4
4 upgrade using pip
pip install -U ansible==<IP_ADDRESS>

Thanks Oleh . That problem is resolved now .
Here is the error message.
I am running into another problem during software installation :
TASK: [common | install httpd-tools]

failed: [host-02] => {"failed": true}
msg: Error from repoquery: ['/usr/bin/repoquery', '--show-duplicates',
'--plugins', '--quiet', '-q', '--disablerepo', '', '--enablerepo', '',
'--qf', '%{name}-%{version}-%{release}.%{arch}', 'httpd-tools']: Repository
base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
Repository fasttrack is listed more than once in the configuration
Cannot find a valid baseurl for repo: base/7/x86_64
Repository base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
Repository fasttrack is listed more than once in the configuration
Could not match packages: Cannot find a valid baseurl for repo:
base/7/x86_64
I am using centos-7_x86_64-2015-01-27-v6 in CCS .
Thanks,
Saswat
On Tue, May 19, 2015 at 4:16 PM, Oleh Halenok<EMAIL_ADDRESS>wrote:

it works for me on centos
myabe the next solution can help
1 try to check which version you have installed using apt-get
dpkg --list | grep ansible
uninstall all of them
2 uninstall ansible using pip
3 install using pip
pip install ansible==1.8.4
4 upgrade using pip
pip install -U ansible==<IP_ADDRESS>
—
Reply to this email directly or view it on GitHub
https://github.com/CiscoCloud/microservices-infrastructure/issues/308#issuecomment-103694866
.


Use Great and Ultra Balls when no Poke Balls

Short Description:
I propose to use Ultra- and Great Balls when there are no Poke Balls, since I have many Great Balls being collected by the bot it might as well use them too, right :) . But I also realise we don't want to deplete them, so I set a limit of at least 20 in the stock.

I'm not sure if there's something similar with @Gary-BOT 's working.
@douglascamata should we merge ?

@solderzzc not yet, IMHO. @Gary-BOT will surprise us, as he always does.

Sounds great, let's see the wizard at work then 👍


knot-resolver: add dnstap support

Fortunately the closure increases only by 0.5 MB, so that sounds suitable to include in the defaults. Knot Resolver packages for other distros typically do have it.
Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

This has been a TODO for a long time.  Now I heard demand for it, so finally...

This has been a TODO for a long time. Now I heard demand for it, so finally...

works as excepted on aarch64-linux.