Removing testcase.py file

Description
Reverting back changes from PR #2844. We are using pytest fixtures now to solve this. Once #4180 gets merged, we can merge this as well.
Fixes # (issue)
Type of change
Please add a line in the relevant section of CHANGELOG.md to document the change (include PR #) - note reverse order of PR #s. If necessary, also add to the list of breaking changes.

[ ] New feature (non-breaking change which adds functionality)
[ ] Optimization (back-end change that speeds up the code)
[ ] Bug fix (non-breaking change which fixes an issue)

Key checklist:

[ ] No style issues: $ pre-commit run (or $ nox -s pre-commit) (see CONTRIBUTING.md for how to set this up to run automatically when committing locally, in just two lines of code)
[ ] All tests pass: $ python run-tests.py --all (or $ nox -s tests)
[ ] The documentation builds: $ python run-tests.py --doctest (or $ nox -s doctests)

You can run integration tests, unit tests, and doctests together at once, using $ python run-tests.py --quick (or $ nox -s quick).
Further checks:

[ ] Code is commented, particularly in hard-to-understand areas
[ ] Tests added that prove fix is effective or that feature works

Converting it to draft until the other PR gets merged.

@agriyakhetarpal I think this is ready to reviewed. Do let me know if I forgot anything.

Thanks, @prady0t! Have you stress-tested this locally?

Yes. I remember running it overnight. I got no errors.

Great, I ran this multiple times as well, albeit not as much as you might have. Nice work!


Initial port to Swift 4

Hi guys, I've been looking at using this library and during the process I ended up porting it over to Swift 4. Hopefully its useful as an initial port.
What's in this pull request?
Ported library to Swift 4. All tests currently pass.
Why merge this pull request?
Hopefully will give you a head start on porting over to Swift 4 when you're ready.
What's worth discussing about this pull request?
Largely, I've just pushed the conversion to Type Check and compile.
All tests pass, however I would double check the following areas:

Random.swift:341. I'm not sure what this code does, but it now makes use of multipliedReportingOverflow and addingReportingOverflow. I hope it makes use of them correctly!
I've made some assumptions. e.g. where protocols have complained about conforming to Integer, they now conform to BinaryInteger.
WitnessedArbitrary.swift:51 and WitnessedArbitrary.swift: 76. I was unable to get these methods to make these methods unambiguous. One was already returning Swift._undefined(), now the other does also. Neither seem to be covered by any tests, as It doesn't cause the test suite to fail but probably should be fixed!

Thanks! Did you look at #218 ? @Codafi also has a 4.0 port, did your implementation make different choices?
FYI -- the plan on all the typelift repos is to wait until Travis supports 3.2 and 4.0 before merging to master. We'll merge 3.2 and then 4.0 right after. We can push 4.0 support to a separate branch for now, but let me know if you've checked out #218

Look at that, #218 has already done most of this! Largely looks very similar, but likely @CodaFi has a much better idea what's going on here then I do so I'll gladly use his version instead.

Deferring to #218


Implement disposeIdentifier method

On Android there is a limit to the number of persistable URIs an app is allowed to have at once.
Apparently in Android 11 you can have up to 512, but before that it was only 128 (source).
It would be good to have a dispose method to allow removing unneeded URIs thus avoiding the limit.
I couldn't find any equivalent on iOS, so the implementation there is a noop.

I didn't realize they were limited, good to know. thanks.
Do you think it would make sense to also implement some sort of countIdentifiers, getIdentifiers or clearIdentifiers? 🤔 in case users lose track of them..

Do you think it would make sense to also implement some sort of countIdentifiers, getIdentifiers or clearIdentifiers? 🤔 in case users lose track of them..

Yes, I do think something along those lines would be reasonable.
There is an API on Android for obtaining the persisted identifiers your app has obtained: ContentResolver#getPersistedUriPermissions. This would allow implementing a method like getPersistedIdentifiers.
However I don't think such a thing exists on iOS. So for iOS the result would have to be null or empty, and that seems like a problem to me. I think it would create confusion: users might expect that they should be able to obtain a list of persisted identifiers at any time, without doing the bookkeeping themselves.
Instead I think clearPersistedIdentifiers would be better. On iOS it would be a noop; on Android it would call ContentResolver#getPersistedUriPermissions and immediately releasePersistableUriPermission.


Content overlaps progress bar on event detail layout

Progress bar is hidden by content on event detail layout.
Expected: Progress bar should be lying on top of the content.

@iamareebjamal please review


Chapter H: Consultancy 101

Whether going it on your own or growing a consultancy firm, there are decisions to be made about process and the business side of things.  This chapter will raise some of these considerations, and it will present tips and solutions along with pros and cons.  No legal advice here other than to have an attorney who understands your business draft your agreements.
Example topics:

Charging for projects (buckets of hrs; fixed pricing; hourly; rate by task or personnel skill level; retainers);
Retention of evidence (options for storing evidence for customers when a case is ongoing; charge fees? return or destroy?
Notetaking/documentation/communication/ways to securely deliver productions to clients; (tip: I always TreeSize any drive I send out to a client).
Working with partners (referral fees/subcontracting/being a sub)
Testifying and report writing
Marketing/Brand

Hey there! I'm tentatively setting 7/31/2022 as a milestone for publishing v1.0 of this book. We'll have the title decided in the next couple weeks which will be the first of multiple administrative tasks we'll complete in July. At this point, please let me know if you intend to have at least a working, editable version of your chapter by 7/31/2022.
If not, please know that's perfectly fine. It doesn't mean your chapter won't get published, it just won't get published in v1.0. It'll simply be added when it's ready to be published and I'll push out a new version of the book, (i.e., V1.3, v1.7, etc) with your new content. I hope we have about 10 ready to go by 7/31/2022 so we can push to publish v1.0 shortly thereafter, but I won't know that until I hear from you! So, please let me know!

Hey there, it's been a few months. Just wanted to check in and see how progress is going on your chapter? Whenever your chapter is ready to go, submit it to the repo, and once its reviewed it'll get published without delay! Cheers and hope you are well!


aws_security_group_this fails to create

I don't try to pass in any security groups, and just stick with what the module creates out of the box:
module "application-db" {
  source  = "terraform-aws-modules/rds-aurora/aws"
  version = "0.0.1"

  name = "${var.environment}db-tf"

  engine         = "aurora-postgresql"
  engine_version = "9.6.8"

  vpc_id = "${data.terraform_remote_state.network.qa_vpc_id}"

  subnets            = ["${data.terraform_remote_state.network.qa_vpc_private_subnets}"]
  availability_zones = ["us-east-1a", "us-east-1b", "us-east-1c"]

  replica_count                   = 1
  instance_type                   = "db.r4.large"
  storage_encrypted               = "false"
  apply_immediately               = "false"
  monitoring_interval             = 10
  db_parameter_group_name         = "default.aurora-postgresql9.6"
  db_cluster_parameter_group_name = "default.aurora-postgresql9.6"
  skip_final_snapshot             = true

  snapshot_identifier = "${var.db-snapshot}"
  username            = "${var.db-user}"
  password            = "${var.db-password}"

  tags = "${var.tags}"
}

On creation, I run into this error:
* aws_security_group.this: from_port (3306) and to_port (5432) must both be 0 to use the 'ALL' "-1" protocol!
I'm not entirely sure what changed, but this module worked a few days ago

Hi @tokiwong
It looks like you made changes to the module, so closing this issue.


CF API Protocol

for plugins to be able to access the core CF infrastructure

That is reasonably well implemented, and cool thing is that every part of the system can expose itself and describe what it exposes, etc

then start to describe it (as part of your PhD as well ;) )

I will do my best :)


Inquiry on protein annotation

phold version: 0.2.0
Python version: 3.11.9
Operating System: Ubuntu 22.04.4 LTS (GNU/Linux 5.15.0-101-generic x86_64)

Description
Hi. I I am trying to annotate viral proteins
I do not have input format (genbank file) as the output generated from Pharokka resulted from the command "pharokka_proteins.py "
Is there any way to use Pharokka output obatined from "pharokka_proteins.py "  as input for phold ?
Thanks !

Hi @songmj86 ,
Yes. You can use these 2 commands
phold proteins-predict and phold proteins-compare.
This will be equivalent to running phold predict and phold compare on a genbank/nucleotideFASTA file
George

Thanks !

I missed another question
I used the protein fasta files as inputs to run Pharokka
Identical protein fasta files are not suitible formats for the input to run Phold ??
Then, do I need to use nucleotide sequences for CDS for input to run Phold predict & compare ?
Thanks!

Hi @songmj86 ,
I am not sure what you mean but this question. Phold will accept amino acid FASTA (aka .faa) files.
George

George,
We have viral proteins instead of viral genomes, and I've tried to run proteins-predict followed by proteins-compare. Why is it so much slower than run? It's stuck on the foldseek step for days. I want to avoid run because we've already clustered our viral proteins, so doing run on the genomes would mean we have to go several steps back.

Hi @shiraz-shah
If you theoretically run the same set of proteins via run or proteins-compare, it should be identical for the foldseek step so this is surprising to me. To confirm it is the foldseek step, do you have the foldseek logs?
George

Yes. Here's a top showing that foldseek has been running for 26 hours:

Here's in ls -ltrh of the log folder:

Here's what the bottom of that log looks like:
Query database size: 629827 type: Aminoacid
Estimated memory consumption: 1G
Target database size: 372645 type: Aminoacid
Index table k-mer threshold: 78 at k-mer size 6
Index table: counting k-mers
[=================================================================] 372.64K 4s 795ms
Index table: Masked residues: 0
Index table: fill
[=================================================================] 372.64K 10s 329ms
Index statistics
Entries:          91326864
DB size:          1010 MB
Avg k-mer size:   1.426982
Top 10 k-mers
    DDDDDD	137912
    VVLVVV	128606
    SVVVVV	121636
    SVSVVV	114664
    VVSVVV	106457
    DPVVVV	105783
    LVVVVV	96573
    DDVVVV	77979
    PPVVVV	77605
    CVVVVV	75319
Time for index table init: 0h 0m 16s 267ms
Process prefiltering step 1 of 1

