Add support for the managedBy field

What you would like to be added?
The support for the managedBy field which can delegate reconciliation from built-in controller, to a custom one.
The semantics of the field are:

whenever the value is set, and it does not point to the built-in operator, then skip reconciliation
the field is immutable
the field is not defaulted

Why is this needed?
For context, we have in Kueue the effort (see Support Kubeflow Jobs in MultiKueue) to support kubeflow-training (it will include MPIJob), but it will not be complete without the support for managedBy.
The complete support for the users of MultiKueue (multi-cluster Kueue) means:

simpler installation (just follow the standard installation path), otherwise only installation of kubeflow CRDs is required
support for mixed setup in the cluster - some Jobs could be run by MultiKueue and some by the default operator in the same cluster

For context, the efforts to support the field in:

k8s Job (alpha)
JobSet (complete)

Love this feature?
Give it a 👍 We prioritize the features with most 👍

/cc @andreyvelich @tenzen-y
Would you be willing to consider this feature still in v1?

For xreference of with support for MPIJob: https://github.com/kubeflow/mpi-operator/issues/646

Thank you for creating this @mimowo!
Let's discuss this during our next AutoML and Training WG call this Wednesday at 5pm UTC: https://bit.ly/2PWVCkV

I believe the implementation could follow the JobSet example. These are the key bits:

In the JobSet managedBy implementations, the basic status transitions are guarded by the batch/v1 Job status validations.
But, since the kubeflow TrainJobs v1 is not guarded by any validations due to controlling naked Pod.
So, I would propose the following 2 approaches:

Implement the status transition validations similar to batch/v1 Job so that we can disallow violated status transitions from external controllers. Because the managedBy field allows external controllers to reconcile/manage the Kubeflow Jobs.
Restrict the acceptable managedBy values to either kubflow.org/training-operator or kueue.x-k8s.io/multikueue. And then, after we find some use cases to specify the arbitrary values in the managedBy field, we can relax the validations.

TBH, I would propose opt 2 since I can not find any use cases so that the arbitrary external controller needs to reconcile/control the kubeflow Jobs.

I'm also in favor of (2.) to simplify the code.

I agree on the 2nd approach given that we will migrate to TrainJob in the future versions.
@tenzen-y do we need to allow user to set kubflow.org/training-operator in managedBy field ?
I guess, if managedBy is empty the OSS Training Operator controller will reconcile the training job.

I assumed that the training operator defaulter mutate it to the kubeflow.org/training-operator when the Kubeflow Jobs don't have any managedBy values.
So, there is no impact on the existing users.

I see, do we have the same logic for batchv1/job ?

In JobSet we don't default the value to the jobset-controller. In the batch/Job it is not defaulted either (we leave null, meaning default). However, to make it future compatible, and to allow some users to express the intent better, we reserve one value for the default controller.
If we want consistency with Job, then, we reserve kubflow.org/tf-operator, but we can simplify here and only support two values: null (default), or multi-kueue.

Uhm, that makes sense. If so, can we allow the training-operator to reconcile against the Jobs with an empty or kubeflow.org/training-operator managedBy field so that we align with Job and JobSet?

/assign
I have consulted with @mimowo, and I will be responsible for the implementation and the support in Kueue.

I saw that the managedBy PR has been merged, thank you for doing this @mszadkow @mimowo 🎉
Please can you add a new user guide on how to use managedBy in the Kubeflow website https://www.kubeflow.org/docs/components/training/user-guides/.
If we have some docs under Kueue, we can also reference them.

Since we restrict for now the field only to multikueue or built-in controller, the documentation in Kubeflow should probably be focused on MultiKueue (maybe just briefly mention what the field does, and reference the MutliKueue page).
For the docs in Kueue the only challenge is that it would need to reference dev (from master) installation of the training-operator, until the official release, but I think it would be a nice starting point I would suggest.

I have opened the issue to capture the docs extension at the Kueue side: https://github.com/kubernetes-sigs/kueue/issues/3121

Since we restrict for now the field only to multikueue or built-in controller, the documentation in Kubeflow should probably be short and focused on MultiKueue (maybe just briefly mention what the field does, and reference the MutliKueue page).

I agree with you, but even the reference would be useful.

For the docs in Kueue the only challenge is that it would need to reference dev (from master) installation of the training-operator, until the official release, but I think it would be a nice starting point I would suggest.

Let's create pending PR in the kubeflow/website and merge it when we release this feature.

Sounds like a plan:

a docs PR in Kueue showing how to use training-operator (master for now) with ManagedBy (we need to note clearly this is only for master version, for released version there is another way - only install CRDs), https://github.com/kubernetes-sigs/kueue/issues/3121
a docs PR in kubeflow/website referencing the MultiKueue documentation
once training-operator is released a small PR in Kueue to use the released version rather than master

I synced with @mszadkow who will follow up on the steps.

@mszadkow investigated this a bit more and it turns out that we cannot use master version of the training-operator with Kueue (point 1 of the plan), because Kueue requires to see the field to operate properly, but we don't want to compile Kueue against unreleased training-operator. So, for now, the docs would be just confusing to end users.
Since the spec.runPolicy.managedBy field is only supported for MultiKueue I think we can defer the documentation until we have:

the next release of the training-operator,
version of Kueue (not necessarily released yet, might be from the main branch) which allows to use it

I could open an issue in kubeflow to add the documentation page once the above conditions are met. WDYT @andreyvelich @tenzen-y?

Sure, opened: https://github.com/kubeflow/training-operator/issues/2279

@mszadkow investigated this a bit more and it turns out that we cannot use master version of the training-operator with Kueue (point 1 of the plan), because Kueue requires to see the field to operate properly, but we don't want to compile Kueue against unreleased training-operator. So, for now, the docs would be just confusing to end users.
Since the spec.runPolicy.managedBy field is only supported for MultiKueue I think we can defer the documentation until we have:

the next release of the training-operator,
version of Kueue (not necessarily released yet, might be from the main branch) which allows to use it

I could open an issue in kubeflow to add the documentation page once the above conditions are met. WDYT @andreyvelich @tenzen-y?

I discussed this with @mimowo offline, and we agreed with this decision based on Kueue policies. We may aim to contain the training-operator managedBy feature once the traininig-operator RC version is in the future. But that is not guaranteed.


Deallocate prepared statements

Description
Implement a common method in each database connector to destroy the prepared query when we're done with it
Cf Issue codeigniter4/CodeIgniter4#1256 : TODO Deallocate prepared statements
To closes a prepared statement :

MySQLi have mysqli_stmt_close()
https://www.php.net/manual/en/mysqli-stmt.close.php
OCI8 have oci_free_statement()
https://www.php.net/manual/en/function.oci-free-statement.php
Postgre does not have a specific PHP function for deleting a prepared statement,
the SQL DEALLOCATE statement can be used for that purpose :
https://www.php.net/manual/en/function.pg-prepare.php
https://www.postgresql.org/docs/8.1/sql-deallocate.html
SQLite3 have SQLite3Stmt::close()
https://www.php.net/manual/en/sqlite3stmt.close.php
SQLSRV have sqlsrv_free_stmt()
https://www.php.net/manual/en/function.sqlsrv-free-stmt.php

Checklist:

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

Thank you for contribution!
This is not a bug fix, so this should go to 4.3 branch.
See https://github.com/codeigniter4/CodeIgniter4/blob/develop/contributing/workflow.md#if-you-sent-to-the-wrong-branch

@kenjis that's done, I've rebased the PR to 4.3 branch

@fpoy There are four commits made by Paul and me. Please drop them.
You can do it with git rebase.
See https://github.com/codeigniter4/CodeIgniter4/blob/develop/contributing/workflow.md#updating-your-branch

@fpoy There are four commits made by Paul and me. Please drop them. You can do it with git rebase. See https://github.com/codeigniter4/CodeIgniter4/blob/develop/contributing/workflow.md#updating-your-branch

@kenjis it's done, there are only my commits left on the branch...

Thank you. The commits are okay.

We need the documentation. Please add changelog.
If possible, please reduce rather than increase phpstan-baseline.neon.dist.

The documentation on this subject already exists
What should be added to it ?

in user_guide_src/source/database/queries/020.php
$error = $pQuery->close();

Would that be sufficient ?

Please add about this enhancement in the Enhancements section:
https://github.com/codeigniter4/CodeIgniter4/blob/4.3/user_guide_src/source/changelogs/v4.3.0.rst#database

The documentation on this subject already exists
What should be added to it ?

https://codeigniter4.github.io/CodeIgniter4/database/queries.html#close
It seems the  close() method does nothing with some DBMS before this PR.
How about adding the note for it?
Something like this:

Since v4.3.0, the close() method deallocates the prepared query in all DBMS. In previous versions, the prepared query was not deallocated in xxx and xxx.

LGMT
The only thing is you might add to the test to check that the statement is actually cleared. For MySQL:
SHOW GLOBAL STATUS LIKE '%prepared_stmt_count%';
# 0

SQLITE https://www.sqlite.org/c3ref/stmt_status.html
Postgres https://www.postgresql.org/docs/current/view-pg-prepared-statements.html

Please rebase to resolve the conflict.


Fix #2553 - automatically convert closure to callback for component properties

Description
I added three functions to facilitate passing closures to component properties of type Callback. As noted in #2553, the documentation implies that this functionality already exists.
Fixes #2553
Checklist

[x] I have run cargo make pr-flow
[x] I have reviewed my own code
[x] I have added tests

Thanks, also for adding test cases. The build failure is probably due to mismatching error reporting from macro outputs, where an additional "the following implementations were found" line is shown. You can check this by heeding the advice from the failing build:

note: If the actual output is the correct output you can bless it by rerunning
your test with the environment variable TRYBUILD=overwrite

on your local machine, and see what changes would be committed to the respective, expected .stderr files. Then add those changes to the PR and we'll proceed.

I've tried the following, but none of them produce any diff in the repository. I searched for mismatch in the output, but didn't find it.
$ TRYBUILD=overwrite cargo make tests
$ TRYBUILD=overwrite cargo test --all-targets --workspace --exclude website-test
$ TRYBUILD=overwrite cargo make pr-flow


connecting in Swift project not working

in swift project i had got error 400201 user not found right on connecting with my credentials.
otherwise in obj-c project is everything ok with connecting with the same credentials (userId, userName, App ID)

i mean projects which placed in this repo, both

@ichina 400201(error not found in database) error occurs when the user is not created ever before. I think it is not only for swift. Can you check your test user id and application id in the swift project?


