[Typescript] "Footer" is not inferred from Column type

Describe the bug (required)
I'm using Typescript with react-table, I wanted to add footer to table. However, when I define columns data Column type couldn't infer Footer type.
Provide an example via Codesandbox! (required)
https://codesandbox.io/s/test-react-table-wwemm?file=/src/data.ts
You can see Footer is causing type error
Expected behavior (Recommended)
Column type should be able to infer Footer type
Screenshot

Additional context
Related discussion: https://github.com/tannerlinsley/react-table/discussions/2882 (unsolved)

+1 experiencing the same issue. If you have multiple columns you can set the footer on all column items except for one. For example:
// doesn't work with the same error as above
const columns = [
    {
       Header: 'header1',
       Footer: 'footer1',
       accessor: 'test'
    },
    {
       Header: 'header2',
       Footer: 'footer2',
       accessor: 'test2'
    },
    {
       Header: 'header3',
       Footer: 'footer3',
       accessor: 'test3'
    },
];

// works and resolves just fine by removing first Footer item
const columns = [
    {
       Header: 'header1',
       accessor: 'test'
    },
    {
       Header: 'header2',
       Footer: 'footer2',
       accessor: 'test2'
    },
    {
       Header: 'header3',
       Footer: 'footer3',
       accessor: 'test3'
    },
];

+1 experiencing the same issue. If you have multiple columns you can set the footer on all column items except for one. For example:
// doesn't work with the same error as above
const columns = [
    {
       Header: 'header1',
       Footer: 'footer1',
       accessor: 'test'
    },
    {
       Header: 'header2',
       Footer: 'footer2',
       accessor: 'test2'
    },
    {
       Header: 'header3',
       Footer: 'footer3',
       accessor: 'test3'
    },
];

// works and resolves just fine by removing first Footer item
const columns = [
    {
       Header: 'header1',
       accessor: 'test'
    },
    {
       Header: 'header2',
       Footer: 'footer2',
       accessor: 'test2'
    },
    {
       Header: 'header3',
       Footer: 'footer3',
       accessor: 'test3'
    },
];

Tengo el mismo problema.

I solved it by setting it like this:

focus is that do not modify @types/react-table.

Follow code is my react-table-config.d.ts (this code is base to URL)

import { UseTableColumnOptions as BasicUseTableColumnOptions } from 'react-table'

declare module 'react-table' {

  export type FooterProps<D extends object> = TableInstance<D>