k-mer similarity threshold: 78
Starting prefiltering scores calculation (step 1 of 1)
Query db start 1 to 629827
Target db start 1 to 372645
[=============================================================

And here's an ls -trhof the temp_db/latest folder. This huge file is being continuously written to, it seems:
...output_phold_compare/temp_db/latest$ lt
total 78G
-rwx------ 1 bing data 4.6K Oct  1 10:42 structuresearch.sh
-rw-r--r-- 1 bing data  78G Oct  2 12:46 pref.0
-rw-r--r-- 1 bing data  15M Oct  2 12:47 pref.index.0

What do you think? Is it because foldseek is only using a single core maybe? Foldseek can't use GPU, can it? Because it isn't.

If Foldseek is using only 1 core, that would certainly explain why it is taking a while - nothing seems wrong with foldseek per se, it is running, and for sure a massive job like you have with 630k proteins means a 78G and counting prefilter file is not unexpected. Are you intentionally only using 1 core with -t 1 (assuming your machine has more)?
George

Note if you want to reduce the file size generated with the pre filter, change --max_seqs from its default of 10000 to e.g. 1000 or 500. This will slightly reduce Phold's sensitivity but also quicken its runtime.
Honestly, in this case, I'd just wait for it to finish, it should only be a few hours away is my guess.
George

Thanks for this input, George. It's very useful and appreciated. I'll wait and see!
The 1 core was not intentional. I think it's the default behavior. But maybe for run the default was different?

@gbouras13
Hi. I have a little fundamental questions
What is the reason to run both "phold proteins-predict" and "phold proteins-compare" ?
Is it because both tools seem to be used for annotation against dissimilar databases ?
Thanks

@songmj86
it it because predict requires GPU compute and compare CPU (ideally with many cores). In a cluster environment, it is much more resource efficient the split phold into 2 commands sending predict to the GPU partition and compare to the CPU.
George


Metric names are not case insensitive

What happened?
Steps to Reproduce
Create 2 metrics from the same meter with the same name differing only by case.
Expected Result
Expect that these are treated as the same metric.
Actual Result
Names are treated as separate metrics
Additional Details
OpenTelemetry Setup Code
import {metrics} from "@opentelemetry/api";
import {NodeSDK} from "@opentelemetry/sdk-node";
import {ConsoleMetricExporter, PeriodicExportingMetricReader} from "@opentelemetry/sdk-metrics";

const sdk = new NodeSDK({
    metricReader: new PeriodicExportingMetricReader({
        exporter: new ConsoleMetricExporter(),
        exportIntervalMillis: 1000,
    }),
});

sdk.start();

const meter = metrics.getMeter("repro");
const upper = meter.createCounter("COUNTER");
const lower = meter.createCounter("counter");

upper.add(1);
lower.add(2);

// keep event loop open
setInterval(() => {}, 1000);

package.json
{
  "name": "repro-case-sensitivity",
  "version": "1.0.0",
  "description": "Reproduce case sensitivity JS bug",
  "main": "index.js",
  "license": "Apache-2.0",
  "dependencies": {
    "@opentelemetry/api": "^1.4.1",
    "@opentelemetry/sdk-metrics": "^1.15.1",
    "@opentelemetry/sdk-node": "^0.41.1"
  }
}

Relevant log output
{
  descriptor: {
    name: 'COUNTER',
    type: 'COUNTER',
    description: '',
    unit: '',
    valueType: 1
  },
  dataPointType: 3,
  dataPoints: [
    { attributes: {}, startTime: [Array], endTime: [Array], value: 1 }
  ]
}
{
  descriptor: {
    name: 'counter',
    type: 'COUNTER',
    description: '',
    unit: '',
    valueType: 1
  },
  dataPointType: 3,
  dataPoints: [
    { attributes: {}, startTime: [Array], endTime: [Array], value: 2 }
  ]
}

@MrAlias you originally raised this in the spec meeting

Looks like the specification for this merged a while ago, removing waiting-for-spec.

Ah actually Issue #4057 is a duplicate of this, and was closed by PR #4059.
Closing as completed.


fix: do not parse header content-type if empty

This is a proposal fix for #1035. It avoids the error by parsing the content-type header only if its value is not null

thanks for your contribution !!!


initial task is not executed

I may be missing something here, but the initial task is completely skipped...
public class MHCTaskProvider extends TaskProvider  {

    private HashMap<String, Task> map  = new HashMap<>();

    public MHCTaskProvider(Context context){
        put(TASK_ID_INITIAL, createInitialTask(context));
        put(TASK_ID_CONSENT, ConsentTask.create(context, TASK_ID_CONSENT));
        put(TASK_ID_SIGN_IN, new SignInTask(context));
        put(TASK_ID_SIGN_UP, new SignUpTask(context));
    }

    @Override
    public Task get(String taskId) {
        return map.get(taskId);
    }

    @Override
    public void put(String id, Task task) {
        map.put(id, task);
    }

    private Task createInitialTask(Context context){
        List<Step> steps = new ArrayList<>();
        FormStep additionalInfoForm = new FormStep("MedicalInfo", "", "");
        additionalInfoForm.setStepTitle(R.string.task_inital_toolbar_title);

        //Height
        DecimalAnswerFormat heightFormat = new DecimalAnswerFormat(0, 210);
        QuestionStep heightStep = new QuestionStep("height", "Height", heightFormat);
        heightStep.setOptional(false);

        //Weight
        DecimalAnswerFormat weightFormat = new DecimalAnswerFormat(0, 150);
        QuestionStep weightStep = new QuestionStep("weight", "Weight", weightFormat);
        heightStep.setOptional(false);

        //What time do you generally wake up?
        DateAnswerFormat timeFormat = new DateAnswerFormat(AnswerFormat.DateAnswerStyle.Time);
        QuestionStep wakeupStep = new QuestionStep("wakeuptime", "What time do you generally wake up?", timeFormat);
        wakeupStep.setOptional(false);
        //What time do you generally go to sleep?
        QuestionStep sleepStep = new QuestionStep("sleeptime", "What time do you generally go to sleep?", timeFormat);
        sleepStep.setOptional(false);

        additionalInfoForm.setOptional(false);
        //additionalInfoForm.setFormSteps(heightStep, weightStep, wakeupStep, sleepStep);
        additionalInfoForm.setFormSteps(heightStep, weightStep);

        steps.add(additionalInfoForm);

        return new OrderedTask(TASK_ID_INITIAL, steps);
    }
}

Are you skipping the onboarding?

no, I am going through the whole consent and registration

The initial task is only executed once, it will never display again(for that install) after a result has been recorded. If you are trying to test out changes then do not finish the survey since thats when the result is encrypted & saved to disk. Please clear the app's data (Settings > Applications > YOUR_APP > Clear Data) and try going through the app again. It should show up again.

I un install it and then re install it. I guess this should remove data too.
I've tried with Clear Data too, but the result is the same: it goes through consent and registration and then it jumps to home screen...

if you can point me at the piece of code that actually launches the initial task I might find the problem...

I think it's in MainActivity.java, onDataReady().

all right, fixed! it was my "dummy" Data Provider messing with it.
Thanks!

I'm having the same problem.  It also happens in SampleApp -- no Initial Task.  I've stepped through the creation of the task in GlucoSuccess, and the task is being created.  But it isn't being executed.  Any ideas?

my problem was related to the DataProvider,check that isConsented, isSignedUp and isSignedIn are OK

Thanks, that worked.


Frontend

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

Please upload report for BASE (main@85e2e94). Learn more about missing BASE report.

Additional details and impacted files

@@           Coverage Diff           @@
##             main      #82   +/-   ##
=======================================
  Coverage        ?   97.46%
=======================================
  Files           ?       65
  Lines           ?     1617
  Branches        ?      158
=======================================
  Hits            ?     1576
  Misses          ?       40
  Partials        ?        1

Flag
Coverage Δ

frontend-customer
99.58% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

----
🚨 Try these New Features:

Flaky Tests Detection - Detect and resolve failed and flaky tests
JS Bundle Analysis - Avoid shipping oversized bundles


Missing border-color default

According to src/_border-colors.css:
   The base border class by default will set the color of the border
   to that of the current text color. These classes are for the cases
   where you desire for the text and border colors to be different.

If I am interpreting the comment correctly, I am finding it to be untrue for buttons:

Use the inherit class b--inherit

Awesome, thanks for the response! That does solve it in Chrome. However, in Safari, b--inherit doesn't appear to use. currentColor:

https://codepen.io/nicksaunders/pen/dyyNYLZ


Unexpected negative values in triangles

Plotting contour/contourf for the westernscheldt example model raises "ValueError: repeats may not contain negative values."
Example file and code:
import matplotlib.pyplot as plt
plt.close('all')
import xugrid as xu

file_nc = r'p:\dflowfm\maintenance\JIRA\05000-05999\05477\c103_ws_3d_fourier\DFM_OUTPUT_westerscheldt01_0subst\westerscheldt01_0subst_map.nc'

uds = xu.open_dataset(file_nc)

fig, ax = plt.subplots()
pc = uds['mesh2d_flowelem_bl'].ugrid.plot(ax=ax, linewidth=0.5, edgecolors='face', cmap='jet')
fig, ax = plt.subplots()
pc = uds['mesh2d_flowelem_bl'].ugrid.plot.contourf(ax=ax, levels=11, cmap='jet')

This is where it seems to go wrong:
https://github.com/Deltares/xugrid/blob/2125805f399b5bdb4ead59363f12f8813d9c94bf/xugrid/ugrid/connectivity.py#L402
'face_node_connectivity' contains no negative values
ncol_per_row.min() = 1
n_triangle_per_row = -1

While debugging this, I came across at least one bug with the creation of a dual grid (the centroidal voronoi tesselation) of only existing centroids (rather that also the projection of the voronoi rays with the mesh exterior edges). I've fixed that, but it doesn't solve the problem.
While trying to make a smaller example, I ran into a different issue -- which maybe points to the real issue.
This works fine:
path = "westerscheldt01_0subst_map.nc"
uds = xu.open_dataset(path)
uda = uds["mesh2d_flowelem_bl"]
uda_small = uda.ugrid.sel(x=slice(35_000.0, 45_000.0))
uda_small.ugrid.plot(cmap="viridis")

But I cannot plot the grid as a line collection:
uda_small.ugrid.grid.plot()

IndexError: index 1004 is out of bounds for axis 0 with size 1004

The reason appears to be that the edge_node_connectivity of the subselection contains higher node indexes than there are nodes in the grid. It looks like there are four additional nodes, created from two "orphan" edges.

The problem disappears if I discard the existing edge_node_connectivity array:
path = "westerscheldt01_0subst_map.nc"
ds = xr.open_dataset(path).drop_vars("mesh2d_edge_nodes")
grid = xu.Ugrid2d.from_dataset(ds)
da = ds["mesh2d_flowelem_bl"]
uda = xu.UgridDataArray(da, grid)
uda.ugrid.plot.contourf(cmap="viridis")

So this has me wondering whether there's a problem with the edge node connectivity in the dataset. Alternatively, I'm making a mistake when deriving the face edge connectivity with an existing edge node connectivity.

Took rather a lot of digging, but I found the issue:

There's a weird edge in the edge_node_connectivity, which isn't associated with any face.
fig, ax = plt.subplots()
uda.ugrid.plot(ax=ax)
grid.plot(ax=ax, edgecolor="k")
ax.set_xlim(57_000.0, 61_000.0)
ax.set_ylim(383_000.0, 387_000.0)
ax.set_aspect(1.0)

I use the face_edge_connectivity for a number of things, which requires me to derive a new edge_node_connectivity. A little additional logic is then required to preserve the old edge definition... but that only works if the old and the new match in size! I'll have a think a bit more whether I should error here (which isn't very helpful for a user), or try and salvage.