use label marker for distance and closeness features

distance feature now has a two arguments version, allowing
the user to explicitly specify label or field
extend closeness feature the same ways as distance feature
add unit test for NNS closeness

I confirm that this contribution is made under the terms of the license found in the root directory of this repository's source tree and that I have the authority necessary to make this contribution on behalf of its copyright owner.
as discussed earlier today.
@geirst please review
@havardpe FYI
system test must be updated when merging this, i have the changes ready and will make PR.

will merge after factory is green.


Support placeholders without shape in build_raw_serving_input_receiver_fn

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Yes, a small demo.
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Debian-based Linux distribution.
Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device: N/A
TensorFlow installed from (source or binary): Binary
TensorFlow version (use command below): v1.9.0-0-g25c197e023 1.9.0
Python version: 3.5.3
Bazel version (if compiling from source): N/A
GCC/Compiler version (if compiling from source): N/A
CUDA/cuDNN version: N/A
GPU model and memory: N/A
Exact command to reproduce: N/A

Describe the problem
tf.estimator.export.build_raw_serving_input_receiver_fn crashes on tf.placeholders that do not have a shape specified.
Source code / logs
Below is a minimal demo that causes the crash:
# Attempts to learn x+y.

import tensorflow as tf

def input_fn():
  x = tf.random_uniform(shape=[1])
  y = tf.random_uniform(shape=[1])
  return {'x': x, 'y': y}, tf.add(x, y)

def main(_):
  estimator = tf.estimator.LinearRegressor([
      tf.contrib.layers.real_valued_column('x'),
      tf.contrib.layers.real_valued_column('y'),
  ])

  train_spec = tf.estimator.TrainSpec(input_fn)

  phs = { 'x': tf.placeholder(tf.float32), 'y': tf.placeholder(tf.float32) }
  #receiver_fn = lambda: tf.estimator.export.ServingInputReceiver(phs, phs)
  receiver_fn = tf.estimator.export.build_raw_serving_input_receiver_fn(phs)

  eval_spec = tf.estimator.EvalSpec(
      input_fn,
      exporters=[tf.estimator.LatestExporter('latest', receiver_fn)]
  )

  tf.estimator.train_and_evaluate(estimator, train_spec, eval_spec)

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

Attempting to execute this code produces the following error and stacktrace (after 10mins, when model export is attempted):
  File "bug_demo.py", line 26, in main
    tf.estimator.train_and_evaluate(estimator, train_spec, eval_spec)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/training.py", line 447, in train_and_evaluate
    return executor.run()
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/training.py", line 531, in run
    return self.run_local()
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/training.py", line 681, in run_local
    eval_result, export_results = evaluator.evaluate_and_export()
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/training.py", line 898, in evaluate_and_export
    is_the_final_export)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/training.py", line 931, in _export_eval_result
    is_the_final_export=is_the_final_export))
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/exporter.py", line 472, in export
    is_the_final_export)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/exporter.py", line 126, in export
    strip_default_attrs=self._strip_default_attrs)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/estimator.py", line 650, in export_savedmodel
    mode=model_fn_lib.ModeKeys.PREDICT)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/estimator.py", line 703, in _export_saved_model_for_mode
    strip_default_attrs=strip_default_attrs)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/estimator.py", line 811, in _export_all_saved_models
    mode=model_fn_lib.ModeKeys.PREDICT)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/estimator.py", line 872, in _add_meta_graph_for_mode
    input_receiver = input_receiver_fn()
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/export/export.py", line 335, in serving_input_receiver_fn
    features, default_batch_size)
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/export/export.py", line 312, in _placeholders_from_receiver_tensors_dict
    for name, t in input_vals.items()
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/export/export.py", line 312, in <dictcomp>
    for name, t in input_vals.items()
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/estimator/export/export.py", line 298, in _placeholder_from_tensor
    shape_list = t.get_shape().as_list()
  File "tf_public/lib/python3.5/site-packages/tensorflow/python/framework/tensor_shape.py", line 903, in as_list
    raise ValueError("as_list() is not defined on an unknown TensorShape.")

Replacing receiver_fn as per the commented-out line or adding shape parameters to tf.placeholder prevents this crash.

Just ran into this too. Is it just a matter of replacing t.get_shape() with tf.shape(t)?

Hi, I create the PR #21536 to fix the issue.


Enable useOptionals=all for ts-proto

This will enable us to quit using [MessageType].fromPartial() at the risk of serializing invalid message numbers over the wire. Since we are constructing all our own messages, this should not matter.

Relevant link to ts-proto docs: https://github.com/stephenh/ts-proto#supported-options
Once Exact Types are adopted, it will be better

Since we are constructing all our own messages, this should not matter.

Disagreed -- our customers will be constructing messages constantly and passing them to our API. Or am I misunderstanding?

Typescript enforces object literals to not have "bonus" fields.


Cannot create ovs-bridge with a ovs-interface with same name as port

The ovs-vsctl tool when used to create a bridge it adds the ovs-bridge ovs-port and ovs-interface in one go and ovs-bridge and ovs-interface with same name, also the ovs-cni expect the ovs-interface listed by netlink to have the same name as the ovs-bridge.
Configuring that with nmstate we get the following error:
NM main-loop aborted: Connection adding failed: error=nm-connection-error-quark: connection.master: A connection with a 'ovs-bridge' setting must not have a master. (7)

Tested at https://github.com/nmstate/nmstate/pull/600

Thank you, can you please report this in Jira?

This is now tracked in Jira:   https://nmstate.atlassian.net/browse/NMSTATE-286


Update stable version in repo from 1.2.3 to 1.3.0

Think about update stable version to 1.3.0
Version: stable=1.2.3 (606 days old) => latest=1.3.0 (15 days old)
Installs: stable=784 (87.89%), latest=62 (6.95%), total=892
Click to use developer portal
Click to edit
Do not close this issue manually as a new issue will be created if condition for update still exists.
Please drop a comment if any reason exists which blocks updating to version 1.3.0 at this time.
Note: This is an automatically generated message and not personally authored by bluefox!
@mcm1957 for evidence

Upgrade to newer version of hafas-client required, new beta will be released.


Mark password as a SensitiveParameter

Mark the $password parameter as sensitive, so its value is redacted if present in a stack trace.  This already happens for PDO but not for this method:
#0 /src/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PdoAdapter.php(96):
  PDO->__construct('pgsql:dbname=aa...', 'my-username', Object(SensitiveParameterValue), Array)
#1 /src/vendor/robmorgan/phinx/src/Phinx/Db/Adapter/PostgresAdapter.php(115):
  Phinx\Db\Adapter\PdoAdapter->createPdoConnection('pgsql:dbname=aa...', 'my-username', 'my password leaked...', Array)

SensitiveParameter was added in PHP 8.2, is there any issue with using this in PHP 8.1 which we still support? I'm not super well versed in attributes, and from test suite I guess it works and the attribute is ignored?

Yes, that's exactly what I expected, it only benefits people running PHP 8.2+, but should not impact older versions in any way.


A global middleware that is not affected by fresh is required. The handler defined in the routes/_middleware.ts file is not global middleware and will be affected by the trailingSlashEnabled redirect from fresh.

A global middleware that is not affected by fresh is required.
The handler defined in the routes/_middleware.ts file is not global middleware and will be affected by the trailingSlashEnabled redirect from fresh.
https://deno.land/x/fresh@1.6.5/src/server/context.ts?source#L175
https://deno.land/x/fresh@1.6.5/src/server/context.ts?source#L237

https://github.com/denoland/fresh/issues/2342

Closing as this is resolved in the upcoming Fresh 2 release. There, by default Fresh will leave the URL as is and devs can opt in to always appending a trailing slash or always removing it via a middleware:
import { App, fsRoutes, staticFiles, trailingSlashes } from "@fresh/core";

export const app = new App()
  .use(staticFiles())
  .use(trailingSlashes("never"));   // <--


Unable to create scala classes

I did
PB.targets in Compile := Seq(
  PB.gens.java  -> file(baseDirectory.value+"/schema/java/"),
  scalapb.gen() -> file(baseDirectory.value+"/schema/scala/")
)

