[Feature] 3D text

Code below might be a good candidate for an easy drop-in SOBA 3D Text component.

    <ngt-mesh-standard-material #mat1="ngtMeshStandardMaterial"
        [parameters]="{ color:'#b00000' | color }">
    </ngt-mesh-standard-material>
    <ngt-mesh-standard-material #mat2="ngtMeshStandardMaterial"
        [parameters]="{ color:'#ff8000' | color }">
     </ngt-mesh-standard-material>

    <text3d [text]="'@angular-three'" [size]="10" [height]="5"
            [fonturl]="fonturl"
            [material]="[mat2.material, mat1.material]"></text3d>

import { Component, Input } from '@angular/core';

import { Box3, Euler, Group, Material, Mesh, MeshBasicMaterial } from 'three';

import { NgtTriplet } from '@angular-three/core';

import { Font, FontLoader, TextGeometry } from 'three-stdlib';

//
// adapted from three.js example https://threejs.org/examples/?q=text#webgl_geometry_text
//
@Component({
  selector: 'text3d',
  template: '<ngt-group #text="ngtGroup" (ready)="ready(text.group)" [position]="position" [scale]="scale" [rotation]="rotation"></ngt-group>'
})
export class Text3DComponent {
  private _text = '';
  @Input()
  get text(): string {
    return this._text;
  }
  set text(newvalue: string) {
    this._text = newvalue;
    if (newvalue && this.font) {
      this.refreshtext()
    }
  }

  //
  // see https://threejs.org/docs/index.html?q=mesh#examples/en/loaders/FontLoader for more details
  //
  private _fonturl = '';
  @Input()
  get fonturl(): string {
    return this._fonturl;
  }
  set fonturl(newvalue: string) {
    if (newvalue && newvalue != this._fonturl) {
      this._fonturl = newvalue;
      const loader = new FontLoader();
      loader.load(newvalue,
        (font) => {
          this.font = font;
          this.refreshtext();
        },
        _ => { }, // progress
        (err) => {
          console.error(err);
        });
    }
  }

  @Input() size = 100;
  @Input() height = 50;
  @Input() curveSegments = 12;
  @Input() bevelEnabled = false;
  @Input() bevelThickness = 10;
  @Input() bevelSize = 8;
  @Input() bevelOffset = 0;

  @Input() position = [0, 0, 0] as NgtTriplet;
  @Input() rotation = new Euler();
  @Input() scale = [1, 1, 1] as NgtTriplet;
  @Input() material: Material | Material[] = new MeshBasicMaterial();

  @Input() center = true;

  private font!: Font;
  private group!: Group;
  private lastmesh!: Mesh;

  ready(group: Group) {
    this.group = group;
  }

  private refreshtext() {
    if (this.lastmesh) {
      this.group.remove(this.lastmesh);
    }
    const textGeo = new TextGeometry(this.text, {
      font: this.font,
      size: this.size,
      height: this.height,
      curveSegments: this.curveSegments,
      bevelEnabled: this.bevelEnabled,
      bevelThickness: this.bevelThickness,
      bevelSize: this.bevelSize,
      bevelOffset: this.bevelOffset,
    });

    let centerOffset = 0;
    if (this.center) {
      textGeo.computeBoundingBox();
      const boundingBox = textGeo.boundingBox ?? new Box3();
      centerOffset = - 0.5 * (boundingBox.max.x - boundingBox.min.x);
    }
    const mesh = new Mesh(textGeo, this.material);
    mesh.position.set(this.position[0] + centerOffset, this.position[1], this.position[2]);
    mesh.rotation.copy(this.rotation);
    mesh.scale.set(this.scale[0], this.scale[1], this.scale[2]);

    this.group.add(mesh);
    this.lastmesh = mesh;
  }
}

@IRobot1 feel free to submit a PR for this in Soba?

Does this need to follow the ComponentStore style?
The fonturl refers to a local asset that needs loading. 'assets/helvetiker_regular.typeface.json'
Is there any existing example of loading an asset either in the soba library or by a story?

I've been able to answer my own questions.  Working towards pull request

Can you add some notes to CONTRIBUTING that expands on "Start working on changes".
I was running nx storybook soba and it was working.  Now, I can't get it started again.  There's so many build errors its impossible to figure out what's wrong.  I'm getting very frustrated with this project.

ERROR in ./libs/soba/.storybook/manager.js 1:0-43
Module not found: Error: [CaseSensitivePathsPlugin] C:\Users\adria\Source\Repos\angular-three\node_modules\.pnpm\@storybook+addons<EMAIL_ADDRESS>does not match the corresponding path on disk repos.

npm install got me back to working condition again.
Running pnpm install breaks things.

@IRobot1 Sorry for the frustration. I just cloned the repo to another location and everything works as expected:

pnpm install
npx nx storybook soba

I would recommend nuking your node_modules, package-lock.json (if you have it), and pnpm-lock.yaml then run pnpm install again. Then try again.

@IRobot1 What's your pnpm version?

pnpm version 7.0.0

well yeah me too. Try what I suggested above and let me know if you can progress


Impl: Decoder module

partial decoder design added with #25
rest will be added soon

added decoder design
changes to be made to that then merge

decoder design implemented and structured within code rule pointers.


podcast:location startTime and duration attributes

Based on the work seen for the the soundbite I was thinking that the location tag could actually benefit from marking points in a podcast that have location.
Idea being, the podcast itself is not locationally determined, but it may be covering some topic that has a location, and there may be more than one topic in more than one location.  The addition of a time index and duration, like startTime and duration in the soundbite tag, as optional, would allow people to search podcast by location, but also to search for content within a audio file. There can be more than one of these tags per episode.
This idea extends out of an idea I have for a walking tour podcast.  There could be chapters at different locations and you as the tourist might not access the tour linearly, but you can jump to the bits of the audio file/podcast, based on where you are currently. This would enable that.
A further extension of this idea is that a walking tour itself could have a full GPS track that matches every second of the audio file.  At this point it becomes much to unwieldy for the RSS feed and suggests it becomes very similar to the transcript, deep data, an entry into the feed that points to a json file could be host that and is only downloaded if the user needs it that way.

Well, I think this is a great idea.  Got an example of how it would look in a real-world implementation?  Just a rough sketch would suffice if you can post something.  That way I'll be sure we're on the same page and I can write it into the spec.

yes of course
There are two main ways I see this.
One is a basic travel  or maybe a news magazine podcast.  Where the location the podcaster is recording from is irrelevant, but the topics been covered are, and the fact that there may be more than one topic is important to consider.  So minimally the RSS feed would contain the latlon of the the location that the item topic is located, the startTime within the audio feed and maybe a duration of the item, a bit like soundbites, consumer of the podcast might only be interested in that one item only and have no interest in subsequent items (philistines I know).  The podcast itself may or may not have a location tag of its own (without startTime), if it does well it is if the podcast hosts location is somehow important, but is separately from the topics.
Ultimately for search, a given podcast might feature in 2 or more different locations if it contains portions located in different places.
Second case is more like a walking tour. A few years back I had friends visiting me in Dublin/Ireland from Australia.  I met them in Temple Bar (Latitude: 53° 20' 26.40" N Longitude: -6° 15' 27.60" W) and we walked from there to the Guinness Hop Store (Latitude: 53° 20' 18.00" N Longitude: -6° 17' 7.80" W) via Christchurch (Latitude: 53° 20' 21.00" N Longitude: -6° 16' 10.20" W), I talked the whole way giving them the spiel about the area.  I was thinking that the whole thing could have been recorded (I do love the sound of my own voice to be fair).  But it would only work going one way, the same way. So even as we walked the reverse of the same route it would not have worked, even though we are in the exact same areas.
However if certain areas of interest within the audio file were marked (chapters effectively with a geo location, but duration here is probably more important), some one walking the reverse route would be able to navigate relevant sections of the audio when they were at the locations of interest.  Obviously the audio app would have to support that ability, but have the geo tag chapters support would be amazing.
Again some one who is not physically in the area could also just access the specific elements of audio for bits of the audio they were interested in from the luxury of their own homes.
Adding a GPS feed like a subtitle/transcription JSON, while possible, I don't think it the requirement of this issues, but i comment on it here.  I am unsure for the JSON transcription if the aggregators are meant to be parsing them to assist with search.  But if they are for transcriptions, which is meant to bump up the hallowed SEO, I don't see why they couldn't for GPS track (they may not, but that is separate )