Trying to solve this internally creates a lot of headache. I've added some checking for the edge_node_connectivity now, it'll raise a ValueError stating which edges are the problem (in this case, 16640). Then, it's a relatively easy manual fix:
# Get rid of the invalid edge.
path = "westerscheldt01_0subst_map.nc"
ds = xr.open_dataset(path)
edge_select = np.full(ds.dims["mesh2d_nEdges"], True, dtype=bool)
edge_select[16640] = False
ds = ds.isel(mesh2d_nEdges=edge_select)

# Then create the UgridDataset.
uds = xu.UgridDataset(ds)
uda = uds["mesh2d_flowelem_bl"]
uda.ugrid.plot.contourf()

The resulting error upon opening the model output is "ValueError: edge_node_connectivity is invalid, the following edges are not associated with any face: [16640]". This at least shows that the mapfile is invalid and since this is the only usecase up to now, it is not necessary to implement an automatic fix. Could be reconsidered later.

One could argue that opening this dataset would result in a warning instead of an error, since most of the operations on the uds still work even if not all edges are associated with a face.
Furthermore, it would be convenient if the associated array can be requested from a dataset, so hardcoding is not necessary. For instance a check_edges_associated function that has ds as input instead of self and values like is the case in edge_node_connectivity:
https://github.com/Deltares/xugrid/blob/5d7bb9cf389ed1da3dbd8fd9a6431c4399959552/xugrid/ugrid/ugrid2d.py#L443-L453
The user can then simply use this code to properly read the dataset:
# Get rid of the invalid edge.
path = "westerscheldt01_0subst_map.nc"
ds = xr.open_dataset(path)
edge_select = xu.check_edges_associated(ds) #the edge_node_connectivity func
if not edge_select.all():
    ds = ds.isel(mesh2d_nEdges=edge_select)

# Then create the UgridDataset.
uds = xu.UgridDataset(ds)
uda = uds["mesh2d_flowelem_bl"]
uda.ugrid.plot.contourf()


[Release 1.5] Make mounted mTLS key and certs optional.

Cherrypick https://github.com/istio/istio/pull/20786 to 1.5 branch.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ X ] Security
[ ] Test and Release
[ ] User Experience
[ ] Developer Infrastructure

@myidpt: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

gencheck_istio_release-1.5
fb91dad77242114182b76cdfa0163a4d57ff58bc
link
/test gencheck_istio_release-1.5

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@myidpt: The following tests failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

gencheck_istio_release-1.5
fb91dad77242114182b76cdfa0163a4d57ff58bc
link
/test gencheck_istio_release-1.5

integ-telemetry-k8s-tests_istio_release-1.5
fb91dad77242114182b76cdfa0163a4d57ff58bc
link
/test integ-telemetry-k8s-tests_istio_release-1.5

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

Is this required for 1.5?

this is required. without this expired certificates will be mounted and in
45 days everys certs will expire and break their cluster
On Tue, Feb 11, 2020, 2:30 AM Daniel Grimm<EMAIL_ADDRESS>wrote:

Is this required for 1.5?
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/21023?email_source=notifications&email_token=AAEYGXPDPXX4KNPTGRFYKQLRCJ44LA5CNFSM4KS4CSM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELL47VA#issuecomment-584568788,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAEYGXKIUNVTE5VSWX5EBT3RCJ44LANCNFSM4KS4CSMQ
.

@dgn Can we merge this in? Thanks!

Put on hold. I need to check with @mandarjog whether we also need to take care of the MixerV1 secret volume mounts.

if you want mixer with control plane security you need citadel (is how it works now, anyways)

Unblock this PR. I will track how we can run Mixer with istiod.


[Bug] App crashes on last page of chapter

Device information
App version: 1.4.1 (standard, 4b3d92a05, 12)
Preview build: 319
Android version: 10 (SDK 29)
Android build ID: QP1A.190711.020.G975FXXS9DTI8
Device brand: samsung
Device manufacturer: samsung
Device name: beyond2
Device model: SM-G975F
Device product name: beyond2ltexx
Steps to reproduce

Open Chapter
Go to last page

Expected behavior
Nothing
Actual behavior
Chrashes
Other details
Chapters are dowloaded to the device.
Happens not with all Chapters
Seems like it does not happed with chapters recently downloaded

probably this https://github.com/tachiyomiorg/tachiyomi/commit/3df98d576ebfc183a50b6c458f655a8d272c4b7a

Not sure if its related but clicking on the add tracking button for MAL also crashes the app

Not sure if its related but clicking on the add tracking button for MAL also crashes the app

It also happens for non-downloaded chapters for me on prev 319

It also happens for non-downloaded chapters for me on prev 319

IMO it related to MAL crashes the app, maybe after last page the app try to sync with MAL. How about manga that has not synced with MAL, is it still crash?
Log_2021-01-03_04-39-46.txt

IMO it related to MAL crashes the app, maybe after last page the app try to sync with MAL. How about manga that has not synced with MAL, is it still crash?
Log_2021-01-03_04-39-46.txt

Fixed in the latest build

Fixed in the latest build

Updated to preview 322 and its still crashing.
And yes mangas with out mal link are not crashing so ot seems like ot has something to do with mal.

Updated to preview 322 and its still crashing.
And yes mangas with out mal link are not crashing so ot seems like ot has something to do with mal.

try on Tachiyomi main app preview

try on Tachiyomi main app preview

Works fine in main app preview.

Works fine in main app preview.

could you explain to me what do you mean with "main app preview"?

could you explain to me what do you mean with "main app preview"?

The preview version of the standard tachiyomi app and not the sy fork.

The preview version of the standard tachiyomi app and not the sy fork.


Added Support for AngularDart plus extensions

Fixes #1861
Changes proposed:

[X] Add
[ ] Delete
[ ] Fix
[ ] Prepare

Just added the Dart icon at the right bottom side of the current angular icons. I still provided all of them just in case. The little white line behind the Dart icon was to give it a slighty difference with the big Angular one when having same colours as happens with the ng_service one.

As @robertohuertasm mentioned here AngularDart icon is not necessary and better remove it.
The icons need adjustments to the dart icon. Specificaly, the guideline is that the icon should not pass over the horizontal line of the letter A but it extend to the bottom-right up the 'shield' outer limits.

Also to prevent future conflicts the names should be using the dart word instead of dt (i.e. ng_component_dart). The reasoning is that the file extension is dart and not dt.

Also to prevent future conflicts the names should be using the dart word instead of dt (i.e. ng_component_dart). The reasoning is that the file extension is dart and not dt.

Okay, I will rename it as soon as I get time, same goes for removing the AngularDart one :+1:

As @robertohuertasm mentioned here AngularDart icon is not necessary and better remove it.
The icons need adjustments to the dart icon. Specifically, the guideline is that the icon should not pass over the horizontal line of the letter A but it can extend to the bottom-right up to the 'shield' outer limits.

Ah, basically place it at the limits of the shield without hidding the horizontal line. Gonna try shrinking the Dart logo to see how it looks but I am afraid of it being too small to be distinguishable.

Great job @KingDarBoja with those dart icons!


Migrate JIRA WIKI to Azure DevOps WIKI

Hi All,
Can we migrate JIRA WIKI to Azure DevOps WIKI using this tool? If yes, can you please help in this.
I did not find any documentation for this. It will be helpful if someone can share the documentation for the same.

Do you mean Atlassian Confluence? If so, no, we don't support that yet.

We'll have to close this, good idea but would be a Confluence and not Jira migration tool.


Docker Apple m1

Summary
Support for Docker in tests required for Apple Silicon.
PR Type: Bug Fix
Status: Ready to review
Breaking change? Yes
Dropped support for Elasticsearch 6

Codecov Report

Merging #54 (3960154) into master (792d836) will decrease coverage by 1.08%.
The diff coverage is 66.32%.

@@            Coverage Diff             @@
##           master      #54      +/-   ##
==========================================
- Coverage   66.40%   65.32%   -1.09%
==========================================
  Files         112      116       +4
  Lines        4671     4871     +200
  Branches      241      229      -12
==========================================
+ Hits         3102     3182      +80
- Misses       1569     1689     +120

Flag
Coverage Δ