to generate scala and java classes but it failed with error Sample\SampleProto.scala:8: SampleProto is already defined as object SampleProto
[error] object SampleProto extends root.scalapb.GeneratedFileObject {
[error]        ^
[error] four errors found
[error] (compile:compileIncremental) Compilation failed
[error] Total time: 4 s, completed Jul 31, 2019 4:36:21 PM

The compiler is saying that you have two copies of SampleProto. Is it possible that you still have generated code that was previously generated into another directory still around? Try to look around and remove. Doing sbt clean may also help. If not, please share a minimal example that can be used to reproduce this (entire project structure).

I am using ```
PB.targets in Compile := Seq(
PB.gens.java -> file(baseDirectory.value + "/schema/java/")
//,
//scalapb.gen() -> file(baseDirectory.value+"/schema/scala/")
)
to generate proto file schema code in java and scala into two different directories /schema/scala & /schema/java.

you can reproduce it with any proto file in main/protobuf directory and generate it by script
`sbt clean compile`

I was unable to reproduce this. Here is what I did:
sbt new scalapb/scalapb-template.g8

Then modify build.sbt with the code you gave. I uncommented scalapb.gen() since the main method depends on the Scala code. Things seem to work.
I suspect that you have a few copies of the generated code lying around in your source directories and they are both being picked up for compilation and causing this error. Can you start fresh and try it out?

Closing due to inactivity. Please feel free to report a new issue if this is still relevant.


grunt multitask

breaks backward compatibility, so version bump
I updated the readme.  LMK if you like it/what I can do to make it better

also, fixes #2


Resample a custom template into different voxel size

Hi,
A custom template is made by a group of T1 images with a 1x1x1.2mm voxel size and it takes about 3 hours to register individual T1 image (1x1x1.2mm) to this custom template in my computer. As a result,
(1) I want to resample the template into a larger voxel size (for example, 2x2x2mm) to reduce registration time. What's the potential disadvantages of a larger voxel size template?
(2) I find that command "ResampleImage" can fulfill the above task. However, I can't figure out the meaning of "M"/"N"/"0" in option "MxNx0"? (I guess it represents the expected matrix size but the axis information is still unclear)
Any suggestions? Many thanks!

(1) I want to resample the template into a larger voxel size (for example, 2x2x2mm) to reduce registration time. What's the potential disadvantages of a larger voxel size template?

Less resolution.

(2) I find that command "ResampleImage" can fulfill the above task. However, I can't figure out the meaning of "M"/"N"/"0" in option "MxNx0"? (I guess it represents the expected matrix size but the axis information is still unclear)

They can either specify resampling by spacing in mm (e.g., "MxNxO"="2x2x2" mm as you've specified above) or size in voxels (e.g., resample to a total size of "100x100x100" voxels).

If you want to fix the voxel spacing, rather than the image dimensions, you can use ResampleImageBySpacing. Alternatively, you can run 0 iterations at full resolution to speed up the registration without downsampling the template. Something like:
antsRegistration ... -f 6x3x2x1 -s 3x1x0.5x0 -c [30x40x60x0, 1E-6, 10]

Thank you for all replies! Very useful! As for the first question, a larger voxel size (lower resolution) template will get a higher or lower registration accuracy, or the resolution is unrelated to registration accuracy? The question stems from the observation that in FSL the default option will register individual T1 image (usually 1mm) to 2mm MNI template instead of 1mm template.

Generally speaking, lower resolution ---> lower registration accuracy.


"Unrecognized Guid format" when Add Class

Right-click on folder -> Add -> Add Class

#406 fixed the issue when opening an existing project. However, when creating a new project, it appears that the ImplicitProjectPropertiesProvider is getting created twice. The first time it's created, it's passed a GUID for the project. The second time it's created is when we call projectProperties.ProjectGuid.GetValueAsync(). This instance of the properties provider isn't the once that had the GUID set, and therefore the attempt to parse the GUID fails. @davkean, what's the expected lifecycle around the properties provider? If this is expected behavior, we'll have to work around it somehow.

@lifengl, do you have any insight into this issue?

It's a configured project service, there's going to be 1 per configuration.


Admins cannot create more than three Developer environments

Hello, I'm Power Platform admin in my organization, In our organization we decided to limit environment creation only for specific admins. So developer cannot go to admin center and create environment by themselves so admins have to create environments BUT administrator are limited to only three developer environment creation.
Sincerely I don't understand why admins are limited too. In this case avoiding common users to create developer environment shouldn't exist.

Could you help to understand why I receive this blocking??
There's some workaround solution to continue creating developer environments as admin??
Best regards and thank you :)

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

ID: a6649887-95fb-d87e-80e9-1afe53a58da6
Version Independent ID: a6649887-95fb-d87e-80e9-1afe53a58da6
Content: About the Power Apps Developer Plan - Power Platform
Content Source: power-platform/developer/plan.md
Service: power-platform
Sub-service: developer
GitHub Login: @KumarVivek
Microsoft Alias: kvivek

Thanks for your comment, @FAC-1312. This issue has been assigned to the doc author for review.

@Mattp123
Since this is an admin issue, can you take a look at this?


Consistent naming

The properties HasValue and IsEmpty of the Option type have been renamed to IsSome and IsNone for consistency.

@fdub Thanks for the changes 👍


Add coverage for spec hostname

Add test coverage for spec hostname.

Thanks
/ok-to-test

/approve

/release-note-none

I do not really understand why we care about hostname without subdomain in the subdomain tests.
If this is not a common usage for users, I do not even think we should cover it.

@EdDev how do you know it is not a common use case?

/hold cancel

/cherry-pick release-1.2


merge with master

Current coverage is 59.62%

Merging #70 into patrick will increase coverage by +8.43% as of 13fb73c

@@            patrick     #70   diff @@
=======================================
  Files           113     115     +2
  Stmts          1297    1330    +33
  Branches         94      94
  Methods
=======================================
+ Hit             664     793   +129
- Partial          17      18     +1
+ Missed          616     519    -97

Review entire Coverage Diff as of 13fb73c

Powered by Codecov. Updated on successful CI builds.


removed gzipping large csv file on form attachments page

Closes #
What has been done to verify that this works as intended?

Manually tested by uploading file and multiple files on form attachments page
All unit and integration tests are passing

Why is this the best possible solution? Were any other approaches considered?
NA
How does this change affect users? Describe intentional changes to behavior and behavior that could have accidentally been affected by code changes. In other words, what are the regression risks?
NA
Does this change require updates to user documentation? If so, please file an issue here and include the link below.
NA
Before submitting this PR, please make sure you have:

[x] run npm run test and npm run lint and confirmed all checks still pass OR confirm CircleCI build passes
[x] verified that any code or assets from external sources are properly credited in comments or that everything is internally sourced

Just in case our future selves wonder why we made this change, we're updating nginx in getodk/central#391. As part of the update, it looks like we're going to drop support for request body decompression. That requires us to make this change to Frontend.


FIX:Change data type

Change comparison method of input value to 'strcmp'.
Change data type to receive input as a string like below.
const char* gotoGame = "1";
const char* gotoLeaderBoard = "2";
const char* quitGame = "3";
char menu_option[10];
char cho[10];
char link[10];
char dec[10];

잘 수정된 것 같아요 merge합시다

merge갑시다..!!


Java  util exception

Describe the bug
Some configurations throw ,,,3,Test java.util.NoSuchElementException threw exception null.,/Users/jimk/prod/W1KG26108
To Reproduce
Steps to reproduce the behavior:

in auditool shell.properties, comment out the "DerivedImageGroupParent" value (as if the work you're examining has no images directory
Start audit tool on a work that has no 'images' folder
you see the above referenced error in the FileSize test

FAIL-W1KG26108-2020-06-30.17.45.csv.txt
Data
See Windhorse:/Volumes/SSD_HD/W1KG26108
Expected behavior
When there is no input appropriate for a test (e.g., File Size test works on "images", or whatever the value of "DerivedImageGroupParent" is, the test should pass, (or just emit an error in the ignored group.)
Actual Behavior
The test is recorded as a failure, even when there are no images to fail.

#82 (which fixed #76 ) addressed a part of this, but it still happens under some circumstances.See Archive-ops ##250

There's a variant of this, you get a Java null reference exception, when there is an image group parent (archive/ or images/ and an image group number under it, but the image group is empty. (There should be another test which semantically matches archive/ and image/ but there isn't sufficient use case for it).


Can this lib be used as standalone client without apollo or relay?

Hi! That's a pretty cool and simple implementation, I'm wondering if I could use just this lib as graphql client without any other wrapper (apollo client or relay).
I would like to perform queries, mutations and subscriptions using websockets.

Hey @onhate, of course it could!
Before you begin, you have to make sure that the GraphQL server complies with the WebSocket subscriptions Protocol.
Here is a generic example implementation without any clients:
import { createClient, GraphQLResponse, StartPayload } from '@enisdenjo/graphql-transport-ws';

// create WebSocket client and connection
// the connection is *lazy*, meaning -
// no socket will be established until
// the first `subscribe` request
const client = createClient({
  url: 'wss://location.of/your/graphql',
  connectionParams: () => {
    // https://github.com/enisdenjo/graphql-transport-ws/blob/58226e1977332d5ae10f85a5b1d07c3c900f7d82/PROTOCOL.md#gql_connection_init
    return { connection: 'parameters' };
  },
});

function subscribe(
  subscriptionOperation: StartPayload,
  cb: (resultOrError: GraphQLResponse | Error | undefined, done: boolean) => void,
): { unsubscribe: () => void } {
  const sink = {
    // subscription result/event/change
    next: (result) => cb(result, false),
    // connection error
    error: (err) => cb(err, true),
    // the operation has completed (only used when executing `queries` or `mutations`)
    // wont be called for `subscription` operations
    complete: () => cb(undefined, true),
    closed: false, // is actually unused... 😅
  };
  return { unsubscribe: client.subscribe(subscriptionOperation, sink) };
}

/**
 * `subscription` operation
 */

// somewhere in your code base...
const subscription = subscribe(
  {
    operationName: 'FruitBought',
    query: `
      subscription FruitBought($color: String!) {
        coloredFruitBought(color: $color) {
          price
          amount
        }
      }
    `,
    variables: {
      color: 'yellow',
    },
  },
  (resultOrError) => {
    // handle however you want...
  },
);

// when you dont need the subscription anymore.
// if this was the "last" subscriber, the WebSocket
// connection will be closed
subscription.unsubscribe();

/**
 * `query` operation (same for `mutation`)
 */

// promisified subscribe for queries and mutations
function queryOrMutation(operation: StartPayload) {
  return new Promise((resolve, reject) => {
    let result: GraphQLResponse;
    const subscription = subscribe(operation, (resultOrError) => {
      if (resultOrError instanceof Error) {
        return reject(resultOrError);
      }

      if (resultOrError) {
        // receiving results... https://github.com/enisdenjo/graphql-transport-ws/blob/58226e1977332d5ae10f85a5b1d07c3c900f7d82/PROTOCOL.md#gql_data
        result = resultOrError;
      } else {
        // `complete` called, unsubsribe and resolve the promise with the received result
        subscription.unsubscribe();
        return resolve(result);
      }
    });
  });
}

// somewhere in async code...
const result = await queryOrMutation({
  operationName: 'BuyFruit',
  query: `
    mutation BuyFruit($type: String!, $amount: Int!) {
      buyFruit(type: $type, amount: $amount) {
        boughtFruit {
          price
          amount
        }
      }
    }
  `,
  variables: {
    type: 'orange',
    amount: 2,
  },
});

Nice! I'll git it a try!

@enisdenjo awesome! I'm actually working on a set of serverless code that will allow implementing real pubsub on serverless world https://github.com/pulpocoders/kraken.js it's on early stage but it's based on an implementation that is running in production already, what I'm doing is cleaning up and organising stuff. It's gonna be 100% serverless and websocket (haha) and I'm planning to make a client module using graphql code generator and using your module as transport layer for the client.
The idea is to make things leaner and simple without all the apollo overhead and mainly make subscriptions to work on serverless environment.

Wow, sounds great! I am glad that the lib can help you and I would be happy if you shared your experience feedback.


method call precedence in math

Description
Here's a subtle difference between math and code:
#let foo(..args) = $args.pos().join(",")$

$ foo(a,b,c) $

The method call .join is interrupted by the () and you have two pieces, args.pos() and .join(,).  Not sure if this is the desired behavior.
Reproduction URL
No response
Operating system
No response
Typst version

[X] I am using the latest version of Typst

It's actually not related to precedence. It's just that in math mode, a field access (which does include function calls) is simply a dot-separated list of identifiers.
So, foo.bar.baz is a valid field access, but foo.bar().baz is not valid because bar() is not an identifier.
This issue is still very valid though, I just wanted to explain the cause.

Yep, I know the cause in the parser but am unsure if it is intentional.  Maybe associativity was really the word I was looking for (the dot is behaving like it is right associative). I'll clarify the title to something else, regardless.

For context: The only reason the grammar allows method calls in math in the first place is for accents like $arrow.l(x)$.

I see.  And as a side effect, this is why
#let foo = ([a], [b], [c])
$ foo.join(",") $

works just fine.


New files for terraform/environments

This PR was automatically created via a GitHub action workflow 🤖

This PR commits new files under terraform/environments.

nor required


feat [IDP-2005] :  Added the docs for Rafay Plugin

Harness Developer Pull Request
Added the docs for Rafay Plugin
What Type of PR is This?

[ ] Issue
[x] Feature
[ ] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[x] Tested Locally
[ ] Optional Screen Shoot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65a9370736996413e6de9665--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65a9ecef76696a418761cdb5--harness-developer.netlify.app

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65a9ed28f1ae4240b84c5bd5--harness-developer.netlify.app


Scrutinizer-ci integration

I have started browsing the reports recently produced by @scrutinizer-ci about ZendFramework's codebase, and there's surprisingly not a lot to fix, but still a lot for a single person.
I have a reference build at https://scrutinizer-ci.com/g/Ocramius/zf2/inspections/3a265399-8787-4fe0-a045-88d36324af99
Things to be done:

enable @scrutinizer-ci runs for zendframework/zf2 ( @weierophinney that depends on your repo access ) - the fact that @scrutinizer-ci requires write-access may be a blocker.
start cleaning the heck out of it
...
profit!

@samsonasik fancy starting from the suggested patches? (not all of them are right, so it needs someone to check docblocks of properties AND methods)
curl 'https://scrutinizer-ci.com/g/Ocramius/zf2/inspections/3a265399-8787-4fe0-a045-88d36324af99.diff?s=093f1e46840d44cf7d2f60b96e37eae5e28321f3' \
    | git apply -

This was already mostly done.


Loading Window flashes when saving settings.

The loading window briefly flashes when saving settings. This may be a dupe but couldn't find it.

This is a general issue with any time we take the shortcut of reloading the whole app to apply changes. That's done any time we need a view to run it's initialize function before re-rendering.
I'll take a look, I think I've updated things to where that isn't needed any more on pageNav and settings.

Closed in #298


rad test failing on a clean project

Hey there!
I created a clean gleam project using gleam new, installed rad and added a bash alias to my .bashrc, and then ran rad test, which led to the following error
  Targeting erlang...
file:///home/benjaminp/fuckabout/radalicious/build/dev/javascript/shellout/shellout_ffi.mjs:65
    return result.isOk() ? result[0] : false;
                  ^

TypeError: Cannot read properties of undefined (reading 'isOk')
    at getBool (file:///home/benjaminp/fuckabout/radalicious/build/dev/javascript/shellout/shellout_ffi.mjs:65:19)
    at os_command (file:///home/benjaminp/fuckabout/radalicious/build/dev/javascript/shellout/shellout_ffi.mjs:75:18)
    at file:///home/benjaminp/fuckabout/radalicious/build/dev/javascript/shellout/shellout.mjs:305:12
    at Module.command (file:///home/benjaminp/fuckabout/radalicious/build/dev/javascript/shellout/shellout.mjs:306:5)
    at file:///home/benjaminp/fuckabout/radalicious/build/dev/javascript/rad/rad_ffi.mjs:63:14

Node.js v19.8.1

Is rad test supposed to work right away or am I supposed to configure a task in the gleam.toml?

Thanks for the report!
Sorry for the delay, this issue was actually caused by the JavaScript ffi map update in gleam_stdlib v0.28. Shellout's JS ffi was affected, but the issue has been resolved in its latest release (see https://github.com/tynanbe/shellout/commit/a4e30ad7b308e1d2df753ca31b8e409f7b38fcd9).
Rad has also been updated to use the latest version of shellout.


Issue in selected bottom nav on back button click

Hi,
I have three screens- Home, History and Notification, where each screen has it own scaffold with its own BottomNavBar.
The issue I am getting here is that the selected Nav menu remain same, whereas screen changes to other screen, when I click back button.
Could you please have a look at this?

Hello @gunjchhetri
Maybe is because you implemented it wrong. When you have three scaffolds and three navbars, the navbars doesn't share the state of each one, so, each one will stay the same.
You need to implement the navbar on a unique scaffold and inject the content on his body, like this:
`
int currentPage = 0;
final _pageOptions = [
Widget1(),
Widget2(),
Widget3(),
];
Scaffold(
body: _pageOptions[currentPage],
bottomNavigationBar: CircleBottomNavigation(
initialSelection: routePage.currentPage,
inactiveIconColor: Colors.grey,
textColor: Colors.black,
hasElevationShadows: false,
tabs: [
TabData(
icon: Icon,
title: 'Widget1',
),
TabData(
icon: Icon,
title: 'Widget2',
),
TabData(
icon: Icon,
title: 'Widget3',
),
],
onTabChangedListener: (index) => setState(() => currentPage = index),
),
)
`

@gunjchhetri your problem is solved?
Can i close this issue?


Usecase of IdentityLinkedMap (question)

Why don't you just use IdentityHashMap provided by JDK instead of IdentityLinkedMap?

I can't for the life of me remember the reason. Most likely explanation: brainfart. Second most likely explanation: someone decided to go perfnazi and implemented it instead of wrapping IdentityHashMap into Collections.synchronizedMap().
Either way, we don't have 100% code coverage in ComposedCursorLoader so I'm going to apply "if it ain't broke don't fix it" rule and keep it in place.


New driver fails on insert with multiple values

Hi, I've been updating my project to the latest jdbc driver and found that it crashes with an npe on an insert with multiple values. The old one works fine. Could you please look into this? Here is a test for both drivers.

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

Thank you @reimai. This was reported in #920 and it's been fixed in #940.


Join Release - Congratulations page - lower Customer Service info

Expected behavior
The link will open an email provider window
Actual behavior
https://tastefully-simple-sandbox-2.mybigcommerce.com/welcome/
On this page when Denise clicks on the<EMAIL_ADDRESS>link
The screen refreshes to the Congratulations page again instead of outlook to send an email.

Steps to reproduce behavior
Go through the join process until you get to the welcome page.

checked- done


inconsistency file downloading

Every time when try to download file i get file with non actual file size. Some time i get file size bigger than actual, sometimes smaller.
Version that i used is 1.6.0
Here is code:
let needle = require('needle');
let fs = require('fs');
let writeStream = fs.createWriteStream('file');

needle.get('http://ec.europa.eu/external_relations/cfsp/sanctions/list/version4/global/global.xml').pipe(writeStream).on('close', function() {
    console.log('finish');
});

Try using the 'done' event. And sorry for the late response!

'done' event is not help.
Please try example and run it to view inconsistency.
After every run just check file size
If you need from more information let me know


How to trigger some event when i tab between tabnavigator's children

For example, I have a tabNavigator with 4 screens , can i add an event when i tap on one of the screens' label?

I have this problem too!

Me too

You can use https://reactnavigation.org/docs/navigators/#onNavigationStateChange-prevState-newState-action to get updates whenever something changes.

No actions are dispatched when I am on a tab and that tab is pressed again. Can that be an extra feature worth adding?

TabNavigator({
    ****
}, {
    tabBarComponent: ({jumpToIndex, ...props}) => (
        <TabBarBottom
            {...props}
            getOnPress={() => {
                return (scene) => {
                    const {route, index, focused} = scene;
                    if (index !== 3 /* ~ ~ */) {
                        jumpToIndex(index);
                    } else {
                        // HANDLE IT !!
                    }
                };
            }}
        />
    ),
    tabBarPosition: 'bottom'
})


Make Weightwatcher dependency optional

Make Weightwatcher optional just like we have UMAP and SHAP optional

Solved by #210


feat: adds reference sketeton

Still draft, don't merge it.

53: can we use initiate or use for "start"? start Greptime DB sounds a bit vague

@apdong2022  Thanks for your review, can you review it again, I add more descriptions about the configuration options.
I will resolve all these conversations after your review. Thank you.

I think we can merge this PR first, I am still working on other docs. @apdong2022 @MichaelScofield


Add images of Taiwanese rallies

Add images of KMT and DPP rallies from 2024 election with appropriate licenses to the discussion of Glen's experience in those elections

 Gov4Git notices
On Saturday, 09-Mar-24 07:00:43 UTC by Gov4Git dev
Notice ezitlq
Started managing this issue, using the Plural Management Protocol v1,  as Gov4Git concern 472 with initial priority score of 0.000000.
This project is managed by Gov4Git, a decentralized governance system for collaborative git projects.
To participate in governance, install the Gov4Git desktop app.
Notice gfh3ry
This issue's priority score is now 0.000000.
The cost of priority is 0.000000.
The projected bounty is now 0.000000.
Notice pcdqcl
The set of eligible proposals claiming this issue is empty.

 Gov4Git notices
On Saturday, 09-Mar-24 07:19:18 UTC by Gov4Git dev
Notice iyfwul
This issue's priority score is now 90000.000000.
The cost of priority is 90000.000000.
The projected bounty is now 90000.000000.
Notice g5jyop
The set of eligible proposals claiming this issue is empty.


is msgraph-sdk deprecated or not?

Users are confused by the current status of sdk.
it looks like (from public info), that msgraph-sdk is deprecrated, but still DOcumentation and tutorial exists about it on Microsoft learn.
https://learn.microsoft.com/en-us/graph/tutorials/python?tabs=aad&tutorial-step=2
And then, we have this current package, msgraph-core, which is
Still in preview => And people usually don't go on prod with non stable packages set in preview.

Hey @omonimus1
Apologies for the confusion. This package, msgraph-core was our initial effort to create a python SDK for Microsoft Graph. It was basically a wrapper around the requests library and handled cross cutting concerns such as authentication,redirects,retries and telemetry. Over time, we moved to an approach that favored autogenerated models corresponding to graph resources and request builders as opposed to request builders.
As such, this package is no longer meant to public use and only serves as a dependency for the full SDK which can be found here. I hope this makes things a bit more clear.

So this is now not for produxtion use and meant only as a dependency for the full SDK. The full SDK is listed as only a preview and not to be used in Production because there may be breaking changes.
What is the current solution that may be used in production?

Hello, this is a bit off topic. apologies
Here is what I am hoping to do.  Write a python script that checks my OneDrive home edition for duplicate files.  Is the python SDK going to be useful for this or am I misunderstanding its purpose?
I tried
https://graph.microsoft.com/v1.0/me/drive/root/search(q='finance')?select=name,id,webUrl example and it does some neat stuff.  But I get it to find my duplicates in OneDrive?
Thanks,
V

thanks for reporting this issue, we have since released a new version of the SDK which this issue doesn't apply to. We encourage you to migrate to the new version and open a new issue if you still need help


METABUG: Potential concrete data quality improvements for 5.2.0

I thought I'd capture an umbrella issue for discussing a package of improvements for 5.2.0
A possible use-case based approach:
Use case 1: "Does this vulnerability apply to me?" "How do I make it not apply to me?"

I have a programmatic way to identify the subject of the vulnerability

I can cross-reference the product against an inventory of products I am concerned about
I can scan a software source repository

https://github.com/CVEProject/cve-schema/issues/279
https://github.com/CVEProject/cve-schema/issues/280

I can scan a container image or other installation of software binary artefacts

I have a way to programmatically determine the version of the subject the vulnerability applies to

I can determine if the installed version of software is affected by a vulnerability

https://github.com/CVEProject/cve-schema/issues/263
https://github.com/CVEProject/cve-schema/issues/264

Use case 2: "How do I prioritize the vulnerabilities that apply to me?"

I have CVSS, EPSS etc scores to stack rank the vulnerabilities identifiable from use case 1, so that I can determine the next steps for responding to them

Use case 3: "How can I perform aggregate, historical analytics on the vulnerabilities that apply/did apply to me?"

I can broadly bucket vulnerabilities to answer questions like "How many memory safety vulnerabilities impacted me last year?"

Some other general input validation issues worth noting here:

https://github.com/CVEProject/cve-schema/issues/259
https://github.com/CVEProject/cve-schema/issues/260
https://github.com/CVEProject/cve-schema/issues/261

Related validation work happening elsewhere:

mprpic/cvelint as of v0.3.0 is able to surface some of these failures (/cc @mprpic for further inspiration)

these are automatically surfaced at jgamblin/cvelint-action

https://github.com/CVEProject/cve-services/issues/1135

Can we actively avoid needing to address this sequentially, to be able to make some tangible improvements to CVE data quality with a sense of urgency?

@andrewpollock Maybe I am missing something, but this looks like a collection other issues and is not a unique request on its own. I would move to close this and we can group relevant issues with labels and milestones (hopefully in the next few weeks).  Let me know if you have different thoughts.

The overarching request here is for a future version of the schema to enable records to meet the three use cases described.
This could be achieved incrementally, by addressing one use case at a time.
Happy for this outcome to be reached by the most appropriate means.


Texture tiling alignment off

Recently decided to try out a combined texture file to reduce number of texture binding calls during rendering. But it seems the floating point offset values are off, as the tiles don't match up seamlessly.

Culprit was mip-mapping along texture bounds in combined texture file. Fixed in 59879ce8a2f3e9b554a53adad635f195cc8f34cc


Ensure that the format is reset within the git subshell rather than after it.

I would like to source your bash prompt and then adjust PS1 after the fact.
I tried to remove the newline and instead have brackets around everything before the prompt symbol by setting PS1="[${PS1/\\n/] }" but this resulted in the left bracket coming out in the default text colour and the right bracket coming out in sexy_bash_prompt_preposition_color.
I'm not sure what the point of the sexy_bash_prompt_preposition_color immediately following git progress is; it doesn't seem to be doing anything.

Preposition color is typically used for works like at/in. We're using it in the last line to reset colors whereas reset is used to reset boldening (I know they aren't particularly intuitive)
Unfortunately, we won't be accepting this PR as it affects the existing setup. For customizing the shell in a non-extensible fashion, we recommend either:

Redefining PS1 after sourcing .bash_prompt
Forking our repo and using the fork

Hi.  I don't mean to argue, I just want to make sure my original point was understood.  Please correct me if I'm wrong.
My original point regarding sexy_bash_prompt_preposition_color was that its use in line 270 specifically didn't seem to have a point.  The format of PS1 just before the subshell is opened on line 266 is sexy_bash_prompt_reset, as it will be if sexy_bash_prompt_is_on_git returns false.  If it returns true, however, the format will be set to sexy_bash_prompt_preposition_color before the subshell exits.  The only thing between the closing of the subshell and the next reset is the newline, so it doesn't actually make a difference, in which case the setting of sexy_bash_prompt_preposition_color seems superfluous.
Again, apologies if I'm reading this wrong, or if you understood my point but have closed the PR for another reason.

The subshell echoes exit codes which adjust PS1's color as it outputs. The terminal emulator doesn't know about subshells, it only looks at the string generated in PS1 and the exit codes in said string.
As a result, exiting the subshell without outputting a reset code for the color (i.e. preposition_color) would leave the remainder of the text the same color as git_progress_color
For example:
echo "$(echo -n "blue")"foo
# Outputs: bluefoo
# Terminal sees: blue, then foo so "foo" would be blue

vs
echo "$(echo -n "blue" && echo -n "white")"foo
# Outputs: bluewhitefoo
# Terminal sees: blue, then white, then foo so "foo" would be white

Also as mentioned before our reset variable is only for resetting bold, not colors =/

Okay, I think I understand the problem we're having.    That certainly seems to be the case on both my mac and linux terminals.

Ah, interesting. I don't currently have the time to fully look into this again. Here's the original PR that introduced it:
https://github.com/twolfson/sexy-bash-prompt/pull/22
It's mentioning background colors as well. Maybe that's what the reset variable was handling (in case of overrides)?

It's been awhile now but IIRC I wanted the reset variable to reset everything (including backgrounds) in case there were background overrides elsewhere in the user's configuration, yeah.

It does seem that the reset variable does and was meant to reset and everything, in which case I think my change is correct.  I believe I have also now fixed the tests in my branch, so it's there if you want it.

I'll take a look at this again by the end of the weekend

Alright, I was able to confirm that our reset resets everything one would expect (e.g. foreground, background, bold). I'm guessing we had human error in #22. Sorry for the trouble @jservice-rvbd =/

Ironically, I found a new bug while doing my exploration. We don't have reset at the head of the PS1 so background colors bleed over into the first item:

@jservice-rvbd Could you add in a fix to this PR for that as well? Also, I think you'll need to update the tests to get this PR to green

Earth to @jservice-rvbd ! Are you still interested in this PR?

@rpdelaney Whoops.  Completely forgot about this, sorry.

I've been on vacation for a week and am catching up on things. I'll review this by the end of the weekend

Looks good to me. Thanks for the PR @jservice-rvbd ! Releasing this now


Scaffolding for coadd tests

This PR sets up the framework to run warping and coaddition tasks and demonstrates some of the interfaces to look at the single cell images and PSFs. Right now, the exposures are just noise themselves. My intention here is to set up the geometry of the input exposures, and override fill_exposures later to have sky scenes instead of pure noise. I've also included some minor bug fixes that I found as I wrote the tests.

I have difficulty following this code. I think it is probably better to go ahead and merge this and then I'll understand better when I try adding signal to the images for testing

I'm happy to walk through the code over a call if it'd help. The next step would be to make the _fill_exposures function more useful. Let's wait for Matt to see if he's okay with the bug fixes I made here.


fix maven artifactId transport-spi

Fix cut and paste error in gradle file. Correct artifactId is transport-spi.
Linked Issue(s)
Closes #945

Codecov Report

Merging #990 (4a99bb8) into main (ff65f0d) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##               main     #990   +/-   ##
=========================================
  Coverage     63.05%   63.05%
  Complexity     2544     2544
=========================================
  Files           628      628
  Lines         13565    13565
  Branches        948      948
=========================================
  Hits           8553     8553
  Misses         4570     4570
  Partials        442      442

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 ff65f0d...4a99bb8. Read the comment docs.

@lholthof Thanks for the contribution - watchful eyes are always welcome :)


Is it i18n support fallback fucntion?

For example, server only support "en" and "ja",  and server get lang value from header
func (s *sMiddleware) I18n(r *ghttp.Request) {
	r.SetCtx(gi18n.WithLanguage(r.Context(), r.GetHeader("lang")))
	r.Middleware.Next()
}

if api caller set header["lang"] = "zh-CN", server will return messsage like "{#name_already_token}%!!(MISSING)(EXTRA string=john)"
how to auto fallback to "en" when user set lang except "en" and "ja"?

buscarei a resposta ok

I'll look for the answer ok


Multiple thresholds

What about the ability to manage multiple thresholds values?

+1
Multiple thresholds would be really nice

I'm in need a multiple thresholds as well.

Any updates on this?

No sorry, If no PR's coming for this, I'll have time after April at the earliest. Sorry

I fully support the feature though

@Xscratch @prashcr @lukelarsen @barryvdh
Not sure if by multiple threshold values we are referring to the same thing, but I've submitted a pull request that allows you to define a variable threshold line. Take a look and see if it fits your needs.
https://github.com/mezzi/chartist-plugin-threshold/tree/dynamic-threshold

@mezzi
Thank you for the effort, at the following link you can see a working example of what I am trying to accomplish.
http://www.amcharts.com/tips/using-multiple-value-thresholds-to-color-line-graph/

@Xscratch Ah ok, I see.

Any updates on this?

I decided to give it a try, and I'm able to get the points working. However, I haven't figured out how to do lines/area yet.
https://codepen.io/prashcr/pen/kkBBao


recursive use of an object detected which would lead to unsafe aliasing in rust

Hey, we're getting the following stack trace of this unhandled exception:
Error: recursive use of an object detected which would lead to unsafe aliasing in rust
  File "/app/node_modules/.pnpm/@dqbd+tiktoken<EMAIL_ADDRESS>line 432, col 11, in module.exports.__wbindgen_throw
    throw new Error(getStringFromWasm0(arg0, arg1));
  File "wasm://wasm/01569aca:wasm-function[1197]:0xb3cba"
  File "wasm://wasm/01569aca:wasm-function[1218]:0xb3dcb"
  File "wasm://wasm/01569aca:wasm-function[456]:0x9c989"
  File "/app/node_modules/.pnpm/@dqbd+tiktoken<EMAIL_ADDRESS>line 203, col 44, in TiktokenFinalization
    : new FinalizationRegistry(ptr => wasm.__wbg_tiktoken_free(ptr >>> 0));
  File "<anonymous>", in FinalizationRegistry.cleanupSome

We use tiktoken<EMAIL_ADDRESS>in our project like so:
import { encoding_for_model } from "@dqbd/tiktoken";
import { TiktokenModel } from "@dqbd/tiktoken";

// This function calculates the number of tokens in a text string using GPT-3.5-turbo model
export function numTokensFromString(message: string, model: string): number {
  const encoder = encoding_for_model(model as TiktokenModel);

  // Encode the message into tokens
  const tokens = encoder.encode(message);

  // Free the encoder resources after use
  encoder.free();

  // Return the number of tokens
  return tokens.length;
}

Any clues what this might be related to?

Also running into this issue. @mogery were you able to find any solution to this?

Not yet, unfortunately.


CI Update

PR Summary

Upgrades common CI parts, adds ATS2 builds
Adds reporting to LANL internal CDash
Fixes some CMake issues

PR Checklist

[ ] Any changes to code are appropriately documented.
[ ] Code is formatted.
[ ] Install test passes.
[ ] Docs build.
[ ] If preparing for a new release, update the version in cmake.

@rbberger since the cmake seems to be failing I assume this is WIP?

@rbberger since the cmake seems to be failing I assume this is WIP?

ah nevermind. I see you fixed it.

Let me know when you're ready to merge.

@Yurlungur This is ready.


Add support for rgba and more

The changes can help to support the alpha channel data of my inputs like -i frames/%06d.png.

我这周看下 测一下，没问题就merge进来

没问题，已Check，Merge


Omit useless default values for requests and object representations

All objects with defaults and all defaults being None now use repr_omit_defaults and omit_defaults. Unfortunately this needs to be set on all classes individually.
omit_defaults skips default values in outgoing messages, reducing bandwidth usage and marginally increasing transaction speed.
repr_omit_defaults skips all the empty fields from being printed in object representations, making them easier to read.
Fixes #54

LGTM - thanks @ml31415 !


Are there plans for Typhoon to support Objective-C or swift generics?

It looks like the next major release of Obj-C will have generics, and swift does already.
In my experience, Typhoon will not tolerate duplicate definitions in the sense that if ConcreteA conforms to Protocol1, a single assembly cannot have methods that return both without parameters.
Unless Typhoon is already generics-aware, I would imagine that ConcreteA<T1> and ConcreteA<T2> look the same to Typhoon.

Although Objective-C's loose type system means that its technically not necessary to cast, the other benefits of generics are realized:

Type checking at compile time.
Documentation

. . . so we're pretty happy about this new feature. Having said that, I haven't looked into it much yet. We want Typhoon to generally be backwards compatible, so whatever we do provide will need to meet that requirement.
We have, however, started R&D on the 'pure swift' version of Typhoon.

Closing this. Let's proceed by opening defined issues for features associated with generics.


Kali automated setup scripts for your VM - Command not found

I've properly installed the AdversaryEmulation release to both Kali and Windows.
I cannot run the setup script on Kali as it's giving a command not found error, though the file is present in the location
I'm following the ReadMe along with MAD20 course and stuck at this point.
EDIT: I succeeded with the Windows Server setup, but Kali is still giving an error

Fixed. I had to do the following 4 things together in order to fix it. Doing them individually did not help.
-Restore snapshot to fresh kali install.
-Reboot computer
-Restore snapshot again (did not work if I didn't restore snapshot before and after for some reason)
-Install the AdversaryEmulation zip from github directly from the kali vm. (from terminal and copying from my computer to vm did not work)
I was then able to run the command to run the setup


types(runtime-core): Export RawProps in h.ts

Any reason to not export the RawProps type? Or am I using the wrong type for props (class, id etc.) on render()?
h(type: string, props?: RawProps | null, children?: RawChildren | RawSlots): VNode;
```

I'm not sure what this achieves honestly, this is an internal type for type inference only. The public type is VNodeProps.


Remove setup of custom helm chart repository

Remove the helm init method in build.sh file once https://github.com/Microsoft/fabrikate/issues/64 is implemented

Marking this as impeded since we are waiting on the new release of Fabrikate that includes https://github.com/Microsoft/fabrikate/pull/67

A new release of Fabrikate is available
@yradsmikham @samiyaakhtar

Blocked. The issue has appeared to be resolved when using Fabrikate 0.2.3. However, adding a helm repo will require that the command helm init is executed prior. The newest version of Fabrikate does not perform this check before attempting to run helm add repo .... Workarounds would include to make changes to the Fabrikate source code to ensure that helm is installed properly before attempting to add repos, or include the helm_init function in the build.sh.

https://github.com/Microsoft/fabrikate/issues/76

Submitted a PR to @bnookala repo for fabrikate-jaeger.


text_attributes are required when creating a new resource in a resource group with API request

Describe the bug
In my use case, my resource group doesn't have any text_attributes just Computable attributes. but text_attributes field is required and i can't set it to null, so i have to create one in order to add resource with this POST api request "resource_tracker/resource_group/resource_group_id/resources/"
To Reproduce
Steps to reproduce the behavior:

Create a resource group without any text_attributes
try adding a new resource to this group with a api request

You can just set the flag but empty.
But I'm sorry to inform you that the v2 is coming and we have removed text attributes. As this kind of info can be placed in instance spec.
I close the issue as we are not going to change it.

okey great, I don't see text_attributes being useful
thanks


Improve: Results can be improved

Label encoder is for ordinal variables, change encoder preference.
Try more graph based methods.
Try combined methods


add test id strings as a top level init property

then make them accessible from their definition and also as render params (that can be directly interpolated without even using the testId directive).

Add create an easy utility function that, given an instance of an Element and a DeclarativeElementDefinition, tries to grab instances of all test ids of the definition.


Reduce load time in local/handbook

Purpose
Make local development faster for most cases (and no slower for the rest) by allowing the mirage default scenario to be more easily configurable. Cuts the load time in half using default settings.
Summary of Changes

Split up mirage scenarios into functions
Add an environment variable to define which scenarios to load (with a good default)

Reviewer Checklist

[ ] meets requirements
[ ] easy to understand
[ ] DRY
[ ] testable and includes test(s)
[ ] changes described in CHANGELOG.md

Pull Request Test Coverage Report for Build 2436

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 69.387%

Totals

Change from base Build 2428:
0.0%

Covered Lines:
5190

Relevant Lines:
6793

💛  - Coveralls


Pass fetch options through to updateRoot

Codecov Report

Merging #3140 into master will increase coverage by <.01%.

Impacted Files
Coverage Δ

js/noms/src/http-batch-store.js
53.08% <80%> (+1.18%)
:white_check_mark:

js/noms/src/set-test.js
100% <ø> (+0.23%)
:white_check_mark:

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 8b7c974...ec008c1. Read the comment docs.


Added some more verbosity around Docker and the location of the saved ray.php file in Laravel

Thanks!

Thanks!


Memory leak on RxBleInternalScanResult for long scanning period

Summary

Objects RxBleInternalScanResult are not collected by GC, in case when phone scans for a long time. The speed of scanning(e.g. passing rxBleScanResult to subscriber) goes down dramatically.
Preconditions

Long lastScanTime = 0;
Subscription scanSubscription = rxBleClient.scanBleDevices()
.subscribe(
rxBleScanResult -> {
// Process scan result here.
long currTime = currentTimeMillis();
Log.i(TAG, "Delay between results: " + (currTime - lastScanTime));
lastScanTime = currTime;
},
throwable -> {
// Handle an error here.
}
);
Steps to reproduce actual result

3-5 BLE services should advertise in one room,  Run App, keep Activity active.
See unexpected "Delay between results" after 15-20 min in Logcat
See continues growing of RxBleInternalScanResult objects in Dumped Java Heaps

Actual result

The amount of RxBleInternalScanResult keeps growing, the performance of scanning goes down.
Expected result

GC collects old RxBleInternalScanResult, the performance of scanning is stable.

Fixed with b53d84065657af07e380e5aaf9b4a6d73b064000
Should be available in 1.2.3-SNAPSHOT shortly and in 1.2.3 later today.


Add content in Frontend and Change Readme to README

Description 📜
Please include a summary of the change and which issue is fixed. Please also include relevant motivation and context.

Changed readme.md to README.md
Add content in frontend readme file

Type of change 📝

[ ] Audio (Should be in mp3 format Includes speech clarity, Concise ,Low distortion)
[ ] Video (Animations, screen-recordings, presentations and regular explanatory films are all possibilties etc)
[x] Documentation (Content Creation in the form of codes or tutorials)
[ ] Other (If you choose other, Please mention changes below)

Domain of Contribution 📊

[ ] Android Dev (Flutter, Java, Kotlin)
[ ] Backend Dev (Java, .NET, Python)
[ ] C/CPP
[ ] Competitive Programming
[ ] Cyber Security
[ ] DSA
[ ] Database
[ ] Datascience with Python
[ ] Datascience with R
[x] Frontend Dev (HTML, CSS, JS)
[ ] Frontend Dev (React, Angular, Vue)
[ ] Golang
[ ] Interview Prep
[ ] Java
[ ] JavaScript
[ ] MERN
[ ] Machine Learning
[ ] Open Source
[ ] Python
[ ] Rust
[ ] Statistics
[ ] UI/UX

Checklist ✅

[x] I follow Contributing Guidelines & Code of conduct of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I'm GWOC'21 contributor

Screenshots / Gif (Optional) 📸

hey @RoshanMhatre pls add the ss ...showing what major changes you hv done

hey @RoshanMhatre pls add the SS ...Showing what major changes you hv done

there is no genuine changes to merge


Can this project support medusa v2？

Thanks for your interest in our platform! For a fair comparison, we only implement and compare speculative decoding methods that maintain the original target LLM's distributions (e.g., the vanilla Vicuna-v1.3 in the current implementation). This is why Medusa v2 hasn't been integrated into Spec-Bench.


Add support for tutorial slots

Currently, schedule for tutorials is not generated. An easy fix would be to add the tutorial time as a slot (as mentioned in slotting pattern) and have the user add a different course for the tutorial along with the slot.
Broad steps:

Add tutorial slot timings from slotting pattern
Add tutorial slots to regex for input validation

https://github.com/arpit-saxena/schedule-maker/commit/28ddcc76143550b54c961af11ee397106aff59b1 adds support for custom slot timings. That is enough for supporting tutorial slots.


data dump and footer model

Let me know if I did this right. I made a json file wtih data dump. I was in the process of doing a footer model but Couldn't migrate. So I wanted to get the data out first then fix my db.

@jinpark :)