This would be great to make podcasts geographic search so powerful.
I would add this to the json chapter file:
{
  "version": "1.0.0",
  "chapters":
  [
    {
      "startTime": 0,
      "title": "Intro"
    },
    {
      "startTime": 168,
      "title": "Travel to Europe",
      "img": "https://en.wikipedia.org/wiki/Europe#/media/File:Map_of_populous_Europe_(physical,_political,_population)_with_legend.jpg",
      location{
            "localname":"Europe",
            "osm_type":"N",
            "osm_id":25871341,
            "category":"place",
            "type":"continent",
            "lon": 51.0000000,
            "lat": 10.0000000
      }
    },
    {
      "startTime": 410,
      "title": "The Eiffel Tower",
      "img": "https://en.wikipedia.org/wiki/Eiffel_Tower#/media/File:Tour_Eiffel_Wikimedia_Commons.jpg",
      "url": "https://en.wikipedia.org/wiki/Eiffel_Tower",
      location {
            "localname":"Eiffel Tower",
            "category":"tourism",
            "type": "attraction",
            "osm_type":"W",
            "osm_id":5013364,
            "lon":48.8576248,
            "lat":2.2942817
      }
    },
…

I like this idea a lot.  Once we finalize the location tag, let's make this match and look at a JSON chapters version bump.

Agreed, makes more sense as a part of chapters. Seems like a very niche use-case though. Is this too niche to include at this point or are there a lot of travel/sightseeing podcasts out there. Seems like just including an Open Street Map/Google/Apple Maps url to a location could be a simpler way to facilitate this.

Having geolocation in chapters files makes sense only for search engines.
But it does not cost much and it’d be really powerful.

Regarding URL, since longitude/latitude (GPS WGS84) are recognized by all systems, creating the URL from lon/lat is really very easy:
https://maps.google.com/maps/search/48.8576248,2.2942817
https://www.openstreetmap.org/search?query=48.8576248,2.2942817
https://maps.apple.com/?q=48.8576248,2.2942817

Ok it is starting to get muddy.  All this is requesting in adding the option for a startTime and duration to the location tag, which is the one that physically appears in the RSS feed. This will allow search to understand what the places the episodes are referring to.
One could also add GPS to chapters, but that feels like a separate requirement.
Is this the same as soundbite? and enhancement? or are the two separate beasts that just look similar, I am not sure, but having the options availble doesn't limit anybody from doing what ever they want to do.
As to-

Is this too niche to include at this point or are there a lot of travel/sightseeing podcasts out there

Maybe or maybe no one has been able to do anything like this because the hooks were never there.  I have been toying with the idea of a geopodcast for 10 years, getting the ball rolling is the toughest bit. Worst case, no one uses it.

https://github.com/Podcastindex-org/podcast-namespace/issues/138 may be useful here as a suggestion for the "location" tag.
I'd be keen that chapter-specific location data is held within chapters - that seems a great place for it.
maps.fm is good prior art of location-based podcasts.

To help us all, if you don't mind, I will close this thread to keep conversations about the location tag in one place. I hope that's OK with everyone. See you over at https://github.com/Podcastindex-org/podcast-namespace/issues/138


feat(react-example): add react example to project

Rewrote the whole example in React.
Made flamechart wrappers for React (maybe it's worth adding them to the dist?).
Reworked the view so that it was more convenient to use.
Added an example of a custom flame chart with two charts.
Changed node selection api - now event contains one object with data and type. This made it much easier to type this place.

first of all, awesome and inspiring work
I really can learn a lot from you in this area of development
I have tried out the deployed branch and compared it a bit against the currently deployed one from master
I might be wrong, but on scrolling it seems like there is a slight lag now when flame chart expands, where on master it is pretty smooth
also on master chart looks bit more sharp

first of all, awesome and inspiring work
I really can learn a lot from you in this area of development

It seems to be a completely unremarkable code, as for me ... But thanks, I'm glad that this experience is useful to you.)
Can you take a screenshot and record a comparison video? On my macbook they look exactly the same. Maybe it's in the OS and screen resolution?

you are right, I was on my company laptop and it is obviously unreliable
now when I am looking at it at home, everything is smooth and great


Nested FlatList does not scroll

Description
I'm nesting a FlatList inside a FlatList, both vertically oriented. The nested FlatList doesn't scroll.
I noticed that if I replace the nested FlatList with a ScrollView, the nested ScrollView works as expected.
React Native version:
System:
OS: Windows 10 10.0.19041
CPU: (12) x64 Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz
Memory: 16.57 GB / 31.85 GB
Binaries:
Node: 12.14.1 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.5 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.13.4 - C:\Program Files\nodejs\npm.CMD
Watchman: Not Found
SDKs:
Android SDK:
API Levels: 23, 24, 25, 26, 27, 28, 29, 30
Build Tools: 28.0.3, 29.0.2, 30.0.2
System Images: android-30 | Google APIs Intel x86 Atom, android-30 | Google Play Intel x86 Atom
Android NDK: Not Found
Windows SDK: Not Found
IDEs:
Android Studio: Version  <IP_ADDRESS> AI-193.69<IP_ADDRESS>21437
Visual Studio: 16.8.30717.126 (Visual Studio Enterprise 2019)
Languages:
Java: 1.8.0_262
Python: 3.8.6
npmPackages:
@react-native-community/cli: Not Found
react: 16.13.1 => 16.13.1
react-native: 0.63.4 => 0.63.4
react-native-windows: Not Found
npmGlobalPackages:
react-native: Not Found
Steps To Reproduce

Nest a FlatList inside a FlatList, both vertically oriented

Expected Results
The nested FlatList should scroll (like ScrollView does)
Snack, code example, screenshot, or link to a repository:
import React from 'react';
import {Text, FlatList, View} from 'react-native';

const data = [
  'one',
  'two',
  'three',
  'four',
  'five',
  'six',
  'seven',
  'eight',
  'nine',
  'ten',
];

const App: () => React$Node = () => {
  const renderLevelTwo = (title, subTitle) => {
    return (
      <Text
        style={{
          height: 30,
          backgroundColor: 'lime',
          margin: 5,
          paddingHorizontal: 10,
        }}>
        {title} - {subTitle}
      </Text>
    );
  };

  const renderLevelOne = (title) => {
    return (
      <View style={{backgroundColor: 'green', borderWidth: 2}}>
        <View style={{height: 70, zIndex: 10}}>
          <FlatList
            renderItem={(itemInfo) => renderLevelTwo(title, itemInfo.item)}
            keyExtractor={(item) => item}
            data={data}
            scrollEnabled={true}
            nestedScrollEnabled={true}
          />
        </View>
        <View style={{height: 30, backgroundColor: 'yellow', zIndex: 5}} />
      </View>
    );
  };

  return (
    <View style={{height: 300}}>
      <FlatList
        renderItem={(itemInfo) => renderLevelOne(itemInfo.item)}
        keyExtractor={(item) => item}
        data={data}
        scrollEnabled={true}
        nestedScrollEnabled={true}
      />
    </View>
  );
};

export default App;

I also noticed that the nested FlatList overflows the parent area:

https://snack.expo.io/@xirustam/nested-flatlist

There's the same issue https://github.com/facebook/react-native/issues/15375 which wasn't resolved, but closed.

can u try setting nestedScrollEnabled={true}

I have the same problem when I nest two flatLists and in the one inside I try to scrollToIndex, it gives an error in the VirtualizedList on line 452 in this._scrollRef.scrollTo, the scroll functions do not have them for whatever the flatList is the one I want to scroll.
React-native version: 0.63.4

Try importing Flatlist from 'react-native gesture handler'.
import { FlatList } from 'react-native-gesture-handler';
Check this question in stackoverflow.

Try importing Flatlist from 'react-native gesture handler'. import { FlatList } from 'react-native-gesture-handler'; Check this question in stackoverflow.

For some reason this works!


TF2.0 DocSprint Prep - Error with Dataset Example

URL(s) with the issue:
https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/data/Dataset
Description of issue (what needs changing):
The Example for "from_generator" fails.
Clear description
This example uses tf.enable_eager_execution() which gives the following error
AttributeError: module 'tensorflow' has no attribute 'enable_eager_execution'
If you remove this line of code the example runs but identifies this code is deprecated in TF V2.
Correct links
I do not see a link to the source.
Parameters defined
The parameters are defined but the example only uses three of the four parameters.  The last parameter is optional but not shown how to be used.
Returns defined
The return code is defined correctly as a dataset.
Raises listed and defined
Are the errors defined? For example,
https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/feature_column/categorical_column_with_vocabulary_file#raises
Usage example
There is a usage example.  This PR is regarding the example.
Request visuals, if applicable
There are not example.
Submit a pull request?
yes
https://github.com/tensorflow/tensorflow/pull/28842
Are you planning to also submit a pull request to fix the issue? See the docs
contributor guide: https://www.tensorflow.org/community/contribute/docs and the
docs style guide: https://www.tensorflow.org/community/contribute/docs_style
yes
https://github.com/tensorflow/tensorflow/pull/28842

@netskink : Thank you for bringing this out.

You are welcome achandraa.  Yesterday there was discussion regarding the branches.  Is 2.0 updates going into master branch or r2.0 branch?

Yes you are right. The updates for 2.0 are going to r2.0 branch as of now.

This is fixed now. Thanks!
https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/data/Dataset#for_example_3


java.lang.NullPointerException。androidx.camera:camera-core:1.4.0-rc03

Compilation failed to complete, origin: C:\Users\Administrator.gradle\caches\transforms-3\bf9f0408c91c67684d3630cbaa5dfebd\transformed\camera-core-1.4.0-rc03-runtime.jar:androidx/camera/core/CameraState$ErrorType.class
How should we solve it

This is your side issue.

Install latest stable Android studio
Invalid caches (File - Invalidate Caches...)
Try to change androidx.camera:camera-core:1.4.0-rc03 to androidx.camera:camera-core:1.4.0-rc02 in build.gradle


mining shuttle airlock

About the PR
like the escape pod one but for mining shuttle
also added it to saltern mining dock
Media

[X] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog
:cl:

add: The NT "Reclaimer" mining shuttle is now being rolled out to participating stations, more will follow soon.

#16931 real


PHP compressed value can't process

Hi,
We have faced an issue when the key is stored via php with compression it can't process in memcached module.
php code: Memcache::set ( "SampleKey" , "Sample value" , MEMCACHE_COMPRESSED , 2000);
undefined:1
x����N�
^
SyntaxError: Unexpected token x
at Object.parse (native)
at Socket.value (/usr/local/lib/node_modules/memcached/lib/memcached.js:497:26)
at Client.rawDataReceived (/usr/local/lib/node_modules/memcached/lib/memcached.js:708:51)
at Client.BufferBuffer (/usr/local/lib/node_modules/memcached/lib/memcached.js:654:12)
at Socket.bowlofcurry (/usr/local/lib/node_modules/memcached/lib/utils.js:108:15)
at Socket.EventEmitter.emit (events.js:95:17)
at Socket. (stream_readable.js:746:14)
at Socket.EventEmitter.emit (events.js:92:17)
at emitReadable (_stream_readable.js:408:10)
at emitReadable (_stream_readable.js:404:5

@kazzalib unfortunately, each memcached client tends to use the type flags in the protocol differently, so what the PHP library interprets as a zipped string node-memcached might interpret as an integer and python's memcached library might interpret as a double and so on. String is the only type that is consistent in my experience.
So, one option is to pre-gzip your data (might need to base64 it too) in PHP and store it as a string to memcached? Then you'll get a string back in node and can un-gzip it.

I was able to fix a similar issue. We were facing same kind of php compressed data. Have a look at the diff file below, (It may sound like a nasty fix with a lot of side effects, but works like a charm in our case). We were unable to change original php code due to backward compatibility limitations with existing php code base. Works good for both case, compressed and non compressed.
diff --git a/node_modules/memcached/lib/memcached.js b/node_modules/memcached/lib/memcached.js
index d699f2b..141fa94 100644
--- a/node_modules/memcached/lib/memcached.js
+++ b/node_modules/memcached/lib/memcached.js
@@ -4,7 +4,8 @@
  * Node's native modules
  */
 var Stream = require('net').Stream
-  , Socket = require('net').Socket;
+  , Socket = require('net').Socket
+  , zlib = require('zlib');

 /**
  * External or custom modules
@@ -176,7 +177,7 @@ Client.config = {
       S.streamID = sid++;
       S.setTimeout(memcached.timeout);
       S.setNoDelay(true);
-      S.setEncoding('utf8');
+      S.setEncoding('binary');
       S.metaData = [];
       S.responseBuffer = "";
       S.bufferArray = [];
@@ -728,7 +729,12 @@ Client.config = {

         // fetch the response content
         if (tokenSet[0] === 'VALUE') {
-          dataSet = Utils.unescapeValue(S.bufferArray.shift());
+          var value = S.bufferArray.shift();
+          try{
+            value = zlib.inflateSync(new Buffer(value, "binary")).toString()
+          }catch(e){
+          }
+          dataSet = Utils.unescapeValue(value);
         }

         resultSet = privates.parsers[tokenSet[0]].call(S, tokenSet, dataSet || token, err, queue, this);

Actually php has two different sets of encoding depending on... who knows... it will either encode with zlib or fastlz.
I have worked around the decoding bit and will add soon the encoding bit.
Unfortunately you will need also a fastlz module (which is used 99% of the time by my php instance).
I have this small diff for the memcache part and attached the code for the fastlz bit (adapted from a couple which can only compress)
--- memcached/lib/memcached.js	2022-02-23 16:53:56.000000000 +0100
+++ ../node_modules/memcached/lib/memcached.js	2021-12-23 15:00:18.000000000 +0100
@@ -15,10 +15,6 @@
, Utils = require('./utils')
, IssueLog = Connection.IssueLog;
-var Zlib = require('zlib')
-var Fastlz = require('../../dev_fastlz')
-const fs = require("fs");
/**

Variable lookups
*/
@@ -111,11 +107,7 @@
, CONTINUE = 1E1
, FLAG_JSON = 1<<1
, FLAG_BINARY = 1<<2

, FLAG_NUMERIC = 1<<3
, FLAG_PHP_COMPRESSED = 1<<4
, FLAG_PHP_COMPRESSED_ZLIB = 1<<5
, FLAG_PHP_COMPRESSED_FASTLZ = 1<<6
;

, FLAG_NUMERIC = 1<<3;

nMemcached.prototype.proto = require('events').EventEmitter.prototype;
@@ -183,7 +175,7 @@
S.streamID = sid++;
S.setTimeout(memcached.timeout);
S.setNoDelay(true);

 S.setEncoding('latin1');

 S.setEncoding('utf8');
 S.metaData = [];
 S.responseBuffer = "";
 S.bufferArray = [];

@@ -530,23 +522,6 @@
dataSet = tmp;
break;
}

 if (flag & FLAG_PHP_COMPRESSED)

 {

     //PHP weirdly removes the first 4 bytes

     dataSet = dataSet.slice(4)

     var length = dataSet.length

     var buffer = Buffer.alloc(length)

     //And we need the codeset to be latin to be able to decompress

     buffer.write(dataSet, "latin1")

     if (flag & FLAG_PHP_COMPRESSED_ZLIB)

     {

         dataSet = Zlib.inflateSync(buffer)

     }

     else if (flag & FLAG_PHP_COMPRESSED_FASTLZ)

     {

         dataSet = Fastlz.decompress(buffer)

     }

 }

 // Add to queue as multiple get key key key key key returns multiple values
 if (!multi) {

@@ -700,7 +675,6 @@
if (chunks[chunkLength].length === 0) chunks.splice(chunkLength, 1);
   S.responseBuffer = ""; // clear!

 this.rawDataReceived(S, S.bufferArray = S.bufferArray.concat(chunks));

}
};
@@ -764,13 +738,8 @@
   // fetch the response content
   if (tokenSet[0] === 'VALUE') {

     if (!(tokenSet[2] & FLAG_PHP_COMPRESSED))

     {
         dataSet = Utils.unescapeValue(S.bufferArray.shift());
     }

     else

         dataSet = S.bufferArray.shift()

   }

   resultSet = privates.parsers[tokenSet[0]].call(S, tokenSet, dataSet || token, err, queue, this);

dev_fastlz.zip
I am not pushing this as a feature request, as it was said often, every single developer uses it's own compression for memcache, and we can't put all of them in here, but it might help someone


UWP camera use

I am using Xamarin Forms and UWP.
If you use scanner
ZXingScannerPage scanPage = new ZXingScannerPage();
scanPage.OnScanResult += async (result) =>
{ ... }
than CameraCaptureUI is not working or any cammera usage after using the scanner and not killing the app. Only exception is the ZXingScannerPage that works after closing and opening the page.
I dont know if it is feature of UWP or actual bug...

Needs more information, like stack traces...
I suspect you are not setting it up right in your project, maybe not calling the Init function for the platform?  Take a look at how the sample is setup and see what you might be missing.


eval coco order and flickr order

for loading dataset, small bug where it should be enumerate(tqdm(self.annotation)). And one question, why it takes so much time loading coco order dataset?

Hi @Magiccircuit,
it takes time because we are using spacy to generate all the possible perturbations for the captions! You should be able to easily wrap it ina multiprocessing.Pool this if you need to speed it up!

let me know if you need help on this!

Hello, I just pushed an updated that should make the generation of the shuffled options faster, let me know if this works


bubble maps fails to generate the legend

load this carto Untitled Map 3 (on 2016-10-07 at 08.54.04).carto.zip
go to points layer and style size by cartodb_id

it raises a javascript error (same than #10079).
It can't be reproduced consistently :(

Same issue as #10079.


请问可以把谷歌云盘的东西上传一份到百度网盘吗？谢谢

Thanks, we will consider this, but all the data and models take lots of space and it may take a lot of time.

主要是这玩意
2.3. Download the pretrained model from the Model Zoo and put the models to snaps folder.
python scripts/Download_data.py 1iZIE1rNDTNSaGQZcCTAyz1cJnyc4ycA8 snaps/pretrain_model.caffemodel
在这只能通过这个代码下载，但是不管是正常网络还是vpn都无法下载
谢谢

You could download this file from https://drive.google.com/file/d/1iZIE1rNDTNSaGQZcCTAyz1cJnyc4ycA8/view. For other files, you could simply replace the document id (the string between https://drive.google.com/file/d/ and /view) with the first argument of the corresponding command line (1iZIE1rNDTNSaGQZcCTAyz1cJnyc4ycA8 in this case.)

太感谢了，搞了一天了，差点弃疗了，谢谢

You could download this file from https://drive.google.com/file/d/1iZIE1rNDTNSaGQZcCTAyz1cJnyc4ycA8/view. For other files, you could simply replace the document id (the string between https://drive.google.com/file/d/ and /view) with the first argument of the corresponding command line (1iZIE1rNDTNSaGQZcCTAyz1cJnyc4ycA8 in this case.)

太感谢了，搞了一天了，差点弃疗了，谢谢


Sporadical breaking behavior

After the last VSC update the debugger started acting up. Particularly when I set a breakpoint prior launch, then launch - it doesn't break right away. I need a random amount of page reloads to trigger the break. I've noticed no regularity: sometimes I need 2-3 reloads, sometimes 10-15.
Only errors in the log are
  ERROR|003.107|TabActorProxy: No such actor "server1.conn0.child8/tab1"
  ERROR|003.108|FirefoxDebugSession: Failed attaching to tab: No such actor

and they only occur 1 time per launch and never on reload and IIRC they've been occurring before the issue so I doubt they are the direct culprit.
VSC team are currently fiddling with node debuggers. Maybe they did something to the interface?
BTW, regarding the linked issue. Do you have plans for excluding/skipping/hiding files/folders like the Chrome Debug's experimentalLibraryCode option in your extension?
Thanks.

Thanks for the test case - at first I wasn't able to reproduce this issue but with the test case I eventually saw the same behaviour (although it happens less often on my machine). Please test with the latest release and tell me if the fix works for you as well.
The errors you saw in the log are indeed unrelated to this - they are caused by a weird behaviour that recent Firefox versions sometimes show directly after launching: Firefox tells the debug adapter that a new tab has been opened and then says the tab has been closed immediately after that. In the meantime the debug adapter sent a message to Firefox that it wants to attach to the tab and gets an error message back because the tab has already disappeared.
The feature described in the linked issue does indeed sound interesting, I will put it on my TODO list.

It got better, however it still never triggers breakpoints right after the launch. only after I reload the page in FF...

Yes, reloading the page is still necessary - as explained in #7 this is due to a limitation of the Firefox debug protocol and therefore I don't think I can fix it.

The feature described in the linked issue does indeed sound interesting, I will put it on my TODO list.

You probably know it already, but skipFiles ware just implemented by node, node2 and Chrome debuggers. So there is already some working code to pry into - hope it saves you some time.

@Spown The latest version now supports skipFiles. It's only slightly different from the implementation in the Node and Chrome debuggers: it only supports glob patterns, so instead of "file.js" you'd have to write "**/file.js" and instead of "folder" you'd write "**/folder/**".

Nice! Thank you very much, I'll test it as soon as possible!


[10.x] Get foreign keys of a table

This PR adds Schema::getForeignKeys() method to get foreign keys' info of the given table.
Usage
Just like Schema::getColumns() added on #48357 and Schema::getIndexes() added on #49204, the new Schema::getForeignKeys()method is to inspect the tables' foreign keys.
Schema::getForeignKeys()

name (?string): Name of the constraint (null on SQLite)
columns (string[]): Array of local columns' names
foreign_schema (?string):

SQLite: null
MySQL: Database name of the foreign table
PostgreSQL and SQL Server: Schema name of the foreign table

foreign_table (string): Foreign table's name
foreign_columns (string[]): Array of foreign columns' names
on_update (string): Action rule on update (cascade, set null, set default, restrict (except SQL Server), no action)
on_delete (string): Action rule on delete (cascade, set null, set default, restrict (except SQL Server), no action

Failing tests seem unrelated to this PR, but related to previously reported issue on #46165?

@hafezdivandari - I believe you are hitting this - https://github.com/shivammathur/setup-php/issues/798
Just hit our projects with same stack

Thanks for letting me know, I mark this PR as draft for now, will re-run the tests after shivammathur/setup-php issue resolved.

@hafezdivandari  This also breaks compatibility with https://github.com/umbrellio/laravel-pg-extensions...

https://github.com/umbrellio/laravel-pg-extensions/actions/runs/7287329915/job/19857806106

Related to:

https://github.com/laravel/framework/pull/49231
https://github.com/umbrellio/laravel-pg-extensions/pull/82

@mpyw ok, what can I do about this?

@hafezdivandari I'll appreciate if you send a PR for umbrellio/laravel-pg-extensions that fixes argument type compatibility problem.

Remove native argument type constraint from newly overridden methods.

or

Remove overridden methods, confirming it keeps the almost same behavior.

@hafezdivandari Oh, please review https://github.com/umbrellio/laravel-pg-extensions/pull/83


Fixed NPC tracking events and more

Fixed NPC tracking events not working.

Added MantellaTargetListenerScript.psc to QuestAliases of MantellaConversationParticipantsQuest
Deleted MantellaEvents quest that wasn't doing anything

Added 9 more possible QuestAlias to MantellaConversationParticipantsQuest so conversations can have a maximum of 12 participants
Made tracking of time and weather optional

Added MCM options for tracking time and weather to MantellaMCM_PlayerTrackingSettings.psc. Moved them to a new category Track World Events on the right column together with the location tracking option.

Fixed extra tracking of location through events as this is now part of the context
Fixed looking at the wrong slot for helmets (should be 31, was 30)

One second on the merge here. I made a mistake that assigned both tracking scripts to the player.

Fixed the issue of the PC getting both tracking scripts assigned.


CI shouldn't fail when secrets are missing in forks

Fixes #issue_number
Problem
CI fails miserably when run in forks.
Solution
This adds an extra tiny job to the ci workflow that checks for the secrets that appear to be essential to the build and only sets an output when they're present.
The stages that need those secrets are then conditioned on the presence of the secrets.
Notes
I've also fixed the indentation of the ci.yml file as the one-space indentation makes it really hard to follow the file.
Checklist

[ ] Unit test all changes
[ ] Update README.md if applicable
[ ] Add [WIP] to the pull request title if it's work in progress
[ ] Squash commits that aren't meaningful changes

Squashing changes eagerly makes it really hard to review the changes. I'm happy to squash once people are ok w/ the changes themselves.

[ ] Run sbt scalariformFormat test:scalariformFormat to make sure that the source files are formatted

@getquill/maintainers

@guizmaii after your changes regarding the ci/release, is this one still useful?

Hmm, by main, I presume you mean master -- there's a main, but it's really behind (quite confusingly)...

Thank you for the contribution!


Update init.py

I had an error on line 404
TypeError: 'str'does not support buffer interface
It looks like it came from a \xbd character.
I just add a encode() method to avoid this.
I didn't investigate a lot so maybe it is wrong.

You can only get such error if you try to write binary data to file opened in text mode. I suppose you're using Python 3.x version. I won't accept your patch without minimal case to reproduce the problem. So far it seems like error in your script.

Hello
In fact I just use the hex2bin.py script on .hex file. I suspected an
encoding problem because the hex file was generated on windows and I am
working on linux. Unfortunately, I cannot provide the hex file on which I
have the problem. I tried to reproduce the case with basic hex file (cf.
join file), the problem is similar but the .encode() metode is not enough
BR
Pierrick
On Thu, Jul 28, 2016 at 2:00 PM, bialix<EMAIL_ADDRESS>wrote:

You can only get such error if you try to write binary data to file opened
in text mode. I suppose you're using Python 3.x version. I won't accept
your patch without minimal case to reproduce the problem. So far it seems
like error in your script.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/bialix/intelhex/pull/7#issuecomment-235874963, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEua-RclF-Yc5QI_TTusy96vcbzVnX8Gks5qaJnVgaJpZM4JXIoa
.

Can you please file an issue? I'll try to test it on linux/windows machines?
I need your python version as well (python -V shows you).
Thanks.

Hello,
The file was filter I guess.
Anyway, I created this hex:
:01000000bd42
:00000001FF
On windows, both hex2dump and hex2bin work.
On Linux, only hex2dump (the character is not display correctly but I don't
care)
On windows, I have python 3.4.3 and on linux 3.4.1.
Thanks for support.
On Thu, Jul 28, 2016 at 5:17 PM, bialix<EMAIL_ADDRESS>wrote:

Can you please file an issue? I'll try to test it on linux/windows
machines?
I need your python version as well (python -V shows you).
Thanks.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/bialix/intelhex/pull/7#issuecomment-235927016, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEua-Uf1ka4b84pskkKEDA5EXOQquueIks5qaMf-gaJpZM4JXIoa
.

I've just filed new issue https://github.com/bialix/intelhex/issues/8
I'll try to check this in near future.
I'd like to know how intelhex was installed on Linux? Did you install it yourself, or somebody else did this for you? Can you say exact version number of intelhex installed on Linux? hex2bin --version will show you.

It installed manually from source with:
python setup.py install --user
For both OS, version 1.5 is installed
On Fri, Jul 29, 2016 at 10:31 AM, bialix<EMAIL_ADDRESS>wrote:

I've just filed new issue #8 https://github.com/bialix/intelhex/issues/8
I'll try to check this in near future.
I'd like to know how intelhex was installed on Linux? Did you install it
yourself, or somebody else did this for you? Can you say exact version
number of intelhex installed on Linux? hex2bin --version will show you.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/bialix/intelhex/pull/7#issuecomment-236124508, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AEua-fByJuzefLJOw-gZBSwtmHbypobgks5qabphgaJpZM4JXIoa
.

I'm sorry? Are we talking about intelhex version 1.5? Which is 3 years old now? Why don't you use recent versions? Chances are high your problem has already fixed.

How it happen, I was sure to check this. Sorry it is a mistake.
Anyway, I switch on version 2.1, retry all the case on both OS and no problem.
Sorry again and thanks for support.


Enhance Swagger Docs

Suggested by @markus2330 in #312.
Our current API documentation is still very bare-bones.

To add to that:
utoipa automatically uses the rust doc on functions to explain endpoints. However it looks quite weird when referencing structs. We should probably provide better descriptions of endpoints (and remove the rust doc links).
E.g.


Redirects don't work with multiple sites

Right now I have two sites configured:

I have noticed that redirects don't work properly when you have more than one site, I can't put my finger on the exact issue, other than they don't kick in.
I think it is because I can't specify the site that the rule applies to, and then the moment you have more than one site the redirects module doesn't know if the rule applies to this site or not?

Thanks @lee-kagiso
Looking at the code behind this (https://github.com/torchbox/wagtail/blob/master/wagtail/wagtailredirects/models.py#L36-L40) you can either have a redirect that applies to all sites or one particular site. When it new redirect is created, it is currently assigned to the site that the editor was using to browse the admin with: https://github.com/torchbox/wagtail/blob/master/wagtail/wagtailredirects/views.py#L112.
I can't remember the reason behind implementing it this way, but I think we should remove that bit of code at least until we have support for selecting the site (#1163), so all new redirects will be global.
A workaround that should get your current redirects working for now (assuming you want all redirects to be global):
>>> from wagtail.wagtailredirects.models import Redirect
>>> Redirect.objects.all().update(site=None)

@kaedroho thanks, I never spotted that you have to change the admin url to the site in question.
I guess as a superadmin I thought I could change any sites redirect rules in one spot...

Fixed in #1475; making the site field configurable is covered by #1163.

Nice, thanks!


[BugFix] Fix parse comment incompatible bug

What type of PR is this：

[x] bug
[ ] feature
[ ] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #7479
Problem Summary(Required) ：

[FE PR Coverage check]
:heart_eyes: pass : 8 / 8 (100.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/parser/SqlParser.java
8
8
100.00%

[FE PR Coverage check]
:heart_eyes: pass : 8 / 8 (100.00%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/sql/parser/SqlParser.java
8
8
100.00%


[dailymotion] fix extraction

Please follow the guide below

You will be asked some questions, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your pull request (like that [x])
Use Preview tab to see how your pull request will actually look like

Before submitting a pull request make sure you have:

[x] At least skimmed through adding new extractor tutorial and youtube-dl coding conventions sections
[x] Searched the bugtracker for similar pull requests
[x] Checked the code with flake8

In order to be accepted and merged into youtube-dl each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[x] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[x] Bug fix
[ ] Improvement
[ ] New extractor
[ ] New feature

Description of your pull request and other information
fix issue #17699

This patch works for me, thank you very much!

Works for me too . Thanks :)

How to test this patch?

how to install? i don't install

It works, can you merge it?


fix: add autoscaling eviction annotation to catalog pods

Signed-off-by: Daniel Sover<EMAIL_ADDRESS>
Description of the change:
Closes #2666
Because the catalog pods are standalone and not backed by a Deployment/ReplicaSet, it causes issues when draining the underlying node, when then affects autoscaling. This additional annotation on the catalog pods will enable the cluster autoscaler to evict catalog pods when draining a node.
Motivation for the change:
Enable cluster autoscaling to work
Reviewer Checklist

[ ] Implementation matches the proposed design, or proposal is updated to match implementation
[ ] Sufficient unit test coverage
[ ] Sufficient end-to-end test coverage
[ ] Docs updated or added to /doc
[ ] Commit messages sensible and descriptive
[ ] Tests marked as [FLAKE] are truly flaky
[ ] Tests that remove the [FLAKE] tag are no longer flaky

/approve @exdx could you please rebase?

/approve @exdx could you please rebase?

done -- I think this is a reasonable stop-gap solution for our upstream users until we come up with a better story around how we want to support catalog pods being evicted from nodes during a drain or node scale down event. If we come up with a more robust solution, this annotation still should not be prohibitive.

Rebasing off HEAD of master

/lgtm

Does this make node draining work too? In that past that hasnt worked. Though I haven't tested on the newest olms.

Does this make node draining work too? In that past that hasnt worked. Though I haven't tested on the newest olms.

Unfortunately no, the catalogsource pod preventing node draining is still an issue. We are tracking that effort in an RFE https://issues.redhat.com/browse/RFE-2737.


fix(useGroupBy): Improve performance

Don't do costly operations (for calculation of groupedValues and leafValues), if the given column is not participating for aggregation, this will improve grouping performance many folds.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


devicePixelRatio works for screenshots, but not (entirely) for PDFs

My device has a retina display.
page.screenshot produces the expected behavior: screenshots with devicePixelRatio = 1 have blurred images, while screenshots with devicePixelRatio = 2 have crisp images.
However, page.pdf does not produce the expected behavior. Regardless of the devicePixelRatio set using page.setViewPort, images in the generated pdf file are pixellated -- not blurred, as in screenshots with the wrong devicePixelRatio, but grainy. Images with border-radius: 50% have jagged, grainy edges.
I have attached two images below, demonstrating the issue. The first is from the generated pdf, the second from the generated png.

(Note: the screenshots having different zoom levels is not the issue. The difference in the images is apparent at any zoom, and the image I used had a resolution about 20 times greater than needed.) This issue occurs regardless of image used and regardless of the dimensions of the pdf. Maybe since page.pdf overrides the viewport options with its own width and height, it also removes the specified devicePixelRatio?

The problem for me was the grayscale filter.
It seems that Chrome can't print the image at high quality when the following filter is applied:
filter: grayscale(100%);

I can also reproduce this issue.

I also have such issue.
@JensVanhooydonck @Nixes do you have workaround to generate pdf file in grayscale properly?

I also have such issue.
@JensVanhooydonck @Nixes do you have workaround to generate pdf file in grayscale properly?

I didn't find any fix for this. I removed the grayscale filter, and added a function to convert images to grayscale on the backend when needed.

hey guys!
has someone ended up with a solution on this? I have the same issue, even with any CSS filter over the source


Add all instructions as a feature

Note: This patch is currently based against the added config options for vocab generation patch, so a lot of the changes in this PR are related to that. The only relevant changes for adding the instruction features are the creation of the new model in compiler_opt/rl/regalloc/config.py at the top of the file and the adding of this model as a preprocessing layer for the instructions_and_mapping feature.
The current input tensors is a 34x300 matrix with the first row being the instruction opcodes and the next 33 rows being a binary matrix which maps each live range to its instructions. Eg:
op_code,op_code,op_code,op_code...
1            ,1            ,1            ,0           ...
0            ,0            ,0            ,1           ...
...

Currently the model performs the following steps on the input tensor:

Split the matrix into two parts, the first one being the instruction opcodes and the next one being the binary mapping matrix
Get embeddings for the instruction opcodes
Multiply the instruction embeddings by the binary matrix to get an output 33x16 matrix

Adding in a sparse optimizations on the matrix multiplication would probably be optimal, but tensorflow agents passes in the batch size as an additional dimension on the tensors passed to each preprocessing layer, and while the normal matrix multiplication algorithm supports having a batch size dimension, for some reason when enabling sparse optimizations, the function doesn't support having the batch size dimension. I'm planning on seeing how trivial this is to fix upstream and maybe writing a patch or just submitting an issue.
I'll try and post other potential models here that could potentially improve the performance of the model (since the matrix multiplication is extremely expensive) while still passing very similar/the same data to the model.

@yundiqian Here are the changes for the initial model plan. I'll try and get out an implementation of the idea that I mentioned on slack soon. Sorry for the delayed timeline. Validation that all the code worked as expected took longer than expected.

class process_instruction_features(tf.keras.Model):

  def __init__(self, opcode_count, register_count, instructions_per_live_range_count, embedding_dimensions=16):
    super().__init__()
    self.opcode_count = opcode_count
    self.register_count = register_count
    self.instructions_per_live_range_count = instructions_per_live_range_count
    self.embedding_dimensions = embedding_dimensions
    self.embedding_layer = tf.keras.layers.Embedding(self.opcode_count,
                                                     self.embedding_dimensions,
                                                     input_length=self.instructions_per_live_range_count * self.register_count)

  def get_config(self):
    return {
      "opcode_count": self.opcode_count,
      "register_count": self.register_count,
      "instructions_per_live_range_count": self.instructions_per_live_range_count,
      "embedding_dimensions": self.embedding_dimensions
    }

  @classmethod
  def from_config(cls, config):
    return cls(**config)

  def call(self, inputs):
    # inputs is a batch_size x register_count x instructions_per_live_range tensor containing opcodes.
    instruction_embeddings = self.embedding_layer(inputs)
    # we now have a batch_size, register_count, instructions_per_live_range, embedding_dimensions shaped tensor
    # sum along the instruction_count dimension
    output_tensor = tf.reduce_sum(instruction_embeddings, 2)
    return output_tensor

@yundiqian This was the other method I was describing on slack, where instead of taking a linear sequence of instructions and a mapping matrix, all of the instructions are just sent over as opcodes in a num_registers * num_instructions_per_live_range shaped tensor. Then an embedding layer is run on all of them and there is a reduction in the form of a sum/average. This should theoretically be faster than doing a full matrix multiplication, but I do want to make sure I'm not missing something.

This is a working solution for simple bag-of-word with only op code information about instructions. However, the issue with this representation is that:

information is duplicated X time (X == how many live ranges one instructions touches); it will be more severe if we want to include more per-instruction features other than op code in the future, e.g., frequency of this instruction.
the information of how different live ranges interference with each other gets lost, so we can hardly do anything more than the bag-of-word here

class process_instruction_features(tf.keras.Model):

  def __init__(self, opcode_count, register_count, instructions_per_live_range_count, embedding_dimensions=16):
    super().__init__()
    self.opcode_count = opcode_count
    self.register_count = register_count
    self.instructions_per_live_range_count = instructions_per_live_range_count
    self.embedding_dimensions = embedding_dimensions
    self.embedding_layer = tf.keras.layers.Embedding(self.opcode_count,
                                                     self.embedding_dimensions,
                                                     input_length=self.instructions_per_live_range_count * self.register_count)

  def get_config(self):
    return {
      "opcode_count": self.opcode_count,
      "register_count": self.register_count,
      "instructions_per_live_range_count": self.instructions_per_live_range_count,
      "embedding_dimensions": self.embedding_dimensions
    }

  @classmethod
  def from_config(cls, config):
    return cls(**config)

  def call(self, inputs):
    # inputs is a batch_size x register_count x instructions_per_live_range tensor containing opcodes.
    instruction_embeddings = self.embedding_layer(inputs)
    # we now have a batch_size, register_count, instructions_per_live_range, embedding_dimensions shaped tensor
    # sum along the instruction_count dimension
    output_tensor = tf.reduce_sum(instruction_embeddings, 2)
    return output_tensor

@yundiqian This was the other method I was describing on slack, where instead of taking a linear sequence of instructions and a mapping matrix, all of the instructions are just sent over as opcodes in a num_registers * num_instructions_per_live_range shaped tensor. Then an embedding layer is run on all of them and there is a reduction in the form of a sum/average. This should theoretically be faster than doing a full matrix multiplication, but I do want to make sure I'm not missing something.

So I've done some more testing in regards to sparse matrices. I currently can't get the entire matrix to get passed to the process_instruction_features model as a sparse matrix (at least fully functionally, it does work, but the policy saver breaks) due to the fact that a SparseTensorSpec doesn't have a name attribute. I'll work on playing around with this a little bit more though because it is absolutely possible that I am just missing something. I also tried just converting the binary_mapping_matrix to a sparse matrix after it has been sliced and then passing it into the sparse_dense_matmult_batch function that you sent. However,  when doing it like this I'm seeing significantly reduced number of steps per second running behavioral cloning. I'm not totally sure why this is currently, but I'd hypothesize it's because map_fn isn't taking advantage of parallelism as efficiently as the non-sparse optimized linalg.matmul function, or that the conversion of the dense matrix into a sparse one is just taking up a significant amount of time. I'll continue to play around with it though and see if I can get something working.

ic, then i'm wondering how about just abandoning the sparse tensor concept. so the input becomes:

300 * op_code instructions as before; later converted to 300 * 16 embedding table
33 * 5 (or probably variable length, can start with a fixed number, e.g., 5) --- 5 being the #instructions this live range def/use, so for example it is [2, 5, 7, 9, 10] for live range 1, means live range 1 use/def instructions at line 2, 5, 7, 9, 10. Then you can use tf.gather to have 33 * 5 * 16 embedding table, then you do the tf.reduce_sum() to make it 33 * 16

in this way, it does the same thing as the sparse matrix multiplication, but does not contain sparse matrix

That should be pretty easily doable. I'll work soon on getting the necessary work done on the LLVM side to extract those features and then the ml-compiler-opt side should be pretty easy. I'll probably experiment with using all instructions that the live range encompasses (as I'm doing in this PR) as well as just use/def instructions as both should be fairly straightforward. It is also doesn't look too hard to add a name attribute to the SparseTensorSpec class, so I might experiment with that tonight and see if anything comes out of it. If it does, there might still be some issues to resolve (eg tensorflow version compatibility, seems to have already been resolved though), upstreaming, and then just waiting for a release cycle. Shouldn't hurt to at least try though.

Just keeping track of progress here. I hacked on SparseTensor a little bit last night and was able to pretty easily add a name attribute. However, just adding a name attribute doesn't push anything a whole lot farther as it doesn't get around the issue that all the logging on the LLVM side doesn't support sparse tensors. This is just for behavioral cloning, completely ignoring the whole problem of getting a saved model with a sparse tensor input working on the LLVM side (this would again require some rework on that side). Maybe something to look into supporting at some point, but definitely not a direction that is easy enough to pursue at this current time.

ic, i guess then we can just use the [2, 5, 7, 9, 10] index representations. the only issue with it is that it does not support variable lengths easily, but i guess it's fine for now.


Add sget to the goreleaser release pipeline

Summary
Follow up of: https://github.com/sigstore/cosign/pull/745
Now we add the sget in the goreleaser config to release officially sget

Include also the container image
and a github action to validate the goreleaser config

Ticket Link
N/A
Release Note

Add sget to the goreleaser release pipeline

fyi, sget is migrating to sigstore/sget , but will have added fulcio TUF polices.

we can move the goreleaser config together as well


Max retries exceeded with url

Hi,
When I run
client1 = DataFrameClient(host1, port, user, password, dbname1) ...... response = client1.query(query)
I've an error "Max retries exceeded with url". I think that it's a max query API, but how can I solve this bug ?
regards .
stef

Can you paste a full stacktrace please?

HI
I don't understand, now it works ! sorry.

I got same error.
Traceback:
Traceback (most recent call last):   File "influxdb-1.py", line 7, in <module>     client.create_database('test')   File "/usr/local/lib/python2.7/dist-packages/influxdb/client.py", line 579, in create_database     method="POST")   File "/usr/local/lib/python2.7/dist-packages/influxdb/client.py", line 416, in query     expected_response_code=expected_response_code   File "/usr/local/lib/python2.7/dist-packages/influxdb/client.py", line 267, in request     timeout=self._timeout   File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 512, in request     resp = self.send(prep, **send_kwargs)   File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 622, in send     r = adapter.send(request, **kwargs)   File "/usr/local/lib/python2.7/dist-packages/requests/adapters.py", line 513, in send     raise ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPConnectionPool(host='<IP_ADDRESS>', port=8086): Max retries exceeded with url: /query?q=CREATE+DATABASE+%22test%22(Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f7856cd9f90>: Failed to establish a new connection: [Errno 111] Connection refused',))

I have the exact same problem

I am suffering from the same problem


Build a real CLI

At the moment, when called, it just outputs the current VOC value. It would be nice to have some options regarding output format for various things:

add timestamp to output
output in JSON format

Adressed in  https://github.com/dfederschmidt/airsensor-py/commit/f7c7bb68e4e152ebc077312887e2183d80f440a8.


fix: try to parse all kinds of ahjo errors

Description :sparkles:
Ahjo error, depending on the case, might be inside an array, object, or string.
Try mapping as array first:[{"id": 1234, "message":"Hello ErrorArray}]
Next, try as object: {"id": 1234, "message": "Hello ErrorObject"}
Finally, fallback to string: "Hello ErrorString"
All of these 3 cases are possible to store into backend database.

HANDLER branch is deployed to platta: https://helsinkilisa-ui-handler-pr3639.dev.hel.ninja :rocket::rocket::rocket:

API branch is deployed to platta: https://helsinkilisa-pr3639.api.dev.hel.ninja/healthz :rocket::rocket::rocket:

APPLICANT branch is deployed to platta: https://helsinkilisa-ui-pr3639.dev.hel.ninja :rocket::rocket::rocket:

TestCafe result is success for https://helsinkilisa-ui-pr3639.dev.hel.ninja :laughing::tada::tada::tada:


Cannot read property 'push' of undefined (translate3d)

v7.2.10
const [styles, set] = useSpring(() => ({
  native: true,
  transform: 'translate3d(0,400px,0)',
}));

// inside gesture handler
set({
  native: true,
  immediate: immediate,
  transform: `translate3d(0,${nextY}px,0)`
});

// render
<animated.div style={styles}>Content</animated.div>

No errors when immediate is false, only happens if it's true.
Here's the source:

Im unable to report any patterns at this point, seems to happen randomly:

Seeing the same error when immediate flag is on.

any solution ???
i'm facing the same issue right now
nothing is working

@a-m-dev there's a workaround in my previous comment. Pass numbers into spring (or useSpring), and use interpolate function to transform to css.

@adjourn @a-m-dev @zeeyang sorry for the delay, was super busy with something else recently. i am looking at it now and it's the immediate flag that seems to throw it off tracks. fix comes hopefully today if i can find it that fast.

It's fixed, was a really silly bug somewhere in the controller. I will look after some other issue now and publish afterwards.

@drcmda Thanks for the fix, really appreciate it.


added multiple 'path' push_files/pull_files

Added a check for local_options.path, if it's an object with multiple paths the rsync commands are repeated for each one of them. If it's a string, the single rsync command is run.
Even though it's documented in the repository and the examples show you could have multiple paths, it wasn't actually working.

@gyopiazza I just FINALLY took a minute to review your code and I'm thinking two things:

I like your idea of checking to see if the [options].path key is an object.
I think you're misunderstanding the intended use of the plugin. Maybe I should modify the README. Let me try to explain..

First of all, for the pull_db and push_db tasks you modified, you need to pass the options objects to util.db_adapt(), not just urls, as you have in your PR...I would have to modify the accepted arguments for util.db_adapt() and it would make searching for a specific table_prefix more complicated. So I definitely won't be bringing that into master. Moving on from there...
pull_files() and push_files() are not intended to rsync all of the files in your path object...when you call either of those from the command line you need include --path-key=[key]...In the "remove-client-utils" branch of the repo you can find the helper tasks I created to do quick actions and preset the path-key flag. So now you can call:
grunt push_theme --target=staging and it will automatically check the local.path.theme and target.path.theme keys and rsync them.
I was thinking recently it might be helpful to have a push_all_paths() function or something like that, which your code would work well with (ya know, looping over the path keys and making sure they match up before the deploy. I'll open an issue to make that enhancement request. But I don't think the way that you integrated that concept is in line with the way I've been trying to set this up.
Try cloning the remove-client-utils branch and see if those helper tasks get you to where you want.
Thanks for your interest and help!

I wrongly assumed that the latest version was the master branch, so I definitely missed --path-key argument. However I'm glad you liked the idea and I saw it's implemented already in the remove-client-utils branch.
Out of curiosity, what branch should we actually use in our projects?
Thanks!

I recommend using the remove-client-utils branch for now. I'm hoping to take some time to properly pull it into master, but for the time being that's the right branch. Sorry for the confusion!

No problem, thank you! :)


Error: SyntaxError: Unexpected end of JSON input

0s
Post job cleanup.
Error: SyntaxError: Unexpected end of JSON input
SyntaxError: Unexpected end of JSON input
    at JSON.parse (<anonymous>)
    at Function.assign [as rehydrate] (/home/runner/work/_actions/gradle/gradle-build-action/v2.0.0/dist/src/cache-base.ts:77:1)
    at Object.<anonymous> (/home/runner/work/_actions/gradle/gradle-build-action/v2.0.0/dist/src/caches.ts:63:1)
    at Generator.next (<anonymous>)
    at rejected (/home/runner/work/_actions/gradle/gradle-build-action/v2.0.0/dist/src/caches.ts:26:32)
    at new Promise (<anonymous>)
    at P (/home/runner/work/_actions/gradle/gradle-build-action/v2.0.0/dist/src/caches.ts:22:28)
    at Object.restore [as save] (/home/runner/work/_actions/gradle/gradle-build-action/v2.0.0/dist/src/caches.ts:61:8)
    at /home/runner/work/_actions/gradle/gradle-build-action/v2.0.0/dist/src/post.ts:35:1
    at Generator.next (<anonymous>)

https://github.com/JavierSegoviaCordoba/semver-gradle-plugin/runs/4200743868?check_suite_focus=true

Personally I would prefer the action to delete all the cache or just avoid crashing in the post step, because I have other jobs later that are not being launch but they could if post step was not crashing, and they aren't related to Gradle so losing this cache is not a problem for them.

@JavierSegoviaCordoba Yes, the goal is for failures in caching to be reported as warnings and for the Job to continue. Clearly there are some edge cases I missed. Thanks for reporting: I'll investigate.

v2.0.1 has been released, which contains a fix for this issue


⚠ ClamAV has degraded performance

In ff78826, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 106 ms

Resolved: ClamAV performance has improved in cfd0e96.


VkMemoryRequirements2 sType must be STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2

VkMemoryRequirements2 structure reqMem does not currently set sType to VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2.
https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VUID-VkMemoryRequirements2-sType-sType
VkMemoryRequirements2 structure reqMem does not currently set pNext to NULL or to a valid instance of VkMemoryDedicatedRequirements.
https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VUID-VkMemoryRequirements2-pNext-pNext

I'm not sure whether this is the best place for mentioning this but this same issue is also present in the vkray-sample-code examples in the zip package downloadable from here: https://developer.nvidia.com/vkray-sample-code. I couldn't find these on github so I'll just point it out here.

Friendly ping. Could anyone take a look at this? Cheers

Thank you!
Sorry for not getting back to you earlier - reporting issues is appreciated!
The fix for this issue will be live shortly.

Has this been resolved?

Yes, this was done in https://github.com/nvpro-samples/shared_sources/pull/21/commits/f906caec485bd655929d4172e03b636b945ece93


Division symbol missing in transliteration

indic-transliteration version - 2.2.8
$ sanscript -f slp1 -t devanagari "1/6"
१꣡६

It seems to be related to accent handling which happenned recently.
Earlier script worked well.

There needs to be some logic which says that the item before or after the division mark is a number, and hence retain the division mark.
If it is following a vowel, it can be changed to accent marks, if needed.
I think this issue would be related to slp1 encoding only.
Only SLP1 uses it as an accent mark.

Also request to add something like 1/5 in transliteration tests, so that it does not get broken again.

Does it not brush the dust under the carpet only?
Earlier, 'slp1' was giving this error. Now 'slp1_accented' will give this error.
I would love to have accent feature also to be bug free.
Can we tweak somewhere in the transliteration code, to say that accents will be applicable only after vowels and M and H?
Or is there some downside? Do vedic texts have accents over numbers also?

Or is there some downside? Do vedic texts have accents over numbers also?

Very rarely in sAmaveda - ब꣢र्ही᳐ऽ३षी꣡ऽ२३꣡४꣡५꣡ , तो꣡याऽ᳒२᳒इ.

Does it not brush the dust under the carpet only? Earlier, 'slp1' was giving this error. Now 'slp1_accented' will give this error.
I would love to have accent feature also to be bug free. Can we tweak somewhere in the transliteration code, to say that accents will be applicable only after vowels and M and H? Or is there some downside? Do vedic texts have accents over numbers also?

Can we use forward and backslash to handle these two different cases.
Division symbol for numbers only looks hardcoded. What if someone wants division symbol to appear between letters also as in algebra.

There needs to be some logic which says that the item before or after the division mark is a number, and hence retain the division mark. If it is following a vowel, it can be changed to accent marks, if needed.
I think this issue would be related to slp1 encoding only. Only SLP1 uses it as an accent mark.

Can we use forward and backslash to handle these two different cases. Detecting number seems to be a hard-coded one and definitely have its downside.
What if someone wants to use division symbol between letters as in algebra?


Pizza for RefreshOKC (October 26th)

Respectfully requesting pizza for approx 20ish people for the refreshOKC meeting on 26Wed16 @ the OBI (901 N Lincoln Blvd, Oklahoma City, OK 73104) in the Addison Group conference room at 1130am.

#144 Closing duplicate issue.

Thanks Jessica. This is the first I've heard of this so I followed what I thought was the procedure. I'll go ahead and adjust my task list to reflecting verifying the automation instead of making double posts.
Appreciate it!

Was there enough food?  - Yep, We had one extra whole pizza but that's ok. It was taken care of and probably would have been gone if it arrived on time. That's not our fault though.
What was the head count? - About 20
Did it arrive on time?  - That's a big negatory
Was it decent or dissatisfactory in taste, time, etc? It was good. They've stepped up their quality of food.


[WIP] Bump nodeunit. Refactor tests so more can be written

[x] Update nodeunit to latest
[x] Decouple everything from testIgnoreBrokenMetrics test.
[x] Mock the API responses and allow for custom error messages along with a callback.
[ ] Add more tests

cc @jderrett


Add bitcoin-prices-and-news extension

Description

Screencast

Checklist

[x] I read the extension guidelines
[x] I read the documentation about publishing
[x] I ran npm run build and tested this distribution build in Raycast
[x] I checked that files in the assets folder are used by the extension itself
[x] I checked that assets used by the README are placed outside of the metadata folder

To add a bit of context, why I've created another Bitcoin extension. All the current extensions display the price in the menu bar only. This clutters the menu bar for people who don't want to see the BTC price at all times and instead just want to manually check it here and there, like I do.


Token scope and spec scope mismatch error is not clear in logs

With service to service call, if token is not matched, the error message is not clear when service has the wrong token and what is the token scope and spec scope. Need to output service id and scopes to assist developers for debugging.
error response.
{"statusCode":403,"code":"ERR10005","message":"AUTH_TOKEN_SCOPE_MISMATCH","description":"Scopes in authorization token and spec scopes are not matched"}

No need to output service Id into log file as docker log drive will send container name which will be service Id with logs to ELK.

Close this issue in as it must be addressed in light-java-rest.


release: 0.3.5

Summary:

What did I do? bumped release to 0.3.5

Why *** did I do it? (What was the motivation?) #120

How *** can someone test or demo my changes? Install package, run a notebook outside of the code clone folder.
*** When relevant, use screenshots to document

Fixes or Addresses Issue #: [ticket number & link]
Checklist before requesting a review:

[x] My code follows the guidelines of this project
[x] I  performed a self-review of my code changes
[x] I have added my changes to the change log (HISTORY.rst)
[x] I have completed spell-checking, removed unnecessary print statements & commented-out code
[ ] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[ ] New and existing unit tests pass locally with my changes

Hi,
I'm trying to reproduce the code in my google colab but I'm not having success. In addition to the demo code, is there any other more didactic guide on how to install the dependencies and the OS environment?
Note: I don't have developer skills.

Hi @Maranhao6456 - thanks for your interest in this library. Regarding your inquiry:

In addition to the demo code, is there any other more didactic guide on how to install the dependencies and the OS environment?

While you should be able to install the repo directly from its GitHub URL, followed by manually setting of environment variables that point to the STAC catalog URLs of interest (as shown in the constants file)...
It appears that Google Collab blocks certain Jupyter Widgets so you will likely not be able to load the interactive map output.

While we can't prioritize this issue given that the library works within the intended (pre-configured) Development Environments of interest, we can try to keep this in mind in future development phases.

Hi @emmalu,
Thank you for the answer. What would be these intended (pre-configured) Development Environments of interest?

They are custom cloud infrastructures for research teams at NASA.

Please move this side discussion to the https://github.com/MAAP-Project/stac_ipyleaflet/discussions


Triple audit logging fix (#1995)

Revert some changes introduced by https://github.com/opensearch-project/security/pull/1563 to correct work with log4j.
Signed-off-by: Andrey Pustovetov<EMAIL_ADDRESS>Description
[Describe what this change achieves]

Category: Bug fix
Why these changes are required?
When I execute GET request to .opendistro_security index, I see three audit messages in the logs instead of one.

Issues Resolved
#1995
Testing
I manually checked the changes by doing GET request to the index and checking the logs.
Check List

[ ] New functionality includes testing
[ ] New functionality has been documented
[ X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Reading and rereading this code I'm not sure what was causing the triple logging which has been fixed with this PR, could you provide more details about what wasn't working before?

The bug is the incorrect usage of switch-case construction in Java:
private void logAtLevel(Logger logger, Level level, String msg) {
    switch(level.toString()) {
        case "TRACE": logger.trace(msg);
        case "DEBUG": logger.debug(msg);
        case "INFO": logger.info(msg);
        case "WARN": logger.warn(msg);
        case "ERROR": logger.error(msg);
    }
}

This code does not contain break/return keywords to stop switching so the message with INFO logging level will be logged three times:
logger.info(msg);
logger.warn(msg);
logger.error(msg);

@jchipmunk 🤣 Thank you for that gem, you have made my day.

Looks like CI got stuck when a new OpenSearch 2.2.0 build was being created, re-running the failed CI jobs

@peternied, thanks for reviewing the PR
Is it possible to backport the changes to the branch 1.3?

@jchipmunk I've created the backport #2026, we will continue the discussion over there.


Modification to breadcrumbs to fix #194

Fixed some breadcrumb issues

Fixed the Working groups on accessibility within the Government of Canada breadcrumbs


Empty or nearly empty wheel on Pypi make import pygeomag fails

When I install pygeomag with pip install pygeomag, it does install something. The issue is when I try to import pygeomag, it does not find the module. It seems to be related to wheel with nearly empty content.
Looking at https://pypi.org/project/pygeomag/#files, downloading the wheel and inspecting it contents, we see it does not contain any Python files. I suppose it's where the issue lies when importing.

@ThomasG77 well that's what happens when a file doesn't get committed. Sorry about that.
Pushed a new version 1.0.1. You can just run pip install --upgrade pygeomag and it should all work.
I tested and it worked, but would love a double check before I post the release.


When using the "Cycle Highway Tag" function, Rapid does not cycle 'back' to the original type

Description
When I select a highway feature and use the "Cycle Highway Tag" (Shift-C) function, Rapid will change the highway type to the next lower class each time you use the function. For example, with a highway=secondary selected, each Shift-C press will cycle through tertiary -> residential -> service -> track -> unclassified. However, after that, it will not cycle back to the original classification, which was secondary.
Since this is a Rapid-specific feature (at least I don't know of its existence in iD) I don't know exactly what the expected behavior is.
Version
2.00-alpha3
What browser are you seeing the problem on? What version are you running?
Firefox 107 Mac
Steps to reproduce

Select a highway=secondary
Press Shift-C repeatedly

The browser URL at the time you encountered the bug
https://mapwith.ai/rapid-v2-alpha3#background=Bing&datasets=fbRoads,msBuildings&id=w290431872&map=20.38/40.75190/-111.86570

When using this function on a sidewalk, you end up with invalid / nonsensical tag combinations.
Selecting a sidewalk and pressing Shift-C turns it into a highway=residential with footway=sidewalk which I am quite sure is not a valid tag combo.


iOS 13 apns-push-type should be "voip" for voip push

On iOS 13, VoIP pushes are getting rejected by APNs servers with the reason InvalidPushType.  AS mentioned here, we require to send "apns-push-type" : "voip" for VoIP pushes. But, it's not documented in the official docs.
I've tested it locally by sending a push to my device on iOS 13 and it is indeed true. Would need to add that in PushType enum as without that, I'm unable to use this lib.

I've created a PR for the same - https://github.com/relayrides/pushy/pull/720

Huh… it's certainly frustrating that this isn't documented. Let me ask around briefly and see what I can learn.
Thanks for reporting the issue, and thanks for the pull request.

Confirmed in testing as well that apns-push-type should be set to voip for VoIP pushes.

Let me ask around briefly and see what I can learn.

As mentioned in #720, I've learned that there are actually several new values for the apns-push-type header, and they should all be documented in the next couple of days. Let's this situation a couple more days to develop so we can get everything at the same time.

Looks like the docs have been updated. I'll augment #720 tomorrow.

I've opened #723 to cover the remaining apns-push-type values.

any workaround we have now before 0.13.10 release?


[Question] predefine multiple disk?

Is it possible to predefine multiple disk layout (i.e. having 5 nodes, 3 disk each.  Predefine a config in such a way that the disks show up automatically once longhorn is installed.)
I understand that there's the "Customized Default Setting", is that the way to do it or is there other config objects that I can use to prepopulate the disk/path?

@y2kenny We're working on it right now and it will be in v0.8.1 release. You can find the design at https://github.com/longhorn/longhorn/blob/master/enhancements/20200319-default-disks-and-node-configuration.md and the original issue at #1053

That's great!  Thanks!


Add Swarm secrets support to Ghost Blog

Inspired by this issue https://github.com/docker-library/ghost/issues/125, we need a PR that does this for the Ghost stack.

I’d be happy to do this for ya! Happy Hacktoberfest!

doooooo it! 👍

Nothing yet??? We need this feature!!


CORE-10050: remove TransientSoftWrappingKeyMap

I believe this needs a sibling corda-api PR removing configuration:  https://github.com/corda/corda-api/blob/018f117d6cb72b5857b97ce02988f8d687e2d795/data/config-schema/src/main/resources/net/corda/schema/configuration/cryptoLibrary/1.0/corda.cryptoLibrary.json#L287?

I believe this needs a sibling corda-api PR removing configuration: https://github.com/corda/corda-api/blob/018f117d6cb72b5857b97ce02988f8d687e2d795/data/config-schema/src/main/resources/net/corda/schema/configuration/cryptoLibrary/1.0/corda.cryptoLibrary.json#L287?

I've gone back to keeping the configuration the same, and created https://r3-cev.atlassian.net/browse/CORE-10389 to track config API cleanup. That way this PR is purely refactoring.

I also checked with @mnesbit directly about the concept of this PR, i.e. using a zero sized cache instead of eliminating it.


How to build geckoViewPlugin in android studio

When building via the rebuild option i get
Execution failed for task ':app:externalNativeBuildCleanDebug'.
> A problem occurred starting process 'command '/Users/ianphilips/Library/Android/sdk/cmake/3.6.4111459/bin/cmake''

so to build the .aar file i use gradlew assemble
after building it and renaming the 'app-release.aar' to the old name (is the necessary?) I get the following error;
Note: C:\Unity Projects\UnityOculusAndroidVRBrowser\UnityProject\Temp\gradleOut\unityLibrary\src\main\java\com\unity3d\player\UnityPlayerActivity.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':launcher:checkReleaseDuplicateClasses'.
> 1 exception was raised by workers:
  java.lang.RuntimeException: java.lang.RuntimeException: Duplicate class com.eyeflite.ian.geckoviewplugin.BuildConfig found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.BytesBuffer found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$1 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$10 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$11 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$12 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$13 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$14 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$15 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$16 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$17 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$18 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$2 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$3 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$4 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$5 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$6 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$7 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$8 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$9 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.GeckoViewPLugin$SessionTypes found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.OVRSurfaceGeckoView found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.OVRSurfaceGeckoView$1 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.OVRSurfaceGeckoView$2 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.OVRSurfaceGeckoView$3 found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.OVRSurfaceGeckoView$Display found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)
  Duplicate class com.eyeflite.ian.geckoviewplugin.UnityInterface found in modules classes.jar (:app-debug:) and classes.jar (:geckoview-armeabi-v7a-80.0.20200818235255:)

  Go to the documentation to learn how to Fix dependency resolution errors.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 6s
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8

UnityEngine.GUIUtility:ProcessEvent (int,intptr)

I've never seen that error before unfortunately, but your built library comes out as app-release? It should come out as app-debug.aar so that could be a clue.

yes that is build is made, what do I need to do with it. now I'm renaming it to geckoview-armeabi-v7a-80.0.20200818235255 in the folder ./UnityProject/Assets/Plugin/Android/

just leave the name as it is and replace the app-debug.aar in UnityOculusAndroidVRBrowser/UnityProject/Assets/Plugin/Android/ with your newly built .aar

closing due to inactivity - feel free to reopen


Support devcontainer.json in sub-folder (.devcontainer/**/devcontainer.json)

From devcontainers/ci#212
Does this CLI work with .devcontainer/**/devcontainer.json (where ** is a sub-folder) from the specs?
https://containers.dev/implementors/spec/#devcontainerjson

The CLI only picks up .devcontainer/devcontainer.json and .devcontainer.json automatically. For configs in subfolders you would have pass their path with --config <path> to the CLI.

Thanks for the reply.
So at this point, is it still possible to add the functionality to the CI ?
I don't want to use Dev Container CI directly, I want to build an image from a definition file in a sub dir .devcontainer/subdir/devcontainer.json on GitHub Actions (devcontainers/ci#212).

The CI action could add an option to specify the config file. I think we don't want the CLI to search the subfolders automatically as that might result in multiple config files.
@stuartleeks What do you think?

So is this a difference between the spec and CLI behaviour? According to the spec "It is valid that these files may exist in more than one location, so consider providing a mechanism for users to select one when appropriate."