unittests
65.32% <66.32%> (-1.09%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

...om/ebiznext/comet/extractor/ExtractScriptGen.scala
54.83% <ø> (ø)

src/main/scala/com/ebiznext/comet/job/Main.scala
0.00% <0.00%> (ø)

...ext/comet/job/index/bqload/BigQueryNativeJob.scala
0.00% <0.00%> (ø)

.../scala/com/ebiznext/comet/schema/model/Types.scala
88.13% <ø> (ø)

...om/ebiznext/comet/workflow/IngestionWorkflow.scala
43.89% <0.00%> (-0.41%)
:arrow_down:

...m/ebiznext/comet/schema/generator/Yml2DDLJob.scala
30.50% <30.50%> (ø)

...a/com/ebiznext/comet/schema/model/DDLMapping.scala
46.66% <46.66%> (ø)

...la/com/ebiznext/comet/schema/model/Attribute.scala
70.87% <56.25%> (-2.99%)
:arrow_down:

...scala/com/ebiznext/comet/schema/model/Domain.scala
81.57% <72.72%> (-1.18%)
:arrow_down:

...ebiznext/comet/job/index/esload/ESLoadConfig.scala
70.96% <75.00%> (ø)

... and 25 more

Continue to review full report at Codecov.

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


error while scanning redash dashboard with non ANSI symbols in parameters with next log

Affected module
Ingestion frameworks
Describe the bug
While scanning redash dashboards with non ANSI symbols in url( in parameter).
[2022-09-26, 12:00:03 UTC] {dashboard_service.py:284} WARNING - Cannot extract dashboard details from {'id': 563, 'slug': 'ab-1234-pr', 'name': 'AB-1234 Dashboard', 'user_id': 303, 'user': {'id': 303, 'name': 'Name', 'email'<EMAIL_ADDRESS>'profile_image_url': 'https://www.gravatar.com/avatar/15c155412eaa0610b97aab6a43384bfa?s=40&d=identicon'}, 'layout': [], 'dashboard_filters_enabled': False, 'widgets': None, 'options': {}, 'is_archived': False, 'is_draft': False, 'tags': [], 'updated_at': '2022-09-20T13:13:46.744+03:00', 'created_at': '2022-09-20T12:07:32.105+03:00', 'version': 2, 'is_favorite': False}: 500 Server Error: INTERNAL SERVER ERROR for url: https://redash.internal.tech/api/dashboards/ab-1234-pr

But I guess, and addition another problen. For dashboard from log, correct url is  https://redash.internal.tech/api/dashboards/563-ab-1234-pr i.e. id plus dashboard name.
But pipeline finished successfully.
Version:

OS: ubuntu 20.04
Python version:
OpenMetadata version: 0.12.0(run with docker compose and postgres)
Redash version: 11.0.0-dev

I can request get query from only ID dashboards. Slug all response errors

Hi @mitgard we tried to ingest dashboards with names similar to 'name': 'AB-1234 Dashboard' and other names with non-ANSI symbols, we are successfully able to ingest that and not able to reproduce the issue.
Is is possible for you to give us some more details on exactly what is the name/url of your dashboard in redash that is giving the issue?
Also in the issue above you have mentioned your redash version to be 11.0.0-dev. However the latest stable version according to redash docs is 8.0.0 Can you also try with that and let us know.

@OnkarVO7 we can try to replicate with the exact same name 'Молоко. ВСД'. Worst case scenario, let's set the dashboard ID as the name and use the name as the displayName

Yes @pmbrull will try with that

hi @mitgard we might need some more details here. We were actually not able to reproduce the issue

hi @mitgard, actually I believe that the issue is on your Redash instance and not related to the Ingestion Framework of OpenMetadata.
The error you are seeing Cannot extract dashboard details from is raised when we cannot extract the dashboard details from the Redash API. I got confused here and I thought that we have some issues with the alphabet in the name, but that is proved to be fine.
The issue is that your dashboard has the slug -. You can see this from your logs 'slug': '-'. This is the data that is received from Redash directly. As the ingestion won't be stopping for these scenarios and the issue is not on the OpenMetadata side, we'll be closing this.
Thanks


Reducing noise: looking for recommendations

Hello there,
Thanks for this great TD plugin,
I am using a PTZ camera connected in NDI and I am experiencing a pretty high level of noise in the overlay rendering of tracking points.
I am looking for recommendations in order to reduce the noise without compromising too much on response time ?
I experimented with a Guassian and One Euro filter CHOP but didn't achieve satisfying results.
Thanks in advance!

Hi @domisjustanumber,
I am experiencing some noise in the pose_tracking model

Ahh yeah, the single person pose tracking is pretty solid, but multi-person is extremely noisy. I already added a One Euro filter to the output, and it does help a lot (and is specifically designed for this sort of low-latency smoothing), but the underlying AI model is just not very good for multi-person tracking.
For my last project I ended up using RTMO instead. It's extremely good for multi-person tracking (2D, no hands or feet), but the learning curve to get it running is... steep. If you are very comfortable with Python programming, I can give you some pointers, but it's not an easy task.

Thanks for this but I am still working on developing my python capabilities...
I am actually experiencing some noise with the single person pose tracking.
For my current project, I am trying to move a PTZ camera to keep a single point of interest (torso for example) in the center of the frame. I am getting closer to sucessfully achieve my objective but the noise is causing the camera to never fully stabilize on the target as the tracking point never really stops moving.

Ahh I understand what you're doing now. It's beyond the scope of MediaPipe, but in that case I'd suggest a lag CHOP to heavily smooth out the tracking data and/or some kind of threshold system so the camera only moves if there's more than x amount of change in the value for more than y amount of time. Depending on your use case, the PTZ camera probably doesn't need to be super responsive and/or you might be able to shoot a wider shot so the camera doesn't need to be as responsive.
RTMO... eh maybe? It's a Python library, so needs an entirely different pipeline/integration than MediaPipe. It (and a number of other machine vision libraries) do some really cool things, so it would be nice to find a way to integrate them, so we shall see how much time I have to play haha

I'll try adding a lag CHOP and see how it improves my system. I'll keep you posted.
I'm also comparing with the Nvidia Body Track CHOP and seeing which one is more relevant for my application.
Thanks again for the help and for this awesome free TD plugin!

You're more than welcome, and good luck! I'd love to see what you come up with too!


Handle max pagination

Description:
Handle max pagination

throw on max page
update tests

Related issue(s):
Fixes #1343
Notes for reviewer:

Checklist

[ ] Documented (Code comments, README, etc.)
[x] Tested (unit, integration, etc.)

Codecov Report
Patch coverage: 100.00% and project coverage change: +0.10 :tada:

Comparison is base (1d09ca3) 75.83% compared to head (1c9fb53) 75.93%.

:exclamation: Current head 1c9fb53 differs from pull request most recent head b499342. Consider uploading reports for the commit b499342 to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1344      +/-   ##
==========================================
+ Coverage   75.83%   75.93%   +0.10%
==========================================
  Files          32       32
  Lines        2458     2460       +2
  Branches      498      499       +1
==========================================
+ Hits         1864     1868       +4
+ Misses        435      431       -4
- Partials      159      161       +2

Impacted Files
Coverage Δ

packages/relay/src/lib/clients/mirrorNodeClient.ts
88.92% <100.00%> (+0.06%)
:arrow_up:

... and 1 file with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Fix formatting issues with CurrencyConverter and some locales

Fixes #240 and #232
The ViewModel wrongly assumed that non-breaking spaces were only used between the value and the symbol. It's not the case of all locales using non-breaking spaces as a thousand delimiter (French for example).
When it was the case, the function only replaced the first thousand delimiter found and kept the extra space at the end of the string, generating 2 issues:

Extra space at the end: https://github.com/Microsoft/calculator/issues/240
Bad formatting of the number: https://github.com/Microsoft/calculator/issues/232

Description of the changes:
Replace currencyResult.find(L'\u00a0') by a regex only removing spaces at the end of the string.
Screenshots
Before:

After:

Thanks @rudyhuyn :+1:

Closing and re-opening to try and fix the PR build.

@mcooley - Something odd is going on with the CI pipeline here.  Any chance you can take a look?


Satisfactory Deticated Servers

A template for installing and running the new official satisfactory servers

More info at the Wiki

use the Startup from the .sh as startcmd. No need to chmod x it in every start

We still need the chmod +x on the first run thought - Do you think I should I do that in the install command instead?

We still need the chmod +x on the first run though - Do you think I should I do that in the install command instead?

Yes.
Also a new problem has emerged in the Linux version! Server fails to bind port (and to run) without setting -multihome=<IP_ADDRESS> as a launch parametre due to some new IPv6 stuff. Could also add as a variable defaulting to <IP_ADDRESS> in case someone needs to modify it.

Oh your right, I will add support for the new features later today

Stopping the server now works and I fixed the other things you guys mentioned

Is anyone else still having issues with starting the server? I get:
DAEMON  Starting container
Refusing to run with the root privileges.
DAEMON  Running post-execution steps

Is anyone else still having issues with starting the server? I get:
DAEMON Starting container Refusing to run with the root privileges. DAEMON Running post-execution steps

I am running into the same issue.


Fix exif orientation

I misunderstood the test images, rotation was not applied automatically by image crate

tif still not working


Add support for phx-value-*

Related to #330.
Discussion about the name of the prop is still open. Options so far are:

values
event_values
events_values

Please let me know if you have any other suggestions and which option you prefer.

I like just values over event_values and events_values.
phx_values would be my more explicit suggestion, if we wanted to go in that direction.

@miguel-s we'll eventually have to create a related :values directive to be able to do the same thing for HTML tags since we don't use attributes to do that in regular HTML nodes, only directives.
Do you think it would be confusing to users to have both values and :values? If so, is there any alternative? I can't see any so I believe we'll have to provide both and make sure we document clear enough that values is just a custom property defined some of the built-in components (not a general use prop that can be used anywhere) and :values, a directive that applies only to HTML elements.
Thoughts?

@msaraiva for this specific case I think we should go ahead. It mirrors how we handle events currently (e.g. :on-click & click).
However, the difference between props and directives seems to be of the more common questions for new Surface users.
For example a common question I see is: Why does <Button :on-click="foo" /> not work?

@harmon25 thanks for adding your voice.
In Surface we try to avoid the phx prefix, e.g. phx-click (LiveView) and :on-click (Surface).

However, the difference between props and directives seems to be a common question for new Surface users.
For example a common question I see is: Why does <Button :on-click="foo" /> not work?

Agreed. We should probably do a better job with the docs.


Update Migration.md

Added links and note about restarting Unity.  This partially addresses #333 but more work is needed.

:tada: This PR is included in version 1.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


commands: download_results: add command to download test results

$ export SQUAD_HOST=https://qa-reports.linaro.org/
$ export SQUAD_TOKEN=<token>
$ ./manage.py \
    download-results \
    --group "lkft" \
    --project "linux-stable-rc-linux-5.19.y" \
    --build v5.19.4
[INFO] Downloading test results for lkft/linux-stable-rc-linux-5.19.y/v5.19.4/(all envs)/(all suites) to v5.19.4.txt

$ time ./manage.py \
    download-results \
    --group "lkft" \
    --project "linux-stable-rc-linux-5.19.y" \
    --build v5.19.3
[INFO] Downloading test results for lkft/linux-stable-rc-linux-5.19.y/v5.19.3/(all envs)/(all suites) to v5.19.3.txt

real	2m16.585s
user	0m4.447s
sys	0m0.187s

$ diff -u v5.19.3.txt v5.19.4.txt > diff.txt

Files v5.19.3.txt and v5.19.4.txt contain all tests of these two builds, and diff'ing them gets you diff.txt.
Note that the diff is huge because how test-names for tuxsuite tests are always different (this is a problem for later).
Daniel, this is far from looking good in squad UI, but at least it can get your builds compared with reasonable waiting time (~5min to download tests for both builds)

You don't need to set "export SQUAD_TOKEN=" only for private builds right?


[Feature Request] History Print View

Would be awesome to be able to print a consolidated view of the service, repairs, upgrades that have been made to the vehicle. Sort of like a CarFax history section.

this is currently being worked on :)

This is now ready for test if you pull the latest docker image down, navigate to the Reports tab and Press the "Generate and Print Vehicle Maintenance Record" button. The reason why it gets sent to printing is because

It can take quite a long time to generate
The amount of elements on the page would be pretty huge and it can potentially slow the page down.
Sending it to print means you get to Print it as PDF and keep for your own records.