can you split the PR up, one for the datadump and one for the footer model?

I deleted the json file.

@jinpark  can you have a look?


Fix quoting when getProperty() is added for indexed array syntax ([]) on Proxy using an already-quoted value.

I don't have the resources to actually test this compiler change, sorry.  But I believe these are the changes needed to fix the main part of issue apache/royale-asjs#996 for indexed array syntax ([]) on Proxy and incorrect quoting.

Hi @estanglerbm, I'm going to test locally, build with all test and try some examples (build and run). Will report soon. Thanks

Hi @estanglerbm, I'm going to test locally, build with all test and try some examples (build and run). Will report soon. Thanks

Hi after build all with maven and ant, even examples and try lots of examples I don't see any issue. So will merge. If others find any issue in the next days we can go over this. Thanks

Hi after build all with maven and ant, even examples and try lots of examples I don't see any issue. So will merge. If others find any issue in the next days we can go over this. Thanks

Thanks.

Thanks.


Does not help to pass the exam 70-486

This course is just a light copy and paste from the initial release with Visual Studio 2012 and does not cover most of the points needed for the certification. What about .Net Core? ASP.NET Identity?...

Hi,
The aim of this course was to update the 2012 version to .NET 4.7 and VS2015.
A brand new ASP.NET Core course is being released in about two weeks time, you can already get its GitHub repository from:
https://github.com/MicrosoftLearning/20486D-DevelopingASPNETMVCWebApplications
HTH.