  export interface UseTableColumnOptions<D extends object>
    extends BasicUseTableColumnOptions<D> {
    Footer?: Renderer<FooterProps<D>>
  }


Fix up the docs to make configuration match screenshot

The screenshot has blue background for numbers on non-current windows, and space between text and number on right. Update sample config to make sure it matches result in screenshot. Without @thm_blue it will default to grey.

Yeah the screenshot needs updating. The colors were changed to improve accessibility. Would you mind updating the screenshot?

I was updating the config to what I thought would generate the screenshot. You'd rather the screenshot be updated to match what was in the config without changes?

Yes

Ok, replaced screenshot, and removed the default peach/blue in config. I left the space after #W because that is necessary to make sure the text doesn't bump up against the right-hand numbers.

Thank you so much!!


x/mobile:  The network of built iOS framework did not follow iOS system proxy setting

What version of Go are you using (go version)?

$ go version
go version go1.16.4 darwin/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/miller/Library/Caches/go-build"
GOENV="/Users/miller/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/miller/go/pkg/mod"
GOOS="darwin"
GOPATH="/Users/miller/go"
GOPROXY="direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.16.4"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/miller/work/mobile_lib-up/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/yl/g7gxm3p11wx1jmf9db2jtlh80000gn/T/go-build3020972396=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

We use gomobile bind command to build iOS framework library, the library is just using net/http to do a simple http request to google or some website.
When we using Xcode to include the iOS framework we built and then build the iOS app, everything is working fine as usual.
But if we set system proxy in iOS setting or using other apps (e.g. Charles or other vpn/proxy apps) to set system proxy,
we found the IOS framework library is not following the system proxy setting, it goes the original network setting without proxy.
Which leads the issue that network cannot work correctly. For some case that the network only allowed internal proxy, for example in some company corporate network.
gomobile build command:

gomobile bind -ldflags -X 'gitlab.xxx/mobile_lib/libs.version=v0.2.29' -X 'gitlab.xxxx/mobile_lib/pkg/logger.osType=ios' -X 'gitlab.xxxx/mobile_lib/pkg/logger.version=v0.2.29'  -target=ios -v -o out/ios/anv gitlab.xxxx/mobile_lib/libs

gomobile version:

golang.org/x/mobile v0.0.0-20200329125638-4c31acba0007

What did you expect to see?
The network of built iOS framework should respect system proxy setting
What did you see instead?

cc @hyangah @eliasnaur


generated schema is not as Google say in the documentation

In the Google documentation (https://developers.google.com/search/docs/advanced/structured-data/product#guidelines)
they say the script on the page should look like this:
<script type="application/ld+json">
      {
        "@context": "https://schema.org/",
        "@type": "Product",
        "name": "Executive Anvil",
        "image": [
          "https://example.com/photos/1x1/photo.jpg",
          "https://example.com/photos/4x3/photo.jpg",
          "https://example.com/photos/16x9/photo.jpg"
         ],
        ...

But the schema generated by this package has escaped slashes like this:
<script type="application/ld+json">
      {
        "@context": "https:\/\/schema.org\/",
        "@type": "Product",
        "name": "Executive Anvil",
        "image": [
          "https:\/\/example.com\/photos\/1x1\/photo.jpg",
          "https:\/\/example.com\/photos\/4x3\/photo.jpg",
          "https:\/\/example.com\/photos\/16x9\/photo.jpg"
         ],
        ...

Why is that and shouldn't the script be generated as it is written by Google?

It's exactly the same, besides that this package isn't a Google wrapper but an object oriented package following the official specs by schema.org

I never said this is a Google wrapper. And by the way in schema.org how it looks is:
    <script type="application/ld+json">
    {
        "@context": "https://schema.org",
        "@type": "ItemList",
        "url": "http://multivarki.ru?filters%5Bprice%5D%5BLTE%5D=39600",
        "numberOfItems": "315",
        "itemListElement": [
            {
                "@type": "Product",
                "image": "http://example.com/c9/f1/a5fe6642-18d0-47ad-b038-6fca20f1c923.jpeg",
                "url": "http://example/brand_502/",
                "name": "Brand 502",
                "offers": {
                    "@type": "Offer",
                    "price": "4399 p."
                }
            },
            {
                "@type": "Product",
                "name": "..."
            }
        ]
    }
    </script>

No backslashes whatsoever.
So why on Earth they are added? What is the purpose?


Cargo computers and circuit boards are a mess

Description

Deconstructing a cargo shuttle computer (the one that calls the shuttle) gives you a "supply ordering computer board."
Constructing a computer with a "supply ordering computer board" gives you the cargo request computer, same as when constructing with a "supply request computer board."
Deconstructing a cargo shuttle console (the one that you pilot the shuttle with) doesn't give you any computer board.

Proposed fix:

Rename "supply ordering computer board" to something like "cargo shuttle computer board."
Make cargo shuttle computer construction take the "cargo shuttle computer board." (Right now it and the request computer takes the same board.)
Add a new "cargo shuttle console board" for the cargo shuttle console, and put one in the QM locker.
Maybe change the IDs also to match, but this could require mapping changes.

Someone can assign this to me, I've already started working on this.


Bayer format description

Hi! I've been trying to use the encoder with a bayer image. Other than the very vague description of "Raw Bayer 12-bits per component, packed line of 8-bit then line a 4-bit reminder" (CFHDTypes.h:145) I can't figure out what the format is.
Is it two pixels combined as two bytes of MSB then one byte containing the 4 bits LSB for the two?
Or is it MSB for all the pixels than LSB for all the pixels?
I've even tried one byte of MSB then one byte with the remaining 4 bits.
I've spent hours trying different formats and I'm always getting a cropped image with different parts overplayed in colors. Google doesn't turn up anything since this is a not a common thing.

I've made a few examples. I'm using ffmpeg for putting it into a mov, and davinci resolve to view it.
This is what it's supposed to look like. This isn't demosaiced. It's a lossless jpeg, you can see the bayer pixels when you zoom in.

When using interleaved 12 bit it looks like this:

When separating the 4 bits to the end of the line it looks like this:

When using two bytes per pixel it looks like this:

Look at ConvertBYR5ToFrame16s() in frame.c:5473. All the MSBs, then all the LSBs.
outB = (uint8_t *)uncompressed_chunk;
outB += srcrow * srcwidth * 4 * 3/2; //12-bit
outN = outB;
outN += srcwidth * 4;
where outB is the bytes, and outN the nibbles.

Now I'm confused as to how Cineform refers to width. Bayer images don't have color channels. Why is the width multiplied by 4 as if there were 4 channels? Should I reduce my resolution by 4 when calling CFHD_PrepareEncoderPool? Am I supposed to make a single pixel from RGGB?

Ultimately bayer is encoded as four difference channels, something like G1+G2, R-G', B-G' and G1-G2, this extracts redundancy and improves compression.  I don't remember the resolution setup for BYR4/5 pixels, and unfortunately that is not in the sample code. However there are only two options to try, full native resolution of the monochrone/sensor resolution, or half that horizontally and vertically (the red or blue channel resolution.)
Re: "Am I supposed to make a single pixel from RGGB?" I'm not sure what you are asking here.

When using half resolution the assert fails at IsFrameTransformable in encoder.c:1601.  Same with forth, and only half the width. The resolution for the monochrome is 4048x3044. All my previous example images were in this this resolution. This is also set for the mov headers.

For writing CineForm RAW files I have been using CFHD_PIXEL_FORMAT_BYR4 for many years now. This is basically "monochrome" 16bit little-endian integer. Just treat your Bayer pattern image as a single monochrome file and tell the encoder the real size of it. And make sure your image width is an integer multiple of 16 (which seems to the case looking at your numbers).
As for that 12bit format, it wouldn't surprise me (looking at your screenshots) if that is a "planar" format, in that it first stores a plane of the higher 8bits and then a plane of the (packed) leftover lower 4 bits.

For writing CineForm RAW files I have been using CFHD_PIXEL_FORMAT_BYR4 for many years now. This is basically "monochrome" 16bit little-endian integer. Just treat your Bayer pattern image as a single monochrome file and tell the encoder the real size of it. And make sure your image width is an integer multiple of 16 (which seems to the case looking at your numbers).
As for that 12bit format, it wouldn't surprise me (looking at your screenshots) if that is a "planar" format, in that it first stores a plane of the higher 8bits and then a plane of the (packed) leftover lower 4 bits.

The white balance goes as a float[4] into the metadata using the TAG_WHITE_BALANCE tag. Those four values represent R G1 G2 B scales. However, internally the SDK then only uses the value foir G1 and ignores G2.
The scales can also be used to adjust the overall white level (in case your white level is not full-scale) by just rolling that scaling into each of the white-balance scales.
Color matrix is a float[3][4] set with TAG_COLOR_MATRIX. This one is a 3x3 matrix with an extra column specifying a black-level offset. Order of calculations inside the SDK are: take out source transfer curve -> apply matrix (with white balance rolled in) -> add black level (offsets also multiplied by black-level, it seems) -> put transfer curve back on.

One more thing while we're talking about Bayer RAW... there is a bug in the code that makes debayer crash for files that are more than 8K wide. In Codec/DemoasicFrames.cpp:4661 there is a fix labeled "could not handle 4.5K RAW". But the fix just moved the problem to > 8K.
A simple workaround might be to replace that fixed-size buffer[] with a dynamically allocated one using 'alloca(bayer_pitch * sizeof(unsigned short));', but I'm aware of the fact that even this might fail for some ridiculously large frames that might exceed what alloca() can do.


Resolve Scaling Issues

Initial run of analysis took 12+ hrs (stopped at ~12). This could be due to:

amount of traffic (~26M lines)
ddb scaling sgr group index hit heavy throttle ~50 rps (peak 64)
glue DPUs (set to 1)

reduced job size down to 10k flow log lines. Run time with no scaling 42m 9s

scaled ddb tables 7d24ba4 reduced run time to 24m 51s

Run time down to 7m25s with changes in fe4a889.


Fully sanitize HTML ID avoiding CSS selector characters

It's not just the slash character that causes problems, it's really any character that has special meaning in a CSS selector.
Better to handle all characters properly. This updated PR uses a data attribute instead and removes the need to make a key from the ID.
In my case, I noticed it with in.tftpd (from the os-tftp plugin) being repeated once more every time the widget would refreshed. This is because the dot ends the ID selector and starts a class selector, causing it to create a new row (and making me think it was creating more and more processes that would crash the system).

This is a bit of an uphill battle. We probably end up with ambiguities more and more and perhaps rather want to strip all of those instead by only leaving a-z0-9_ in place?

Or perhaps a simple hash(md5)?

A hash could work, for just hex excluding. Another option would be to use a data attribute and an attribute selector.

Data attribute sounds like a plan 😊

Alright, I rewrote the PR to use a data attribute instead. If builds an index first and uses to find existing rows.

Thanks, I'll test and merge tomorrow 👍

Merged, very nice, thanks!


Multi Endpoint's HTTPMethod should be optional (POST or GET)

Hi,
I want to use Multi Endpoint to save requests. I've noticed that when I use with GET method then the X-RateLimit-Limit in the response header is 5000, however, when I use with POST method then its value is 500. Could you support it? Or would you accept a PR that supports it?

Hi, I'm sorry this response header sent by the Foursquare server. It has nothing to do with the library.

Hi, I mean that in Multi.swift file in your library we can use "GET" as HTTPMethod at line 43. Could you, please look into them?


pin fs, etc

The package declares specific version dependencies for fs and so on: https://github.com/althonos/fs.sshfs/blob/0ce4e1eb009dcc1833c02ac6aebfe0799ea755de/setup.cfg#L35-L39. But it does it with a weird syntax I can't find in the documentation (though it's not easy to search for) fs ~=2.0.7. I don't know what that ~ does, so I'm not sure the right way to pin it in the conda-forge package either. :)

Ah, the other places I found in the pip/setuptools documentation totally did not link there. :)

I think we don't have the ~ syntax, added for now >= and discuss this with the author.

I think the right thing is eg ~=1.0.7 should be >=1.0.7,<1.1.

The actual dependencies are (in conda-friendly format):
run:
- six >=1.10.0, <2
- paramiko >= 2, <3
- fs >= 2.0.7, <2.1
- configparser >= 3.2, < 4 [py2k]

The weird thing about fs < 2.1 is because fs 2 is a new codebase, so Will increases the bugfix specifier for any change that is not backwards compatible, and the minor release specifier for any change that is backwards incompatible, never modifying the major release specifier. So fs==2.1 may break compatibility.

Thanks @althonos!
@ReimarBauer, the conda-forge preferred formatting of this would be:
  run:
    - six >=1.10.0,<2
    - paramiko >=2,<3
    - fs >= 2.0.7,<2.1
    - configparser  # [py2k]

BTW I think I saw a PR to conda some time ago that added the ~= syntax. Not sure if it was on the conda-skeleton parser or something general. Maybe @msarahan knows better. If that exist we can start using it, even though I really don't like it :stuck_out_tongue_winking_eye:
aside: I don't like that syntax b/c my biased interpretation is to read it as not this version number.

ok, i fix it. my mistake


Feature Request: box plots

Missing functionality
as a frequent user of profiling, I find myself often needing box plots when the data is skewed
Proposed feature
box plots of skewed variables
Alternatives considered
data distribution plot; however, when the data is severely skewed it is hard to tell what is happening with the outliers
Additional context
No response

Hi @suzannejb,
thank you for your feature request! We have added it to our roadmap.


small fixes

Coverage remained the same at 93.279% when pulling 08ea0f285d143550960b5f45d063358cddd0e81b on 0xflotus:patch-1 into d10739021f85125abb04112d721d17e600746004 on iarna:master.


Update code styling rules

Is your feature request related to a problem? Please describe.
Currently the code styling rules are loose and subjective. It would be better to clearly define them all and enforce them properly. With strictly defined styling rules it would be easier for developers to write code correctly and the code would become more consistent across the whole repository. Additionally, it would be beneficial to review our current ESLint and Prettier rules e.g. import order, line gaps etc.
Describe the Solution you'd like
A few major tasks:

Update STYLEGUIDE.md (and CONTRIBUTING.md if needed).
Review ESLint and Prettier rules.
Refactor existing code with the new rules.

TBA: smaller tasks for each category about specific styling rules
Describe alternatives you've considered
No response
Additional context
No response

Please update package.json fields and README.md as well.


[CHANGE ME] Re-generated to pick up changes in the API or client library generator.

This PR was generated using Autosynth. :rainbow:
Synth log will be available here:
https://source.cloud.google.com/results/invocations/58859d5a-5b46-46ff-9dbb-f136a9f5d973/targets
PiperOrigin-RevId: 310426317
Source-Link: https://github.com/googleapis/googleapis/commit/fb8f62b6784f43faf4b64179c57ce4b4931b1a00
PiperOrigin-RevId: 309824146
Source-Link: https://github.com/googleapis/googleapis/commit/e0f9d9e1f9de890db765be46f45ca8490723e3eb

@igorbernstein2 the retry settings have been fixed, this should be good to go. PTAL


allow copy&paste of sample code

multi-line code samples should not be prefixed with stuff that makes copy&paste hard!

This change is

signed CLA

Looks good to me but the # indicated that it should be run as root.  We should communicate that somehow if you remove it from the CLI samples.

Ah, I didn't realize that. I found that to be obvious :)
But I guess a red "run as root' at the beginning of the tutorial should be enough....

Actually there is already this sentence in there:

SSH into the machine and become root if you are not already (for example, run sudo su -).

Do we need more?

Meh -- good enough.  :)
/lgtm

@devin-donnelly -- what do I need to do to get this merged?  The process here isn't clear.


 I used Chrome 101 on Ubuntu 20.04.4
Is it slow only for me?

This is a virtual machine running on a web browser... this feat on it's own is pretty tremendous. Of course it's slow.

I tried it on i7-3770, 12GB of RAM. I did not know WASM is very very slow and I thought WASM is really fast so can use on VM.

This is a virtual machine running on a web browser... this feat on it's own is pretty tremendous. Of course it's slow.

It's not tremendous. There's also v86, which actually works.


Bot that answers in your language

Introduction
I have not found documentation about it:
If you need a BOT that reply in the language of the users you can use:
https://github.com/yagop/node-telegram-bot-api,  with
https://github.com/mashpie/i18n-node

Question

But Telegram for some user return language code it and fot other it-IT.
Example:

if I use Telegram mobile app i get: "it"
if I use Telegram webapp (with chrome) i get: "it-IT"

How can i fix it?
My Code:

process.env.NTBA_FIX_319 = 1;   // fix cancellation of promises https://github.com/yagop/node-telegram-bot-api/issues/319. module.js:652:30

const TelegramBot = require('node-telegram-bot-api');
const token = 'XXXXXXXXX';    // Token from @BotFather
const bot = new TelegramBot(token, {polling: true});    // Create a bot that uses 'polling' to fetch new updates

const botName = "yourBOTName"
const botVer = "1.1.0"

var i18n = require('./node_modules/i18n'),
	app;

i18n.configure({
  locales: ['en-EN', 'it-IT'],
  directory: __dirname + '/locales',
  autoReload: true,
  fallbacks:{'nl-NL': 'en-EN'},
  defaultLocale: 'en-EN'
});

// Test Language
bot.onText(/\/test_i18n/, (msg) => {

	i18n.setLocale(msg.from.language_code);

	var greeting = i18n.__('Hello {{name}}, how are you today?', { name: msg.from.first_name });

	bot.sendMessage(msg.chat.id, greeting, {
			parse_mode: "HTML"
		}
	);
});

// Start Message i18n
bot.onText(/\/start_i18n/, (msg) => {

	i18n.setLocale(msg.from.language_code);

	var msg_start_1 = i18n.__("Welcome You {{name}}, \nI'm Your BOT and I'm here to help you to find ...", { name: msg.from.first_name });
	var msg_start_2 = i18n.__("\n\nPlease type: \nThe name of ..., or\n/list  -  To know the list of... \n/help -  To have support\n/site  -  To visit our website");

	bot.sendMessage(msg.chat.id, msg_start_1 + msg_start_2, {
			parse_mode: "HTML"
		}
	);
});

If you have a problem only with it and it-IT , you can use simple if/else statement
var lang;

if(msg.from.language_code.length == 2) {
    lang = msg.from.language_code + '-' + msg.from.language_code.toUpperCase();
} else {
    lang = msg.from.language_code;
}

i18n.setLocale(lang);

This way lang will be always it-IT when you will receive it or it-IT

Thanks @jejopl,
I was trying a reverse solution :)
	var str = msg.from.language_code.toLowerCase();
	var code = str.substring(0, 2);
	i18n.setLocale(code);

this always returns it

No problem. Also, you should check at the beginning if msg.from.language_code is not undefined.

Consider that with custom client not always language_code is a valid or exists.

@jejopl, @sidelux thank you for the tip!
i18n in configuration allows you to set a default language, so in case of an empty field or undefined it should show the language set.
But it is better to avoid errors in the logic and insert a check on the presence nad of the value of msg.from.language_code:
New code:
i18n.configure({
	locales: ['en', 'it'],
	directory: __dirname + '/locales',
	autoReload: true,
	fallbacks:{'nl': 'en'},
	defaultLocale: 'en'
});

// Test Language
bot.onText(/\/test_i18n/, (msg) => {

	if (msg.from.hasOwnProperty('language_code')) && (msg.from.language_code(!= 'undefined')) {
		var str = msg.from.language_code.toLowerCase();
		var code = str.substring(0, 2);
		i18n.setLocale(code);
	}

	var greeting = i18n.__('Hello {{name}}, how are you today?', { name: msg.from.first_name });

	bot.sendMessage(msg.chat.id, greeting, {
			parse_mode: "HTML"
		}
	);
});

Question seems to have been resolved, closing it for now.

hello. How does telegram determine language_code ?
i set spanish language (sp) on windows version telegram app, but language_code = 'en'.
how it work?

Do language codes exist for all clients? Noticing from 520k users that only about 52k have codes set in my tracking. Anyone else seeing the same?

Yes, is not in all clients, and in some cases it's "en" also I language is different.
I think the best method should be that the user select his language, not auto detecting it.

Yes, is not in all clients, and in some cases it's "en" also I language is different. I think the best method should be that the user select his language, not auto detecting it.

Bot autodetects language correctly only when you use session variable (scene or wizard). Otherwise it stores this variable from other users some time and thats why you discover wrong language.


Get all failing integration tests to pass.

Pull Request Test Coverage Report for Build 2017

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

Totals

Change from base Build 2011:
0.0%

Covered Lines:
2018

Relevant Lines:
2612

💛  - Coveralls


Update pj logo

:arrow_down:

We should remove this added left margin as visually the space is too large with the new logo https://github.com/Qwant/erdapfel/blob/master/src/scss/includes/panels/poi_panel.scss#L52-L54


Add my blog post

Changes

What does this change?
Be short and concise. Bullet points can help!
Before/after screenshots can help as well.

Docs

Blog posts for 10/10/2024 (week4)


brighten janaki mandir photo on the homepage and make the menu red/blue

the photo is too dark at the moment -- makes everything look really sad :(
Red: #E00015
Blue: #00ADEF

I think the menu color is OK as white.

I think it' good. What do you say ravi?

thanks @studenton and @ShashiAdhikari


Added function for deepgramTranscribeAudio() in Swift.

Implemented deepgramTranscribeAudio() in swift as mentioned in issue  https://github.com/appwrite/appwrite/issues/4492
Closes https://github.com/appwrite/appwrite/issues/4492
Success Response

Response for Wrong API Key

Response for Wrong URL

Hey @stnguyen90 ,
Could you please review this PR


default link behaviour target=blank

Can I add this somewhere in the options? I couldn't find it at the marked documentation.
Or do I have to add it manually on:parsed?

The way to do this would be to override the Link renderer. You can take the default one as a starting point and add your logic there. (E.g. check if the href as a protocol to see if its an external link or not. Add icons for external links. Etc.) When you have your renderer, you can pass it to <SvelteMarkdown> on its renderers prop like this:
<script>
  import Link from './CustomLink.svelte';

  export let source;

  const renderers = {
    link: Link,
  }
</script>

<SvelteMarkdown {source} {renderers} />

The parsed event is only to provide you a way to access to your the content after it's been parsed. For example, to add a table of contents.
I'm closing this, since it's not an issue per se! But feel free to ask more questions.

This helped me a lot, thank you so much!


This typedef is deprecated in favor

I know this is not a important thing, and I don't even use it anymore...
But I got these errors
/usr/local/lib/haxe/lib/hx3compat/1,0,3/std/js/jquery/JQuery.hx:226: characters 28-56 : Warning : This typedef is deprecated in favor of js.lib.Thenable<js.Thenable.T> /usr/local/lib/haxe/lib/hx3compat/1,0,3/std/js/jquery/JQuery.hx:230: characters 54-62 : Warning : This typedef is deprecated in favor of js.lib.Error /usr/local/lib/haxe/lib/hx3compat/1,0,3/std/js/jquery/JQuery.hx:271: characters 143-171 : Warning : This typedef is deprecated in favor of js.lib.Thenable<js.Thenable.T>

ok


Not able to configure home assistant integration

What version of Music Assistant has the issue?
2.2.3
What version of the Home Assistant Integration have you got installed?
2024.11.4
Have you tried everything in the Troubleshooting FAQ and reviewed the Open and Closed Issues and Discussions to resolve this yourself?

[X] Yes

The problem
After updating to the latest version (2024.11.4) home assistant shows configuration error
Music Assistant client not ready

in the device & services panel.
Already tried to remove the integration and configure from scratch without success.

Music assistant server seems to be detected correctly but the configuration fails.
Home assistant log shows this message, don't know if it is related to the issue
2024-11-15 17:00:55.077 ERROR (MainThread) [custom_components.mass] Unexpected exception: Field "lookup_key" of type str is missing in ProviderInstance instance
Traceback (most recent call last):
  File "/config/custom_components/mass/__init__.py", line 151, in _client_listen
    await mass.start_listening(init_ready)
  File "/usr/local/lib/python3.12/site-packages/music_assistant_client/client.py", line 307, in start_listening
    self._handle_incoming_message(msg)
  File "/usr/local/lib/python3.12/site-packages/music_assistant_client/client.py", line 347, in _handle_incoming_message
    self._handle_event(msg)
  File "/usr/local/lib/python3.12/site-packages/music_assistant_client/client.py", line 365, in _handle_event
    self._providers = {x["instance_id"]: ProviderInstance.from_dict(x) for x in event.data}
                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<string>", line 23, in __mashumaro_from_dict__
mashumaro.exceptions.MissingField: Field "lookup_key" of type str is missing in ProviderInstance instance

How to reproduce

Update to version 2024.11.4 of the integration
Check the device & services panel in home assistant

Music Providers
None
Player Providers
Chromecast
Snapcast
Full log output
No response
Additional information
No error reported on music assistant server.
What version of Home Assistant Core are your running
2024.11.1
What type of installation are you running?
Home Assistant OS
On what type of hardware are you running?
Generic x86-64 (e.g. Intel NUC)

I have the same problem. I tried different versions of integration, the minimum working version 2024.10.0, the versions above this no longer work, constant initialization.
Update from 2024.10.0 to higher versions also does not help. So far I am sitting on 2024.10.0 and not installing new updates

@jozefKruszynski

I have the same issue with integration version 2024.11.4.
Music assistant version - 2.2.8

I was about to answer that the only way this error could happen is if you are running an old version of the server.
If you update to 2.3.x the issue should go away.

I was about to answer that the only way this error could happen is if you are running an old version of the server. If you update to 2.3.x the issue should go away.

I installed the music assistant for the first time 5 days ago, on a test server with HA, where it had not been installed before, so the 2.3.2 version was initially installed. I could not understand why the integration was not working, maybe I was installing it incorrectly or the addon was not installed correctly, until I started to go through different versions of the integration

Updating to the latest version (2.3.3) solves the issue


Rebase onto master

Let's get your PR https://github.com/helm/helm/pull/11273 merged into the upstream repo!
This rebase onto master is needed.

Hi,
thanks for bringing this to my attention. I rebased my branch myself, since accepting this PR would result in losing my commit signatures, showing a "Unverified" status.
Hope this will be merged into Helm, but since there was no response in almost over two years, I suppose the chances are not too good.


reIntroduceTrapdoorUpdateSkipping no longer works in version 1.20.4

Describe the bug
The rule reIntroduceTrapdoorUpdateSkipping does not work in version 1.20.4 of Minecraft. This is due to the trapdoor not being able to reach the state of suppression, due to redstone dust being broken instantly when placed on the trapdoor.
To Reproduce
Steps to reproduce the behavior:

Enable reIntroduceTrapdoorUpdateSkipping
Attempt to build update skipper
Redstone is unable to be placed

Expected behavior
The redstone dust remains on the trapdoor, priming the skipper.
Minecraft Version:

v1.20.4
Carpet-Fixes Version:
v1.17.0
Carpet Version:
v1.4.128

Additional context
The test was conducted on both a single player and multiplayer world.

This seems to be due to the fact that blocks that require support now fall off trapdoors once opened. I'm unsure of how this can be fixed though.

It has been fixed by #171

Hello, you say it's fixed, but it still doesn't work for me, what should I do to make it work? I've seen that it's added in the code but it's not in the downloadable .jar file. Thanks for the help in advance.

It has been fixed by #171

Hello, you say it's fixed, but it still doesn't work for me, what should I do to make it work? I've seen that it's added in the code but it's not in the downloadable .jar file. Thanks for the help in advance.

You can use the dustTrapdoorReintroduced rule for tis-carpet
https://carpet.tis.world/docs/rules#dusttrapdoorreintroduced
https://carpet.tis.world/docs/rules#instantblockupdaterreintroduced
https://modrinth.com/mod/carpet-tis-addition


Quick Settings Menu

Summary
What is the feature all about? Is it a game, a utility, an enhancement, or something else?
A settings menu that can be easily called up in the middle of a mode by, for example, holding Start.
This would be a smaller menu than the main menu, maybe even including big icons, that allows the user to quickly change global settings, mainly:

BGM Mute
SFX Mute
LED Brightness
Screen Brightness
"Panels Mode" - A quick setting to fully mute and set the LED brightness very low or off

Assuming there's enough room, screensaver and mic gain could also go there.
Technical Spec
How will this be implemented?
What peripherals will be used, and how?
This could be implemented in at least a couple ways:
A: Completely transparently to the swadge mode:
Similar to how the "hold select to exit" feature works, the swadge main loop itself would detect the menu being activated. It would work like this:

The user holds START, or does something else to activate the quick menu
The main loop sets up the quick settings menu
The quick settings menu saves the framebuffer into SPIRAM
The main loop sets a flag indicating the quick settings menu is active
When handling input events, the main loops now sends them to the quick menu instead of the swadge mode
When drawing the screen, main loop now calls the quick menu's main loop callback instead of the swadge mode's
The quick menu's main loop callback would draw a full-screen settings menu, over top of a dimmed version of the saved framebuffer, sort of like a phone's notification drawer or something
When the user exits the quick menu, the flag is cleared
The quick settings menu draws the framebuffer back to the screen from SPIRAM
The original mode's callbacks are used again instead of the quick menu

Pros:

Zero effort to add to any swadge mode
100% consistent across every mode
Completely removes need for mode developers to think about global settings or dedicate precious buttons to muting/LED brightness.
If expanded slightly, this system could be reused to add other "enhancements" to swadge modes without needing to code for it specifically in the swadge mode. An automatic screensaver or background light dances would be another good option for this sort of implementation.

Cons:

A bit harder to implement
Might be hard to avoid time jumps affecting the swadge mode still
Maybe a bit less flexible
Allowing modes to add their own options to the menu might be a bit more involved

Cooperatively with the mode
This would work as an extension the swadge mode would have to actively support, just like the current menus

The mode detects that the user wants to open the quick settings menu, however it decides
The mode sets a flag to say it's on the quick settings menu
When the mode's main loop is called, it checks that flag and calls the quick settings menu main loop callback instead
When the mode receives input, it checks the flag and calls the quick settings menu input function instead
When the user exits the quick settings menu, the mode clears the flag and resumes as normal.

Pros:

Less complicated to implement
Would work just like existing menus
Would be pretty easy for each mode to add a couple settings of its own
Maybe adding to each mode individually will decrease the likelihood of the transparent implementation causing bugs with modes that do weird stuff?

Cons:

Adds a bit more complexity to every swadge mode that uses it
Would not necessarily be consistent across modes

UI
What are the display screens & menus (if applicable)?
What user inputs are there for each screen?
Mockups
Paste any mockups of screens or anything else here.
How to Test
How can we verify the feature is working?
Try it once on each screen in each mode and make sure it works as expected.

I like the "Completely transparently to the swadge mode" implementation a lot more. Seems like you'd just have to hot swap cSwadgeMode. As long as you don't call cSwadgeMode->fnMainLoop() with some insane value when the menu closes (and the mode isn't checking system ticks) it should be oblivious to the pause.
Also note that there already is a framebuffer, so as long as you don't do a full screen clear, you can draw over it as you please. Just leave a margin so the mode can 'peek' out from under the settings. I think it's reasonable to expect each mode to redraw the screen each frame.


Fix 3D IBM Infinite CFL Number on GPUs

Description
Fixes 3D IBM infinite CFL number when running on GPUs. These modifications were suggested by @haochey and @anandrdbz via slack
Type of change
Please delete options that are not relevant.

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

Scope

[x] This PR comprises a set of related changes with a common goal

How Has This Been Tested?

[x] Tested by running the 3D_ibm example on two A100 GPUs

Test Configuration:

What computers and compilers did you use to test this:

The test was run using Nvidia A100 GPUs on HiPerGator at UF
python/3.8, nvhpc/24.5, openmpi/4.1.6, cmake/3.26.4
Checklist

[x] I ran ./mfc.sh format before committing my code
[x] This PR does not introduce any repeated code (it follows the [DRY])
[x] I cannot think of a way to condense this code and reduce any introduced additional line count

If your code changes any code source files (anything in src/simulation)
To make sure the code is performing as expected on GPU devices, I have:

[x] Checked that the code compiles using NVHPC compilers

I'm confused by the removal of these:
        if (ib .and. t_step == 1) then
            if (qbmm .and. .not. polytropic) then
                call s_ibm_correct_state(q_cons_ts(1)%vf, q_prim_vf, pb_ts(1)%sf, mv_ts(1)%sf)
            else
                call s_ibm_correct_state(q_cons_ts(1)%vf, q_prim_vf)
            end if
        end if

If you remove all of these then the whole subroutine s_ibm_correct_state can be removed because these are the only places it gets called. What exactly is the purpose of this routine (or removing it?) @anandrdbz @Sam-Briney

@sbryngelson I think it gets called in a few other places as well. For example: https://github.com/MFlowCode/MFC/blob/78fd0c51735f1c514d6b804531278b6dd3a3ef8f/src/simulation/m_time_steppers.fpp#L690
I believe it was getting called twice instead of just once at the first time step.

Ah I see, you're correct @Sam-Briney. Does this fix the issue with the visualization inside the IBM being incorrect on >1 GPU?

@sbryngelson It does not fix the visualization issue. I thought it might be better to make a more focused PR to make this functionality available in the short term

Makes sense. Merging.


Use real mainnet parameters

k 290 slots
alpha 0.65
f 0.75
slots_per_window 77
slots_per_sub_window 7
sub_windows_per_window 11
No. of shifts in a window 11
Epoch duration R 7140 slots
Delta 0

After chatting with Evan, about whether we want to optimize for testing epoch transitions or network load, felt that network load is the right area to focus for 4.1.
So current proposal is
4.1 with real consensus parameters (k=290, epoch length of 14.86 days), engaging users for 1 full epoch
Adversarial is also with real parameters
Community QA net can adjust depending on what we need to test for for now is small k


Feedback on Windows Machine | Configure the SAN policy as Online All

Hello team,
There appears to be missing/inaccurate information on this page regarding setting the "SAN Policy = Online All." On the page it claims that it ensures that Windows volumes in Azure VM use the same drive letter assignment as the on-premises VM. I've researched this and discussed with my VM POD TA - we question this statement. Is this documented somewhere or can it be modified to avoid confusion?
Referring to the below snippet from SAN reference document it does not mention keeping drive letters the same.
onlineAll. Specifies that all newly discovered disks will be brought online and made read/write. IMPORTANT: Specifying onlineAll on a server that shares disks could lead to data corruption. Therefore, you should not set this policy if disks are shared among servers unless the server is part of a cluster
Reference: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/san

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

ID: 1fd6730c-cbee-156b-a606-767a18a590b8
Version Independent ID: 698c2b92-470f-d885-a095-975880d90bc7
Content: Prepare machines for migration with Azure Migrate - Azure Migrate
Content Source: articles/migrate/prepare-for-migration.md
Service: azure-migrate
GitHub Login: @anvar-ms
Microsoft Alias: anvar

@jelew Thanks a lot for bringing this to our notice and sharing your feedback, I have assigned the issue to our document author to further review the feedback and update the document accordingly.

As advised by my manager @jyothisuri, closing the issues that are older than a year.
#please-close


Incorrect FIRST_CLOSE_AT on  intercom__conversation_metrics

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the issue
Please refer to ticket #125497 as it was the first reported issue we found with Fivetran's Intercom packages. After months of troubleshooting we finally found the issue with the package and Fivetran fixed.
From Intercom data we can clearly see that time of first close for the conversation with ID 38756 was 19:23 UTC but Fivetran's package is showing the next day at 22:08 UTC (the last close instead of the first). Could we please fix.

Relevant error log or model output
No response
Expected behavior
The expected behavior is to grab the first timestamp the conversations was closed

dbt Project configurations
Intercom
intercom_database: fivetran
intercom_schema: intercom
intercom__using_team: False
intercom__using_company_tags: False
Package versions
packages:
# dbt_date, dbt_expectations, codegen can all be upgraded
# but are blocked by github which has a dependency on
# dbt_utils [">=0.8.0", "<0.9.0"].

package: fivetran/github
version: [">=0.7.0", "<0.8.0"]
package: dbt-labs/metrics
version: [">=1.3.0", "<1.4.0"]
package: fivetran/app_reporting
version: [">=0.2.0", "<0.3.0"]
package: fivetran/intercom
version: [">=0.6.0", "<0.7.0"]
package: fivetran/iterable
version: [">=0.6.0", "<0.7.0"]

What database are you using dbt with?
snowflake
dbt Version

Additional Context
No response
Are you willing to open a PR to help address this issue?

[ ] Yes.
[ ] Yes, but I will need assistance and will schedule time during our office hours for guidance
[X] No.

Hi @alvarosiman thanks so much for opening this issue and raising the incorrect first close to our team.
When looking at our code to calculate first_close_at I see that we are grabbing the first created_at field for the filtered results in the cte where part_type = 'close' and author_type = 'admin'. Are you able to confirm if the close entry you are highlighting was done by an admin?
https://github.com/fivetran/dbt_intercom/blob/b31ee32fd908a519e96243c1c3c6cc1291c031bb/models/intermediate/int_intercom__conversation_part_events.sql#L12-L16
If it was not closed by an admin I would be curious to get your thoughts if that should still be counted as a first close time?

Hi Joe, thanks for your reply!
I see, that's what I thought was happening. Based on how Fivetran packages treat Intercom data it would make sense to have a first_admin_close_at similar to the first_admin_response_at and last_admin_response_at
Intercom has many new functionalities, including very useful bots that can close conversations if an admin has responded and the end customer has been inactive after x amount of minutes.
This is actually the case for most of our conversations. The user starts it, the admin responds and provides a solution or asks them a follow up question, but the end user doesn't respond again. Since having the admin close after responding would not make sense if the conversation isn't clearly finished, Intercom's bot asks the user if they are still there and if they are not it closes the conversation telling them they can re-open it if they want to continue.
So in general it would be great to have a first_admin_close_at and a first_close_at regardless of if it was an admin

Thanks for the quick reply!
I was not aware of the bots Intercom may deploy to help automate these types of conversation parts (makes sense to me!). I would also agree with you that expanding the model to have two different versions of close_at can help users who leverage bots in their workflows. Would it be difficult on your end to manage these two fields when analyzing the data?
If not, then I feel this is an appropriate update to the package and can fold this into our upcoming sprint.

Our next sprint begins Wednesday of next week. As this is likely a relatively small update we should be able to turn this around in the first half of the sprint.
Yup! Once the update is applied you will be able to install the newest version of the package to capture the changes. As we will likely be adding a new field and changing the definition of the first_close_at field, I would be most comfortable with this being a breaking change. So the next version will be v0.7.0.
Additionally, we will share a WIP branch here before releasing in case you wanted to validate on your end that changes look good before making the official release.

Thanks Joe! When do you think we will we be able to validate on our side? and if it's taken on the first half of the sprint would it be released by the end of this week or the next?

Hi @alvarosiman I think conservatively we should have a working branch over to you to test by the end of this week. Realistically, this will be released early next week if all goes well during validation.

Great, thanks for the update!

Hi @alvarosiman I wanted to post back that we currently have a working version of the package with the changes discussed earlier in this thread. If you have a moment, it would be great if you would be able to validate the changes on your end and confirm they make sense and are accurate.
You can test the changes by replacing your existing package dependency for intercom within your packages.yml with the following dependency:
packages:
  - git: https://github.com/fivetran/dbt_intercom.git
    revision: feature/close-at-updates
    warn-unpinned: false

You can see a full view of the updates applied in this branch by inspecting the notes and files changed within PR #41
Let me know if you have any questions. Thanks!

Thanks @fivetran-joemarkiewicz
Will take a look and get back to you.

Hi @fivetran-joemarkiewicz! Hope you are doing well. I checked a couple of runs and the information seems to be accurate. Thanks!

Hi @fivetran-joemarkiewicz hope everything is well! Is there an update on this PR? Do you think it will get released soon?

Hi @alvarosiman this is currently in the internal release process. I imagine you can expect this to be released today!

Hi @alvarosiman the changes from the branch I linked above are now live on the dbt hub! You can upgrade your package to the latest version (v0.7.0) in order to capture these changes.
As such, I will close this issue. Please feel free to reopen if the issue continues to persist on your end. Thanks again for helping work through this update!


Skype channel Approved but not published

Bot Info

SDK Platform: .Net
SDK Version: latest
Active Channels:  Skype, Webchat, Bing, Skype for Business
Deployment Environment:  Azure Bot Service, Azure Web App Service,

Issue Description
I submitted my skype bot "Item Finder" for review, and it finally got to approved status.  It has been a couple days and I do not see it in the skype directory.  Is there something else I need to do?
Code Example
Reproduction Steps

Submit bot for review
Wait until it is approved
Noticed it was approved, but not published in skype bot directory

Expected Behavior
Expected it should have been published upon approval.
Actual Results
It was not published as far as I can tell.

Publishing does not instantly occur after approval.  Is your bot still not published at this point?

@JasonSowers Nope still not published.  At least I don't see it.

Are you able to see your bot yet?

Not yet, I appreciate you checking though.

If on Monday it is still not published I will reach out again since they did say "end of the week".

I don't think so. The reason I am not sure is on Windows client, it does not show up in the bot directory, nor  when I search for it.  In Android it does not show up in the bot directory (the place with all the categories), but when I search for it it does show up, although it also finds a bunch of non-certified bots that was as well.  I had thought those were not searchable, but I could be wrong. Thanks

I have been informed that this should now be fully working as per the Skype team.  Can you confirm it is now working?

Yes it is @JasonSowers  thanks so much.


Test forward/backward dead. Test exceptions

Coverage increased (+0.6%) to 82.784% when pulling 84a3238d78c7381ac5e8c877e337ca5a0926e8e4 on scanner_coverage into 49394a84ed9933f0777100e1a67b2658d5c4c3db on add_bridge.

Coverage increased (+1.0%) to 83.15% when pulling 3f22700ee0503fe1671a12dd9ffda0e4192d5bc6 on scanner_coverage into 49394a84ed9933f0777100e1a67b2658d5c4c3db on add_bridge.

Coverage increased (+0.6%) to 82.784% when pulling 9bc72a7b5e0c1ad698e9fd902ac701634d37834f on scanner_coverage into 49394a84ed9933f0777100e1a67b2658d5c4c3db on add_bridge.


x/tools/gopls: possible race when using tempModfile

What version of Go are you using (go version)?

$ go version
go version go1.14.4 linux/amd64

<EMAIL_ADDRESS>
What did you do?
After updating x/tools & gopls from 0cc1aa72b347 to f2c07d7d8ec1 in govim we started to see flakes in our tempmodfile tests:
--- FAIL: TestScripts (5.29s)
    main_test.go:77: using gopls at "/tmp/gobin-gopls-installdir164365085/gopls"
    --- FAIL: TestScripts/scenario_tempmodfile (0.00s)
        --- FAIL: TestScripts/scenario_tempmodfile/modfile_changes (56.47s)
            testscript.go:382:
                WORK=/artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes
                # A simple test that verifies we get a diagnostic for imports
                # that are missing from our go.mod file (0.000s)
                # Open main.go and save to ensure we are actually doing something via gopls (0.225s)
                # Sleep because we don't have an event we are waiting for (30.000s)
                # Verify that there have been no changes to go.mod (0.000s)
                # Verify that we diagnostics for the import in main.go that can't
                # be satisfied by the go.mod on disk (25.785s)
                > vimexprwait errors.golden GOVIMTest_getqflist()
                [stderr]
                -[]
                +[
                +  {
                +    "bufname": "main.go",
                +    "col": 8,
                +    "lnum": 3,
                +    "module": "",
                +    "nr": 0,
                +    "pattern": "",
                +    "text": "example.com/blah is not in your go.mod file.",
                +    "type": "",
                +    "valid": 1,
                +    "vcol": 0
                +  }
                +]
                [exit status 1]
                FAIL: testdata/scenario_tempmodfile/modfile_changes.txt:20: unexpected command failure

Essence of the test case that runs with tempModfile set:
# Open main.go and save to ensure we are actually doing something via gopls
vim ex 'e main.go'
vim ex 'w'

# Sleep because we don't have an event we are waiting for
sleep $GOVIM_ERRLOGMATCH_WAIT

# Verify that there have been no changes to go.mod
cmp go.mod go.mod.golden

# Verify that we diagnostics for the import in main.go that can't
# be satisfied by the go.mod on disk
vimexprwait errors.golden GOVIMTest_getqflist()

-- go.mod --
module mod.com

-- go.mod.golden --
module mod.com

-- main.go --
package main

import "example.com/blah"

func main() {
    println(blah.Name)
}
-- errors.golden --
[
  {
    "bufname": "main.go",
    "col": 8,
    "lnum": 3,
    "module": "",
    "nr": 0,
    "pattern": "",
    "text": "example.com/blah is not in your go.mod file.",
    "type": "",
    "valid": 1,
    "vcol": 0
  }
]

Full logs from gopls is included in https://github.com/govim/govim/issues/909.

FYI - just updated the update pull request to include the latest commits as well, now at 6ddee643 - https://github.com/govim/govim/pull/908

A further three flakes as part of the merge of upgrading to https://github.com/golang/tools/commit/6ddee64345a6aa3330ff5260ce9366cd8b2462e8: https://github.com/govim/govim/actions/runs/172568134

Thanks for the report. I'm a bit confused by the error messages here:

[Trace - 22:08:45.140 PM] Received notification 'window/logMessage'.
Params: {"type":1,"message":"2020/07/16 22:08:45 warning: diagnose go.mod: err: exit status 1: stderr: go: finding module for package example.com/blah\ngo: found example.com/blah in example.com/blah v1.0.0\nmod.com: no Go source files\n\n\tdirectory=/artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes\n"}

[Trace - 22:08:45.141 PM] Received notification 'window/logMessage'.
Params: {"type":1,"message":"2020/07/16 22:08:45 warning: diagnose go.mod: err: exit status 1: stderr: go: finding module for package example.com/blah\ngo: found example.com/blah in example.com/blah v1.0.0\nmod.com: no Go source files\n\n\tdirectory=/artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes\n"}

How does govim specify the GOPROXY?
Worth noting that we have an equivalent test in the gopls regression test suite, which we haven't noticed to be flaky: test here.

The tests uses Rogers goproxytest fork - github.com/rogpeppe/go-internal/goproxytest so the module is defined as:
$ cat example.com_blah_v1.0.0.txt
-- .mod --
module example.com/blah

-- .info --
{"Version":"v1.0.0","Time":"2018-10-22T18:45:39Z"}

-- go.mod --
module example.com/blah

-- main.go --
package blah

const Name = "example.com/blah"

Regarding the error messages you see, I had another failure log opened and it didn't show there. I also opened up the gopls log linked from https://github.com/govim/govim/issues/909#issuecomment-659991826 and no such entry there either.
I'm not sure that it has anything to do with the flakes.

How long do the tests wait for the diagnostics? Is the main.go file on disk when the tests starts, or does it only get saved later on?

Basically, go mod tidy is going to fail if main.go is not on disk yet (hence the mod.com: no Go source files error message). It will run successfully any time after that (since it seems like main.go is then saved, and a number of other file changes then come in). Each didChangeWatchedFiles request will cancel the previous one, so the correct diagnostics should only show up after the work from the final one (looks like there are 5) is completed. Depending on how long the tests wait for diagnostics, I could see a scenario where the diagnostics never finish being computed before the server is shut down.

Using the govim.log from https://github.com/govim/govim/issues/909#issuecomment-659991826 so that we have a common point to look at, I copied the file to a gist as well.
main.go is on the disk from the start, it is opened in the editor:
https://gist.github.com/leitzler/651250b175f76cb722ed4dd9599277eb#file-govim-log-L587
govim sends DidOpen to gopls:
https://gist.github.com/leitzler/651250b175f76cb722ed4dd9599277eb#file-govim-log-L622
main.go is saved:
https://gist.github.com/leitzler/651250b175f76cb722ed4dd9599277eb#file-govim-log-L653
CodeAction() called:
https://gist.github.com/leitzler/651250b175f76cb722ed4dd9599277eb#file-govim-log-L660
...
a 30s delay:
https://gist.github.com/leitzler/651250b175f76cb722ed4dd9599277eb#file-govim-log-L816
and then the rest of the log trying to see if gopls did send any diagnostics, that doesn't happen

Each didChangeWatchedFiles request will cancel the previous one, so the correct diagnostics should only show up after the work from the final one

Comparing the log above against a test where it works, both of them has the same didChangeWatchedFiles call as the last one:
not working:
2020-07-17T09:01:41.863543_#3: gopls.DidChangeWatchedFiles() call; params:
2020-07-17T09:01:41.863543_#3: &protocol.DidChangeWatchedFilesParams{
2020-07-17T09:01:41.863543_#3:     Changes: {
2020-07-17T09:01:41.863543_#3:         {URI:"file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go", Type:2},
2020-07-17T09:01:41.863543_#3:     },
2020-07-17T09:01:41.863543_#3: }

working:
2020-07-17T10:41:35.622519_#4: gopls.DidChangeWatchedFiles() call; params:
2020-07-17T10:41:35.622519_#4: &protocol.DidChangeWatchedFilesParams{
2020-07-17T10:41:35.622519_#4:     Changes: {
2020-07-17T10:41:35.622519_#4:         {URI:"file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go", Type:2},
2020-07-17T10:41:35.622519_#4:     },
2020-07-17T10:41:35.622519_#4: }

and for reference, when it works the PublishDiagnostics seems to arrive just a few milliseconds later:
2020-07-17T10:41:35.632730_#4: PublishDiagnostics callback: &protocol.PublishDiagnosticsParams{
2020-07-17T10:41:35.632730_#4:     URI:         "file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go",
2020-07-17T10:41:35.632730_#4:     Version:     0,
2020-07-17T10:41:35.632730_#4:     Diagnostics: {
2020-07-17T10:41:35.632730_#4:         {
2020-07-17T10:41:35.632730_#4:             Range: protocol.Range{
2020-07-17T10:41:35.632730_#4:                 Start: protocol.Position{Line:2, Character:7},
2020-07-17T10:41:35.632730_#4:                 End:   protocol.Position{Line:2, Character:25},
2020-07-17T10:41:35.632730_#4:             },
2020-07-17T10:41:35.632730_#4:             Severity:           2,
2020-07-17T10:41:35.632730_#4:             Code:               nil,
2020-07-17T10:41:35.632730_#4:             Source:             "go mod tidy",
2020-07-17T10:41:35.632730_#4:             Message:            "example.com/blah is not in your go.mod file",
2020-07-17T10:41:35.632730_#4:             Tags:               nil,
2020-07-17T10:41:35.632730_#4:             RelatedInformation: nil,
2020-07-17T10:41:35.632730_#4:         },
2020-07-17T10:41:35.632730_#4:     },
2020-07-17T10:41:35.632730_#4: }

It wasn't obvious in my previous comments; the test waits 30 seconds for the diagnostics to complete so that shouldn't be an issue.

Ok, thanks for the clarifications. I will try to write a gopls regression test that exactly mimics this flow to see if I can reproduce the issue. I am still a little bit confused though... here are the file change events that gopls sees for main.go:
[Trace - 09:01:41.667 AM] Sending notification 'textDocument/didOpen'.
Params: {"textDocument":{"uri":"file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go","languageId":"go","version":1,"text":"package main\n\nimport \"example.com/blah\"\n\nfunc main() {\n\tprintln(blah.Name)\n}\n"}}

[Trace - 09:01:41.860 AM] Sending notification 'workspace/didChangeWatchedFiles'.
Params: {"changes":[{"uri":"file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go","type":3}]}

[Trace - 09:01:41.862 AM] Sending notification 'workspace/didChangeWatchedFiles'.
Params: {"changes":[{"uri":"file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go","type":1}]}

[Trace - 09:01:41.862 AM] Sending notification 'workspace/didChangeWatchedFiles'.
Params: {"changes":[{"uri":"file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go","type":2}]}

[Trace - 09:01:41.863 AM] Sending notification 'textDocument/didSave'.
Params: {"textDocument":{"version":1,"uri":"file:///artefacts/govim/cmd/govim/scenario_tempmodfile/script-modfile_changes/main.go"}}

So, from what I can tell, we have:

main.go is opened
main.go is deleted from disk
main.go is created on disk
main.go is changed on disk
main.go is saved

Obviously gopls should handle whatever file changes come its way, but I just wanted to make sure this is intentional.

To reproduce this, I think need information about the file changes that happen on disk (how is the file text edited?). What state are the files in when the code action and formatting requests happen?

I'm not surprised by the file events, even if I can't explain from the top of my head why we get a delete/create pair. File watching is a mess.. The sequence looks the same both when the test pass and fail, and there hasn't been any changes recently on the govim side with regards to this.
Just some details on how events are mapped on Linux, where the flakes appear:

Rename / Remove => Remove
Chmod / Write => Changed
Create => Created

(how is the file text edited?)

The file isn't edited at all, it's just opened up in a running editor, and then saved back to disk. That's it.
Recap with the same log as before:

"User" to VIM - "Open file"
VIM to govim - an event that the file is opened
govim to gopls - DidOpen()
user to VIM - "Save file"
VIM to govim - event that the file is being saved
govim to gopls - CodeAction()
govim to gopls - Formatting()
govim to gopls - DidChangeWatchedFiles() - detected file removed/renamed
govim to gopls - DidChangeWatchedFiles() - detected file created
govim to gopls - DidChangeWatchedFiles() - detected file chmod/write
VIM to govim - event that the file has been saved
govim to gopls - DidSave()
govim to gopls - DidChangeWatchedFiles() - detected file chmod/write

When the test fails it waits here for 30 seconds for diagnostics, as in the log linked. Otherwise gopls sends a PublishDiagnostics request after a few milliseconds here.
The order of events is the same when it works and when it doesn't.

Thanks for the detailled analysis, @leitzler.
@stamblerre - I think the file change events are a red herring because the file is open in editor (and gopls knows that). Previously govim used to filter file change events for files already open, but per @findleyr they are no longer filtered https://github.com/govim/govim/commit/fc0e07fde805d1e60b8674ce104d2633effdb089 (note this change was made back in February).

I'm not surprised by the file events, even if I can't explain from the top of my head why we get a delete/create pair. File watching is a mess.

I think it's probably a combination of how Vim writes files in certain situations and file watching. Both are a mess, but per my comment above, I think these details are actually irrelevant in this case.

The sequence looks the same both when the test pass and fail, and there hasn't been any changes recently on the govim side with regards to this.

This point is also relevant.

@stamblerre - I think the file change events are a red herring because the file is open in editor (and gopls knows that).

This is true, but the go command still only sees files that are on disk. For the -modfile flag, we do use whatever content gopls is aware of so it should work either way. Still, my suspicion really is that the file change events are playing in some way with a cache key or affecting the way the output of the go command. We already have the equivalent regression test (without the file change events), and we've never seen it flake.
In any case, it would be really good to know what the exact file content changes are, because then I can reproduce this consistently with a gopls regression test. We have a little bit more control with those tests (we use progress notifications), so I will be able to reproduce this consistently, rather than debugging a flake.

In any case, it would be really good to know what the exact file content changes are

The content never change.
Is it something missing in my comments above? Or some logging that we can activate that would help?

I'm wondering about the DidChangeWatchedFiles notifications, since they don't have content associated with them. When the file is created again, does it have content in it or is it empty? What is the content that's written to the file in the two DidChangeWatchedFiles notifications that are changes (not creation/deletion)? Or is it just always the same?

Always the same, the remove/create events are either an artifact from gvim or the filesystem watcher. It's just the same file with the same content through the entire test.

I think I caught the issue in https://golang.org/cl/243537. I've marked it only as "Updates" because I can't be sure that was the only issue, so once it's merged I'll follow-up to see if that fixed the issue.

Actually, this race exposes a deeper issue, which is that the way we cache go mod tidy diagnostics is not fully correct. We use the state of the workspace at the given snapshot to construct a cache key, but the go mod tidy command may actually run at a much later point in time. The contents of the files on disk at the point may be completely different -- that's the issue here -- main.go is deleted by the time we run the command, but we have the wrong cache key.
The best solution I can think of right now is to check if any state has changed on-disk before we run go mod tidy, and if so, to return an error and purge the entry from the cache. @heschik, @findleyr: What do you think?
Yet another case that could be fixed with https://github.com/golang/go/issues/39958...

https://golang.org/cl/243537 addressed some of the issues I noticed while debugging this test, but it doesn't resolve the problem. I think the next step here will be to add an API to the cache that allows us to delete entries, so that we can check if the workspace state changed between the time we cached and the time we ran the command.
I think that will likely happen after @heschik's changes to the cache, so in the meantime, I am hoping this is enough of an edge case that it shouldn't be a critical concern. Setting v1.0.0 as the milestone, as I think it would still be best to have this in by then.

For completeness we are still seeing this as of 6467de6f59a7

Considering that the approach suggested in https://github.com/golang/go/issues/40269#issuecomment-662570386 would mitigate but not correct the problem, it's probably not actually worth requiring it for 1.0. I'd be very surprised if any users actually saw this issue in practice.


import tensorflow causes kernel crash

When importing the tensorflow module the following dialog appears
An unexpected error has occurred
Browser: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:77.0) Gecko/20100101 Firefox/77.0

Type: JS

Message: Error: Canceled future for execute_request message before replies were done

Details: Please see the console for more information

On the browser console I see this
Kernel: connected (a72fce90-4d70-47d3-8fe1-bf0d33aaf164) default.js:1487:17
Kernel: connected (4d5f461a-4dde-4d37-908c-54aa1b2415e3) default.js:1487:17
Kernel: restarting (a72fce90-4d70-47d3-8fe1-bf0d33aaf164) default.js:1487:17
Error: Canceled future for execute_request message before replies were done 2 future.js:142:30
Kernel: starting (a72fce90-4d70-47d3-8fe1-bf0d33aaf164)

The issue doesn't seems to be related to the browser since the same happens when running on Chromium
An unexpected error has occurred
Browser: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) snap Chromium/83.0.4103.106 Chrome/83.0.4103.106 Safari/537.36

Type: JS

Message: Error: Canceled future for execute_request message before replies were done

Details: Please see the console for more information

I'm running a notebook server with an image built on a Dockerfile based on Dockerfile.rok. The error happens also with the original starting image, gcr.io/kubeflow-images-public/tensorflow-1.14.0-notebook-cpu:v0.7.0
FROM gcr.io/kubeflow-images-public/tensorflow-2.1.0-notebook-cpu:1.0.0
USER root

# Install basic dependencies
RUN apt-get update && \
    apt-get install -y --no-install-recommends \
        ca-certificates bash-completion tar less \
        python-pip python-setuptools build-essential python-dev \
        python3-pip python3-wheel && \
    rm -rf /var/lib/apt/lists/*

ENV SHELL /bin/bash
COPY bashrc /etc/bash.bashrc
RUN echo "set background=dark" >> /etc/vim/vimrc.local

# Install latest KFP SDK & Kale & JupyterLab Extension
RUN pip3 install --upgrade pip && \
    pip3 install --upgrade "jupyterlab<2.0.0" && \
    pip3 install https://storage.googleapis.com/ml-pipeline/release/latest/kfp.tar.gz --upgrade && \
    pip3 install -U kubeflow-kale && \
    jupyter labextension install kubeflow-kale-labextension

RUN echo "jovyan ALL=(ALL:ALL) NOPASSWD:ALL" > /etc/sudoers.d/jovyan
WORKDIR /home/jovyan
USER jovyan

CMD ["sh", "-c", \
     "jupyter lab --notebook-dir=/home/jovyan --ip=<IP_ADDRESS> --no-browser \
      --allow-root --port=8888 --LabApp.token='' --LabApp.password='' \
      --LabApp.allow_origin='*' --LabApp.base_url=${NB_PREFIX}"]

All the other imports seem to work

@zeeros , I am facing same issues. have you had any solution


AM: fix for residual when sum is non-zero

Fix for consistency issue with the AddedMass model with certain meshes in parallel

@cekees , as this is done per processor, do you mean that the addition to the residual should be first gathered and then logged? For storing, it can be in a variable per processor.

I think it actually needs to summed and added only to the zeroth node on the zeroth processor.

@cekees that's not what it is doing right now, but it can be modified to gather with MPI and then substract on master processor if that's preferable? (and then we can log and/or store)


⚠ Bofrost.be has degraded performance

In d8d0525, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1377 ms

Resolved: Bofrost.be performance has improved in 36546fe.


Optimizing conv_layer to Use Less logical_units

Testbench working with 2x5 input, 2x3 kernel

Block RAM utilization

CLB and LUT utilization. This will likely be lower on our board, since we have DSP slices.

Synthesis time:

New post-synthesis simulation report:

Timing simulation fails hold time (as does synthesis timing report), but there is no clock tree, so wait for post-implementation simulation to sort out hold time violations.
Post-implementation simulation report:

Timing constraints and implementation (for this testbench at least) are fully functional.


Using torchvision in image_classification entry_points in setup.py

@corey-nm updated the 1 in code reference to sparseml.image_classification. which caused the integration tests to fail. let's make a note to do an audit on documentation references for update (not release blocking)


Formatter deletes the rhs of an expression!

To reproduce this, paste the following into any valid sway code and format it.
let a = 12;
let a = 5;
let c = 27;
let d = c * (10 ** (a - b));

So the parser does not currently handle ** right? The above code does not compile. The first step is probably to add ** as a valid token and make it de-sugar to pow just like we do with addition and other binary ops.

@mohammadfawaz yeah, a few things going on here.
The formatter thing is one issue, but as you mentioned this doesn't currently compile.
Also, I started on an Exponentiation trait with a pow method, but it's not on master yet because of this issue: https://github.com/FuelLabs/fuel-vm/issues/150

Is this being worked on already or blocked by something? Would like to pick this up otherwise

would you like to do the compiler work blocking this?

Wouldn't this just be handling the Expr::Pow case within expr_to_expression here or am I missing something more complicated here?

Nothing complicated really. Basically what you suggested, starting with:

** should be handled like +. So first, you need the ** token similarly to https://github.com/FuelLabs/sway/blob/37dbe4b3c13a5d24762ab520a240732cea0ced94/sway-ast/src/keywords.rs#L182 and https://github.com/FuelLabs/sway/blob/37dbe4b3c13a5d24762ab520a240732cea0ced94/sway-parse/src/keywords.rs#L135.
You then have to handle it in convert_parse_tree.rs, like Add here https://github.com/FuelLabs/sway/blob/37dbe4b3c13a5d24762ab520a240732cea0ced94/sway-core/src/transform/to_parsed_lang/convert_parse_tree.rs#L1571

OK, it seems like I was on the right track then (already started on it). For happy path tests, would a new test program be initialized within should_pass/language, with the same values tested here be ok?
Also, perhaps unrelated question but what is the significance of initializing max values eg. ~u64::max() in the above linked test? And is there any significance to the values tested as well?

For happy path tests, would a new test program be initialized within should_pass/language, with the same values tested here be ok?

I would just add the new tests in the same program. Same ones but using ** is probably fine.

what is the significance of initializing max values eg. ~u64::max()?

Nothing really.. Feel free to remove them 😄

And is there any significance to the values tested as well?

Not particularly. Mostly stress testing the operation with small and large numbers.


The page doesn't mention portal.azure.cn configs

On the china portal (portal.azure.cn) those are not the default permissions.

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

ID: 510faed7-b79d-b8ec-f32f-e64d8773a30c
Version Independent ID: 522e7e2e-ea93-5249-5e6f-5c984f1b6277
Content: Default user permissions - Azure Active Directory
Content Source: articles/active-directory/fundamentals/users-default-permissions.md
Service: active-directory
Sub-service: fundamentals
GitHub Login: @ajburnle
Microsoft Alias: ajburnle

@alisson276
Thanks for your feedback! We will investigate and update as appropriate.

@alisson276 Thank you for your feedback. Unfortunately, I do not work on the documents for the China portal. That portal may also have different configurations for default permissions, however I am not familiar with that portal. Sorry I couldn't be of more assistance. I will be closing this GitHub issue. Thanks! #please-close


feat(borders): Add FULL and EMPTY border sets

border::FULL uses a full block symbol, while border::EMPTY uses an
empty space. This is useful for when you need to allocate space for the
border and apply the border style to a block without actually drawing a
border. This makes it possible to style the entire title area or a block
rather than just the title content.
use ratatui::{symbols::border, widgets::Block};
let block = Block::bordered().title("Title").border_set(border::FULL);
let block = Block::bordered().title("Title").border_set(border::EMPTY);

This was required in order to properly handle titles in the list example. Extracted from #1159


Deprecation warnings with recent ember-data

Hey, I'm sure you're already aware of this (and it's maybe even already fixed... I see there's been a bunch of activity updating dependencies recently, looking forward to it landing, thanks!), but I just updated from ember-data 2.12 to 2.16 and now I'm getting deprecation warnings from active-model-adapter's code when starting my application:
DEPRECATION: Ember.String.pluralize() is deprecated. Please explicitly: import { pluralize } from 'ember-inflector'; [deprecation id: ember-inflector.globals]
DEPRECATION: Ember.String.singularize() is deprecated. Please explicitly: import { singularize } from 'ember-inflector'; [deprecation id: ember-inflector.globals]

Thanks for reporting!

This is happening since<EMAIL_ADDRESS>

Sorry, ignore my PR, I somehow didn't see that @rmachielse had already submitted one.


Rename frankenstein.go -> prism.go

Just gonna merge this one, as I hope it's pretty uncontroversial and my next one builds on it. @jml @tomwilkie


npm run create-firebase-config -> fails

Just following the readme I tried
cd frontend
npm install
npm run create-firebase-config
npm run serve

but this fails with

Error: No project active. Run with --project  or define an alias by
running firebase use --add

Please improve instructions.

First you'll need to create your Google Cloud project and then run firebase use --add <project id>.
The README will be updated.

I think , the README file is not instructed properly.
When I run the command as firebase use --add  ,
it is erroring as firebase command is not found ,
Do we need to install firebase tool ?

Yeah I added two additional steps as you will need to install firebase-tools globally through npm, ie. npm install -g firebase-tools, then firebase login.


Service Bus Queue message deadlettering resulting in InternalServerError

Package Name:  @azure/service-bus
Package Version: 1.0.3
Operating system: MacOS 10.13.6
nodejs  v10.16.2

Describe the bug
A clear and concise description of what the bug is.
I am trying to dead letter messages from a queue but am receiving InternalServerErrors:
{ InternalServerError: The service was unable to process the request; please retry the operation. For more information on exception types and proper exception handling, please refer to http://go.microsoft.com/fwlink/?LinkId=761101 Reference:eabe637d-3ad3-4b78-8025-a0a0fa2b4c17, TrackingId:f39cb11d000005af00358aa45d6570a0_G40_B37, SystemTracker:service-bus-queue:queue:queue-name~31, Timestamp:2019-08-27T18:04:22
    at Object.translate (node_modules/@azure/amqp-common/dist/index.js:907:17)
    at Receiver.MessageReceiver._onSettled (node_modules/@azure/service-bus/dist/index.js:1962:50)
    at Receiver.emit (events.js:198:13)
    at emit (node_modules/rhea-promise/dist/lib/util/utils.js:129:24)
    at Object.emitEvent (node_modules/rhea-promise/dist/lib/util/utils.js:140:9)
    at Receiver._link.on (node_modules/rhea-promise/dist/lib/link.js:252:25)
    at Receiver.emit (events.js:198:13)
    at Receiver.link.dispatch (node_modules/rhea/lib/link.js:59:37)
    at Incoming.on_disposition (node_modules/rhea/lib/session.js:402:24)
    at Session.on_disposition (node_modules/rhea/lib/session.js:700:23)
    at Connection.(anonymous function) [as on_disposition] (node_modules/rhea/lib/connection.js:760:30)
    at c.dispatch (node_modules/rhea/lib/types.js:910:33)
    at Transport.read (node_modules/rhea/lib/transport.js:109:36)
    at SaslClient.read (node_modules/rhea/lib/sasl.js:300:26)
    at Connection.input (node_modules/rhea/lib/connection.js:502:35)
    at TLSSocket.emit (events.js:198:13)
  name: 'InternalServerError',
  translated: true,
  retryable: true,
  info: null,
  condition: 'amqp:internal-error' }

To Reproduce
Steps to reproduce the behavior:
Following the sample https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/servicebus/service-bus/samples/javascript/advancedFeatures/movingMessagesToDLQ.js
const connectToAzureSBQueue = async () => {
  const sbClient = ServiceBusClient.createFromConnectionString(connectionString);
  const queueClient = sbClient.createQueueClient(events_queue);
  const receiver = queueClient.createReceiver(ReceiveMode.peekLock);

  const onMessageHandler = (msg) => {

        if (msg.deliveryCount > 0) {
          msg.deadLetter({
            deadletterReason: 'Processing Error',
            deadLetterErrorDescription: err,
          }).catch(deadLetterErr => console.log(deadLetterErr));
        } else {
          msg.abandon().catch(abandonErr => logger.error(abandonErr)); // retry once
        }
  };

  const onErrorHandler = (err) => {
    logger.error(err);
  };

  try {
    receiver.registerMessageHandler(onMessageHandler, onErrorHandler, { autoComplete: false });
  } catch (err) {
    logger.error(err);
    await receiver.close();
    await queueClient.close();
    await sbClient.close();
  }
};

Expected behavior
A clear and concise description of what you expected to happen.
message should be moved to dead letter queue successfully.
Screenshots
If applicable, add screenshots to help explain your problem.
Additional context
Add any other context about the problem here.

@imalao In the sample code you have shared, you log at 3 different positions.

In the catch() for when deadletter() fails
In the catch() for when abandon() fails
The error handler that is passed to receiver.registerMessageHandler

It is not clear which of these 3 is logging the error you are seeing. If you are able to consistently replicate this issue, then can you tweak the logs a bit so that we can identify through which code path is the error getting thrown?
Also, if you create a support request from the Azure portal, then we will be able to take a look at the service side logs as well.
@axisc, @nemakam This is a scenario where the request to settle a message was made and the service updated the remote state on the delivery with the InternalServerError

It's a dead letter error -- thanks!
deadLetterErr { InternalServerError: The service was unable to process the request; please retry the operation. For more information on exception types and proper exception handling, please refer to http://go.microsoft.com/fwlink/?LinkId=761101 Reference:73ae82ff-e36d-47cb-bf69-c86b874d8e70, TrackingId:895ed0cc000005c500c1da225d681445_G48_B7, SystemTracker:inhome-scus-iot-queue:queue:local-dev-queue~127, Timestamp:2019-08-29T18:07:07
    at Object.translate (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/@azure/amqp-common/dist/index.js:907:17)
    at Receiver.MessageReceiver._onSettled (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/@azure/service-bus/dist/index.js:1962:50)
    at Receiver.emit (events.js:198:13)
    at emit (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea-promise/dist/lib/util/utils.js:129:24)
    at Object.emitEvent (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea-promise/dist/lib/util/utils.js:140:9)
    at Receiver._link.on (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea-promise/dist/lib/link.js:252:25)
    at Receiver.emit (events.js:198:13)
    at Receiver.link.dispatch (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/link.js:59:37)
    at Incoming.on_disposition (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/session.js:402:24)
    at Session.on_disposition (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/session.js:700:23)
    at Connection.(anonymous function) [as on_disposition] (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/connection.js:760:30)
    at c.dispatch (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/types.js:910:33)
    at Transport.read (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/transport.js:109:36)
    at SaslClient.read (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/sasl.js:300:26)
    at Connection.input (/Users/i0m0090/Documents/pfranklin/DEV/inhome-manifold/node_modules/rhea/lib/connection.js:502:35)
    at TLSSocket.emit (events.js:198:13)
  name: 'InternalServerError',
  translated: true,
  retryable: true,
  info: null,
  condition: 'amqp:internal-error' }

@imalao, Thanks for opening the support ticket. Based on internal logs, it appears to have been caused by transient issues due to service side upgrades.
Could you confirm if this is still an issue?

@imalao, Thanks for raising this issue. We are closing this issue for now, but feel free to request to be reopen if you feel that your problem have not been address fully.


Update path for new documentation platform

Continuation of https://github.com/gradle/gradle/pull/27177

@bot-gradle test

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

Your PR is queued. See the queue page for details.

I've triggered a build for you. Click here to see all failures if there's any.


Tell hubot in docker to use the config/scripts situated somewhere else

Hi,
I got a hubot folder, containing everything for hubot to work like I want (which means the package.json and all the scripts I want it to use) but not in the docker, and I was wondering if there is a way to "symlink" both docker folder and the one in my /home in order to use all the scripts by the hubot situated in the docker.
I'm not very good with docker, but in the rocket.chat folder that I use to start Rocket.Chat (via the docker-compose.yml) I see a volumes statement that might do what I need. I configured it like that for the hubot part :
hubot, the popular chatbot (add the bot user first and change the password before starting this image)
hubot:
image: rocketchat/hubot-rocketchat:v1.0.1
environment:
 - ROCKETCHAT_URL=rocketchat:3000
 - ROCKETCHAT_ROOM=''
 - LISTEN_ON_ALL_PUBLIC=true
 - ROCKETCHAT_USER=hubot
 - ROCKETCHAT_PASSWORD=hubot
 - BOT_NAME=hubot
# you can add more scripts as you'd like here, they need to be installable by npm
 - EXTERNAL_SCRIPTS=hubot-help,hubot-seen,hubot-links,hubot-diagnostics
links:
 - rocketchat:rocketchat
volumes:
 - ./:/home/osaxis/depot_git/rocketchat/myhubot/
# this is used to expose the hubot port for notifications on the host on port 3001, e.g. for hubot-jenkins-notifier
ports:
 - 3001:3001

Well that doesn't work but I wasn't expecting much. Do you have any idea if it's possible ? And if yes, how ?

I added the scripts by hand in EXTERNAL_SCRIPTS


fix: add AWS_REGION by default to deltalake storage_options

Feature or Bugfix

Feature

In deltalake, storage_options expects a AWS_REGION or REGION key when we have been passing REGION_NAME which is not supported
Detail

Pass AWS_REGION instead of REGION_NAME

Relates

#2308

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

AWS CodeBuild CI Report

CodeBuild project: GitHubCodeBuild8756EF16-4rfo0GHQ0u9a
Commit ID: 39e15d0397d234e4b95598a737456e670bdd50cf
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository

AWS CodeBuild CI Report

CodeBuild project: GitHubDistributedCodeBuild6-jWcl5DLmvupS
Commit ID: 39e15d0397d234e4b95598a737456e670bdd50cf
Result: SUCCEEDED
Build Logs (available for 30 days)

Powered by github-codebuild-logs, available on the AWS Serverless Application Repository


System Tests

As a developer I would some system-level tests, especially when it comes to blueapi working correctly within kubernetes, so that I can deploy with confidence.
Possible Solution
The helm test utility is interesting here. Although we should also support running system tests outside of kubernetes e.g. for I04. I would suggest we write some system tests that can be triggered via the CLI, like dodal, and also add a helm test that runs the same CLI command. The remaining question is how do we run the system tests in CI?
Acceptance Criteria

TBD

To break this down a bit more I suggest doing helm integration in a separate ticket.
Acceptance Criteria

Blueapi tests are separated into unit tests and system tests (similar structure to bluesky-stomp and hyperion)
The system tests poke the live API/message bus and verify that server behaves as expected
The system tests are run as part of a separate CI job to the unit tests (again, see bluesky-stomp)

It may also be useful to do #547 as part of this

CI part of acceptance criteria is now covered by #630


Update tolerations for the Windows kubelet

azure.com is the old namespace, not used anymore with the Windows virtual kubelet.
With the previous tolerations, the pod can't get schedule on the virtual windows kubelet node.

Thanks for the contribution, @Belphemur. Sorry you ran into issues. Looks like the Linux YAML manifest was updated for the latest tolerations, but not the Windows manifest.
#sign-off


KeyError: 'contentLength'

i'm using b2 as a remote backup using proxmox.
All seems to works correctly but i have on standard output a lot of this errors:
What is causing it?
File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 495, in _wrapper
    return func(*args, **kwargs) or 0
  File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 608, in statfs
    attrs = self.operations('statfs', path.decode(self.encoding))
  File "/usr/local/lib/python2.7/dist-packages/fuse.py", line 800, in __call__
    return getattr(self, op)(*args)
  File "/opt/b2_fuse/b2fuse/b2fuse_main.py", line 348, in statfs
    free_block_count = total_block_count - self._get_cloud_space_consumption() / block_size
  File "/opt/b2_fuse/b2fuse/b2fuse_main.py", line 125, in _get_cloud_space_consumption
    space_consumption += file_info['contentLength']
KeyError: 'contentLength'

One of the meta data fields for files in B2 changed from contentLength to size not too long ago. I believe the error you are seeing is one of the less frequently used parts of B2 that still referred to the old field. This error that you are seeing only keeps applications from querying the total used and available space on the mount, as such not critical. I have uploaded the 1 line fix. Please try it out

Thank you. This fix the problem


[util] Limit Bionic Commando to 144fps

Game physics doesn't work properly when the game runs above 144fps. So might as well cap it.
See ProtonDB or PCGamingWiki
Also seems to help make the stuttering the game can have less noticeable when the gpu would have been maxed. Or what ever is the cause.

144 seems an awfully specious limit tbh.
Almost like some dumb user with a 144hz screen thought that vsync was the only way to limit framerate, and then from that called it a day,

@mirh  Yes that's is probably what happened originally, i should probably not have worded it like that as it doesn't work above 144 specificall, and that does indeed seem like a odd number. Originally when i tested it i at least didn't notice any obvious issues.
So i have now been experimenting with this alot more than i had previously and i have unlocked some new physics mechanics to test out and tried playing with them at different fps caps.
I think the main reason the 144 limit was thought to be enough is that starting around 170 ish the throwing mechanic starts to mess up really visibly.  This doesn't seem to be a noticeable issue at 144 or just above.
There is another mechanic where in some places there is a thin semi broken wall where you can punch a object towards it to break it, like a forklift. I have managed to get the forklift stuck half in the semi broken piece without it making a hole. This could just be a general general bug but it probably isn't unreasonable that it could be the physics messing up a bit.
I have managed to mess it up like that even at 144 a few times tho it doesn't happen the majority of the time and i haven't been able to do it consistently.
A last clue I've noticed about the physics acting up a bit is some of the objects on the main character himself.  At above 60fps if you pay attention you will notice that they are stuttering and have this ghosting effect. This does not happen when i lock it to 60.
So maybe a fps cap of 60 would be more logical.
The pc version also have some quirks where even tho there are keyboard shortcuts and you can see them all in the settings the actual game hints are all showing controller buttons. So if the devs had more of a focus on the consoles when making the game the 60fps cap appearing most normal might seem right.
One of the game files have this line
<physics settings="\data\settings\physics_settings.xml" fps="60" physx_effects="hardware" multithreaded="true" physx_fluids="false"/>

Tho considering that the physics mess up at high values I'm in doubt that the devs implemented it solely on a 60 fps step.

Supposedly, the ps3 version ran at 30fps, while xbox was unlocked and a bit faster, while the pc version was dumpster fire.
And it comes with a hidden 30fps toggle.

I see thanks for the link.
I see this line snippet at the 30fps lock line The game runs at 60 FPS by default.
So hopefully that should be fine. 60 seemed to run fine physics wise from what i tried and observed.

I couldn't really understand that tbh. If the game ran at 60 FPS by default, then certainly you wouldn't need an external limiter?

Dunno. :man_shrugging:
Maybe it's just wrong information or something is different with the steam version


[Communication sms] Migrate to Test Proxy

API change check
API changes are not detected in this pull request.


added sprite options to Keras Tensorboard Callback

I added embeddings_image_path and embeddings_image_size so that keras users can use the sprite feature with the embedding projector.
class Tensorboard:
    def __init__(...
        embeddings_freq=0,
        embeddings_metadata=None,
        # added these
        embeddings_image_path=None,
        embeddings_image_size=None,
    )

Fixes issue #31050

@omalleyt12 adding you as you may have some context about TensorBoard callback, thanks

Could you add a unit test
Sure thing. It won't be in the next couple days though.

First though, I think there needs to be a bit of discussion about how the embedding projector is expected to be used with the Tensorboard callback.
Judging by the changes to the TB callback in v2, it seems like it's only intended to work with word embeddings and support for image embeddings was pretty much dropped (image embeddings aren't generally used via Embedding layers, and embedding_layer_names/embedding_data were removed as parameters. Now it only gathers Embedding layers)
Here's an issue someone opened about the topic which describes the problem: https://github.com/tensorflow/tensorflow/issues/33230

Sure thing. It won't be in the next couple days though.

That works, thanks! Even just a simple test to show that the code with the new options sets runs and that the file it writes to is not empty would be fine (especially if you could attach an image to this PR showing how the resulting embeddings look on TensorBoard for a sample model)

it seems like it's only intended to work with word embeddings and support for image embeddings was pretty much dropped

This wasn't intended, as long as the TensorBoard projector can support image embeddings we should support them in the TensorBoard callback. Our test coverage was likely too poor to catch this regression.
Does this PR make it possible to visualize image embeddings?

Does this PR make it possible to visualize image embeddings?

Not entirely. It supports image embeddings that make use of the Embedding layer, (but I'm not sure if that's even possible to do.) Making these changes in v1 would though, but I'm not sure if we're supposed to make changes there.
Once we add embedding_layer_names (and embedding_data) back in we'll be able to visualize the output of a dense layer which is usually where image/non-discrete embeddings come from.

@beasteers Can you please check build failures? Thanks!

@beasteers Could you please address Ubuntu Sanity errors? Thanks!

It has been 14 days with no activity and the awaiting response label was assigned. Is this PR still valid? Assigning the stalled label. Please comment to reassure me that this is still being worked on.

It has been 43 days that this pull-request has stalled. Please create a new pull-request with the requested changes.


Build error: eventemitter3/_rjs/index.js not found

This project is included as a submodule in another Git based project. I installed all submodule dependencies, npm installed all three repos (readium-js, readium-shared-js, readium-cfi-js) and then ran "npm run build" inside the readium-js directory.
It errors out thus:
Plugins bundle config:
../../build-config/RequireJS_config_plugins_multiple-bundles.js
[ '../build-config/RequireJS_config_common.js',
  '../build-config/RequireJS_config_multiple-bundles.js',
  '../../build-config/RequireJS_config_plugins.js',
  '../../build-config/RequireJS_config_plugins_multiple-bundles.js',
  '../../build-config/RequireJS_config_common.js',
  '../../build-config/RequireJS_config_multiple-bundles.js',
  '../../../build-config/RequireJS_config_multiple-bundles_external-libs.js',
  '../../../build-config/RequireJS_config_common.js',
  '../../../build-config/RequireJS_config_multiple-bundles.js' ]
Error: Error: ENOENT: no such file or directory, open '/Users/gregda/Git/erpi-reader/readium-js/readium-shared-js/node_modules/eventemitter3/_rjs/index.js'
    at Error (native)

When I remove the _rjs in the path, it builds, but then errors out in browser saying that EventEmitter is undefined.

Nevermind. I found that if I go into the submodule "readium-shared-js" and manually run "npm run prepare" before building readium-js, the errors go away.

just FYI:
the 'npm run prepare' command can be invoked at any level of the nested readium-* repositories, and the command will automatically "recurse" inside each submodule folder.
Invoking 'npm install' or 'npm update' manually is not sufficient. Use 'npm run prepare' instead.

That was my mistake... thanks!

No problems...I blame the documentation writers ;)

I still had the issue after running prepare in the submodule. This helped me solve the issue: https://github.com/readium/readium-js-viewer/issues/509