Feature delivered, closed.


Move bootstrap modal to toolbar to fix swiftype search

Move search modal implementation from .org to global toolbar
Remove old global search implementation
Add jquery dependency

Used in .org https://github.com/silverstripeltd/silverstripe.org/pull/143 and docs https://github.com/silverstripe/doc.silverstripe.org/pull/188

This breaks the docs.silverstripe.org and userhelp.silverstripe.org websites, since they both have DocumentationHead.ss templates which reference the SearchBox template removed in this PR

@robbieaverill WIP PR for userhelp https://github.com/silverstripe/userhelp.silverstripe.org/pull/87, this will just need to be updated once toolbar is merged

Additional PR for merging to master (SS4) https://github.com/silverstripe/silverstripe-globaltoolbar/pull/50 - is this what you meant?
Updated addons.silverstripe.org with search modal (draft PR awaiting toolbar merge) https://github.com/silverstripe/addons.silverstripe.org/pull/247


rough filter UI

Reviewers:

[ ] @sihrc

What's the purpose of the PR?

(I think card got archived)
This is to add filtering to the demo in terms of both source of data and the time period being collected. It seems that a bunch aren't being filtered by date on elastic search's side so will need to check that out. Also allows for tweaking of filtering and DBScan settings so that the user can tweak to suit their query.
Description of changes
(Meta note: the what code was changed part of this might be a little redundant with all the diffs below)
A quick explanation of the stuff unrelated to filtering:
__init__.py messing with the the keywords stuff for better titles,
clusterer.py tweaking granularity of steps in DBScan epsilon,
Most everything else is related to filtering, might be some small UI tweaks, CSS stuff.
Notes to reviewers

Keep in mind while reviewing code:

Is relevant code tested?
Are added functions/methods documented?
Separation of concerns (SOC)
Don't repeat yourself (DRY)
Limit the number of positional arguments
Is function/method length reasonable?
Can code be broken down into smaller components?
Where do added functions/methods belong?
Are variable names descriptive?
Are errors handled appropriately?
Can logic be simplified?
Does the code make sense in context? (expand the diff)

We should add a preliminary integration test that tests a query we know the outcome for with some kind of heuristic. It would make checking the results of this much more efficient.

We need tests for the changes to the client.py. There are existing tests.


Update README with details for setting Media3 version.

Updates the README with details on how to specify the Media3 version being used, independent of the Mux Data SDK version.

Thank you very much for your contribution @skidder!


lndclient: expose new option to recv the block w/ a conf ntfn

In order to not break all the other callers, we opt to more or less copy
over the functional options added on the lnd side of things. We would be
able to just use the existing opts, but the includeBlock field is
private (as it should be imo).

Switched to target the lnd-16-0 branch.

Ok it should be on the proper branch now. Still needs the lnd PR to land before this can.

@roasbeef, remember to re-request review from reviewers when ready

Can be rebased and updated now that https://github.com/lightningnetwork/lnd/pull/6730 is merged.

PR is now full rebased!


Q: beautiful chart, created by tool or ps?

I noticed the charts in the readme are very intuitive and beautiful, wonder how were they created ;-)

Thanks! Glad you like them!
We had a short answer for that on Spectrum ✨ I made them in Sketch https://spectrum.chat/urql/general/random-question~9babf416-a648-40a3-a2e2-5b9587012101
Maybe I’ll post the sketch file here later if I remember 👍


Increase default updatetime to 1000

Closes #21
Vim version is 7.4 (see vim --version)
I tested the problem on a fresh docker container with fresh vim installation with the mentioned minimal .vimrc in issue #21  and found that system files completion with <C-x><C-f> breaks because the default update time is so small (200ms), if you press the combination quickly enough, you might manage to get the desired behavior.
That's why I suggest to increase the default updatetime to 1000.
Still a workaround for issue #21 would be to set:
let g:auto_save_no_updatetime = 1

in .vimrc so the system default updatetime=4000 is maintained.
@907th please advise.

@ammarnajjar Thank you for taking time to investigate it!
PS. May be the plugin should not make any changes to updatetime by default at all.

I agree. updatetime is used by many other plugins and vim itself. The user should decide what he wants to do with it. Especially since it is not even a necessary config for vim-auto-save depending on which events users choose to configure their auto-save triggers. I will make some pull requests hopefully today, that suggest a modified default behavior.


Why does async fetching makes mods crash when no internet connection?