Hi,
Thank you for this comment. I'm pretty sure this will help my clients for the future.


Problems with the simple Ray Tracing Simulation

Hi,
I am working on a project, where we want to use pylayers. Nevertheless I have really problems to install it successfully. We had to made some changes to run the simple ray tracing simulation, as shown in the documentation. But it doesn't look like the result in the documentation.

Could somebody who installed it successfully provide a list with the packages that are installed? That would help us a lot. At the moment we are working with Ubuntu 14.04 with Python 2.7 and followed the instructions on the install page.
Thanks!

So, I figured out how to replace the sender and receiver, but still the rays are not displayed in the figure.

We had to made some changes in the rays.py to make it work, as you can see in the code. Has anybody an idea what could be wrong?
Thank you!

Hi, sorry for that late answer.
your output is quite strange. It seems that the simulation is not yet finished.
At this point I can't decide if this s a simulation or a visualization issue.
Could you print the return of DL.R ( the repr of rays)?

Hi, no problem! Thanks for your answer.
To make it more easy I use now the simple 4 line Ray Simulation.

If I run this file, I get the following output.

My guess is that something is wrong with my environment or the installation.
Thank you for your help.

Ok thanks.
Could you just execute the code ( until line 10 ) and type DL.R ( without parenthesis) in your terminal and show me the output.

