text:
Missing dependency in RepositoryDoc.java

Hello,
When running a connector developed from the Graph traversal sample, I get a NoClassDefFoundError exception on the com.google.api.client.repackaged.com.google.common.base.Strings class inside the getDoc() method.
More specifically, the missing library is called by the addChildId() method inside the RepositoryDoc.java class inside the indexing template project.
I already modified the getIds() method so let me know if I'm doing something wrong.
Here is the complete stacktrace :

Exception in thread "TraverserRunner-default-39" com.google.common.util.concurrent.ExecutionError: java.lang.NoClassDefFoundError: com/google/api/client/repackaged/com/google/common/base/Strings
at com.google.common.util.concurrent.SimpleTimeLimiter.wrapAndThrowExecutionExceptionOrError(SimpleTimeLimiter.java:271)
at com.google.common.util.concurrent.SimpleTimeLimiter.callWithTimeout(SimpleTimeLimiter.java:154)
at com.google.enterprise.cloudsearch.sdk.indexing.traverser.ParallelProcessingTraverserWorker$PollAndProcessRunnable.run(ParallelProcessingTraverserWorker.java:153)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.base/java.lang.Thread.run(Thread.java:844)
Caused by: java.lang.NoClassDefFoundError: com/google/api/client/repackaged/com/google/common/base/Strings
at com.google.enterprise.cloudsearch.sdk.indexing.template.RepositoryDoc$Builder.addChildId(RepositoryDoc.java:180)
at com.sword.cloudsearch.connectors.sites.Connector$SitesRepository.buildDocumentAndChildren(Connector.java:307)
at com.sword.cloudsearch.connectors.sites.Connector$SitesRepository.getDoc(Connector.java:253)
at com.google.enterprise.cloudsearch.sdk.indexing.template.ListingConnector.process(ListingConnector.java:300)
at com.google.enterprise.cloudsearch.sdk.indexing.traverser.ParallelProcessingTraverserWorker$PollAndProcessRunnable$ProcessingFunction.call(ParallelProcessingTraverserWorker.java:192)
at com.google.enterprise.cloudsearch.sdk.indexing.traverser.ParallelProcessingTraverserWorker$PollAndProcessRunnable$ProcessingFunction.call(ParallelProcessingTraverserWorker.java:180)
at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java)
... 3 more

I tried importing the corresponding Maven dependency but the Strings class doesn't seem to be inside.
Thanks,
Hugo GEORGET

It appears that this error occurs if your build gets version 1.26.0 or later of google-http-client.
This was fixed by commit 0097caf.

authors: HugoGEORGET wiarlawd

repo: google-cloudsearch/connector-sdk


text:
Coefficient of restitution

Hi, I am a student trying to use MuJoCo for some physics simulation. I was wondering if there is a way to define the coefficient of restitution for geometries, or somehow translate coefficient of restitution to solimp and/or solref parameters?

https://mujoco.readthedocs.io/en/latest/modeling.html#restitution

source: gharchive/issue

authors: Aryan-Satpathy kevinzakka

repo: google-deepmind/mujoco

license_type: permissive

license_source: github-api


text:
mujoco is unable to show models that have undergone approximately convex decomposition

Intro
Hi!
I am a graduate student , I use MuJoCo for my research on Robotic arm.
My setup
mujoco-3.2.0
What's happening? What did you expect?
I'd like to simulate pouring objects into a bowl，same as #357.
So I used CoACD for approximately convex decomposition. After turning,  I import the obj format model into mujoco. The model is not fully displayed.How can I do this? Thanks!
Steps for reproduction

Minimal model for reproduction
If you encountered the issue in a complex model, please simplify it as much as possible (while still reproducing the issue).

minimal XML

<mujoco>
  <worldbody>
    <light pos="0 0 1"/>
    <geom type="sphere" size="1" rgba="1 0 0 1"/>
  </worldbody>
</mujoco>

Code required for reproduction
<mujoco>
  <include file="scene1.xml"/>

  <worldbody>
    <light diffuse=".5 .5 .5" pos="0 0 3" dir="0 0 -1"/>

    <body name="camB" pos="0 0 30" euler="0 0 90 ">
      <geom name="b" type="mesh" mesh="b" ></geom>
    </body>

  </worldbody>

  <asset>
    <mesh name="b" file="xmodel/bow.obj" scale="1 1 1"></mesh>
  </asset>

</mujoco>

Confirmations

[X] I searched the latest documentation thoroughly before posting.
[X] I searched previous Issues and Discussions, I am certain this has not been raised before.

Does your obj contains multiple meshes? If so you need to use https://github.com/kevinzakka/obj2mjcf

Does your obj contain multiple meshes? If so you need to use https://github.com/kevinzakka/obj2mjcf
Did I choose the right command？But nothing happened.

I got this one. But loading failed again.

Does your obj contain multiple meshes? If so you need to use https://github.com/kevinzakka/obj2mjcf
Did I choose the right command？But nothing happened.

@quagla

I can't tell from this if your OBJ has sub-meshes, which are not supported in MuJoCo. But you can split the file with obj2mjcf.

Does your obj contain multiple meshes? If so you need to use https://github.com/kevinzakka/obj2mjcf
Did I choose the right command？But nothing happened.

@quagla

I can't tell from this if your OBJ has sub-meshes, which are not supported in MuJoCo. But you can split the file with obj2mjcf.

Thank you! I get it. Things work out perfectly！


text:
Radam

Closes #8
Couple things:

My implementation with cond seems hackish, any tips?
The paper uses 4 as threshold, but the official implementation uses 5, which value should we use?
It's passing parabel but failing rosenbrock (with a divergence), I will check it out on Monday
Any other feedback on the implementation is welcome!

You know what, I don't like this implementation, it needs to be more modular (like the AdamW weight scaling). I will try to fix it and then ping you when it's better or I need some help

So, this version almost works, except that if ro >= threshold we should return the SGD+momentum updates, not Adam's update, any idea how we could reverse Adam's adaptive stuff? Or do you prefer the original version where there's a scale_by_radam transform?
def rectify(b2: float = 0.999,
                threshold: float = 5.0) -> GradientTransformation:
  """..."""

  ro_inf = 2./(1 - b2) - 1
  def _radam_update(args):
    ro = args[0]
    updates = args[1]
    r = jnp.sqrt((ro - 4)*(ro - 2)*ro_inf/((ro_inf - 4)*(ro_inf - 2)*ro))
    updates = jax.tree_map(lambda g: r*g , updates)
    return updates

  def init_fn(params):
    return RectifyState(b2t=b2, count=jnp.zeros([], jnp.int32))

  def update_fn(updates, state, params=None):
    del params
    count_inc = _safe_int32_increment(state.count)
    b2t = state.b2t
    b2t *= b2
    ro = ro_inf - 2*count_inc*b2t/(1 - b2t)
    updates = jax.lax.cond(ro >= threshold, _radam_update, lambda _: updates,
                    (ro, updates))
    return updates, RectifyState(b2t=b2t, count=count_inc)

  return GradientTransformation(init_fn, update_fn)

I like the idea of this being decoupled from the standard Adam part similarly to adamw, however I am struggling to see the right way to achieve it. As you mentioned we would need to invert Adam when not entering the branch which differently from weight decay is something that only makes sense if you are following Adam. Therefore the split wouldn't really allow you to freely compose it anyway. In which case I would be inclined to go with the first version

I think I've implemented it correctly, but I'm getting a divergence in the rosebrock test, any idea what could be causing it?

I can't spot anything obviously wrong? By divergence do you mean literal divergence to infinity?

Well, looks pretty big to me
FAIL: test_rosenbrock_radam (__main__.AliasTest)
...
AssertionError:
Not equal to tolerance rtol=0.03, atol=0.03
Error in value equality check: Values not approximately equal
Mismatched elements: 2 / 2 (100%)
Max absolute difference: 3069795.5
Max relative difference: 3069795.5
 x: array([3069796.5  ,   23477.021], dtype=float32)
 y: array([1., 1.], dtype=float32)