Your Question
For example this error:
19:09:33 DEBUG [Main] [Geode]:     Adding sheet uproxide.more_difficulties/MD_DifficultySheet
19:09:33 DEBUG [stderr]: [2024-06-18 19:09:33] [info] asio async_resolve error: asio.system:11001 (No such host is known.)
19:09:33 DEBUG [stderr]: [2024-06-18 19:09:33] [info] Error getting remote endpoint: asio.system:10009 (The file handle supplied is not valid.)
19:09:33 DEBUG [stderr]: [2024-06-18 19:09:33] [info] asio async_shutdown error: asio.system:10009 (The file handle supplied is not valid.)
19:09:33 DEBUG [stderr]: [2024-06-18 19:09:33] [error] handle_connect error: No such host is known.
19:09:35 DEBUG [stderr]: [2024-06-18 19:09:35] [info] asio async_resolve error: asio.system:11001 (No such host is known.)
19:09:35 DEBUG [stderr]: [2024-06-18 19:09:35] [info] Error getting remote endpoint: asio.system:10009 (The file handle supplied is not valid.)
19:09:35 DEBUG [stderr]: [2024-06-18 19:09:35] [info] asio async_shutdown error: asio.system:10009 (The file handle supplied is not valid.)
19:09:35 DEBUG [stderr]: [2024-06-18 19:09:35] [error] handle_connect error: No such host is known.
19:09:35 DEBUG [stderr]: libpng warning: iCCP: known incorrect sRGB profile
19:09:35 DEBUG [stderr]: libpng warning: iCCP: known incorrect sRGB profile
19:09:35 DEBUG [stderr]: libpng warning: iCCP: known incorrect sRGB profile
19:09:35 DEBUG [stderr]: libpng warning: iCCP: known incorrect sRGB profile
19:09:35 INFO  [Main] [Misc Bugfixes]: Fetching important notices from: https://geometrydash.eu/mods/miscbugfixes/_api/importantNotices/?platform=Windows&version=v1.2.0-beta.1&loader=v3.0.0-beta.1&wine=&os=Windows%2010.0.22631
19:09:35 DEBUG [Main] [Misc Bugfixes]: Loading song browser lag fix
19:09:35 DEBUG [Thread #11712] [Misc Bugfixes]: Started populating downloaded songs cache
19:09:35 INFO  [Main] [Misc Bugfixes]: Adjusted collected orbs by: 0 (165668 -> 165668)

Is made because async can't connect to a host when there's no internet connection available. Is this a mod problem or bad handle of exceptions?

geode does not use asio, but gdutils does

Any plan to fix it in the future?

nothing we can do about someone else's mod

Oh right, sorry for bothering.

you can report the bug to jouca / fire

Bug officially now fixed.


Dot Code School Suggestion: Feedback for Section 2 - Chapter 3: Interacting with Balances

The example codes showed for set_balances and balances functions in the instruction are correct in the next Chapter but they seem not correct here.

Already been mentioned in previous open issues.


[32] Show dynamic pages

Changes in this PR

PagePresenter added for rendering in view/pages/show

 Show dynamic pages


Add diff command using OpenAI JSON function call

This adds a diff function, which returns proposed changes in JSON format. In the example below, GPT suggested a single change, a second request is likely to push it to also give a pair_hash implementation.
% g++ -x c++ `./tests/anonymizer.py tests/c++/missing-hash.cpp` |& cwhy --llm gpt-4 --max-context=10 diff
{
  "diff": {
    "modifications": [
      {
        "filename": "/tmp/tmpxibfgyeh",
        "start-line-number": 13,
        "number-lines-remove": 1,
        "replacement": "std::unordered_set<std::pair<int, int>, pair_hash> visited;"
      }
    ]
  }
}

It also adds a test runner for this new command, that essentially tries to apply modifications recursively until the code compiles or some max tree depth is reached. Successive errors are not kept in context: each GPT request is sent as if it was the first one.
% python3 tests/runner-diff.py C++ missing-hash.cpp
============================ CWhy Test Runner ============================
LLM              : gpt-4
Timeout          : 180
Iterations       : 10
Max retries      : 5
Benchmark        : C++/missing-hash.cpp
==========================================================================
Trying to repair missing-hash.cpp (/tmp/tmpkbi0wfgg)...
Failed after 5 retries. Total tokens used per retry: [3493, 3492, 3223, 632, 864]
Trying to repair missing-hash.cpp (/tmp/tmpyg5mz2sh)...
Failed after 5 retries. Total tokens used per retry: [3483, 3042, 3578, 1001, 558]
Trying to repair missing-hash.cpp (/tmp/tmpdhmh9i1h)...
Failed after 5 retries. Total tokens used per retry: [3493, 689, 1060, 828, 1373]
Trying to repair missing-hash.cpp (/tmp/tmpn7x1prt2)...
Success in 1 retries! Total tokens used per retry: [3620]
Trying to repair missing-hash.cpp (/tmp/tmpfx17tava)...
Failed after 5 retries. Total tokens used per retry: [3467, 3622, 1181, 4928, 883]
Trying to repair missing-hash.cpp (/tmp/tmpgu5godhv)...
Failed after 5 retries. Total tokens used per retry: [3596, 1109, 1578, 1920, 553]
Trying to repair missing-hash.cpp (/tmp/tmplcl4a4f3)...
Success in 3 retries! Total tokens used per retry: [3645, 304, 259]
Trying to repair missing-hash.cpp (/tmp/tmp5q2kymdv)...
Success in 1 retries! Total tokens used per retry: [3592]
Trying to repair missing-hash.cpp (/tmp/tmproxu_zg7)...
Success in 1 retries! Total tokens used per retry: [3621]
Trying to repair missing-hash.cpp (/tmp/tmpea3cehav)...
Success in 1 retries! Total tokens used per retry: [3590]

C++/missing-hash.cpp success rate: 50.00%

The current max retries default is 5, I've seen successful runs in up to 4 retries (3 retries in sample output above). It is typically pretty clear for the human eye when GPT is lost for a given tree, not sure if there is any way to detect these cases and exit early.
For the missing-hash example that I've been experimenting with, failures typically happen because:

GPT tries to convert the set to a map.
GPT tries to use Boost.
GPT alters code too much and is not capable to recover (braces issues, off-by-one line numbers)
line numbers are wrong.

It seems to do well with the Python example, failures coming from indentation (also the reason for a lot of 2 retries instead of 1). Maybe we can do something about that.
% python3 tests/runner-diff.py Python concatenate-str-to-int.py
============================ CWhy Test Runner ============================
LLM              : gpt-4
Timeout          : 180
Iterations       : 10
Max retries      : 5
Benchmark        : Python/concatenate-str-to-int.py
==========================================================================
Trying to repair concatenate-str-to-int.py (/tmp/tmpnvd_pwwh)...
Success in 2 retries! Total tokens used per retry: [321, 222]
Trying to repair concatenate-str-to-int.py (/tmp/tmp1g7zjm1w)...
Success in 2 retries! Total tokens used per retry: [329, 226]
Trying to repair concatenate-str-to-int.py (/tmp/tmp1zmrclxw)...
Failed after 5 retries. Total tokens used per retry: [325, 224, 211, 222, 222]
Trying to repair concatenate-str-to-int.py (/tmp/tmpjwsobezo)...
Success in 2 retries! Total tokens used per retry: [321, 222]
Trying to repair concatenate-str-to-int.py (/tmp/tmp1vykp2tb)...
Success in 2 retries! Total tokens used per retry: [321, 222]
Trying to repair concatenate-str-to-int.py (/tmp/tmpnsfmy39g)...
Success in 2 retries! Total tokens used per retry: [321, 222]
Trying to repair concatenate-str-to-int.py (/tmp/tmpbtprjz36)...
Success in 2 retries! Total tokens used per retry: [323, 226]
Trying to repair concatenate-str-to-int.py (/tmp/tmpv95awox3)...
Success in 2 retries! Total tokens used per retry: [321, 222]
Trying to repair concatenate-str-to-int.py (/tmp/tmpytv0fs6r)...
Success in 2 retries! Total tokens used per retry: [327, 228]
Trying to repair concatenate-str-to-int.py (/tmp/tmpz8ze9xf3)...
Success in 2 retries! Total tokens used per retry: [325, 224]

Python/concatenate-str-to-int.py success rate: 90.00%


Candidate should have election restart timeout

In the unlikely event that no candidate receives the majority vote for a given term, the candidates should timeout and start a new election. Currently there is no timeout, so eventually all servers in the cluster would transition to the Candidate state for the same term and get stuck.

Relatedly, beginElection sets a timeout, but Candidate does not listen for StateTimeout messages, so the timeout would never be caught (if I'm reading things correctly). Even if that is fixed, the timeout would still need to be reset on a Candidate->Candidate transition in case multiple elections fail.

I think Candidate did previously catch timeouts correctly [here], but you're right that it did not reset them properly on the Candidate -> Candidate transition after multiple elections fail.
For what it's worth, I have a (non-pull-request-worthy) fix for this issue here:
https://github.com/NetSys/sts2-applications/commit/55e6077e6c9294b797e597c6701ff2f0e8907f6c


[x265] Update to version 3.5

[x] Changes comply with the maintainer guide
[x] SHA512s are updated for each updated download
[x] The "supports" clause reflects platforms that may be fixed by this new version
[x] Any fixed CI baseline entries are removed from that file.
[x] Any patches that are no longer applied are deleted from the port's directory.
[x] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[x] Only one version is added to each modified port's versions file.

Pinging @0xC0000054 for response. Is work still being done for this PR?

Is work still being done for this PR?

No, it is done.
I am not sure why the automated builds are failing, the x64-windows target was working when I tested it locally.

/azp run

I am not sure why the automated builds are failing, the x64-windows target was working when I tested it locally.

I also test passed locally. I installed x265:x64-windows.

Proposed fix for the windows issue in https://github.com/0xC0000054/vcpkg/pull/1:
Do not rely on hg or git being available to determine the version.

I would create another PR with your changes.

#35531


WIP: Add new types QuStateVec and QuDensityMatrix.

This adds two new types QuStateVec (for state vectors/wave functions) and QuDensityMatrix (for density matrices). I am not sure we want/need the former, but since I had implemented it anyways I include it here.
Two new functions, populations and purity, are defined, which return the occupation probability and the purity, respectively. I also added trace and sqrtm for AbstractQuMatrix.
Tests are missing so far.

I'm not sure what QuStateVec gives us that we don't already have with QuVector. Likewise with this implementation of QuDensityMatrix and QuMatrix. Why not just define the functions you provided here on directly on AbstractQuVector and AbstractQuMatrix?
My assumption was that we were going to have a QuDensityMatrix as a lazy construction, with the ability to convert to a full matrix if desired. In fact, I vote we have a lazy construction for outer products in general:
immutable QuOuter{B,K<:AbstractQuVector, B<:DualVector} <: AbstractQuMatrix{B}
   ket::K
   bra::B
   # this relies on a generalized CTranspose type
   QuDensity(ket::AbstractQuVector{B}, bra::DualVector{B}) = new(state)
end

And then define getindex as something like:
getindex(qo::QuOuter, i, j) = qo.ket[i] * qo.bra[j]

And then we define things like size and trace accordingly. This would allow for quick lazy construction of outer products and density matrices for common cases like the partial trace, where most uses will want to enter something like
julia> ptrace(ψ*ψ', 1) # trace out the first subsystem

e.g., a calculation that only takes the outer product once and does not require repeated access to the resulting elements.
We can overload full to take the eager outer product, and then define things like
setindex!(::QuOuter, i...) = error("QuOuter is an immutable representation of an outer product of states. Mutating functions can only be called on mutable representations, which can be obtained using full(::QuOuter)."

Anyway, I was gonna tackle #31 today, then move on to making a PR that defines the above stuff, but it seems like that PR would be competing with this one. Thoughts on the above?

Yeah, I am not sure about QuStateVec, but I think some sort of density matrix type is useful/necessary. Firstly, note that your QuOuter only covers pure states. A general (mixed) state is a sum of outer products (which I also would like to support in some way; this connects to the density matrix decompositions I mentioned in #7). Secondly, the norm of a density matrix is (unfortunately) defined by the trace not the matrix dot product (although that is probably only a minor point). The question is if we want to have a distinction between states and operators? Purity, populations, fidelity and so on only make sense for states and typically one treats states and operators differently (for example, the time evolution is different), so it might make sense to be able to dispatch on states?
Independent of that, I think your suggestions regarding a lazy outer product sound like a great idea and there is probably no conflict with this PR.

I was thinking whether we could have something like this
type QuDensityMatrix
            prob::Array{Float64,1}
            state::QuStateVec
            QuDensityMatrix(prob::Array{Float64,1}, state::QuStateVec) = new(prob, state)
end

QuDensityMatrix(qa::QuDensityMatrix) = QuMatrix(#summation_of_states_outerproduct given by coeffs(qa.prob * qa.StateVec))

I guess using this we could even fix conversion of state to density matrix using this. Please do let me know if I am missing something on this.

Firstly, note that your QuOuter only covers pure states. A general (mixed) state is a sum of outer products (which I also would like to support in some way; this connects to the density matrix decompositions I mentioned in #7).

What I'm saying is that we already have a type which explicitly covers this behavior: QuMatrix. So, following the example I gave above, ptrace(ψ*ψ', 1) would return a QuMatrix. Any decompositions you might want to define on QuDensityMatrix are also definable on QuMatrix. I also think, API-wise, it would be strange not to define them this way - everything you'd want to define on QuDensityMatrix should be defined on QuMatrix as well, since not doing so would likely be confusing to the end-user (e.g.  At that point, the only effect of having a QuDensityMatrix type at all is to have the obligation to maintain more conversion rules.

Secondly, the norm of a density matrix is (unfortunately) defined by the trace not the matrix dot product (although that is probably only a minor point).

...and the trace over a QuOuter can be defined as:
function trace(qo::QuOuter)
   over =  min(size(qo, 1), size(qo, 2))
   return sum(i -> getindex(qo, i, i), 1:over)
end

Purity, populations, fidelity and so on only make sense for states and typically one treats states and operators differently (for example, the time evolution is different), so it might make sense to be able to dispatch on states?

The point, I think, is that any AbstractQuVector can act like and be considered a state (with CTranspose indicating it's dual). Any AbstractQuMatrix can act like and can be considered an operator (with CTranspose indicating it's adjoint). I can't think of any reason to implement types that, mechanically, are the exact same as the type we already have, which covers all of these cases and can be dispatched on just as easily (using AbstractQuVector and AbstractQuMatrix).

@amitjamadagni If I understand the type you gave (which I might not, correct me if I'm wrong), it is equivalent to an outer product of pure states - states that can be straightforwardly represented as a superposition of other states (e.g., a QuVector), are always pure. Thus, it couldn't be used to represent a mixed state (e.g. a reduced density matrix), which is more general and lacks the cartesian product structure you get with a simple outer product of states.

@acroy I may have misinterpreted the intent of your statement about the norm being defined by the trace - so you're saying we'd have conflicting definitions for norm for a QuMatrix if we use QuMatrix for density operators?

@acroy Also, an addendum to this statement:

Any AbstractQuMatrix can act like and can be considered an operator (with CTranspose indicating it's adjoint).

The way I've been thinking of it is that a density operator does represent a state, but what it is is an operator.
So, re-reading your comment, your claim is that there will be functions for which we want a different definition for QuMatrix than for QuDensityMatrix (e.g. norm)? If that is the case, I think a list of such functions would be really beneficial (even if they don't necessarily get implemented immediately).

@jrevels : I basically agree with what you say and, in particular, I would also like to avoid redundant types. Unfortunately, states (= density matrices) and operators do not always behave in the same way. The first example is norm, like you noticed above for operators (=QuMatrix) one uses trace(qa'*qa) (which is consistent with the inner product for operators), but for density matrices one uses trace(dm). The second example is (unitary) time evolution. If U=expm(-im*H*t) then dm(t)=U*dm(0)*U' for density matrices and o(t) = U'*o(0)*U for operators.
But we could also just use the trace norm for operators as well and accept the inconsistency with the inner product. However, I am still wondering if it would be convenient in some cases to say that an argument has to be a density matrix/state (like for propagation)?

@jrevels I have been thinking on [these] (http://en.wikipedia.org/wiki/Density_matrix#Pure_and_mixed_states) lines. Like given the probability and states we have the summation over the product of respective probabilities of the states and the outer products of the states.

Hmm. I've normally thought of the density matrix as a representation of an operator describing an ensemble of states, rather than a representation of a state in and of itself, but I guess that both concepts are equally valid when referring to mixed states. The separate time evolution behavior makes sense to me after looking at a derivation from the Von Neumann equation. I couldn't find anything on defining the norm to be the square root of the trace, but it makes sense to me if the diagonal elements of the matrix are correspond to the probability amplitudes for the basis states.
That brings up the point: Is it feasible that one would actually want to treat a density matrix as an operator or a state, given the context of different calculations? For example, would a user ever want to take the traditional Frobenius norm for the density operator, rather than the norm of the state that operator describes?
If so, it might make more sense to distinguish the behavior on a functional level (e.g. statenorm vs. norm) rather than on the type level. Or, having types that capture each behavior (QuDensityState, QuDensityOp).
Anyway, this PR makes a bit more sense to me now, thanks for your patience.
@amitjamadagni So the type you listed represents the sum (mixing Julia notation and math)  ∑ prob[i] * | i >< i |? This could only work in the case where the off-diagonal elements of the matrix are zero, i.e., there are no coherences in the mixed state.

I've normally thought of the density matrix as a representation of an operator describing an ensemble of states, rather than a representation of a state in and of itself

I think this is actually a pretty subtle point, which touches the ontology of density matrices and state vectors. Some consider the latter as fundamental, while others argue for the opposite. Fortunately we don't have to decide this here :-)

Is it feasible that one would actually want to treat a density matrix as an operator or a state, given the context of different calculations?

Good question. One certainly wants the DM to be an operator in most situations, just for some (interpretation related) questions one needs special behavior. The issue with norm is only minor I would say, after all there is vecnorm and norm(A,p) in Base, so statenorm or such is probably reasonable. I think the question is, whether we want to distinguish between the concepts "state" and "operator" and reflect this by different subtypes. I always thought this is useful, but I can see now that this might cause confusion.
Regarding Amit's suggestion: the sum is like you say, but |i> is actually an eigenstate of some density matrix. His proposal corresponds basically to the Eigen type returned by eigfact. This kind of decomposition can be really useful for Monte-Carlo like calculations.

After being absent from QuBase.jl for a while, I'm fairly convinced that traits are the correct way to do this. As we've already discussed, density matrices can be treated like states or operators depending on context. Thus, density matrix could be defined as a subtype of an AbstractQuMatrix that supports both a QuState interface and a QuOperator interface.


Fix demo scripts

Description:

We removed cors in a previous PR, but kept  the code in server.js
Added *.swp to gitignore as it can still exists in some cases
Added extra_hosts in docker-compose for Linux users. (Would need to verify that this works on Mac)
Fix paths to clinc-dummy as we changed the location not too long ago.

Fixes #41
Fixes #43
Checklist:
You should check all boxes before the PR is ready. If a box does not apply, check it to acknowledge
it.

[x] PRE-COMMIT. You ran pre-commit on all commits, or else, you
ran pre-commit run --all-files at the end.
[x] FRONTEND TYPES. Regenerate the front-ent types if you played with types and routes.
Run cd webapp && yarn types while the back-end is running.
[x] USER CHANGES. The changes are added to CHANGELOG.md and the documentation, if they impact
our users.
[x] DEV CHANGES.

Update the documentation if this PR changes how to develop/launch on the app.
Update the README files and our wiki for any big design decisions, if relevant.
Add unit tests, docstrings, typing and comments for complex sections.

LGTM - I'll let @JosephMarinier review the cors part.

Perfect @gabegma, thank you! I reached out to Fred to discuss the implications.

reverted the cors code, but readded cors as a dependency


make displayed values a controlled prop

Hi!
thanks for the lib! One question: I'm using InputField and find it not ideal that the value of the entered text is stored in the state of the component and it is therefore possible for it to drift away from the value that is in my state object.
More specifically: I have my state object that contains the value that the text field should display. Say I render the textfield with value={this.state.value} (renders ok) then I change the value somewhere else which triggers a re-render. The InputField will ignore this new value. What I can do is use the setValue but I believe that goes against React.
So my question is - is it feasible to remove the value from state altogether (?), or alternatively implement componentWillReceiveProps? It doesn't seem difficult to get rid of it, looking at the code.
This might apply to other components too.
edit: so I tried both (getting rid of it & componentWillReceiveProps) and they seem to work both with no problem.

I'm completely pro componentWillReceiveProps, because for some users is fundamental to set values in the fields programmatically.
This behavior it's allowed in react and the internal state of the component is handled correctly.
I'm going to do a new release with this and other changes.
If you have any other suggestion I'm more than happy to help.
Thank you.


Edit documentation for AABB and Rect2.

Also ran -doctool.

BTW, I also changed vecor into vecTor as I missed it from the last commit.


GROOVY-8525: Binary compatibility issue for GroovyClassLoader between…

… 2.4 vs later branches

see #679


Can we make Node optional in NewSession ?

Hi,
When creating a new session through the Session API, the Node name is mandatory in NewSession.
def createSession(newSession: NewSession, dc: Option[String] = None, token: Option[String] = None): F[Result[SessionId]]

final case class NewSession(
  Node: String, //Mandatory
  LockDelay: String,
  Name: Option[String] = None,
  ID: Option[String] = None,
  Checks: Option[List[String]] = Some(List("serfHealth")),
  Behavior: SessionBehavior = SessionBehavior.Release,
  TTL: Option[String] = None
)

The Consul API does not require this as mandatory and it can be excluded, such that the requests is submitted to the cluster as opposed to a specific node.
Would be possible to make Node optional in NewSession?

final case class NewSession(
  Node: Option[String], //Optional
  LockDelay: String,
  Name: Option[String] = None,
  ID: Option[String] = None,
  Checks: Option[List[String]] = Some(List("serfHealth")),
  Behavior: SessionBehavior = SessionBehavior.Release,
  TTL: Option[String] = None
)

I'm happy to submit a PR to update this, if this change is acceptable.

@ssahayam-zd Hi!
Good catch, thank you. Happy to merge a fix.

I just wanted to say that this is an amazingly fast turnaround time for reviewing + merging + releasing this PR.
Thank you so much! 🥇


URL PATH REGEX improved to match any link

Changing URL regex in order to match when link have a special charactere such as ( . , = ( + $ ! * ) right before a  /
Fixed Issues
#6216
Tests

Enter the chat.
Type any URL.
Verify the URL is autolinked.

Screenshot

QA

Enter the chat any URL(specially with special charactere before a /), it must match with the new regex and be autolinked.

I had to change a little bit the regex in order to have a . or , in the end of an URL like:
https://test.com. <--- . in the end not included in the link, also, i've added an unit test.
Now I think its ok for merging, just need your approval @pecanoro


Resolves #192

Description

Resolves #192
What does your PR belong to?

[ ] Website
[X] Snippets
[ ] General / Things regarding the repository (like CI Integration)

Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[X] Enhancement (non-breaking improvement of a snippet)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[X] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[X] I have checked that the changes are working properly
[X] I have checked that there isn't any PR doing the same
[X] I have read the CONTRIBUTING document.

Like I already mentioned under #192, there is a chance we might remove this snippet as it is natively implemented. Until we figure this out, it would be better not to make any changes to the snippet as they might get deleted altogether.


Mac OS X -> macOS

Very minor.
https://www.wired.com/2016/06/apple-os-x-dead-long-live-macos/

Doh! Thanks for catching this for us and contributing back!
Hope to see more PRs from ya in the future!!


Deferred serialisation/deserialisation of block header in Ping messages

Drafted for now, pending some testing.
Edit: seems to work well on testnet 2, would be good to benchmark this as a follow-up.

Rebased.


Update Ubuntu images packages more frequently and/or run "sudo apt update && sudo apt upgrade" as part of job setup

Description
Recently, I observed the following job failures on Ubuntu 18.04:
https://github.com/qbittorrent/qBittorrent/runs/1220463176?check_suite_focus=true
https://github.com/qbittorrent/qBittorrent/pull/12086/checks?check_run_id=1220615532
At first I thought it was a spurious error, but then I realized that the true cause was outdated packages/package lists.
My solution was to add sudo apt update && sudo apt upgrade before anything else is done:
https://github.com/qbittorrent/qBittorrent/pull/13480/checks?check_run_id=1220719732
This solved the problem, but I noticed it also increased the CI time quite considerably, because a ton of packages had to be upgraded. So I would suggest either, or both:

Updating the packages in the Ubuntu images more frequently, so that sudo apt update && sudo apt upgrade executes faster.
Running the aforementioned commands as part of the job setup, because it has to be done anyway.

Area for Triage:
Packages
Question, Bug, or Feature?:
Bug
Virtual environments affected

[ ] macOS 10.15
[x] Ubuntu 16.04 LTS
[x] Ubuntu 18.04 LTS
[x] Ubuntu 20.04 LTS
[ ] Windows Server 2016 R2
[ ] Windows Server 2019

Expected behavior
Packages/package lists in the image are up to date.
Actual behavior
They're not, one has to manually update them as part of the job.
Repro steps
See example runs linked above.

Hello, @FranciscoPombal
Currently, it's impossible to run sudo apt update && sudo apt upgrade on every agents as part of pre-build step, because it would affect timing for 100% of ubuntu pipelines and create unpredictable behavior after upgrade. I don't think it's right approach to update the whole system using sudo apt upgrade. You should always use sudo apt update before running apt-get install to update packages cache and update only particular packages what you use in your CI.

@al-cheb
Thanks for the answer. If a full upgrade as part of the pre-build step is out of the question, what about just the sudo apt update? Seems reasonable, since this is something everyone should/will be doing anyway.
And what about increasing the frequency of the image upgrades, or making sure they contain a more updated package base?

@al-cheb
Thanks for the answer. If a full upgrade as part of the pre-build step is out of the question, what about just the sudo apt update? Seems reasonable, since this is something everyone should/will be doing anyway.
And what about increasing the frequency of the image upgrades, or making sure they contain a more updated package base?

Currently, we deploy a new image once a week or two, but sometimes external factors block a deployment and there is nothing we can do from our side.

sudo apt update - it would affect 100% builds and most of them don't use apt install at all, thus wasting agent time resources, that's why we don't include it as a pre-build step.

@FranciscoPombal, I will let you know if we have any updates in this direction.

Here's a more recent example. This one fails because Ubuntu removed a supposedly insecure package from http://security.ubuntu.com/ubuntu . If Ubuntu had not removed it, the build would have passed... with an insecure package.
https://github.com/thesofproject/sof-test/pull/584/checks
Get:15 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 python3-olefile all 0.46-2 [33.7 kB]
Ign:16 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-pil amd64 7.0.0-4ubuntu0.1
Get:17 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-tk amd64 3.8.5-1~20.04.1 [103 kB]
Get:18 http://azure.archive.ubuntu.com/ubuntu focal/universe amd64 python3-scipy amd64 1.3.3-3build1 [11.1 MB]
Err:16 http://security.ubuntu.com/ubuntu focal-updates/main amd64 python3-pil amd64 7.0.0-4ubuntu0.1
  404  Not Found [IP: <IP_ADDRESS> 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/p/pillow/python3-pil_7.0.0-4ubuntu0.1_amd64.deb  404  Not Found [IP: <IP_ADDRESS> 80]
Fetched 15.2 MB in 1s (21.1 MB/s)
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Available at http://security.ubuntu.com/ubuntu/ubuntu/pool/main/p/pillow/ right now: python3-pil_7.0.0-4ubuntu0.2_amd64.deb (and many others)

Here's a more recent example. This one fails because Ubuntu removed a supposedly insecure package from http://security.ubuntu.com/ubuntu . If Ubuntu had not removed it, the build would have passed... with an insecure package.
https://github.com/thesofproject/sof-test/pull/584/checks
Get:15 http://azure.archive.ubuntu.com/ubuntu focal/main amd64 python3-olefile all 0.46-2 [33.7 kB]
Ign:16 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-pil amd64 7.0.0-4ubuntu0.1
Get:17 http://azure.archive.ubuntu.com/ubuntu focal-updates/main amd64 python3-tk amd64 3.8.5-1~20.04.1 [103 kB]
Get:18 http://azure.archive.ubuntu.com/ubuntu focal/universe amd64 python3-scipy amd64 1.3.3-3build1 [11.1 MB]
Err:16 http://security.ubuntu.com/ubuntu focal-updates/main amd64 python3-pil amd64 7.0.0-4ubuntu0.1
  404  Not Found [IP: <IP_ADDRESS> 80]
E: Failed to fetch http://security.ubuntu.com/ubuntu/pool/main/p/pillow/python3-pil_7.0.0-4ubuntu0.1_amd64.deb  404  Not Found [IP: <IP_ADDRESS> 80]
Fetched 15.2 MB in 1s (21.1 MB/s)
E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

Available at http://security.ubuntu.com/ubuntu/ubuntu/pool/main/p/pillow/ right now: python3-pil_7.0.0-4ubuntu0.2_amd64.deb (and many others)

After the python3-pil_7.0.0-4ubuntu0.1_amd64.deb example above, here's the new broken link of the day:
http://security.ubuntu.com/ubuntu/pool/main/o/openjdk-lts/openjdk-11-jre_<IP_ADDRESS>+1-0ubuntu1~20.04_amd64.deb  MISSING
(upgraded to openjdk-11-jre_11.0.9+10-0ubuntu1_amd64)

Currently, we deploy a new image once a week or two, but sometimes external factors block a deployment and there is nothing we can do from our side.

I understand deploying a new apt UPGRADEd image requires significant validation time. On the other hand you could and should provide images that have already been apt UPDATEd images at least a couple times a day - exactly like all "normal" Ubuntu systems.

sudo apt update - it would affect 100% builds and most of them don't use apt install at all, thus wasting agent time resources, that's why we don't include it as a pre-build step.

 I'm asking for github to provide images where the package index has already been apt updated ONCE for everyone. This requires zero validation because the package index does not affect functionality at all (unless you actually use the package index - but then you obviously don't want one with broken links)
By holding on to an obsolete package index with broken links to security.ubuntu.com, you're forcing every user who wants to install a couple extra packages to start with apt update which wastes "agent time resources" = exactly what you're trying to avoid.
@al-cheb we need to either re-open this issue or file a more specific one.

@marc-hb , the current behavior is by design and it is not something that we are planning to change in future.
After image generation, image state is frozen (snapshot is generated) and applied to all VMs. After running builds, machine is reverted to the snapshot. We don’t modify image state somehow after image-generation, running such updates before each build will make image a bit different for every build, which reduces image reliability.
We regenerate images and redeploy VMs on weekly basis and it means that apt package index can be 1 week old.
If you install any apt packages in runtime, you should run apt update as a part of your build.

Thanks @maxim-lobanov for the prompt answer and clarification, really appreciated.

We don’t modify image state somehow after image-generation, running such updates before each build will make image a bit different for every build, which reduces image ~reliability~ determinism.

I totally understand the logic but as far as the package index is concerned this is not a correct statement. A more recent package index does not make the build different / less deterministic because it has no effect unless you actually use it to download software. In that latter case you can forget about determinism anyway because only the latest index works:

If you install any apt packages in runtime, you should run apt update as a part of your build.

Sad but understood. Please document this, maybe at
https://docs.github.com/en/actions/reference/specifications-for-github-hosted-runners ?
BTW the following example does not have any "apt update": https://docs.github.com/en/actions/learn-github-actions/migrating-from-circleci-to-github-actions#complete-example

cc: @AlenaSviridenko what do you think about adding information about it in image documentation or GH docs?

@al-cheb , @maxim-lobanov , @AlenaSviridenko please  help document this important and problematic apt-get update requirement that it is not required on regular Ubuntu systems. Unlike github images, regular Ubuntu systems  update their indexes in the background:
https://askubuntu.com/questions/1139545/how-do-i-utterly-stop-automatic-update-checks-in-ubuntu-19-04
Regularly updating package indexes in the background allows Ubuntu to remove (insecure) packages from servers after some time without breaking apt-get install
Let me know whether  I should file a new documentation issue different from this one.
It's an important requirement because builds randomly fail without apt-get update. It's a problematic and non-intuitive requirement because it's not required on regular Ubuntu systems and wastes time and resources in every build when it could be done once for all in the system image itself. I mean apt-get update, NOT apt-get upgrade - the latter and only the latter would affect determinism.

Since when Ubuntu "server edition" updates indexes automatically? I've never heard of such thing. There is only unattended upgrades option which derives from Debian.
I think you are confusing server version with desktop version of Ubuntu.

# dpkg -s update-notifier-common

Description: Files shared between update-notifier and other packages
 Apt setup files and reboot notification scripts shared between
 update-notifier and other packages, NOTABLY FOR SERVER USE CASES.

$ ssh any_ubuntu_system

Welcome to Ubuntu 20.04.2 LTS (GNU/Linux 5.10.0-rc1-sof+ x86_64)

X updates can be installed immediately.
Y of these updates are security updates.

Outside extremely strict control of network usage (clearly not servers), there is simply no reason not to run apt-get update in the background.

Ubuntu's "server edition" should not even matter anyway. I don't know which particular Ubuntu edition (if any) the github virtual environment is based on but after github customization[*], the default package selection should not be specialized for server-side development and fortunately it does not look like it is.
[*] https://github.com/actions/virtual-environments/blob/main/images/linux/Ubuntu2004-README.md

@marc-hb , Totally makes sense to me. I will take about updating GH documentation.
@marc-hb , if you prefer - could you please log an issue in this repository just to track this work?

Thanks  @maxim-lobanov , I filed #2924


Issues when training with polish characters

When I create Dataset for polish language and import it to app my metadata file removes all polish characters (ł,ś,ć,ż,ź,ą,ę,ó,ń alphabet file includes all of them). I tried adding polish characters by myself but when i'm trying to train following error occurs: 'utf-8' codec can't decode byte 0xbf in position 40: invalid start byte.

I downloaded Notepad++ and changed format to UTF-8 and it worked.


Support reference-typed handles in C++ wasm particles.

This does not update Kotlin or provide support for Reference schema fields.

This also doesn't have any batch dereferencing support, which may be something quite useful to have.


Song Request fails periodically

Song request fails periodically, returning undefined (or probably undefined values, hard to tell via SAMMI atm).
Current guess is that it fails on a token refresh.

Solved by https://github.com/jspaulsen/spotify-extension/commit/3ac5cb8a7d00c61c1f3bb2dc4927946662aef98b


.Net: Support OpenAI 2.0.0-beta.12 and Azure OpenAI 2.0.0-beta.6

Motivation and Context
New beta releases of the OpenAI and Azure OpenAI packages are available, with breaking changes within those libraries and System.ClientModel. This change allows the repository and downstream customers to use the latest features from these libraries. It also pins the beta versions of these libraries, preventing issues similar to those raised in #8956 and #8525, reducing noise for maintainers.
Description

Pins OpenAI and Azure OpenAI packages to fixed beta releases so that the NuGet constraint is now == rather than >=, avoiding issues with beta releases and breaking changes.
Removes the explicit dependency on System.ClientModel, as the GA v1.1.0 release is now required by the OpenAI libraries and introduces additional breaking changes compared to beta-7.
Updates code to handle the removal of an implicit operator from beta-7, which means strings cannot be passed into method signatures requiring ApiKeyCredential. Instead of changing the API surface to accept strings, ApiKeyCredential objects are created where needed, as downstream users will also need to do. This approach keeps the API design consistent and avoids exposing a "stringly" typed API.
Updated breaking change calls with corresponding new property and method names. Code was updated where needed to pass in ApiKeyCredentials instead of string keys.

Contribution Checklist

[x] The code builds clean without any errors or warnings.
[x] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[x] Unit tests pass, except for ItShouldDisableAutoInvocationIfMaximumInflightAutoInvocationLimitReachedAsync, which is failing due to a pre-existing stack overflow issue also present in main.
[x] No explicit breaking changes in this PR, but downstream users may need to address breaking changes in ApiKeyCredential from System.ClientModel.

@daverant please read the following Contributor License Agreement(CLA). If you agree with the CLA, please reply with the following information.
@microsoft-github-policy-service agree [company="{your company}"]

Options:

(default - no company specified) I have sole ownership of intellectual property rights to my Submissions and I am not making Submissions in the course of work for my employer.

@microsoft-github-policy-service agree

(when company given) I am making Submissions in the course of work for my employer (or my employer has intellectual property rights in my Submissions by contract or applicable law). I have permission from my employer to make Submissions and enter into this Agreement on behalf of my employer. By signing below, the defined term “You” includes me and my employer.

@microsoft-github-policy-service agree company="Microsoft"

Contributor License Agreement

@microsoft-github-policy-service agree

@daverant Thank you very much for looking into this at full power 😊!
Will review your PR soon. Thanks!

ItShouldDisableAutoInvocationIfMaximumInflightAutoInvocationLimitReachedAsync

I'll get on those test failures, hadn't caught those with ItShouldDisableAutoInvocationIfMaximumInflightAutoInvocationLimitReachedAsync crashing the test runner 👌

All unit tests are passing now, just this subset of integration tests are failing that I don't have environments to test with.

Integration Tests Passed LGTM

Sweet, thanks for the assistance with the integration bits @RogerBarreto @markwallace-microsoft!

https://github.com/microsoft/semantic-kernel/issues/8956#issuecomment-2395560826
Nothing is solved