Here is the Output.

Ok. So this is a RT problem, not a visualization one.
I also face this problem, this a clearly a bug.
I'll investigate this, meanwhile, I can give you a workaround:
from pylayers.simul.link import *
L=Layout('defstr.lay')
rx = np.array([8,4,1.6])
tx = np.array([2,3,1.5])
L.build()
L.dumpw() # <= This is the trick
DL=DLink(L=L,a=tx,b=rx)
DL.eval(force=True)

L.dumpw() saves the graphs obtained from L.build(). It avoids to do again and again this graph building step (which can be quite long for complex layouts). For some reasons, if graphs are not saved ( which is normally the default behaviour), DL is not able to get them directly from the Layout object.... This will be fixed.

Hi,
sorry for the late response.
I tried your workaround in my virtual machine, but the visualization is still without any rays.  Here is my console output.

As you can see, I did this step by step. If I execute this code as a .py-file, i don't get the mayavi error.
Thank you for your support!

Causes highlighted in  #290


Cannot reproduce the result

Hi authors,
I tried to reproduce the result you declared in the paper using zephyr-7b-sft-full
If following the algorithm you design in the paper, only the performance of the first iteration can increase, and then it decreases after later a few iterations. And I set the epoch = 3.
Could you give me some guidance? Thanks!