Mmm yeah that is pretty bad indeed :(

Maybe you could compare the output of a single step of your radam implementation to some canonical radam implementation (even in another framework)?

Hey @mtthss I changed the learning rate to match the common learning rate in TF-addons and now it passes. Think that's enough?

Ok, the last message was lazy on my part, here's a colab comparing my implementation and Tenforflow Addon's

The results are very similar in the first 10-step test with 1e-1 learning rate
Both converge with 1e-3 lr and 10000 steps.

So @mtthss, what do you think?

Looks good! I'll merge!
Thank you a lot for your contribution!

What's the recommended way to use weight decay with radam, since it doesn't have a weight_decay argument like adamw does? optax.chain(optax.add_decayed_weights(weight_decay), optax.radam(lr))?

source: gharchive/pull-request

authors: carlosgmartin joaogui1 mtthss

repo: google-deepmind/optax


text:
Add images: Android Basics in Compose

https://developer.android.com/codelabs/basic-android-kotlin-compose-composables-practice-problems?continue=https%3A%2F%2Fdeveloper.android.com%2Fcourses%2Fpathways%2Fandroid-basics-compose-unit-1-pathway-3%23codelab-https%3A%2F%2Fdeveloper.android.com%2Fcodelabs%2Fbasic-android-kotlin-compose-composables-practice-problems#4
I have some errors with compose quadrant, thats no work on Modifier.weight, please update the codelab or write to me about how to fix this error.
Thanks

@JuanDiegoCastellanos
Please provide the the screenshot of the error so we could help with troubleshooting.

The issue is closed as no further clarification of it was provided.

authors: JuanDiegoCastellanos osuleymanova


text:
what is the input dataset format for custom dataset?

Hello guys, i am trying to dedup my custom dataset, but there seems no templete for dataset format in the repo.
So i want to confirm that, thank you guys

You should be able to load any random text file in and it will work. If you work through an example in
https://github.com/google-research/deduplicate-text-datasets/blob/master/scripts/load_dataset_hf.py
you should see how to do it. Let me know if you have any questions.

authors: carlini mittsommer

license_source: bigquery


text:
Update the code for the bnn_hmc project

We update the code for the bnn_hmc project.

@googlebot I signed it!

repo: google-research/google-research


text:
More light-weight LMScores proto.

In a simple scenario there is no need to return symbols every time LMScores proto is requested since these are generally immutable if the scores don't need to be sorted.

I suppose we can introduce the flags controlling this behavior in the request protos.
@roark-google

Dear @agutkin,
if no one worked on your suggestion yet, I can propose working on it by adding a new optional field to the LMScores message that controls whether or not to include the symbols and implement test cases using the Google Test framework to validate the solution.
if that suits you, it will be a great opportunity to contribute to one of google's research repos and I will be happy to assign me the task.

Still sounds great, have no issue with this approach, as I am a fresh graduate and I am very motivated to learn and contribute to open source and real cases, to help increase my skills and find a job.
I will begin with implementing my proposal and test it and send a PR and then we evaluate the situation, if that suits you.
Thank you.

@agutkin
I have made the required changes and made test cases using the Google test framework; all have passed while the message can be serialized and deserialized correctly using the modified code., I will make a pull request to review it.
Test Cases

f the symbols field is not needed, it can be omitted and the message will still work correctly.
If the symbols field is needed, it can be included and the message will work correctly.
The probabilities field should always be present and have the correct number of elements.
The normalization field should be present and have the correct value.

#include <gtest/gtest.h>
#include "mozolm/models/lm_scores.pb.h"

TEST(LMScoresTest, NoSymbolsField) {
  mozolm::LMScores scores;
  scores.add_probabilities(0.1);
  scores.set_normalization(1.0);

  // Serialize and deserialize the message to ensure it works without the symbols field.
  std::string serialized;
  ASSERT_TRUE(scores.SerializeToString(&serialized));
  mozolm::LMScores deserialized_scores;
  ASSERT_TRUE(deserialized_scores.ParseFromString(serialized));
  ASSERT_EQ(1, deserialized_scores.probabilities_size());
  ASSERT_EQ(0.1, deserialized_scores.probabilities(0));
  ASSERT_EQ(1.0, deserialized_scores.normalization());
  ASSERT_EQ(0, deserialized_scores.symbols_size());
}

TEST(LMScoresTest, WithSymbolsField) {
  mozolm::LMScores scores;
  scores.add_symbols("a");
  scores.add_probabilities(0.1);
  scores.set_normalization(1.0);

  // Serialize and deserialize the message to ensure it works with the symbols field.
  std::string serialized;
  ASSERT_TRUE(scores.SerializeToString(&serialized));
  mozolm::LMScores deserialized_scores;
  ASSERT_TRUE(deserialized_scores.ParseFromString(serialized));
  ASSERT_EQ(1, deserialized_scores.probabilities_size());
  ASSERT_EQ(0.1, deserialized_scores.probabilities(0));
  ASSERT_EQ(1.0, deserialized_scores.normalization());
  ASSERT_EQ(1, deserialized_scores.symbols_size());
  ASSERT_EQ("a", deserialized_scores.symbols(0));
}

TEST(LMScoresTest, ProbabilitiesField) {
  mozolm::LMScores scores;
  scores.add_probabilities(0.1);
  scores.add_probabilities(0.2);
  scores.set_normalization(1.0);

  // Ensure the probabilities field has the correct number of elements.
  ASSERT_EQ(2, scores.probabilities_size());
  ASSERT_EQ(0.1, scores.probabilities(0));
  ASSERT_EQ(0.2, scores.probabilities(1));
}

TEST(LMScoresTest, NormalizationField) {
  mozolm::LMScores scores;
  scores.add_probabilities(0.1);
  scores.set_normalization(2.0);

  // Ensure the normalization field has the correct value.
  ASSERT_EQ(2.0, scores.normalization());
}

int main(int argc, char **argv) {
  testing::InitGoogleTest(&argc, argv);
  return RUN_ALL_TESTS();
}

Thank you @aadhamm!

authors: aadhamm agutkin

repo: google-research/mozolm


text:
Update football network to parametric action distribution API

Now football network uses parametric action distribution to sample and postprocess actions.

Looks good. Added a comment.

Should I also change
https://github.com/google-research/seed_rl/blob/8af694ebd21af5f1b14bd8891e84aa42c5f13b2f/agents/vtrace/networks.py#L75
in order to maintain consistency.

That would be great thanks

Thanks

authors: CStanKonrad lespeholt


text:
Add get_world_com() to Python interface

This PR adds get_world_com() together with minor changes in the CppAD Python bindings.
The first commit should solve #103.

Thanks, LGTM.

authors: ErikGartner erwincoumans


text:
Speech synthesis only works while online

There's also a bug that if Chrome goes offline and back online, speech synthesis stops.

@dandv is that true on all platforms? i thought on Mac it could/would use the system speech synthesis stuff.

You might be right:
speechSynthesis.getVoices().forEach(voice => console.log(voice.localService));

shows "true" 64 times and "false" 19 times on Mac OS X, but only false 19x on Ubuntu.

authors: dandv petele

repo: google/WebFundamentals


text:
Add AWS IAM Credential Support to apt-golang-s3

One of the things I'd like to get away from is having to use credentials at all in my s3 resources and instead rely on the host's IAM role. This patch will make that happen - using static credentials if they're there, and falling back on the default AWS Credential Provider Path if they are not.
This is, admittedly, difficult to test. The existing test should pass fine, but short of spinning up an EC2 node with host credentials I'm not sure how to write a test for it. Suggestions welcome there.
In any case, thanks for creating this tool. It solves my problem of having to install an entire python toolchain just to get some updates from s3, which makes me pretty thrilled :+1:

I signed it!

Hi folks! Looks like the agreement is approved and shows up for me. Is there anything else you need from me for reviewing this?

@patcable I'll take a look

authors: adamvduke patcable


text:
Quickstart Notebook Error

Hi!
This seems to be an awesome tool for Taylor Models, but I am having trouble using it from the start. I have tried following the quickstart model both in google colab notebook as well as on my local Windows and Linux machines, but to no avail. Any ideas on what might be causing this?
`
import autobound.jax as ab
import jax.numpy as jnp
f = lambda x: 1.5 * jnp.exp(3 * x) - 25*x**2
x0 = .5
trust_region = (0, 1)
bounds = ab.taylor_bounds(f, max_degree=2)(x0, trust_region)
bounds.coefficients'

TypeError                                 Traceback (most recent call last)
 in <cell line: 8>()
6 trust_region = (0, 1)
7 # Compute quadratic upper and lower bounds on f.
----> 8 bounds = ab.taylor_bounds(f, max_degree=2)(x0, trust_region)
9 bounds.coefficients  # == (f(x0), f'(x0), )
5 frames
/usr/local/lib/python3.10/dist-packages/autobound/jax/jaxpr_editor.py in vertex_to_var_or_literal(vertex)
170     if vertex[0]:
171       _, count, suffix, aval = vertex
--> 172       if count not in count_to_var:
173         count_to_var[count] = jax.core.Var(count, suffix, aval)
174       return count_to_var[count]
TypeError: Var.init() takes 3 positional arguments but 4 were given

It seems that autograd does not work with the newest versions of jax, jaxlib, and typing_extensions. Instead, I rolled back versions to fall 2023 releases, and it works now.

It seems that autograd does not work with the newest versions of jax, jaxlib, and typing_extensions
It would be best to supply an upper bound constraint to these dependencies

repo: google/autobound


text:
./compile.sh fails with macports

Following the instructions at http://bazel.io/docs/install.html for a Mac using macports, I get:

$ ./compile.sh
cp: /include/archive.h: No such file or directory
cp: /include/archive_entry.h: No such file or directory

This seems to fix the problem:

$ git diff ./compile.sh
diff --git a/compile.sh b/compile.sh
index c4ff9bf..3a9231a 100755
--- a/compile.sh
+++ b/compile.sh
@@ -99,7 +99,8 @@ EOF

       elif [[ -e $macports_header ]]; then
         # For use with Macports.
-        archive_dir=$(dirname $(dirname $macports_header)) rm -f fromhost/*.[ah]
+        archive_dir=$(dirname $(dirname $macports_header))
+        rm -f fromhost/*.[ah]
         touch fromhost/empty.c
         cp "${archive_dir}"/include/{archive.h,archive_entry.h} fromhost/
         cp "${archive_dir}"/lib/{libarchive,liblzo2,liblzma,libcharset,libbz2,libxml2,libz,libiconv}.a \

Nice catch. Can you submit your patch with a github pull request?

OK, I sent a pull request.  I haven't done that before, so let me know if anything is fishy.

https://github.com/google/bazel/commit/e93638335955ff8d7e948f2d385319e458ee0ca4

authors: allenporter damienmg hanwen

repo: google/bazel


text:
Toolbar Navigation

Goal: Make left toolbar have two tabs. One is for block group navigation, the other is for toolbox navigation.

Tab 1: Blocks

Group blocks (the groupings will be directly transferred to .js files for generators)

Tab 2: Toolbox

Group blocks into toolboxes (allows duplicates across toolboxes, will be directly transferred into .xml files)

Note: Drag and drop to move blocks between groups/toolboxes will be completed in further iterations.

The separation would seam to disallow actions such as dragging a block into a toolbox category.

Seems all right if dragging over a tab opens that tab.

We decided to keep it in one tab and have the three top-node "folders" as "Block Library," "Toolbox," and "Workspace".

Resolved with navigation tree.

authors: AnmAtAnm chynu rachel-fenichel

repo: google/blockly-devtools


text:
Added Parameter to PPO for weighting value loss

I added a parameter to PPO for specifying the weight of the value loss.
See issue #424

Thanks for the PR @dierkes-j !

authors: btaba dierkes-j

repo: google/brax


text:
Update readme.md

Add link to relative LICENSE file

Thanks!

authors: alanyee dschuyler


text:
error push

(Note: Non-breaking issues are likely not to be prioritized. Please consider a PR in addition to your issue)

Expected Behavior
can not push
Actual Behavior
Steps to Reproduce the Problem
Help me please
PS E:\Clasp Google Script> clasp push
PS E:\Clasp Google Script> clasp push
drive.google.com ✖
Error: Looks like you are offline.
No valid E:\Clasp Google Script.clasp.json project file. You may need to create or clone a project first.
PS E:\Clasp Google Script> clasp push -w
console.cloud.google.com ✖
drive.google.com ✖
Error: Looks like you are offline.
Specifications

Node version (node -v): v16.16.0
Version (clasp -v): 2.4.1
OS (Mac/Linux/Windows): windows 10

@eka05  Try logging in with clasp first if you have not yet.
https://github.com/google/clasp#login
After logging in with clasp, you will need to create/clone the project first before being able to push.
https://github.com/google/clasp#create
https://github.com/google/clasp#clone

repo: google/clasp


text:
Accessing a possibly-undefined property is not caught for a union of @struct types

Consider the following code:
// ==ClosureCompiler==
// @compilation_level ADVANCED_OPTIMIZATIONS
// @output_file_name default.js
// ==/ClosureCompiler==

/** @struct @constructor */
var A = function A() {
  /** @type {!number} */
  this.a = 1;
  /** @type {!number} */
  this.c = 100;
};

/** @struct @constructor */
var B = function B() {
  /** @type {!number} */
  this.b = 2;
  /** @type {!number} */
  this.c = 200;
};

/** @param {!(A|B)} param */
function test(param) {
  alert('Here is A.a:' + param.a);
  alert('Here is (A|B).c:' + param.c);
}

test(new B());

It compiles successfully but won't work in release. Looks like {!(A|B)} makes compiler think that any of the fields from A and B is fine. Though, the only safe assumption here is a field that exists in both A and B. When code needs to refer a field specific to A or B an explicit type cast should be required to figure out the intent. As it is it's error prone since with @struct one expects to have an error when accessing an undefined property.
I'd expect compiler to require something like this:
/** @param {!(A|B)} param */
function test(param) {
  alert('Here is A.a:' + param.a);  // <== ERROR!
  var paramA = /** @type {!A} */ (param);
  alert('Here is A.a:' + paramA.a);  // <== OK
  alert('Here is (A|B).c:' + param.c);
}

We are pretty lenient with union types in general, but maybe we can be stricter when all types in the union are @struct, in the new type inference?

authors: MatrixFrog ihsoft

repo: google/closure-compiler


text:
animations: kinds of motion

I tried to run it and expected the animation to run, but y is not in scope in the blue code snippet (ie it not declared explicitly).
I put in a Number value (it says y is of type Number) and it works just fine.
program  = animationOf(wheel)
wheel(t) = translated(rotated(tire, -60 * t), t - 10, y)
tire     = circle(1) & solidRectangle(0.1, 2)

Yes, that's a typo in https://github.com/google/codeworld/blob/master/web/help/GuideUnit3.md.  Feel free to send a pull request, or I'll fix it if you prefer.

I can just edit it directly.

Just did. Thank you!

Fixed by #605

Thanks a bunch.  Your change is merged and pushed to production.

repo: google/codeworld


text:
Bmp280

Add BMP280 temperature sensor spec
This is a temperature sensor component of the sensor
This implements pseudoyaml and expands it to support recursive arithmetic and other operations
Adds a signed integer conversion option to spec

FYI @chrisfrederickson

@Gadgetoid may also be interested in this.

repo: google/cyanobyte


text:
README content not displaying for some repos

For example, the README for this repo https://devlibrary.withgoogle.com/products/android/repos/avidraghav-SpaceFlightNewsApp is not displaying properly!

For the record this is because we try to scan for headers on the page and this page's first header is way down the page.

Understood! Thank you Sam.

authors: samtstern techtrailhead

repo: google/devlibrary


text:
Google Earth Server fails to load Admin console when there is an invalid link to a published portable file

As reported:
We recently had to move to a new location and one of the NAS devices is not yet online. One of the portable maps (.glm) was quite large and was moved to the new NAS. In its place a sym-link was created. However, since the target file is not there, the admin console does not finish loading.
Reproduction steps

Install GEE Server
Optionally push and publish a database (so it's easier to see when the page load fails)
Load the admin console http://localhost/admin (user/password: geapacheuser/geeadmin) - Page should load correctly
Click on Manage Portables button - portables popup window appears
Create a symlink in the globes directory under /opt/google/gehttpd/htdocs/cutter/globes to a portable globe file that doesn't existsudo su - geapacheuser
cd /opt/google/gehttpd/htdocs/cutter/globes
ln -s /some_path_that_doesn't_exist/myglobe.glb .

Load or reload the the admin console http://localhost/admin

Expected:

Page loads correctly and displays available databases
Clicking on Manage Portables button displays portables popup window

Actual:

Page does not display any databases if they were previously present
Clicking on Manage Portables button displays the error message " There are currently no globes."
The web console displays a Javascript error similar to:TypeError: div is null[Learn More]  gees_utilities.js:83:7
    gees<.dom.show http://localhost/js/gees_utilities.js:83:7
    gees<.tools.notificationBar http://localhost/js/gees_utilities.js:469:7
    gees<.tools.errorBar http://localhost/js/gees_utilities.js:483:7
    gees.initialize.databases http://localhost/js/gees_initialize.js:109:7
    <anonymous> http://localhost/js/gees_initialize.js:236:1

No other errors appear in the error_log

I've done some preliminary investigation and it looks like the place where this is occurring is earth_enterprise/src/server/wsgi/serve/publish/publish_manager_helper.py in the _GetPortableGlobesList function. I'm sure there is an error occurring somewhere when it's trying to get info about the file and it's being swallowed up and doesn't get logged.

authors: avnishb tst-ccamp

repo: google/earthenterprise


text:
Check that @Override annotation is used in all appropriate places

Original issue created by eaftan@google.com on 2012-08-28 at 09:42 PM

Check that any method that overrides another method is annotated with @Override.  Perhaps this shouldn't be an error but rather a warning.

Sounds good. The style guide says @Override should always be used, unless the parent method is @Deprecated.

This is in the current checker as MissingOverride

authors: cushon nglorioso

repo: google/error-prone


text:
2.26.1: An unhandled exception was thrown by the Error Prone static analysis plugin. BugPattern: JUnitIncompatibleType

Error: [ERROR]
Error: [ERROR]      error-prone version: 2.26.1
Error:       BugPattern: JUnitIncompatibleType
Error:       Stack Trace:
Error:       java.lang.ClassCastException: class com.sun.tools.javac.code.Type$ClassType cannot be cast to class com.sun.tools.javac.code.Type$ArrayType (com.sun.tools.javac.code.Type$ClassType and com.sun.tools.javac.code.Type$ArrayType are in module jdk.compiler of loader 'app')
Error:    	at com.google.errorprone.bugpatterns.collectionincompatibletype.JUnitIncompatibleType.matchMethodInvocation(JUnitIncompatibleType.java:86)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.processMatchers(ErrorProneScanner.java:449)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitMethodInvocation(ErrorProneScanner.java:746)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitMethodInvocation(ErrorProneScanner.java:150)
Error:    	at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCMethodInvocation.accept(JCTree.java:1813)
Error:    	at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.visitExpressionStatement(TreeScanner.java:502)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitExpressionStatement(ErrorProneScanner.java:633)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitExpressionStatement(ErrorProneScanner.java:150)
Error:    	at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCExpressionStatement.accept(JCTree.java:1592)
Error:    	at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.visitBlock(TreeScanner.java:272)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:520)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitBlock(ErrorProneScanner.java:150)
Error:    	at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCBlock.accept(JCTree.java:1103)
Error:    	at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.visitMethod(TreeScanner.java:224)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:740)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitMethod(ErrorProneScanner.java:150)
Error:    	at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCMethodDecl.accept(JCTree.java:953)
Error:    	at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:96)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.visitClass(TreeScanner.java:203)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:548)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitClass(ErrorProneScanner.java:150)
Error:    	at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCClassDecl.accept(JCTree.java:860)
Error:    	at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:86)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:74)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:48)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scan(TreeScanner.java:111)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.scanAndReduce(TreeScanner.java:119)
Error:    	at jdk.compiler/com.sun.source.util.TreeScanner.visitCompilationUnit(TreeScanner.java:152)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:560)
Error:    	at com.google.errorprone.scanner.ErrorProneScanner.visitCompilationUnit(ErrorProneScanner.java:150)
Error:    	at jdk.compiler/com.sun.tools.javac.tree.JCTree$JCCompilationUnit.accept(JCTree.java:614)
Error:    	at jdk.compiler/com.sun.source.util.TreePathScanner.scan(TreePathScanner.java:60)
Error:    	at com.google.errorprone.scanner.Scanner.scan(Scanner.java:58)
Error:    	at com.google.errorprone.scanner.ErrorProneScannerTransformer.apply(ErrorProneScannerTransformer.java:43)
Error:    	at com.google.errorprone.ErrorProneAnalyzer.finished(ErrorProneAnalyzer.java:156)
Error:    	at jdk.compiler/com.sun.tools.javac.api.MultiTaskListener.finished(MultiTaskListener.java:132)
Error:    	at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1394)
Error:    	at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.flow(JavaCompiler.java:1341)
Error:    	at jdk.compiler/com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:933)
Error:    	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:104)
Error:    	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.invocationHelper(JavacTaskImpl.java:152)
Error:    	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)
Error:    	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)
Error:    	at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:126)
Error:    	at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:214)
Error:    	at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:1228)
Error:    	at org.apache.maven.plugin.compiler.TestCompilerMojo.execute(TestCompilerMojo.java:[208]XXXX
Error:    	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
Error:    	at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:370)
Error:    	at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:351)
Error:    	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:215)
Error:    	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:171)
Error:    	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:163)
Error:    	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
Error:    	at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:[210]XXXXXXX
Error:    	at org.apache.maven.lifecycle.internal.builder.multithreaded.MultiThreadedBuilder$1.call(MultiThreadedBuilder.java:195)
Error:    	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
Error:    	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
Error:    	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
Error:    	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
Error:    	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
Error:    	at java.base/java.lang.Thread.run(Thread.java:840)

This is the same issue as https://github.com/google/error-prone/issues/4291, it'll be fixed in the next release.

authors: cushon mdlnr


text:
Remove Chao :(

Release Note

NONE

/assign @whaught

/assign @whaught

repo: google/exposure-notifications-server


text:
Updated tests from SoFv2 repo

Description of what I changed

The fhirVersion numbers have been updated in the SoFv2 repo; bringing those changes here.
E2E test

TESTED:
Ran the tests and checked they pass.
Checklist: I completed these to help reviewers :)

[x] I have read and will follow the review process.

[x] I am familiar with Google Style Guides for the language I have coded in.
No? Please take some time and review Java and Python style guides.

[x] My IDE is configured to follow the Google code styles.
No? Unsure? -> configure your IDE.

[x] I have added tests to cover my changes. (If you refactored existing code that was well tested you do not have to add tests)

[x] I ran mvn clean package right before creating this pull request and added all formatting changes to my commit.

[x] All new and existing tests passed.

[x] My pull request is based on the latest changes of the master branch.
No? Unsure? -> execute command git pull --rebase upstream master

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

Project coverage is 50.64%. Comparing base (1d803b5) to head (15b3db7).

Additional details and impacted files
@@            Coverage Diff            @@
##             master    #1046   +/-   ##
=========================================
  Coverage     50.64%   50.64%
  Complexity      671      671
=========================================
  Files            91       91
  Lines          5483     5483
  Branches        705      705
=========================================
  Hits           2777     2777
  Misses         2446     2446
  Partials        260      260

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

repo: google/fhir-data-pipes


text:
Documentation for framegraphs or building alternitave renderers?

Is there any documentation available? I'm interested in using Filament as a starting point for my next game engine, one of the things I'm interested in is the ability to have different renderers (forward,deferred,raytraced) and to build framegraphs / rendergraphs using a node system. I'm also interested in adding optional compute and raytracing passes and a WebGPU backend.
I've currently looked at these two alternatives as starting points but they each have their drawbacks and neither look as organized or as actively worked on as Filament.
https://github.com/NVIDIAGameWorks/Falcor
https://github.com/ConfettiFX/The-Forge
Is there any reason I should not use Filament as a starting point for my project? Thanks

All the documentation available about the internals can be found in the comments in the source code. The frame graph will eventually become a public API, at which point we'll provide more extensive documentation.
WebGPU and compute are also features we plan on adding. Compute will be a bit complicated because we must target OpenGL ES 3.0 which doesn't have compute capabilities. That said it will probably be achieved by creating a new material domain compute, like we did for post-processing.

authors: romainguy warvstar

repo: google/filament


text:
Issue with PixelBufferDescriptor on Metal

Desktop (please complete the following information):

OS: MacOS 14.1.1 (23B81), MacBook Air M2
GPU:-
Backend: Metal

I want to render frames of an OpenCV camera stream with PixelBufferDescriptor like this:
void CameraDeviceView::updateFront(cv::Mat frame) {

    if (frame.type() != CV_32FC3) {
        throw std::runtime_error("CV_32FC3 expected");
    }

    auto buffer = Texture::PixelBufferDescriptor(
            frame.data,
            size_t(frame.cols * frame.rows * frame.channels() * sizeof(float)),
            Texture::Format::RGB,
            Texture::Type::FLOAT,
            nullptr
    );
    frameFrontTexture->setImage(*engine, 0, std::move(buffer));
    frameFrontTexture->generateMipmaps(*engine);
}

Is that the right way to do it or do I have to do it with an external image by utilising setExternalImage?
Additionally I applied thread sanitizer and got the following issue:
ThreadSanitizer:DEADLYSIGNAL
==31312==ERROR: ThreadSanitizer: SEGV on unknown address 0x0001599a8000 (pc 0x0001052314b8 bp 0x00016b9b6fc0 sp 0x00016b9b6bd0 T11315128)
==31312==The signal is caused by a READ memory access.
    #0 filament::backend::reshape(filament::backend::PixelBufferDescriptor const&, filament::backend::PixelBufferDescriptor&) <null>:240130048 (neo:arm64+0x1008754b8) (BuildId: a0048f1b079e3dd88dacd53337e570d032000000200000000100000000000b00)
    #1 _pthread_start <null>:232215104 (libsystem_pthread.dylib:arm64e+0x7030) (BuildId: daf953735de639a1a6ced87f3f0629cc32000000200000000100000000010e00)
    #2 thread_start <null>:232215104 (libsystem_pthread.dylib:arm64e+0x1e38) (BuildId: daf953735de639a1a6ced87f3f0629cc32000000200000000100000000010e00)

==31312==Register values:
 x[0] = 0x0000000157a04000   x[1] = 0x0000000109200720   x[2] = 0x0000000000000003   x[3] = 0x0000000000001052
 x[4] = 0x0000000063000000   x[5] = 0x0000000000000000   x[6] = 0x0000000139e0dfc0   x[7] = 0x0000000000000000
 x[8] = 0x00000001599a8000   x[9] = 0x0000000000029400  x[10] = 0x000000003f800000  x[11] = 0x0000000159714000
x[12] = 0x0000000000000000  x[13] = 0x0000000000000000  x[14] = 0x0000000000000002  x[15] = 0x000000000000001f
x[16] = 0x00000000000000c5  x[17] = 0x0000000109244230  x[18] = 0x0000000000000000  x[19] = 0x000000016b9b6ca0
x[20] = 0x000000012304b0d8  x[21] = 0x0000000001fa4000  x[22] = 0x0000000000000017  x[23] = 0x0000000000000006
x[24] = 0x00000000017bb000  x[25] = 0x0000000000000000  x[26] = 0x0000000000000000  x[27] = 0x0000000000000000
x[28] = 0x0000000000000000     fp = 0x000000016b9b6fc0     lr = 0x0000000105231494     sp = 0x000000016b9b6bd0
ThreadSanitizer can not provide additional info.
SUMMARY: ThreadSanitizer: SEGV (neo:arm64+0x1008754b8) (BuildId: a0048f1b079e3dd88dacd53337e570d032000000200000000100000000000b00) in filament::backend::reshape(filament::backend::PixelBufferDescriptor const&, filament::backend::PixelBufferDescriptor&)+0x1b0
==31312==ABORTING

Is this issue related to how I use the pixel buffer or is this a bug?

frame is allocated on the stack and you're passing it to PixelBufferDescriptor. It will go out of scope when you exit updateFront.

authors: pixelflinger schirrmacher


text:
Add a mask argument to RNN.__call__

Some modules that receive a mask argument in their __call__ method include:

BatchNorm
SelfAttention
MultiHeadDotProductAttention

This is useful because it allows one to dynamically exclude elements from a reduction.
Feature request: Add a mask argument to RNN's __call__ method that makes the RNN's carry skip over masked-out elements. Thus the RNN behaves as if the masked-out elements aren't there. This can be implemented by using a masked scan function. An example implementation of the latter can be found at https://github.com/google/jax/issues/18664.

RNN.calll has the seq_lengths to specify padding elements. We currently don't support masking intermediate elements for performance reasons.

authors: carlosgmartin cgarciae

repo: google/flax


text:
Improves launch_gce.py & startup_script.sh

Handles "connection refused" correctly.
Bumps jaxlib & VM image.
Chooses a different zone by default.

Tested manually with the imagenet command from the README:
python examples/cloud/launch_gce.py \
  --project=$PROJECT \
  --zone=us-west1-a \
  --machine_type=n1-standard-96 \
  --accelerator_type=nvidia-tesla-v100 --accelerator_count=8 \
  --gcs_workdir_base=gs://$GCS_BUCKET/workdir_base \
  --tfds_data_dir=gs://$GCS_TFDS_BUCKET/datasets \
  --repo=${REPO:-https://github.com/google/flax} \
  --branch=${BRANCH:-master} \
  --example=imagenet \
  --args='--config=configs/v100_x8_mixed_precision.py' \
  --name=v100_x8_mixed_precision

And verified that both --wait and --connect work as expected.

FYI @sshahrokhi


text:
Adding HRES table for GF180MCU DRC

Adding HRES table for GF180MCU DRC
Fixes #43

Y

@proppy responded #65

authors: FaragElsayed2 atorkmabrains proppy


text:
how to succeed logging to the same file from multiple processes

I have seen the link https://github.com/google/glog/issues/170
but I do not how to succeed logging to the same file from multiple processes.
I would like to ask where is the merge and could I change every file's name from every processed  and make files's name to the same one to solve the problem now?
Thanks very much for your help , best wishes!

Logging into the same file from multiple processes does not sound very useful. A possible implementation would inadvertently incur an unconditional runtime overhead due to necessary synchronization. This is something one wants to avoid.

repo: google/glog


text:
Add ListWorkflowJobsAttempt method to ActionsService

Fixes: #3059.
Add support ListWorkflowJobsAttempt API.
https://docs.github.com/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run-attempt

@gmlewis
Thanks for your advice. I was already working on improving the test coverage before I noticed your comments, so there may have been some overlap. I would appreciate it if you could review the changes. I look forward to your feedback.
Best regards,

@gmlewis
Thank you for the comment. I understand and am happy to help.
I have an interest in this repository, so I will definitely cooperate.
Since I don't have the authority to approve pull requests, should I just leave comments on the PR if I have any suggestions?

Thank you, @fchimpan !
Yes, feel free to leave comments, and when you are satisfied with the changes, you can say "LGTM" (Looks Good To Me) and I will take that as approval.

Thank you @gmlewis
Understood, I will check it out.
By the way, sometimes I come across APIs that are not yet implemented. In such cases, is it alright if I propose a PR like I did this time?
Thank you in advance.

By the way, sometimes I come across APIs that are not yet implemented. In such cases, is it alright if I propose a PR like I did this time?

Absolutely!  We welcome all contributions.
The GitHub v3 API is amazingly huge and constantly updating, so we definitely welcome the help.
Thank you!

Thank you, @valbeat !
Merging.

authors: fchimpan gmlewis

repo: google/go-github


text:
Fix feature block rendering (fixes #56)

Render feature blocks as markdown again.
Feature block inner content is contained in a <div> rather than a <p>
to avoid nested <p> tags.

See https://gohugo.io/content-management/shortcodes/#use-shortcodes for info on how blocks render content.
TL;DR
{{< blockname >}} renders as is (html), {{% blockname %}} renders as markdown (which can include some html)

Will upstream the changes to the feature shortcode block a bit later.

repo: google/gvisor-website


text:
[internal]: see if we can get pre-commit to block patched copybara dry_run exports

Jeremy will know what this means, weird internal Google nonsense.

Fixed!

repo: google/heir


text:
Improve Title component

Improve Title component to have the variants listed in the Material Design kit.
Redlines

Expected output:

Implementation in compose-material module, matching the redlines;
Previews in the debug folder for each variant;
Snapshot tests for:

each variant;
text overflow;

@luizgrp happy to pick this up :)

authors: DenoRS luizgrp

repo: google/horologist


text:
Fix Card Padding

WHAT
Fix Card Padding and add tests.
WHY
Was showing incorrectly when onLongClick was missing.
HOW
Checklist :clipboard:

[ ] Add explicit visibility modifier and explicit return types for public declarations
[ ] Run spotless check
[ ] Run tests
[ ] Update metalava's signature text files

Comparison with the bug

cc @amankhoza

@amankhoza I think that's the custom padding vs standard padding. If not, maybe attach a picture or video of the diff.

Ah yes you're right it is just the custom padding.

authors: amankhoza yschimke


text:
Change UampPlaylistScreen to use PlaylistRepository

WHAT
Change UampPlaylistScreen to use PlaylistRepository.
WHY
So the ViewModel hits a repository instead of retrofit service directly.
Checklist :clipboard:

[x] Add explicit visibility modifier and explicit return types for public declarations
[x] Run spotless check
[x] Run tests
[x] Update metalava's signature text files

Apologies for landing this PR, but want the playback fix.

authors: luizgrp yschimke


text:
Fix TimeText behavior in ScalingLazyList according to scrollState

WHAT
I tried to customize the ScalingLazyColumn offset but the TimeText disappeared and was scrolled away.
the expected behavior is that the time text remain and consider the added offset.
WHY
Changing the initialCenterItemScrollOffset in ScalingLazyListState and also the itemOffset in the AutoCenteringParams does not reflect in the fadeAway behavior of the TimeText.
Currently, we are only handling the itemIndex customization and that's why if we try to move the centered item with the offset will make the TimeText scrolled away.
HOW
I added a second property in the NavScaffoldViewModel.kt to handle to the offset changes, which is used by the TimeText fadeAway behavior to react to any changes to the centered Item Index or Offset.
Checklist :clipboard:

[x] Add explicit visibility modifier and explicit return types for public declarations
[x] Run spotless check
[x] Run tests
[x] Update metalava's signature text files

CLA accepted slightly after the PR landed.

authors: moncefguettat yschimke


text:
Use linalg-on-tensors for pre-partitioning linalg fusion

The current IREE flow dialect partitioning is done based solely on limited op matching (xla_hlo.dot and xla_hlo.conv) and generic invocation count calculation. This is sub-optimal for many reasons:

does not fuse many trivial indexing op/broadcasts, leading in additional intermediate tensors and dispatches
does not enable layout-aware linalg optimizations as layout is isolated and fixed
the hardcoded xla_hlo op checking ties our input logic to the source dialect preventing other non-XLA HLO-based inputs

If instead we convert HLO ops to linalg ops and then run linalg optimizations a large majority of those corner cases that matter in performance-sensitive scenarios are eliminated. We need to use linalg-on-tensors (vs. buffers) as we are operating within the value-semantic tensor domain and need to continue in that form for further scheduling work.
This is a meta issue to track progress on augmenting the current system to allow it to operate on linalg-on-tensors:

[ ] Try enabling some HLO->linalg lowerings prior to partitioning and see what breaks
[ ] Ensure the linalg library approach scales to VMLA ops so that we can always rely on linalg in the compiler flow don't care about VMLA
[ ] Remove the existing hardcoded dot/conv logic once those are lowered earlier on
[ ] Enable or plan out interesting linalg-on-tensor level optimizations

Remember April? hah

To really enable the use of Linalg on tensors, would be preferable to hook up linalg on tensors to Vector dialect. Ideally would want to prove out linalg on tensors on CPU side as much as possible, and then make sure we can match whatever perf we are getting currently. In the mean time much of the CPU/GPU pipelines must get unified. That should make the switch to use linalg on tensors on GPU fairly easy.
Also

Remove the existing hardcoded dot/conv logic once those are lowered earlier on
There is no reason to remove it. The conversion from mhlo.conv to linalg.conv are correct. They lower to linalg.conv on buffers. They just need to lower to linalg.conv on tensors.

The specific task here is removing the if (mhlo::ConvOp) return dont_fuse; logic from IdentifyDispatchRegions that we won't need when linalg is used for partitioning instead of the current hacky IREE logic. I'm hoping we can get to that point sooner rather than later regardless of how the linalg.conv ends up in codegen.

Superceded by this https://github.com/google/iree/projects/23

authors: MaheshRavishankar benvanik

repo: google/iree


text:
Closes: #1

Updated validations.py python script.
Fixed the behavior of validate_user function in validations.py.
Fixes #<issue_number_goes_here>

It's a good idea to open an issue first for discussion.

[ ] Tests pass
[ ] Appropriate changes to README are included in PR

Okay

Donw

repo: google/it-cert-automation-practice


text:
jax.scipy.special zeta sometimes returns NaN

For large values of z, jax.scipy.special.zeta returns NaN when it should instead return 0.:
jax.scipy.special.zeta(1e5, q=1.)  # Return NaN.
Note: I suspect TF and Scipy have this same issue:
sp.zeta(1e19, 40.)   # Returns NaN in Scipy. I have to use a large value because Scipy is using internal float64 calculations.
tf.math.zeta(1e10, q=30.)  # Returns NaN in TF

@fehiepsi contributed this function originally, perhaps they have thoughts.

I think you can fix the issue by clipping T1 term by jnp.clip(T1, a_max=jnp.finfo(dtype).max). Another way is to add a safemul when multiplying 0 and inf at the computation of T, kind of
T = jnp.where(T0 == 0, 0., T0 * (dtype(0.5) + T1.sum(-1)))

That way, we don't face NaN issue, even for examples that failed on scipy and tf.

@hawkinsp

For large values of z, jax.scipy.special.zeta returns NaN when it should instead return 0.:
jax.scipy.special.zeta(1e5, q=1.) # Return NaN.
Note: I suspect TF and Scipy have this same issue:
sp.zeta(1e19, 40.) # Returns NaN in Scipy. I have to use a large value because Scipy is using internal float64 calculations.
tf.math.zeta(1e10, q=30.) # Returns NaN in TF

authors: fehiepsi hawkinsp sowa9599 srvasude

repo: google/jax


text:
Equivalent to autograd's elementwise_grad?

Hi there,
In autograd, I use the function "elementwise_grad" a fair bit. Is there an equivalent in jax? In particular, I would like to compute the elements of a diagonal Hessian, which I do in autograd by calling elementwise_grad twice:
from autograd import elementwise_grad as egrad
h = egrad(egrad(fun))(x)

Initially I thought
vmap(grad(grad(fun)))(x)

would do the trick, but although it worked on a toy example, it gives a different result in general.
Hope that's enough information. Happy to put together a proper example if not, please let me know!

Ah, unfortunately calling elementwise_grad twice won't give you the diagonal of the Hessian:

I think @dougalm and I saw some issues on the Autograd issue tracker about this, but didn't have time to respond, and maybe those threads came to the incorrect conclusion that elementwise_grad would work here. It only works when the underlying function has a diagonal Jacobian, i.e. basically only for elementwise functions. It can't give you the diagonal of a general Hessian efficiently. (What it does is compute the VJP with an all-ones vector; when the Jacobian is diagonal, that reveals all the nonzero coefficients of the Jacobian, and similarly when the Hessian is diagonal then calling this twice would reveal all the nonzero coefficients of the Hessian. But if the Jacobian isn't diagonal then elementwise_grad is just giving you the sum of its rows. This confusion is a reason not to include it in JAX, and to prefer vmap(grad(f)) for elementwise differentiation, since the vmap semantics are clearer.)
In general, computing the diagonal of the Hessian is as hard as computing the full Hessian itself. That is, you'd basically have to call jax.hessian and take its diagonal.
Does that make sense?

It does! Thank you so much for the detailed response!

authors: martiningram mattjj


text:
Initial implementation of jax.numpy.poly

This is an initial jax.numpy.poly implementation intended to help with https://github.com/google/jax/issues/70.
This is my first attempt at contributing, so I apologize in advance for any novice questions or any mistakes made.
There are some differences with the np.poly implementation (I've attempted to describe them in my commit messages), so I anticipate I will need to make changes.
Please let me know if there are any changes I can make to improve this PR.

@googlebot I fixed it.

It looks like some tolerances need to be adjusted.
Additionally, we need to skip the rank=2 tests on GPU and TPU, becuase non-symmetric eigenvalue decomposition is only supported on CPU:
"/build/work/737bb96d2bd1cba8ca8fa60e671f42d64a4c/google3/runfiles/google3/third_party/py/jax/_src/lax/linalg.py", line 381, in eig_translation_rule
    "Nonsymmetric eigendecomposition is only implemented on the CPU backend")
NotImplementedError: Nonsymmetric eigendecomposition is only implemented on the CPU backend

authors: jakevdp paul-tqh-nguyen


text:
Add a few popular distributions to jax.scipy.stats

Beta
Exponential
Gamma
Laplace
Uniform

This could be a precursor for adding more properties to distributions such as mean, variance and entropy.
Please let me know if this looks merge-able, and is worth adding to the package. Thank you.

@googlebot I signed it!

Could you please add tests? I think they should probably live in tests/lax_scipy_stats_test.py, but I will defer to @mattjj  or @froystig on this.

And -- thanks! This is great!

Sure, I'll do that. It seems like the logpdf tests for the normal distribution are added in test/lax_scipy_test.py. Adding tests for multiple distributions could cause a lot of clutter, hence I am advocating to move it to a separate file. Perhaps, @mattjj or @froystig could shed some light about that.

A new test file corresponding specifically to scipy.stats seems like a good eventual plan. In this PR, either file (existing or new) would be fine.

@vishwakftw this is excellent, thanks for diving in! You might end up being our first external contributor of significant code!
Making a separate file sounds good to me. Whatever you think makes things clean! (Fortunately, file organization is relatively easy to revise later if we ever change our minds about it.)
We still need to make our tests easily runnable from OSS land, and document how to do it. For the time being, though, things like this should work from the tests subdirectory:
bazel test lax_test_cpu --test_output streamed --test_arg=--num_generated_cases=10

or alternatively even
python lax_test.py  --num_generated_cases=10

@mattjj @froystig Thank you for your comments and clarifications. I'll build and test locally as advised.

@mattjj @froystig I've added tests in a separate file in the most recent commit. Please have a look when you can. Thank you.

Looks great! I ran this change against our internal tests (which cover a lot of combinations of configurations and backends, including TPUs) and everything passes. If you can just change the filename of the test file (which I requested in part to test out how GitHub reviews work), this will be good to merge!

Thank you for the contribution!

authors: alexbw froystig mattjj vishwakftw


text:
Capture the output file name in the C++ extractor. [phab:D1373]

Created by fromberger at 2017-02-24 20:44:02:
Addresses an ancillary part of #1754.

jrtom accepted this revision at 2017-02-24 20:47:55

zarko commented inline (context lost during migration) at 2017-02-24 20:57:16:
Also consider -ofoo.

fromberger wrote at 2017-02-24 21:02:21:

Add a TODO about combined arguments.

fromberger commented inline (context lost during migration) at 2017-02-24 21:02:28:
Good point. I will leave a TODO for now, since that mostly occurs in manual configurations rather than build-generated command-lines.

zarko accepted this revision at 2017-02-24 21:02:46

fromberger closed via commit c8e6bcb28fc9f7b8b24ca0b8e079a41045564779 at 2017-02-24 21:34:21

repo: google/kythe


text:
Update to top-of-tree Bazel [phab:T81]

Created by zarko at 2015-11-25 22:02:59:
Filed https://github.com/bazelbuild/bazel/issues/652

zarko wrote at 2015-11-25 22:04:23:
#788 is related (but currently duct tape fixed with a bazel.rc).


text:
Add AB update option to kernel deploy

Add --ab_update option to the kernel package deploy.

Do you mean to add it by default?
There are times I want to update the same partition, mostly because I have a custom built package deployed in the current chroot but not in the other one. It works for me if there will be an option to remove that flag.

No, I would like to add that option to lium deploy (ignored if the package is not host kernel).

Thanks for clarification! As long as it is an option, then it's fine by me. And the PR looks good to me :+1:

authors: HidenoriKobayashi mhiramat

repo: google/lium


text:
360 video demos don't work on iOS

Hi,
I tried to open the video demo posted on marzipano site on ios 9.3.1 (Iphone) and ios 9.0.2 (Ipad) without any success, The video doesn't play on both devices with the same behavior; it loads the video player bar and when I press the play button nothing happens.
Note: I made sure that both devices support webgl and all other demos that holds a panoramic image works fine

The video and video-multi-res demos are known not to work on iOS devices. Unfortunately, playing 360 video on iOS isn't as straightforward as on other browsers, but there is a known technique (see https://github.com/Jam3/ios-video-test). However, nobody has done the work to include it in the demos.

Is anyone working on this? Does anyone have any pointers on where we can start with this? Can anyone foresee any major challenges? Any advice would be appreciated? We can push this back in afterwards.. if we can get it to work!

This might be able to work on iOS 10 with the playsinline attribute. I've tried that in the video demo and at least the video doesn't go to fullscreen. There is something happening (i get feedback in the console) but nothing is happening on the canvas.

I got same problem with you , I get solve it using http://krpano.com/video/

@calatador Yeah I also used krpano for this problem as it seems there is a problem with playing inline videos in IOS and krpano uses a hack to achieve that task.

Any progress on this?

With ARKit allowing for 360 content to be displayed in Safari, is it possible now?

The video demos have been fixed to work on iOS 10 and above (see 00843fd). This fix will be part of the next release (note that the website hasn't been updated yet).
Please reopen if playback issues persist.

authors: HollandRisley aelmahalawey ahmedelmahalawey calatador hay theroyaltyclub tjgq wwallace

repo: google/marzipano


text:
Checkbox not adding "checked" attribute to input

What MDL Version are you using? (please be specific, e.g. major.minor.patch)
v1.3.0

What browser(s) is this bug affecting (including version)?
Chrome

What OS (and version) are you using?
Mac OSX High Sierra

What are the steps to reproduce the bug? Can you create a plunker/codepen/jsfiddle which reproduces it?
Click on a checkbox, then look at it in inspector

What is the expected behavior?
that "checked" attribute is added to <input when clicking on the checkbox.

What is the actual behavior?
No "checked" attribute seen.

Any other information you believe would be useful?
Makes the checkbox useless for serializing post data.

If you put the following into your omnibar and do the same thing test, you'll see the checkbox doesn't have it's attribute updated. MDL reflects that from the browsers.
data:text/html,<input type=checkbox>

What makes you expect this behavior? Does another browser modify the attribute state? If so, that's problematic since unless they internally track changes it messes with a form reset event. Since attributes are what are used to reset the form state for the user.

You're right, it doesn't show checked in realtime. My bad. Closing this.

authors: Garbee dedupely

repo: google/material-design-lite


text:
linking error with GetNodeAttr

I'm running into a link error when trying to build object_detection_tensorflow, specifically,
TMP=/tmp bazel build --cxxopt="--std=c++17" -c opt --config=cuda --spawn_strategy=local     --define no_aws_support=true --copt -DMESA_EGL_NO_X11_HEADERS     mediapipe/examples/desktop/object_detection:object_detection_tensorflow --verbose_failures

eventually produces the following error
bazel-out/k8-opt/bin/external/org_tensorflow/tensorflow/core/kernels/libdynamic_partition_op_gpu.lo(dynamic_partition_op_gpu.cu.o): In function `tensorflow::{lambda(tensorflow::KernelDef const*)#1}::operator()(tensorflow::KernelDef const*) const::{lambda(tensorflow::OpKernelConstruction*)#1}::_FUN(tensorflow::OpKernelConstruction)':
tmpxft_00003d89_00000000-5_dynamic_partition_op_gpu.cu.compute_52.cudafe1.cpp:(.text+0x31c): undefined reference to `tensorflow::GetNodeAttr(tensorflow::AttrSlice const&, absl::lts_2020_09_23::string_view, int*)'
bazel-out/k8-opt/bin/external/org_tensorflow/tensorflow/core

I'm using gcc8 on Ubuntu 18.04, with CUDA 10.2. I'm at commit a92cff7, and after manually fixed a problem in tensorflow_inference_calculator.cc . I also run into this problem when using gcc7.5.

Hi @stevenchen123, Are you still facing the above error. Please share us the status. Thanks!

Hi @stevenchen123, Could you please respond to my above comment. Thanks!

We are closing this ticket due to lack of activity!

repo: google/mediapipe


text:
Build a MediaPipe AAR  error

Refer to the construction steps of the official website:
https://google.github.io/mediapipe/getting_started/android_archive_library.html

$ cd mediapipe/examples/android/src/java/com/google/mediapipe/apps/
$ mkdir aar_example
$ cd aar_example
$ touch BUILD

Put the following content in the BUILD file.

load("//mediapipe/java/com/google/mediapipe:mediapipe_aar.bzl", "mediapipe_aar")
mediapipe_aar(
name = "mediapipe_face_detection",
calculators = ["//mediapipe/graphs/face_detection:mobile_calculators"],
)

Run the Bazel build command to generate the AAR.

bazel build -c opt --strip=ALWAYS
--host_crosstool_top=@bazel_tools//tools/cpp:toolchain
--fat_apk_cpu=arm64-v8a,armeabi-v7a
--legacy_whole_archive=0
--features=-legacy_whole_archive
--copt=-fvisibility=hidden
--copt=-ffunction-sections
--copt=-fdata-sections
--copt=-fstack-protector
--copt=-Oz
--copt=-fomit-frame-pointer
--copt=-DABSL_MIN_LOG_LEVEL=2
--linkopt=-Wl,--gc-sections,--strip-all
--verbose_failures
//mediapipe/examples/android/src/java/com/google/mediapipe/apps/aar_example:mediapipe_face_detection.aar

Result: There is a build error, can you help me to see what the problem is?

Hi @siliconvallley!, Could you please try to use Android SDK release 30.0.0 or above and NDK version between 18 and 21. Please follow the instructions mentioned in the documentation. Thank you!

Hi @kuaashish，
Thanks for replying to my issue.
My problem is solved.

First I find the file "mediapipe_aar.bzl" which outputs error log 1,
then through error log 2 "/bin/bash:$'\r': command not found"
I guess the current error should be in "mediapipe_aar.bzl" caused by newlines,
so I did the following to the "mediapipe_aar.bzl" file:
sed -i 's/\r$//' mediapipe_aar.bz
solved the problem.

Hi @siliconvallley, Thank you for letting us know. Could we move this issue to closed status?

Hi @kuaashish，Thank you for your reply. I think this issue should be closed.

Hi @siliconvallley, Thanks for the confirmation! Closing this issue as it resolved.

authors: kuaashish siliconvallley


text:
Run hand_tracking_cpu in MacOS

Great project.
When I build this project in MacOS, hello example is running success. However, Try to run bazel run --define MEDIAPIPE_DISABLE_GPU=1  mediapipe/examples/desktop/hand_tracking:hand_tracking_cpu for hand tracking example, Outputs log as follow:
bazel run --define MEDIAPIPE_DISABLE_GPU=1 \                 3259  15:41:23 
    mediapipe/examples/desktop/hand_tracking:hand_tracking_cpu --verbose_failures
WARNING: Download from https://mirror.bazel.build/github.com/tensorflow/tensorflow/archive/7c09d15f9fcc14343343c247ebf5b8e0afe3e4aa.tar.gz failed: class com.google.devtools.build.lib.bazel.repository.downloader.UnrecoverableHttpException GET returned 404 Not Found
WARNING: Download from http://mirror.tensorflow.org/github.com/bazelbuild/rules_closure/archive/cf1e44edb908e9616030cc83d085989b8e6cd6df.tar.gz failed: class com.google.devtools.build.lib.bazel.repository.downloader.UnrecoverableHttpException GET returned 404 Not Found
DEBUG: Rule 'rules_cc' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "a07fc8b90c22e42962142504438a84b31567976adcd9ee1a4c9f75d2e3396f8d"
DEBUG: Repository rules_cc instantiated at:
  no stack (--record_rule_instantiation_callstack not enabled)
Repository rule http_archive defined at:
  /private/var/tmp/_bazel_wujinyi/6feed3ec0af0d4774c44318da51ee31d/external/bazel_tools/tools/build_defs/repo/http.bzl:336:31: in <toplevel>
WARNING: Download from https://storage.googleapis.com/mirror.tensorflow.org/github.com/google/XNNPACK/archive/5cb16e7ace0fcdcab164af01620a606ba828a3be.zip failed: class com.google.devtools.build.lib.bazel.repository.downloader.UnrecoverableHttpException GET returned 404 Not Found
WARNING: Download from https://mirror.bazel.build/github.com/Maratyszcza/FP16/archive/3c54eacb74f6f5e39077300c5564156c424d77ba.zip failed: class com.google.devtools.build.lib.bazel.repository.downloader.UnrecoverableHttpException GET returned 404 Not Found
INFO: Analyzed target //mediapipe/examples/desktop/hand_tracking:hand_tracking_cpu (0 packages loaded, 0 targets configured).
INFO: Found 1 target...
Target //mediapipe/examples/desktop/hand_tracking:hand_tracking_cpu up-to-date:
  bazel-bin/mediapipe/examples/desktop/hand_tracking/hand_tracking_cpu
INFO: Elapsed time: 0.249s, Critical Path: 0.00s
INFO: 0 processes.
INFO: Build completed successfully, 1 total action
INFO: Build completed successfully, 1 total action
I20200709 15:41:25.287240 421121472 demo_run_graph_main.cc:48]

 Get calculator graph config contents: # MediaPipe graph that performs hand tracking on desktop with TensorFlow Lite
# on CPU.
# Used in the example in
# mediapipie/examples/desktop/hand_tracking:hand_tracking_cpu.

# Images coming into and out of the graph.
input_stream: "input_video"
output_stream: "output_video"

# Caches a hand-presence decision fed back from HandLandmarkSubgraph, and upon
# the arrival of the next input image sends out the cached decision with the
# timestamp replaced by that of the input image, essentially generating a packet
# that carries the previous hand-presence decision. Note that upon the arrival
# of the very first input image, an empty packet is sent out to jump start the
# feedback loop.
node {
  calculator: "PreviousLoopbackCalculator"
  input_stream: "MAIN:input_video"
  input_stream: "LOOP:hand_presence"
  input_stream_info: {
    tag_index: "LOOP"
    back_edge: true
  }
  output_stream: "PREV_LOOP:prev_hand_presence"
}

# Drops the incoming image if HandLandmarkSubgraph was able to identify hand
# presence in the previous image. Otherwise, passes the incoming image through
# to trigger a new round of hand detection in HandDetectionSubgraph.
node {
  calculator: "GateCalculator"
  input_stream: "input_video"
  input_stream: "DISALLOW:prev_hand_presence"
  output_stream: "hand_detection_input_video"

  node_options: {
    [type.googleapis.com/mediapipe.GateCalculatorOptions] {
      empty_packets_as_allow: true
    }
  }
}

# Subgraph that detections hands (see hand_detection_cpu.pbtxt).
node {
  calculator: "HandDetectionSubgraph"
  input_stream: "hand_detection_input_video"
  output_stream: "DETECTIONS:palm_detections"
  output_stream: "NORM_RECT:hand_rect_from_palm_detections"
}

# Subgraph that localizes hand landmarks (see hand_landmark_cpu.pbtxt).
node {
  calculator: "HandLandmarkSubgraph"
  input_stream: "IMAGE:input_video"
  input_stream: "NORM_RECT:hand_rect"
  output_stream: "LANDMARKS:hand_landmarks"
  output_stream: "NORM_RECT:hand_rect_from_landmarks"
  output_stream: "HANDEDNESS:handedness"
  output_stream: "PRESENCE:hand_presence"
}

# Caches a hand rectangle fed back from HandLandmarkSubgraph, and upon the
# arrival of the next input image sends out the cached rectangle with the
# timestamp replaced by that of the input image, essentially generating a packet
# that carries the previous hand rectangle. Note that upon the arrival of the
# very first input image, an empty packet is sent out to jump start the
# feedback loop.
node {
  calculator: "PreviousLoopbackCalculator"
  input_stream: "MAIN:input_video"
  input_stream: "LOOP:hand_rect_from_landmarks"
  input_stream_info: {
    tag_index: "LOOP"
    back_edge: true
  }
  output_stream: "PREV_LOOP:prev_hand_rect_from_landmarks"
}

# Merges a stream of hand rectangles generated by HandDetectionSubgraph and that
# generated by HandLandmarkSubgraph into a single output stream by selecting
# between one of the two streams. The former is selected if the incoming packet
# is not empty, i.e., hand detection is performed on the current image by
# HandDetectionSubgraph (because HandLandmarkSubgraph could not identify hand
# presence in the previous image). Otherwise, the latter is selected, which is
# never empty because HandLandmarkSubgraphs processes all images (that went
# through FlowLimiterCaculator).
node {
  calculator: "MergeCalculator"
  input_stream: "hand_rect_from_palm_detections"
  input_stream: "prev_hand_rect_from_landmarks"
  output_stream: "hand_rect"
}

# Subgraph that renders annotations and overlays them on top of the input
# images (see renderer_cpu.pbtxt).
node {
  calculator: "RendererSubgraph"
  input_stream: "IMAGE:input_video"
  input_stream: "LANDMARKS:hand_landmarks"
  input_stream: "NORM_RECT:hand_rect"
  input_stream: "DETECTIONS:palm_detections"
  input_stream: "HANDEDNESS:handedness"
  output_stream: "IMAGE:output_video"
}

I20200709 15:41:25.296059 421121472 demo_run_graph_main.cc:54] Initialize the calculator graph.
I20200709 15:41:25.314254 421121472 demo_run_graph_main.cc:58] Initialize the camera or load the video.
I20200709 15:41:26.734478 421121472 demo_run_graph_main.cc:79] Start running the calculator graph.
I20200709 15:41:26.737205 421121472 demo_run_graph_main.cc:84] Start grabbing and processing frames.
INFO: Initialized TensorFlow Lite runtime.
ERROR: Could not open 'mediapipe/models/palm_detection.tflite'.
E20200709 15:41:27.144917 421121472 demo_run_graph_main.cc:149] Failed to run the graph: Graph has errors:
Calculator::Open() for node "[handdetectionsubgraph__TfLiteInferenceCalculator, TfLiteInferenceCalculator with output stream: handdetectionsubgraph__detection_tensors]" failed: ; Failed to load model from path.lculators/tflite/tflite_inference_calculator.cc:756)

Hope your reply.

Be solved by input param.


text:
Fix for #47 (Python 3.8 incompatibility)

Also moves mediapy_examples.py into the main directory, where it is paired with the corresponding mediapy_examples.ipynb file through jupytext.
Fixes #47

Thanks for the quick fix!!

authors: brentyi hhoppe

repo: google/mediapy


text:
Consider enabling gzip compression of image layers

With the new builder structure this is easily possible by wrapping the io.MultiWriter in a gzip.Writer.
This would require some other changes (such as media types) which would mean that Nixery's entire existing cache needs to be busted (not a major issue). In addition there might be situations in which this will end up slower overall, worth investigating.

It turns out there are tools in the ecosystem that always expect image layers to be compressed (for example, Bazel's rules_docker currently does - however this is due to a bug).
Regardless of performance implications it seems like the correctness/interoperability with the rest of the ecosystem should be more important, so #64 will be merged once it is ready.

repo: google/nixery


text:
FSharp updates

Utilize the dotnet toolchain and be able to compile both netfx, netstandard, netcore from single project.  Current target is for netfx but the netstandard library can be imported into netfx project and be compiled (with the use of the netstandard import). Nuget package has both net462 and netstandard2.0 binaries.

@Mizux dotnet core needs to be installed on build runner for latest changes. Where is that configuration?

I should have fixed the compilation on master -> will it be possible for you to rebase your branch on master so we can validate with Appveyor CI that's everything is fine ?
If it's too complicated, let me know maybe we can blind merge it, it won't be the first time master is broken in case of failure...

I rebased against master and pushed. Should be all good now.

Thanks !
The first two appveyors jobs (Makefile based) pass thanks again !

Sure. Now that this uses the latest toolchain, you could probably unify all the .NET related languages. It would require some major changes to current directory structure. I saw there were a few other PRs related to dotnet. Not sure if anyone else has taken this on or if this is something you want to do on your end.

gflags, glog, protobuf are already provided per the imported nuget package. With regards to the directory structure, it is similar to how I structured to FSharp folder. A solution file at the root project and projects as child folders. For unification, the top level solution file would remain and all the dotnet sources would be in child folders.
I started this on a branch in my fork: dotnet. It compiles but still migrating the c# targets (which are scattered throughout the project). Will add a test project and the FSharp projects afterward.

Currently we have package configs in <root>/tools/language (e.g. csharp, netstandard) and <root>/tools (e.g. setup.py) except fsharp in <root>/ortools/fsharp.
I think lperron wanted to put them in <root>/config/language, or at least keep <root>/ortools only for source code (and swig wrapper)
For protobuf they use <root>/language (csharp, java, python, ruby).
Personally, I just want to remove the mess in <root>/tools and have consistent layout across languages. After nuget is a package like deb brew formula and csharp a language so still thinking about having for example <root>/package/nuget etc and a <root>/fsharp for example will also make sense...

repo: google/or-tools


text:
feat(sources): add human_link for chainguard to production

Propagate #2888 to Production
Part of #2191

Confirmed working as intended in Staging with https://test.osv.dev/vulnerability/CGA-h8jq-gmpr-v5fp


text:
eliminate dynamic calls in package:protobuf

We've seen a lot of dynamic calls, adding to binary size, coming from package:protobuf.
These can be statically linted with avoid_dynamic_calls, and then removed.

Most of the dynamic calls removed with #685. The remaining two dynamic calls require some refactoring in the library and in tests.


text:
Implementing Chrome Cast on Vue JS

This is an open question and a bit amateur really, i have managed to implement the video player on a Vue application, but i am struggling with implementing the chrome cast option particullary on how to scan for the presence of the devices and getting the ID of the device. If anyone has implemented the option in Vanilla JS or Vue, please point me to some resources or your source code ,

Are you using Shaka Player? If not, this probably isn't the right place to ask. We aren't responsible for vue.js here; they have their own GitHub page.
If you are using Shaka Player, you can make a CastProxy object. It will fire caststatuschanged events when a new receiver becomes available, and it has various methods such as canCast, isCasting, receiverName, etc that you can use to query casting status. You can see the entire public interface for the CastProxy object here. This stuff is automatically handled by our UI library, too.
If you aren't using Shaka Player... well, the Cast team maintains a developer tutorial for making custom Chromecast senders.
On the Vue end... uh, there are various GitHub projects that seem like they might be relevant, like this one and this one. I don't really know much about Vue, myself, so I can't vouch for their usefulness.
Does this help?

I am using shaka player, and through the CastProxy, i can use the methods like canCast, the question is how do i enable the casting because calling the cast method is not enabling the casting?

One possible problem that comes to mind is that you might not be loading the cast sender API.
<script defer src="https://www.gstatic.com/cv/js/sender/v1/cast_sender.js"></script>

But without seeing your code, I can't say for sure if this is the issue or not.

I have attached the code below for the basic implementation and i am getting an error, cannot read property length of undefined

`

`

https://codepen.io/tmuzanenhamo/pen/YzqGgMY
The code in the pen is returning a cannot read property length undefined in the console when i try to cast

The only problem I can see is that you are using the receiver app ID CC1AD845, which is the default media receiver. Shaka Player uses a custom receiver (most recent version: receiver app ID 930DEB06).
However, that wouldn't account for the error you are seeing, I don't think. What platform are you running this on (e.g. Chrome on Windows, Safari on Mac, whatever)? Are you able to cast using our demo app?

I also see two different copies of Shaka Player: one from dist/, and one from CDNJS.  Try removing one of them and fixing the receiver app ID as @theodab suggested.  When I make those changes in your codepen, it works fine for me when I cast.
I would also suggest updating from v3.0.0 to v3.0.3, the latest release.  We've fixed many bugs in the three releases since v3.0.0.
Apparently I can't save a codepen without an account, so here are the snippets of what I changed in yours:
    <!-- Shaka Player ui compiled library: -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/shaka-player/3.0.3/shaka-player.ui.js"></script>
    <!-- Shaka Player ui compiled library default CSS: -->
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/shaka-player/3.0.3/controls.css" />

...
    <div data-shaka-player-container style="max-width:40em"
         data-shaka-player-cast-receiver-id="930DEB06">

Does this help?

Thank you guys, works like a charm

I got that same problem using React. Got it working by using the default cast receiver id on player initial configurations.

authors: VictorHaine joeyparrish tawanda14 theodab tmuzanenhamo

repo: google/shaka-player


text:
update redirection link

The link for Egyptian brackets is broken. This PR will update it to correct one.

thanks, both should be fixed now in the latest tree

Thanks @vapier, Happy to help!

authors: aditya-chaudhari vapier

repo: google/styleguide


text:
Adding ksem family of  syscalls

NetBSD ref. : ksem syscalls

@krytarowski can you take a look at this - and see if it covers everything you wanted?

repo: google/syzkaller


text:
Critical bug fix

Looks pretty strange. It should have been fixed somehow in the stock
version. Anyway, all this works there. Thus, I wonder, is the source
published here somewhat outdated or incomplete? And, if so, where
could I find the actual one?

@poretsky Actually this source of talkback is very outdated and unfortunately Google talkback team is very slow in releasing the latest sources.
I even feel that now they are not going to release the further sources since there's a darn silence from them since more than 1 year.
I don't think that this is a better idea to fix the things in the outdated source and Nobody knows that whether they will accept/murge the pull requests or not. :( Sadly this is the truth.

Yes, I know. This was the case for a long time. But the last commit into
the master branch was done about a month ago and it claims version 8.1
that corresponds to the version of the last update on Play Market
roughly at the same time. Moreover, pull request #7 had more or less
comprehensive response in three months. Of course, it is not very quick,
but late is better than never, anyway.
So, I think, there is a reason to hope that something has been changed.

Yes, I know. This was the case for a long time. But the last commit into the master branch was done about a month ago and it claims version 8.1 that corresponds to the version of the last update on Play Market roughly at the same time. Moreover, pull request #7 had more or less comprehensive response in three months. Of course, it is not very quick, but late is better than never, anyway. So, I think, there is a reason to hope that something has been changed.

Oh, 8.1 source release? I didn't notice it. seems good. But let's hope that they will release the sources for other updates in a good time frame (which I do not hope).
(I wish that something is changed at their side though)
Also, are you visually impaired programmer?

it seems google doesn't pay attention for the problems of impaired vision people. There are many errors in this screen reader. for example, doesn't work "selection mode" in the editors and it's very long ago. Nobody corrects it.

@ChadBrowerAtGoogle any chances of releasing the latest talkback 8.2  source? Can we get more info please?

It is outdated now and doesn't relate to the current code state.

authors: akash07k poretsky svtsvet

repo: google/talkback


text:
Add a prependMedia/updateMediaElements context actions for useUploadMedia

As it is now, useUploadMedia consumes the 'media' attribute (ie. the array of the media resources) in order to prepend uploaded media resources. This is inefficient, and adds an unnecessary dependency to the 'media' attribute inside of useUploadMedia.
As an alternative, a 'prependMedia' and/or updateMediaElements context actions can be added to add the uploaded media resources instead.

prependMedia was implemented in #6541. See also #2513

repo: google/web-stories-wp