@Joyyang158 To reproduce the results from our paper, you would need:

Use zephyr-7b-sft-full at revision ac6e600eefcce74f5e8bae1035d4f66019e93190.
Use HF generation, as VLLM generation differs from what we used in the paper.
Set the total number of epochs to 6, and stop as needed.
For evaluation, use lm-evaluation-harness at version v0.4.0.

For settings different from our original configuration, you may need to adjust the parameters. We are currently working on tuning the parameters for VLLM generation and will provide updates once we have results.
Thank you.

Thanks for your reply. I will try epoch = 6. And There are two things I want to check with you

Every time, you use previous two iterations instead of one iteration as shown in the paper?
Every time, the base model is sft model or the iterative model like the model-iter0,1,2,3?

Thanks!

@Joyyang158

previous two iterations' data works better than single iteration.
the base model is changed to iter0,1,2

I see, thanks for your help and patience!


Made message store and log factories configurable via application's config

Made message store and log factories configurable via application's config (#48)
Fixed issue #54, not creating actuator's endpoint if concurrent is enabled
Improved error description on auto config failure analyzer

Codecov Report

Merging #55 into master will decrease coverage by 1.52%.
The diff coverage is 91.20%.

@@            Coverage Diff             @@
##           master      #55      +/-   ##
==========================================
- Coverage   93.42%   91.90%   -1.53%
==========================================
  Files          17       19       +2
  Lines         289      321      +32
  Branches       23       21       -2
==========================================
+ Hits          270      295      +25
- Misses         10       16       +6
- Partials        9       10       +1

Impacted Files
Coverage Δ

...nfig/QuickFixJClientEndpointAutoConfiguration.java
100.00% <ø> (ø)

...nfig/QuickFixJServerEndpointAutoConfiguration.java
100.00% <ø> (ø)

...oot/starter/connection/SessionSettingsLocator.java
88.23% <ø> (ø)

...igure/server/QuickFixJServerAutoConfiguration.java
90.90% <87.09%> (-9.10%)
:arrow_down:

...reanalyzer/QuickFixJAutoConfigFailureAnalyzer.java
93.75% <87.50%> (-6.25%)
:arrow_down:

...igure/client/QuickFixJClientAutoConfiguration.java
90.90% <89.28%> (-5.97%)
:arrow_down:

...ng/boot/starter/autoconfigure/ConnectorConfig.java
100.00% <100.00%> (ø)

...j/spring/boot/starter/autoconfigure/LogMethod.java
100.00% <100.00%> (ø)

...boot/starter/autoconfigure/MessageStoreMethod.java
100.00% <100.00%> (ø)

... and 3 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 2e23f16...72f0262. Read the comment docs.


Updated bracket-bevy to Bevy 0.11.0

As mentioned in this issue, I updated bracket-bevy to use Bevy 0.10.1.
I Replaced stages with stageless sets. I also Replaced the function body of update_mouse_position to handle Window entities, with a workaround for the panic I mentioned. I also edited the Msaa resource so it reflects that it's an enum. I'm not sure how this branch is being used so if you would prefer the merge go into master as not to deal with merge conflicts let me know.
EDIT:
I added some changes to this pull request so that bracket-bevy now depends on Bevy 0.11.0. Changes were made to use the new scheduling system in 0.11.0. More testing is likely going to be needed however before merging this pull request.
I did notice two different bugs that occur rarely that both seem to happen once per 70-100 application launches. The first one appears to happen no matter what and results in a window with a gray screen and none of the systems appear to run. I'm not exactly sure what causes it because I can only reproduce the issue when running the application from a terminal, running from Visual Studio Code cannot seem to trigger the issue.
The second appears to happen if there are two or more different systems in the application that call the set() method on BracketContext. Changing the schedules of the systems and forcing them to execute in a specific order using .after() on the systems did not seem to resolve the issue. In this case it will occasionally cause this line in Bevy's render function to panic.

Is this intended to support GUI pseudo-terminals only? I'm trying to port my existing project using bevy + bracketlib over to using your updated bracket-bevy but disabling default features on bracketlib and enabling curses still leads to bevy creating a GUI terminal

Yes, bracket-bevy utilizes Bevy's renderer to provide a gui based pseudo terminal. I'm not sure if the curses backend is currently in a working state.

Thanks for the update. I'll keep using my own much less capable hacked-together bracket+bevy stack for now. I'd love to contribute here, but my Rust isn't sharp enough yet to dive into a codebase as complex as yours.

After a really long absence, I'm trying to schedule some bracket lib in the
next month. Toddler, burnout, Covid and a mother with extreme health issues
got me.
My plan is to bring it up to the latest Bevy, and make some better
examples. Recent Bevy changes will mean redoing some parts. (The Bevy
changes also delayed the next book I'm working on, which uses Bevy.)
On Sat, Dec 30, 2023, 10:57 AM sparr @.***> wrote:

Thanks for the update. I'll keep using my own much less capable
hacked-together bracket+bevy stack for now. I'd love to contribute here,
but my Rust isn't sharp enough yet to dive into a codebase as complex as
yours.
—
Reply to this email directly, view it on GitHub
https://github.com/amethyst/bracket-lib/pull/342#issuecomment-1872564788,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ADRU4344HE7I5SZHM3KMUX3YMBBYTAVCNFSM6AAAAAAYY2YEVKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZSGU3DINZYHA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


[ttx/xmlWriter] allow to override OS-specific line endings

When TTX files are under version control and are being modified across multiple platforms, it's good to be able to not use the default os.linesep, currently used by XMLWriter, but instead specify one particular line ending for all different platforms (e.g. most likely, LF).
This PR adds a newlinestr keyword argument to XMLWriter constructor, as well as to TTFont.saveXML method.
It also adds a --newline option to ttx console script.
The default does not change (ie. we keep using the native line endings).
However, we may wish to revise this in the future and always write Unix-style line feeds, since the XML specification says XML processor have to normalize them as such anyway. See https://www.w3.org/TR/REC-xml/#sec-line-ends
BTW, lxml always writes "\n" as line endings when pretty_print-ing XML, even on Windows.

Looks good to me. I wouldn't be opposed to make the default '\n'.

Agree to making the default '\n'


This driver does not support retrieving URLs.

Hi there,
I just update to new version and got this error when I use
Storage::disk('azure')->url($sd->media_path);

Duplicate of https://github.com/Azure-OSS/azure-storage-php-adapter-laravel/issues/1

I will add something to the docs about this


KATs with data please

Hi!  I wrote an implementation in c++ of CircleHash, but I need to ensure that it is correct.
I extracted out 3-4 simple KATs from circlehash64_test.go but those have no data vectors.  They are only a seed with a null vector/msg payload.  This is great for testing Reset/Init/Seed functionality, and my implementation passes those fine.  However, none of the Update/Hash data functionality is exercised.
Could you please publish KATs with seed/iv, data/msg, and expecteds?   Even 3-4 more with data vectors would be GREATLY appreciated!
Thanks in advance!

To be specific, I mean helpful vectors like "abc". "cba", "cab", "HelloWorld" etc.  Rather than the 16k subroutine for data which I would then also have to implement and not know if I have correct, etc.
For example, here are my KATs for Murmur3, in files for my testing of my implementation of it.  Obviously, KATs for CircleHash could be anything, and in the format currently used in *_test.go, just illustrating what I mean...
HASH_MURMUR3_32.testvector.txt
HASH_MURMUR3_32.expected.txt
HASH_MURMUR3_32.iv.txt

Hi @Exaelitus

To be specific, I mean simple vectors like "abc". "cba", "cab", "HelloWorld" etc. Rather than the 16k subroutine for data which I would then also have to implement and not know if I have correct, etc.

Great point!
BTW, I've been working on publishing CircleHash64fx, which will replace CircleHash64f as the default 64-bit hash in CircleHash.
The new hash will have an improved API and I'll be sure to take your suggestion to include a few simpler-to-implement KATs.
In addition to adding a few simple test vectors, I'll also include an intermediate test like what BLAKE3 uses (which is simpler than the current test that consolidates many thousands of digests into one KAT).
https://github.com/BLAKE3-team/BLAKE3/blob/master/test_vectors/test_vectors.json

That would be perfect, thanks!
In the meantime, do you have 2-3 that I could use to test my current implementation of CircleHash64f ?   This would help me know if I'm porting things correctly and be in better position for when you publish CircleHash64fx.  No worries if not, thanks!


docs: Fix conflict tag introduced in PR 104

Last one hopefully.
Fixing a conflicting tag introduced in #104  . I overlooked this and added the same tag twice, sorry about the PR blast, but this should round out the work needed to update all user docs. Thank you for handling these with expediency!

Please prioritize this small PR so I can submit the docs' updates for Security Command Center. Thank you!


Lab

@finchl We will now proceed to close this thread. If there are further questions regarding this matter, please reopen it and we will gladly continue the discussion.


Workflow fails if an action doesn't have a name

What happened:
When a workflow containing an unnamed action is executed, it fails with the following error: 'Failed to find an action with the specified name '' in the state with name 'TheNameOfTheActionState''
What you expected to happen:
The workflow to run, the action to be executed as the specification didn't make actions' name required.
How to reproduce it:

Deploy the Greeting sample from SW:

id: greeting
version: '1.0'
specVersion: '0.8'
name: Greeting Workflow
description: Greet Someone
start: Greet
functions:
- name: greetingFunction
  operation: file://myapis/greetingapis.json#greeting
states:
- name: Greet
  type: operation
  actions:
  - functionRef:
      refName: greetingFunction
      arguments:
        name: "${ .person.name }"
    actionDataFilter:
      results: "${ {greeting: .greeting} }"
  end: true

Execute the workflow:

person:
  name: John

The workflow fails, the output of the worker is:

[11:25:07] fail: Synapse.Worker.Services.WorkflowActivityProcessorFactory[0]
An error occured while creating a new processor for the activity with id '8193c1f0-dc38-4641-9e02-cbe13f6d19bc': System.NullReferenceException: Failed to find an action that matches the metadata specified by the activity with id '8193c1f0-dc38-4641-9e02-cbe13f6d19bc'
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.CreateActionActivityProcessor(StateDefinition state, V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 125
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.Create(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 72
[11:25:09] warning: Synapse.Worker.Services.Processors.OperationStateProcessor[0]
An error occured while executing the activity 'a27734eb-2612-4e85-81ff-086a54e5f124' (type: 'State')/r/nDetails:/r/nSystem.NullReferenceException: Failed to find an action that matches the metadata specified by the activity with id '8193c1f0-dc38-4641-9e02-cbe13f6d19bc'
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.CreateActionActivityProcessor(StateDefinition state, V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 125
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.Create(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 72
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.Synapse.Worker.Services.IWorkflowActivityProcessorFactory.Create(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 320
at Synapse.Worker.Services.WorkflowActivityProcessor.CreateProcessorFor(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessor.cs:line 196
at Synapse.Worker.Services.Processors.OperationStateProcessor.CreateProcessorFor(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\Processors\OperationStateProcessor.cs:line 50
at Synapse.Worker.Services.Processors.OperationStateProcessor.StartAsync() in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\Processors\OperationStateProcessor.cs:line 107
at Synapse.Worker.Services.Processors.OperationStateProcessor.InitializeAsync(CancellationToken cancellationToken) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\Processors\OperationStateProcessor.cs:line 64
at Synapse.Worker.Services.WorkflowActivityProcessor.<>c__DisplayClass30_0.<b__0>d.MoveNext() in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessor.cs:line 105
[11:25:09] warning: Synapse.Worker.Services.WorkflowRuntime[0]
An error occured while executing the workflow instance: System.NullReferenceException: Failed to find an action that matches the metadata specified by the activity with id '8193c1f0-dc38-4641-9e02-cbe13f6d19bc'
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.CreateActionActivityProcessor(StateDefinition state, V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 125
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.Create(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 72
at Synapse.Worker.Services.WorkflowActivityProcessorFactory.Synapse.Worker.Services.IWorkflowActivityProcessorFactory.Create(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessorFactory.cs:line 320
at Synapse.Worker.Services.WorkflowActivityProcessor.CreateProcessorFor(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessor.cs:line 196
at Synapse.Worker.Services.Processors.OperationStateProcessor.CreateProcessorFor(V1WorkflowActivity activity) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\Processors\OperationStateProcessor.cs:line 50
at Synapse.Worker.Services.Processors.OperationStateProcessor.StartAsync() in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\Processors\OperationStateProcessor.cs:line 107
at Synapse.Worker.Services.Processors.OperationStateProcessor.InitializeAsync(CancellationToken cancellationToken) in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\Processors\OperationStateProcessor.cs:line 64
at Synapse.Worker.Services.WorkflowActivityProcessor.<>c__DisplayClass30_0.<b__0>d.MoveNext() in C:\Dev\Neuroglia\Github\synapse\src\apps\Synapse.Worker\Services\WorkflowActivityProcessor.cs:line 105

Note to self, it probably have an impact on the Dashboard as well

@JBBianchi it is a requirement of Synapse, as it is the only safe and clean way to reference actions.
Could I ask you to open a feature request on the SW spec to enforce names and their uniqueness amongst a branch?

Name is going to be mandatory at some point in the spec https://github.com/serverlessworkflow/specification/issues/685


Use TypeScript strict mode

This enables TypeScript's strict mode, and fixes some issues that it turned up.
I did not fix issues with the dataframe component, because there are many changes in #1198 that could conflict. I set the tsconfig.json file to exclude the dataframe/ directory so that this won't cause problems with CI. After this is merged to main, then main can be merged into the branch for #1198, and that exclusion can be removed there.

I just pushed some more changes to tsconfig.json which were informed by this article: https://www.totaltypescript.com/tsconfig-cheat-sheet


Add capability to set initial request context. Fixes gh-1740.

Add context field for the request to be able to generate providerStates when a Contract for HTTP to a PACT.

@mathieu-amblard Please sign the Contributor License Agreement!
Click here to manually synchronize the status of this Pull Request.
See the FAQ for frequently asked questions.

I saw that you've modified Contract to add requestContext. Maybe we can leverage the metadata section? That way for PACT we can add arbitrary things without impacting how Contract looks like. WDYT?

The problem is that for the standard HTTP contract that uses MockMvc that field is irrelevant. I think we should go with the metadata approach.

Yes, you are right, so let's go for the metadata approach.

Hi @marcingrzejszczak,
I just push a new version with the metadata approach.
Thanks in advance for your feedbacks.


Log mTLS permissive warning only once

2020-11-03T18:17:23.189271Z     warning envoy filter    mTLS PERMISSIVE mode is used, connection can be either plaintext or TLS, and client cert can be omitted. Please consider to upgrade to mTLS STRICT mode for more secure configuration that only allows TLS connection with client cert. See https://istio.io/docs/tasks/security/mtls-migration/
2020-11-03T18:17:23.190018Z     warning envoy filter    mTLS PERMISSIVE mode is used, connection can be either plaintext or TLS, and client cert can be omitted. Please consider to upgrade to mTLS STRICT mode for more secure configuration that only allows TLS connection with client cert. See https://istio.io/docs/tasks/security/mtls-migration/
2020-11-03T18:17:23.192851Z     warning envoy filter    mTLS PERMISSIVE mode is used, connection can be either plaintext or TLS, and client cert can be omitted. Please consider to upgrade to mTLS STRICT mode for more secure configuration that only allows TLS connection with client cert. See https://istio.io/docs/tasks/security/mtls-migration/
2020-11-03T18:17:23.193503Z     warning envoy filter    mTLS PERMISSIVE mode is used, connection can be either plaintext or TLS, and client cert can be omitted. Please consider to upgrade to mTLS STRICT mode for more secure configuration that only allows TLS connection with client cert. See https://istio.io/docs/tasks/security/mtls-migration/

log is very spammy. Should log it once for the lifetime of a pod

I think this has been addressed by https://github.com/istio/proxy/pull/3145 and can be closed. Would you please help double check? Thanks! @howardjohn


Add weighted randomization

I order to help align with funclookup the preferable method of doing this would take in two array options. One of the options and the other weights. Example:
options := []interface{
  "hello",
  2,
  45.555,
}

weights := []float32{
  0.5,
  1.5,
  3.75,
}

output := Weighted(options, weights)

v6.1.0


Pass first argument of action parameters as open state of promises

Name says it all
function getPlanet (id) {
  return fetch(`/planets/${id}`).then(res => res.json())
}

let action = repo.push(getPlanet, 'mars')

action.onOpen(data => console.log(data))
// 'mars'

action.onDone(data => console.log(data))
// { id: 'mars', name: 'Mars' }

Related issues:
https://github.com/vigetlabs/microcosm/issues/296

Codecov Report

Merging #299 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master   #299   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          22     22
  Lines         807    808    +1
=====================================
+ Hits          807    808    +1

Impacted Files
Coverage Δ

src/coroutine.js
100% <100%> (ø)
:arrow_up:

src/microcosm.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

@greypants You can test this in<EMAIL_ADDRESS>Could you give it a shot?